27#ifndef _GEMA_PLUGIN_MECHANICALMATERIAL_CRACKINGCRUSHINGDAMAGE_H_
28#define _GEMA_PLUGIN_MECHANICALMATERIAL_CRACKINGCRUSHINGDAMAGE_H_
31#include "gmpFemPhysics.h"
81 virtual bool checkLoadedData(
const GmElement* e)
const;
106 return propertyAc(FCM_ID)->scalarValueAt(e, coord, ip);
112 return propertyAc(RCM_ID)->scalarValueAt(e, coord, ip);
118 return propertyAc(FT0_ID)->scalarValueAt(e, coord, ip);
124 return propertyAc(FBT_ID)->scalarValueAt(e, coord, ip);
130 return propertyAc(FTC_ID)->scalarValueAt(e, coord, ip);
136 return propertyAc(FC0_ID)->scalarValueAt(e, coord, ip);
142 return propertyAc(FBC_ID)->scalarValueAt(e, coord, ip);
148 return propertyAc(RHO_ID)->scalarValueAt(e, coord, ip);
154 return propertyAc(GF_ID)->scalarValueAt(e, coord, ip);
160 return propertyAc(GC_ID)->scalarValueAt(e, coord, ip);
175 return lch->scalarValueAt(e, coord, ip);
190 return lchmin->scalarValueAt(e, coord, ip);
Definition gmpMaterialCrackingCrushingDamage.h:39
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.
Definition gmpMaterialCrackingCrushingDamage.h:71
virtual double biaxialTensileStrength(const GmElement *e, const GmVector *coord, int ip) const
Returns the biaxial tensile strength of the material.
Definition gmpMaterialCrackingCrushingDamage.h:122
virtual double elasticUniaxialCompressiveLimit(const GmElement *e, const GmVector *coord, int ip) const
Returns the uniaxial compressive stress in which the damage process is initialized.
Definition gmpMaterialCrackingCrushingDamage.h:134
virtual double parameterRho(const GmElement *e, const GmVector *coord, int ip) const
Returns the triaxial compression adjustment parameter.
Definition gmpMaterialCrackingCrushingDamage.h:146
virtual double biaxialCompressiveStrength(const GmElement *e, const GmVector *coord, int ip) const
Returns the biaxial compressive strength of the material.
Definition gmpMaterialCrackingCrushingDamage.h:140
virtual double ultimateUniaxialCompressiveStrength(const GmElement *e, const GmVector *coord, int ip) const
Returns the ultimate uniaxial compressive strength of the material.
Definition gmpMaterialCrackingCrushingDamage.h:104
virtual double fractureEnergy(const GmElement *e, const GmVector *coord, int ip) const
Returns the fracture energy.
Definition gmpMaterialCrackingCrushingDamage.h:152
ElementPropertyIds
IDs for material element properties.
Definition gmpMaterialCrackingCrushingDamage.h:43
@ FC0_ID
Id for retrieving the uniaxial compressive stress in which the damage process is initialized accessor...
Definition gmpMaterialCrackingCrushingDamage.h:49
@ FT0_ID
Id for retrieving the uniaxial tensile strength accessor.
Definition gmpMaterialCrackingCrushingDamage.h:46
@ RCM_ID
Id for retrieving the strain that corresponds to the ultimate uniaxial compressive strength acessor.
Definition gmpMaterialCrackingCrushingDamage.h:45
@ GF_ID
Id for retrieving the fracture energy accessor.
Definition gmpMaterialCrackingCrushingDamage.h:52
@ LCH_ID
Id for retrieving the user-defined characteristic element length accessor.
Definition gmpMaterialCrackingCrushingDamage.h:54
@ FBT_ID
Id for retrieving the biaxial tensile strength of the material accessor.
Definition gmpMaterialCrackingCrushingDamage.h:47
@ NUM_PROPERTY_IDS
The number of property ids above.
Definition gmpMaterialCrackingCrushingDamage.h:58
@ FBC_ID
Id for retrieving the biaxial compressive strength accessor.
Definition gmpMaterialCrackingCrushingDamage.h:50
@ RHO_ID
Id for retrieving the triaxial compression adjustment parameter accessor.
Definition gmpMaterialCrackingCrushingDamage.h:51
@ LCHMIN_ID
Id for retrieving the minimum characteristic element length accessor.
Definition gmpMaterialCrackingCrushingDamage.h:55
@ FTC_ID
Id for retrieving the tensile criterion shape parameter accessor.
Definition gmpMaterialCrackingCrushingDamage.h:48
@ GC_ID
Id for retrieving the crushing energy accessor.
Definition gmpMaterialCrackingCrushingDamage.h:53
virtual double strainAtUltimateCompressiveStrength(const GmElement *e, const GmVector *coord, int ip) const
Returns the strain that corresponds to the ultimate uniaxial compressive strength of the material.
Definition gmpMaterialCrackingCrushingDamage.h:110
elasticDamageGaussAttrIds
IDs for Gauss attributes of elastic damage material.
Definition gmpMaterialCrackingCrushingDamage.h:85
@ TISVOLD_GA_ID
Id for retrieving the material point state accessor at the previous state.
Definition gmpMaterialCrackingCrushingDamage.h:89
@ DAMOLD_GA_ID
Id for retrieving the material point state accessor at the previous state.
Definition gmpMaterialCrackingCrushingDamage.h:87
@ NUM_GA_IDS
The number of gauss attributes.
Definition gmpMaterialCrackingCrushingDamage.h:94
@ TISV_GA_ID
Base Id for Gauss attribute(s) used to store the tensile internal state variable at the current state...
Definition gmpMaterialCrackingCrushingDamage.h:88
@ DAM_GA_ID
Base Id for Gauss attribute(s) used to store the damage variable at the current state.
Definition gmpMaterialCrackingCrushingDamage.h:86
@ CISV_GA_ID
Base Id for Gauss attribute(s) used to store the compressive internal state variable at the current s...
Definition gmpMaterialCrackingCrushingDamage.h:90
@ CISVOLD_GA_ID
Id for retrieving the material point state accessor at the previous state.
Definition gmpMaterialCrackingCrushingDamage.h:91
GmpMaterialCrackingCrushingDamage(int typeIndex, QString typeName, const GmLogCategory &logger)
Constructor. Gets as parameters the material index and its name.
Definition gmpMaterialCrackingCrushingDamage.h:64
virtual double userDefinedCharacteristicLength(const GmElement *e, const GmVector *coord, int ip) const
Returns the user-defined characteristic length.
Definition gmpMaterialCrackingCrushingDamage.h:164
virtual double minimumCharacteristicLength(const GmElement *e, const GmVector *coord, int ip) const
Returns the minimum characteristic length.
Definition gmpMaterialCrackingCrushingDamage.h:179
virtual double crushingEnergy(const GmElement *e, const GmVector *coord, int ip) const
Returns the crushing energy.
Definition gmpMaterialCrackingCrushingDamage.h:158
virtual double tensileCriterionShapeParameter(const GmElement *e, const GmVector *coord, int ip) const
Returns the tensile criterion shape parameter.
Definition gmpMaterialCrackingCrushingDamage.h:128
virtual ~GmpMaterialCrackingCrushingDamage()
Virtual destructor.
Definition gmpMaterialCrackingCrushingDamage.h:68
virtual double uniaxialTensileStrength(const GmElement *e, const GmVector *coord, int ip) const
Returns the uniaxial tensile strength of the material.
Definition gmpMaterialCrackingCrushingDamage.h:116
Definition gmpMechanicPoint.h:33
Definition gmpMaterialElastic.h:35
virtual bool mechanicalConstitutiveModel(const GmElement *e, GmMatrix &Dep, const GmpMechanicPoint *mp, const GmVector *coord, const GmVector &Time, unsigned nc, bool ips) const
Evaluates stress and tangent matrix according to the material behavior adopted.
Definition gmpMaterialElastic.cpp:83
virtual const QVariantMap * materialMetaDataMap()
Returns a pointer to the material attribute map, built when the function is called for the first time...
Definition gmpMaterialElastic.cpp:40
@ NUM_PROPERTY_IDS
The number of property ids above.
Definition gmpMaterialElastic.h:46
virtual bool setInitialConditions(const GmElement *e, GmpMechanicPoint *mp, const GmVector *coord, unsigned sc) const
Sets the initial conditions required by Solid materials.
Definition gmpMechanicalMaterial.h:69
Declaration of the GmpMechanicalMaterialElastic class.
Declaration of the GmpMechanicPoint class.
Declaration of useful configuration definitions for the plugin library.