17 params.
set<std::string>(
"effective_inelastic_strain_name") =
"effective_creep_strain";
25 _creep_strain(this->template declareGenericProperty<
RankTwoTensor, is_ad>(this->_base_name +
28 this->template getMaterialPropertyOld<
RankTwoTensor>(this->_base_name +
"creep_strain"))
36 _creep_strain[_qp].zero();
45 _creep_strain[_qp] = _creep_strain_old[_qp];
47 propagateQpStatefulPropertiesRadialReturn();
53 const Real ,
const Real )
55 mooseError(
"computeStressDerivative called: no stress derivative computation is needed for AD");
61 const Real effective_trial_stress,
const Real scalar)
63 return -(computeDerivative(effective_trial_stress, scalar) + 1.0) / this->_three_shear_modulus;
71 _creep_strain[_qp] = _creep_strain_old[_qp] + plastic_strain_increment;
void mooseError(Args &&... args)
Moose::GenericType< RankTwoTensor, is_ad > GenericRankTwoTensor
This class provides baseline functionallity for creep models based on the stress update material in a...
virtual void computeStressFinalize(const GenericRankTwoTensor< is_ad > &plastic_strain_increment) override
Perform any necessary steps to finalize state after return mapping iterations.
static InputParameters validParams()
virtual void initQpStatefulProperties() override
virtual void propagateQpStatefulProperties() override
If updateState is not called during a timestep, this will be.
RadialReturnCreepStressUpdateBaseTempl(const InputParameters ¶meters)
virtual Real computeStressDerivative(const Real effective_trial_stress, const Real scalar) override
This method returns the derivative of the creep strain with respect to the von mises stress.
RadialReturnStressUpdate computes the radial return stress increment for an isotropic elastic-viscopl...
static InputParameters validParams()
virtual void initQpStatefulProperties() override