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

An algorithm that derives numerically the constitutive tangent tensor at one GP. More...

#include <tangent_operator_calculator_utility.h>

Collaboration diagram for Kratos::TangentOperatorCalculatorUtility:

Public Member Functions

Life Cycle
 TangentOperatorCalculatorUtility ()
 Constructor. More...
 
virtual ~TangentOperatorCalculatorUtility ()
 Destructor. More...
 

Static Public Member Functions

Operations
static void CalculateTangentTensor (ConstitutiveLaw::Parameters &rValues, ConstitutiveLaw *pConstitutiveLaw, const ConstitutiveLaw::StressMeasure &rStressMeasure=ConstitutiveLaw::StressMeasure_Cauchy, const bool ConsiderPertubationThreshold=true, const IndexType ApproximationOrder=2)
 Main method that computes the tangent tensor. More...
 
static void CalculateTangentTensorSmallDeformationProvidedStrain (ConstitutiveLaw::Parameters &rValues, ConstitutiveLaw *pConstitutiveLaw, const ConstitutiveLaw::StressMeasure &rStressMeasure=ConstitutiveLaw::StressMeasure_Cauchy, const bool ConsiderPertubationThreshold=true, const IndexType ApproximationOrder=2)
 Main method that computes the tangent tensor (provided strain) More...
 
static void CalculateTangentTensorSmallDeformationNotProvidedStrain (ConstitutiveLaw::Parameters &rValues, ConstitutiveLaw *pConstitutiveLaw, const ConstitutiveLaw::StressMeasure &rStressMeasure=ConstitutiveLaw::StressMeasure_Cauchy, const bool ConsiderPertubationThreshold=true, const IndexType ApproximationOrder=2)
 Main method that computes the tangent tensor (not provided strain) More...
 
static void CalculateTangentTensorFiniteDeformation (ConstitutiveLaw::Parameters &rValues, ConstitutiveLaw *pConstitutiveLaw, const ConstitutiveLaw::StressMeasure &rStressMeasure=ConstitutiveLaw::StressMeasure_PK2, const bool ConsiderPertubationThreshold=true, const IndexType ApproximationOrder=2)
 Main method that computes the tangent tensor (for finite deformation problems) More...
 

Type Definitions

typedef std::size_t SizeType
 Definition of size type. More...
 
typedef std::size_t IndexType
 Definition of index type. More...
 
static constexpr double tolerance = std::numeric_limits<double>::epsilon()
 Definition of the zero tolerance. More...
 
static constexpr double PerturbationCoefficient1 = 1.0e-5
 
static constexpr double PerturbationCoefficient2 = 1.0e-10
 
static constexpr double PerturbationThreshold = 1.0e-8
 
 KRATOS_CLASS_POINTER_DEFINITION (TangentOperatorCalculatorUtility)
 Pointer definition of TangentOperatorCalculatorUtility. More...
 

Detailed Description

An algorithm that derives numerically the constitutive tangent tensor at one GP.

The procedure is defined in the PAPER "Caracterización de la delaminación en materiales compuestos mediante la teoría de mezclas serie/paralelo" X. Martinez, S. Oller y E. Barbero.

Authors
Alejandro Cornejo & Lucia Barbu

Member Typedef Documentation

◆ IndexType

Definition of index type.

◆ SizeType

Definition of size type.

Constructor & Destructor Documentation

◆ TangentOperatorCalculatorUtility()

Kratos::TangentOperatorCalculatorUtility::TangentOperatorCalculatorUtility ( )
inline

Constructor.

◆ ~TangentOperatorCalculatorUtility()

virtual Kratos::TangentOperatorCalculatorUtility::~TangentOperatorCalculatorUtility ( )
inlinevirtual

Destructor.

Member Function Documentation

◆ CalculateTangentTensor()

static void Kratos::TangentOperatorCalculatorUtility::CalculateTangentTensor ( ConstitutiveLaw::Parameters rValues,
ConstitutiveLaw pConstitutiveLaw,
const ConstitutiveLaw::StressMeasure rStressMeasure = ConstitutiveLaw::StressMeasure_Cauchy,
const bool  ConsiderPertubationThreshold = true,
const IndexType  ApproximationOrder = 2 
)
inlinestatic

Main method that computes the tangent tensor.

Parameters
rValuesThe properties of the CL
pConstitutiveLawPointer to the CL
rStressMeasureThe stress measure of the law

◆ CalculateTangentTensorFiniteDeformation()

static void Kratos::TangentOperatorCalculatorUtility::CalculateTangentTensorFiniteDeformation ( ConstitutiveLaw::Parameters rValues,
ConstitutiveLaw pConstitutiveLaw,
const ConstitutiveLaw::StressMeasure rStressMeasure = ConstitutiveLaw::StressMeasure_PK2,
const bool  ConsiderPertubationThreshold = true,
const IndexType  ApproximationOrder = 2 
)
inlinestatic

Main method that computes the tangent tensor (for finite deformation problems)

Parameters
rValuesThe properties of the CL
pConstitutiveLawPointer to the CL
rStressMeasureThe stress measure of the law

◆ CalculateTangentTensorSmallDeformationNotProvidedStrain()

static void Kratos::TangentOperatorCalculatorUtility::CalculateTangentTensorSmallDeformationNotProvidedStrain ( ConstitutiveLaw::Parameters rValues,
ConstitutiveLaw pConstitutiveLaw,
const ConstitutiveLaw::StressMeasure rStressMeasure = ConstitutiveLaw::StressMeasure_Cauchy,
const bool  ConsiderPertubationThreshold = true,
const IndexType  ApproximationOrder = 2 
)
inlinestatic

Main method that computes the tangent tensor (not provided strain)

Parameters
rValuesThe properties of the CL
pConstitutiveLawPointer to the CL
rStressMeasureThe stress measure of the law

◆ CalculateTangentTensorSmallDeformationProvidedStrain()

static void Kratos::TangentOperatorCalculatorUtility::CalculateTangentTensorSmallDeformationProvidedStrain ( ConstitutiveLaw::Parameters rValues,
ConstitutiveLaw pConstitutiveLaw,
const ConstitutiveLaw::StressMeasure rStressMeasure = ConstitutiveLaw::StressMeasure_Cauchy,
const bool  ConsiderPertubationThreshold = true,
const IndexType  ApproximationOrder = 2 
)
inlinestatic

Main method that computes the tangent tensor (provided strain)

Parameters
rValuesThe properties of the CL
pConstitutiveLawPointer to the CL
rStressMeasureThe stress measure of the law

◆ KRATOS_CLASS_POINTER_DEFINITION()

Kratos::TangentOperatorCalculatorUtility::KRATOS_CLASS_POINTER_DEFINITION ( TangentOperatorCalculatorUtility  )

Pointer definition of TangentOperatorCalculatorUtility.

Member Data Documentation

◆ PerturbationCoefficient1

constexpr double Kratos::TangentOperatorCalculatorUtility::PerturbationCoefficient1 = 1.0e-5
staticconstexpr

◆ PerturbationCoefficient2

constexpr double Kratos::TangentOperatorCalculatorUtility::PerturbationCoefficient2 = 1.0e-10
staticconstexpr

◆ PerturbationThreshold

constexpr double Kratos::TangentOperatorCalculatorUtility::PerturbationThreshold = 1.0e-8
staticconstexpr

◆ tolerance

constexpr double Kratos::TangentOperatorCalculatorUtility::tolerance = std::numeric_limits<double>::epsilon()
staticconstexpr

Definition of the zero tolerance.


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