29 #ifndef _GEMA_PLUGIN_MECHANICALMATERIAL_CAP_MODEL_H_ 30 #define _GEMA_PLUGIN_MECHANICALMATERIAL_CAP_MODEL_H_ 32 #include "gmpMaterialElastoplasticMultiSurface.h" 34 #include "gmpFemPhysics.h" 109 return propertyAc(ALPHA_ID)->scalarValueAt(e, coord, ip);
114 return propertyAc(BETA_ID)->scalarValueAt(e, coord, ip);
119 return propertyAc(LAMBDA_ID)->scalarValueAt(e, coord, ip);
124 return propertyAc(THETA_ID)->scalarValueAt(e, coord, ip);
129 return propertyAc(INITIALCENTER_ID)->scalarValueAt(e, coord, ip);
134 return propertyAc(RATIO_ID)->scalarValueAt(e, coord, ip);
139 return propertyAc(CUTOFF_ID)->scalarValueAt(e, coord, ip);
153 return wAccc->scalarValueAt(e, coord, ip);
168 return dAccc->scalarValueAt(e, coord, ip);
178 virtual double capSurfaceCriterion(
const GmElement*,
const GmVector&,
const double,
const GmVector*,
int,
unsigned)
const;
184 virtual double tensionCutOffCriterion(
const GmElement*,
const GmVector&,
const double,
const GmVector*,
int,
unsigned)
const;
196 virtual double capSurfacePlasticFPotential(
const GmElement*,
const GmVector&,
const double,
const GmVector*,
int,
unsigned)
const;
202 virtual double tensionCutOffPlasticFPotential(
const GmElement*,
const GmVector&,
const double,
const GmVector*,
int,
unsigned)
const;
214 virtual bool capSurfaceHardeningEvolutionDerivative_Stress(
const GmElement*,
GmVector&,
const GmVector&,
const double,
const GmVector*,
int,
unsigned,
bool)
const;
220 virtual bool tensionCutOffHardeningEvolutionDerivative_Hardening(
const GmElement*,
GmMatrix&,
const GmVector&,
const double,
const GmVector*,
int,
unsigned)
const;
233 virtual int numberActiveSurface(
GmVector,
const double)
const;
256 const GmVector s,
const GmVector s_old,
const double q,
const double q_old,
const GmVector dg,
const double cphi,
const double cdg,
const double delta,
unsigned sc,
bool ips)
const;
260 const double q_current,
const double q_old,
const GmVector dg_current,
const double cphi,
const double cdg,
const double delta,
unsigned sc,
bool ips)
const;
263 const GmVector s,
const GmVector s_old,
const double q,
const double q_old,
const GmVector dg,
const double cphi,
const double cdg,
const double delta,
unsigned sc,
bool ips)
const;
Definition: gmpMaterialCapModel.h:37
virtual double betaParameter(const GmElement *e, const GmVector *coord, int ip) const
Returns the material constant beta.
Definition: gmpMaterialCapModel.h:112
virtual double lambdaParameter(const GmElement *e, const GmVector *coord, int ip) const
Returns the material constant lambda.
Definition: gmpMaterialCapModel.h:117
The number of gauss attributes.
Definition: gmpMaterialElastoplastic.h:92
virtual double ratioSemiaxes(const GmElement *e, const GmVector *coord, int ip) const
Returns the ratio between the semiaxes.
Definition: gmpMaterialCapModel.h:132
virtual bool isIsotropic() const
Returns true if the material is isotropic, false otherwise.
Definition: gmpMaterialCapModel.h:104
The number of Gauss attribute ids above.
Definition: gmpMaterialCapModel.h:63
Definition: gmpMaterialElastoplasticMultiSurface.h:33
virtual double alphaParameter(const GmElement *e, const GmVector *coord, int ip) const
Returns the material constant alpha.
Definition: gmpMaterialCapModel.h:107
The number of property ids above.
Definition: gmpMaterialElastoplastic.h:79
GaussAttributeIds
IDs for material Gauss attributes.
Definition: gmpMaterialCapModel.h:58
Definition: gmpMechanicPoint.h:32
virtual double maxVolumetricStrain(const GmElement *e, const GmVector *coord, int ip) const
Returns the ultimate compressive volumetric strain.
Definition: gmpMaterialCapModel.h:142
Id for retrieving the ratio between the semiaxes.
Definition: gmpMaterialCapModel.h:48
Id for retrieving the material constant theta accessor.
Definition: gmpMaterialCapModel.h:46
Id for retrieving the material constant lambda accessor.
Definition: gmpMaterialCapModel.h:45
Id for retrieving the initial center of the ellipse.
Definition: gmpMaterialCapModel.h:47
virtual double yieldStrengthRatio(const GmElement *e, const GmVector &S, const GmVector *coord, int ip, unsigned sc) const =0
Returns the Yield Strength Ratio (Ysr)
The number of property ids above.
Definition: gmpMaterialCapModel.h:54
virtual bool cFunctionsReturnAlgorithm(const GmElement *, GmMatrix &, const GmpMechanicPoint *, const GmVector *, unsigned, bool) const
Returns the updated stresses using a Newton-Raphson implicit state-update algorithm based on compleme...
Definition: gmpMaterialElastoplastic.cpp:527
virtual double tensionCutOff(const GmElement *e, const GmVector *coord, int ip) const
Returns the tension cut-off.
Definition: gmpMaterialCapModel.h:137
Id for retrieving the tension cut-off.
Definition: gmpMaterialCapModel.h:49
virtual double initialCenterEllipse(const GmElement *e, const GmVector *coord, int ip) const
Returns the center of the ellipse.
Definition: gmpMaterialCapModel.h:127
Declaration of the GmpMechanicPoint class.
ElementPropertyIds
IDs for material element properties.
Definition: gmpMaterialCapModel.h:41
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:68
virtual bool implicitReturnAlgorithm(const GmElement *, GmMatrix &, const GmpMechanicPoint *, const GmVector *, unsigned, bool) const
Returns the updated stresses using closet point return algorithm.
Definition: gmpMaterialElastoplasticMultiSurface.cpp:60
Id for retrieving the material constant beta accessor.
Definition: gmpMaterialCapModel.h:44
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 ~GmpMaterialCapModel()
Virtual destructor.
Definition: gmpMaterialCapModel.h:73
GmpMaterialCapModel(int typeIndex, QString typeName, const GmLogCategory &logger)
Constructor. Gets as parameters the material index and its name.
Definition: gmpMaterialCapModel.h:69
Id for retrieving the volumetric strain rate with respect to the compressive hydrostatic strain.
Definition: gmpMaterialCapModel.h:51
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: gmpMaterialCapModel.h:76
virtual double volumetricStrainRate(const GmElement *e, const GmVector *coord, int ip) const
Returns the volumetric strain rate with respect to the compressive hydrostatic strain.
Definition: gmpMaterialCapModel.h:157
Id for retrieving the ultimate compressive volumetric strain.
Definition: gmpMaterialCapModel.h:50
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 double thetaParameter(const GmElement *e, const GmVector *coord, int ip) const
Returns the material constant theta.
Definition: gmpMaterialCapModel.h:122
virtual bool newtonKrylovReturnAlgorithm(const GmElement *, GmMatrix &, const GmpMechanicPoint *, const GmVector *, unsigned, bool) const
Returns the updated stresses using a Newton-Krylov return mapping algorithm.
Definition: gmpMaterialElastoplastic.cpp:539