10 #if !defined(KRATOS_V2_GENS_NOVA_MODEL_H_INCLUDED )
11 #define KRATOS_V2_GENS_NOVA_MODEL_H_INCLUDED
120 ConstitutiveModel::Pointer
Clone()
const override
154 virtual std::string
Info()
const override
156 std::stringstream buffer;
157 buffer <<
"V2GensNovaModel" ;
162 virtual void PrintInfo(std::ostream& rOStream)
const override
164 rOStream <<
"V2GensNovaModel";
168 virtual void PrintData(std::ostream& rOStream)
const override
170 rOStream <<
"V2GensNovaModel Data";
212 const double & rPs0 = rMaterialProperties[PS];
213 const double & rPt0 = rMaterialProperties[PT];
214 const double & rChis = rMaterialProperties[CHIS];
215 const double & rChit = rMaterialProperties[CHIT];
216 const double & rhos = rMaterialProperties[RHOS];
217 const double & rhot = rMaterialProperties[RHOT];
218 const double &
k = rMaterialProperties[KSIM];
220 const double & rPlasticVolDef = Variables.Internal.Variables[1];
221 const double & rPlasticDevDef = Variables.Internal.Variables[2];
222 const double & rPlasticVolDefAbs = Variables.Internal.Variables[6];
224 double sq2_3 = sqrt(2.0/3.0);
227 ps = rPlasticVolDef + sq2_3 * rChis * rPlasticDevDef;
228 ps = (-rPs0) * std::exp( -rhos*ps);
231 pt = rPlasticVolDefAbs + sq2_3 * rChit * rPlasticDevDef;
232 pt = (-rPt0) * std::exp( rhot*pt);
235 pm = ps + (1.0+
k)*pt;
238 mInternal.Variables[3] = ps;
239 mInternal.Variables[4] = pt;
240 mInternal.Variables[5] = pm;
298 virtual void save(
Serializer& rSerializer)
const override
PeriodicInterfaceProcess & operator=(const PeriodicInterfaceProcess &)=delete
Short class definition.
Definition: gens_nova_hardening_rule.hpp:48
Short class definition.
Definition: gens_nova_yield_surface.hpp:51
Definition: amatrix_interface.h:41
void CalculateStressAndConstitutiveTensors(ModelDataType &rValues, MatrixType &rStressMatrix, Matrix &rConstitutiveMatrix) override
Definition: non_associative_plasticity_model.hpp:222
BaseType::PlasticDataType PlasticDataType
Definition: non_associative_plasticity_model.hpp:86
Short class definition.
Definition: plasticity_model.hpp:50
TYieldSurface::InternalVariablesType InternalVariablesType
Definition: plasticity_model.hpp:69
ConstitutiveModelData::SizeType SizeType
Definition: plasticity_model.hpp:63
ConstitutiveModelData::VoigtIndexType VoigtIndexType
Definition: plasticity_model.hpp:64
TYieldSurface::PlasticDataType PlasticDataType
Definition: plasticity_model.hpp:68
Properties encapsulates data shared by different Elements or Conditions. It can store any type of dat...
Definition: properties.h:69
The serialization consists in storing the state of an object into a storage format like data file or ...
Definition: serializer.h:123
Short class definition.
Definition: structured_soil_model.hpp:66
Short class definition.
Definition: tamagnini_model.hpp:48
Short class definition.
Definition: v2_gens_nova_model.hpp:69
V2GensNovaModel()
Default constructor.
Definition: v2_gens_nova_model.hpp:107
YieldSurfaceType::Pointer YieldSurfacePointer
Definition: v2_gens_nova_model.hpp:83
virtual std::string Info() const override
Turn back information as a string.
Definition: v2_gens_nova_model.hpp:154
BaseType::VoigtIndexType VoigtIndexType
Definition: v2_gens_nova_model.hpp:91
BaseType::MaterialDataType MaterialDataType
Definition: v2_gens_nova_model.hpp:94
GensNovaYieldSurface< HardeningRuleType > YieldSurfaceType
Definition: v2_gens_nova_model.hpp:82
void CalculateStressAndConstitutiveTensors(ModelDataType &rValues, MatrixType &rStressMatrix, Matrix &rConstitutiveMatrix) override
Definition: v2_gens_nova_model.hpp:200
StructuredSoilModel< ElasticityModelType, YieldSurfaceType > BaseType
Definition: v2_gens_nova_model.hpp:86
ElasticityModelType::Pointer ElasticityModelPointer
Definition: v2_gens_nova_model.hpp:78
KRATOS_CLASS_POINTER_DEFINITION(V2GensNovaModel)
Pointer definition of V2GensNovaModel.
V2GensNovaModel(V2GensNovaModel const &rOther)
Copy constructor.
Definition: v2_gens_nova_model.hpp:110
BaseType::Pointer BaseTypePointer
Definition: v2_gens_nova_model.hpp:89
BaseType::MatrixType MatrixType
Definition: v2_gens_nova_model.hpp:92
V2GensNovaModel & operator=(V2GensNovaModel const &rOther)
Assignment operator.
Definition: v2_gens_nova_model.hpp:113
GensNovaHardeningRule HardeningRuleType
Definition: v2_gens_nova_model.hpp:81
virtual void PrintInfo(std::ostream &rOStream) const override
Print information about this object.
Definition: v2_gens_nova_model.hpp:162
BaseType::InternalVariablesType InternalVariablesType
Definition: v2_gens_nova_model.hpp:96
BaseType::PlasticDataType PlasticDataType
Definition: v2_gens_nova_model.hpp:95
BaseType::SizeType SizeType
Definition: v2_gens_nova_model.hpp:90
virtual void PrintData(std::ostream &rOStream) const override
Print object's data.
Definition: v2_gens_nova_model.hpp:168
virtual ~V2GensNovaModel()
Destructor.
Definition: v2_gens_nova_model.hpp:126
BaseType::ModelDataType ModelDataType
Definition: v2_gens_nova_model.hpp:93
ConstitutiveModel::Pointer Clone() const override
Clone.
Definition: v2_gens_nova_model.hpp:120
TamagniniModel ElasticityModelType
Definition: v2_gens_nova_model.hpp:77
#define KRATOS_SERIALIZE_SAVE_BASE_CLASS(Serializer, BaseType)
Definition: define.h:812
#define KRATOS_CATCH(MoreInfo)
Definition: define.h:110
#define KRATOS_TRY
Definition: define.h:109
#define KRATOS_SERIALIZE_LOAD_BASE_CLASS(Serializer, BaseType)
Definition: define.h:815
void InitializeVariables(TContainerType &rContainer, const Variable< TDataType > &rOutputVariable, const Variable< TDataType > &rReferenceVariable)
Definition: temporal_method_utilities.h:36
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
def load(f)
Definition: ode_solve.py:307
int k
Definition: quadrature.py:595
Definition: constitutive_model_data.hpp:92
Definition: constitutive_model_data.hpp:383
const Properties & GetProperties() const
Definition: constitutive_model_data.hpp:431