10 #if !defined(KRATOS_OGDEN_MODEL_H_INCLUDED )
11 #define KRATOS_OGDEN_MODEL_H_INCLUDED
73 ConstitutiveModel::Pointer Clone()
const override;
97 void CalculateConstitutiveTensor(
ModelDataType& rValues,
Matrix& rConstitutiveMatrix)
override;
120 std::string
Info()
const override
122 std::stringstream buffer;
123 buffer <<
"OgdenModel";
130 rOStream <<
"OgdenModel";
136 rOStream <<
"OgdenModel Data";
167 void CalculateAndAddStressTensor(HyperElasticDataType& rVariables,
MatrixType& rStressMatrix)
override;
172 void CalculateAndAddConstitutiveTensor(HyperElasticDataType& rVariables,
Matrix& rConstitutiveMatrix)
override;
174 virtual void CalculateAndAddConstitutiveTensorB(HyperElasticDataType& rVariables,
Matrix& rConstitutiveMatrix);
179 double& AddConstitutiveComponent(HyperElasticDataType& rVariables,
double &rCabcd,
181 const unsigned int&
a,
const unsigned int&
b,
182 const unsigned int&
c,
const unsigned int&
d);
189 unsigned int& option);
194 double& CalculateIsotropicTensorDerivative(
const MatrixType& rStrainMatrix,
200 const unsigned int& rOption,
202 const unsigned int&
a,
const unsigned int&
b,
203 const unsigned int&
c,
const unsigned int&
d);
215 void CalculateStrainData(ModelDataType& rValues, HyperElasticDataType& rVariables)
override;
217 virtual void CalculateMainStresses(HyperElasticDataType& rVariables,
array_1d<double,3>& rMainStresses);
219 virtual void CalculateMainStressDerivatives(HyperElasticDataType& rVariables,
MatrixType& rStressDerivatives);
221 virtual double& CalculateStressDerivativesI(HyperElasticDataType& rVariables,
double& rValue,
const unsigned int&
i,
const unsigned int&
j);
222 virtual double& CalculateStressDerivativesII(HyperElasticDataType& rVariables,
double& rValue,
const unsigned int&
i,
const unsigned int&
j);
226 void CalculateAndAddVolumetricStrainEnergy(HyperElasticDataType& rVariables,
double& rVolumetricDensityFunction)
override;
278 void save(
Serializer& rSerializer)
const override
PeriodicInterfaceProcess & operator=(const PeriodicInterfaceProcess &)=delete
Short class definition.
Definition: hyper_elastic_model.hpp:50
virtual double & AddConstitutiveComponent(HyperElasticDataType &rVariables, double &rCabcd, const unsigned int &a, const unsigned int &b, const unsigned int &c, const unsigned int &d)
Definition: hyper_elastic_model.cpp:454
Short class definition.
Definition: ogden_model.hpp:50
std::string Info() const override
Turn back information as a string.
Definition: ogden_model.hpp:120
void PrintInfo(std::ostream &rOStream) const override
Print information about this object.
Definition: ogden_model.hpp:128
KRATOS_CLASS_POINTER_DEFINITION(OgdenModel)
Pointer definition of OgdenModel.
void PrintData(std::ostream &rOStream) const override
Print object's data.
Definition: ogden_model.hpp:134
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
#define KRATOS_SERIALIZE_SAVE_BASE_CLASS(Serializer, BaseType)
Definition: define.h:812
#define KRATOS_SERIALIZE_LOAD_BASE_CLASS(Serializer, BaseType)
Definition: define.h:815
double CalculateStrainEnergy(Element &rElement)
Definition: mpm_energy_calculation_utility.cpp:89
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
a
Definition: generate_stokes_twofluid_element.py:77
b
Definition: generate_total_lagrangian_mixed_volumetric_strain_element.py:31
c
Definition: generate_weakly_compressible_navier_stokes_element.py:108
def load(f)
Definition: ode_solve.py:307
int d
Definition: ode_solve.py:397
int j
Definition: quadrature.py:648
integer i
Definition: TensorModule.f:17
Definition: constitutive_model_data.hpp:383