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.
List of all members
Kratos::IncompressibleNeoHookeanModel Class Reference

Short class definition. More...

#include <incompressible_neo_hookean_model.hpp>

Inheritance diagram for Kratos::IncompressibleNeoHookeanModel:
Collaboration diagram for Kratos::IncompressibleNeoHookeanModel:

Public Member Functions

Type Definitions
 KRATOS_CLASS_POINTER_DEFINITION (IncompressibleNeoHookeanModel)
 Pointer definition of IncompressibleNeoHookeanModel. More...
 
Life Cycle
 IncompressibleNeoHookeanModel ()
 Default constructor. More...
 
 IncompressibleNeoHookeanModel (IncompressibleNeoHookeanModel const &rOther)
 Copy constructor. More...
 
IncompressibleNeoHookeanModeloperator= (IncompressibleNeoHookeanModel const &rOther)
 Assignment operator. More...
 
ConstitutiveModel::Pointer Clone () const override
 Clone. More...
 
 ~IncompressibleNeoHookeanModel () override
 Destructor. More...
 
Operations
int Check (const Properties &rProperties, const ProcessInfo &rCurrentProcessInfo) override
 
Access
void GetDomainVariablesList (std::vector< Variable< double > > &rScalarVariables, std::vector< Variable< array_1d< double, 3 > > > &rComponentVariables) override
 
Input and output
std::string Info () const override
 Turn back information as a string. More...
 
void PrintInfo (std::ostream &rOStream) const override
 Print information about this object. More...
 
void PrintData (std::ostream &rOStream) const override
 Print object's data. More...
 
- Public Member Functions inherited from Kratos::IsochoricNeoHookeanModel
 KRATOS_CLASS_POINTER_DEFINITION (IsochoricNeoHookeanModel)
 Pointer definition of IsochoricNeoHookeanModel. More...
 
 IsochoricNeoHookeanModel ()
 Default constructor. More...
 
 IsochoricNeoHookeanModel (IsochoricNeoHookeanModel const &rOther)
 Copy constructor. More...
 
IsochoricNeoHookeanModeloperator= (IsochoricNeoHookeanModel const &rOther)
 Assignment operator. More...
 
ConstitutiveModel::Pointer Clone () const override
 Clone. More...
 
 ~IsochoricNeoHookeanModel () override
 Destructor. More...
 
int Check (const Properties &rProperties, const ProcessInfo &rCurrentProcessInfo) override
 
std::string Info () const override
 Turn back information as a string. More...
 
void PrintInfo (std::ostream &rOStream) const override
 Print information about this object. More...
 
void PrintData (std::ostream &rOStream) const override
 Print object's data. More...
 
- Public Member Functions inherited from Kratos::IsochoricMooneyRivlinModel
 KRATOS_CLASS_POINTER_DEFINITION (IsochoricMooneyRivlinModel)
 Pointer definition of IsochoricMooneyRivlinModel. More...
 
 IsochoricMooneyRivlinModel ()
 Default constructor. More...
 
 IsochoricMooneyRivlinModel (IsochoricMooneyRivlinModel const &rOther)
 Copy constructor. More...
 
IsochoricMooneyRivlinModeloperator= (IsochoricMooneyRivlinModel const &rOther)
 Assignment operator. More...
 
 ~IsochoricMooneyRivlinModel () override
 Destructor. More...
 
void CalculateStrainEnergy (ModelDataType &rValues, double &rDensityFunction) override
 
void CalculateStressTensor (ModelDataType &rValues, MatrixType &rStressMatrix) override
 
void CalculateStressAndConstitutiveTensors (ModelDataType &rValues, MatrixType &rStressMatrix, Matrix &rConstitutiveMatrix) override
 
- Public Member Functions inherited from Kratos::MooneyRivlinModel
 KRATOS_CLASS_POINTER_DEFINITION (MooneyRivlinModel)
 Pointer definition of MooneyRivlinModel. More...
 
 MooneyRivlinModel ()
 Default constructor. More...
 
 MooneyRivlinModel (MooneyRivlinModel const &rOther)
 Copy constructor. More...
 
MooneyRivlinModeloperator= (MooneyRivlinModel const &rOther)
 Assignment operator. More...
 
ConstitutiveModel::Pointer Clone () const override
 Clone. More...
 
 ~MooneyRivlinModel () override
 Destructor. More...
 
int Check (const Properties &rProperties, const ProcessInfo &rCurrentProcessInfo) override
 
