20 params.
addClassDescription(
"Softening model with an abrupt stress release upon cracking. This "
21 "class relies on automatic differentiation and is intended to be used "
22 "with ADComputeSmearedCrackingStress.");
26 "residual_stress <= 1 & residual_stress >= 0",
27 "The fraction of the cracking stress allowed to be maintained following a crack.");
40 const ADReal & crack_initiation_strain,
41 const ADReal & crack_max_strain,
42 const ADReal & cracking_stress,
43 const ADReal & youngs_modulus,
48 const Real tiny = 1.e-16;
49 stiffness_ratio = tiny;
50 stress = tiny * crack_initiation_strain * youngs_modulus;
55 stiffness_ratio = stress / (crack_max_strain * youngs_modulus);
registerMooseObject("SolidMechanicsApp", ADAbruptSoftening)
DualNumber< Real, DNDerivativeType, true > ADReal
ADAbruptSoftening is a smeared crack softening model that abruptly drops the stress upon crack initia...
virtual void computeCrackingRelease(ADReal &stress, ADReal &stiffness_ratio, const ADReal &strain, const ADReal &crack_initiation_strain, const ADReal &crack_max_strain, const ADReal &cracking_stress, const ADReal &youngs_modulus, const ADReal &poissons_ratio) override
Compute the effect of the cracking release model on the stress and stiffness in the direction of a si...
ADAbruptSoftening(const InputParameters ¶meters)
static InputParameters validParams()
const Real & _residual_stress
Residual stress after full softening.
ADSmearedCrackSofteningBase is the base class for a set of models that define the softening behavior ...
static InputParameters validParams()