Go to the documentation of this file.
40 virtual std::string
modelName()
const override;
117 virtual Real
cohesion(
const Real internal_param)
const;
120 virtual Real
dcohesion(
const Real internal_param)
const;
123 virtual Real
phi(
const Real internal_param)
const;
126 virtual Real
dphi(
const Real internal_param)
const;
129 virtual Real
psi(
const Real internal_param)
const;
132 virtual Real
dpsi(
const Real internal_param)
const;
144 void abbo(
const Real sin3lode,
const Real sin_angle, Real & aaa, Real & bbb, Real & ccc)
const;
156 dabbo(
const Real sin3lode,
const Real sin_angle, Real & daaa, Real & dbbb, Real & dccc)
const;
RankTwoTensor flowPotential(const RankTwoTensor &stress, Real intnl) const override
The flow potential.
virtual Real phi(const Real internal_param) const
friction angle as a function of internal parameter
RankTwoTensor dflowPotential_dintnl(const RankTwoTensor &stress, Real intnl) const override
The derivative of the flow potential with respect to the internal parameter.
Real _lode_cutoff
if secondInvariant < _lode_cutoff then set Lode angle to zero. This is to guard against precision-los...
virtual std::string modelName() const override
RankTwoTensor df_dsig(const RankTwoTensor &stress, const Real sin_angle) const
d(yieldFunction)/d(stress), but with the ability to put friction or dilation angle into the result
RankTwoTensor dyieldFunction_dstress(const RankTwoTensor &stress, Real intnl) const override
The derivative of yield function with respect to stress.
const TensorMechanicsHardeningModel & _phi
Hardening model for phi.
const TensorMechanicsHardeningModel & _cohesion
Hardening model for cohesion.
Real _tt
edge smoothing parameter, in radians
static InputParameters validParams()
Real _small_smoother2
Square of tip smoothing parameter to smooth the cone at mean_stress = T.
MooseEnum _tip_scheme
The yield function is modified to f = s_m*sinphi + sqrt(a + s_bar^2 K^2) - C*cosphi where "a" depends...
RankFourTensor dflowPotential_dstress(const RankTwoTensor &stress, Real intnl) const override
The derivative of the flow potential with respect to stress.
const TensorMechanicsHardeningModel & _psi
Hardening model for psi.
InputParameters validParams< TensorMechanicsPlasticMohrCoulomb >()
virtual Real dpsi(const Real internal_param) const
d(psi)/d(internal_param);
virtual Real smooth(const RankTwoTensor &stress) const
returns the 'a' parameter - see doco for _tip_scheme
void abbo(const Real sin3lode, const Real sin_angle, Real &aaa, Real &bbb, Real &ccc) const
Computes Abbo et al's A, B and C parameters.
Real _sin3tt
sin(3*_tt) - useful for making comparisons with Lode angle
void dabbo(const Real sin3lode, const Real sin_angle, Real &daaa, Real &dbbb, Real &dccc) const
Computes derivatives of Abbo et al's A, B and C parameters wrt sin_angle.
Real _cap_start
smoothing parameter dictating when the 'cap' will start - see doco for _tip_scheme
virtual Real d2smooth(const RankTwoTensor &stress) const
returns the d^2a/dstress_mean^2 - see doco for _tip_scheme
Real dyieldFunction_dintnl(const RankTwoTensor &stress, Real intnl) const override
The derivative of yield function with respect to the internal parameter.
Real yieldFunction(const RankTwoTensor &stress, Real intnl) const override
The following functions are what you should override when building single-plasticity models.
Mohr-Coulomb plasticity, nonassociative with hardening/softening.
Real _cap_rate
dictates how quickly the 'cap' degenerates to a hemisphere - see doco for _tip_scheme
virtual Real dsmooth(const RankTwoTensor &stress) const
returns the da/dstress_mean - see doco for _tip_scheme
virtual Real cohesion(const Real internal_param) const
cohesion as a function of internal parameter
Plastic Model base class The virtual functions written below must be over-ridden in derived classes t...
virtual Real psi(const Real internal_param) const
dilation angle as a function of internal parameter
virtual Real dcohesion(const Real internal_param) const
d(cohesion)/d(internal_param);
virtual Real dphi(const Real internal_param) const
d(phi)/d(internal_param);
TensorMechanicsPlasticMohrCoulomb(const InputParameters ¶meters)
Hardening Model base class.