SlipMultiStrengthSlipRule¶
Overview¶
These objects provide a relation between the stress, history, and temperature and the slip rate on each individual slip system where the slip rate is related to the resolved shear stress on the system

where
is the slip direction for group g, system i in the current coordinates and
is similarly the slip system normal. The interface used is:

where
indicates the slip group,
indicates the system within the group, and
is a collection of slip system strengths, defined by SlipHardening models:
The definition of the history evolution is left to the SlipHardening models.
The difference between this class and SlipStrengthSlipRule is that the slip system flow is proportional to multiple slip strength models, for example an isotropic and a kinematic strength, instead of a single flow strength model.
Implementations¶
Parameters¶
Parameter |
Object type |
Description |
Default |
|---|---|---|---|
|
|
List of slip hardening rules |
No |
Class description¶
-
class SlipMultiStrengthSlipRule : public neml::SlipRule¶
Class relying on multiple strength models (each of which is a function of some history variables with corresponding evolution laws)
Subclassed by neml::KinematicPowerLawSlipRule, neml::SlipStrengthSlipRule
Public Functions
Initialize with the strength models.
-
size_t nstrength() const¶
Number of strengths.
-
virtual double strength(const History &history, Lattice &L, double T, const History &fixed) const¶
Helper for models that want an average strength.
-
virtual double slip(size_t g, size_t i, const Symmetric &stress, const Orientation &Q, const History &history, Lattice &L, double T, const History &fixed) const¶
Slip rate on group g, system i.
-
virtual Symmetric d_slip_d_s(size_t g, size_t i, const Symmetric &stress, const Orientation &Q, const History &history, Lattice &L, double T, const History &fixed) const¶
Derivative of slip rate with respect to stress.
-
virtual History d_slip_d_h(size_t g, size_t i, const Symmetric &stress, const Orientation &Q, const History &history, Lattice &L, double T, const History &fixed) const¶
Derivative of slip rate with respect to history.
-
virtual History hist_rate(const Symmetric &stress, const Orientation &Q, const History &history, Lattice &L, double T, const History &fixed) const¶
History evolution equations.
-
virtual History d_hist_rate_d_stress(const Symmetric &stress, const Orientation &Q, const History &history, Lattice &L, double T, const History &fixed) const¶
Derivative of the history rate with respect to stress.
-
virtual History d_hist_rate_d_hist(const Symmetric &stress, const Orientation &Q, const History &history, Lattice &L, double T, const History &fixed) const¶
Derivative of the history rate with respect to the history.
-
virtual bool use_nye() const¶
Whether this model uses the Nye tensor.
-
virtual double sslip(size_t g, size_t i, double tau, std::vector<double> strengths, double T) const = 0¶
The slip rate on group g, system i given the resolved shear, the strength, and temperature
-
virtual double d_sslip_dtau(size_t g, size_t i, double tau, std::vector<double> strengths, double T) const = 0¶
Derivative of slip rate with respect to the resolved shear.
-
virtual std::vector<double> d_sslip_dstrength(size_t g, size_t i, double tau, std::vector<double> strengths, double T) const = 0¶
Derivative of the slip rate with respect to the strengths.