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)