CombinedNonlinearHardeningPlasticityTempl< true > ADCombinedNonlinearHardeningPlasticity
CombinedNonlinearHardeningPlasticityTempl< false > CombinedNonlinearHardeningPlasticity
typename GenericMaterialPropertyStruct< T, is_ad >::type GenericMaterialProperty
Moose::GenericType< VariableValue, is_ad > GenericVariableValue
Moose::GenericType< RankFourTensor, is_ad > GenericRankFourTensor
Moose::GenericType< Real, is_ad > GenericReal
Moose::GenericType< RankTwoTensor, is_ad > GenericRankTwoTensor
GenericRankTwoTensor< is_ad > stress_new
virtual void iterationFinalize(const GenericReal< is_ad > &scalar) override
Finalize internal state variables for a model for a given iteration.
const Function *const _isotropic_hardening_function
virtual GenericReal< is_ad > computeKinematicHardeningValue(const GenericReal< is_ad > &scalar)
GenericMaterialProperty< RankTwoTensor, is_ad > & _plastic_strain
plastic strain
const MaterialProperty< Real > & _isotropic_hardening_variable_old
GenericMaterialProperty< Real, is_ad > & _kinematic_hardening_variable
static InputParameters validParams()
virtual void computeStressInitialize(const GenericReal< is_ad > &effective_trial_stress, const GenericRankFourTensor< is_ad > &elasticity_tensor) override
Perform any necessary initialization before return mapping iterations.
GenericReal< is_ad > _yield_stress
GenericReal< is_ad > yieldCondition() const
GenericReal< is_ad > _yield_condition
const MaterialProperty< Real > & _kinematic_hardening_variable_old
virtual void propagateQpStatefulProperties() override
If updateState is not called during a timestep, this will be.
const Function * _yield_stress_function
GenericMaterialProperty< Real, is_ad > & _isotropic_hardening_variable
virtual GenericReal< is_ad > computeIsotropicHardeningDerivative(const GenericReal< is_ad > &scalar)
const MaterialProperty< RankTwoTensor > & _plastic_strain_old
old value of plastic strain
GenericRankTwoTensor< is_ad > elastic_strain_old
const Real _isotropic_hardening_constant
const Real _kinematic_hardening_modulus
Coefficients for combined isotropic and kinematic hardening.
virtual GenericReal< is_ad > computeDerivative(const GenericReal< is_ad > &effective_trial_stress, const GenericReal< is_ad > &scalar) override
Compute the derivative of the residual as a function of the scalar variable.
GenericReal< is_ad > _isotropic_hardening_slope
GenericRankTwoTensor< is_ad > strain_increment
virtual GenericReal< is_ad > computeIsotropicHardeningValue(const GenericReal< is_ad > &scalar)
virtual void initQpStatefulProperties() override
virtual void computeYieldStress(const GenericRankFourTensor< is_ad > &elasticity_tensor)
virtual void computeStressFinalize(const GenericRankTwoTensor< is_ad > &plastic_strain_increment) override
Perform any necessary steps to finalize state after return mapping iterations.
const GenericVariableValue< is_ad > & _temperature
virtual GenericReal< is_ad > computeResidual(const GenericReal< is_ad > &effective_trial_stress, const GenericReal< is_ad > &scalar) override
Compute the residual for a predicted value of the scalar.
GenericReal< is_ad > _kinematic_hardening_slope
const InputParameters & parameters() const
GenericReal< is_ad > _three_shear_modulus
3 * shear modulus
const std::string _base_name
Name used as a prefix for all material properties related to the stress update model.
Real elasticity_tensor(unsigned int i, unsigned int j, unsigned int k, unsigned int l)