MechanicalFemPhysics
The GeMA Mechanical FEM Physics Plugin
Public Types | Public Member Functions | Static Public Member Functions | Protected Types | List of all members
GmpElasticInterface Class Reference
Inheritance diagram for GmpElasticInterface:
Inheritance graph
[legend]
Collaboration diagram for GmpElasticInterface:
Collaboration graph
[legend]

Public Types

enum  elasticInterfaceGaussAttrIds { VM_GA_ID, NUM_GA_IDS }
 IDs for Gauss attributes of elastic interface material. More...
 

Public Member Functions

 GmpElasticInterface (int typeIndex, QString typeName, const GmLogCategory &logger)
 Constructor. Gets as parameters the material index and its name.
 
virtual ~GmpElasticInterface ()
 Virtual destructor.
 
virtual const QVariantMap * materialMetaDataMap ()
 Returns a pointer to the material attribute map, built when the function is called for the first time. More...
 
virtual bool fillElasticStiffnessMatrix (const GmElement *e, GmMatrix &Dep, const GmVector *coord, int ip, double penalty=1.0) const
 Returns the elastic constitutive matrix for an interface element De = |Ks 0 0 | | 0 Kt 0 | | 0 0 Kn|.
 
virtual bool fillBartonBandisStiffnessMatrix (const GmElement *e, GmMatrix &Dep, const GmpMechanicPoint *mp, const GmVector *coord) const
 Returns the constitutive matrix for Barton-Bandis model.
 
virtual bool fillBartonBandisStresses (const GmElement *e, GmVector &Snew, const GmpMechanicPoint *mp, const GmVector *coord, GmVector &eNew, GmVector &eOld, GmVector &sOld) const
 Returns the constitutive matrix for Barton-Bandis model.
 
virtual bool mechanicalConstitutiveModel (const GmElement *e, GmMatrix &Dep, const GmpMechanicPoint *mp, const GmVector *coord, unsigned nc) const
 Returns the cohesive stress tensor according to the material behavior adopted.
 
virtual bool setInitialConditions (const GmElement *e, GmpMechanicPoint *mp, const GmVector *coord, unsigned nc) const
 Sets the initial conditions.
 
virtual double normalElasticStiffness (const GmElement *e, const GmVector *coord, int ip) const
 Returns the normal elastic stiffness of the interface element.
 
virtual double shearElasticStiffness (const GmElement *e, const GmVector *coord, int ip) const
 Returns the shear elastic stiffness of the interface element.
 
virtual double shearElasticStiffnessTwo (const GmElement *e, const GmVector *coord, int ip) const
 Returns the shear elastic stiffness 2 of the interface element (required in 3D)
 
virtual double fractureOpening (const GmElement *e, const GmVector *coord, int ip) const
 Returns the initial fracture opening.
 
virtual closureModel fractureClosureModel (const GmElement *e, const GmVector *coord, int ip) const
 Returns the type of fracture closure model.
 
- Public Member Functions inherited from GmpInterfaceMaterial
 GmpInterfaceMaterial (int typeIndex, QString typeName, const GmLogCategory &logger)
 Constructor. Gets as parameters the material index and its name.
 
virtual ~GmpInterfaceMaterial ()
 Virtual destructor.
 
virtual double getMacaulayValue (const GmElement *, double x) const
 Returns the Macaulay function value <x> = (x + |x|)/2.
 
virtual double getEffectiveDisplacement (const GmElement *e, GmVector S) const
 Returns the effective displacement Eef = sqrt(e(0)^2 + e(1)^2+ e(2)^2 )
 
virtual bool splitJoinTensorToInterface (const GmElement *, GmVector &Tensor, GmVector &cohesive, bool type) const
 Split tensor to interface or Join interface to tensor type = true ==> split tensor to interface components type = false ==> join interface components to tensor.
 

Static Public Member Functions

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

Protected Types

enum  InterfaceElementPropertyIds {
  Kni_ID, Ksi_ID, Kti_ID, GAP_ID,
  Closure_ID, NUM_PROPERTY_IDS
}
 IDs for elastic interface material properties. More...
 
enum  closureModel { normal, hardStiffness, bartonBandis, NUM_CLOSURE_IDS }
 Fracture closure models. More...
 

Member Enumeration Documentation

◆ closureModel

Fracture closure models.

Enumerator
normal 

Normal closure without contact.

hardStiffness 

Fracture closure considering Hard Stiffness.

bartonBandis 

Fracture closure considering Barton-Bandis model.

NUM_CLOSURE_IDS 

The number of fracture closure models.

◆ elasticInterfaceGaussAttrIds

IDs for Gauss attributes of elastic interface material.

Enumerator
VM_GA_ID 

Base Id for Gauss attribute(s) used to store the maximum.

NUM_GA_IDS 

The number of gauss attributes.

◆ InterfaceElementPropertyIds

IDs for elastic interface material properties.

Enumerator
Kni_ID 

Id for retrieving the normal elastic stiffness accessor.

Ksi_ID 

Id for retrieving the shear elastic stiffness accessor.

Kti_ID 

Id for retrieving the shear elastic stiffness accessor at 2nd-direction (3D)

GAP_ID 

Id for retrieving the initial fracture aperture.

Closure_ID 

Id for retrieving the closure model.

NUM_PROPERTY_IDS 

The number of property ids above.

Member Function Documentation

◆ materialMetaDataMap()

const QVariantMap * GmpElasticInterface::materialMetaDataMap ( )
virtual

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

This table includes the normal elastic stiffness 'Kni', the shear elastic stiffness 'Ksi' and the the shear elastic stiffness 'Kti'(for 3D) properties.

Implements GmpInterfaceMaterial.

Reimplemented in GmpCohesiveLinearSoftening, GmpCohesiveExponentialSoftening, and GmpInterfaceMohrCoulomb.


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