CombinedInelasticity

Overview

This class sums the plastic deformation rates from several InelasticModel objects into a single response. Mathematically then the plastic deformation becomes

\mathbf{D}^p = \sum_{i=1}^{n_{models}} \mathbf{D}^p_i

\mathbf{W}^p = \sum_{i=1}^{n_{models}} \mathbf{W}^p_i

where the i subscripts indicate the response of each individual model.

The history variables and associated history rates and derivatives from all the individual models are concatenated together. That is, the final set of history variables includes the history variables of all the individual models.

Parameters

Parameter

Object type

Description

Default

models

std::vector<neml::InelasticModel>

Individual models

No

Class description

class CombinedInelasticity : public neml::InelasticModel

Metamodel that combines the rates of several individual InelasticModels.

Public Functions

CombinedInelasticity(ParameterSet &params)

Initialize with the list of models.

virtual double strength(const History &history, Lattice &L, double T, const History &fixed) const

Helper for external models that want an average strength.

virtual void populate_hist(History &history) const

Setup all history variables.

virtual void init_hist(History &history) const

Initialize history with actual values.

virtual Symmetric d_p(const Symmetric &stress, const Orientation &Q, const History &history, Lattice &lattice, double T, const History &fixed) const

Sum the symmetric parts of the plastic deformation rates.

virtual SymSymR4 d_d_p_d_stress(const Symmetric &stress, const Orientation &Q, const History &history, Lattice &lattice, double T, const History &fixed) const

Sum the derivatives of the symmetric part with respect to stress.

virtual History d_d_p_d_history(const Symmetric &stress, const Orientation &Q, const History &history, Lattice &lattice, double T, const History &fixed) const

Concatenate the derivatives of the symmetric part with respect to history.

virtual History history_rate(const Symmetric &stress, const Orientation &Q, const History &history, Lattice &lattice, double T, const History &fixed) const

Concatenate the history rates.

virtual History d_history_rate_d_stress(const Symmetric &stress, const Orientation &Q, const History &history, Lattice &lattice, double T, const History &fixed) const

Concatenate the derivative of the history rates with respect to stress.

virtual History d_history_rate_d_history(const Symmetric &stress, const Orientation &Q, const History &history, Lattice &lattice, double T, const History &fixed) const

Concatenate the derivative of the history rates with respect to history.

virtual Skew w_p(const Symmetric &stress, const Orientation &Q, const History &history, Lattice &lattice, double T, const History &fixed) const

Sum the skew parts of the plastic deformation rates.

virtual SkewSymR4 d_w_p_d_stress(const Symmetric &stress, const Orientation &Q, const History &history, Lattice &lattice, double T, const History &fixed) const

Sum the derivatives of the skew parts with respect to the stress.

virtual History d_w_p_d_history(const Symmetric &stress, const Orientation &Q, const History &history, Lattice &lattice, double T, const History &fixed) const

Concatenate the derivatives of the skew parts with respect to the history.

virtual bool use_nye() const

Whether this model uses the Nye tensor.

Public Static Functions

static std::string type()

String type for the object system.

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

Initialize from parameter set.

static ParameterSet parameters()

Default parameters.