10 #if !defined(KRATOS_YEOH_MODEL_H_INCLUDED)
11 #define KRATOS_YEOH_MODEL_H_INCLUDED
75 virtual ConstitutiveModel::Pointer
Clone()
const override
77 return Kratos::make_shared<YeohModel>(*
this);
98 this->CalculateStrainData(rValues, Variables);
100 rDensityFunction += rVariables.GetMaterialParameters()[0] * ( Variables.Strain.Invariants.I1 - 3.0) + rVariables.GetMaterialParameters()[1] * ( Variables.Strain.Invariants.I2 - 3.0) + rVariables.GetMaterialParameters()[2] * ( Variables.Strain.Invariants.I3 - 3.0);
114 if( C10.Key() == 0 || rProperties[C10] <= 0.00 )
115 KRATOS_ERROR <<
"C10 has an invalid key or value" << std::endl;
117 if( C20.Key() == 0 || rProperties[C20] <= 0.00 )
118 KRATOS_ERROR <<
"C20 has an invalid key or value" << std::endl;
120 if( C30.Key() == 0 || rProperties[C30] <= 0.00 )
121 KRATOS_ERROR <<
"C30 has an invalid key or value" << std::endl;
123 if( BULK_MODULUS.Key() == 0 || rProperties[BULK_MODULUS] <= 0.00 )
124 KRATOS_ERROR <<
"BULK_MODULUS has an invalid key or value" << std::endl;
145 virtual std::string
Info()
const override
147 std::stringstream buffer;
148 buffer <<
"YeohModel";
153 virtual void PrintInfo(std::ostream& rOStream)
const override
155 rOStream <<
"YeohModel";
159 virtual void PrintData(std::ostream& rOStream)
const override
161 rOStream <<
"YeohModel Data";
309 virtual void save(
Serializer& rSerializer)
const override
Short class definition.
Definition: hyper_elastic_model.hpp:50
HyperElasticModel & operator=(HyperElasticModel const &rOther)
Assignment operator.
Definition: hyper_elastic_model.cpp:59
int Check(const Properties &rProperties, const ProcessInfo &rCurrentProcessInfo) override
Definition: hyper_elastic_model.cpp:728
ProcessInfo holds the current value of different solution parameters.
Definition: process_info.h:59
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: yeoh_model.hpp:48
virtual double & GetFunction1stI1Derivative(HyperElasticDataType &rVariables, double &rDerivative)
Definition: yeoh_model.hpp:190
virtual double & GetFunction1stI3Derivative(HyperElasticDataType &rVariables, double &rDerivative)
Definition: yeoh_model.hpp:214
virtual double & GetFunction2ndI1Derivative(HyperElasticDataType &rVariables, double &rDerivative)
Definition: yeoh_model.hpp:226
KRATOS_CLASS_POINTER_DEFINITION(YeohModel)
Pointer definition of YeohModel.
virtual double & GetFunction2ndI2Derivative(HyperElasticDataType &rVariables, double &rDerivative)
Definition: yeoh_model.hpp:237
YeohModel()
Default constructor.
Definition: yeoh_model.hpp:62
virtual void PrintData(std::ostream &rOStream) const override
Print object's data.
Definition: yeoh_model.hpp:159
virtual ~YeohModel()
Destructor.
Definition: yeoh_model.hpp:81
virtual double & GetFunction2ndI3Derivative(HyperElasticDataType &rVariables, double &rDerivative)
Definition: yeoh_model.hpp:248
YeohModel & operator=(YeohModel const &rOther)
Assignment operator.
Definition: yeoh_model.hpp:68
virtual double & GetFunction1stI2Derivative(HyperElasticDataType &rVariables, double &rDerivative)
Definition: yeoh_model.hpp:203
virtual ConstitutiveModel::Pointer Clone() const override
Clone.
Definition: yeoh_model.hpp:75
YeohModel(YeohModel const &rOther)
Copy constructor.
Definition: yeoh_model.hpp:65
virtual int Check(const Properties &rProperties, const ProcessInfo &rCurrentProcessInfo)
Definition: yeoh_model.hpp:107
virtual void CalculateStrainEnergy(ModelDataType &rValues, double &rDensityFunction)
Definition: yeoh_model.hpp:93
virtual void PrintInfo(std::ostream &rOStream) const override
Print information about this object.
Definition: yeoh_model.hpp:153
virtual std::string Info() const override
Turn back information as a string.
Definition: yeoh_model.hpp:145
#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
#define KRATOS_ERROR
Definition: exception.h:161
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
def load(f)
Definition: ode_solve.py:307
Definition: constitutive_model_data.hpp:383
Definition: hyper_elastic_model.hpp:108
StrainData Strain
Definition: hyper_elastic_model.hpp:117
const MaterialDataType & GetMaterialParameters() const
Definition: hyper_elastic_model.hpp:125
StrainInvariants Invariants
Definition: hyper_elastic_model.hpp:98
double I1
Definition: hyper_elastic_model.hpp:56