KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
|
#include <elastic_isotropic_3d.h>
Public Member Functions | |
Lyfe Cycle | |
ElasticIsotropic3D () | |
Default constructor. More... | |
ConstitutiveLaw::Pointer | Clone () const override |
Clone method. More... | |
ElasticIsotropic3D (const ElasticIsotropic3D &rOther) | |
~ElasticIsotropic3D () override | |
Destructor. More... | |
Operations | |
void | GetLawFeatures (Features &rFeatures) override |
This function is designed to be called once to check compatibility with element. More... | |
SizeType | WorkingSpaceDimension () override |
Dimension of the law: More... | |
SizeType | GetStrainSize () const override |
Voigt tensor size: More... | |
StrainMeasure | GetStrainMeasure () override |
Returns the expected strain measure of this constitutive law (by default Green-Lagrange) More... | |
StressMeasure | GetStressMeasure () override |
Returns the stress measure of this constitutive law (by default 2st Piola-Kirchhoff stress in voigt notation) More... | |
void | CalculateMaterialResponsePK1 (ConstitutiveLaw::Parameters &rValues) override |
Computes the material response: More... | |
void | CalculateMaterialResponsePK2 (ConstitutiveLaw::Parameters &rValues) override |
Computes the material response: More... | |
void | CalculateMaterialResponseKirchhoff (ConstitutiveLaw::Parameters &rValues) override |
Computes the material response: More... | |
void | CalculateMaterialResponseCauchy (ConstitutiveLaw::Parameters &rValues) override |
Computes the material response: More... | |
void | InitializeMaterialResponsePK1 (ConstitutiveLaw::Parameters &rValues) override |
Initialize the material response in terms of 1st Piola-Kirchhoff stresses. More... | |
void | InitializeMaterialResponsePK2 (ConstitutiveLaw::Parameters &rValues) override |
Initialize the material response in terms of 2nd Piola-Kirchhoff stresses. More... | |
void | InitializeMaterialResponseKirchhoff (ConstitutiveLaw::Parameters &rValues) override |
Initialize the material response in terms of Kirchhoff stresses. More... | |
void | InitializeMaterialResponseCauchy (ConstitutiveLaw::Parameters &rValues) override |
Initialize the material response in terms of Cauchy stresses. More... | |
void | FinalizeMaterialResponsePK1 (ConstitutiveLaw::Parameters &rValues) override |
Updates the material response: More... | |
void | FinalizeMaterialResponsePK2 (ConstitutiveLaw::Parameters &rValues) override |
Updates the material response: Cauchy stresses and Internal Variables. More... | |
void | FinalizeMaterialResponseKirchhoff (ConstitutiveLaw::Parameters &rValues) override |
Updates the material response: More... | |
void | FinalizeMaterialResponseCauchy (ConstitutiveLaw::Parameters &rValues) override |
Updates the material response: More... | |
bool | RequiresInitializeMaterialResponse () override |
If the CL requires to initialize the material response, called by the element in InitializeSolutionStep. More... | |
bool | RequiresFinalizeMaterialResponse () override |
If the CL requires to finalize the material response, called by the element in FinalizeSolutionStep. More... | |
double & | CalculateValue (ConstitutiveLaw::Parameters &rParameterValues, const Variable< double > &rThisVariable, double &rValue) override |
It calculates the value of a specified variable (double case) More... | |
Vector & | CalculateValue (ConstitutiveLaw::Parameters &rParameterValues, const Variable< Vector > &rThisVariable, Vector &rValue) override |
It calculates the value of a specified variable (Vector case) More... | |
Matrix & | CalculateValue (ConstitutiveLaw::Parameters &rParameterValues, const Variable< Matrix > &rThisVariable, Matrix &rValue) override |
It calculates the value of a specified variable (Matrix case) More... | |
int | Check (const Properties &rMaterialProperties, const GeometryType &rElementGeometry, const ProcessInfo &rCurrentProcessInfo) const override |
This function provides the place to perform checks on the completeness of the input. More... | |
std::string | Info () const override |
General information identifying this instance. More... | |
void | PrintInfo (std::ostream &rOStream) const override |
General information identifying this instance. More... | |
Public Member Functions inherited from Kratos::ConstitutiveLaw | |
KRATOS_CLASS_POINTER_DEFINITION (ConstitutiveLaw) | |
KRATOS_DEFINE_LOCAL_FLAG (USE_ELEMENT_PROVIDED_STRAIN) | |
KRATOS_DEFINE_LOCAL_FLAG (COMPUTE_STRESS) | |
KRATOS_DEFINE_LOCAL_FLAG (COMPUTE_CONSTITUTIVE_TENSOR) | |
KRATOS_DEFINE_LOCAL_FLAG (COMPUTE_STRAIN_ENERGY) | |
KRATOS_DEFINE_LOCAL_FLAG (ISOCHORIC_TENSOR_ONLY) | |
KRATOS_DEFINE_LOCAL_FLAG (VOLUMETRIC_TENSOR_ONLY) | |
KRATOS_DEFINE_LOCAL_FLAG (MECHANICAL_RESPONSE_ONLY) | |
KRATOS_DEFINE_LOCAL_FLAG (THERMAL_RESPONSE_ONLY) | |
KRATOS_DEFINE_LOCAL_FLAG (INCREMENTAL_STRAIN_MEASURE) | |
KRATOS_DEFINE_LOCAL_FLAG (INITIALIZE_MATERIAL_RESPONSE) | |
KRATOS_DEFINE_LOCAL_FLAG (FINALIZE_MATERIAL_RESPONSE) | |
KRATOS_DEFINE_LOCAL_FLAG (FINITE_STRAINS) | |
KRATOS_DEFINE_LOCAL_FLAG (INFINITESIMAL_STRAINS) | |
KRATOS_DEFINE_LOCAL_FLAG (THREE_DIMENSIONAL_LAW) | |
KRATOS_DEFINE_LOCAL_FLAG (PLANE_STRAIN_LAW) | |
KRATOS_DEFINE_LOCAL_FLAG (PLANE_STRESS_LAW) | |
KRATOS_DEFINE_LOCAL_FLAG (AXISYMMETRIC_LAW) | |
KRATOS_DEFINE_LOCAL_FLAG (U_P_LAW) | |
KRATOS_DEFINE_LOCAL_FLAG (ISOTROPIC) | |
KRATOS_DEFINE_LOCAL_FLAG (ANISOTROPIC) | |
ConstitutiveLaw () | |
~ConstitutiveLaw () override | |
virtual Pointer | Create (Kratos::Parameters NewParameters) const |
It creates a new constitutive law pointer. More... | |
virtual Pointer | Create (Kratos::Parameters NewParameters, const Properties &rProperties) const |
It creates a new constitutive law pointer (version with properties) More... | |
void | SetInitialState (InitialState::Pointer pInitialState) |
InitialState::Pointer | pGetInitialState () |
InitialState & | GetInitialState () |
bool | HasInitialState () const |
template<typename TVectorType > | |
void | AddInitialStressVectorContribution (TVectorType &rStressVector) |
Adds the initial stress vector if it is defined in the InitialState. More... | |
template<typename TVectorType > | |
void | AddInitialStrainVectorContribution (TVectorType &rStrainVector) |
Adds the initial strain vector if it is defined in the InitialState. More... | |
template<typename TMatrixType > | |
void | AddInitialDeformationGradientMatrixContribution (TMatrixType &rF) |
Adds the initial strain vector if it is defined in the InitialState. More... | |
virtual bool | Has (const Variable< bool > &rThisVariable) |
Returns whether this constitutive Law has specified variable (boolean) More... | |
virtual bool | Has (const Variable< int > &rThisVariable) |
Returns whether this constitutive Law has specified variable (integer) More... | |
virtual bool | Has (const Variable< double > &rThisVariable) |
Returns whether this constitutive Law has specified variable (double) More... | |
virtual bool | Has (const Variable< Vector > &rThisVariable) |
Returns whether this constitutive Law has specified variable (Vector) More... | |
virtual bool | Has (const Variable< Matrix > &rThisVariable) |
Returns whether this constitutive Law has specified variable (Matrix) More... | |
virtual bool | Has (const Variable< array_1d< double, 3 > > &rThisVariable) |
Returns whether this constitutive Law has specified variable (array of 3 components) More... | |
virtual bool | Has (const Variable< array_1d< double, 6 > > &rThisVariable) |
Returns whether this constitutive Law has specified variable (array of 6 components) More... | |
virtual bool & | GetValue (const Variable< bool > &rThisVariable, bool &rValue) |
Returns the value of a specified variable (boolean) More... | |
virtual int & | GetValue (const Variable< int > &rThisVariable, int &rValue) |
virtual double & | GetValue (const Variable< double > &rThisVariable, double &rValue) |
Returns the value of a specified variable (double) More... | |
virtual Vector & | GetValue (const Variable< Vector > &rThisVariable, Vector &rValue) |
Returns the value of a specified variable (Vector) More... | |
virtual Matrix & | GetValue (const Variable< Matrix > &rThisVariable, Matrix &rValue) |
Returns the value of a specified variable (Matrix) More... | |
virtual array_1d< double, 3 > & | GetValue (const Variable< array_1d< double, 3 > > &rThisVariable, array_1d< double, 3 > &rValue) |
Returns the value of a specified variable (array of 3 components) More... | |
virtual array_1d< double, 6 > & | GetValue (const Variable< array_1d< double, 6 > > &rThisVariable, array_1d< double, 6 > &rValue) |
Returns the value of a specified variable (array of 6 components) More... | |
virtual void | SetValue (const Variable< bool > &rVariable, const bool &Value, const ProcessInfo &rCurrentProcessInfo) |
Sets the value of a specified variable (boolean) More... | |
virtual void | SetValue (const Variable< int > &rVariable, const int &Value, const ProcessInfo &rCurrentProcessInfo) |
Sets the value of a specified variable (integer) More... | |
virtual void | SetValue (const Variable< double > &rVariable, const double &rValue, const ProcessInfo &rCurrentProcessInfo) |
Sets the value of a specified variable (double) More... | |
virtual void | SetValue (const Variable< Vector > &rVariable, const Vector &rValue, const ProcessInfo &rCurrentProcessInfo) |
Sets the value of a specified variable (Vector) More... | |
virtual void | SetValue (const Variable< Matrix > &rVariable, const Matrix &rValue, const ProcessInfo &rCurrentProcessInfo) |
Sets the value of a specified variable (Matrix) More... | |
virtual void | SetValue (const Variable< array_1d< double, 3 > > &rVariable, const array_1d< double, 3 > &rValue, const ProcessInfo &rCurrentProcessInfo) |
Sets the value of a specified variable (array of 3 components) More... | |
virtual void | SetValue (const Variable< array_1d< double, 6 > > &rVariable, const array_1d< double, 6 > &rValue, const ProcessInfo &rCurrentProcessInfo) |
Sets the value of a specified variable (array of 6 components) More... | |
virtual bool & | CalculateValue (Parameters &rParameterValues, const Variable< bool > &rThisVariable, bool &rValue) |
Calculates the value of a specified variable (bool) More... | |
virtual int & | CalculateValue (Parameters &rParameterValues, const Variable< int > &rThisVariable, int &rValue) |
Calculates the value of a specified variable (int) More... | |
virtual array_1d< double, 3 > & | CalculateValue (Parameters &rParameterValues, const Variable< array_1d< double, 3 > > &rVariable, array_1d< double, 3 > &rValue) |
Calculates the value of a specified variable (array of 3 components) More... | |
virtual array_1d< double, 6 > & | CalculateValue (Parameters &rParameterValues, const Variable< array_1d< double, 6 > > &rVariable, array_1d< double, 6 > &rValue) |
virtual void | CalculateDerivative (Parameters &rParameterValues, const Variable< double > &rFunctionVariable, const Variable< double > &rDerivativeVariable, double &rOutput) |
Calculates derivatives of a given function. More... | |
virtual void | CalculateDerivative (Parameters &rParameterValues, const Variable< Vector > &rFunctionVariable, const Variable< double > &rDerivativeVariable, Vector &rOutput) |
Calculates derivatives of a given function. More... | |
virtual void | CalculateDerivative (Parameters &rParameterValues, const Variable< Matrix > &rFunctionVariable, const Variable< double > &rDerivativeVariable, Matrix &rOutput) |
Calculates derivatives of a given function. More... | |
virtual void | CalculateDerivative (Parameters &rParameterValues, const Variable< array_1d< double, 3 >> &rFunctionVariable, const Variable< double > &rDerivativeVariable, array_1d< double, 3 > &rOutput) |
Calculates derivatives of a given function. More... | |
virtual bool | ValidateInput (const Properties &rMaterialProperties) |
virtual bool | IsIncremental () |
virtual void | InitializeMaterial (const Properties &rMaterialProperties, const GeometryType &rElementGeometry, const Vector &rShapeFunctionsValues) |
virtual void | InitializeSolutionStep (const Properties &rMaterialProperties, const GeometryType &rElementGeometry, const Vector &rShapeFunctionsValues, const ProcessInfo &rCurrentProcessInfo) |
virtual void | FinalizeSolutionStep (const Properties &rMaterialProperties, const GeometryType &rElementGeometry, const Vector &rShapeFunctionsValues, const ProcessInfo &rCurrentProcessInfo) |
virtual void | InitializeNonLinearIteration (const Properties &rMaterialProperties, const GeometryType &rElementGeometry, const Vector &rShapeFunctionsValues, const ProcessInfo &rCurrentProcessInfo) |
virtual void | FinalizeNonLinearIteration (const Properties &rMaterialProperties, const GeometryType &rElementGeometry, const Vector &rShapeFunctionsValues, const ProcessInfo &rCurrentProcessInfo) |
void | CalculateMaterialResponse (Parameters &rValues, const StressMeasure &rStressMeasure) |
virtual void | CalculateStressResponse (Parameters &rValues, Vector &rInternalVariables) |
void | InitializeMaterialResponse (Parameters &rValues, const StressMeasure &rStressMeasure) |
Initialize the material response, called by the element in InitializeSolutionStep. More... | |
void | FinalizeMaterialResponse (Parameters &rValues, const StressMeasure &rStressMeasure) |
Finalize the material response, called by the element in FinalizeSolutionStep. More... | |
virtual void | ResetMaterial (const Properties &rMaterialProperties, const GeometryType &rElementGeometry, const Vector &rShapeFunctionsValues) |
virtual Vector & | TransformStrains (Vector &rStrainVector, const Matrix &rF, StrainMeasure rStrainInitial, StrainMeasure rStrainFinal) |
virtual Matrix & | TransformStresses (Matrix &rStressMatrix, const Matrix &rF, const double &rdetF, StressMeasure rStressInitial, StressMeasure rStressFinal) |
virtual Vector & | TransformStresses (Vector &rStressVector, const Matrix &rF, const double &rdetF, StressMeasure rStressInitial, StressMeasure rStressFinal) |
Vector & | TransformPK1Stresses (Vector &rStressVector, const Matrix &rF, const double &rdetF, StressMeasure rStressFinal) |
Vector & | TransformPK2Stresses (Vector &rStressVector, const Matrix &rF, const double &rdetF, StressMeasure rStressFinal) |
Vector & | TransformKirchhoffStresses (Vector &rStressVector, const Matrix &rF, const double &rdetF, StressMeasure rStressFinal) |
Vector & | TransformCauchyStresses (Vector &rStressVector, const Matrix &rF, const double &rdetF, StressMeasure rStressFinal) |
void | PullBackConstitutiveMatrix (Matrix &rConstitutiveMatrix, const Matrix &rF) |
void | PushForwardConstitutiveMatrix (Matrix &rConstitutiveMatrix, const Matrix &rF) |
virtual void | CalculateCauchyStresses (Vector &Cauchy_StressVector, const Matrix &F, const Vector &PK2_StressVector, const Vector &GreenLagrangeStrainVector) |
void | PrintData (std::ostream &rOStream) const override |
Print object's data. More... | |
Public Member Functions inherited from Kratos::Flags | |
Flags & | operator= (Flags const &rOther) |
Assignment operator. More... | |
operator bool () const | |
Flags | operator~ () const |
bool | operator! () const |
void | AssignFlags (Flags const &rOther) |
void | Set (const Flags ThisFlag) |
void | Set (const Flags ThisFlag, bool Value) |
void | Reset (const Flags ThisFlag) |
void | Flip (const Flags ThisFlag) |
void | SetPosition (IndexType Position, bool Value=true) |
bool | GetPosition (IndexType Position) const |
void | FlipPosition (IndexType Position) |
void | ClearPosition (IndexType Position) |
void | Clear () |
Flags | AsFalse () const |
bool | Is (Flags const &rOther) const |
bool | IsDefined (Flags const &rOther) const |
bool | IsNot (Flags const &rOther) const |
bool | IsNotDefined (Flags const &rOther) const |
KRATOS_CLASS_POINTER_DEFINITION (Flags) | |
Pointer definition of Flags. More... | |
const Flags & | operator|= (const Flags &Other) |
const Flags & | operator&= (const Flags &Other) |
Flags () | |
Default constructor. More... | |
Flags (Flags const &rOther) | |
Copy constructor. More... | |
virtual | ~Flags () |
Destructor. More... | |
Protected Member Functions | |
Protected Operations | |
void | CheckClearElasticMatrix (VoigtSizeMatrixType &rConstitutiveMatrix) |
It checks the size of the constitutive matrix rConstitutiveMatrix and resize it if neccessary. More... | |
virtual void | CalculateElasticMatrix (ConstitutiveLaw::VoigtSizeMatrixType &rConstitutiveMatrix, ConstitutiveLaw::Parameters &rValues) |
It calculates the constitutive matrix rConstitutiveMatrix. More... | |
virtual void | CalculatePK2Stress (const ConstitutiveLaw::StrainVectorType &rStrainVector, ConstitutiveLaw::StressVectorType &rStressVector, ConstitutiveLaw::Parameters &rValues) |
It calculates the stress vector. More... | |
virtual void | CalculateCauchyGreenStrain (ConstitutiveLaw::Parameters &rValues, ConstitutiveLaw::StrainVectorType &rStrainVector) |
It calculates the strain vector. More... | |
Protected Member Functions inherited from Kratos::ConstitutiveLaw | |
void | ContraVariantPushForward (Matrix &rMatrix, const Matrix &rF) |
void | ContraVariantPullBack (Matrix &rMatrix, const Matrix &rF) |
void | CoVariantPushForward (Matrix &rMatrix, const Matrix &rF) |
void | CoVariantPullBack (Matrix &rMatrix, const Matrix &rF) |
void | ConstitutiveMatrixTransformation (Matrix &rConstitutiveMatrix, const Matrix &rOriginalConstitutiveMatrix, const Matrix &rF) |
double & | TransformConstitutiveComponent (double &rCabcd, const Matrix &rConstitutiveMatrix, const Matrix &rF, const unsigned int &a, const unsigned int &b, const unsigned int &c, const unsigned int &d) |
double & | GetConstitutiveComponent (double &rCabcd, const Matrix &rConstitutiveMatrix, const unsigned int &a, const unsigned int &b, const unsigned int &c, const unsigned int &d) |
Type Definitions | |
typedef ProcessInfo | ProcessInfoType |
The process info type definition. More... | |
typedef ConstitutiveLaw | BaseType |
The base class ConstitutiveLaw type definition. More... | |
typedef std::size_t | SizeType |
The size type definition. More... | |
static constexpr SizeType | Dimension = 3 |
Static definition of the dimension. More... | |
static constexpr SizeType | VoigtSize = 6 |
Static definition of the VoigtSize. More... | |
KRATOS_CLASS_POINTER_DEFINITION (ElasticIsotropic3D) | |
Counted pointer of ElasticIsotropic3D. More... | |
virtual bool | Has (const Variable< bool > &rThisVariable) |
Returns whether this constitutive Law has specified variable (boolean) More... | |
virtual bool | Has (const Variable< int > &rThisVariable) |
Returns whether this constitutive Law has specified variable (integer) More... | |
virtual bool | Has (const Variable< double > &rThisVariable) |
Returns whether this constitutive Law has specified variable (double) More... | |
virtual bool | Has (const Variable< Vector > &rThisVariable) |
Returns whether this constitutive Law has specified variable (Vector) More... | |
virtual bool | Has (const Variable< Matrix > &rThisVariable) |
Returns whether this constitutive Law has specified variable (Matrix) More... | |
virtual bool | Has (const Variable< array_1d< double, 3 > > &rThisVariable) |
Returns whether this constitutive Law has specified variable (array of 3 components) More... | |
virtual bool | Has (const Variable< array_1d< double, 6 > > &rThisVariable) |
Returns whether this constitutive Law has specified variable (array of 6 components) More... | |
virtual bool & | GetValue (const Variable< bool > &rThisVariable, bool &rValue) |
Returns the value of a specified variable (boolean) More... | |
virtual int & | GetValue (const Variable< int > &rThisVariable, int &rValue) |
virtual double & | GetValue (const Variable< double > &rThisVariable, double &rValue) |
Returns the value of a specified variable (double) More... | |
virtual Vector & | GetValue (const Variable< Vector > &rThisVariable, Vector &rValue) |
Returns the value of a specified variable (Vector) More... | |
virtual Matrix & | GetValue (const Variable< Matrix > &rThisVariable, Matrix &rValue) |
Returns the value of a specified variable (Matrix) More... | |
virtual array_1d< double, 3 > & | GetValue (const Variable< array_1d< double, 3 > > &rThisVariable, array_1d< double, 3 > &rValue) |
Returns the value of a specified variable (array of 3 components) More... | |
virtual array_1d< double, 6 > & | GetValue (const Variable< array_1d< double, 6 > > &rThisVariable, array_1d< double, 6 > &rValue) |
Returns the value of a specified variable (array of 6 components) More... | |
Serialization | |
class | Serializer |
Additional Inherited Members | |
Public Types inherited from Kratos::ConstitutiveLaw | |
enum | StrainMeasure { StrainMeasure_Infinitesimal , StrainMeasure_GreenLagrange , StrainMeasure_Almansi , StrainMeasure_Hencky_Material , StrainMeasure_Hencky_Spatial , StrainMeasure_Deformation_Gradient , StrainMeasure_Right_CauchyGreen , StrainMeasure_Left_CauchyGreen , StrainMeasure_Velocity_Gradient } |
enum | StressMeasure { StressMeasure_PK1 , StressMeasure_PK2 , StressMeasure_Kirchhoff , StressMeasure_Cauchy } |
typedef ProcessInfo | ProcessInfoType |
typedef std::size_t | SizeType |
typedef Geometry< Node > | GeometryType |
typedef Vector | StrainVectorType |
typedef Vector | StressVectorType |
typedef Matrix | VoigtSizeMatrixType |
typedef Matrix | DeformationGradientMatrixType |
Public Types inherited from Kratos::Flags | |
enum | FlagsList { Flag0 = BlockType(1) , Flag1 = BlockType(1) << 1 , Flag2 = BlockType(1) << 2 , Flag3 = BlockType(1) << 3 , Flag4 = BlockType(1) << 4 , Flag5 = BlockType(1) << 5 , Flag6 = BlockType(1) << 6 , Flag7 = BlockType(1) << 7 , Flag8 = BlockType(1) << 8 , Flag9 = BlockType(1) << 9 , Flag10 = BlockType(1) << 10 , Flag11 = BlockType(1) << 11 , Flag12 = BlockType(1) << 12 , Flag13 = BlockType(1) << 13 , Flag14 = BlockType(1) << 14 , Flag15 = BlockType(1) << 15 , Flag16 = BlockType(1) << 16 , Flag17 = BlockType(1) << 17 , Flag18 = BlockType(1) << 18 , Flag19 = BlockType(1) << 19 , Flag20 = BlockType(1) << 20 , Flag21 = BlockType(1) << 21 , Flag22 = BlockType(1) << 22 , Flag23 = BlockType(1) << 23 , Flag24 = BlockType(1) << 24 , Flag25 = BlockType(1) << 25 , Flag26 = BlockType(1) << 26 , Flag27 = BlockType(1) << 27 , Flag28 = BlockType(1) << 28 , Flag29 = BlockType(1) << 29 , Flag30 = BlockType(1) << 30 } |
typedef int64_t | BlockType |
typedef int64_t | FlagType |
typedef std::size_t | IndexType |
Static Public Member Functions inherited from Kratos::ConstitutiveLaw | |
static bool | HasSameType (const ConstitutiveLaw &rLHS, const ConstitutiveLaw &rRHS) |
This method is used to check that two Constitutive Laws are the same type (references) More... | |
static bool | HasSameType (const ConstitutiveLaw *rLHS, const ConstitutiveLaw *rRHS) |
This method is used to check that two Constitutive Laws are the same type (pointers) More... | |
Static Public Member Functions inherited from Kratos::Flags | |
static const Flags | AllDefined () |
static const Flags | AllTrue () |
static Flags | Create (IndexType ThisPosition, bool Value=true) |
Static Protected Attributes inherited from Kratos::ConstitutiveLaw | |
static const unsigned int | msIndexVoigt3D6C [6][2] = { {0, 0}, {1, 1}, {2, 2}, {0, 1}, {1, 2}, {0, 2} } |
static const unsigned int | msIndexVoigt2D4C [4][2] = { {0, 0}, {1, 1}, {2, 2}, {0, 1} } |
static const unsigned int | msIndexVoigt2D3C [3][2] = { {0, 0}, {1, 1}, {0, 1} } |
The base class ConstitutiveLaw type definition.
The process info type definition.
typedef std::size_t Kratos::ElasticIsotropic3D::SizeType |
The size type definition.
Kratos::ElasticIsotropic3D::ElasticIsotropic3D | ( | ) |
Default constructor.
Kratos::ElasticIsotropic3D::ElasticIsotropic3D | ( | const ElasticIsotropic3D & | rOther | ) |
Copy constructor.
|
override |
Destructor.
|
protectedvirtual |
It calculates the strain vector.
rValues | The internal values of the law |
rStrainVector | The strain vector in Voigt notation |
Reimplemented in Kratos::LinearPlaneStress, Kratos::LinearPlaneStrain, and Kratos::ThermalLinearPlaneStrain.
|
protectedvirtual |
It calculates the constitutive matrix rConstitutiveMatrix.
rConstitutiveMatrix | The constitutive matrix |
rValues | Parameters of the constitutive law |
Reimplemented in Kratos::LinearPlaneStress, Kratos::SmallStrainIsotropicDamagePlaneStrain2D, Kratos::MultiLinearIsotropicPlaneStress2D, Kratos::ElasticIsotropicPlaneStressUncoupledShear, Kratos::ThermalLinearPlaneStress, Kratos::ThermalLinearPlaneStrain, Kratos::ThermalElasticIsotropic3D, and Kratos::LinearPlaneStrain.
|
overridevirtual |
Computes the material response:
Cauchy stresses and algorithmic ConstitutiveMatrix
rValues | The internal values of the law |
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::ViscousGeneralizedMaxwell< Kratos::ElasticIsotropic3D >, and Kratos::ViscousGeneralizedKelvin< Kratos::ElasticIsotropic3D >.
|
overridevirtual |
Computes the material response:
Kirchhoff stresses and algorithmic ConstitutiveMatrix
rValues | The internal values of the law |
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::ViscousGeneralizedMaxwell< Kratos::ElasticIsotropic3D >, and Kratos::ViscousGeneralizedKelvin< Kratos::ElasticIsotropic3D >.
|
overridevirtual |
Computes the material response:
PK1 stresses and algorithmic ConstitutiveMatrix
rValues | The internal values of the law |
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::ViscousGeneralizedMaxwell< Kratos::ElasticIsotropic3D >, and Kratos::ViscousGeneralizedKelvin< Kratos::ElasticIsotropic3D >.
|
overridevirtual |
Computes the material response:
PK2 stresses and algorithmic ConstitutiveMatrix
rValues | The internal values of the law |
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::ViscousGeneralizedMaxwell< Kratos::ElasticIsotropic3D >, and Kratos::ViscousGeneralizedKelvin< Kratos::ElasticIsotropic3D >.
|
protectedvirtual |
It calculates the stress vector.
rStrainVector | The strain vector in Voigt notation |
rStressVector | The stress vector in Voigt notation |
rValues | Parameters of the constitutive law |
Reimplemented in Kratos::MultiLinearIsotropicPlaneStress2D, Kratos::ElasticIsotropicPlaneStressUncoupledShear, Kratos::LinearPlaneStress, Kratos::LinearPlaneStrain, Kratos::ThermalLinearPlaneStress, Kratos::ThermalLinearPlaneStrain, and Kratos::ThermalElasticIsotropic3D.
|
overridevirtual |
It calculates the value of a specified variable (double case)
rParameterValues | the needed parameters for the CL calculation |
rThisVariable | the variable to be returned |
rValue | a reference to the returned value |
Reimplemented from Kratos::ConstitutiveLaw.
|
overridevirtual |
It calculates the value of a specified variable (Matrix case)
rParameterValues | the needed parameters for the CL calculation |
rThisVariable | the variable to be returned |
rValue | a reference to the returned value |
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::ViscousGeneralizedMaxwell< Kratos::ElasticIsotropic3D >, and Kratos::ViscousGeneralizedKelvin< Kratos::ElasticIsotropic3D >.
|
overridevirtual |
It calculates the value of a specified variable (Vector case)
rParameterValues | the needed parameters for the CL calculation |
rThisVariable | the variable to be returned |
rValue | a reference to the returned value |
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::ViscousGeneralizedKelvin< Kratos::ElasticIsotropic3D >.
|
overridevirtual |
This function provides the place to perform checks on the completeness of the input.
It is designed to be called only once (or anyway, not often) typically at the beginning of the calculations, so to verify that nothing is missing from the input or that no common error is found.
rMaterialProperties | The properties of the material |
rElementGeometry | The geometry of the element |
rCurrentProcessInfo | The current process info instance |
Reimplemented from Kratos::ConstitutiveLaw.
|
protected |
It checks the size of the constitutive matrix rConstitutiveMatrix and resize it if neccessary.
rConstitutiveMatrix | The constitutive matrix |
|
overridevirtual |
Clone method.
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::LinearPlaneStress, Kratos::LinearPlaneStrain, Kratos::ViscousGeneralizedMaxwell< Kratos::ElasticIsotropic3D >, and Kratos::ViscousGeneralizedKelvin< Kratos::ElasticIsotropic3D >.
|
overridevirtual |
Updates the material response:
Cauchy stresses and Internal Variables
rValues | The internal values of the law |
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::ViscousGeneralizedMaxwell< Kratos::ElasticIsotropic3D >, and Kratos::ViscousGeneralizedKelvin< Kratos::ElasticIsotropic3D >.
|
overridevirtual |
Updates the material response:
Cauchy stresses and Internal Variables
rValues | The internal values of the law |
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::ViscousGeneralizedMaxwell< Kratos::ElasticIsotropic3D >, and Kratos::ViscousGeneralizedKelvin< Kratos::ElasticIsotropic3D >.
|
overridevirtual |
Updates the material response:
Cauchy stresses and Internal Variables
rValues | The internal values of the law |
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::ViscousGeneralizedMaxwell< Kratos::ElasticIsotropic3D >, and Kratos::ViscousGeneralizedKelvin< Kratos::ElasticIsotropic3D >.
|
overridevirtual |
Updates the material response: Cauchy stresses and Internal Variables.
rValues | The internal values of the law |
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::ViscousGeneralizedMaxwell< Kratos::ElasticIsotropic3D >, and Kratos::ViscousGeneralizedKelvin< Kratos::ElasticIsotropic3D >.
|
overridevirtual |
This function is designed to be called once to check compatibility with element.
rFeatures | The Features of the law |
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::LinearPlaneStress, and Kratos::LinearPlaneStrain.
|
inlineoverridevirtual |
Returns the expected strain measure of this constitutive law (by default Green-Lagrange)
Reimplemented from Kratos::ConstitutiveLaw.
|
inlineoverridevirtual |
Voigt tensor size:
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::LinearPlaneStress, and Kratos::LinearPlaneStrain.
|
inlineoverridevirtual |
Returns the stress measure of this constitutive law (by default 2st Piola-Kirchhoff stress in voigt notation)
Reimplemented from Kratos::ConstitutiveLaw.
Returns the value of a specified variable (array of 3 components)
rThisVariable | the variable to be returned |
rValue | a reference to the returned value |
returns the value of a specified variable
rThisVariable | the variable to be returned |
rValue | a reference to the returned value |
Returns the value of a specified variable (array of 6 components)
rThisVariable | the variable to be returned |
rValue | a reference to the returned value |
returns the value of a specified variable
rThisVariable | the variable to be returned |
rValue | a reference to the returned value |
bool & Kratos::ConstitutiveLaw::GetValue |
Returns the value of a specified variable (boolean)
rThisVariable | the variable to be returned |
rValue | a reference to the returned value |
returns the value of a specified variable
rThisVariable | the variable to be returned |
rValue | a reference to the returned value |
rValue | output: the value of the specified variable |
double & Kratos::ConstitutiveLaw::GetValue |
Returns the value of a specified variable (double)
rThisVariable | the variable to be returned |
rValue | a reference to the returned value |
returns the value of a specified variable
rThisVariable | the variable to be returned |
rValue | a reference to the returned value |
rValue | output: the value of the specified variable |
int & Kratos::ConstitutiveLaw::GetValue |
Returns the value of a specified variable (integer)
rThisVariable | the variable to be returned |
rValue | a reference to the returned value |
returns the value of a specified variable
rThisVariable | the variable to be returned |
rValue | a reference to the returned value |
rValue | output: the value of the specified variable |
Matrix & Kratos::ConstitutiveLaw::GetValue |
Returns the value of a specified variable (Matrix)
rThisVariable | the variable to be returned |
returns the value of a specified variable
rThisVariable | the variable to be returned |
Vector & Kratos::ConstitutiveLaw::GetValue |
Returns the value of a specified variable (Vector)
rThisVariable | the variable to be returned |
rValue | a reference to the returned value |
returns the value of a specified variable
rThisVariable | the variable to be returned |
rValue | a reference to the returned value |
bool Kratos::ConstitutiveLaw::Has |
Returns whether this constitutive Law has specified variable (array of 3 components)
rThisVariable | the variable to be checked for |
returns whether this constitutive Law has specified variable
rThisVariable | the variable to be checked for |
bool Kratos::ConstitutiveLaw::Has |
Returns whether this constitutive Law has specified variable (array of 6 components)
rThisVariable | the variable to be checked for |
returns whether this constitutive Law has specified variable
rThisVariable | the variable to be checked for |
bool Kratos::ConstitutiveLaw::Has |
Returns whether this constitutive Law has specified variable (boolean)
rThisVariable | the variable to be checked for |
returns whether this constitutive Law has specified variable
rThisVariable | the variable to be checked for |
bool Kratos::ConstitutiveLaw::Has |
Returns whether this constitutive Law has specified variable (double)
rThisVariable | the variable to be checked for |
returns whether this constitutive Law has specified variable
rThisVariable | the variable to be checked for |
bool Kratos::ConstitutiveLaw::Has |
Returns whether this constitutive Law has specified variable (integer)
rThisVariable | the variable to be checked for |
returns whether this constitutive Law has specified variable
rThisVariable | the variable to be checked for |
bool Kratos::ConstitutiveLaw::Has |
Returns whether this constitutive Law has specified variable (Matrix)
rThisVariable | the variable to be checked for |
returns whether this constitutive Law has specified variable
rThisVariable | the variable to be checked for |
bool Kratos::ConstitutiveLaw::Has |
Returns whether this constitutive Law has specified variable (Vector)
rThisVariable | the variable to be checked for |
returns whether this constitutive Law has specified variable
rThisVariable | the variable to be checked for |
|
overridevirtual |
General information identifying this instance.
Reimplemented from Kratos::ConstitutiveLaw.
|
overridevirtual |
Initialize the material response in terms of Cauchy stresses.
Reimplemented from Kratos::ConstitutiveLaw.
|
overridevirtual |
Initialize the material response in terms of Kirchhoff stresses.
Reimplemented from Kratos::ConstitutiveLaw.
|
overridevirtual |
Initialize the material response in terms of 1st Piola-Kirchhoff stresses.
Reimplemented from Kratos::ConstitutiveLaw.
|
overridevirtual |
Initialize the material response in terms of 2nd Piola-Kirchhoff stresses.
Reimplemented from Kratos::ConstitutiveLaw.
Kratos::ElasticIsotropic3D::KRATOS_CLASS_POINTER_DEFINITION | ( | ElasticIsotropic3D | ) |
Counted pointer of ElasticIsotropic3D.
|
overridevirtual |
General information identifying this instance.
rOstream | The stream where the info will be printed. |
Reimplemented from Kratos::ConstitutiveLaw.
|
inlineoverridevirtual |
If the CL requires to finalize the material response, called by the element in FinalizeSolutionStep.
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::ViscousGeneralizedMaxwell< Kratos::ElasticIsotropic3D >, and Kratos::ViscousGeneralizedKelvin< Kratos::ElasticIsotropic3D >.
|
inlineoverridevirtual |
If the CL requires to initialize the material response, called by the element in InitializeSolutionStep.
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::ViscousGeneralizedMaxwell< Kratos::ElasticIsotropic3D >, and Kratos::ViscousGeneralizedKelvin< Kratos::ElasticIsotropic3D >.
|
inlineoverridevirtual |
Dimension of the law:
Reimplemented from Kratos::ConstitutiveLaw.
Reimplemented in Kratos::LinearPlaneStress, and Kratos::LinearPlaneStrain.
|
friend |
|
staticconstexpr |
Static definition of the dimension.
|
staticconstexpr |
Static definition of the VoigtSize.