Base kernel class for peridynamic solid mechanics models. More...
#include <MechanicsBasePD.h>
Public Types | |
| typedef DerivativeMaterialPropertyNameInterface::SymbolName | SymbolName |
Public Member Functions | |
| MechanicsBasePD (const InputParameters ¶meters) | |
| virtual void | computeOffDiagJacobian (unsigned int jvar) override |
| virtual void | computeLocalOffDiagJacobian (unsigned int, unsigned int) |
| Function to compute local contribution to the off-diagonal Jacobian at the current nodes. | |
| virtual void | computePDNonlocalOffDiagJacobian (unsigned int, unsigned int) |
| Function to compute nonlocal contribution to the off-diagonal Jacobian at the current nodes. | |
| virtual void | initialSetup () override |
| virtual void | prepare () 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 Attributes | |
| std::vector< MooseVariable * > | _disp_var |
| displacement variables | |
| unsigned int | _ndisp |
| number of displacement components | |
| const std::vector< RealGradient > * | _orientation |
| Vector of bond in current configuration. | |
| std::vector< dof_id_type > | _ivardofs |
| Current variable dof numbers for nodes i and j. | |
| std::vector< Real > | _weights |
| weights used for the current element to obtain the nodal stress | |
| RealGradient | _current_vec |
| Vector of bond in current configuration. | |
| RealGradient | _current_unit_vec |
| Unit vector of bond in current configuration. | |
| const bool | _temp_coupled |
| Temperature variable. | |
| MooseVariable * | _temp_var |
| const bool | _out_of_plane_strain_coupled |
| Parameters for out-of-plane strain in weak plane stress formulation. | |
| MooseVariable * | _out_of_plane_strain_var |
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 |
Base kernel class for peridynamic solid mechanics models.
Definition at line 18 of file MechanicsBasePD.h.
| MechanicsBasePD::MechanicsBasePD | ( | const InputParameters & | parameters | ) |
Definition at line 27 of file MechanicsBasePD.C.
|
inlinevirtual |
Function to compute local contribution to the off-diagonal Jacobian at the current nodes.
| coupled_component | The coupled variable number |
Reimplemented in ForceStabilizedSmallStrainMechanicsNOSPD, HorizonStabilizedFormIFiniteStrainMechanicsNOSPD, HorizonStabilizedFormIIFiniteStrainMechanicsNOSPD, HorizonStabilizedFormISmallStrainMechanicsNOSPD, WeakPlaneStressNOSPD, MechanicsBPD, HorizonStabilizedFormIISmallStrainMechanicsNOSPD, and MechanicsOSPD.
Definition at line 31 of file MechanicsBasePD.h.
Referenced by computeOffDiagJacobian().
|
overridevirtual |
Definition at line 73 of file MechanicsBasePD.C.
|
inlinevirtual |
Function to compute nonlocal contribution to the off-diagonal Jacobian at the current nodes.
| jvar_num | The number of the first coupled variable |
| coupled_component | The component number of the second coupled variable |
Reimplemented in ForceStabilizedSmallStrainMechanicsNOSPD, HorizonStabilizedFormIFiniteStrainMechanicsNOSPD, HorizonStabilizedFormIIFiniteStrainMechanicsNOSPD, HorizonStabilizedFormIISmallStrainMechanicsNOSPD, HorizonStabilizedFormISmallStrainMechanicsNOSPD, MechanicsOSPD, and WeakPlaneStressNOSPD.
Definition at line 41 of file MechanicsBasePD.h.
Referenced by computeOffDiagJacobian().
|
overridevirtual |
Definition at line 45 of file MechanicsBasePD.C.
|
overridevirtual |
Definition at line 51 of file MechanicsBasePD.C.
Referenced by computeOffDiagJacobian(), GeneralizedPlaneStrainOffDiagNOSPD::computeOffDiagJacobianScalar(), and GeneralizedPlaneStrainOffDiagOSPD::computeOffDiagJacobianScalar().
|
static |
Definition at line 13 of file MechanicsBasePD.C.
Referenced by GeneralizedPlaneStrainOffDiagOSPD::validParams(), MechanicsBaseNOSPD::validParams(), MechanicsBPD::validParams(), and MechanicsOSPD::validParams().
|
protected |
Unit vector of bond in current configuration.
Definition at line 79 of file MechanicsBasePD.h.
Referenced by GeneralizedPlaneStrainOffDiagOSPD::computeDispFullOffDiagJacobianScalar(), GeneralizedPlaneStrainOffDiagOSPD::computeDispPartialOffDiagJacobianScalar(), MechanicsBPD::computeLocalJacobian(), MechanicsOSPD::computeLocalJacobian(), MechanicsBPD::computeLocalOffDiagJacobian(), MechanicsOSPD::computeLocalOffDiagJacobian(), MechanicsBPD::computeLocalResidual(), MechanicsOSPD::computeLocalResidual(), MechanicsOSPD::computeNonlocalJacobian(), MechanicsOSPD::computePDNonlocalOffDiagJacobian(), and prepare().
|
protected |
Vector of bond in current configuration.
Definition at line 76 of file MechanicsBasePD.h.
Referenced by MechanicsBPD::computeLocalJacobian(), MechanicsOSPD::computeLocalJacobian(), MechanicsBPD::computeLocalOffDiagJacobian(), MechanicsOSPD::computeLocalOffDiagJacobian(), and prepare().
|
protected |
displacement variables
Definition at line 51 of file MechanicsBasePD.h.
Referenced by GeneralizedPlaneStrainOffDiagOSPD::computeDispFullOffDiagJacobianScalar(), ForceStabilizedSmallStrainMechanicsNOSPD::computeLocalResidual(), MechanicsOSPD::computeNonlocalJacobian(), MechanicsOSPD::computeNonlocalResidual(), computeOffDiagJacobian(), GeneralizedPlaneStrainOffDiagNOSPD::computeOffDiagJacobianScalar(), GeneralizedPlaneStrainOffDiagOSPD::computeOffDiagJacobianScalar(), MechanicsOSPD::computePDNonlocalOffDiagJacobian(), GeneralizedPlaneStrainOffDiagNOSPD::GeneralizedPlaneStrainOffDiagNOSPD(), GeneralizedPlaneStrainOffDiagOSPD::GeneralizedPlaneStrainOffDiagOSPD(), MechanicsBasePD(), and prepare().
|
protected |
Current variable dof numbers for nodes i and j.
Definition at line 70 of file MechanicsBasePD.h.
Referenced by GeneralizedPlaneStrainOffDiagOSPD::computeDispFullOffDiagJacobianScalar(), ForceStabilizedSmallStrainMechanicsNOSPD::computeNonlocalJacobian(), HorizonStabilizedFormIFiniteStrainMechanicsNOSPD::computeNonlocalJacobian(), HorizonStabilizedFormISmallStrainMechanicsNOSPD::computeNonlocalJacobian(), MechanicsOSPD::computeNonlocalJacobian(), HorizonStabilizedFormIIFiniteStrainMechanicsNOSPD::computeNonlocalResidual(), HorizonStabilizedFormIISmallStrainMechanicsNOSPD::computeNonlocalResidual(), MechanicsOSPD::computeNonlocalResidual(), ForceStabilizedSmallStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian(), HorizonStabilizedFormIFiniteStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian(), HorizonStabilizedFormISmallStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian(), MechanicsOSPD::computePDNonlocalOffDiagJacobian(), WeakPlaneStressNOSPD::computePDNonlocalOffDiagJacobian(), and prepare().
|
protected |
number of displacement components
Definition at line 59 of file MechanicsBasePD.h.
Referenced by MechanicsBasePD().
|
protected |
Vector of bond in current configuration.
Definition at line 67 of file MechanicsBasePD.h.
Referenced by initialSetup().
|
protected |
Parameters for out-of-plane strain in weak plane stress formulation.
Definition at line 62 of file MechanicsBasePD.h.
Referenced by HorizonStabilizedFormIFiniteStrainMechanicsNOSPD::computeLocalOffDiagJacobian(), HorizonStabilizedFormIIFiniteStrainMechanicsNOSPD::computeLocalOffDiagJacobian(), HorizonStabilizedFormISmallStrainMechanicsNOSPD::computeLocalOffDiagJacobian(), HorizonStabilizedFormIISmallStrainMechanicsNOSPD::computeLocalOffDiagJacobian(), computeOffDiagJacobian(), HorizonStabilizedFormIFiniteStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian(), HorizonStabilizedFormIIFiniteStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian(), HorizonStabilizedFormIISmallStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian(), and HorizonStabilizedFormISmallStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian().
|
protected |
Definition at line 63 of file MechanicsBasePD.h.
Referenced by HorizonStabilizedFormIFiniteStrainMechanicsNOSPD::computeLocalOffDiagJacobian(), HorizonStabilizedFormIIFiniteStrainMechanicsNOSPD::computeLocalOffDiagJacobian(), HorizonStabilizedFormISmallStrainMechanicsNOSPD::computeLocalOffDiagJacobian(), HorizonStabilizedFormIISmallStrainMechanicsNOSPD::computeLocalOffDiagJacobian(), computeOffDiagJacobian(), HorizonStabilizedFormIFiniteStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian(), HorizonStabilizedFormIIFiniteStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian(), HorizonStabilizedFormIISmallStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian(), and HorizonStabilizedFormISmallStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian().
|
protected |
Temperature variable.
Definition at line 54 of file MechanicsBasePD.h.
Referenced by ForceStabilizedSmallStrainMechanicsNOSPD::computeLocalOffDiagJacobian(), HorizonStabilizedFormIFiniteStrainMechanicsNOSPD::computeLocalOffDiagJacobian(), HorizonStabilizedFormIIFiniteStrainMechanicsNOSPD::computeLocalOffDiagJacobian(), HorizonStabilizedFormISmallStrainMechanicsNOSPD::computeLocalOffDiagJacobian(), WeakPlaneStressNOSPD::computeLocalOffDiagJacobian(), MechanicsBPD::computeLocalOffDiagJacobian(), HorizonStabilizedFormIISmallStrainMechanicsNOSPD::computeLocalOffDiagJacobian(), MechanicsOSPD::computeLocalOffDiagJacobian(), computeOffDiagJacobian(), GeneralizedPlaneStrainOffDiagNOSPD::computeOffDiagJacobianScalar(), GeneralizedPlaneStrainOffDiagOSPD::computeOffDiagJacobianScalar(), ForceStabilizedSmallStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian(), HorizonStabilizedFormIFiniteStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian(), HorizonStabilizedFormIIFiniteStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian(), HorizonStabilizedFormIISmallStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian(), HorizonStabilizedFormISmallStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian(), MechanicsOSPD::computePDNonlocalOffDiagJacobian(), WeakPlaneStressNOSPD::computePDNonlocalOffDiagJacobian(), and MechanicsBaseNOSPD::MechanicsBaseNOSPD().
|
protected |
Definition at line 55 of file MechanicsBasePD.h.
Referenced by ForceStabilizedSmallStrainMechanicsNOSPD::computeLocalOffDiagJacobian(), HorizonStabilizedFormIFiniteStrainMechanicsNOSPD::computeLocalOffDiagJacobian(), HorizonStabilizedFormIIFiniteStrainMechanicsNOSPD::computeLocalOffDiagJacobian(), HorizonStabilizedFormISmallStrainMechanicsNOSPD::computeLocalOffDiagJacobian(), WeakPlaneStressNOSPD::computeLocalOffDiagJacobian(), MechanicsBPD::computeLocalOffDiagJacobian(), HorizonStabilizedFormIISmallStrainMechanicsNOSPD::computeLocalOffDiagJacobian(), MechanicsOSPD::computeLocalOffDiagJacobian(), computeOffDiagJacobian(), GeneralizedPlaneStrainOffDiagNOSPD::computeOffDiagJacobianScalar(), GeneralizedPlaneStrainOffDiagOSPD::computeOffDiagJacobianScalar(), ForceStabilizedSmallStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian(), HorizonStabilizedFormIFiniteStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian(), HorizonStabilizedFormIIFiniteStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian(), HorizonStabilizedFormIISmallStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian(), HorizonStabilizedFormISmallStrainMechanicsNOSPD::computePDNonlocalOffDiagJacobian(), MechanicsOSPD::computePDNonlocalOffDiagJacobian(), WeakPlaneStressNOSPD::computePDNonlocalOffDiagJacobian(), and MechanicsBaseNOSPD::MechanicsBaseNOSPD().
|
protected |
weights used for the current element to obtain the nodal stress
Definition at line 73 of file MechanicsBasePD.h.
Referenced by WeakPlaneStressNOSPD::computeLocalJacobian(), WeakPlaneStressNOSPD::computeLocalOffDiagJacobian(), WeakPlaneStressNOSPD::computeLocalResidual(), WeakPlaneStressNOSPD::computePDNonlocalOffDiagJacobian(), and prepare().