12 #include "libmesh/quadrature.h" 19 MooseEnum outOfPlaneDirection(
"x y z",
"z");
21 "out_of_plane_direction", outOfPlaneDirection,
"The direction of the out-of-plane strain.");
27 _out_of_plane_direction(getParam<
MooseEnum>(
"out_of_plane_direction"))
35 for (
unsigned int i = 0; i < 3; ++i)
57 ADReal volumetric_strain = 0.0;
95 mooseError(
"For 2D simulations where the out-of-plane direction is x or y the number of " 96 "supplied displacements must be three.");
98 mooseError(
"For 2D simulations where the out-of-plane direction is z the number of supplied " 99 "displacements must be two.");
const QBase *const & _qrule
const unsigned int _ndisp
Coupled displacement variables.
const MooseArray< ADRealVectorValue > & _ad_grad_zero
const ADVariableGradient & adCoupledGradient(const std::string &var_name, unsigned int comp=0) const
static InputParameters validParams()
const ADVariableValue & adCoupledValue(const std::string &var_name, unsigned int comp=0) const
const MooseArray< Real > & _JxW
std::vector< const ADVariableGradient * > _grad_disp
Gradient of displacements.
const Real & _current_elem_volume
static InputParameters validParams()
std::vector< const ADMaterialProperty< R2 > * > _eigenstrains
const bool _volumetric_locking_correction
ADMaterialProperty< R2 > & _mechanical_strain
ADComputeSmallStrain defines a strain tensor, assuming small strains.
virtual void computeProperties() override
virtual void displacementIntegrityCheck() override
void mooseError(Args &&... args) const
const unsigned int _out_of_plane_direction
const MooseArray< ADReal > & _ad_zero
std::vector< const ADVariableValue * > _disp
Displacement variables.
const MooseArray< Real > & _coord
ADCompute2DSmallStrain(const InputParameters ¶meters)
virtual ADReal computeOutOfPlaneStrain()=0
void initialSetup() override
ADMaterialProperty< R2 > & _total_strain