25#include "neml2/models/solid_mechanics/crystal_plasticity/SingleSlipHardeningRule.h"
27#include "neml2/tensors/tensors.h"
28#include "neml2/tensors/list_tensors.h"
38 "Parent class of slip hardening rules where all slip systems share the same strength.";
41 VariableName(
"state",
"internal",
"slip_hardening_rate");
42 options.set(
"slip_hardening_rate").doc() =
43 "Name of tensor to output the slip system hardening rates into";
45 options.set(
"slip_hardening").doc() =
"Name of current values of slip hardening";
47 options.set(
"sum_slip_rates").doc() =
"Name of tensor containing the sum of the slip rates";
53 _tau_dot(declare_output_variable<
Scalar>(
"slip_hardening_rate")),
54 _tau(declare_input_variable<
Scalar>(
"slip_hardening")),
55 _gamma_dot_sum(declare_input_variable<
Scalar>(
"sum_slip_rates"))
The accessor containing all the information needed to access an item in a LabeledAxis.
Definition LabeledAxisAccessor.h:44
The base class for all constitutive models.
Definition Model.h:53
const torch::TensorOptions & options() const
This model's tensor options.
Definition Model.h:116
static OptionSet expected_options()
Definition Model.cxx:33
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
static OptionSet expected_options()
Definition SingleSlipHardeningRule.cxx:33
SingleSlipHardeningRule(const OptionSet &options)
Definition SingleSlipHardeningRule.cxx:51
Definition CrossRef.cxx:32
LabeledAxisAccessor VariableName
Definition Variable.h:35