101#define usingViscoplasticityStressUpdateBaseMembers \
102 usingTransientInterfaceMembers; \
103 using ViscoplasticityStressUpdateBaseTempl<is_ad>::_name; \
104 using ViscoplasticityStressUpdateBaseTempl<is_ad>::_qp; \
105 using ViscoplasticityStressUpdateBaseTempl<is_ad>::isParamValid; \
106 using ViscoplasticityStressUpdateBaseTempl<is_ad>::paramError; \
107 using ViscoplasticityStressUpdateBaseTempl<is_ad>::paramWarning; \
108 using ViscoplasticityStressUpdateBaseTempl<is_ad>::updateState; \
109 using ViscoplasticityStressUpdateBaseTempl<is_ad>::_console; \
110 using ViscoplasticityStressUpdateBaseTempl<is_ad>::_q_point; \
111 using ViscoplasticityStressUpdateBaseTempl<is_ad>::_verbose; \
112 using ViscoplasticityStressUpdateBaseTempl<is_ad>::_intermediate_porosity; \
113 using ViscoplasticityStressUpdateBaseTempl<is_ad>::_effective_inelastic_strain; \
114 using ViscoplasticityStressUpdateBaseTempl<is_ad>::_effective_inelastic_strain_old; \
115 using ViscoplasticityStressUpdateBaseTempl<is_ad>::_inelastic_strain; \
116 using ViscoplasticityStressUpdateBaseTempl<is_ad>::_inelastic_strain_old; \
117 using ViscoplasticityStressUpdateBaseTempl<is_ad>::_porosity_old; \
118 using ViscoplasticityStressUpdateBaseTempl<is_ad>::updateIntermediatePorosity; \
119 using ViscoplasticityStressUpdateBaseTempl<is_ad>::computeStressFinalize; \
120 using ViscoplasticityStressUpdateBaseTempl<is_ad>::computeStressInitialize
typename GenericMaterialPropertyStruct< T, is_ad >::type GenericMaterialProperty
Moose::GenericType< RankFourTensor, is_ad > GenericRankFourTensor
Moose::GenericType< Real, is_ad > GenericReal
Moose::GenericType< RankTwoTensor, is_ad > GenericRankTwoTensor
ViscoplasticityStressUpdateBaseTempl< true > ADViscoplasticityStressUpdateBase
ViscoplasticityStressUpdateBaseTempl< false > ViscoplasticityStressUpdateBase
const InputParameters & parameters() const
const std::string & _name
StressUpdateBase is a material that is not called by MOOSE because of the compute=false flag set in t...
const std::string _base_name
Name used as a prefix for all material properties related to the stress update model.
const MooseArray< Point > & _q_point
virtual void updateState(GR2 &strain_increment, GR2 &inelastic_strain_increment, const GR2 &rotation_increment, GR2 &stress_new, const RankTwoTensor &stress_old, const GR4 &elasticity_tensor, const RankTwoTensor &elastic_strain_old, bool compute_full_tangent_operator=false, RankFourTensor &tangent_operator=StressUpdateBaseTempl< is_ad >::_identityTensor)
Given a strain increment that results in a trial stress, perform some procedure (such as an iterative...
const GenericMaterialProperty< RankTwoTensor, is_ad > & _strain_increment
Material property for the total strain increment.
const NegativeBehavior _negative_behavior
Enum for negative porosity handling.
void updateIntermediatePorosity(const GenericRankTwoTensor< is_ad > &elastic_strain_increment)
const MaterialProperty< Real > & _effective_inelastic_strain_old
GenericReal< is_ad > _intermediate_porosity
Container for the porosity calculated from all other intelastic models except the current model.
virtual void computeStressInitialize(const GenericReal< is_ad > &, const GenericRankFourTensor< is_ad > &)
Perform any necessary initialization before return mapping iterations.
static InputParameters validParams()
virtual void propagateQpStatefulProperties() override
If updateState is not called during a timestep, this will be.
bool requiresIsotropicTensor() override
Does the model require the elasticity tensor to be isotropic?
const MaterialProperty< RankTwoTensor > & _inelastic_strain_old
virtual void initQpStatefulProperties() override
GenericMaterialProperty< Real, is_ad > & _effective_inelastic_strain
Effective inelastic strain material property.
GenericMaterialProperty< RankTwoTensor, is_ad > & _inelastic_strain
Creep strain material property.
const Real _initial_porosity
Initial porosity.
const std::string _total_strain_base_name
String designating the base name of the total strain.
virtual void computeStressFinalize(const GenericRankTwoTensor< is_ad > &)
Perform any necessary steps to finalize state after return mapping iterations.
virtual Real computeTimeStepLimit() override
const MaterialProperty< Real > & _porosity_old
Material property for the old porosity.
const bool _verbose
Flag to enable verbose output.
Real _max_inelastic_increment
Max increment for inelastic strain.