IsoKinJ2¶
Overview¶
This object implements standard
plasticity. The yield
function is

It assumes a “stress-like” history vector of
![\mathbf{q}=\left[\begin{array}{cc}Q & \mathbf{X}\end{array}\right]](_images/math/557318146e4c881c37db77f0bcc9a8110a6a7c55.png)
where
is the isotropic hardening stress and
is the backstress.
Warning
All of the NEML yield surfaces assume the opposite of the standard sign convention for isotropic and kinematic hardening. The hardening model is expected to return a negative value of the isotropic hardening stress and a negative value of the backstress.
Parameters¶
None.
Class description¶
-
class IsoKinJ2 : public neml::YieldSurface¶
Combined isotropic/kinematic hardening with a von Mises surface.
Public Functions
-
IsoKinJ2(ParameterSet ¶ms)¶
No actual parameters.
-
virtual size_t nhist() const¶
Expects 7 history variables [isotropic 6-Mandel-vector-backstress].
-
virtual void f(const double *const s, const double *const q, double T, double &fv) const¶
J2(stress + backstress) + sqrt(2/3) * isotropic.
-
virtual void df_ds(const double *const s, const double *const q, double T, double *const df) const¶
Gradient wrt stress.
-
virtual void df_dq(const double *const s, const double *const q, double T, double *const df) const¶
Gradient wrt history.
-
virtual void df_dsds(const double *const s, const double *const q, double T, double *const ddf) const¶
Hessian dsds.
-
virtual void df_dqdq(const double *const s, const double *const q, double T, double *const ddf) const¶
Hessian dqdq.
-
virtual void df_dsdq(const double *const s, const double *const q, double T, double *const ddf) const¶
Hessian dsdq.
-
virtual void df_dqds(const double *const s, const double *const q, double T, double *const ddf) const¶
Hessian dqds.
Public Static Functions
-
static std::string type()¶
String type for object system.
-
static std::unique_ptr<NEMLObject> initialize(ParameterSet ¶ms)¶
Initialize from a parameter set.
-
static ParameterSet parameters()¶
Default parameters.
-
IsoKinJ2(ParameterSet ¶ms)¶