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.
Classes | List of all members
Kratos::ParticleFlowRule Class Reference

Short class definition. More...

#include <particle_flow_rule.hpp>

Inheritance diagram for Kratos::ParticleFlowRule:
Collaboration diagram for Kratos::ParticleFlowRule:

Classes

struct  InternalVariables
 
struct  PlasticFactors
 
struct  RadialReturnVariables
 
struct  ThermalVariables
 

Public Member Functions

Life Cycle
 ParticleFlowRule ()
 Default constructor. More...
 
 ParticleFlowRule (YieldCriterionPointer pYieldCriterion)
 Initialization constructor. More...
 
 ParticleFlowRule (ParticleFlowRule const &rOther)
 Copy constructor. More...
 
ParticleFlowRuleoperator= (ParticleFlowRule const &rOther)
 Assignment operator. More...
 
virtual ~ParticleFlowRule ()
 Destructor. More...
 
Operators
virtual ParticleFlowRule::Pointer Clone () const
 
Operations
virtual void InitializeMaterial (YieldCriterionPointer &pYieldCriterion, HardeningLawPointer &pHardeningLaw, const Properties &rMaterialProperties)
 
virtual void InitializeMaterial (const Properties &rMaterialProperties)
 
const InternalVariablesGetInternalVariables ()
 
const ThermalVariablesGetThermalVariables ()
 
virtual bool CalculateReturnMapping (RadialReturnVariables &rReturnMappingVariables, Matrix &rIsoStressMatrix, const Properties &rProp)
 
virtual bool CalculateReturnMapping (RadialReturnVariables &rReturnMappingVariables, const Matrix &rIncrementalDeformationGradient, Matrix &rStressMatrix, Matrix &rNewElasticLeftCauchyGreen, const Properties &rProp)
 
virtual void ComputeElastoPlasticTangentMatrix (const RadialReturnVariables &rReturnMappingVariables, const Matrix &rElasticLeftCauchyGreen, const double &rAlpha, Matrix &rElastoPlasticMatrix, const Properties &rProp)
 
virtual void CalculateScalingFactors (const RadialReturnVariables &rReturnMappingVariables, PlasticFactors &rScalingFactors)
 
virtual bool UpdateInternalVariables (RadialReturnVariables &rReturnMappingVariables, const Properties &rProp)
 
virtual Matrix GetElasticLeftCauchyGreen (RadialReturnVariables &rReturnMappingVariables)
 
virtual unsigned int GetPlasticRegion ()
 
virtual void CalculatePrincipalStressTrial (const RadialReturnVariables &rReturnMappingVariables, const Matrix &rNewElasticLeftCauchyGreen, Matrix &rStressMatrix, const Properties &rProp)
 

Protected Member Functions

Protected Operations
virtual doubleCalculateStressNorm (Matrix &rStressMatrix, double &rStressNorm)
 

Protected Attributes

Protected member Variables
InternalVariables mInternalVariables
 
ThermalVariables mThermalVariables
 
YieldCriterionPointer mpYieldCriterion
 

Type Definitions

typedef ParticleYieldCriterion::Pointer YieldCriterionPointer
 
typedef ParticleHardeningLaw::Pointer HardeningLawPointer
 
typedef const PropertiesPropertiesPointer
 
 KRATOS_DEFINE_LOCAL_FLAG (IMPLEX_ACTIVE)
 
 KRATOS_DEFINE_LOCAL_FLAG (PLASTIC_REGION)
 
 KRATOS_DEFINE_LOCAL_FLAG (PLASTIC_RATE_REGION)
 
 KRATOS_DEFINE_LOCAL_FLAG (RETURN_MAPPING_COMPUTED)
 
 KRATOS_CLASS_POINTER_DEFINITION (ParticleFlowRule)
 Pointer definition of FlowRule. More...
 

Serialization

class Serializer
 

Detailed Description

Short class definition.

Detail class definition.

Member Typedef Documentation

◆ HardeningLawPointer

typedef ParticleHardeningLaw::Pointer Kratos::ParticleFlowRule::HardeningLawPointer

◆ PropertiesPointer

◆ YieldCriterionPointer

typedef ParticleYieldCriterion::Pointer Kratos::ParticleFlowRule::YieldCriterionPointer

Constructor & Destructor Documentation

◆ ParticleFlowRule() [1/3]

Kratos::ParticleFlowRule::ParticleFlowRule ( )
inline

Default constructor.

◆ ParticleFlowRule() [2/3]

Kratos::ParticleFlowRule::ParticleFlowRule ( YieldCriterionPointer  pYieldCriterion)
inline

Initialization constructor.

◆ ParticleFlowRule() [3/3]

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

Copy constructor.

◆ ~ParticleFlowRule()

virtual Kratos::ParticleFlowRule::~ParticleFlowRule ( )
inlinevirtual

Destructor.

Member Function Documentation

◆ CalculatePrincipalStressTrial()

