ComputeFiniteStrainElasticStress computes the stress following elasticity theory for finite strains. More...
#include <ComputeFiniteStrainElasticStress.h>
Public Types | |
| typedef DerivativeMaterialPropertyNameInterface::SymbolName | SymbolName |
Public Member Functions | |
| ComputeFiniteStrainElasticStress (const InputParameters ¶meters) | |
| void | initialSetup () override |
| virtual void | initQpStatefulProperties () override |
| const GenericMaterialProperty< U, is_ad > & | getDefaultMaterialProperty (const std::string &name) |
| const GenericMaterialProperty< U, is_ad > & | getDefaultMaterialPropertyByName (const std::string &name) |
| void | validateDerivativeMaterialPropertyBase (const std::string &base) |
| const MaterialPropertyName | derivativePropertyName (const MaterialPropertyName &base, const std::vector< SymbolName > &c) const |
| const MaterialPropertyName | derivativePropertyNameFirst (const MaterialPropertyName &base, const SymbolName &c1) const |
| const MaterialPropertyName | derivativePropertyNameSecond (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2) const |
| const MaterialPropertyName | derivativePropertyNameThird (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2, const SymbolName &c3) const |
| GenericMaterialProperty< U, is_ad > & | declarePropertyDerivative (const std::string &base, const std::vector< VariableName > &c) |
| GenericMaterialProperty< U, is_ad > & | declarePropertyDerivative (const std::string &base, const std::vector< SymbolName > &c) |
| GenericMaterialProperty< U, is_ad > & | declarePropertyDerivative (const std::string &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="") |
| GenericMaterialProperty< U, is_ad > & | declarePropertyDerivative (const std::string &base, const std::vector< VariableName > &c) |
| GenericMaterialProperty< U, is_ad > & | declarePropertyDerivative (const std::string &base, const std::vector< SymbolName > &c) |
| GenericMaterialProperty< U, is_ad > & | declarePropertyDerivative (const std::string &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="") |
| const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivative (const std::string &base, const std::vector< VariableName > &c) |
| const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivative (const std::string &base, const std::vector< SymbolName > &c) |
| const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivative (const std::string &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="") |
| const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivative (const std::string &base, const SymbolName &c1, unsigned int v2, unsigned int v3=libMesh::invalid_uint) |
| const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivative (const std::string &base, unsigned int v1, unsigned int v2=libMesh::invalid_uint, unsigned int v3=libMesh::invalid_uint) |
| const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivative (const std::string &base, const std::vector< VariableName > &c) |
| const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivative (const std::string &base, const std::vector< SymbolName > &c) |
| const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivative (const std::string &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="") |
| const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivative (const std::string &base, const SymbolName &c1, unsigned int v2, unsigned int v3=libMesh::invalid_uint) |
| const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivative (const std::string &base, unsigned int v1, unsigned int v2=libMesh::invalid_uint, unsigned int v3=libMesh::invalid_uint) |
| const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const std::vector< VariableName > &c) |
| const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const std::vector< SymbolName > &c) |
| const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="") |
| const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const std::vector< VariableName > &c) |
| const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const std::vector< SymbolName > &c) |
| const GenericMaterialProperty< U, is_ad > & | getMaterialPropertyDerivativeByName (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2="", const SymbolName &c3="") |
| void | validateCoupling (const MaterialPropertyName &base, const std::vector< VariableName > &c, bool validate_aux=true) |
| void | validateCoupling (const MaterialPropertyName &base, const VariableName &c1="", const VariableName &c2="", const VariableName &c3="") |
| void | validateCoupling (const MaterialPropertyName &base, const std::vector< VariableName > &c, bool validate_aux=true) |
| void | validateCoupling (const MaterialPropertyName &base, const VariableName &c1="", const VariableName &c2="", const VariableName &c3="") |
| void | validateNonlinearCoupling (const MaterialPropertyName &base, const VariableName &c1="", const VariableName &c2="", const VariableName &c3="") |
| void | validateNonlinearCoupling (const MaterialPropertyName &base, const VariableName &c1="", const VariableName &c2="", const VariableName &c3="") |
| const MaterialPropertyName | propertyName (const MaterialPropertyName &base, const std::vector< SymbolName > &c) const |
| const MaterialPropertyName | propertyName (const MaterialPropertyName &base, const std::vector< SymbolName > &c) const |
| const MaterialPropertyName | propertyNameFirst (const MaterialPropertyName &base, const SymbolName &c1) const |
| const MaterialPropertyName | propertyNameFirst (const MaterialPropertyName &base, const SymbolName &c1) const |
| const MaterialPropertyName | propertyNameSecond (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2) const |
| const MaterialPropertyName | propertyNameSecond (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2) const |
| const MaterialPropertyName | propertyNameThird (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2, const SymbolName &c3) const |
| const MaterialPropertyName | propertyNameThird (const MaterialPropertyName &base, const SymbolName &c1, const SymbolName &c2, const SymbolName &c3) const |
Static Public Member Functions | |
| static InputParameters | validParams () |
Protected Member Functions | |
| virtual void | computeQpStress () override |
| Compute the stress and store it in the _stress material property for the current quadrature point. | |
| virtual void | computeQpProperties () override |
| bool | hasGuaranteedMaterialProperty (const MaterialPropertyName &prop, Guarantee guarantee) |
Protected Attributes | |
| const std::string | _elasticity_tensor_name |
| Name of the elasticity tensor material property. | |
| const MaterialProperty< RankFourTensor > & | _elasticity_tensor |
| Elasticity tensor material property. | |
| MaterialProperty< RankTwoTensor > & | _rotation_total |
| Rotation up to current step "n" to compute anisotropic elasticity tensor. | |
| const MaterialProperty< RankTwoTensor > & | _rotation_total_old |
| Rotation up to "n - 1" (previous) step to compute anisotropic elasticity tensor. | |
| const MaterialProperty< RankTwoTensor > & | _strain_increment |
| Strain increment material property. | |
| const MaterialProperty< RankTwoTensor > & | _rotation_increment |
| Rotation increment material property. | |
| const MaterialProperty< RankTwoTensor > & | _stress_old |
| Old state of the stress tensor material property. | |
| const MaterialProperty< RankTwoTensor > & | _elastic_strain_old |
| The old elastic strain is used to calculate the old stress in the case of variable elasticity tensors. | |
| const std::string | _base_name |
| Base name prepended to all material property names to allow for multi-material systems. | |
| const MaterialProperty< RankTwoTensor > & | _mechanical_strain |
| Mechanical strain material property. | |
| MaterialProperty< RankTwoTensor > & | _stress |
| Stress material property. | |
| MaterialProperty< RankTwoTensor > & | _elastic_strain |
| Elastic strain material property. | |
| const MaterialProperty< RankTwoTensor > & | _extra_stress |
| Extra stress tensor. | |
| std::vector< const Function * > | _initial_stress_fcn |
| initial stress components | |
| MaterialProperty< RankFourTensor > & | _Jacobian_mult |
| derivative of stress w.r.t. strain (_dstress_dstrain) | |
Private Member Functions | |
| bool | haveMaterialProperty (const std::string &prop_name) |
| std::vector< VariableName > | buildVariableVector (const VariableName &c1, const VariableName &c2, const VariableName &c3) |
| void | validateCouplingHelper (const MaterialPropertyName &base, const std::vector< VariableName > &c, const System &system, std::vector< VariableName > &missing) |
| bool | isNotObjectVariable (const VariableName &name) |
Private Attributes | |
| FEProblemBase & | _dmi_fe_problem |
| const InputParameters & | _gc_params |
| Parameters of the object with this interface. | |
| FEProblemBase *const | _gc_feproblem |
| Reference to the FEProblemBase class. | |
| BlockRestrictable *const | _gc_block_restrict |
| Access block restrictions of the object with this interface. | |
ComputeFiniteStrainElasticStress computes the stress following elasticity theory for finite strains.
Definition at line 19 of file ComputeFiniteStrainElasticStress.h.
| ComputeFiniteStrainElasticStress::ComputeFiniteStrainElasticStress | ( | const InputParameters & | parameters | ) |
Definition at line 22 of file ComputeFiniteStrainElasticStress.C.
|
overrideprotectedvirtualinherited |
Definition at line 44 of file ComputeGeneralStressBase.C.
|
overrideprotectedvirtual |
Compute the stress and store it in the _stress material property for the current quadrature point.
Implements ComputeGeneralStressBase.
Reimplemented in ComputeMultipleInelasticCosseratStress, ComputeMultipleInelasticStressBase, ComputeSmearedCrackingStress, and ComputeMultipleCrystalPlasticityStress.
Definition at line 53 of file ComputeFiniteStrainElasticStress.C.
Referenced by ComputeMultipleInelasticCosseratStress::computeQpStress().
|
protectedinherited |
Definition at line 28 of file GuaranteeConsumer.C.
Referenced by computeQpStress(), LagrangianStressDivergenceBase::initialSetup(), ADComputeMultipleInelasticStress::initialSetup(), ADComputeSmearedCrackingStress::initialSetup(), ComputeLinearElasticPFFractureStress::initialSetup(), ComputeMultipleInelasticStressBase::initialSetup(), ComputeSmearedCrackingStress::initialSetup(), ComputeLagrangianStressBase::initialSetup(), ComputeStVenantKirchhoffStress::initialSetup(), and CriticalTimeStep::initialSetup().
|
override |
Definition at line 39 of file ComputeFiniteStrainElasticStress.C.
Referenced by ComputeSmearedCrackingStress::initialSetup().
|
overridevirtual |
Reimplemented from ComputeGeneralStressBase.
Reimplemented in ComputeMultipleInelasticCosseratStress, ComputeMultipleInelasticStressBase, ComputeSmearedCrackingStress, and ComputeMultipleCrystalPlasticityStress.
Definition at line 44 of file ComputeFiniteStrainElasticStress.C.
Referenced by ComputeMultipleInelasticCosseratStress::initQpStatefulProperties(), and ComputeSmearedCrackingStress::initQpStatefulProperties().
|
static |
Definition at line 15 of file ComputeFiniteStrainElasticStress.C.
Referenced by ComputeMultipleInelasticStressBase::validParams(), and ComputeMultipleCrystalPlasticityStress::validParams().
|
protectedinherited |
Base name prepended to all material property names to allow for multi-material systems.
Definition at line 43 of file ComputeGeneralStressBase.h.
Referenced by ComputeCosseratLinearElasticStress::initialSetup(), and ComputeLinearElasticStress::initialSetup().
|
protectedinherited |
Elastic strain material property.
Definition at line 50 of file ComputeGeneralStressBase.h.
Referenced by ComputeSmearedCrackingStress::computeCrackStrainAndOrientation(), ComputeMultiPlasticityStress::computeQpStress(), FiniteStrainPlasticMaterial::computeQpStress(), ComputeCosseratLinearElasticStress::computeQpStress(), computeQpStress(), ComputeLinearElasticStress::computeQpStress(), ComputeLinearViscoelasticStress::computeQpStress(), ComputeSmearedCrackingStress::computeQpStress(), ComputeMultipleInelasticStressBase::computeQpStressIntermediateConfiguration(), ComputeMultipleInelasticStressBase::finiteStrainRotation(), and ComputeGeneralStressBase::initQpStatefulProperties().
|
protected |
The old elastic strain is used to calculate the old stress in the case of variable elasticity tensors.
Definition at line 51 of file ComputeFiniteStrainElasticStress.h.
Referenced by computeQpStress().
|
protected |
Elasticity tensor material property.
Definition at line 35 of file ComputeFiniteStrainElasticStress.h.
Referenced by ComputeMultipleInelasticStressBase::computeAdmissibleState(), ComputeMultipleInelasticStressBase::computeQpJacobianMult(), ComputeMultipleInelasticCosseratStress::computeQpJacobianMult(), computeQpStress(), ComputeMultipleInelasticStressBase::computeQpStressIntermediateConfiguration(), ComputeCreepPlasticityStress::computeStress(), ComputeSmearedCrackingStress::updateCrackingStateAndStress(), ComputeSmearedCrackingStress::updateLocalElasticityTensor(), ComputeCreepPlasticityStress::updateQpState(), ComputeMultipleInelasticStress::updateQpState(), and ComputeMultipleInelasticStressBase::updateQpStateSingleModel().
|
protected |
Name of the elasticity tensor material property.
Definition at line 33 of file ComputeFiniteStrainElasticStress.h.
Referenced by computeQpStress(), ComputeMultipleInelasticStressBase::initialSetup(), and ComputeSmearedCrackingStress::initialSetup().
|
protectedinherited |
Extra stress tensor.
Definition at line 53 of file ComputeGeneralStressBase.h.
Referenced by ComputeGeneralStressBase::computeQpProperties().
|
privateinherited |
Access block restrictions of the object with this interface.
Definition at line 41 of file GuaranteeConsumer.h.
Referenced by GuaranteeConsumer::hasGuaranteedMaterialProperty().
|
privateinherited |
Reference to the FEProblemBase class.
Definition at line 38 of file GuaranteeConsumer.h.
Referenced by GuaranteeConsumer::hasGuaranteedMaterialProperty().
|
privateinherited |
Parameters of the object with this interface.
Definition at line 35 of file GuaranteeConsumer.h.
|
protectedinherited |
initial stress components
Definition at line 56 of file ComputeGeneralStressBase.h.
|
protectedinherited |
derivative of stress w.r.t. strain (_dstress_dstrain)
Definition at line 59 of file ComputeGeneralStressBase.h.
Referenced by ComputeStrainIncrementBasedStress::computeQpJacobian(), FiniteStrainHyperElasticViscoPlastic::computeQpJacobian(), ComputeMultipleInelasticStressBase::computeQpJacobianMult(), ComputeMultipleInelasticCosseratStress::computeQpJacobianMult(), ComputeMultiPlasticityStress::computeQpStress(), FiniteStrainPlasticMaterial::computeQpStress(), ComputeCosseratLinearElasticStress::computeQpStress(), computeQpStress(), ComputeLinearElasticPFFractureStress::computeQpStress(), ComputeLinearElasticStress::computeQpStress(), ComputeLinearViscoelasticStress::computeQpStress(), ComputeMultipleInelasticStressBase::computeQpStress(), ComputeSmearedCrackingStress::computeQpStress(), ComputeMultipleCrystalPlasticityStress::computeQpStress(), ComputeMultipleInelasticStressBase::computeQpStressIntermediateConfiguration(), ComputeLinearElasticPFFractureStress::computeStrainSpectral(), ComputeLinearElasticPFFractureStress::computeStrainVolDev(), ComputeLinearElasticPFFractureStress::computeStressSpectral(), FiniteStrainUObasedCP::elasticTangentModuli(), FiniteStrainUObasedCP::elastoPlasticTangentModuli(), ComputeMultipleInelasticStressBase::finiteStrainRotation(), ComputeMultiPlasticityStress::postReturnMap(), FiniteStrainCrystalPlasticity::postSolveQp(), FiniteStrainCrystalPlasticity::preSolveQp(), and ComputeMultipleInelasticStressBase::updateQpStateSingleModel().
|
protectedinherited |
Mechanical strain material property.
Definition at line 46 of file ComputeGeneralStressBase.h.
Referenced by ComputeStrainIncrementBasedStress::computeQpStress(), FiniteStrainPlasticMaterial::computeQpStress(), ComputeCosseratLinearElasticStress::computeQpStress(), computeQpStress(), ComputeLinearElasticPFFractureStress::computeQpStress(), ComputeLinearElasticStress::computeQpStress(), ComputeLinearViscoelasticStress::computeQpStress(), ComputeLinearElasticPFFractureStress::computeStrainSpectral(), ComputeLinearElasticPFFractureStress::computeStrainVolDev(), and ComputeLinearElasticPFFractureStress::computeStressSpectral().
|
protected |
Rotation increment material property.
Definition at line 43 of file ComputeFiniteStrainElasticStress.h.
Referenced by ComputeMultipleInelasticStressBase::computeAdmissibleState(), computeQpStress(), ComputeMultipleInelasticCosseratStress::computeQpStress(), ComputeMultipleInelasticStressBase::computeQpStress(), ComputeSmearedCrackingStress::computeQpStress(), and ComputeMultipleInelasticStressBase::finiteStrainRotation().
|
protected |
Rotation up to current step "n" to compute anisotropic elasticity tensor.
Definition at line 37 of file ComputeFiniteStrainElasticStress.h.
Referenced by computeQpStress(), and initQpStatefulProperties().
|
protected |
Rotation up to "n - 1" (previous) step to compute anisotropic elasticity tensor.
Definition at line 39 of file ComputeFiniteStrainElasticStress.h.
Referenced by computeQpStress().
|
protected |
Strain increment material property.
Definition at line 41 of file ComputeFiniteStrainElasticStress.h.
Referenced by computeQpStress().
|
protectedinherited |
Stress material property.
Definition at line 48 of file ComputeGeneralStressBase.h.
Referenced by ComputeMultipleInelasticStressBase::computeAdmissibleState(), ComputeMultipleInelasticCosseratStress::computeAdmissibleState(), ComputeGeneralStressBase::computeQpProperties(), ComputeMultiPlasticityStress::computeQpStress(), ComputeStrainIncrementBasedStress::computeQpStress(), FiniteStrainPlasticMaterial::computeQpStress(), AbaqusUMATStress::computeQpStress(), ComputeCosseratLinearElasticStress::computeQpStress(), computeQpStress(), ComputeLinearElasticPFFractureStress::computeQpStress(), ComputeLinearElasticStress::computeQpStress(), ComputeLinearViscoelasticStress::computeQpStress(), ComputeMultipleInelasticStressBase::computeQpStress(), ComputeSmearedCrackingStress::computeQpStress(), ComputeMultipleCrystalPlasticityStress::computeQpStress(), ComputeMultipleInelasticStressBase::computeQpStressIntermediateConfiguration(), ComputeLinearElasticPFFractureStress::computeStrainSpectral(), ComputeLinearElasticPFFractureStress::computeStrainVolDev(), ComputeLinearElasticPFFractureStress::computeStressSpectral(), ComputeCreepPlasticityStress::computeTangentOperators(), ComputeMultipleInelasticStressBase::finiteStrainRotation(), FiniteStrainCrystalPlasticity::initQpStatefulProperties(), FiniteStrainUObasedCP::initQpStatefulProperties(), FiniteStrainHyperElasticViscoPlastic::initQpStatefulProperties(), ComputeGeneralStressBase::initQpStatefulProperties(), ComputeMultiPlasticityStress::postReturnMap(), FiniteStrainCrystalPlasticity::postSolveQp(), FiniteStrainUObasedCP::postSolveQp(), FiniteStrainHyperElasticViscoPlastic::postSolveQp(), ComputeSmearedCrackingStress::updateCrackingStateAndStress(), ComputeCreepPlasticityStress::updateQpState(), ComputeMultipleInelasticStress::updateQpState(), and ComputeMultipleInelasticStressBase::updateQpStateSingleModel().
|
protected |
Old state of the stress tensor material property.
Definition at line 45 of file ComputeFiniteStrainElasticStress.h.
Referenced by ComputeMultipleInelasticStressBase::computeAdmissibleState(), ComputeMultipleInelasticStressBase::computeQpStress(), ComputeMultipleInelasticStressBase::computeQpStressIntermediateConfiguration(), ComputeCreepPlasticityStress::computeStress(), ComputeMultipleInelasticStress::updateQpState(), and ComputeMultipleInelasticStressBase::updateQpStateSingleModel().