19template <
typename R2,
typename R4>
28template <
typename R2,
typename R4>
32 _elasticity_tensor_name(_base_name +
"elasticity_tensor"),
33 _elasticity_tensor(this->template getADMaterialProperty<R4>(_elasticity_tensor_name))
37template <
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 "
47template <
typename R2,
typename R4>
52 _stress[_qp] = _elasticity_tensor[_qp] * _mechanical_strain[_qp];
55 _elastic_strain[_qp] = _mechanical_strain[_qp];
registerMooseObject("SolidMechanicsApp", ADComputeLinearElasticStress)
void mooseError(Args &&... args)
ADComputeLinearElasticStress computes the stress following linear elasticity theory (small strains)
virtual void initialSetup() override
virtual void computeQpStress() override
ADComputeLinearElasticStressTempl(const InputParameters ¶meters)
static InputParameters validParams()
ADComputeStressBaseTempl is the base class for stress tensors.
static InputParameters validParams()