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.
|
Short class definition. More...
#include <J2_explicit_plastic_flow_rule.hpp>
Public Member Functions | |
Type Definitions | |
KRATOS_CLASS_POINTER_DEFINITION (J2ExplicitFlowRule) | |
Pointer definition of NonLinearAssociativePlasticFlowRule. More... | |
Life Cycle | |
J2ExplicitFlowRule () | |
Default constructor. More... | |
J2ExplicitFlowRule (YieldCriterionPointer pYieldCriterion) | |
Initialization constructor. More... | |
J2ExplicitFlowRule (J2ExplicitFlowRule const &rOther) | |
Copy constructor. More... | |
J2ExplicitFlowRule & | operator= (J2ExplicitFlowRule const &rOther) |
Assignment operator. More... | |
FlowRule::Pointer | Clone () const override |
virtual | ~J2ExplicitFlowRule () |
Destructor. More... | |
Public Member Functions inherited from Kratos::NonAssociativeExplicitPlasticFlowRule | |
KRATOS_CLASS_POINTER_DEFINITION (NonAssociativeExplicitPlasticFlowRule) | |
Pointer definition of NonLinearAssociativePlasticFlowRule. More... | |
NonAssociativeExplicitPlasticFlowRule () | |
Default constructor. More... | |
NonAssociativeExplicitPlasticFlowRule (YieldCriterionPointer pYieldCriterion) | |
Initialization constructor. More... | |
NonAssociativeExplicitPlasticFlowRule (const NonAssociativeExplicitPlasticFlowRule &rOther) | |
Copy constructor. More... | |
NonAssociativeExplicitPlasticFlowRule & | operator= (NonAssociativeExplicitPlasticFlowRule const &rOther) |
Assignment operator. More... | |
virtual | ~NonAssociativeExplicitPlasticFlowRule () |
Destructor. More... | |
FlowRule::Pointer | Clone () const override |
CLONE. More... | |
void | InitializeMaterial (YieldCriterionPointer &pYieldCriterion, HardeningLawPointer &pHardeningLaw, const Properties &rMaterialProperties) override |
void | InitializeMaterial (const Properties &rMaterialProperties) override |
virtual bool | CalculateReturnMappingImpl (RadialReturnVariables &rReturnMappingVariables, const Matrix &rIncrementalDeformationGradient, Matrix &rStressMatrix, Matrix &rNewElasticLeftCauchyGreen) |
virtual bool | CalculateReturnMappingExpl (RadialReturnVariables &rReturnMappingVariables, const Matrix &rIncrementalDeformationGradient, Matrix &rStressMatrix, Matrix &rNewElasticLeftCauchyGreen) |
bool | CalculateReturnMapping (RadialReturnVariables &rReturnMappingVariables, const Matrix &rIncrementalDeformationGradient, Matrix &rStressMatrix, Matrix &rNewElasticLeftCauchyGreen) override |
virtual bool | CalculateReturnMappingImplex (RadialReturnVariables &rReturnMappingVariables, const Matrix &rIncrementalDeformationGradient, Matrix &rStressMatrix, Matrix &rNewElasticLeftCauchyGreen) |
virtual bool | CalculateReturnMappingImplex2 (RadialReturnVariables &rReturnMappingVariables, const Matrix &rIncrementalDeformationGradient, Matrix &rStressMatrix, Matrix &rNewElasticLeftCauchyGreen) |
bool | UpdateInternalVariables (RadialReturnVariables &rReturnMappingVariables) override |
void | ComputeElastoPlasticTangentMatrix (const RadialReturnVariables &rReturnMappingVariables, const Matrix &rLeftCauchyGreenMatrix, const double &rAlpha, Matrix &rElasticMatrix) override |
Matrix | ComputeKirchhoffStressMatrix (const Matrix &rLeftCauchyGreenMatrix) override |
Public Member Functions inherited from Kratos::FlowRule | |
FlowRule () | |
Default constructor. More... | |
FlowRule (YieldCriterionPointer pYieldCriterion) | |
Initialization constructor. More... | |
FlowRule (FlowRule const &rOther) | |
Copy constructor. More... | |
FlowRule & | operator= (FlowRule const &rOther) |
Assignment operator. More... | |
virtual | ~FlowRule () |
Destructor. More... | |
FlowRule () | |
Default constructor. More... | |
FlowRule (YieldCriterionPointer pYieldCriterion) | |
Initialization constructor. More... | |
FlowRule (FlowRule const &rOther) | |
Copy constructor. More... | |
FlowRule & | operator= (FlowRule const &rOther) |
Assignment operator. More... | |
virtual | ~FlowRule () |
Destructor. More... | |
const Properties & | GetProperties () |
const InternalVariables & | GetInternalVariables () |
InternalVariables & | SetInternalVariables () |
const ThermalVariables & | GetThermalVariables () |
virtual bool | CalculateReturnMapping (RadialReturnVariables &rReturnMappingVariables, Matrix &rIsoStressMatrix) |
virtual void | CalculateScalingFactors (const RadialReturnVariables &rReturnMappingVariables, PlasticFactors &rScalingFactors) |
const Properties & | GetProperties () |
const InternalVariables & | GetInternalVariables () |
InternalVariables & | SetInternalVariables () |
const ThermalVariables & | GetThermalVariables () |
virtual bool | CalculateReturnMapping (RadialReturnVariables &rReturnMappingVariables, Matrix &rIsoStressMatrix) |
virtual void | CalculateScalingFactors (const RadialReturnVariables &rReturnMappingVariables, PlasticFactors &rScalingFactors) |
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 (FlowRule) | |
Pointer definition of FlowRule. More... | |
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 (FlowRule) | |
Pointer definition of FlowRule. More... | |
Protected Member Functions | |
Protected Operations | |
void | CalculateKirchhoffStressVector (const Vector &rHencyStrainVector, Vector &rKirchhoffStressVector) override |
void | ComputeElasticMatrix (const Vector &rElasticStrainVector, Matrix &rElasticMatrix) override |
void | ComputePlasticHardeningParameter (const Vector &rHenckyStrainVector, const double &rAlpha, double &rH) override |
void | CalculatePlasticPotentialDerivatives (const Vector &rStressVector, Vector &rFirstDerivative, Matrix &rSecondDerivative) override |
Protected Member Functions inherited from Kratos::NonAssociativeExplicitPlasticFlowRule | |
Matrix | MyCrossProduct (const Matrix &rM, const Vector &rA, const Vector &rB) |
bool & | EvaluateElastoPlasticUnloadingCondition (bool &rUnloadingCondition, const Matrix &rElasticLeftCauchyGreen, const Matrix &rDeltaDeformationGradient, const InternalVariables &rPlasticVariables, const double &rTolerance) |
void | CalculateOneExplicitPlasticStep (const Matrix &rDeltaDeformationGradient, const Matrix &rPreviousElasticLeftCauchyGreen, const double &rPreviousEquivalentPlasticStrain, Matrix &rNewElasticLeftCauchyGreen, double &rNewEquivalentPlasticStrain, double &rNewPlasticShearStrain, double &rDeltaPlastic) |
Matrix | ConvertHenckyStrainToCauchyGreenTensor (const Vector &rElasticHenckyStrain) |
Vector | ConvertCauchyGreenTensorToHenckyStrain (const Matrix &rCauchyGreenTensor) |
void | UpdateDerivatives (const Vector &rHenckyElasticStrain, AuxiliarDerivativesStructure &rAuxiliarDerivatives, const double &EquivalentPlasticStrian) |
void | ComputeSubstepIncrementalDeformationGradient (const Matrix &rDeformationGradient, const double &rReferenceConfiguration, const double &rFinalConfiguration, Matrix &rIncrementalDeformationGradient) |
void | CalculateOneExplicitStep (const Matrix &rDeltaDeformationGradient, const Matrix &rPreviousElasticLeftCauchyGreen, const RadialReturnVariables &rReturnMappingVariables, Matrix &rNewElasticLeftCauchyGreen, Vector &rNewStressVector, const bool &rElastoPlasticBool, ExplicitStressUpdateInformation &rStressUpdateInformation) |
void | CalculateExplicitSolutionWithChange (const Matrix &rDeltaDeformationGradient, const Matrix &rPreviousElasticLeftCauchyGreen, RadialReturnVariables &rReturnMappingVariables, Matrix &rNewElasticLeftCauchyGreen, Vector &rNewStressVector, const double &rTolerance) |
void | CalculateExplicitSolution (const Matrix &rDeltaDeformationGradient, const Matrix &rPreviousElasticLeftCauchyGreen, RadialReturnVariables &rReturnMappingVariables, Matrix &rNewElasticLeftCauchyGreen, Vector &rNewStressVector, const bool &rElastoPlasticBool, const double &rTolerance) |
void | CalculateKirchhoffStressVector (const Matrix &rElasticLeftCauchyGreen, Vector &rStressVector) |
void | UpdateRadialReturnVariables (RadialReturnVariables &rReturnMappingVariables, const ExplicitStressUpdateInformation &rStressUpdateInformation) |
void | ReturnStressToYieldSurface4 (RadialReturnVariables &rReturnMappingVariables, Matrix &rElasticLeftCauchyGreen, Vector &rStressVector, double &rDrift, const double &rTolerance) |
void | ReturnStressToYieldSurface (RadialReturnVariables &rReturnMappingVariables, Matrix &rElasticLeftCauchyGreen, Vector &rStressVector, double &rDrift, const double &rTolerance) |
void | PerformSomeSortOfLineSearch (Vector &rHenckyElastic, double &rGamma, double &rAlpha, const Vector &rHenckyTrialElastic, const double &rAlphaTrial, double &rReidualNorm, const double &rPreviousError, const Vector &rDeltaX) |
Protected Member Functions inherited from Kratos::FlowRule | |
virtual double & | CalculateStressNorm (Matrix &rStressMatrix, double &rStressNorm) |
virtual double & | CalculateStressNorm (Matrix &rStressMatrix, double &rStressNorm) |
Serialization | |
class | Serializer |
Additional Inherited Members | |
Public Types inherited from Kratos::FlowRule | |
typedef YieldCriterion::Pointer | YieldCriterionPointer |
typedef HardeningLaw::Pointer | HardeningLawPointer |
typedef const Properties * | PropertiesPointer |
typedef YieldCriterion::Pointer | YieldCriterionPointer |
typedef HardeningLaw::Pointer | HardeningLawPointer |
typedef const Properties * | PropertiesPointer |
Protected Attributes inherited from Kratos::NonAssociativeExplicitPlasticFlowRule | |
double | mPlasticMultiplierVelocity |
Protected Attributes inherited from Kratos::FlowRule | |
InternalVariables | mInternalVariables |
ThermalVariables | mThermalVariables |
YieldCriterionPointer | mpYieldCriterion |
Short class definition.
Detail class definition.
Kratos::J2ExplicitFlowRule::J2ExplicitFlowRule | ( | ) |
Default constructor.
Kratos::J2ExplicitFlowRule::J2ExplicitFlowRule | ( | YieldCriterionPointer | pYieldCriterion | ) |
Initialization constructor.
Kratos::J2ExplicitFlowRule::J2ExplicitFlowRule | ( | J2ExplicitFlowRule const & | rOther | ) |
Copy constructor.
|
virtual |
Destructor.
|
overrideprotectedvirtual |
Reimplemented from Kratos::NonAssociativeExplicitPlasticFlowRule.
|
overrideprotectedvirtual |
Reimplemented from Kratos::NonAssociativeExplicitPlasticFlowRule.
Reimplemented in Kratos::TrescaExplicitFlowRule.
|
overridevirtual |
Clone function (has to be implemented by any derived class)
Reimplemented from Kratos::FlowRule.
Reimplemented in Kratos::TrescaExplicitFlowRule.
|
overrideprotectedvirtual |
Reimplemented from Kratos::NonAssociativeExplicitPlasticFlowRule.
|
overrideprotectedvirtual |
Reimplemented from Kratos::NonAssociativeExplicitPlasticFlowRule.
Reimplemented in Kratos::TrescaExplicitFlowRule.
Kratos::J2ExplicitFlowRule::KRATOS_CLASS_POINTER_DEFINITION | ( | J2ExplicitFlowRule | ) |
Pointer definition of NonLinearAssociativePlasticFlowRule.
J2ExplicitFlowRule & Kratos::J2ExplicitFlowRule::operator= | ( | J2ExplicitFlowRule const & | rOther | ) |
Assignment operator.
|
friend |