25#include "neml2/models/solid_mechanics/VoceIsotropicHardening.h"
35 options.doc() =
"Voce isotropic hardening model, \\f$ h = R \\left[ 1 - \\exp(-d \\varepsilon_p) "
36 "\\right] \\f$, where \\f$ R \\f$ is the isotropic hardening upon saturation, "
37 "and \\f$ d \\f$ is the hardening rate.";
40 options.set(
"saturated_hardening").doc() =
"Saturated isotropic hardening";
43 options.set(
"saturation_rate").doc() =
"Hardening saturation rate";
50 _R(declare_parameter<
Scalar>(
"R",
"saturated_hardening")),
51 _d(declare_parameter<
Scalar>(
"d",
"saturation_rate"))
The wrapper (decorator) for cross-referencing unresolved values at parse time.
Definition CrossRef.h:52
Definition IsotropicHardening.h:32
Variable< Scalar > & _h
Isotropic hardening.
Definition IsotropicHardening.h:43
const Variable< Scalar > & _ep
Equivalent plastic strain.
Definition IsotropicHardening.h:40
static OptionSet expected_options()
Definition IsotropicHardening.cxx:30
const torch::TensorOptions & options() const
This model's tensor options.
Definition Model.h:116
A custom map-like data structure. The keys are strings, and the values can be nonhomogeneously typed.
Definition OptionSet.h:59
The (logical) scalar.
Definition Scalar.h:38
Derivative d(const VariableBase &x)
Create a wrapper representing the derivative dy/dx.
Definition Variable.cxx:102
Definition VoceIsotropicHardening.h:32
VoceIsotropicHardening(const OptionSet &options)
Definition VoceIsotropicHardening.cxx:48
const Scalar & _R
Definition VoceIsotropicHardening.h:41
static OptionSet expected_options()
Definition VoceIsotropicHardening.cxx:32
const Scalar & _d
Definition VoceIsotropicHardening.h:42
void set_value(bool out, bool dout_din, bool d2out_din2) override
The map between input -> output, and optionally its derivatives.
Definition VoceIsotropicHardening.cxx:56
Derived exp(const Derived &a)
Definition BatchTensorBase.h:448
Definition CrossRef.cxx:32