std::string Info () const override
 Turn back information as a string. More...
 
void PrintInfo (std::ostream &rOStream) const override
 Print information about this object. More...
 
void PrintData (std::ostream &rOStream) const override
 Print object's data. More...
 
- Public Member Functions inherited from Kratos::HyperElasticModel
 HyperElasticModel ()
 Default constructor. More...
 
 HyperElasticModel (HyperElasticModel const &rOther)
 Copy constructor. More...
 
HyperElasticModeloperator= (HyperElasticModel const &rOther)
 Assignment operator. More...
 
 ~HyperElasticModel () override
 Destructor. More...
 
void InitializeModel (ModelDataType &rValues) override
 
void FinalizeModel (ModelDataType &rValues) override
 
void CalculateIsochoricStressTensor (ModelDataType &rValues, MatrixType &rStressMatrix) override
 
void CalculateVolumetricStressTensor (ModelDataType &rValues, MatrixType &rStressMatrix) override
 
void CalculateConstitutiveTensor (ModelDataType &rValues, Matrix &rConstitutiveMatrix) override
 
void CalculateIsochoricConstitutiveTensor (ModelDataType &rValues, Matrix &rConstitutiveMatrix) override
 
void CalculateVolumetricConstitutiveTensor (ModelDataType &rValues, Matrix &rConstitutiveMatrix) override
 
void CalculateIsochoricStressAndConstitutiveTensors (ModelDataType &rValues, MatrixType &rStressMatrix, Matrix &rConstitutiveMatrix) override
 
void CalculateVolumetricStressAndConstitutiveTensors (ModelDataType &rValues, MatrixType &rStressMatrix, Matrix &rConstitutiveMatrix) override
 
void SetValue (const Variable< Vector > &rThisVariable, const Vector &rValue, const ProcessInfo &rCurrentProcessInfo) override
 
void SetValue (const Variable< Matrix > &rThisVariable, const Matrix &rValue, const ProcessInfo &rCurrentProcessInfo) override
 
 KRATOS_CLASS_POINTER_DEFINITION (HyperElasticModel)
 Pointer definition of HyperElasticModel. More...
 
- Public Member Functions inherited from Kratos::ConstitutiveModel
 KRATOS_DEFINE_LOCAL_FLAG (ADD_HISTORY_VECTOR)
 
 KRATOS_DEFINE_LOCAL_FLAG (HISTORY_STRAIN_MEASURE)
 
 KRATOS_DEFINE_LOCAL_FLAG (HISTORY_STRESS_MEASURE)
 
 ConstitutiveModel ()
 Default constructor. More...
 
 ConstitutiveModel (ConstitutiveModel const &rOther)
 Copy constructor. More...
 
ConstitutiveModeloperator= (ConstitutiveModel const &rOther)
 Assignment operator. More...
 
virtual ~ConstitutiveModel ()
 Destructor. More...
 
virtual void InitializeMaterial (const Properties &rProperties)
 
virtual bool Has (const Variable< double > &rThisVariable)
 
virtual void SetValue (const Variable< double > &rVariable, const double &rValue, const ProcessInfo &rCurrentProcessInfo)
 
virtual doubleGetValue (const Variable< double > &rThisVariable, double &rValue)
 
 KRATOS_CLASS_POINTER_DEFINITION (ConstitutiveModel)
 Pointer definition of ConstitutiveModel. More...
 

Protected Member Functions

Protected Operations
void CalculateVolumetricFactor (HyperElasticDataType &rVariables, double &rFactor) override
 
void CalculatePressureFactor (HyperElasticDataType &rVariables, double &rFactor) override
 
void CalculateConstitutiveMatrixFactor (HyperElasticDataType &rVariables, double &rFactor) override
 
void CalculateConstitutiveMatrixPressureFactor (HyperElasticDataType &rVariables, double &rFactor) override
 
doubleGetVolumetricFunction1stJDerivative (HyperElasticDataType &rVariables, double &rDerivative) override
 
doubleGetVolumetricFunction2ndJDerivative (HyperElasticDataType &rVariables, double &rDerivative) override
 
- Protected Member Functions inherited from Kratos::IsochoricNeoHookeanModel
void CalculateScalingFactors (HyperElasticDataType &rVariables) override
 
virtual void CalculateAndAddIsochoricStressTensor (HyperElasticDataType &rVariables, MatrixType &rStressMatrix) override
 
virtual void CalculateAndAddVolumetricStressTensor (HyperElasticDataType &rVariables, MatrixType &rStressMatrix) override
 
