Go to the documentation of this file.
21 params.addRequiredParam<Real>(
"critical_energy",
"Critical Energy");
22 params.addParam<Real>(
"k_fail", 1e-6,
"Post failure stiffness");
23 params.addParam<Real>(
"upper_limit_damage",
25 "Upper limit of damage beyond which constitutive check is not performed");
32 _crit_energy(getParam<Real>(
"critical_energy")),
33 _kfail(getParam<Real>(
"k_fail")),
34 _upper_lim_damage(getParam<Real>(
"upper_limit_damage")),
35 _energy(declareProperty<Real>(
"energy")),
36 _energy_old(getMaterialPropertyOld<Real>(
"energy"))
40 mooseError(
" RateDpeSmearIsoCrackModel Error: Requires 2 state variables - nstate = 2");
48 _intvar[_qp][1] =
const_cast<MaterialProperty<std::vector<Real>
> &>(
_intvar_old)[_qp][1] =
62 for (
unsigned int i = 0; i < LIBMESH_DIM; i++)
70 for (
unsigned int i = 0; i < LIBMESH_DIM; i++)
83 for (
unsigned int i = 0; i < LIBMESH_DIM; i++)
128 for (
unsigned int i = 0; i <
_nstate; i++)
Real _intvar_incr_tol
Tolerance for zero.
ColumnMajorMatrix _s0_evec
registerMooseObject("SolidMechanicsApp", RateDepSmearIsoCrackModel)
virtual void initQpStatefulProperties()
ColumnMajorMatrix _dstrain_evec
MaterialProperty< Real > & _energy
ColumnMajorMatrix _dstrain_diag_neg
ExpressionBuilder::EBTerm pow(const ExpressionBuilder::EBTerm &left, T exponent)
virtual void initVariables()
RateDepSmearCrackModel is the base class for rate dependent continuum damage model.
virtual void calcJacobian()
This function calculates the Jacobian.
std::vector< Real > _intvar_tmp
ColumnMajorMatrix _s0_diag_pos
virtual Real damageRate()
This function calculates rate of damage based on energy.
Real _zero_tol
Relative tolerance factor for convergence of the Newton Raphson solve.
virtual void postSolveStress()
This function updates the stress after solve.
ColumnMajorMatrix columnMajorMatrix() const
bool _err_tol
Convergence flag.
std::vector< Real > _intvar_incr
ColumnMajorMatrix _dstrain_diag
virtual ~RateDepSmearIsoCrackModel()
InputParameters validParams< RateDepSmearIsoCrackModel >()
InputParameters validParams< RateDepSmearCrackModel >()
RateDepSmearIsoCrackModel(const InputParameters ¶meters)
unsigned int _nstate
reference damage rate
ColumnMajorMatrix _s0_diag_neg
ColumnMajorMatrix _s0_diag
Real _kfail
Required parameter.
virtual void initQpStatefulProperties()
std::vector< Real > _intvar_old_tmp
MaterialProperty< std::vector< Real > > & _intvar
Variable value.
Real _exponent
Number of state variables.
In this class a rate dependent isotropic damage model is implemented.
virtual void initVariables()
const MaterialProperty< Real > & _energy_old
ColumnMajorMatrix _dstrain_diag_pos
virtual void calcStateIncr()
This function calculated thw increment of the state variables (dv) used to form the residual.
const MaterialProperty< std::vector< Real > > & _intvar_old
Real _upper_lim_damage
Used to avoid non-positive definiteness.