23 #ifndef _GEMA_XFEM_MECHANIC_EMBEDDEDFRACTURE_H_ 24 #define _GEMA_XFEM_MECHANIC_EMBEDDEDFRACTURE_H_ 26 #include <gmpFemPhysicsCoupled.h> 27 #include <gmpMechanicalPhysics.h> 28 #include <gmpMechanicPoint.h> 36 class GmpMechanicalPhysics;
46 : T(objType, simulation,
id,
"",
57 XfemMesh* xmesh = dynamic_cast<XfemMesh*>(mesh);
70 const GmpFemPhysicsCommonMaterialFactory* matFactory,
const GmLogCategory& logger);
75 virtual const char* pluginName()
const {
return "Xfem"; }
77 virtual const char* pluginType()
const {
return _pluginType; }
84 virtual bool dofByElement(
bool* fixed,
bool* addOnly,
bool* trackChanges)
const;
93 int border, GmpFemMatrixSet& elemMatrices, GmpFemVectorSet& elemVectors);
95 virtual FemResultType
fillElementData(
const GmElement* e, GmpFemMatrixSet& elemMatrices, GmpFemVectorSet& elemVectors);
149 virtual bool loadPrivateData(
LuaTable& table);
151 virtual bool beforeElementStiffnessLoop(
const GmpFemMatrixSet& elemMatrices,
const GmpFemVectorSet& elemVectors);
160 virtual void addTranslationDeformationMode(
GmMatrix& Mu);
Id for fixed Jump displacement boundary condition.
Definition: xfemMechanicEmbeddedFracture.h:130
The number of boundary conditions ids above.
Definition: xfemMechanicEmbeddedFracture.h:134
Id for retrieving the isoParametric physics attribute.
Definition: xfemMechanicEmbeddedFracture.h:118
The number of boundary conditions value ids above.
Definition: xfemMechanicEmbeddedFracture.h:145
GmPluginObjectFactory * objectFactory(QString pluginName, QString category="", QString objType="")
The number of physics attribute ids above.
Definition: xfemMechanicEmbeddedFracture.h:123
virtual ~XfemMechanicEmbeddedFracture()
Destructor.
Definition: xfemMechanicEmbeddedFracture.cpp:95
virtual const QVariantMap * physicsMetaDataMap()
Returns a reference for the Xfem mechanical physics attribute map, built when the function is called ...
Definition: xfemMechanicEmbeddedFracture.cpp:101
embeddedBC_Ids
IDs for accepted boundary condition types.
Definition: xfemMechanicEmbeddedFracture.h:128
Id for retrieving the accessor to the enriched state var.
Definition: xfemMechanicEmbeddedFracture.h:109
GmpMechanicalPhysics * _mechPhys
The mechanical physics providing parameters and matrices to the coupling equation.
Definition: xfemMechanicEmbeddedFracture.h:172
virtual GmGaussAccessor * createGaussAttributeAccessor(GmElementMesh *mesh, QString id, int snum, bool locked, Unit desiredUnit, const GmLogCategory &logger) const
Overrides the standard GmpFemPhysics::createGaussAttributeAccessor() implementation to create an enri...
Definition: xfemMechanicEmbeddedFracture.h:54
embeddedPhysicsAttributeIds
IDs for physics attributes.
Definition: xfemMechanicEmbeddedFracture.h:116
Basic class for a XFEM mesh. This is the basic mesh interface for xfem problems adding enrichment cap...
Definition: xfemMesh.h:49
int getNumberEnrichedDofs(const GmElement *e)
Gets the number of enrichment degrees of freedom in the given element TODO: Generalize to consider th...
Definition: xfemMechanicEmbeddedFracture.cpp:582
Declaration of the XfemMesh class.
GmPluginLoader * loader() const
Nodal jump displacement boundary condition in z.
Definition: xfemMechanicEmbeddedFracture.h:142
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.
Definition: xfemMechanicEmbeddedFracture.cpp:310
embeddedBCValueIds
IDs for property values from accepted boundary condition types.
Definition: xfemMechanicEmbeddedFracture.h:138
Basic class for the standard plane strain physics plugin object.
Definition: xfemMechanicEmbeddedFracture.h:65
Id for retrieving the accessor to the displacement state var.
Definition: xfemMechanicEmbeddedFracture.h:108
Nodal jump displacement boundary condition in x.
Definition: xfemMechanicEmbeddedFracture.h:140
The number of state var ids above.
Definition: xfemMechanicEmbeddedFracture.h:112
virtual FemResultType fillEnrichedElementData(const GmElement *e, GmpFemMatrixSet &elemMatrices, GmpFemVectorSet &elemVectors)
Fills the element matrices and vectors for a enriched element.
Definition: xfemMechanicEmbeddedFracture.cpp:488
Id for retrieving the static condensation physics attribute.
Definition: xfemMechanicEmbeddedFracture.h:119
Auxiliar class wrapping a plugin physics object. Its only purpose is to override the creation of Gaus...
Definition: xfemMechanicEmbeddedFracture.h:42
XfemMechanicEmbeddedFracture(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: xfemMechanicEmbeddedFracture.cpp:62
virtual bool checkAndLoadPrivateData(LuaTable &table)
Overloads default checkAndLoadPrivateData() to be able to setup materials.
Definition: xfemMechanicEmbeddedFracture.cpp:219
virtual FemResultType fillEnrichedElementSubData(const GmElement *e, GmVector &ue, GmVector &we, int nRegDofs, int nEnrDof, GmMatrix &Kuu, GmMatrix &Kuw, GmMatrix &Kww, GmVector &fiu, GmVector &fiw)
Fills the enriched element sub-matrices and sub-vectors.
Definition: xfemMechanicEmbeddedFracture.cpp:658
virtual XfemGaussAccessor * enrichedGaussAttributeAccessor(QString id, Unit desiredUnit, const GmLogCategory &logger) const
Equivalent to call enrichedGaussAttributeAccessor(id, 0, true, desiredUnit, logger)
Definition: xfemMesh.h:86
virtual FemResultType fillElementData(const GmElement *e, GmpFemMatrixSet &elemMatrices, GmpFemVectorSet &elemVectors)
Fills the element matrices and vectors for generic elements.
Definition: xfemMechanicEmbeddedFracture.cpp:447
Nodal jump displacement boundary condition in y.
Definition: xfemMechanicEmbeddedFracture.h:141
embeddedStateVarIds
IDs for Mechanical xfem state vars.
Definition: xfemMechanicEmbeddedFracture.h:106
const char * _pluginType
The plugin type name.
Definition: xfemMechanicEmbeddedFracture.h:170
GmMatrix _Dsn
Constitutive tangent matrix (2 x 2)
Definition: xfemMechanicEmbeddedFracture.h:171
Tolerance for the static condensation process.
Definition: xfemMechanicEmbeddedFracture.h:120