virtual doubleAddIsochoricConstitutiveComponent (HyperElasticDataType &rVariables, double &rCabcd, const unsigned int &a, const unsigned int &b, const unsigned int &c, const unsigned int &d) override
 
virtual doubleAddVolumetricConstitutiveComponent (HyperElasticDataType &rVariables, double &rCabcd, const unsigned int &a, const unsigned int &b, const unsigned int &c, const unsigned int &d) override
 
void CalculateAndAddIsochoricStrainEnergy (HyperElasticDataType &rVariables, double &rIsochoricDensityFunction) override
 
void CalculateAndAddVolumetricStrainEnergy (HyperElasticDataType &rVariables, double &rVolumetricDensityFunction) override
 
doubleGetFunction1stI1Derivative (HyperElasticDataType &rVariables, double &rDerivative) override
 
doubleGetFunction1stI2Derivative (HyperElasticDataType &rVariables, double &rDerivative) override
 
doubleGetFunction1stI3Derivative (HyperElasticDataType &rVariables, double &rDerivative) override
 
doubleGetVolumetricFunction1stJDerivative (HyperElasticDataType &rVariables, double &rDerivative) override
 
doubleGetFunction2ndI1Derivative (HyperElasticDataType &rVariables, double &rDerivative) override
 
doubleGetFunction2ndI2Derivative (HyperElasticDataType &rVariables, double &rDerivative) override
 
doubleGetFunction2ndI3Derivative (HyperElasticDataType &rVariables, double &rDerivative) override
 
doubleGetVolumetricFunction2ndJDerivative (HyperElasticDataType &rVariables, double &rDerivative) override
 
- Protected Member Functions inherited from Kratos::IsochoricMooneyRivlinModel
doubleAddConstitutiveComponent (HyperElasticDataType &rVariables, double &rCabcd, const unsigned int &a, const unsigned int &b, const unsigned int &c, const unsigned int &d) override
 
- Protected Member Functions inherited from Kratos::MooneyRivlinModel
void CalculateAndAddStressTensor (HyperElasticDataType &rVariables, MatrixType &rStressMatrix) override
 
doubleAddConstitutiveComponent (HyperElasticDataType &rVariables, double &rCabcd, const unsigned int &a, const unsigned int &b, const unsigned int &c, const unsigned int &d) override
 
void CalculateStrainData (ModelDataType &rValues, HyperElasticDataType &rVariables) override
 
void CalculateScalingFactors (HyperElasticDataType &rVariables) override
 
doubleGetVolumetricFunction1stJDerivative (HyperElasticDataType &rVariables, double &rDerivative) override
 
doubleGetVolumetricFunction2ndJDerivative (HyperElasticDataType &rVariables, double &rDerivative) override
 
MatrixTypeGetIsochoricRightCauchyGreenDerivative (const StrainData &rStrain, MatrixType &rDerivative)
 
doubleGetIsochoricRightCauchyGreenDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b, const double &c, const double &d)
 
MatrixTypeGetIsochoricLeftCauchyGreenDerivative (const StrainData &rStrain, MatrixType &rDerivative)
 
doubleGetIsochoricLeftCauchyGreenDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b, const double &c, const double &d)
 
MatrixTypeGetI1RightCauchyGreenDerivative (const StrainData &rStrain, MatrixType &rDerivative)
 
MatrixTypeGetI2RightCauchyGreenDerivative (const StrainData &rStrain, MatrixType &rDerivative)
 
MatrixTypeGetI3RightCauchyGreenDerivative (const StrainData &rStrain, MatrixType &rDerivative)
 
doubleGetFourthOrderUnitTensor (double &rValue, const double &a, const double &b, const double &c, const double &d)
 
doubleGetInverseRightCauchyGreenDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b, const double &c, const double &d)
 
doubleGetI1RightCauchyGreen1stDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b)
 
doubleGetI2RightCauchyGreen1stDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b)
 
doubleGetI3RightCauchyGreen1stDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b)
 
doubleGetI1RightCauchyGreenSquare1stDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b, const double &c, const double &d)
 
doubleGetI2RightCauchyGreenSquare1stDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b, const double &c, const double &d)
 
doubleGetI3RightCauchyGreenSquare1stDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b, const double &c, const double &d)
 
doubleGetI1RightCauchyGreen2ndDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b, const double &c, const double &d)
 
doubleGetI2RightCauchyGreen2ndDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b, const double &c, const double &d)
 
