ComputePFFractureStressBase is the base class for stress in phase field fracture model. More...
#include <ComputePFFractureStressBase.h>
Public Types | |
| typedef DerivativeMaterialPropertyNameInterface::SymbolName | SymbolName |
Public Member Functions | |
| ComputePFFractureStressBase (const InputParameters ¶meters) | |
| 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 | initQpStatefulProperties () override |
| virtual void | computeQpProperties () override |
| virtual void | computeQpStress ()=0 |
| Compute the stress and store it in the _stress material property for the current quadrature point. | |
Protected Attributes | |
| const std::string | _elasticity_tensor_name |
| Name of the elasticity tensor material property. | |
| const MaterialProperty< RankFourTensor > & | _elasticity_tensor |
| Elasticity tensor material property. | |
| const VariableValue & | _c |
| Coupled order parameter defining the crack. | |
| const MaterialProperty< Real > & | _l |
| Material property defining crack width, declared elsewhere. | |
| const MaterialProperty< Real > & | _gc |
| Material property defining gc parameter, declared elsewhere. | |
| const MaterialProperty< Real > & | _pressure |
| Material property defining pressure, declared elsewhere. | |
| bool | _use_current_hist |
| Use current value of history variable. | |
| bool | _use_snes_vi_solver |
| Use PETSc's VI (Reduced space active set solvers for variational inequalities based on Newton's method) solver. | |
| MaterialProperty< Real > & | _H |
| History variable that prevents crack healing, declared in this material. | |
| const MaterialProperty< Real > & | _H_old |
| Old value of history variable. | |
| const MaterialProperty< Real > & | _barrier |
| material property for fracture energy barrier | |
| MaterialProperty< Real > & | _E |
| Material property for elastic energy. | |
| MaterialProperty< Real > & | _dEdc |
| Derivative of elastic energy w.r.t damage variable. | |
| MaterialProperty< Real > & | _d2Ed2c |
| Second-order derivative of elastic energy w.r.t damage variable. | |
| MaterialProperty< RankTwoTensor > & | _dstress_dc |
| Derivative of stress w.r.t damage variable. | |
| MaterialProperty< RankTwoTensor > & | _d2Fdcdstrain |
| Second-order derivative of elastic energy w.r.t damage variable and strain. | |
| const MaterialProperty< Real > & | _D |
| Material property for energetic degradation function. | |
| const MaterialProperty< Real > & | _dDdc |
| Derivative of degradation function w.r.t damage variable. | |
| const MaterialProperty< Real > & | _d2Dd2c |
| Second-order derivative of degradation w.r.t damage variable. | |
| const MaterialProperty< Real > & | _I |
| Material property for damage indicator function. | |
| const MaterialProperty< Real > & | _dIdc |
| Derivative of damage indicator function w.r.t damage variable. | |
| const MaterialProperty< Real > & | _d2Id2c |
| Second-order derivative of damage indicator function w.r.t damage variable. | |
| 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 |
ComputePFFractureStressBase is the base class for stress in phase field fracture model.
Definition at line 17 of file ComputePFFractureStressBase.h.
| ComputePFFractureStressBase::ComputePFFractureStressBase | ( | const InputParameters & | parameters | ) |
Definition at line 38 of file ComputePFFractureStressBase.C.
|
overrideprotectedvirtualinherited |
Definition at line 44 of file ComputeGeneralStressBase.C.
|
protectedpure virtualinherited |
Compute the stress and store it in the _stress material property for the current quadrature point.
Implemented in ComputeMultiPlasticityStress, ComputeStrainIncrementBasedStress, FiniteStrainCrystalPlasticity, FiniteStrainUObasedCP, FiniteStrainHyperElasticViscoPlastic, FiniteStrainPlasticMaterial, AbaqusUMATStress, ComputeCosseratLinearElasticStress, ComputeFiniteStrainElasticStress, ComputeLinearElasticPFFractureStress, ComputeLinearElasticStress, ComputeLinearViscoelasticStress, ComputeMultipleInelasticCosseratStress, ComputeMultipleInelasticStressBase, ComputeSmearedCrackingStress, ComputeMultipleCrystalPlasticityStress, and ComputeCosseratStressBase.
Referenced by ComputeGeneralStressBase::computeQpProperties().
|
overrideprotectedvirtual |
Reimplemented from ComputeGeneralStressBase.
Definition at line 70 of file ComputePFFractureStressBase.C.
|
static |
Definition at line 13 of file ComputePFFractureStressBase.C.
Referenced by ComputeLinearElasticPFFractureStress::validParams().
|
protected |
material property for fracture energy barrier
Definition at line 57 of file ComputePFFractureStressBase.h.
Referenced by ComputeLinearElasticPFFractureStress::computeQpStress().
|
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().
|
protected |
Coupled order parameter defining the crack.
Definition at line 33 of file ComputePFFractureStressBase.h.
|
protected |
Material property for energetic degradation function.
Definition at line 75 of file ComputePFFractureStressBase.h.
Referenced by ComputeLinearElasticPFFractureStress::computeQpStress(), ComputeLinearElasticPFFractureStress::computeStrainSpectral(), ComputeLinearElasticPFFractureStress::computeStrainVolDev(), and ComputeLinearElasticPFFractureStress::computeStressSpectral().
|
protected |
Second-order derivative of degradation w.r.t damage variable.
Definition at line 81 of file ComputePFFractureStressBase.h.
Referenced by ComputeLinearElasticPFFractureStress::computeQpStress().
|
protected |
Second-order derivative of elastic energy w.r.t damage variable.
Definition at line 66 of file ComputePFFractureStressBase.h.
Referenced by ComputeLinearElasticPFFractureStress::computeQpStress().
|
protected |
Second-order derivative of elastic energy w.r.t damage variable and strain.
Definition at line 72 of file ComputePFFractureStressBase.h.
Referenced by ComputeLinearElasticPFFractureStress::computeQpStress(), ComputeLinearElasticPFFractureStress::computeStrainSpectral(), ComputeLinearElasticPFFractureStress::computeStrainVolDev(), and ComputeLinearElasticPFFractureStress::computeStressSpectral().
|
protected |
Second-order derivative of damage indicator function w.r.t damage variable.
Definition at line 90 of file ComputePFFractureStressBase.h.
Referenced by ComputeLinearElasticPFFractureStress::computeQpStress().
|
protected |
Derivative of degradation function w.r.t damage variable.
Definition at line 78 of file ComputePFFractureStressBase.h.
Referenced by ComputeLinearElasticPFFractureStress::computeQpStress(), ComputeLinearElasticPFFractureStress::computeStrainSpectral(), ComputeLinearElasticPFFractureStress::computeStrainVolDev(), and ComputeLinearElasticPFFractureStress::computeStressSpectral().
|
protected |
Derivative of elastic energy w.r.t damage variable.
Definition at line 63 of file ComputePFFractureStressBase.h.
Referenced by ComputeLinearElasticPFFractureStress::computeQpStress().
|
protected |
Derivative of damage indicator function w.r.t damage variable.
Definition at line 87 of file ComputePFFractureStressBase.h.
Referenced by ComputeLinearElasticPFFractureStress::computeQpStress(), ComputeLinearElasticPFFractureStress::computeStrainSpectral(), ComputeLinearElasticPFFractureStress::computeStrainVolDev(), and ComputeLinearElasticPFFractureStress::computeStressSpectral().
|
protected |
Derivative of stress w.r.t damage variable.
Definition at line 69 of file ComputePFFractureStressBase.h.
Referenced by ComputeLinearElasticPFFractureStress::computeQpStress(), ComputeLinearElasticPFFractureStress::computeStrainSpectral(), ComputeLinearElasticPFFractureStress::computeStrainVolDev(), and ComputeLinearElasticPFFractureStress::computeStressSpectral().
|
protected |
Material property for elastic energy.
Definition at line 60 of file ComputePFFractureStressBase.h.
Referenced by ComputeLinearElasticPFFractureStress::computeQpStress().
|
protectedinherited |
Elastic strain material property.
Definition at line 50 of file ComputeGeneralStressBase.h.
Referenced by ComputeSmearedCrackingStress::computeCrackStrainAndOrientation(), ComputeMultiPlasticityStress::computeQpStress(), FiniteStrainPlasticMaterial::computeQpStress(), ComputeCosseratLinearElasticStress::computeQpStress(), ComputeFiniteStrainElasticStress::computeQpStress(), ComputeLinearElasticStress::computeQpStress(), ComputeLinearViscoelasticStress::computeQpStress(), ComputeSmearedCrackingStress::computeQpStress(), ComputeMultipleInelasticStressBase::computeQpStressIntermediateConfiguration(), ComputeMultipleInelasticStressBase::finiteStrainRotation(), and ComputeGeneralStressBase::initQpStatefulProperties().
|
protected |
Elasticity tensor material property.
Definition at line 30 of file ComputePFFractureStressBase.h.
Referenced by ComputeLinearElasticPFFractureStress::computeQpStress(), ComputeLinearElasticPFFractureStress::computeStrainSpectral(), ComputeLinearElasticPFFractureStress::computeStrainVolDev(), and ComputeLinearElasticPFFractureStress::computeStressSpectral().
|
protected |
Name of the elasticity tensor material property.
Definition at line 28 of file ComputePFFractureStressBase.h.
Referenced by ComputeLinearElasticPFFractureStress::initialSetup().
|
protectedinherited |
Extra stress tensor.
Definition at line 53 of file ComputeGeneralStressBase.h.
Referenced by ComputeGeneralStressBase::computeQpProperties().
|
protected |
Material property defining gc parameter, declared elsewhere.
Definition at line 39 of file ComputePFFractureStressBase.h.
|
protected |
History variable that prevents crack healing, declared in this material.
Definition at line 51 of file ComputePFFractureStressBase.h.
Referenced by ComputeLinearElasticPFFractureStress::computeQpStress(), and initQpStatefulProperties().
|
protected |
Old value of history variable.
Definition at line 54 of file ComputePFFractureStressBase.h.
Referenced by ComputeLinearElasticPFFractureStress::computeQpStress().
|
protected |
Material property for damage indicator function.
Definition at line 84 of file ComputePFFractureStressBase.h.
Referenced by ComputeLinearElasticPFFractureStress::computeQpStress(), ComputeLinearElasticPFFractureStress::computeStrainSpectral(), ComputeLinearElasticPFFractureStress::computeStrainVolDev(), and ComputeLinearElasticPFFractureStress::computeStressSpectral().
|
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(), ComputeFiniteStrainElasticStress::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().
|
protected |
Material property defining crack width, declared elsewhere.
Definition at line 36 of file ComputePFFractureStressBase.h.
|
protectedinherited |
Mechanical strain material property.
Definition at line 46 of file ComputeGeneralStressBase.h.
Referenced by ComputeStrainIncrementBasedStress::computeQpStress(), FiniteStrainPlasticMaterial::computeQpStress(), ComputeCosseratLinearElasticStress::computeQpStress(), ComputeFiniteStrainElasticStress::computeQpStress(), ComputeLinearElasticPFFractureStress::computeQpStress(), ComputeLinearElasticStress::computeQpStress(), ComputeLinearViscoelasticStress::computeQpStress(), ComputeLinearElasticPFFractureStress::computeStrainSpectral(), ComputeLinearElasticPFFractureStress::computeStrainVolDev(), and ComputeLinearElasticPFFractureStress::computeStressSpectral().
|
protected |
Material property defining pressure, declared elsewhere.
Definition at line 42 of file ComputePFFractureStressBase.h.
Referenced by ComputeLinearElasticPFFractureStress::computeQpStress(), ComputeLinearElasticPFFractureStress::computeStrainSpectral(), ComputeLinearElasticPFFractureStress::computeStrainVolDev(), and ComputeLinearElasticPFFractureStress::computeStressSpectral().
|
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(), ComputeFiniteStrainElasticStress::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 |
Use current value of history variable.
Definition at line 45 of file ComputePFFractureStressBase.h.
Referenced by ComputeLinearElasticPFFractureStress::computeQpStress(), ComputeLinearElasticPFFractureStress::computeStrainSpectral(), ComputeLinearElasticPFFractureStress::computeStrainVolDev(), and ComputeLinearElasticPFFractureStress::computeStressSpectral().
|
protected |
Use PETSc's VI (Reduced space active set solvers for variational inequalities based on Newton's method) solver.
Definition at line 48 of file ComputePFFractureStressBase.h.
Referenced by ComputeLinearElasticPFFractureStress::computeQpStress().