Combined isotropic hardening

Overview

This object combines several isotropic hardening models into a single effective value of the isotropic hardening variable. The isotropic hardening variable is defined as

Q=\sum_{i=1}^{n}Q_{i}\left(\alpha\right).

That is, it calls each individual isotropic hardening function in a list and sums the results.

The model requires a single history variable (\alpha) and maps to a single hardening variable (Q).

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

Parameter

Object type

Description

Default

rules

std::vector<neml::IsotropicHardeningRule>

List of hardening models

No

Class description

class CombinedIsotropicHardeningRule : public neml::IsotropicHardeningRule

Combined hardening rule superimposing a bunch of separate ones.

Public Functions

CombinedIsotropicHardeningRule(ParameterSet &params)

Parameter is a vector of isotropic hardening rules.

virtual void q(const double *const alpha, double T, double *const qv) const

q = Sum(q_i(alpha))

virtual void dq_da(const double *const alpha, double T, double *const dqv) const

Derivative of map.

size_t nrules() const

Getter on the number of combined rules.

Public Static Functions

static std::string type()

String type for the object system.

static std::unique_ptr<NEMLObject> initialize(ParameterSet &params)

Initialize from a parameter set.

static ParameterSet parameters()

Default parameters.