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
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;
Basic interface for an XFEM element.
Definition xfemElement.h:44
A class used to store per element data needed only in enriched elements.
Definition xfemEnrichedElementData.h:38
A simple class to represent a natural fracture.
Definition xfemFracture.h:35
The XfemGaussAccessor class is a proxy object to a value accesor implementing a more convenient inter...
Definition xfemGaussAccessor.h:41
Basic class for a XFEM mesh. This is the basic mesh interface for xfem problems adding enrichment cap...
Definition xfemMesh.h:50
Definition xfemOptions.h:30
Declaration of the XfemEnrichedElementData class.
Declaration of the XfemMesh class.
Declaration of the xfemOptions class.