virtual void Kratos::ParticleFlowRule::CalculatePrincipalStressTrial ( const RadialReturnVariables rReturnMappingVariables,
const Matrix rNewElasticLeftCauchyGreen,
Matrix rStressMatrix,
const Properties rProp 
)
inlinevirtual

◆ CalculateReturnMapping() [1/2]

virtual bool Kratos::ParticleFlowRule::CalculateReturnMapping ( RadialReturnVariables rReturnMappingVariables,
const Matrix rIncrementalDeformationGradient,
Matrix rStressMatrix,
Matrix rNewElasticLeftCauchyGreen,
const Properties rProp 
)
inlinevirtual

◆ CalculateReturnMapping() [2/2]

virtual bool Kratos::ParticleFlowRule::CalculateReturnMapping ( RadialReturnVariables rReturnMappingVariables,
Matrix rIsoStressMatrix,
const Properties rProp 
)
inlinevirtual

◆ CalculateScalingFactors()

virtual void Kratos::ParticleFlowRule::CalculateScalingFactors ( const RadialReturnVariables rReturnMappingVariables,
PlasticFactors rScalingFactors 
)
inlinevirtual

◆ CalculateStressNorm()

virtual double& Kratos::ParticleFlowRule::CalculateStressNorm ( Matrix rStressMatrix,
double rStressNorm 
)
inlineprotectedvirtual

◆ Clone()

virtual ParticleFlowRule::Pointer Kratos::ParticleFlowRule::Clone ( ) const
inlinevirtual

Clone function (has to be implemented by any derived class)

Returns
a pointer to a new instance of this flow rule

Reimplemented in Kratos::MCStrainSofteningPlasticFlowRule, Kratos::MCPlasticFlowRule, and Kratos::BorjaCamClayPlasticFlowRule.

◆ ComputeElastoPlasticTangentMatrix()

virtual void Kratos::ParticleFlowRule::ComputeElastoPlasticTangentMatrix ( const RadialReturnVariables rReturnMappingVariables,
const Matrix rElasticLeftCauchyGreen,
const double rAlpha,
Matrix rElastoPlasticMatrix,
const Properties rProp 
)
inlinevirtual

◆ GetElasticLeftCauchyGreen()

virtual Matrix Kratos::ParticleFlowRule::GetElasticLeftCauchyGreen ( RadialReturnVariables rReturnMappingVariables)
inlinevirtual

◆ GetInternalVariables()

const InternalVariables& Kratos::ParticleFlowRule::GetInternalVariables ( )
inline

◆ GetPlasticRegion()

virtual unsigned int Kratos::ParticleFlowRule::GetPlasticRegion ( )
inlinevirtual

◆ GetThermalVariables()

const ThermalVariables& Kratos::ParticleFlowRule::GetThermalVariables ( )
inline

◆ InitializeMaterial() [1/2]

virtual void Kratos::ParticleFlowRule::InitializeMaterial ( const Properties rMaterialProperties)
inlinevirtual

◆ InitializeMaterial() [2/2]

virtual void Kratos::ParticleFlowRule::InitializeMaterial ( YieldCriterionPointer pYieldCriterion,
HardeningLawPointer pHardeningLaw,
const Properties rMaterialProperties 
)
inlinevirtual

◆ KRATOS_CLASS_POINTER_DEFINITION()

Kratos::ParticleFlowRule::KRATOS_CLASS_POINTER_DEFINITION ( ParticleFlowRule  )

Pointer definition of FlowRule.

◆ KRATOS_DEFINE_LOCAL_FLAG() [1/4]

Kratos::ParticleFlowRule::KRATOS_DEFINE_LOCAL_FLAG ( IMPLEX_ACTIVE  )

◆ KRATOS_DEFINE_LOCAL_FLAG() [2/4]

Kratos::ParticleFlowRule::KRATOS_DEFINE_LOCAL_FLAG ( PLASTIC_RATE_REGION  )

◆ KRATOS_DEFINE_LOCAL_FLAG() [3/4]

Kratos::ParticleFlowRule::KRATOS_DEFINE_LOCAL_FLAG ( PLASTIC_REGION  )

◆ KRATOS_DEFINE_LOCAL_FLAG() [4/4]

Kratos::ParticleFlowRule::KRATOS_DEFINE_LOCAL_FLAG ( RETURN_MAPPING_COMPUTED  )

◆ operator=()

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

Assignment operator.

◆ UpdateInternalVariables()

virtual bool Kratos::ParticleFlowRule::UpdateInternalVariables ( RadialReturnVariables rReturnMappingVariables,
const Properties rProp 
)
inlinevirtual

Friends And Related Function Documentation

◆ Serializer

friend class Serializer
friend

Member Data Documentation

◆ mInternalVariables

InternalVariables Kratos::ParticleFlowRule::mInternalVariables
protected

◆ mpYieldCriterion

YieldCriterionPointer Kratos::ParticleFlowRule::mpYieldCriterion
protected

◆ mThermalVariables

ThermalVariables Kratos::ParticleFlowRule::mThermalVariables
protected

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