![]() |
CoupledHMFemPhysics
The GeMA Coupled Hydro-Mechanical FEM Physics Plugin
|
Dual flow hydraulic 2D & 3D for Quad, Tri, Hex and Tet. More...
#include <gmpHydroMechanicalInterface.h>


Public Member Functions | |
| GmpHydroMechanicalInterface (const char *pluginType, GmSimulationData *simulation, QString id, QString description, const GmpFemPhysicsCommonMaterialFactory *matFactory, const GmLogCategory &logger) | |
| virtual | ~GmpHydroMechanicalInterface () |
| Destructor. | |
| virtual const QVariantMap * | physicsMetaDataMap () |
| Returns a reference for the Hydraulics dual flow attribute map, built when the function is called for the first time. | |
| virtual bool | checkAndLoadAttributeAccessors (LuaTable &nodeTable, LuaTable &cellTable, LuaTable &gaussTable) |
| Reimplementation of the common function to init the _mechanicPoint structure. | |
| virtual FemResultType | fillElementData (const GmElement *e, GmpFemMatrixSet &elemMatrices, GmpFemVectorSet &elemVectors) |
| Fills the element matrices and vectors for a generic Interface element. | |
| virtual bool | calcDerivedResults (bool nonLinearSolver) |
| Calc results at nodes and/or Gauss points. | |
| virtual bool | beforeElementStiffnessLoop (const GmpFemMatrixSet &elemMatrices, const GmpFemVectorSet &elemVectors) |
| virtual bool | addStateItemsToGroup (GmStateDump *state, bool fixedHint, int groupId) |
Public Member Functions inherited from GmpCoupledHMFemPhysics | |
| GmpCoupledHMFemPhysics (const char *pluginType, GmSimulationData *simulation, QString id, QString description, const GmpFemPhysicsCommonMaterialFactory *matFactory, const GmLogCategory &logger) | |
| Constructor. Will be called by the plugin loading code. | |
| virtual | ~GmpCoupledHMFemPhysics () |
| Destructor. | |
| virtual const char * | pluginName () const |
| virtual const char * | pluginType () const |
| virtual bool | supportsStateDumping () |
| virtual bool | fixedNodalForcesBc (QVector< int > &nodes, QVector< int > &dof, QVector< double > &values) const |
| virtual bool | fixedNodalDofsBc (QVector< int > &nodes, QVector< int > &dof, QVector< double > &values, bool *constantValues) const |
| virtual FemResultType | fillElementDataForBc (const GmElement *e, const GmBoundaryCondition *bc, int bcIndex, int bcListIndex, int border, GmpFemMatrixSet &elemMatrices, GmpFemVectorSet &elemVectors) |
Protected Types | |
| enum | elemState { CLOSE_MODE , TIP_MODE , OPEN_MODE } |
Protected Types inherited from GmpCoupledHMFemPhysics | |
| enum | PhysicsAttributeIds { ISOPARAMETRIC_ID , NUM_ATTRI_IDS } |
| IDs for physics attributes. More... | |
| enum | StateVarIds { U_ID , P_ID , NUM_STATEVAR_IDS } |
| IDs for Mechanical and Hydro physics state vars. More... | |
Protected Member Functions | |
| virtual const GmElementDof * | dofMapping (GmCellType type) const |
| void | elemMatrixDofMap (const GmElement *e, QVector< int > &iUe, QVector< int > &iPe, int &numUe, int &in, int &elemRow) const |
| Fills the element matrices and vectors for a generic Interface element. | |
| bool | fillCoupledMatrix (const GmElement *e, const GmVector *coord, int ip, GmMatrix &Le, const GmVector &Np, const GmMatrix &B, double c) const |
| Returns the coupled matrix Le = B.t() * m * Np * H * c. | |
| void | calcPorePressure (const GmElement *e, const GmVector *coord, int ip, GmVector &Pg, const GmVector &Np, const GmVector &pe) const |
| Returns the vectors with pore pressure at gauss point 'Pg'. | |
| void | fillMechanicalStiffnessMatrix (const GmElement *e, GmMatrix &Ke, const GmMatrix &B, double c) const |
| Returns the mechanical stiffness matrix Ke = Bu' * Dep * Bu * c. | |
| void | assemblyDampingMatrix (const GmElement *e, GmMatrix &elemC, const GmMatrix &Le, const GmMatrix &Sc, const QVector< int > &iUe, const QVector< int > &iPe) const |
| Returns the elemental damping matrix 'elemC'. | |
| void | assemblyStiffnessMatrix (const GmElement *e, GmMatrix &elemK, const GmMatrix &Ke, const GmMatrix &Le, const GmMatrix &Kc, const QVector< int > &iUe, const QVector< int > &iPe) const |
| Returns the elemental stiffness matrix 'elemK'. | |
| void | assemblyInternalForceVector (const GmElement *e, GmVector &elemFi, const GmVector &FUe, const GmVector &FPe, const QVector< int > &iUe, const QVector< int > &iPe) const |
| Returns the elemental internal force 'elemFi' (internal force which is independent of the time) | |
| bool | fillMissingDispVarValues () |
| fills missing displacement for triple nodded zero-thickness interface element | |
| virtual void | setInitialConditions (GmpMechanicPoint *mp) |
| Coupled physic controls the initial conditions that depends of two or more auxiliar physics However, auxiliar physics control its own initial conditions. | |
Protected Member Functions inherited from GmpCoupledHMFemPhysics | |
| virtual bool | checkAndLoadPrivateData (LuaTable &table) |
| Overloads default checkAndLoadPrivateData() to be able to setup materials. | |
Additional Inherited Members | |
Protected Attributes inherited from GmpCoupledHMFemPhysics | |
| const char * | _pluginType |
| The plugin type name. | |
| bool | _setInitialCond |
| Sets the initial conditions required by the physics. | |
| GmpMechanicalPhysics * | _mechPhys |
| The mechanical physics providing parameters and matrices to the coupling equation. | |
| GmpHydraulic * | _hydroPhys |
| The hydraulic physics providing parameters and matrices to the coupling equation. | |
Dual flow hydraulic 2D & 3D for Quad, Tri, Hex and Tet.
|
virtual |
Calc results at nodes and/or Gauss points.
Reimplemented in GmpTwoPhaseHydroMechanicalInterface.
|
virtual |
Reimplementation of the common function to init the _mechanicPoint structure.
Reimplemented in GmpTwoPhaseHydroMechanicalInterface.
|
virtual |
Fills the element matrices and vectors for a generic Interface element.
Reimplemented in GmpTwoPhaseHydroMechanicalInterface.
|
virtual |
Returns a reference for the Hydraulics dual flow attribute map, built when the function is called for the first time.
Reimplemented from GmpCoupledHMFemPhysics.
Reimplemented in GmpTwoPhaseHydroMechanicalInterface.
|
protectedvirtual |
Coupled physic controls the initial conditions that depends of two or more auxiliar physics However, auxiliar physics control its own initial conditions.
Reimplemented in GmpTwoPhaseHydroMechanicalInterface.