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

Public Types

enum  cohesiveGaussAttributeIds {
  SDV_GA_ID = GmpElasticInterface::NUM_GA_IDS, SDVOLD_GA_ID, IV_GA_ID, IVOLD_GA_ID,
  AFI_GA_ID, NUM_GA_IDS
}
 IDs for Gauss attributes of cohesive linear softening material. More...
 
- Public Types inherited from GmpElasticInterface
enum  elasticInterfaceGaussAttrIds { VM_GA_ID, NUM_GA_IDS }
 IDs for Gauss attributes of elastic interface material. More...
 

Public Member Functions

 GmpCohesiveLinearSoftening (int typeIndex, QString typeName, const GmLogCategory &logger)
 Constructor. Gets as parameters the material index and its name.
 
virtual ~GmpCohesiveLinearSoftening ()
 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 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 normalStrength (const GmElement *e, const GmVector *coord, int ip) const
 Returns the normal strength of the interface element.
 
virtual double shearStrength (const GmElement *e, const GmVector *coord, int ip) const
 Returns the shear strength at direction 1 of the interface element.
 
virtual double shearStrengthTwo (const GmElement *e, const GmVector *coord, int ip) const
 Returns the shear strength at direction 2 of the interface element.
 
virtual double equivalentSeparation (const GmElement *e, const GmVector *coord, int ip) const
 Returns the normal elastic stiffness of the interface element.
 
virtual damageCriteria damageCriterion (const GmElement *e, const GmVector *coord, int ip) const
 Returns the criterion of damage initiation.
 
- Public Member Functions inherited from GmpElasticInterface
 GmpElasticInterface (int typeIndex, QString typeName, const GmLogCategory &logger)
 Constructor. Gets as parameters the material index and its name.
 
virtual ~GmpElasticInterface ()
 Virtual destructor.
 
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 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.
 
- Static Public Member Functions inherited from GmpElasticInterface
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  CohesiveLinearPropertyIds {
  Ed_ID = GmpElasticInterface::NUM_PROPERTY_IDS, Sni_ID, Tsi_ID, Tti_ID,
  DamIni_ID, NUM_PROPERTY_IDS
}
 IDs for elastic interface material properties. More...
 
enum  damageCriteria { quadS, maxS, NUM_DAMAGEINI_IDS }
 Damage initiation criteria. More...
 
- Protected Types inherited from GmpElasticInterface
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...
 

Protected Member Functions

virtual double damageInitiationCriteria (const GmElement *e, GmVector stress, const GmVector *coord, int ip, int nc) const
 
virtual double scalarDamageVariable (const GmElement *e, const GmVector *coord, int ip, double de, double di, double df) const
 
virtual double deriveDamage (const GmElement *e, const GmVector *coord, int ip, double de, double di, double df) const
 

Member Enumeration Documentation

◆ cohesiveGaussAttributeIds

IDs for Gauss attributes of cohesive linear softening material.

Enumerator
SDV_GA_ID 

Base Id for Gauss attribute(s) used to store the damage variable at the current state.

SDVOLD_GA_ID 

Id for retrieving the damage variable accessor at the previous state.

IV_GA_ID 

Base Id for Gauss attribute(s) used to store the internal variable at the current state.

IVOLD_GA_ID 

Id for retrieving the internal variable accessor at the previous state.

AFI_GA_ID 

Id for retrieving the initial offset for HF with geostatic.

NUM_GA_IDS 

The number of gauss attributes.

◆ CohesiveLinearPropertyIds

IDs for elastic interface material properties.

Enumerator
Ed_ID 

Id for retrieving the equivalent separation where the softening takes place.

Sni_ID 

Id for retrieving the normal strength.

Tsi_ID 

Id for retrieving the shear strength.

Tti_ID 

Id for retrieving the tangential strength.

DamIni_ID 

Id for retrieving the damage initiation criterion.

NUM_PROPERTY_IDS 

The number of property ids above.

◆ damageCriteria

Damage initiation criteria.

Enumerator
quadS 

Quadratic stress criterion.

maxS 

Maximum stress criterion.

NUM_DAMAGEINI_IDS 

The number of damage initiation criterion.

Member Function Documentation

◆ materialMetaDataMap()

const QVariantMap * GmpCohesiveLinearSoftening::materialMetaDataMap ( )
virtual

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

This table adds the equivalent separation 'ed'.

Reimplemented from GmpElasticInterface.

Reimplemented in GmpCohesiveExponentialSoftening.


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