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::HighCycleFatigueLawIntegrator< TVoigtSize > Class Template Reference

: This object computes all the required information for the high cycle fatigue constitutive law. More...

#include <high_cycle_fatigue_law_integrator.h>

Collaboration diagram for Kratos::HighCycleFatigueLawIntegrator< TVoigtSize >:

Public Member Functions

Type Definitions
 KRATOS_CLASS_POINTER_DEFINITION (HighCycleFatigueLawIntegrator)
 Counted pointer of HighCycleFatigueLawIntegrator. More...
 
Life Cycle
 HighCycleFatigueLawIntegrator ()
 Initialization constructor. More...
 
 HighCycleFatigueLawIntegrator (HighCycleFatigueLawIntegrator const &rOther)
 Copy constructor. More...
 
HighCycleFatigueLawIntegratoroperator= (HighCycleFatigueLawIntegrator const &rOther)
 Assignment operator. More...
 
virtual ~HighCycleFatigueLawIntegrator ()
 Destructor. More...
 

Static Public Member Functions

Operations
static void CalculateMaximumAndMinimumStresses (const double CurrentStress, double &rMaximumStress, double &rMinimumStress, const Vector &PreviousStresses, bool &rMaxIndicator, bool &rMinIndicator)
 This method checks and saves the previous stress state if it was a maximum or a minimum. More...
 
static double CalculateTensionCompressionFactor (const Vector &rStressVector)
 This method checks if the global stress state is tension or compression; -1 for a generalized compression state and 1 for a generalized tensile state. More...
 
static double CalculateReversionFactor (const double MaxStress, const double MinStress)
 This method returns de reversion factor. More...
 
static void CalculateFatigueParameters (const double MaxStress, double ReversionFactor, const Properties &rMaterialParameters, double &rB0, double &rSth, double &rAlphat, double &rN_f)
 This method computes internal variables (B0, Sth and ALPHAT) of the CL. More...
 
static void CalculateFatigueReductionFactorAndWohlerStress (const Properties &rMaterialParameters, const double MaxStress, unsigned int LocalNumberOfCycles, unsigned int GlobalNumberOfCycles, const double B0, const double Sth, const double Alphat, double &rFatigueReductionFactor, double &rWohlerStress)
 This method computes the reduction factor and the wohler stress (SN curve) More...
 

Detailed Description

template<SizeType TVoigtSize = 6>
class Kratos::HighCycleFatigueLawIntegrator< TVoigtSize >

: This object computes all the required information for the high cycle fatigue constitutive law.

The definitions of these classes is completely static, the derivation is done in a static way

Template Parameters
TVoigtSizeStrain size
Author
Sergio Jimenez, Alejandro Cornejo & Lucia Barbu

Constructor & Destructor Documentation

◆ HighCycleFatigueLawIntegrator() [1/2]

template<SizeType TVoigtSize = 6>
Kratos::HighCycleFatigueLawIntegrator< TVoigtSize >::HighCycleFatigueLawIntegrator ( )
inline

Initialization constructor.

◆ HighCycleFatigueLawIntegrator() [2/2]

template<SizeType TVoigtSize = 6>
Kratos::HighCycleFatigueLawIntegrator< TVoigtSize >::HighCycleFatigueLawIntegrator ( HighCycleFatigueLawIntegrator< TVoigtSize > const &  rOther)
inline

Copy constructor.

◆ ~HighCycleFatigueLawIntegrator()

template<SizeType TVoigtSize = 6>
virtual Kratos::HighCycleFatigueLawIntegrator< TVoigtSize >::~HighCycleFatigueLawIntegrator ( )
inlinevirtual

Destructor.

Member Function Documentation

◆ CalculateFatigueParameters()

template<SizeType TVoigtSize = 6>
static void Kratos::HighCycleFatigueLawIntegrator< TVoigtSize >::CalculateFatigueParameters ( const double  MaxStress,
double  ReversionFactor,
const Properties rMaterialParameters,
double rB0,
double rSth,
double rAlphat,
double rN_f 
)
inlinestatic

