![]() |
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 object integrates the predictive stress using the isotropic damage theory by means of linear/exponential softening. More...
#include <generic_cl_integrator_damage.h>
Static Public Member Functions | |
Operations | |
| static void | IntegrateStressVector (array_1d< double, VoigtSize > &rPredictiveStressVector, const double UniaxialStress, double &rDamage, double &rThreshold, ConstitutiveLaw::Parameters &rValues, const double CharacteristicLength) |
| This method integrates the predictive stress vector with the CL using linear or exponential softening. More... | |
| static void | CalculateExponentialDamage (const double UniaxialStress, const double Threshold, const double DamageParameter, const double CharacteristicLength, ConstitutiveLaw::Parameters &rValues, double &rDamage) |
| This computes the damage variable according to exponential softening. More... | |
| static void | CalculateHardeningDamage (const double UniaxialStress, const double Threshold, const double DamageParameter, const double CharacteristicLength, ConstitutiveLaw::Parameters &rValues, double &rDamage) |
| This computes the damage variable according to parabolic hardening and exponential softening. More... | |
| static void | CalculateLinearDamage (const double UniaxialStress, const double Threshold, const double DamageParameter, const double CharacteristicLength, ConstitutiveLaw::Parameters &rValues, double &rDamage) |
| This computes the damage variable according to linear softening. More... | |
| static void | CalculateCurveFittingDamage (const double UniaxialStress, const double Threshold, const double DamageParameter, const double CharacteristicLength, ConstitutiveLaw::Parameters &rValues, double &rDamage) |
| This computes the damage variable according to a two region curve: More... | |
| static void | GetInitialUniaxialThreshold (ConstitutiveLaw::Parameters &rValues, double &rInitialThreshold) |
| This method returns the initial uniaxial stress threshold. More... | |
| static int | Check (const Properties &rMaterialProperties) |
| This method defines in the CL integrator. More... | |
| static void | CalculateYieldSurfaceDerivative (const array_1d< double, VoigtSize > &rStressVector, array_1d< double, VoigtSize > &rYieldDerivative, ConstitutiveLaw::Parameters &rValues) |
| This method returns the derivative of the yield surface. More... | |
Type Definitions | |
| typedef TYieldSurfaceType | YieldSurfaceType |
| The type of yield surface. More... | |
| typedef YieldSurfaceType::PlasticPotentialType | PlasticPotentialType |
| The type of plastic potential. More... | |
| static constexpr SizeType | Dimension = YieldSurfaceType::Dimension |
| The define the working dimension size, already defined in the yield surface. More... | |
| static constexpr SizeType | VoigtSize = YieldSurfaceType::VoigtSize |
| The define the Voigt size, already defined in the yield surface. More... | |
| KRATOS_CLASS_POINTER_DEFINITION (GenericConstitutiveLawIntegratorDamage) | |
| Counted pointer of GenericConstitutiveLawIntegratorDamage. More... | |
| GenericConstitutiveLawIntegratorDamage () | |
| Initialization constructor. More... | |
| GenericConstitutiveLawIntegratorDamage (GenericConstitutiveLawIntegratorDamage const &rOther) | |
| Copy constructor. More... | |
| GenericConstitutiveLawIntegratorDamage & | operator= (GenericConstitutiveLawIntegratorDamage const &rOther) |
| Assignment operator. More... | |
| virtual | ~GenericConstitutiveLawIntegratorDamage () |
| Destructor. More... | |
: This object integrates the predictive stress using the isotropic damage theory by means of linear/exponential softening.
The definitions of these classes is completely static, the derivation is done in a static way The damage integrator requires the definition of the following properties:
| TYieldSurfaceType | The yield surface considered |
| typedef YieldSurfaceType::PlasticPotentialType Kratos::GenericConstitutiveLawIntegratorDamage< TYieldSurfaceType >::PlasticPotentialType |
The type of plastic potential.
| typedef TYieldSurfaceType Kratos::GenericConstitutiveLawIntegratorDamage< TYieldSurfaceType >::YieldSurfaceType |
The type of yield surface.
|
inline |
Initialization constructor.
|
inline |
Copy constructor.
|
inlinevirtual |
Destructor.
|
inlinestatic |
This computes the damage variable according to a two region curve:
| UniaxialStress | The equivalent uniaxial stress |
| Threshold | The maximum uniaxial stress achieved previously |
| rDamage | The internal variable of the damage model |
| rValues | Parameters of the constitutive law |
| CharacteristicLength | The equivalent length of the FE |
|
inlinestatic |
This computes the damage variable according to exponential softening.
| UniaxialStress | The equivalent uniaxial stress |
| Threshold | The maximum uniaxial stress achieved previously |
| rDamage | The internal variable of the damage model |
| rValues | Parameters of the constitutive law |
| CharacteristicLength | The equivalent length of the FE |
|
inlinestatic |
This computes the damage variable according to parabolic hardening and exponential softening.
| UniaxialStress | The equivalent uniaxial stress |
| Threshold | The maximum uniaxial stress achieved previously |
| rDamage | The internal variable of the damage model |
| rValues | Parameters of the constitutive law |
| CharacteristicLength | The equivalent length of the FE |
|
inlinestatic |
This computes the damage variable according to linear softening.
| UniaxialStress | The equivalent uniaxial stress |
| Threshold | The maximum uniaxial stress achieved previously |
| rDamage | The internal variable of the damage model |
| rValues | Parameters of the constitutive law |
| CharacteristicLength | The equivalent length of the FE |
|
inlinestatic |
This method returns the derivative of the yield surface.
| rStressVector | The stress vector |
| rYieldDerivative | The derivative of the yield surface |
|
inlinestatic |
This method defines in the CL integrator.
|
inlinestatic |
This method returns the initial uniaxial stress threshold.
| rThreshold | The uniaxial stress threshold |
| rValues | Parameters of the constitutive law |
|
inlinestatic |
This method integrates the predictive stress vector with the CL using linear or exponential softening.
| PredictiveStressVector | The predictive stress vector |
| UniaxialStress | The equivalent uniaxial stress |
| Damage | The internal variable of the damage model |
| Threshold | The maximum uniaxial stress achieved previously |
| rValues | Parameters of the constitutive law |
| CharacteristicLength | The equivalent length of the FE |
| Kratos::GenericConstitutiveLawIntegratorDamage< TYieldSurfaceType >::KRATOS_CLASS_POINTER_DEFINITION | ( | GenericConstitutiveLawIntegratorDamage< TYieldSurfaceType > | ) |
Counted pointer of GenericConstitutiveLawIntegratorDamage.
|
inline |
Assignment operator.
|
staticconstexpr |
The define the working dimension size, already defined in the yield surface.
|
staticconstexpr |
The define the Voigt size, already defined in the yield surface.