24 #ifndef _GEMA_PLUGIN_MECHANICALMATERIAL_MODIFIEDCAMCLAY_H_ 25 #define _GEMA_PLUGIN_MECHANICALMATERIAL_MODIFIEDCAMCLAY_H_ 29 #include "gmpFemPhysics.h" 82 return propertyAc(M_ID)->scalarValueAt(e, coord, ip);
90 const double p_ = -GmpMechanicUtils::stressInvariantI1(s, st) / 3;
93 const double q_ = sqrt(GmpMechanicUtils::deviatoricInvariantJ2(s, st) * 3);
97 const double M_ = CriticalFrictionSlope(e, coord, ip);
102 if (B_ != NULL && p_ > -1 * M_*q_)
103 beta_ = propertyAc(beta_ID)->scalarValueAt(e, coord, ip);
111 return propertyAc(l_ID)->scalarValueAt(e, coord, ip);
117 return propertyAc(k_ID)->scalarValueAt(e, coord, ip);
123 return propertyAc(e0_ID)->scalarValueAt(e, coord, ip);
virtual double ReloadingLineSlope(const GmElement *e, const GmVector *coord, int ip) const
Returns the material reloading line slope.
Definition: gmpMaterialModifiedCamClay.h:115
Id for retrieving the reloading line slope accessor.
Definition: gmpMaterialModifiedCamClay.h:40
Definition: gmpMaterialModifiedCamClay.h:32
The number of gauss attributes.
Definition: gmpMaterialElastoplastic.h:92
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: gmpMaterialModifiedCamClay.h:66
The number of property ids above.
Definition: gmpMaterialModifiedCamClay.h:45
ElementPropertyIds
IDs for material element properties.
Definition: gmpMaterialElastic.h:38
The number of property ids above.
Definition: gmpMaterialElastoplastic.h:79
virtual double InitialVoidRatio(const GmElement *e, const GmVector *coord, int ip) const
Returns the material initial void ratio.
Definition: gmpMaterialModifiedCamClay.h:121
Definition: gmpMechanicPoint.h:32
The number of gauss attributes.
Definition: gmpMaterialModifiedCamClay.h:53
GmpMaterialModifiedCamClay(int typeIndex, QString typeName, const GmLogCategory &logger)
Constructor. Gets as parameters the material index and its name.
Definition: gmpMaterialModifiedCamClay.h:59
Declaration of the gmpMaterialElastoplastic classes.
virtual double CriticalFrictionSlope(const GmElement *e, const GmVector *coord, int ip) const
Returns the material critical friction slope.
Definition: gmpMaterialModifiedCamClay.h:80
virtual double yieldStrengthRatio(const GmElement *e, const GmVector &S, const GmVector *coord, int ip, unsigned sc) const =0
Returns the Yield Strength Ratio (Ysr)
Id for retrieving the isotropic compression line slope accessor.
Definition: gmpMaterialModifiedCamClay.h:39
Id for retrieveng the beta parameter accessor.
Definition: gmpMaterialModifiedCamClay.h:42
Declaration of the GmpMechanicPoint class.
Id for retrieving the initial void ratio accessor.
Definition: gmpMaterialModifiedCamClay.h:41
GaussAttributeIds
Definition: gmpMaterialModifiedCamClay.h:48
virtual bool mechanicalConstitutiveModel(const GmElement *, GmMatrix &, const GmpMechanicPoint *, const GmVector *, const GmVector &, unsigned, bool) const
Returns the updated stresses after the return mapping process.
Definition: gmpMaterialElastoplastic.cpp:82
virtual double IsotropicLineSlope(const GmElement *e, const GmVector *coord, int ip) const
Returns the material isotropic compression line slope.
Definition: gmpMaterialModifiedCamClay.h:109
double BetaParameter(const GmElement *e, const GmVector &s, const GmVector *coord, int ip, unsigned st) const
Returns the material beta coeficient for the wet side.
Definition: gmpMaterialModifiedCamClay.h:86
Definition: gmpMaterialElastoplastic.h:35
virtual ~GmpMaterialModifiedCamClay()
Virtual destructor.
Definition: gmpMaterialModifiedCamClay.h:63
virtual const QVariantMap * materialMetaDataMap()
Returns a pointer to the material/Gauus attribute map, built when the function is called for the firs...
Definition: gmpMaterialElastoplastic.cpp:45
virtual bool isIsotropic() const
Returns true if the material is isotropic, false otherwise.
Definition: gmpMaterialModifiedCamClay.h:77