Compute2DFiniteStrain defines a strain increment and a rotation increment for finite strains in 2D geometries, handling the out of plane strains. More...
#include <Compute2DFiniteStrain.h>
Public Types | |
| typedef DerivativeMaterialPropertyNameInterface::SymbolName | SymbolName |
Public Member Functions | |
| Compute2DFiniteStrain (const InputParameters ¶meters) | |
| void | initialSetup () override |
| virtual void | computeProperties () override |
| CreateMooseEnumClass (DecompMethod, TaylorExpansion, EigenSolution, HughesWinget) | |
| 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 () |
| static MooseEnum | decompositionType () |
Protected Member Functions | |
| virtual void | displacementIntegrityCheck () override |
| virtual Real | computeOutOfPlaneGradDisp ()=0 |
| Computes the current out-of-plane component of the displacement gradient; as a virtual function, this function is overwritten for the specific geometries defined by inheriting classes. | |
| virtual Real | computeOutOfPlaneGradDispOld ()=0 |
| Computes the old out-of-plane component of the displacement gradient; as a virtual function, this function is overwritten for the specific geometries defined by inheriting classes. | |
| virtual void | computeQpStrain () |
| virtual void | computeQpIncrements (RankTwoTensor &e, RankTwoTensor &r) |
| virtual void | initQpStatefulProperties () override |
| void | subtractEigenstrainIncrementFromStrain (RankTwoTensor &strain) |
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 |
Compute2DFiniteStrain defines a strain increment and a rotation increment for finite strains in 2D geometries, handling the out of plane strains.
Compute2DFiniteStrain contains a virtual method to define the out-of-plane strain as a general nonzero value in the inherited classes ComputePlaneFiniteStrain and ComputeAxisymmetricRZFiniteStrain.
Definition at line 21 of file Compute2DFiniteStrain.h.
| Compute2DFiniteStrain::Compute2DFiniteStrain | ( | const InputParameters & | parameters | ) |
Definition at line 27 of file Compute2DFiniteStrain.C.
|
protectedpure virtual |
Computes the current out-of-plane component of the displacement gradient; as a virtual function, this function is overwritten for the specific geometries defined by inheriting classes.
Implemented in ComputeAxisymmetricRZFiniteStrain, and ComputePlaneFiniteStrain.
Referenced by computeProperties().
|
protectedpure virtual |
Computes the old out-of-plane component of the displacement gradient; as a virtual function, this function is overwritten for the specific geometries defined by inheriting classes.
Implemented in ComputeAxisymmetricRZFiniteStrain, and ComputePlaneFiniteStrain.
Referenced by computeProperties().
|
overridevirtual |
Definition at line 57 of file Compute2DFiniteStrain.C.
|
protectedvirtualinherited |
Reimplemented in ComputeRSphericalFiniteStrain.
Definition at line 165 of file ComputeFiniteStrain.C.
Referenced by ComputeFiniteStrain::computeQpStrain().
|
protectedvirtualinherited |
Definition at line 118 of file ComputeFiniteStrain.C.
Referenced by Compute1DFiniteStrain::computeProperties(), computeProperties(), ComputeFiniteStrain::computeProperties(), and ComputeRSphericalFiniteStrain::computeProperties().
|
inherited |
|
staticinherited |
Definition at line 17 of file ComputeFiniteStrain.C.
Referenced by AbaqusUMATStress::validParams(), ComputeFiniteStrain::validParams(), and QuasiStaticSolidMechanicsPhysicsBase::validParams().
|
overrideprotectedvirtual |
Reimplemented from ComputeStrainBase.
Definition at line 132 of file Compute2DFiniteStrain.C.
|
override |
Definition at line 34 of file Compute2DFiniteStrain.C.
Referenced by ComputeAxisymmetricRZFiniteStrain::initialSetup().
|
overrideprotectedvirtualinherited |
Reimplemented from ComputeStrainBase.
Reimplemented in ComputeCosseratIncrementalSmallStrain.
Definition at line 49 of file ComputeIncrementalStrainBase.C.
Referenced by ComputeCosseratIncrementalSmallStrain::initQpStatefulProperties().
|
protectedinherited |
Definition at line 58 of file ComputeIncrementalStrainBase.C.
Referenced by ComputeIncrementalStrain::computeProperties(), ComputeCosseratIncrementalSmallStrain::computeQpProperties(), and ComputeFiniteStrain::computeQpStrain().
|
static |
Definition at line 15 of file Compute2DFiniteStrain.C.
Referenced by ComputeAxisymmetricRZFiniteStrain::validParams(), and ComputePlaneFiniteStrain::validParams().
|
protectedinherited |
Base name of the material system.
Definition at line 44 of file ComputeStrainBase.h.
Referenced by ComputeStrainBase::ComputeStrainBase().
|
protectedinherited |
Definition at line 56 of file ComputeStrainBase.h.
Referenced by computeProperties(), Compute2DSmallStrain::computeProperties(), ComputeFiniteStrain::computeProperties(), ComputeIncrementalStrain::computeProperties(), and ComputeSmallStrain::computeProperties().
|
protectedinherited |
Method for determining rotation and strain increments.
Definition at line 38 of file ComputeFiniteStrain.h.
Referenced by ComputeFiniteStrain::computeQpIncrements().
|
protectedinherited |
For HughesWinget kinematics.
Definition at line 44 of file ComputeFiniteStrain.h.
|
protectedinherited |
Definition at line 37 of file ComputeIncrementalStrainBase.h.
Referenced by Compute1DFiniteStrain::computeProperties(), computeProperties(), ComputeFiniteStrain::computeProperties(), ComputeRSphericalFiniteStrain::computeProperties(), ComputeCosseratIncrementalSmallStrain::computeQpProperties(), ComputeIncrementalStrain::computeTotalStrainIncrement(), Compute1DIncrementalStrain::computeTotalStrainIncrement(), Compute2DIncrementalStrain::computeTotalStrainIncrement(), ComputeRSphericalIncrementalStrain::computeTotalStrainIncrement(), and ComputeIncrementalStrainBase::initQpStatefulProperties().
|
protectedinherited |
Displacement variables.
Definition at line 38 of file ComputeStrainBase.h.
Referenced by ComputeAxisymmetric1DFiniteStrain::computeGradDispZZ(), ComputeAxisymmetric1DIncrementalStrain::computeGradDispZZ(), ComputeAxisymmetricRZFiniteStrain::computeOutOfPlaneGradDisp(), ComputeAxisymmetricRZIncrementalStrain::computeOutOfPlaneGradDisp(), ComputeAxisymmetricRZSmallStrain::computeOutOfPlaneStrain(), ComputeRSphericalFiniteStrain::computeProperties(), ComputeRSphericalSmallStrain::computeProperties(), ComputeStrainBase::ComputeStrainBase(), ComputeAxisymmetric1DSmallStrain::computeStrainZZ(), ComputeRSphericalIncrementalStrain::computeTotalStrainIncrement(), initialSetup(), Compute2DIncrementalStrain::initialSetup(), and Compute2DSmallStrain::initialSetup().
|
protectedinherited |
Definition at line 50 of file ComputeStrainBase.h.
Referenced by ComputeIncrementalStrainBase::ComputeIncrementalStrainBase(), and ComputeStrainBase::ComputeStrainBase().
|
protectedinherited |
Definition at line 51 of file ComputeStrainBase.h.
Referenced by Compute1DSmallStrain::computeProperties(), Compute2DSmallStrain::computeProperties(), ComputeRSphericalSmallStrain::computeProperties(), ComputeSmallStrain::computeProperties(), ComputeCosseratSmallStrain::computeQpProperties(), ComputeCrackTipEnrichmentSmallStrain::computeQpProperties(), ComputeStrainBase::ComputeStrainBase(), and ComputeIncrementalStrainBase::subtractEigenstrainIncrementFromStrain().
|
protectedinherited |
Definition at line 42 of file ComputeIncrementalStrainBase.h.
Referenced by ComputeIncrementalStrainBase::ComputeIncrementalStrainBase(), and ComputeIncrementalStrainBase::subtractEigenstrainIncrementFromStrain().
|
protectedinherited |
Definition at line 45 of file ComputeFiniteStrain.h.
|
protectedinherited |
Incremental deformation gradient.
Definition at line 35 of file ComputeFiniteStrain.h.
Referenced by Compute1DFiniteStrain::computeProperties(), computeProperties(), ComputeFiniteStrain::computeProperties(), ComputeRSphericalFiniteStrain::computeProperties(), ComputeFiniteStrain::computeQpIncrements(), and ComputeRSphericalFiniteStrain::computeQpIncrements().
|
protectedinherited |
Definition at line 53 of file ComputeStrainBase.h.
Referenced by ComputeSmallStrain::computeProperties(), and ComputeFiniteStrain::computeQpStrain().
|
protectedinherited |
Gradient of displacements.
Definition at line 41 of file ComputeStrainBase.h.
Referenced by Compute1DFiniteStrain::computeProperties(), Compute1DSmallStrain::computeProperties(), computeProperties(), Compute2DSmallStrain::computeProperties(), ComputeFiniteStrain::computeProperties(), ComputeRSphericalFiniteStrain::computeProperties(), ComputeRSphericalSmallStrain::computeProperties(), ComputeSmallStrain::computeProperties(), ComputeCosseratIncrementalSmallStrain::computeQpProperties(), ComputeCosseratSmallStrain::computeQpProperties(), ComputeCrackTipEnrichmentSmallStrain::computeQpProperties(), ComputeStrainBase::ComputeStrainBase(), ComputeIncrementalStrain::computeTotalStrainIncrement(), Compute1DIncrementalStrain::computeTotalStrainIncrement(), Compute2DIncrementalStrain::computeTotalStrainIncrement(), ComputeRSphericalIncrementalStrain::computeTotalStrainIncrement(), initialSetup(), Compute2DIncrementalStrain::initialSetup(), and Compute2DSmallStrain::initialSetup().
|
protectedinherited |
Definition at line 31 of file ComputeIncrementalStrainBase.h.
Referenced by Compute1DFiniteStrain::computeProperties(), computeProperties(), ComputeFiniteStrain::computeProperties(), ComputeRSphericalFiniteStrain::computeProperties(), ComputeCosseratIncrementalSmallStrain::computeQpProperties(), ComputeIncrementalStrain::computeTotalStrainIncrement(), Compute1DIncrementalStrain::computeTotalStrainIncrement(), Compute2DIncrementalStrain::computeTotalStrainIncrement(), ComputeRSphericalIncrementalStrain::computeTotalStrainIncrement(), initialSetup(), Compute2DIncrementalStrain::initialSetup(), and ComputeIncrementalStrainBase::initialSetup().
|
protectedinherited |
Definition at line 46 of file ComputeStrainBase.h.
Referenced by Compute1DSmallStrain::computeProperties(), Compute2DSmallStrain::computeProperties(), ComputeIncrementalStrain::computeProperties(), ComputeRSphericalSmallStrain::computeProperties(), ComputeSmallStrain::computeProperties(), ComputeCosseratIncrementalSmallStrain::computeQpProperties(), ComputeCosseratSmallStrain::computeQpProperties(), ComputeCrackTipEnrichmentSmallStrain::computeQpProperties(), ComputeFiniteStrain::computeQpStrain(), ComputeIncrementalStrainBase::initQpStatefulProperties(), and ComputeStrainBase::initQpStatefulProperties().
|
protectedinherited |
Definition at line 39 of file ComputeIncrementalStrainBase.h.
Referenced by ComputeIncrementalStrain::computeProperties(), ComputeCosseratIncrementalSmallStrain::computeQpProperties(), and ComputeFiniteStrain::computeQpStrain().
|
protectedinherited |
Coupled displacement variables.
Definition at line 35 of file ComputeStrainBase.h.
Referenced by ComputeCrackTipEnrichmentSmallStrain::ComputeCrackTipEnrichmentSmallStrain(), ComputeCrackTipEnrichmentSmallStrain::computeQpProperties(), ComputeStrainBase::ComputeStrainBase(), ComputeStrainBase::displacementIntegrityCheck(), displacementIntegrityCheck(), Compute2DIncrementalStrain::displacementIntegrityCheck(), Compute2DSmallStrain::displacementIntegrityCheck(), and ComputeIncrementalStrainBase::initialSetup().
|
protected |
Definition at line 47 of file Compute2DFiniteStrain.h.
Referenced by computeProperties(), displacementIntegrityCheck(), initialSetup(), and ComputeAxisymmetricRZFiniteStrain::initialSetup().
|
protectedinherited |
|
protectedinherited |
Definition at line 34 of file ComputeIncrementalStrainBase.h.
Referenced by ComputeIncrementalStrain::computeProperties(), ComputeCosseratIncrementalSmallStrain::computeQpProperties(), and ComputeFiniteStrain::computeQpStrain().
|
protectedinherited |
Definition at line 33 of file ComputeIncrementalStrainBase.h.
Referenced by ComputeIncrementalStrain::computeProperties(), ComputeCosseratIncrementalSmallStrain::computeQpProperties(), and ComputeFiniteStrain::computeQpStrain().
|
protectedinherited |
Definition at line 48 of file ComputeStrainBase.h.
Referenced by Compute1DSmallStrain::computeProperties(), Compute2DSmallStrain::computeProperties(), ComputeIncrementalStrain::computeProperties(), ComputeRSphericalSmallStrain::computeProperties(), ComputeSmallStrain::computeProperties(), ComputeCosseratIncrementalSmallStrain::computeQpProperties(), ComputeCosseratSmallStrain::computeQpProperties(), ComputeCrackTipEnrichmentSmallStrain::computeQpProperties(), ComputeFiniteStrain::computeQpStrain(), ComputeIncrementalStrainBase::initQpStatefulProperties(), and ComputeStrainBase::initQpStatefulProperties().
|
protectedinherited |
Definition at line 40 of file ComputeIncrementalStrainBase.h.
Referenced by ComputeIncrementalStrain::computeProperties(), ComputeCosseratIncrementalSmallStrain::computeQpProperties(), and ComputeFiniteStrain::computeQpStrain().
|
protectedinherited |
Flag if using HughesWinget method.
Definition at line 41 of file ComputeFiniteStrain.h.
Referenced by computeProperties(), ComputeFiniteStrain::computeProperties(), and ComputeFiniteStrain::computeQpStrain().
|
protectedinherited |
Definition at line 55 of file ComputeStrainBase.h.
Referenced by computeProperties(), Compute2DSmallStrain::computeProperties(), ComputeFiniteStrain::computeProperties(), ComputeIncrementalStrain::computeProperties(), ComputeSmallStrain::computeProperties(), and ComputeStrainBase::ComputeStrainBase().