Go to the documentation of this file.
31 virtual std::string
modelName()
const override;
40 Real ep_plastic_tolerance,
42 Real & returned_intnl,
43 std::vector<Real> & dpm,
45 std::vector<Real> & yf,
46 bool & trial_stress_inadmissible)
const override;
54 const std::vector<Real> & cumulative_pm)
const override;
60 Real intnl)
const override;
67 Real intnl)
const override;
InputParameters validParams< TensorMechanicsPlasticJ2 >()
virtual Real dyieldStrength(Real intnl) const
d(yieldStrength)/d(intnl)
TensorMechanicsPlasticJ2(const InputParameters ¶meters)
virtual Real yieldStrength(Real intnl) const
YieldStrength.
J2 plasticity, associative, with hardning.
virtual RankTwoTensor dyieldFunction_dstress(const RankTwoTensor &stress, Real intnl) const override
The derivative of yield function with respect to stress.
virtual Real yieldFunction(const RankTwoTensor &stress, Real intnl) const override
The following functions are what you should override when building single-plasticity models.
virtual std::string modelName() const override
Real dyieldFunction_dintnl(const RankTwoTensor &stress, Real intnl) const override
The derivative of yield function with respect to the internal parameter.
virtual RankFourTensor consistentTangentOperator(const RankTwoTensor &trial_stress, Real intnl_old, const RankTwoTensor &stress, Real intnl, const RankFourTensor &E_ijkl, const std::vector< Real > &cumulative_pm) const override
Calculates a custom consistent tangent operator.
static InputParameters validParams()
RankTwoTensor dflowPotential_dintnl(const RankTwoTensor &stress, Real intnl) const override
The derivative of the flow potential with respect to the internal parameter.
virtual RankFourTensor dflowPotential_dstress(const RankTwoTensor &stress, Real intnl) const override
The derivative of the flow potential with respect to stress.
virtual bool useCustomReturnMap() const override
Returns false. You will want to override this in your derived class if you write a custom returnMap f...
virtual bool useCustomCTO() const override
Returns false. You will want to override this in your derived class if you write a custom consistent ...
const TensorMechanicsHardeningModel & _strength
yield strength, from user input
const bool _use_custom_cto
Whether to use the custom consistent tangent operator calculation.
Plastic Model base class The virtual functions written below must be over-ridden in derived classes t...
const unsigned _max_iters
max iters for custom return map loop
virtual bool returnMap(const RankTwoTensor &trial_stress, Real intnl_old, const RankFourTensor &E_ijkl, Real ep_plastic_tolerance, RankTwoTensor &returned_stress, Real &returned_intnl, std::vector< Real > &dpm, RankTwoTensor &delta_dp, std::vector< Real > &yf, bool &trial_stress_inadmissible) const override
Performs a custom return-map.
const bool _use_custom_returnMap
Whether to use the custom return-map algorithm.
virtual RankTwoTensor flowPotential(const RankTwoTensor &stress, Real intnl) const override
The flow potential.
Hardening Model base class.