gmsh-TingyuanDoc
0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
|
Go to the documentation of this file.
48 int num = 0,
int part = 0,
bool owner =
false,
55 bool owner =
false,
MElement *orig =
nullptr)
70 bool serendip =
false)
const;
74 int order = -1)
const;
76 double s[][3],
int order = -1)
const;
78 double s[][3][3],
int order = -1)
const;
81 int order = -1)
const;
83 double jac[3][3])
const;
84 virtual double getJacobian(
const std::vector<SVector3> &gsf,
85 double jac[3][3])
const;
86 virtual double getJacobian(
double u,
double v,
double w,
87 double jac[3][3])
const;
89 double jac[3][3])
const;
94 virtual void xyz2uvw(
double xyz[3],
double uvw[3])
const;
99 virtual bool isInside(
double u,
double v,
double w)
const;
147 MSubTriangle(
const std::vector<MVertex *> &v,
int num,
int part,
bool owner,
157 bool owner =
false,
MElement *orig =
nullptr)
162 MSubTriangle(
const std::vector<MVertex *> &v,
int num = 0,
int part = 0,
163 bool owner =
false,
MElement *orig =
nullptr)
178 bool serendip =
false)
const;
182 int order = -1)
const;
184 double s[][3],
int order = -1)
const;
186 double s[][3][3],
int order = -1)
const;
189 int order = -1)
const;
191 double jac[3][3])
const;
192 virtual double getJacobian(
const std::vector<SVector3> &gsf,
193 double jac[3][3])
const;
194 virtual double getJacobian(
double u,
double v,
double w,
195 double jac[3][3])
const;
197 double jac[3][3])
const;
202 virtual void xyz2uvw(
double xyz[3],
double uvw[3])
const;
207 virtual bool isInside(
double u,
double v,
double w)
const;
255 MSubLine(
const std::vector<MVertex *> &v,
int num,
int part,
bool owner,
265 bool owner =
false,
MElement *orig =
nullptr)
270 MSubLine(
const std::vector<MVertex *> &v,
int num = 0,
int part = 0,
271 bool owner =
false,
MElement *orig =
nullptr)
285 bool serendip =
false)
const;
289 int order = -1)
const;
291 double s[][3],
int order = -1)
const;
293 double s[][3][3],
int order = -1)
const;
296 int order = -1)
const;
298 double jac[3][3])
const;
299 virtual double getJacobian(
const std::vector<SVector3> &gsf,
300 double jac[3][3])
const;
301 virtual double getJacobian(
double u,
double v,
double w,
302 double jac[3][3])
const;
304 double jac[3][3])
const;
309 virtual void xyz2uvw(
double xyz[3],
double uvw[3])
const;
314 virtual bool isInside(
double u,
double v,
double w)
const;
362 MSubPoint(
const std::vector<MVertex *> &v,
int num,
int part,
bool owner,
377 MSubPoint(
const std::vector<MVertex *> &v,
int num = 0,
int part = 0,
378 bool owner =
false,
MElement *orig =
nullptr)
392 bool serendip =
false)
const;
396 int order = -1)
const;
398 double s[][3],
int order = -1)
const;
400 double s[][3][3],
int order = -1)
const;
403 int order = -1)
const;
405 double jac[3][3])
const;
406 virtual double getJacobian(
const std::vector<SVector3> &gsf,
407 double jac[3][3])
const;
408 virtual double getJacobian(
double u,
double v,
double w,
409 double jac[3][3])
const;
411 double jac[3][3])
const;
416 virtual void xyz2uvw(
double xyz[3],
double uvw[3])
const;
421 virtual bool isInside(
double u,
double v,
double w)
const;
virtual double getJacobian(const fullMatrix< double > &gsf, double jac[3][3]) const
virtual void getShapeFunctions(double u, double v, double w, double s[], int order=-1) const
virtual std::size_t getNumPrimaryShapeFunctions() const
virtual const JacobianBasis * getJacobianFuncSpace(int order=-1) const
virtual double getJacobian(const fullMatrix< double > &gsf, double jac[3][3]) const
virtual std::vector< MElement * > getMultiParents() const
virtual void movePointFromElementSpaceToParentSpace(double &u, double &v, double &w) const
virtual int getTypeForMSH() const
std::vector< MElement * > _parents
virtual const MElement * getBaseElement() const
virtual std::vector< MElement * > getMultiParents() const
virtual const JacobianBasis * getJacobianFuncSpace(int order=-1) const
virtual std::size_t getNumShapeFunctions() const
virtual void setParent(MElement *p, bool owner=false)
MSubTriangle(const std::vector< MVertex * > &v, int num=0, int part=0, bool owner=false, MElement *orig=nullptr)
virtual void getThirdDerivativeShapeFunctions(double u, double v, double w, double s[][3][3][3], int order=-1) const
MTetrahedron(MVertex *v0, MVertex *v1, MVertex *v2, MVertex *v3, int num=0, int part=0)
virtual bool ownsParent() const
virtual std::size_t getNumPrimaryShapeFunctions() const
virtual void movePointFromParentSpaceToElementSpace(double &u, double &v, double &w) const
virtual void movePointFromParentSpaceToElementSpace(double &u, double &v, double &w) const
MPoint(MVertex *v0, int num=0, int part=0)
MSubPoint(const std::vector< MVertex * > &v, int num, int part, bool owner, int orig)
virtual void movePointFromParentSpaceToElementSpace(double &u, double &v, double &w) const
virtual void updateParent(GModel *gm)
virtual const MVertex * getShapeFunctionNode(int i) const
virtual double getJacobian(const fullMatrix< double > &gsf, double jac[3][3]) const
virtual MElement * getBaseElement()
std::vector< MElement * > _parents
virtual void updateParent(GModel *gm)
virtual std::size_t getNumPrimaryShapeFunctions() const
virtual void getGradShapeFunctions(double u, double v, double w, double s[][3], int order=-1) const
virtual void setMultiParent(std::vector< MElement * > &parents, bool owner=false)
virtual const MElement * getBaseElement() const
virtual const nodalBasis * getFunctionSpace(int order=-1, bool serendip=false) const
virtual void getIntegrationPoints(int pOrder, int *npts, IntPt **pts)
MSubTetrahedron(const MTetrahedron &tet, bool owner=false, MElement *orig=nullptr)
MSubTetrahedron(const std::vector< MVertex * > &v, int num, int part, bool owner, int orig)
virtual void setParent(MElement *p, bool owner=false)
virtual void getShapeFunctions(double u, double v, double w, double s[], int order=-1) const
virtual void getShapeFunctions(double u, double v, double w, double s[], int order=-1) const
virtual std::size_t getNumShapeFunctions() const
virtual void xyz2uvw(double xyz[3], double uvw[3]) const
virtual void xyz2uvw(double xyz[3], double uvw[3]) const
MSubTriangle(const MTriangle &tri, bool owner=false, MElement *orig=nullptr)
virtual void getGradShapeFunctions(double u, double v, double w, double s[][3], int order=-1) const
virtual const nodalBasis * getFunctionSpace(int order=-1, bool serendip=false) const
std::vector< MElement * > _parents
virtual void movePointFromElementSpaceToParentSpace(double &u, double &v, double &w) const
MSubLine(const std::vector< MVertex * > &v, int num=0, int part=0, bool owner=false, MElement *orig=nullptr)
virtual const MVertex * getShapeFunctionNode(int i) const
virtual double getPrimaryJacobian(double u, double v, double w, double jac[3][3]) const
virtual void getGradShapeFunctions(double u, double v, double w, double s[][3], int order=-1) const
virtual int getTypeForMSH() const
virtual const JacobianBasis * getJacobianFuncSpace(int order=-1) const
MTriangle(MVertex *v0, MVertex *v1, MVertex *v2, int num=0, int part=0)
virtual void getGradShapeFunctions(double u, double v, double w, double s[][3], int order=-1) const
virtual void getIntegrationPoints(int pOrder, int *npts, IntPt **pts)
virtual bool ownsParent() const
MSubLine(const MLine &lin, bool owner=false, MElement *orig=nullptr)
virtual bool isInside(double u, double v, double w) const
virtual void xyz2uvw(double xyz[3], double uvw[3]) const
MSubTriangle(MVertex *v0, MVertex *v1, MVertex *v2, int num=0, int part=0, bool owner=false, MElement *orig=nullptr)
virtual std::size_t getNumPrimaryShapeFunctions() const
virtual bool isInside(double u, double v, double w) const
MSubPoint(MVertex *v0, int num=0, int part=0, bool owner=false, MElement *orig=nullptr)
virtual bool isInside(double u, double v, double w) const
virtual void getThirdDerivativeShapeFunctions(double u, double v, double w, double s[][3][3][3], int order=-1) const
virtual void getHessShapeFunctions(double u, double v, double w, double s[][3][3], int order=-1) const
virtual std::vector< MElement * > getMultiParents() const
std::vector< MElement * > _parents
MSubPoint(const MPoint &pt, bool owner=false, MElement *orig=nullptr)
virtual bool ownsParent() const
virtual void movePointFromElementSpaceToParentSpace(double &u, double &v, double &w) const
MSubLine(const std::vector< MVertex * > &v, int num, int part, bool owner, int orig)
virtual void setMultiParent(std::vector< MElement * > &parents, bool owner=false)
virtual const nodalBasis * getFunctionSpace(int order=-1, bool serendip=false) const
virtual void movePointFromElementSpaceToParentSpace(double &u, double &v, double &w) const
MSubTetrahedron(MVertex *v0, MVertex *v1, MVertex *v2, MVertex *v3, int num=0, int part=0, bool owner=false, MElement *orig=nullptr)
virtual void setMultiParent(std::vector< MElement * > &parents, bool owner=false)
virtual void setParent(MElement *p, bool owner=false)
virtual MElement * getParent() const
virtual MElement * getBaseElement()
virtual void getThirdDerivativeShapeFunctions(double u, double v, double w, double s[][3][3][3], int order=-1) const
virtual void getHessShapeFunctions(double u, double v, double w, double s[][3][3], int order=-1) const
virtual MElement * getBaseElement()
virtual std::vector< MElement * > getMultiParents() const
virtual void updateParent(GModel *gm)
virtual void movePointFromParentSpaceToElementSpace(double &u, double &v, double &w) const
virtual void getThirdDerivativeShapeFunctions(double u, double v, double w, double s[][3][3][3], int order=-1) const
virtual const JacobianBasis * getJacobianFuncSpace(int order=-1) const
virtual double getPrimaryJacobian(double u, double v, double w, double jac[3][3]) const
virtual void getHessShapeFunctions(double u, double v, double w, double s[][3][3], int order=-1) const
virtual double getPrimaryJacobian(double u, double v, double w, double jac[3][3]) const
MSubPoint(const std::vector< MVertex * > &v, int num=0, int part=0, bool owner=false, MElement *orig=nullptr)
MSubTriangle(const std::vector< MVertex * > &v, int num, int part, bool owner, int orig)
virtual bool isInside(double u, double v, double w) const
virtual MElement * getParent() const
virtual const MElement * getBaseElement() const
MLine(MVertex *v0, MVertex *v1, int num=0, int part=0)
virtual void setMultiParent(std::vector< MElement * > &parents, bool owner=false)
virtual double getPrimaryJacobian(double u, double v, double w, double jac[3][3]) const
virtual void getHessShapeFunctions(double u, double v, double w, double s[][3][3], int order=-1) const
virtual MElement * getParent() const
virtual const MVertex * getShapeFunctionNode(int i) const
virtual void getIntegrationPoints(int pOrder, int *npts, IntPt **pts)
virtual void xyz2uvw(double xyz[3], double uvw[3]) const
virtual double getJacobian(const fullMatrix< double > &gsf, double jac[3][3]) const
MSubLine(MVertex *v0, MVertex *v1, int num=0, int part=0, bool owner=false, MElement *orig=nullptr)
virtual bool ownsParent() const
virtual std::size_t getNumShapeFunctions() const
virtual std::size_t getNumShapeFunctions() const
MSubTetrahedron(const std::vector< MVertex * > &v, int num=0, int part=0, bool owner=false, MElement *orig=nullptr)
virtual int getTypeForMSH() const
virtual void setParent(MElement *p, bool owner=false)
virtual const MElement * getBaseElement() const
virtual int getTypeForMSH() const
virtual const MVertex * getShapeFunctionNode(int i) const
virtual const nodalBasis * getFunctionSpace(int order=-1, bool serendip=false) const
virtual void getIntegrationPoints(int pOrder, int *npts, IntPt **pts)
virtual void updateParent(GModel *gm)
virtual MElement * getBaseElement()
virtual MElement * getParent() const
virtual void getShapeFunctions(double u, double v, double w, double s[], int order=-1) const