MechanicalFemPhysics
The GeMA Mechanical FEM Physics Plugin
Loading...
Searching...
No Matches
GmpCohesiveLinearSoftening Class Reference
Inheritance diagram for GmpCohesiveLinearSoftening:
Collaboration diagram for GmpCohesiveLinearSoftening:

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.
 
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 getEffectiveDisplacement (const GmElement *e, const 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.

◆ mechanicalConstitutiveModel()

bool GmpCohesiveLinearSoftening::mechanicalConstitutiveModel ( const GmElement * e,
GmMatrix & Dep,
const GmpMechanicPoint * mp,
const GmVector * coord,
unsigned nc ) const
virtual

Returns the cohesive stress tensor according to the material behavior adopted.

Reimplemented from GmpElasticInterface.

◆ setInitialConditions()

bool GmpCohesiveLinearSoftening::setInitialConditions ( const GmElement * e,
GmpMechanicPoint * mp,
const GmVector * coord,
unsigned nc ) const
virtual

Sets the initial conditions.

Reimplemented from GmpElasticInterface.


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