CoupledHMFemPhysics
The GeMA Coupled Hydro-Mechanical FEM Physics Plugin
Loading...
Searching...
No Matches
GmpCoupledHMMaterial Class Reference

Basic class for a coupled hydro-mechanical material object, storing references for a mechanical and a hydro material, while also supporting coupling attributes. More...

#include <gmpCoupledHMMaterial.h>

Inheritance diagram for GmpCoupledHMMaterial:
Collaboration diagram for GmpCoupledHMMaterial:

Public Member Functions

 GmpCoupledHMMaterial (int typeIndex, QString typeName, const GmLogCategory &logger)
 Constructor. Gets as parameters the material index and its name.
 
virtual ~GmpCoupledHMMaterial ()
 Destructor.
 
virtual const QVariantMap * materialMetaDataMap ()
 Returns a pointer to the material attribute map, built when the function is called for the first time.
 
void setPhysicsMaterials (GmpFemPhysicsCommonMaterial *hydro, GmpFemPhysicsCommonMaterial *mechano)
 Sets the hydraulic and mechanical materials for this material. Materials CAN be NULL for a physics.
 
GmpHydraulicMaterial * hydro () const
 Returns the hydraulic material or NULL if none was configured.
 
GmpHydraulicMaterialTwoPhase * twoPhaseHydro () const
 Returns the Two-Phase hydraulic material or NULL if none was configured.
 
GmpMaterialInterfaceMultiPhaseFlow * twoPhaseInterfaceFlow () const
 Returns the Two-Phase hydraulic material or NULL if none was configured.
 
GmpMaterialInterfaceFlow * interfaceFlow () const
 Returns the hydraulic interface material or NULL if none was configured.
 
GmpMechanicalMaterial * mechanical () const
 Returns the mechancial material or NULL if none was configured or if the material is an interface material.
 
GmpInterfaceMaterial * interface () const
 Returns the mechancial interface material or NULL if none was configured or if the material is not an interface material.
 
GmGaussAccessorgetApertureAccessor () const
 Returns the current aperture accessor.
 
GmGaussAccessorgetOldApertureAccessor () const
 Returns the old aperture accessor.
 
QString flowMaterialTypeName () const
 Returns the flow material type name.
 
virtual void hydroMechanicalConstitutiveModel (const GmElement *e, const GmVector *coord, int ip, GmMatrix &Kper) const
 Fills the hydromechanical constitutive model.
 
virtual void updatePermeabilityPoroElastic (const GmElement *e, const GmVector *coord, int ip, GmMatrix &Kper) const
 Updates permeability tensor of poro elastic model.
 
virtual void updatePermeabilityEquivalentContinuum (const GmElement *e, const GmVector *coord, int ip, GmMatrix &Kper) const
 Updates permeability tensor of equivalent continuum model.
 

Static Public Member Functions

static GmpFemPhysicsCommonMaterial * instance (int typeIndex, QString typeName, const GmLogCategory &logger)
 A "factory" function used to register the material with the physics material factory.
 

Private Attributes

GmpFemPhysicsCommonMaterial * _hydroMaterial
 Hydraulic material.
 
GmpFemPhysicsCommonMaterial * _mechanoMaterial
 Mechanical material. Ps: The mechanical plugin does not have a base class common to all materials.
 

Detailed Description

Basic class for a coupled hydro-mechanical material object, storing references for a mechanical and a hydro material, while also supporting coupling attributes.

Member Function Documentation

◆ flowMaterialTypeName()

QString GmpCoupledHMMaterial::flowMaterialTypeName ( ) const

Returns the flow material type name.

Returns the name of the flow material type, if it has a compatible hydraulic interface material, or an empty string otherwise.

◆ getApertureAccessor()

GmGaussAccessor * GmpCoupledHMMaterial::getApertureAccessor ( ) const

Returns the current aperture accessor.

Returns the aperture accessor for the material, if it has a compatible hydraulic interface material, or NULL otherwise.

◆ getOldApertureAccessor()

GmGaussAccessor * GmpCoupledHMMaterial::getOldApertureAccessor ( ) const

Returns the old aperture accessor.

Returns the old aperture accessor for the material, if it has a compatible hydraulic interface material, or NULL otherwise.

◆ hydroMechanicalConstitutiveModel()

void GmpCoupledHMMaterial::hydroMechanicalConstitutiveModel ( const GmElement * e,
const GmVector * coord,
int ip,
GmMatrix & Kper ) const
virtual

Fills the hydromechanical constitutive model.

Returns the permeability matrix according to the constitutive model adopted.

◆ materialMetaDataMap()

const QVariantMap * GmpCoupledHMMaterial::materialMetaDataMap ( )
virtual

Returns a pointer to the material attribute map, built when the function is called for the first time.

Reimplemented in GmpCoupledDualPorosityMaterial, GmpHMGeneralizedDualPorosityMaterial, and GmpPorousElasticMaterial.


The documentation for this class was generated from the following files: