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

Public Member Functions

 GmpCohesiveExponentialSoftening (int typeIndex, QString typeName, const GmLogCategory &logger)
 Constructor. Gets as parameters the material index and its name.
 
virtual ~GmpCohesiveExponentialSoftening ()
 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 double exponentialSofteningParameter (const GmElement *e, const GmVector *coord, int ip) const
 Returns the exponential material parameter.
 
- Public Member Functions inherited from GmpCohesiveLinearSoftening
 GmpCohesiveLinearSoftening (int typeIndex, QString typeName, const GmLogCategory &logger)
 Constructor. Gets as parameters the material index and its name.
 
virtual ~GmpCohesiveLinearSoftening ()
 Virtual destructor.
 
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 GmpCohesiveLinearSoftening
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  CohesiveExpElemPropertyIds { ALPHA_ID = GmpCohesiveLinearSoftening::NUM_PROPERTY_IDS , NUM_PROPERTY_IDS }
 IDs for elastic interface material properties. More...
 
- Protected Types inherited from GmpCohesiveLinearSoftening
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 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
 
- Protected Member Functions inherited from GmpCohesiveLinearSoftening
virtual double damageInitiationCriteria (const GmElement *e, GmVector stress, const GmVector *coord, int ip, int nc) const
 

Additional Inherited Members

- Public Types inherited from GmpCohesiveLinearSoftening
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...
 

Member Enumeration Documentation

◆ CohesiveExpElemPropertyIds

IDs for elastic interface material properties.

Enumerator
ALPHA_ID 

Id for retrieving the exponential softening parameter.

NUM_PROPERTY_IDS 

The number of property ids above.

Member Function Documentation

◆ deriveDamage()

virtual double GmpCohesiveExponentialSoftening::deriveDamage ( const GmElement * e,
const GmVector * coord,
int ip,
double de,
double di,
double df ) const
inlineprotectedvirtual

Reimplemented from GmpCohesiveLinearSoftening.

◆ materialMetaDataMap()

virtual const QVariantMap * GmpCohesiveExponentialSoftening::materialMetaDataMap ( )
inlinevirtual

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 GmpCohesiveLinearSoftening.

◆ scalarDamageVariable()

virtual double GmpCohesiveExponentialSoftening::scalarDamageVariable ( const GmElement * e,
const GmVector * coord,
int ip,
double de,
double di,
double df ) const
inlineprotectedvirtual

Reimplemented from GmpCohesiveLinearSoftening.


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