24 #ifndef _GEMA_XFEM_TOOLS_H_ 25 #define _GEMA_XFEM_TOOLS_H_ 28 #include <gmpFemPhysics.h> 33 #ifndef _USE_MATH_DEFINES 34 #define _USE_MATH_DEFINES // To enable M_PI in Visual Studio 65 virtual bool pointInConvexPolygon(
double tol,
GmMatrix polygonVert,
GmVector Xip,
int& nIn)
const;
75 virtual bool cycInc(
int iVert,
int nVert,
int& nCycInc)
const;
80 GmVector& NewCrackTip,
bool& bCut,
bool& bCutHeadVertexA,
bool& bCutTailVertexA,
bool& bCutHeadVertexB,
bool& bCutTailVertexB)
const;
102 virtual bool insertionSortWORepeated(
QList<double>& a,
double tol)
const;
106 virtual bool insertionSortWORepeatedint(
QList<int>& a,
double tol)
const;
108 virtual bool insertionSortint(
QList<int>& tVec)
const;
110 virtual bool orient2D(
double xa,
double ya,
double xb,
double yb,
double xc,
double yc,
double& det)
const ;
112 virtual bool defElemCuts(
XfemMesh* xmesh)
const;
114 virtual bool defElemSets(
XfemMesh* xmesh)
const;
122 virtual bool setGhostNodes(
XfemMesh* xmesh)
const;
124 virtual bool setGhostNodes3D(
XfemMesh* xmesh)
const;
126 virtual bool loadSubElement(
XfemMesh* xmesh,
GmCell* e,
GmMatrix subElemNode,
int type,
int rule,
bool isFracture)
const;
128 void setIntegrationRule(
int rule) {
_ruleSet = rule; };
130 virtual bool checkSegmentInRegularMesh(
XfemMesh* xmesh,
GmMatrix segCrackCoord,
GmVector& mElemCutPos,
double tol)
const;
136 virtual bool inSphere(
GmMatrix crack,
GmVector Ip,
double characteristicLength,
double tol,
int& nInter)
const;
142 virtual bool addEnrichedDof(
XfemMesh* xmesh,
int numDof,
const QString type)
const;
144 virtual bool setCrackFrontData(
XfemMesh * xmesh)
const;
152 virtual bool subElemDiv(
XfemMesh* xmesh)
const;
154 virtual bool subElemDiv3D(
XfemMesh* xmesh)
const;
197 virtual bool vectorialToTensorial(
GmVector& Av,
GmMatrix& Am,
unsigned sc,
QString type =
"strain",
bool mode =
true)
const;
The XfemGaussAccessor class is a proxy object to a value accesor implementing a more convenient inter...
Definition: xfemGaussAccessor.h:40
Definition: xfemOptions.h:29
Declaration of the xfemOptions class.
Basic interface for an XFEM element.
Definition: xfemElement.h:43
Basic class for a XFEM mesh. This is the basic mesh interface for xfem problems adding enrichment cap...
Definition: xfemMesh.h:49
Declaration of the XfemMesh class.
A simple class to represent a natural fracture.
Definition: xfemFracture.h:34
Declaration of the XfemEnrichedElementData class.
A class used to store per element data needed only in enriched elements.
Definition: xfemEnrichedElementData.h:37