Standard damage¶
Overview¶
This object implements a “standard” damage model where the single damage variable varies only with the scalar effective inelastic strain rate. This simplifies the damage update to

A separate interface defines the damage update function
.
Implementations¶
Class description¶
-
class StandardScalarDamage : public neml::ScalarDamage¶
A standard damage model where the damage rate goes as the plastic strain.
Subclassed by neml::ExponentialWorkDamage, neml::PowerLawDamage
Public Functions
-
StandardScalarDamage(ParameterSet ¶ms)¶
Parameters: elastic model, base model, CTE, solver tolerance, solver maximum number of iterations, verbosity flag
-
virtual void damage(double d_np1, double d_n, const double *const e_np1, const double *const e_n, const double *const s_np1, const double *const s_n, double T_np1, double T_n, double t_np1, double t_n, double *const dd) const¶
Damage, now only proportional to the inelastic effective strain.
-
virtual void ddamage_dd(double d_np1, double d_n, const double *const e_np1, const double *const e_n, const double *const s_np1, const double *const s_n, double T_np1, double T_n, double t_np1, double t_n, double *const dd) const¶
Derivative of damage wrt damage.
-
virtual void ddamage_de(double d_np1, double d_n, const double *const e_np1, const double *const e_n, const double *const s_np1, const double *const s_n, double T_np1, double T_n, double t_np1, double t_n, double *const dd) const¶
Derivative of damage wrt strain.
-
virtual void ddamage_ds(double d_np1, double d_n, const double *const e_np1, const double *const e_n, const double *const s_np1, const double *const s_n, double T_np1, double T_n, double t_np1, double t_n, double *const dd) const¶
Derivative of damage wrt stress.
-
virtual void f(const double *const s_np1, double d_np1, double T_np1, double &f) const = 0¶
The part of the damage rate proportional to the inelastic strain rate.
-
virtual void df_ds(const double *const s_np1, double d_np1, double T_np1, double *const df) const = 0¶
Derivative with respect to stress.
-
virtual void df_dd(const double *const s_np1, double d_np1, double T_np1, double &df) const = 0¶
Derivative with respect to damage.
-
StandardScalarDamage(ParameterSet ¶ms)¶