doubleGetI3RightCauchyGreen2ndDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b, const double &c, const double &d)
 
MatrixTypeGetI1LeftCauchyGreenDerivative (const StrainData &rStrain, MatrixType &rDerivative)
 
MatrixTypeGetI2LeftCauchyGreenDerivative (const StrainData &rStrain, MatrixType &rDerivative)
 
MatrixTypeGetI3LeftCauchyGreenDerivative (const StrainData &rStrain, MatrixType &rDerivative)
 
doubleGetI1LeftCauchyGreen1stDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b)
 
doubleGetI2LeftCauchyGreen1stDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b)
 
doubleGetI3LeftCauchyGreen1stDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b)
 
doubleGetI1LeftCauchyGreenSquare1stDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b, const double &c, const double &d)
 
doubleGetI2LeftCauchyGreenSquare1stDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b, const double &c, const double &d)
 
doubleGetI3LeftCauchyGreenSquare1stDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b, const double &c, const double &d)
 
doubleGetI1LeftCauchyGreen2ndDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b, const double &c, const double &d)
 
doubleGetI2LeftCauchyGreen2ndDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b, const double &c, const double &d)
 
doubleGetI3LeftCauchyGreen2ndDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b, const double &c, const double &d)
 
- Protected Member Functions inherited from Kratos::HyperElasticModel
virtual void CalculateAndAddConstitutiveTensor (HyperElasticDataType &rVariables, Matrix &rConstitutiveMatrix)
 
virtual void CalculateAndAddIsochoricConstitutiveTensor (HyperElasticDataType &rVariables, Matrix &rConstitutiveMatrix)
 
virtual void CalculateAndAddVolumetricConstitutiveTensor (HyperElasticDataType &rVariables, Matrix &rConstitutiveMatrix)
 
virtual void CalculateInvariants (HyperElasticDataType &rVariables)
 
void CalculateStrainInvariants (const MatrixType &rStrainMatrix, double &rI1, double &rI2, double &rI3)
 
MatrixTypeGetJRightCauchyGreenDerivative (const StrainData &rStrain, MatrixType &rDerivative)
 
doubleGetJRightCauchyGreen1stDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b)
 dJ/dC More...
 
doubleGetJRightCauchyGreenSquare1stDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b, const double &c, const double &d)
 dJ/dC More...
 
doubleGetJRightCauchyGreen2ndDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b, const double &c, const double &d)
 
MatrixTypeGetJLeftCauchyGreenDerivative (const StrainData &rStrain, MatrixType &rDerivative)
 
doubleGetJLeftCauchyGreen1stDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b)
 
doubleGetJLeftCauchyGreenSquare1stDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b, const double &c, const double &d)
 
doubleGetJLeftCauchyGreen2ndDerivative (const StrainData &rStrain, double &rDerivative, const double &a, const double &b, const double &c, const double &d)
 

Serialization

class Serializer
 

Additional Inherited Members

- Public Types inherited from Kratos::HyperElasticModel
typedef HyperElasticModelData HyperElasticDataType
 
- Public Types inherited from Kratos::ConstitutiveModel
typedef ConstitutiveModelData::SizeType SizeType
 
typedef ConstitutiveModelData::VectorType VectorType
 
typedef ConstitutiveModelData::MatrixType MatrixType
 
typedef ConstitutiveModelData::ModelData ModelDataType
 
typedef ConstitutiveModelData::MaterialData MaterialDataType
 
typedef ConstitutiveModelData::StrainMeasureType StrainMeasureType
 
typedef ConstitutiveModelData::StressMeasureType StressMeasureType
 
- Protected Types inherited from Kratos::ConstitutiveModel
using VoigtIndexType = const unsigned int(*)[2]
 
- Protected Attributes inherited from Kratos::ConstitutiveModel
Flags mOptions
 
VectorType mHistoryVector
 
- Static Protected Attributes inherited from Kratos::HyperElasticModel
static const MatrixType msIdentityMatrix = IdentityMatrix(3)
 

Detailed Description

Short class definition.

Detail class definition.

Constructor & Destructor Documentation

◆ IncompressibleNeoHookeanModel() [1/2]

Kratos::IncompressibleNeoHookeanModel::IncompressibleNeoHookeanModel ( )
inline

Default constructor.

◆ IncompressibleNeoHookeanModel() [2/2]

Kratos::IncompressibleNeoHookeanModel::IncompressibleNeoHookeanModel ( IncompressibleNeoHookeanModel const &  rOther)
inline

Copy constructor.

