Go to the documentation of this file.
15 #define usingViscoplasticityStressUpdateBaseMembers \
16 usingStressUpdateBaseMembers; \
17 usingSingleVariableReturnMappingSolutionMembers; \
18 using ADViscoplasticityStressUpdateBase<compute_stage>::updateIntermediatePorosity; \
19 using ADViscoplasticityStressUpdateBase<compute_stage>::computeStressInitialize; \
20 using ADViscoplasticityStressUpdateBase<compute_stage>::computeStressFinalize; \
21 using ADViscoplasticityStressUpdateBase<compute_stage>::_intermediate_porosity; \
22 using ADViscoplasticityStressUpdateBase<compute_stage>::_derivative; \
23 using ADViscoplasticityStressUpdateBase<compute_stage>::_effective_inelastic_strain; \
24 using ADViscoplasticityStressUpdateBase<compute_stage>::_effective_inelastic_strain_old; \
25 using ADViscoplasticityStressUpdateBase<compute_stage>::_inelastic_strain; \
26 using ADViscoplasticityStressUpdateBase<compute_stage>::_inelastic_strain_old; \
27 using ADViscoplasticityStressUpdateBase<compute_stage>::_verbose; \
28 using ADViscoplasticityStressUpdateBase<compute_stage>::_porosity_old; \
29 using ADViscoplasticityStressUpdateBase<compute_stage>::_max_inelastic_increment
31 template <ComputeStage>
36 template <ComputeStage compute_stage>
47 const ADReal & scalar_effective_inelastic_strain)
override;
71 const ADRankFourTensor & )
82 const ADReal & )
override
90 const unsigned int total_it)
override;
declareADValidParams(ADViscoplasticityStressUpdateBase)
void updateIntermediatePorosity(const ADRankTwoTensor &elastic_strain_increment)
usingSingleVariableReturnMappingSolutionMembers
bool requiresIsotropicTensor() override
Does the model require the elasticity tensor to be isotropic?
static InputParameters validParams()
virtual void initQpStatefulProperties() override
const MaterialProperty< Real > & _porosity_old
Material property for the old porosity.
ADReal _intermediate_porosity
Container for the porosity calculated from all other intelastic models except the current model.
Real _max_inelastic_increment
Max increment for inelastic strain.
virtual void propagateQpStatefulProperties() override
If updateState is not called during a timestep, this will be.
virtual void computeStressInitialize(const ADReal &, const ADRankFourTensor &)
Perform any necessary initialization before return mapping iterations.
const MaterialProperty< RankTwoTensor > & _inelastic_strain_old
void outputIterationSummary(std::stringstream *iter_output, const unsigned int total_it) override
Output summary information for the convergence history of the model.
ADStressUpdateBase is a material that is not called by MOOSE because of the compute=false flag set in...
ADViscoplasticityStressUpdateBase(const InputParameters ¶meters)
virtual ADReal computeDerivative(const ADReal &, const ADReal &) override
Compute the derivative of the residual as a function of the scalar variable.
usingStressUpdateBaseMembers
virtual void computeStressFinalize(const ADRankTwoTensor &)
Perform any necessary steps to finalize state after return mapping iterations.
const MaterialProperty< Real > & _effective_inelastic_strain_old
const std::string _total_strain_base_name
String designating the base name of the total strain.
virtual Real computeTimeStepLimit() override
Compute the limiting value of the time step for this material.
ADReal _derivative
Container for _derivative.
const bool _verbose
Flag to enable verbose output.
virtual Real computeReferenceResidual(const ADReal &effective_trial_stress, const ADReal &scalar_effective_inelastic_strain) override
Compute a reference quantity to be used for checking relative convergence.
const ADMaterialProperty(RankTwoTensor) &_strain_increment
Material property for the total strain increment.
Base class that provides capability for Newton return mapping iterations on a single variable.