27#ifndef _GEMA_PLUGIN_MECHANICALMATERIAL_ELASTOPLASTIC_H_
28#define _GEMA_PLUGIN_MECHANICALMATERIAL_ELASTOPLASTIC_H_
32#include "gmpFemPhysics.h"
117 virtual double yieldCriterion(
const GmElement* e,
const GmVector& S,
const GmVector* coord,
int ip,
unsigned sc)
const = 0;
138 double,
double,
unsigned,
bool)
const;
141 double,
double,
unsigned,
bool)
const;
144 double,
double,
unsigned,
bool)
const;
147 double,
double,
unsigned,
bool)
const;
163 value = rmAcc->scalarValueAt(e, coord, ip);
178 if (subStepAcc != NULL)
180 value = (subStepAcc->scalarValueAt(e, coord, ip) > 0)? true :
false;
195 if (lineSearchAcc != NULL)
197 value = lineSearchAcc->scalarValueAt(e, coord, ip);
214 return fTolAcc->scalarValueAt(e, coord, ip);
228 return sTolAcc->scalarValueAt(e, coord, ip);
242 return hTolAcc->scalarValueAt(e, coord, ip);
Definition gmpMaterialElastoplastic.h:36
ElementPropertyIds
IDs for material element properties.
Definition gmpMaterialElastoplastic.h:70
@ STOL_ID
Id for retrieving the stress tolerance.
Definition gmpMaterialElastoplastic.h:75
@ FTOL_ID
Id for retrieving the yield function tolerance.
Definition gmpMaterialElastoplastic.h:74
@ HTOL_ID
Id for retrieving the hardening variable tolerance.
Definition gmpMaterialElastoplastic.h:76
@ NUM_PROPERTY_IDS
The number of property ids above.
Definition gmpMaterialElastoplastic.h:79
@ LINESEARCH_ID
Id for retrieving the line search method.
Definition gmpMaterialElastoplastic.h:73
@ SUBSTEP_ID
Id for retrieving the substepping algorithm.
Definition gmpMaterialElastoplastic.h:72
virtual double stressTolerance(const GmElement *e, const GmVector *coord, int ip) const
Returns the Stress tolerance.
Definition gmpMaterialElastoplastic.h:218
virtual double lineSearchStrategy(const GmElement *e, const GmVector *coord, int ip) const
Returns the line search strategy.
Definition gmpMaterialElastoplastic.h:187
returnMappingStrategy
IDs for return mapping strategies.
Definition gmpMaterialElastoplastic.h:50
@ Alternative
Id for an alternative state-update algorithm.
Definition gmpMaterialElastoplastic.h:56
@ Implicit
Id for implicit state-update algorithm.
Definition gmpMaterialElastoplastic.h:53
@ SemiImplicit
Id for semi-implicit state-update algorithm.
Definition gmpMaterialElastoplastic.h:52
@ Explicit
Id for explicit state-update algorithm.
Definition gmpMaterialElastoplastic.h:51
@ NewtonKrylov
Id for a Newton-Krylov implicit state-update algorithm.
Definition gmpMaterialElastoplastic.h:54
@ CFunctions
Id for a Newton-Raphson implicit state-update algorithm based on complementary functions.
Definition gmpMaterialElastoplastic.h:55
virtual bool substepping(const GmElement *e, const GmVector *coord, int ip) const
Returns the substepping algorithm.
Definition gmpMaterialElastoplastic.h:170
virtual double yieldTolerance(const GmElement *e, const GmVector *coord, int ip) const
Returns the yield function tolerance.
Definition gmpMaterialElastoplastic.h:204
elastoplasticGaussAttrIds
IDs for Gauss attributes of elastoplastic material.
Definition gmpMaterialElastoplastic.h:84
@ EPOLD_GA_ID
Id for retrieving the plastic strain accessor at the previous state (old plastic strain)
Definition gmpMaterialElastoplastic.h:86
@ DLAMBD_GA_ID
Id for retrieving the plastic multiplier at the plastic state.
Definition gmpMaterialElastoplastic.h:89
@ EP_GA_ID
Base Id for Gauss attribute(s) used to store the calculated plastic strain at the current state.
Definition gmpMaterialElastoplastic.h:85
@ HARDOLD_GA_ID
Id for retrieving the material point state accessor at the previous state.
Definition gmpMaterialElastoplastic.h:88
@ HARD_GA_ID
Base Id for Gauss attribute(s) used to store the calculated hardening at the current state.
Definition gmpMaterialElastoplastic.h:87
@ NUM_GA_IDS
The number of gauss attributes.
Definition gmpMaterialElastoplastic.h:92
lineSearchStrategy
IDs for line search strategies.
Definition gmpMaterialElastoplastic.h:61
@ none
Id for Return mapping algorithm without line search.
Definition gmpMaterialElastoplastic.h:62
@ quadratic
Id for Return mapping algorithm with quadratic line search.
Definition gmpMaterialElastoplastic.h:64
@ cubic
ID for Return mapping algorithm with cubic line search.
Definition gmpMaterialElastoplastic.h:65
@ goldenSection
Id for Return mapping algorithm with golden section method.
Definition gmpMaterialElastoplastic.h:63
virtual double hardeningTolerance(const GmElement *e, const GmVector *coord, int ip) const
Returns the hardening variable tolerance.
Definition gmpMaterialElastoplastic.h:232
virtual double returnAlgorithm(const GmElement *e, const GmVector *coord, int ip) const
Returns the type of return mapping algorithm.
Definition gmpMaterialElastoplastic.h:153
virtual double yieldStrengthRatio(const GmElement *e, const GmVector &S, const GmVector *coord, int ip, unsigned sc) const =0
Returns the Yield Strength Ratio (Ysr)
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
GmpMechanicalMaterialElastic(int typeIndex, QString typeName, const GmLogCategory &logger)
Constructor. Gets as parameters the material index and its name.
Definition gmpMaterialElastic.h:52
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
Declaration of the GmpMechanicalMaterialElastic class.
Declaration of the GmpMechanicPoint class.