SlipPlaneDamage¶
These objects define an internal variable describing some damage process or measure of damage along a given slip plane. Specifically, the object defines the evolution rate of an internal variable describing the damage process on that plane along with the partial derivatives needed for an implicit integration of the rate equations.
Superclass description¶
-
class SlipPlaneDamage : public neml::NEMLObject¶
Slip plane damage functions.
Subclassed by neml::WorkPlaneDamage
Public Functions
-
SlipPlaneDamage(ParameterSet ¶ms)¶
-
virtual double setup() const = 0¶
Initial value.
-
virtual double damage_rate(const std::vector<double> &shears, const std::vector<double> &sliprates, double normal_stress, double damage) = 0¶
Damage rate.
-
virtual std::vector<double> d_damage_rate_d_shear(const std::vector<double> &shears, const std::vector<double> &sliprates, double normal_stress, double damage) = 0¶
Derivative wrt shears.
-
virtual std::vector<double> d_damage_rate_d_slip(const std::vector<double> &shears, const std::vector<double> &sliprates, double normal_stress, double damage) = 0¶
Derivative wrt slip rates.
-
virtual double d_damage_rate_d_normal(const std::vector<double> &shears, const std::vector<double> &sliprates, double normal_stress, double damage) = 0¶
Derivative wrt the normal stress.
-
virtual double d_damage_rate_d_damage(const std::vector<double> &shears, const std::vector<double> &sliprates, double normal_stress, double damage) = 0¶
Derivative wrt the damage variable.
-
SlipPlaneDamage(ParameterSet ¶ms)¶
Individual models¶
WorkPlaneDamage¶
Overview¶
This model represents damage as evolving with the total dissipated inelastic work on all slip systems on the given slip plane. The rate form of the damage variable is then

where the index
is the slip plane, the set
are all
the slip directions on that slip plane,
is the resolved shear
on a given slip system, and
is the slip rate on the
slip system.
Parameters¶
None
Class description¶
-
class WorkPlaneDamage : public neml::SlipPlaneDamage¶
Accumulated work.
Public Functions
-
WorkPlaneDamage(ParameterSet ¶ms)¶
-
virtual double setup() const¶
Initial value.
-
virtual double damage_rate(const std::vector<double> &shears, const std::vector<double> &sliprates, double normal_stress, double damage)¶
Damage rate.
-
virtual std::vector<double> d_damage_rate_d_shear(const std::vector<double> &shears, const std::vector<double> &sliprates, double normal_stress, double damage)¶
Derivative wrt shears.
-
virtual std::vector<double> d_damage_rate_d_slip(const std::vector<double> &shears, const std::vector<double> &sliprates, double normal_stress, double damage)¶
Derivative wrt slip rates.
-
virtual double d_damage_rate_d_normal(const std::vector<double> &shears, const std::vector<double> &sliprates, double normal_stress, double damage)¶
Derivative wrt the normal stress.
-
virtual double d_damage_rate_d_damage(const std::vector<double> &shears, const std::vector<double> &sliprates, double normal_stress, double damage)¶
Derivative wrt the damage variable.
Public Static Functions
-
static std::string type()¶
String type for the object system.
-
static std::unique_ptr<NEMLObject> initialize(ParameterSet ¶ms)¶
Initialize from a parameter set.
-
static ParameterSet parameters()¶
Default parameters.
-
WorkPlaneDamage(ParameterSet ¶ms)¶