typename GenericMaterialPropertyStruct< T, is_ad >::type GenericMaterialProperty
RankTwoInvariantTempl< true > ADRankTwoInvariant
RankTwoInvariantTempl< false > RankTwoInvariant
const InputParameters & parameters() const
RankTwoInvariant computes invariant scalar values from Rank-2 tensors.
GenericMaterialProperty< Real, is_ad > & _property
Stress/strain value returned from calculation.
const GenericMaterialProperty< RankTwoTensor, is_ad > & _tensor
Tensor to extract the invariant from.
RankTwoScalarTools::InvariantType _invariant
Property to compute from the given tensor.
const bool _stateful
Are stateful properties required?
const MaterialProperty< RankTwoTensor > * _tensor_old
Old state of the tensor (required for effective strain calculation)
virtual void initQpStatefulProperties() override
static InputParameters validParams()
virtual void computeQpProperties() override
const MaterialProperty< Real > * _property_old
The property needs to be stateful when computing effective strain.