19 template <
typename R2,
typename R4>
28 template <
typename R2,
typename R4>
32 _elasticity_tensor_name(_base_name +
"elasticity_tensor"),
33 _elasticity_tensor(this->template getADMaterialProperty<R4>(_elasticity_tensor_name))
37 template <
typename R2,
typename R4>
41 if (this->
template hasBlockMaterialProperty<R2>(_base_name +
"strain_increment"))
42 mooseError(
"This linear elastic stress calculation only works for small strains; use " 43 "ADComputeFiniteStrainElasticStress for simulations using incremental and finite " 47 template <
typename R2,
typename R4>
52 _stress[_qp] = _elasticity_tensor[_qp] * _mechanical_strain[_qp];
55 _elastic_strain[_qp] = _mechanical_strain[_qp];
ADComputeLinearElasticStressTempl(const InputParameters ¶meters)
registerMooseObject("SolidMechanicsApp", ADComputeLinearElasticStress)
void mooseError(Args &&... args)
virtual void initialSetup() override
static InputParameters validParams()
virtual void computeQpStress() override
static InputParameters validParams()
ADComputeStressBaseTempl is the base class for stress tensors.
ADComputeLinearElasticStress computes the stress following linear elasticity theory (small strains) ...