25#ifndef _GEMA_PLUGIN_HYDROMECHANICALINTERFACE_H_
26#define _GEMA_PLUGIN_HYDROMECHANICALINTERFACE_H_
30#include <gmpFemPhysicsCoupled.h>
42 const GmpFemPhysicsCommonMaterialFactory* matFactory,
const GmLogCategory& logger);
50 virtual FemResultType
fillElementData(
const GmElement* e, GmpFemMatrixSet& elemMatrices, GmpFemVectorSet& elemVectors);
52 virtual bool beforeElementStiffnessLoop(
const GmpFemMatrixSet& elemMatrices,
const GmpFemVectorSet& elemVectors);
55 virtual bool addStateItemsToGroup(
GmStateDump* state,
bool fixedHint,
int groupId);
Basic class for the coupled hydro-mechanical physics plugin object.
Definition gmpCoupledHMFemPhysics.h:37
Dual flow hydraulic 2D & 3D for Quad, Tri, Hex and Tet.
Definition gmpHydroMechanicalInterface.h:38
virtual bool calcDerivedResults(bool nonLinearSolver)
Calc results at nodes and/or Gauss points.
Definition gmpHydroMechanicalInterface.cpp:848
virtual ~GmpHydroMechanicalInterface()
Destructor.
Definition gmpHydroMechanicalInterface.cpp:91
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'.
Definition gmpHydroMechanicalInterface.cpp:633
virtual FemResultType fillElementData(const GmElement *e, GmpFemMatrixSet &elemMatrices, GmpFemVectorSet &elemVectors)
Fills the element matrices and vectors for a generic Interface element.
Definition gmpHydroMechanicalInterface.cpp:295
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)
Definition gmpHydroMechanicalInterface.cpp:791
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.
Definition gmpHydroMechanicalInterface.cpp:174
virtual const QVariantMap * physicsMetaDataMap()
Returns a reference for the Hydraulics dual flow attribute map, built when the function is called for...
Definition gmpHydroMechanicalInterface.cpp:98
void fillMechanicalStiffnessMatrix(const GmElement *e, GmMatrix &Ke, const GmMatrix &B, double c) const
Returns the mechanical stiffness matrix Ke = Bu' * Dep * Bu * c.
Definition gmpHydroMechanicalInterface.cpp:542
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.
Definition gmpHydroMechanicalInterface.cpp:568
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'.
Definition gmpHydroMechanicalInterface.cpp:733
bool fillMissingDispVarValues()
fills missing displacement for triple nodded zero-thickness interface element
Definition gmpHydroMechanicalInterface.cpp:863
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'.
Definition gmpHydroMechanicalInterface.cpp:760
virtual bool checkAndLoadAttributeAccessors(LuaTable &nodeTable, LuaTable &cellTable, LuaTable &gaussTable)
Reimplementation of the common function to init the _mechanicPoint structure.
Definition gmpHydroMechanicalInterface.cpp:229
virtual void setInitialConditions(GmpMechanicPoint *mp)
Coupled physic controls the initial conditions that depends of two or more auxiliar physics However,...
Definition gmpHydroMechanicalInterface.cpp:810
Declaration of the GmpCoupledHMFemPhysics class.