◆ ~IncompressibleNeoHookeanModel()

Kratos::IncompressibleNeoHookeanModel::~IncompressibleNeoHookeanModel ( )
inlineoverride

Destructor.

Member Function Documentation

◆ CalculateConstitutiveMatrixFactor()

void Kratos::IncompressibleNeoHookeanModel::CalculateConstitutiveMatrixFactor ( HyperElasticDataType rVariables,
double rFactor 
)
inlineoverrideprotectedvirtual

Reimplemented from Kratos::IsochoricNeoHookeanModel.

◆ CalculateConstitutiveMatrixPressureFactor()

void Kratos::IncompressibleNeoHookeanModel::CalculateConstitutiveMatrixPressureFactor ( HyperElasticDataType rVariables,
double rFactor 
)
inlineoverrideprotectedvirtual

Reimplemented from Kratos::IsochoricNeoHookeanModel.

◆ CalculatePressureFactor()

void Kratos::IncompressibleNeoHookeanModel::CalculatePressureFactor ( HyperElasticDataType rVariables,
double rFactor 
)
inlineoverrideprotectedvirtual

Reimplemented from Kratos::IsochoricNeoHookeanModel.

◆ CalculateVolumetricFactor()

void Kratos::IncompressibleNeoHookeanModel::CalculateVolumetricFactor ( HyperElasticDataType rVariables,
double rFactor 
)
inlineoverrideprotectedvirtual

Reimplemented from Kratos::IsochoricNeoHookeanModel.

◆ Check()

int Kratos::IncompressibleNeoHookeanModel::Check ( const Properties rProperties,
const ProcessInfo rCurrentProcessInfo 
)
inlineoverridevirtual

Calculate Stresses Calculate Constitutive Components Check

Reimplemented from Kratos::HyperElasticModel.

◆ Clone()

ConstitutiveModel::Pointer Kratos::IncompressibleNeoHookeanModel::Clone ( ) const
inlineoverridevirtual

Clone.

Reimplemented from Kratos::HyperElasticModel.

◆ GetDomainVariablesList()

void Kratos::IncompressibleNeoHookeanModel::GetDomainVariablesList ( std::vector< Variable< double > > &  rScalarVariables,
std::vector< Variable< array_1d< double, 3 > > > &  rComponentVariables 
)
inlineoverridevirtual

method to ask the constitutive model the list of variables (dofs) needed from the domain

Parameters
rScalarVariables: list of scalar dofs
rComponentVariables: list of vector dofs

Reimplemented from Kratos::HyperElasticModel.

◆ GetVolumetricFunction1stJDerivative()

double& Kratos::IncompressibleNeoHookeanModel::GetVolumetricFunction1stJDerivative ( HyperElasticDataType rVariables,
double rDerivative 
)
inlineoverrideprotectedvirtual

Reimplemented from Kratos::HyperElasticModel.

◆ GetVolumetricFunction2ndJDerivative()

double& Kratos::IncompressibleNeoHookeanModel::GetVolumetricFunction2ndJDerivative ( HyperElasticDataType rVariables,
double rDerivative 
)
inlineoverrideprotectedvirtual

Reimplemented from Kratos::HyperElasticModel.

◆ Info()

std::string Kratos::IncompressibleNeoHookeanModel::Info ( ) const
inlineoverridevirtual

Turn back information as a string.

Reimplemented from Kratos::HyperElasticModel.

◆ KRATOS_CLASS_POINTER_DEFINITION()

Kratos::IncompressibleNeoHookeanModel::KRATOS_CLASS_POINTER_DEFINITION ( IncompressibleNeoHookeanModel  )

Pointer definition of IncompressibleNeoHookeanModel.

◆ operator=()

IncompressibleNeoHookeanModel& Kratos::IncompressibleNeoHookeanModel::operator= ( IncompressibleNeoHookeanModel const &  rOther)
inline

Assignment operator.

◆ PrintData()

void Kratos::IncompressibleNeoHookeanModel::PrintData ( std::ostream &  rOStream) const
inlineoverridevirtual

Print object's data.

Reimplemented from Kratos::HyperElasticModel.

◆ PrintInfo()

void Kratos::IncompressibleNeoHookeanModel::PrintInfo ( std::ostream &  rOStream) const
inlineoverridevirtual

Print information about this object.

Reimplemented from Kratos::HyperElasticModel.

Friends And Related Function Documentation

◆ Serializer

friend class Serializer
friend

The documentation for this class was generated from the following file: