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::SimoJ2PlasticityModel Class Reference

Short class definition. More...

#include <simo_J2_plasticity_model.hpp>

Inheritance diagram for Kratos::SimoJ2PlasticityModel:
Collaboration diagram for Kratos::SimoJ2PlasticityModel:

Public Member Functions

Life Cycle
 SimoJ2PlasticityModel ()
 Default constructor. More...
 
 SimoJ2PlasticityModel (SimoJ2PlasticityModel const &rOther)
 Copy constructor. More...
 
SimoJ2PlasticityModeloperator= (SimoJ2PlasticityModel const &rOther)
 Assignment operator. More...
 
ConstitutiveModel::Pointer Clone () const override
 Clone. More...
 
 ~SimoJ2PlasticityModel () override
 Destructor. More...
 
Access
void GetDomainVariablesList (std::vector< Variable< double > > &rScalarVariables, std::vector< Variable< array_1d< double, 3 > > > &rComponentVariables) override
 
bool Has (const Variable< double > &rThisVariable) override
 
doubleGetValue (const Variable< double > &rThisVariable, double &rValue) 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::NonLinearAssociativePlasticityModel< IncompressibleNeoHookeanModel, MisesHuberYieldSurface< SimoExponentialHardeningRule > >
 NonLinearAssociativePlasticityModel ()
 Default constructor. More...
 
 NonLinearAssociativePlasticityModel (NonLinearAssociativePlasticityModel const &rOther)
 Copy constructor. More...
 
NonLinearAssociativePlasticityModeloperator= (NonLinearAssociativePlasticityModel const &rOther)
 Assignment operator. More...
 
ConstitutiveModel::Pointer Clone () const override
 Clone. More...
 
 ~NonLinearAssociativePlasticityModel () override
 Destructor. More...
 
void CalculateStressTensor (ModelDataType &rValues, MatrixType &rStressMatrix) override
 
void CalculateIsochoricStressTensor (ModelDataType &rValues, MatrixType &rStressMatrix) override
 
void CalculateConstitutiveTensor (ModelDataType &rValues, Matrix &rConstitutiveMatrix) override
 
void CalculateStressAndConstitutiveTensors (ModelDataType &rValues, MatrixType &rStressMatrix, Matrix &rConstitutiveMatrix) override
 
bool Has (const Variable< double > &rThisVariable) override
 
void SetValue (const Variable< double > &rVariable, const double &rValue, const ProcessInfo &rCurrentProcessInfo) override
 
double & GetValue (const Variable< double > &rThisVariable, double &rValue) 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...
 
 KRATOS_CLASS_POINTER_DEFINITION (NonLinearAssociativePlasticityModel)
 Pointer definition of NonLinearAssociativePlasticityModel. More...
 
- Public Member Functions inherited from Kratos::PlasticityModel< IncompressibleNeoHookeanModel, MisesHuberYieldSurface< SimoExponentialHardeningRule > >
 PlasticityModel ()
 Default constructor. More...
 
 PlasticityModel (PlasticityModel const &rOther)
 Copy constructor. More...
 
PlasticityModeloperator= (PlasticityModel const &rOther)
 Assignment operator. More...
 
ConstitutiveModel::Pointer Clone () const override
 Clone. More...
 
 ~PlasticityModel () override
 Destructor. More...
 
void InitializeMaterial (const Properties &rProperties) override
 
void InitializeModel (ModelDataType &rValues) override
 
void FinalizeModel (ModelDataType &rValues) override
 
void CalculateStressTensor (ModelDataType &rValues, MatrixType &rStressMatrix) 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 CalculateStressAndConstitutiveTensors (ModelDataType &rValues, MatrixType &rStressMatrix, Matrix &rConstitutiveMatrix) override
 
void CalculateIsochoricStressAndConstitutiveTensors (ModelDataType &rValues, MatrixType &rStressMatrix, Matrix &rConstitutiveMatrix) override
 
void CalculateVolumetricStressAndConstitutiveTensors (ModelDataType &rValues, MatrixType &rStressMatrix, Matrix &rConstitutiveMatrix) override
 
int Check (const Properties &rProperties, const ProcessInfo &rCurrentProcessInfo) override
 
void GetDomainVariablesList (std::vector< Variable< double > > &rScalarVariables, std::vector< Variable< array_1d< double, 3 > > > &rComponentVariables) override
 
bool Has (const Variable< double > &rThisVariable) override
 
void SetValue (const Variable< double > &rVariable, const double &rValue, const ProcessInfo &rCurrentProcessInfo) override
 
double & GetValue (const Variable< double > &rThisVariable, double &rValue) override
 
ElasticityModelTypeGetElasticityModel ()
 
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...
 
 KRATOS_CLASS_POINTER_DEFINITION (PlasticityModel)
 Pointer definition of PlasticityModel. 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 CalculateStrainEnergy (ModelDataType &rValues, double &rDensityFunction)
 
virtual void SetValue (const Variable< Vector > &rThisVariable, const Vector &rValue, const ProcessInfo &rCurrentProcessInfo)
 
virtual void SetValue (const Variable< Matrix > &rThisVariable, const Matrix &rValue, const ProcessInfo &rCurrentProcessInfo)
 
 KRATOS_CLASS_POINTER_DEFINITION (ConstitutiveModel)
 Pointer definition of ConstitutiveModel. More...
 

Type Definitions

typedef IncompressibleNeoHookeanModel ElasticityModelType
 
typedef ElasticityModelType::Pointer ElasticityModelPointer
 
typedef SimoExponentialHardeningRule HardeningRuleType
 
typedef MisesHuberYieldSurface< HardeningRuleTypeYieldSurfaceType
 
typedef YieldSurfaceType::Pointer YieldSurfacePointer
 
typedef NonLinearAssociativePlasticityModel< ElasticityModelType, YieldSurfaceTypeBaseType
 
typedef BaseType::Pointer BaseTypePointer
 
typedef BaseType::SizeType SizeType
 
typedef BaseType::VoigtIndexType VoigtIndexType
 
typedef BaseType::MatrixType MatrixType
 
typedef BaseType::ModelDataType ModelDataType
 
typedef BaseType::MaterialDataType MaterialDataType
 
typedef BaseType::PlasticDataType PlasticDataType
 
typedef BaseType::InternalVariablesType InternalVariablesType
 
 KRATOS_CLASS_POINTER_DEFINITION (SimoJ2PlasticityModel)
 Pointer definition of SimoJ2PlasticityModel. More...
 

Serialization

class Serializer
 

Additional Inherited Members

- Public Types inherited from Kratos::NonLinearAssociativePlasticityModel< IncompressibleNeoHookeanModel, MisesHuberYieldSurface< SimoExponentialHardeningRule > >
typedef IncompressibleNeoHookeanModel ElasticityModelType
 
typedef MisesHuberYieldSurface< SimoExponentialHardeningRuleYieldSurfaceType
 
typedef PlasticityModel< ElasticityModelType, YieldSurfaceTypeBaseType
 
typedef BaseType::Pointer BaseTypePointer
 
typedef BaseType::SizeType SizeType
 
typedef BaseType::VoigtIndexType VoigtIndexType
 
typedef BaseType::MatrixType MatrixType
 
typedef BaseType::ModelDataType ModelDataType
 
typedef BaseType::MaterialDataType MaterialDataType
 
typedef BaseType::PlasticDataType PlasticDataType
 
typedef BaseType::InternalVariablesType InternalVariablesType
 
typedef ConstitutiveModelData::StrainMeasureType StrainMeasureType
 
typedef ConstitutiveModelData::StressMeasureType StressMeasureType
 
- Public Types inherited from Kratos::PlasticityModel< IncompressibleNeoHookeanModel, MisesHuberYieldSurface< SimoExponentialHardeningRule > >
typedef IncompressibleNeoHookeanModel ElasticityModelType
 
typedef MisesHuberYieldSurface< SimoExponentialHardeningRuleYieldSurfaceType
 
typedef ConstitutiveModelData::SizeType SizeType
 
typedef ConstitutiveModelData::VoigtIndexType VoigtIndexType
 
typedef ConstitutiveModelData::MatrixType MatrixType
 
typedef ConstitutiveModelData::VectorType VectorType
 
typedef ConstitutiveModelData::ModelData ModelDataType
 
typedef TYieldSurface::PlasticDataType PlasticDataType
 
typedef TYieldSurface::InternalVariablesType InternalVariablesType
 
- 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 Member Functions inherited from Kratos::NonLinearAssociativePlasticityModel< IncompressibleNeoHookeanModel, MisesHuberYieldSurface< SimoExponentialHardeningRule > >
virtual void SetWorkingMeasures (PlasticDataType &rVariables, MatrixType &rStressMatrix)
 
virtual void GetWorkingMeasures (PlasticDataType &rVariables, MatrixType &rStressMatrix)
 
virtual void CalculateAndAddIsochoricStressTensor (PlasticDataType &rVariables, MatrixType &rStressMatrix)
 
virtual void CalculateAndAddPlasticConstitutiveTensor (PlasticDataType &rVariables, Matrix &rConstitutiveMatrix)
 
