GeneralLinearHardening

Overview

General linear interaction hardening – each hardening variable evolves as a linear combination of the slip rates (or absolute value of the slip rates) of all other slip systems.

\dot{\bar{\tau}}_{k}= \sum_{j=1}^{n_{total}} M_{k,j} \dot{\gamma}_j

or

\dot{\bar{\tau}}_{k}= \sum_{j=1}^{n_{total}} M_{k,j} \left|\dot{\gamma}_{j}\right|

where the indices k and j are the unrolled indices corresponding to slip group and system numbers.

The initial model strengths are constants.

The Matrix classes classes provide the definition of the interaction matrix.

Parameters

Parameter

Object type

Description

Default

M

neml::SquareMatrix

Interaction matrix

N

tau_0

std::vector<double>

Initial strengths

N

absvar

bool

If true use absolute value slip rates

:c:type`true`

Class description

class GeneralLinearHardening : public neml::SlipHardening

Generic linear hardening of the form tau_i = tau_0_i + H.gamma.

Public Functions

GeneralLinearHardening(ParameterSet &params)
virtual std::vector<std::string> varnames() const

Report your variable names.

virtual void set_varnames(std::vector<std::string> vars)

Set new varnames.

virtual void populate_hist(History &history) const

Request whatever history you will need.

virtual void init_hist(History &history) const

Setup history.

virtual double hist_to_tau(size_t g, size_t i, const History &history, Lattice &L, double T, const History &fixed) const

Map the set of history variables to the slip system hardening.

virtual History d_hist_to_tau(size_t g, size_t i, const History &history, Lattice &L, double T, const History &fixed) const

Derivative of the map wrt to history.

virtual History hist(const Symmetric &stress, const Orientation &Q, const History &history, Lattice &L, double T, const SlipRule &R, const History &fixed) const

The rate of the history.

virtual History d_hist_d_s(const Symmetric &stress, const Orientation &Q, const History &history, Lattice &L, double T, const SlipRule &R, const History &fixed) const

Derivative of the history wrt stress.

virtual History d_hist_d_h(const Symmetric &stress, const Orientation &Q, const History &history, Lattice &L, double T, const SlipRule &R, const History &fixed) const

Derivative of the history wrt the history.

virtual History d_hist_d_h_ext(const Symmetric &stress, const Orientation &Q, const History &history, Lattice &L, double T, const SlipRule &R, const History &fixed, std::vector<std::string> ext) const

Derivative of this history wrt the history, external variables.

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.