23 #ifndef _GEMA_XFEM_HYDRAULIC_EMBEDDEDFRACTURE_H_ 24 #define _GEMA_XFEM_HYDRAULIC_EMBEDDEDFRACTURE_H_ 26 #include <gmpFemPhysicsCoupled.h> 27 #include <gmpHydraulic.h> 35 class GmpHydraulicPhysics;
45 const GmpFemPhysicsCommonMaterialFactory* matFactory,
const GmLogCategory& logger);
50 virtual const char* pluginName()
const {
return "Xfem"; }
52 virtual const char* pluginType()
const {
return _pluginType; }
59 virtual bool dofByElement(
bool* fixed,
bool* addOnly,
bool* trackChanges)
const;
68 int border, GmpFemMatrixSet& elemMatrices, GmpFemVectorSet& elemVectors);
70 virtual FemResultType
fillElementData(
const GmElement* e, GmpFemMatrixSet& elemMatrices, GmpFemVectorSet& elemVectors);
74 virtual FemResultType
fillEnrichedElementSubData(
const GmElement* e,
GmVector& pe,
GmVector& Dpe,
int nRegDofs,
int nEnrDof,
GmMatrix& Scc,
GmMatrix& Scd,
GmMatrix& Sdd,
GmMatrix& Hcc,
GmMatrix& Hcd,
GmMatrix& Hdd,
GmVector& qic,
GmVector& qid);
121 virtual bool beforeElementStiffnessLoop(
const GmpFemMatrixSet& elemMatrices,
const GmpFemVectorSet& elemVectors);
139 Q_UNUSED(X); Q_UNUSED(N);
virtual FemResultType fillEnrichedElementSubData(const GmElement *e, GmVector &pe, GmVector &Dpe, int nRegDofs, int nEnrDof, GmMatrix &Scc, GmMatrix &Scd, GmMatrix &Sdd, GmMatrix &Hcc, GmMatrix &Hcd, GmMatrix &Hdd, GmVector &qic, GmVector &qid)
Fills the enriched element sub-matrices and sub-vectors.
Definition: xfemHydraulicEmbeddedFracture.cpp:490
GmpHydraulic * _hydroPhys
The mechanical physics providing parameters and matrices to the coupling equation.
Definition: xfemHydraulicEmbeddedFracture.h:145
virtual const QVariantMap * physicsMetaDataMap()
Returns a reference for the Xfem mechanical physics attribute map, built when the function is called ...
Definition: xfemHydraulicEmbeddedFracture.cpp:95
embeddedPhysicsAttributeIds
IDs for physics attributes.
Definition: xfemHydraulicEmbeddedFracture.h:89
virtual FemResultType fillElementData(const GmElement *e, GmpFemMatrixSet &elemMatrices, GmpFemVectorSet &elemVectors)
Fills the element matrices and vectors for generic elements.
Definition: xfemHydraulicEmbeddedFracture.cpp:323
Nodal jump displacement boundary condition in y.
Definition: xfemHydraulicEmbeddedFracture.h:114
Id for retrieving the accessor to the pore-pressure state var.
Definition: xfemHydraulicEmbeddedFracture.h:81
Id for retrieving the accessor to the discontinuity pore-pressure state var.
Definition: xfemHydraulicEmbeddedFracture.h:82
int getNumberEnrichedDofs(const GmElement *e)
Gets the number of enrichment degrees of freedom in the given element TODO: Generalize to consider th...
Definition: xfemHydraulicEmbeddedFracture.cpp:458
embeddedStateVarIds
IDs for Mechanical xfem state vars.
Definition: xfemHydraulicEmbeddedFracture.h:79
virtual bool checkAndLoadPrivateData(LuaTable &table)
Overloads default checkAndLoadPrivateData() to be able to setup materials.
Definition: xfemHydraulicEmbeddedFracture.cpp:146
XfemHydraulicEmbeddedFracture(const char *pluginType, GmSimulationData *simulation, QString id, QString description, const GmpFemPhysicsCommonMaterialFactory *matFactory, const GmLogCategory &logger)
Constructor. Will be called by the plugin loading code.
Definition: xfemHydraulicEmbeddedFracture.cpp:60
Id for retrieving the static condensation physics attribute.
Definition: xfemHydraulicEmbeddedFracture.h:92
The number of boundary conditions value ids above.
Definition: xfemHydraulicEmbeddedFracture.h:118
virtual FemResultType fillEnrichedElementData(const GmElement *e, GmpFemMatrixSet &elemMatrices, GmpFemVectorSet &elemVectors)
Fills the element matrices and vectors for a enriched element.
Definition: xfemHydraulicEmbeddedFracture.cpp:360
Id for fixed Jump displacement boundary condition.
Definition: xfemHydraulicEmbeddedFracture.h:103
Declaration of the XfemMesh class.
Tolerance for the static condensation process.
Definition: xfemHydraulicEmbeddedFracture.h:93
The number of physics attribute ids above.
Definition: xfemHydraulicEmbeddedFracture.h:96
const char * _pluginType
The plugin type name.
Definition: xfemHydraulicEmbeddedFracture.h:143
The number of state var ids above.
Definition: xfemHydraulicEmbeddedFracture.h:85
Nodal jump displacement boundary condition in x.
Definition: xfemHydraulicEmbeddedFracture.h:113
GmMatrix _Dsn
Constitutive tangent matrix (2 x 2)
Definition: xfemHydraulicEmbeddedFracture.h:144
Nodal jump displacement boundary condition in z.
Definition: xfemHydraulicEmbeddedFracture.h:115
Basic class for the hydraulic embedded physics plugin object.
Definition: xfemHydraulicEmbeddedFracture.h:40
virtual ~XfemHydraulicEmbeddedFracture()
Destructor.
Definition: xfemHydraulicEmbeddedFracture.cpp:89
virtual double shapeCartesianPartialsFromJacobian(const GmVector &ncoord, const GmMatrix &J, GmMatrix &dN, bool transposed=false) const
The number of boundary conditions ids above.
Definition: xfemHydraulicEmbeddedFracture.h:107
embeddedBCValueIds
IDs for property values from accepted boundary condition types.
Definition: xfemHydraulicEmbeddedFracture.h:111
embeddedBC_Ids
IDs for accepted boundary condition types.
Definition: xfemHydraulicEmbeddedFracture.h:101
Id for retrieving the isoParametric physics attribute.
Definition: xfemHydraulicEmbeddedFracture.h:91
virtual bool fixedNodalDofsBc(QList< int > &nodes, QList< int > &dof, QList< double > &values, bool *constantValues) const
See comments on base class. Fills vectors with prescribed node pore pressures (TODO fill Pd)
Definition: xfemHydraulicEmbeddedFracture.cpp:242