Go to the documentation of this file.
14 template <ComputeStage>
19 template <ComputeStage compute_stage>
27 virtual void updateState(ADRankTwoTensor & strain_increment,
28 ADRankTwoTensor & inelastic_strain_increment,
29 const ADRankTwoTensor & rotation_increment,
30 ADRankTwoTensor & stress_new,
32 const ADRankFourTensor & elasticity_tensor,
47 virtual ADReal
initialGuess(
const ADReal & effective_trial_stress)
override;
54 const ADReal & scalar)
override;
56 ADReal
computeH(
const Real n,
const ADReal & gauge_stress,
const bool derivative =
false);
59 const ADReal & equiv_stress,
60 const ADRankTwoTensor & dev_stress,
61 const ADRankTwoTensor & stress);
65 ADRankTwoTensor & creep_strain_increment,
66 const ADReal & equiv_stress,
67 const ADRankTwoTensor & dev_stress,
68 const ADRankTwoTensor & stress);
const Real _pore_shape_factor
Pore shape factor depending on pore shape model.
ADReal computeH(const Real n, const ADReal &gauge_stress, const bool derivative=false)
PoreShapeModel
Enum to choose which pore shape model to use.
enum ADViscoplasticityStressUpdate::ViscoplasticityModel _model
virtual ADReal minimumPermissibleValue(const ADReal &effective_trial_stress) const override
Compute the minimum permissible value of the scalar.
declareADValidParams(ADViscoplasticityStressUpdate)
const RankTwoTensor _identity_two
Rank two identity tensor.
void computeInelasticStrainIncrement(ADReal &gauge_stress, ADReal &dpsi_dgauge, ADRankTwoTensor &creep_strain_increment, const ADReal &equiv_stress, const ADRankTwoTensor &dev_stress, const ADRankTwoTensor &stress)
const Real _minimum_equivalent_stress
Minimum value of equivalent stress below which viscoplasticiy is not calculated.
virtual ADReal initialGuess(const ADReal &effective_trial_stress) override
Compute an initial guess for the value of the scalar.
enum ADViscoplasticityStressUpdate::PoreShapeModel _pore_shape
ADReal _hydro_stress
Container for hydrostatic stress.
const ADMaterialProperty(Real) &_coefficient
Leading coefficient.
ViscoplasticityModel
Enum to choose which viscoplastic model to use.
const RankTwoTensor _dhydro_stress_dsigma
Derivative of hydrostatic stress with respect to the stress tensor.
const Real _maximum_equivalent_stress
Maximum value of equivalent stress above which an exception is thrown.
const Real _power_factor
Power factor used for LPS model.
static InputParameters validParams()
const Real _maximum_gauge_ratio
Maximum ratio between the gauge stress and the equilvalent stress.
const Real _power
Exponent on the effective stress.
virtual void updateState(ADRankTwoTensor &strain_increment, ADRankTwoTensor &inelastic_strain_increment, const ADRankTwoTensor &rotation_increment, ADRankTwoTensor &stress_new, const RankTwoTensor &stress_old, const ADRankFourTensor &elasticity_tensor, const RankTwoTensor &elastic_strain_old) override
Given a strain increment that results in a trial stress, perform some procedure (such as an iterative...
virtual ADReal computeResidual(const ADReal &effective_trial_stress, const ADReal &scalar) override
Perform any necessary steps to finalize state after return mapping iterations.
usingViscoplasticityStressUpdateBaseMembers
ADViscoplasticityStressUpdate(const InputParameters ¶meters)
ADRankTwoTensor computeDGaugeDSigma(const ADReal &gauge_stress, const ADReal &equiv_stress, const ADRankTwoTensor &dev_stress, const ADRankTwoTensor &stress)
virtual ADReal maximumPermissibleValue(const ADReal &effective_trial_stress) const override
Compute the maximum permissible value of the scalar.