Hardening models
NEML uses two types of hardening models: simple models intended for use with associative plasticity and nonassociative hardening models. The simple models only need to define the map between the “strain-like” history variables and the “stress-like” internal variables that feed into the Yield surfaces. Nonassociative models need to define both this map and the hardening evolution rate for each “strain-like” internal variable.
The same set of classes are used to implement isotropic and kinematic hardening.
- Simple hardening rules
- Overview
- Implementations
- Isotropic hardening
- Overview
- Implementations
- Linear isotropic hardening
- Overview
- Parameters
- Class description
LinearIsotropicHardeningRuleLinearIsotropicHardeningRule::LinearIsotropicHardeningRule()LinearIsotropicHardeningRule::q()LinearIsotropicHardeningRule::dq_da()LinearIsotropicHardeningRule::s0()LinearIsotropicHardeningRule::K()LinearIsotropicHardeningRule::type()LinearIsotropicHardeningRule::initialize()LinearIsotropicHardeningRule::parameters()
- Interpolated isotropic hardening
- Voce isotropic hardening
- Overview
- Parameters
- Class description
VoceIsotropicHardeningRuleVoceIsotropicHardeningRule::VoceIsotropicHardeningRule()VoceIsotropicHardeningRule::q()VoceIsotropicHardeningRule::dq_da()VoceIsotropicHardeningRule::s0()VoceIsotropicHardeningRule::R()VoceIsotropicHardeningRule::d()VoceIsotropicHardeningRule::type()VoceIsotropicHardeningRule::initialize()VoceIsotropicHardeningRule::parameters()
- Power law isotropic hardening
- Combined isotropic hardening
- Overview
- Parameters
- Class description
CombinedIsotropicHardeningRuleCombinedIsotropicHardeningRule::CombinedIsotropicHardeningRule()CombinedIsotropicHardeningRule::q()CombinedIsotropicHardeningRule::dq_da()CombinedIsotropicHardeningRule::nrules()CombinedIsotropicHardeningRule::type()CombinedIsotropicHardeningRule::initialize()CombinedIsotropicHardeningRule::parameters()
- Linear isotropic hardening
- Class description
- Kinematic hardening
- Combined isotropic/kinematic hardening
- Isotropic hardening
- Class description
- Nonassociative hardening rules
- Overview
- Implementations
- Chaboche nonassociative hardening
- Overview
- Parameters
- Class description
ChabocheChaboche::Chaboche()Chaboche::ninter()Chaboche::populate_hist()Chaboche::init_hist()Chaboche::q()Chaboche::dq_da()Chaboche::h()Chaboche::dh_ds()Chaboche::dh_da()Chaboche::h_time()Chaboche::dh_ds_time()Chaboche::dh_da_time()Chaboche::h_temp()Chaboche::dh_ds_temp()Chaboche::dh_da_temp()Chaboche::n()Chaboche::c()Chaboche::type()Chaboche::initialize()Chaboche::parameters()
- Gamma models
- ChabocheVoceRecovery: a special variant of the Chaboche model
- Overview
- Parameters
- Class description
ChabocheVoceRecoveryChabocheVoceRecovery::ChabocheVoceRecovery()ChabocheVoceRecovery::ninter()ChabocheVoceRecovery::populate_hist()ChabocheVoceRecovery::init_hist()ChabocheVoceRecovery::q()ChabocheVoceRecovery::dq_da()ChabocheVoceRecovery::h()ChabocheVoceRecovery::dh_ds()ChabocheVoceRecovery::dh_da()ChabocheVoceRecovery::h_time()ChabocheVoceRecovery::dh_ds_time()ChabocheVoceRecovery::dh_da_time()ChabocheVoceRecovery::h_temp()ChabocheVoceRecovery::dh_ds_temp()ChabocheVoceRecovery::dh_da_temp()ChabocheVoceRecovery::n()ChabocheVoceRecovery::type()ChabocheVoceRecovery::initialize()ChabocheVoceRecovery::parameters()
- Chaboche nonassociative hardening
- Class description
NonAssociativeHardeningNonAssociativeHardening::NonAssociativeHardening()NonAssociativeHardening::ninter()NonAssociativeHardening::q()NonAssociativeHardening::dq_da()NonAssociativeHardening::h()NonAssociativeHardening::dh_ds()NonAssociativeHardening::dh_da()NonAssociativeHardening::h_time()NonAssociativeHardening::dh_ds_time()NonAssociativeHardening::dh_da_time()NonAssociativeHardening::h_temp()NonAssociativeHardening::dh_ds_temp()NonAssociativeHardening::dh_da_temp()