![]() |
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.
|
This class derives from the Isotropic damage CL and adds thermal effects (material properties affectation and internal variables) More...
#include <generic_small_strain_thermal_isotropic_damage.h>
Public Member Functions | |
Life Cycle | |
GenericSmallStrainThermalIsotropicDamage () | |
ConstitutiveLaw::Pointer | Clone () const override |
GenericSmallStrainThermalIsotropicDamage (const GenericSmallStrainThermalIsotropicDamage &rOther) | |
~GenericSmallStrainThermalIsotropicDamage () override | |
Operations | |
void | CalculateMaterialResponseCauchy (ConstitutiveLaw::Parameters &rValues) override |
Computes the material response in terms of Cauchy stresses and constitutive tensor. More... | |
void | InitializeMaterial (const Properties &rMaterialProperties, const GeometryType &rElementGeometry, const Vector &rShapeFunctionsValues) override |
This is to be called at the very beginning of the calculation. More... | |
void | FinalizeMaterialResponseCauchy (ConstitutiveLaw::Parameters &rValues) override |
bool | Has (const Variable< double > &rThisVariable) override |
Returns whether this constitutive Law has specified variable (double) More... | |
void | SetValue (const Variable< double > &rThisVariable, const double &rValue, const ProcessInfo &rCurrentProcessInfo) override |
Sets the value of a specified variable (double) More... | |
double & | GetValue (const Variable< double > &rThisVariable, double &rValue) override |
Returns the value of a specified variable (double) More... | |
bool | RequiresFinalizeMaterialResponse () override |
If the CL requires to initialize the material response, called by the element in InitializeSolutionStep. More... | |
bool | RequiresInitializeMaterialResponse () override |
If the CL requires to initialize the material response, called by the element in InitializeSolutionStep. 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... | |
![]() | |
GenericSmallStrainIsotropicDamage () | |
ConstitutiveLaw::Pointer | Clone () const override |
GenericSmallStrainIsotropicDamage (const GenericSmallStrainIsotropicDamage &rOther) | |
~GenericSmallStrainIsotropicDamage () override | |
void | CalculateMaterialResponsePK1 (ConstitutiveLaw::Parameters &rValues) override |
Computes the material response in terms of 1st Piola-Kirchhoff stresses and constitutive tensor. More... | |
void | CalculateMaterialResponsePK2 (ConstitutiveLaw::Parameters &rValues) override |
Computes the material response in terms of 2nd Piola-Kirchhoff stresses and constitutive tensor. More... | |
void | CalculateMaterialResponseKirchhoff (ConstitutiveLaw::Parameters &rValues) override |
Computes the material response in terms of Kirchhoff stresses and constitutive tensor. More... | |
void | CalculateMaterialResponseCauchy (ConstitutiveLaw::Parameters &rValues) override |
Computes the material response in terms of Cauchy stresses and constitutive tensor. More... | |
void | InitializeMaterial (const Properties &rMaterialProperties, const GeometryType &rElementGeometry, const Vector &rShapeFunctionsValues) override |
This is to be called at the very beginning of the calculation. More... | |
void | FinalizeMaterialResponsePK1 (ConstitutiveLaw::Parameters &rValues) override |
Finalize the material response in terms of 1st Piola-Kirchhoff stresses. More... | |
void | FinalizeMaterialResponsePK2 (ConstitutiveLaw::Parameters &rValues) override |
Finalize the material response in terms of 2nd Piola-Kirchhoff stresses. More... | |
void | FinalizeMaterialResponseKirchhoff (ConstitutiveLaw::Parameters &rValues) override |
Finalize the material response in terms of Kirchhoff stresses. More... | |
void | FinalizeMaterialResponseCauchy (ConstitutiveLaw::Parameters &rValues) override |
bool | Has (const Variable< double > &rThisVariable) override |
Returns whether this constitutive Law has specified variable (double) More... | |
bool | Has (const Variable< Vector > &rThisVariable) override |
Returns whether this constitutive Law has specified variable (Vector) More... | |
bool | Has (const Variable< Matrix > &rThisVariable) override |
Returns whether this constitutive Law has specified variable (Matrix) More... | |
void | SetValue (const Variable< double > &rThisVariable, const double &rValue, const ProcessInfo &rCurrentProcessInfo) override |
Sets the value of a specified variable (double) More... | |
void | SetValue (const Variable< Vector > &rThisVariable, const Vector &rValue, const ProcessInfo &rCurrentProcessInfo) override |
Sets the value of a specified variable (Vector) More... | |
double & | GetValue (const Variable< double > &rThisVariable, double &rValue) override |
Returns the value of a specified variable (double) More... | |
Vector & | GetValue (const Variable< Vector > &rThisVariable, Vector &rValue) override |
Returns the value of a specified variable (Vector) More... | |
bool | RequiresFinalizeMaterialResponse () override |
If the CL requires to initialize the material response, called by the element in InitializeSolutionStep. More... | |
bool | RequiresInitializeMaterialResponse () override |
If the CL requires to initialize the material response, called by the element in InitializeSolutionStep. More... | |
double & | CalculateValue (ConstitutiveLaw::Parameters &rParameterValues, const Variable< double > &rThisVariable, double &rValue) override |
Returns the value of a specified variable (double) More... | |
Vector & | CalculateValue (ConstitutiveLaw::Parameters &rParameterValues, const Variable< Vector > &rThisVariable, Vector &rValue) override |
Returns the value of a specified variable (vector) More... | |
Matrix & | CalculateValue (ConstitutiveLaw::Parameters &rParameterValues, const Variable< Matrix > &rThisVariable, Matrix &rValue) override |
Returns the value of a specified variable (matrix) 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... | |
void | CalculateTangentTensor (ConstitutiveLaw::Parameters &rValues) |
This method computes the tangent tensor. More... | |
KRATOS_CLASS_POINTER_DEFINITION (GenericSmallStrainIsotropicDamage) | |
Counted pointer of GenericYieldSurface. More... | |
Protected Member Functions | |
Protected Access | |
double & | GetReferenceTemperature () |
Retrieve the reference temperature. More... | |
void | SetReferenceTemperature (const double ToRefTemperature) |
Sets the reference temperature. More... | |
![]() | |
double & | GetThreshold () |
double & | GetDamage () |
void | SetThreshold (const double toThreshold) |
void | SetDamage (const double toDamage) |
Type Definitions | |
using | BaseType = GenericSmallStrainIsotropicDamage< TConstLawIntegratorType > |
Definition of the base class. More... | |
using | BoundedArrayType = array_1d< double, VoigtSize > |
Bounded vector for stresses/strains. More... | |
using | GeometryType = Geometry< Node > |
The geometry definition. More... | |
using | CLutils = ConstitutiveLawUtilities< VoigtSize > |
Advanced and basic contitutive laws utilities for the corresponding Voigt size. More... | |
using | AdvCLutils = AdvancedConstitutiveLawUtilities< VoigtSize > |
static constexpr SizeType | Dimension = TConstLawIntegratorType::Dimension |
The define the working dimension size, already defined in the integrator. More... | |
static constexpr SizeType | VoigtSize = TConstLawIntegratorType::VoigtSize |
The define the Voigt size, already defined in the integrator. More... | |
static constexpr double | tolerance = std::numeric_limits<double>::epsilon() |
Definition of the machine precision tolerance. More... | |
static constexpr double | threshold_tolerance = 1.0e-5 |
KRATOS_CLASS_POINTER_DEFINITION (GenericSmallStrainThermalIsotropicDamage) | |
Counted pointer of GenericYieldSurface. More... | |
Un accessible methods | |
class | Serializer |
Additional Inherited Members | |
![]() | |
typedef std::conditional< VoigtSize==6, ElasticIsotropic3D, LinearPlaneStrain >::type | BaseType |
Definition of the base class. More... | |
typedef array_1d< double, VoigtSize > | BoundedArrayType |
typedef Node | NodeType |
The node definition. More... | |
typedef Geometry< NodeType > | GeometryType |
The geometry definition. More... | |
![]() | |
static constexpr SizeType | Dimension = TConstLawIntegratorType::Dimension |
The define the working dimension size, already defined in the integrator. More... | |
static constexpr SizeType | VoigtSize = TConstLawIntegratorType::VoigtSize |
The define the Voigt size, already defined in the integrator. More... | |
static constexpr double | tolerance = std::numeric_limits<double>::epsilon() |
Definition of the machine precision tolerance. More... | |
static constexpr double | threshold_tolerance = 1.0e-5 |
This class derives from the Isotropic damage CL and adds thermal effects (material properties affectation and internal variables)
This class considers a constitutive law integrator as an intermediate utility to compute the damage. 3D and plane strain
TConstLawIntegratorType | The constitutive law integrator considered |
using Kratos::GenericSmallStrainThermalIsotropicDamage< TConstLawIntegratorType >::AdvCLutils = AdvancedConstitutiveLawUtilities<VoigtSize> |
using Kratos::GenericSmallStrainThermalIsotropicDamage< TConstLawIntegratorType >::BaseType = GenericSmallStrainIsotropicDamage<TConstLawIntegratorType> |
Definition of the base class.
using Kratos::GenericSmallStrainThermalIsotropicDamage< TConstLawIntegratorType >::BoundedArrayType = array_1d<double, VoigtSize> |
Bounded vector for stresses/strains.
using Kratos::GenericSmallStrainThermalIsotropicDamage< TConstLawIntegratorType >::CLutils = ConstitutiveLawUtilities<VoigtSize> |
Advanced and basic contitutive laws utilities for the corresponding Voigt size.
using Kratos::GenericSmallStrainThermalIsotropicDamage< TConstLawIntegratorType >::GeometryType = Geometry<Node> |
The geometry definition.
|
inline |
Default constructor.
|
inline |
Copy constructor.
|
inlineoverride |
Destructor.
|
override |
Computes the material response in terms of Cauchy stresses and constitutive tensor.
|
override |
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 |
|
inlineoverride |
Clone.
|
override |
Finalize the material response in terms of Cauchy stresses
|
inlineprotected |
Retrieve the reference temperature.
|
override |
Returns the value of a specified variable (double)
rThisVariable | the variable to be returned |
rValue | a reference to the returned value |
|
override |
Returns whether this constitutive Law has specified variable (double)
rThisVariable | the variable to be checked for |
|
override |
This is to be called at the very beginning of the calculation.
(e.g. from InitializeElement) in order to initialize all relevant attributes of the constitutive law
rMaterialProperties | the Properties instance of the current element |
rElementGeometry | the geometry of the current element |
rShapeFunctionsValues | the shape functions values in the current integration point |
Kratos::GenericSmallStrainThermalIsotropicDamage< TConstLawIntegratorType >::KRATOS_CLASS_POINTER_DEFINITION | ( | GenericSmallStrainThermalIsotropicDamage< TConstLawIntegratorType > | ) |
Counted pointer of GenericYieldSurface.
|
inlineoverride |
If the CL requires to initialize the material response, called by the element in InitializeSolutionStep.
|
inlineoverride |
If the CL requires to initialize the material response, called by the element in InitializeSolutionStep.
|
inlineprotected |
Sets the reference temperature.
ToRefTemperature | The reference temperature |
|
override |
Sets the value of a specified variable (double)
rVariable | the variable to be returned |
rValue | new value of the specified variable |
rCurrentProcessInfo | the process info |
|
friend |
|
staticconstexpr |
The define the working dimension size, already defined in the integrator.
|
staticconstexpr |
|
staticconstexpr |
Definition of the machine precision tolerance.
|
staticconstexpr |
The define the Voigt size, already defined in the integrator.