This method computes internal variables (B0, Sth and ALPHAT) of the CL.

Parameters
MaxStressSigned maximum stress in the current cycle.
ReversionFactorRatio between the minimum and maximum signed equivalent stresses for the current load cycle.
MaterialParametersMaterial properties.
rB0Internal variable of the fatigue model.
rSthEndurance limit of the fatigue model.
rAlphatInternal variable of the fatigue model.

◆ CalculateFatigueReductionFactorAndWohlerStress()

template<SizeType TVoigtSize = 6>
static void Kratos::HighCycleFatigueLawIntegrator< TVoigtSize >::CalculateFatigueReductionFactorAndWohlerStress ( const Properties rMaterialParameters,
const double  MaxStress,
unsigned int  LocalNumberOfCycles,
unsigned int  GlobalNumberOfCycles,
const double  B0,
const double  Sth,
const double  Alphat,
double rFatigueReductionFactor,
double rWohlerStress 
)
inlinestatic

This method computes the reduction factor and the wohler stress (SN curve)

Parameters
MaterialParametersMaterial properties.
MaxStressSigned maximum stress in the current cycle.
LocalNumberOfCyclesNumber of cycles in the current load.
GlobalNumberOfCyclesNumber of cycles in the whole analysis.
B0Internal variable of the fatigue model.
SthEndurance limit of the fatigue model.
AlphatInternal variable of the fatigue model.
rFatigueReductionFactorReduction factor from the previous step to be reevaluated.
rWohlerStressNormalized Wohler stress used to build the life prediction curves (SN curve).

◆ CalculateMaximumAndMinimumStresses()

template<SizeType TVoigtSize = 6>
static void Kratos::HighCycleFatigueLawIntegrator< TVoigtSize >::CalculateMaximumAndMinimumStresses ( const double  CurrentStress,
double rMaximumStress,
double rMinimumStress,
const Vector PreviousStresses,
bool rMaxIndicator,
bool rMinIndicator 
)
inlinestatic

This method checks and saves the previous stress state if it was a maximum or a minimum.

Parameters
CurrentStressEquivalent stress in the current step.
rMaximumStressMaximum stress.
rMinimumStressMinimum stress.
PreviousStressesEquivalent stresses in the two previous steps.
rMaxIndicatorIndicator of a maximum in the current cycle.
rMinIndicatorIndicator of a minimum in the current cycle.

◆ CalculateReversionFactor()

template<SizeType TVoigtSize = 6>
static double Kratos::HighCycleFatigueLawIntegrator< TVoigtSize >::CalculateReversionFactor ( const double  MaxStress,
const double  MinStress 
)
inlinestatic

This method returns de reversion factor.

Parameters
MaxStressSigned maximum equivalent stress in the current cycle.
MinStressSigned minimum equivalent stress in the current cycle.

◆ CalculateTensionCompressionFactor()

template<SizeType TVoigtSize = 6>
static double Kratos::HighCycleFatigueLawIntegrator< TVoigtSize >::CalculateTensionCompressionFactor ( const Vector rStressVector)
inlinestatic

This method checks if the global stress state is tension or compression; -1 for a generalized compression state and 1 for a generalized tensile state.

Parameters
StressVectorCurrent predictive stress tensor.

◆ KRATOS_CLASS_POINTER_DEFINITION()

template<SizeType TVoigtSize = 6>
Kratos::HighCycleFatigueLawIntegrator< TVoigtSize >::KRATOS_CLASS_POINTER_DEFINITION ( HighCycleFatigueLawIntegrator< TVoigtSize >  )

Counted pointer of HighCycleFatigueLawIntegrator.

◆ operator=()

template<SizeType TVoigtSize = 6>
HighCycleFatigueLawIntegrator& Kratos::HighCycleFatigueLawIntegrator< TVoigtSize >::operator= ( HighCycleFatigueLawIntegrator< TVoigtSize > const &  rOther)
inline

Assignment operator.


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