virtual double & AddPlasticConstitutiveComponent (PlasticDataType &rVariables, PlasticFactors &rFactors, double &rCabcd, const unsigned int &a, const unsigned int &b, const unsigned int &c, const unsigned int &d)
 
virtual bool CalculateReturnMapping (PlasticDataType &rVariables, MatrixType &rStressMatrix)
 
virtual void CalculateImplexReturnMapping (PlasticDataType &rVariables, MatrixType &rStressMatrix)
 
virtual void InitializeVariables (ModelDataType &rValues, PlasticDataType &rVariables)
 
virtual void UpdateStressConfiguration (PlasticDataType &rVariables, MatrixType &rStressMatrix)
 
virtual void UpdateInternalVariables (ModelDataType &rValues, PlasticDataType &rVariables, const MatrixType &rStressMatrix)
 
virtual void CalculateScalingFactors (PlasticDataType &rVariables, PlasticFactors &rFactors)
 
void CalculateThermalDissipation (PlasticDataType &rVariables)
 
void CalculateImplexThermalDissipation (PlasticDataType &rVariables)
 
- Protected Member Functions inherited from Kratos::PlasticityModel< IncompressibleNeoHookeanModel, MisesHuberYieldSurface< SimoExponentialHardeningRule > >
virtual void SetInternalVariables (ModelDataType &rValues, PlasticDataType &rVariables)
 
- Protected Attributes inherited from Kratos::NonLinearAssociativePlasticityModel< IncompressibleNeoHookeanModel, MisesHuberYieldSurface< SimoExponentialHardeningRule > >
InternalVariablesType mInternal
 
InternalVariablesType mPreviousInternal
 
ThermalVariables mThermalVariables
 
- Protected Attributes inherited from Kratos::PlasticityModel< IncompressibleNeoHookeanModel, MisesHuberYieldSurface< SimoExponentialHardeningRule > >
ElasticityModelType mElasticityModel
 
YieldSurfaceType mYieldSurface
 
- Protected Attributes inherited from Kratos::ConstitutiveModel
Flags mOptions
 
VectorType mHistoryVector
 

Detailed Description

Short class definition.

Detail class definition.

Member Typedef Documentation

◆ BaseType

◆ BaseTypePointer

◆ ElasticityModelPointer

typedef ElasticityModelType::Pointer Kratos::SimoJ2PlasticityModel::ElasticityModelPointer

◆ ElasticityModelType

◆ HardeningRuleType

◆ InternalVariablesType

◆ MaterialDataType

◆ MatrixType

◆ ModelDataType

◆ PlasticDataType

◆ SizeType

◆ VoigtIndexType

◆ YieldSurfacePointer

typedef YieldSurfaceType::Pointer Kratos::SimoJ2PlasticityModel::YieldSurfacePointer

◆ YieldSurfaceType

Constructor & Destructor Documentation

◆ SimoJ2PlasticityModel() [1/2]

Kratos::SimoJ2PlasticityModel::SimoJ2PlasticityModel ( )
inline

Default constructor.

◆ SimoJ2PlasticityModel() [2/2]

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

Copy constructor.

◆ ~SimoJ2PlasticityModel()

Kratos::SimoJ2PlasticityModel::~SimoJ2PlasticityModel ( )
inlineoverride

Destructor.

Member Function Documentation

◆ Clone()

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

Clone.

Reimplemented from Kratos::ConstitutiveModel.

◆ GetDomainVariablesList()

void Kratos::SimoJ2PlasticityModel::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::ConstitutiveModel.

◆ GetValue()

double& Kratos::SimoJ2PlasticityModel::GetValue ( const Variable< double > &  rThisVariable,
double rValue 
)
inlineoverridevirtual

Get Values

Reimplemented from Kratos::ConstitutiveModel.

◆ Has()

bool Kratos::SimoJ2PlasticityModel::Has ( const Variable< double > &  rThisVariable)
inlineoverridevirtual

Has Values

Reimplemented from Kratos::ConstitutiveModel.

◆ Info()

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

Turn back information as a string.

Reimplemented from Kratos::ConstitutiveModel.

◆ KRATOS_CLASS_POINTER_DEFINITION()

Kratos::SimoJ2PlasticityModel::KRATOS_CLASS_POINTER_DEFINITION ( SimoJ2PlasticityModel  )

Pointer definition of SimoJ2PlasticityModel.

◆ operator=()

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

Assignment operator.

◆ PrintData()

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

Print object's data.

Reimplemented from Kratos::ConstitutiveModel.

◆ PrintInfo()

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

Print information about this object.

Reimplemented from Kratos::ConstitutiveModel.

Friends And Related Function Documentation

◆ Serializer

friend class Serializer
friend

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