- displacementsNonlinear variable name for the displacements
C++ Type:std::vector<VariableName>
Controllable:No
Description:Nonlinear variable name for the displacements
- scalar_out_of_plane_strainScalar variable for strain in the out-of-plane direction
C++ Type:VariableName
Controllable:No
Description:Scalar variable for strain in the out-of-plane direction
Peridynamic Generalized Plane Strain Action System
Description
This action sets up a generalized plane strain model, including kernel to provide coupled off-diagonal Jacobian entries, scalar kernel to provide residual and diagonal Jacobian, and user object to compute residual and diagonal Jacobian for scalar variable.
Constructed MooseObjects
Functionality | Replaced Classes | Associated Parameters |
---|---|---|
Out-of-plane scalar variable equilibrium condition | Generalized Plane Strain ScalarKernel | generalized_plane_strain_uo : UserObject name of the GeneralizedPlaneStrainUserObjectBasePD |
Residual and diagonal Jacobian calculation for scalar out-of-plane strain variables | Ordinary State-based Generalized Plane Strain UserObject or Non-Ordinary State-based Generalized Plane Strain UserObject | out_of_plane_stress_variable : Auxiliary variable name for out-of-plane stress for ordinary state-based generalized plane strain model; or none is required for non-ordinary state-based generalized plane strain model| |
Scalar out-of-plan strain coupling with in-plane field variables | Ordinary State-based Generalized Plane Strain Off-diagonal Kernel or Non-Ordinary State-based Generalized Plane Strain Off-diagonal Kernel | scalar_out_of_plane_strain : a string of scalar variable for the out-of-plane strain direction; displacements : a string of the displacement field (in-plane) variables; temperature : a string of the temperature field variable |
Example Input Syntax
Subblocks
The subblocks of the GeneralizedPlaneStrain action are what triggers MOOSE objects to be built. If none of the mechanics is subdomain restricted a single subblock will be used
[Modules]
[Peridynamics]
[Mechanics]
[GeneralizedPlaneStrain]
[all]
formulation = ORDINARY_STATE
out_of_plane_stress_variable = stress_zz
[]
[]
[]
[]
[]
(modules/peridynamics/test/tests/generalized_plane_strain/generalized_plane_strain_OSPD.i)If different generalized plane strain models are needed, multiple subblocks with subdomain restrictions can be used.
[Modules]
[Peridynamics]
[Mechanics]
[GeneralizedPlaneStrain]
[block1]
formulation = ORDINARY_STATE
scalar_out_of_plane_strain = scalar_strain_zz1
out_of_plane_stress_variable = stress_zz1
block = 1001
[]
[block2]
formulation = ORDINARY_STATE
scalar_out_of_plane_strain = scalar_strain_zz2
out_of_plane_stress_variable = stress_zz2
block = 1002
[]
[]
[]
[]
[]
(modules/peridynamics/test/tests/generalized_plane_strain/generalized_plane_strain_squares_OSPD.i)Parameters supplied at the [Modules/Peridynamics/GeneralizedPlaneStrain]
level act as defaults for the GeneralizedPlaneStrain action subblocks.
Input Parameters
- active__all__ If specified only the blocks named will be visited and made active
Default:__all__
C++ Type:std::vector<std::string>
Controllable:No
Description:If specified only the blocks named will be visited and made active
- blockList of ids of the blocks (subdomains) that the GeneralizedPlaneStrainActionPD will be applied to
C++ Type:std::vector<SubdomainName>
Controllable:No
Description:List of ids of the blocks (subdomains) that the GeneralizedPlaneStrainActionPD will be applied to
- control_tagsAdds user-defined labels for accessing object parameters via control logic.
C++ Type:std::vector<std::string>
Controllable:No
Description:Adds user-defined labels for accessing object parameters via control logic.
- eigenstrain_namesList of eigenstrains to be applied in this strain calculation
C++ Type:std::vector<MaterialPropertyName>
Controllable:No
Description:List of eigenstrains to be applied in this strain calculation
- factor1Scale factor applied to prescribed out-of-plane pressure
Default:1
C++ Type:double
Controllable:No
Description:Scale factor applied to prescribed out-of-plane pressure
- formulationNONORDINARY_STATEPeridynamic formulation options
Default:NONORDINARY_STATE
C++ Type:MooseEnum
Controllable:No
Description:Peridynamic formulation options
- full_jacobianFalseParameter to set whether to use the nonlocal full Jacobian formulation for the scalar components
Default:False
C++ Type:bool
Controllable:No
Description:Parameter to set whether to use the nonlocal full Jacobian formulation for the scalar components
- inactiveIf specified blocks matching these identifiers will be skipped.
C++ Type:std::vector<std::string>
Controllable:No
Description:If specified blocks matching these identifiers will be skipped.
- out_of_plane_pressure0Function used to prescribe pressure in the out-of-plane direction
Default:0
C++ Type:FunctionName
Controllable:No
Description:Function used to prescribe pressure in the out-of-plane direction
- out_of_plane_stress_variableName of out-of-plane stress auxiliary variable
C++ Type:VariableName
Controllable:No
Description:Name of out-of-plane stress auxiliary variable
- strainSMALLStrain formulation
Default:SMALL
C++ Type:MooseEnum
Controllable:No
Description:Strain formulation
- temperatureNonlinear variable for the temperature
C++ Type:VariableName
Controllable:No
Description:Nonlinear variable for the temperature
Optional Parameters
Associated Actions
Available Actions
- Peridynamics App
- GeneralizedPlaneStrainActionPDClass for setting up the Kernel, ScalarKernel, and UserObject for peridynamic generalized plane strain model