This page describes the StandardElastoViscoPlasticity brick. This brick is used to describe a specific class of strain based behaviours based on an additive split of the total strain \(\underline{\epsilon}^{\mathrm{to}}\) into an elastic part \(\underline{\epsilon}^{\mathrm{el}}\) and one or several inelastic strains describing plastic (time-independent) flows and/or viscoplastic (time-dependent) flows: \[ \underline{\epsilon}^{\mathrm{to}}=\underline{\epsilon}^{\mathrm{el}} +\sum_{i_{\mathrm{p}}=0}^{n_{\mathrm{p}}}\underline{\epsilon}^{\mathrm{p}}_{i_{\mathrm{p}}} +\sum_{i_{\mathrm{vp}}=0}^{n_{\mathrm{vp}}}\underline{\epsilon}^{\mathrm{vp}}_{i_{\mathrm{vp}}} \]

This equation defines the equation associated with the elastic strain \(\underline{\epsilon}^{\mathrm{el}}\).

The brick decomposes the behaviour into two components:

Porous viscoplasticity

This page only introduces stress criteria which are not coupled with the evolution of the porosity. Stress criteria coupled with the evolution of porosity is described on a dedicated page.

0.1 A detailled Example

@Brick "StandardElastoViscoPlasticity" {
  // Here the stress potential is given by the Hooke law. We define:
  // - the elastic properties (Young modulus and Poisson ratio).
  //   Here the Young modulus is a function of the temperature.
  //   The Poisson ratio is constant.
  // - the thermal expansion coefficient
  // - the reference temperature for the thermal expansion
  stress_potential : "Hooke" {
    young_modulus : "2.e5 - (1.e5*((T - 100.)/960.)**2)",
    poisson_ratio : 0.3,
    thermal_expansion : "1.e-5 + (1.e-5  * ((T - 100.)/960.) ** 4)",
    thermal_expansion_reference_temperature : 0
  },
  // Here we define only one viscplastic flow defined by the Norton law,
  // which is based:
  // - the von Mises stress criterion
  // - one isotorpic hardening rule based on Voce formalism
  // - one kinematic hardening rule following the Armstrong-Frederick law
  inelastic_flow : "Norton" {
    criterion : "Mises",
    isotropic_hardening : "Voce" {R0 : 200, Rinf : 100, b : 20},
    kinematic_hardening : "Armstrong-Frederick" {
      C : "1.e6 - 98500 * (T - 100) / 96",
      D : "5000 - 5* (T - 100)"
    },
    K : "(4200. * (T + 20.) - 3. * (T + 20.0)**2)/4900.",
    n : "7. - (T - 100.) / 160.",
    Ksf : 3
  }
};

1 List of available stress potentials

Relations between stress potentials. The stress potentials usable by the end users are marked in red.

1.1 The Hooke stress potential

This stress potential implements the Hooke law, i.e. a linear relation between the elastic strain and the stress, as follows:

\[ \underline{\sigma}=\underline{\mathbf{D}}\,\colon\,\underline{\epsilon}^{\mathrm{el}} \] where \(\underline{\mathbf{D}}\) is the elastic stiffness tensor.

This stress potential applies to isotropic and orthotropic materials. This stress potential provides:

The Hooke stress potential is fully described here.

1.2 The IsotropicDamage stress potential

This stress potential adds to the Hooke stress potential the description of an isotropioc damage. The relation \[ \underline{\sigma}=\left(1-d\right)\,\underline{\mathbf{D}}\,\colon\,\underline{\epsilon}^{\mathrm{el}} \] where \(\underline{\mathbf{D}}\) is the elastic stiffness tensor and \(d\) is the isotropic damage variable.

This stress potential inherits all the features and options provided by the Hooke stress potential. The Hooke stress potential is fully described here.

1.3 The DDIF2 stress potential

The DDIF2 behaviour is used to describe the brittle nature of nuclear fuel ceramics and is usually coupled with a description of the viscoplasticity of those ceramics (See for example [3]).

This stress potential adds to the Hooke stress potential the description of cracking through an additional strain. As such, it inherits all the features provided by the Hooke stress potential.

The Hooke stress potential is fully described here.

The DDIF2 stress potential is fully described here.

2 Inelastic flows

2.1 List of available inelastic flows

2.1.1 The Plastic inelastic flow

The plastic flow is defined by:

The plastic strain rate satisfies: \[ \underline{\dot{\epsilon}}^{\mathrm{p}}=\dot{\lambda}\,{{\displaystyle \frac{\displaystyle \partial g}{\displaystyle \partial \underline{\sigma}}}} \]

The plastic multiplier satifies the Kuhn-Tucker relation: \[ \left\{ \begin{aligned} \dot{\lambda}\,f{\left(\underline{\sigma},p\right)}&=0\\ \dot{\lambda}&\geq 0 \end{aligned} \right. \]

The flow is associated is \(f\) is equal to \(g\). In practice \(f\) is defined by a stress criterion \(\phi\), a set of kinematic hardening rules, and an isotropic hardening rule, as follows:

\[ f{\left(\underline{\sigma},p\right)}= \phi{\left(\underline{\sigma}-\sum_{i}\underline{X}_{i}\right)}-\sum_{i}R_{i}{\left(p\right)} \]

where \(p\) is the equivalent plastic strain. Here we have decomposed the limit of the elastic domain as a sum, denoted \(\sum_{i}R_{i}{\left(p\right)}\), to indicate that one may define it by combining various predefined forms of isotropic hardening rules (Voce, Linear, etc.) defined hereafter.

2.1.1.1 Maximum equivalent stress in the Plastic flow

During the Newton iterations, the current estimate of the equivalent stress \(\sigma_{\mathrm{eq}}\) may be significantly higher than the elastic limit \(R\). This may lead to a divergence of the Newton algorithm.

One may reject the Newton steps leading to such high values of the elastic limit by specifying a relative threshold denoted \(\alpha\), i.e. if \(\sigma_{\mathrm{eq}}\) is greater than \(\alpha\,\cdot\,R\). A typical value for \(\alpha\) is \(1.5\). This relative threshold is specified by the maximum_equivalent_stress_factor option.

In some cases, rejecting steps may also lead to a divergence of the Newton algorithm, so one may specify a relative threshold \(\beta\) on the iteration number which desactivate this check, i.e. the check is performed only if the current iteration number is below \(\beta\,\cdot\,i_{\max{}}\) where \(i_{\max{}}\) is the maximum number of iterations allowed for the Newton algorithm. A typical value for \(\beta\) is \(0.4\). This relative threshold is specified by the equivalent_stress_check_maximum_iteration_factor option.

2.1.1.1.1 Example
@DSL Implicit;
@Behaviour PerfectPlasticity;
@Author Thomas Helfer;
@Date 17 / 08 / 2020;
@Description{};

@Epsilon 1.e-14;
@Theta 1;

@Brick StandardElastoViscoPlasticity{
  stress_potential : "Hooke" {young_modulus : 200e9, poisson_ratio : 0.3},
  inelastic_flow : "Plastic" {
    criterion : "Mises",
    isotropic_hardening : "Linear" {R0 : 150e6},
    maximum_equivalent_stress_factor : 1.5,
    equivalent_stress_check_maximum_iteration_factor: 0.4
  }
};

2.1.2 The Norton inelastic flow

The plastic flow is defined by:

2.1.3 The HyperbolicSine inelastic flow

The viscoplastic flow is defined by:

2.1.4 The HarmonicSumOfNortonHoffViscoplasticFlows inelastic flow

The equivalent viscoplastic strain rate \(\dot{p}\) is defined as:

\[ \dfrac{1}{\dot{p}}=\sum_{i=1}^{N}\dfrac{1}{\dot{p}_{i}} \]

where \(\dot{p}_{i}\) has an expression similar to the the Norton-Hoff viscoplastic flow:

\[ \dot{p}_{i}=A_{i}\,{\left(\dfrac{\left<\phi{\left(\underline{\sigma}-\sum_{j}\underline{X}_{j}\right)}-\sum_{j}R_{j}{\left(p\right)}\right>}{K_{i}}\right)}^{n_{i}} \]

in which appear:

2.1.4.1 Example

@Brick StandardElastoViscoPlasticity{
  stress_potential : "Hooke" {young_modulus : 150e9, poisson_ratio : 0.3},
  inelastic_flow : "HarmonicSumOfNortonHoffViscoplasticFlows" {
    criterion : "Mises",
    A : {8e-67, 8e-67},
    K : {1,1},
    n : {8.2,8.2}
  }
};

2.1.4.2 Newton steps rejection

The exponential nature of the hyperbolic sinus function may lead to divergence of the Newton method. To avoid this, one may specify a relative threshold denoted \(K_{sf}\): if the stress estimate is greater than \(K_{sf}\,K\), the step is rejected.

2.1.5 The UserDefinedViscoplasticity inelastic flow

The UserDefinedViscoplasticity inelastic flow allows the user to specify the viscoplastic strain rate vp as a function of f and p where:

This function shall be given by a string option named vp. This function must depend on f. Dependance to p is optional.

The function may also depend on other variables. Let A be such a variable. The UserDefinedViscoplasticity flow will look if an option named A has been given to the flow:

If required, the derivatives of vp with respect to f and p can be provided through the options dvp_df and dvp_dp. The derivatives dvp_df and dvp_dp can depend on two additional variables, vp and seps, which denotes the viscoplastic strain rate and a stress threshold.

If those derivatives are not provided, automatic differentiation will be used. The user shall be warned that the automatic differentiation provided by the tfel::math::Evaluator class may result in inefficient code.

Example of usage

@Parameter temperature Ta = 600;
@Parameter strain p0 = 1e-8;

@Brick StandardElastoViscoPlasticity{
  stress_potential : "Hooke" {young_modulus : 150e9, poisson_ratio : 0.3},
  inelastic_flow : "UserDefinedViscoplasticity" {
    criterion : "Mises",
    E : 8.2,
    A : "8e-67 * exp(- T / Ta)",
    m : 0.32,
    vp : "A * (f ** E) / ((p + p0) ** m)",
    dvp_df : "E * vp / (max(f, seps))"
    // dvp_dp is evaluated by automatic differentiation (which is not recommended)
  }
};

2.2 Newton steps rejections based on the change of the flow direction between two successive estimates

Some stress criteria (Hosford 1972, Barlat 2004, Mohr-Coulomb) shows sharp edges that may cause the failure of the standard Newton algorithm, due to oscillations in the prediction of the flow direction.

Rejecting Newton steps leading to a too large variation of the flow direction between the new estimate of the flow direction and the previous estimate is a cheap and efficient method to overcome this issue. This method can be viewed as a bisectional linesearch based on the Newton prediction: the Newton steps magnitude is divided by two if its results to a too large change in the flow direction.

More precisely, the change of the flow direction is estimated by the computation of the cosine of the angle between the two previous estimates:

\[ \cos{\left(\alpha_{\underline{n}}\right)}=\dfrac{\underline{n}\,\colon\,\underline{n}_{p}}{\lVert \underline{n}\rVert\,\lVert \underline{n}\rVert} \]

with \(\lVert \underline{n}\rVert=\sqrt{\underline{n}\,\colon\,\underline{n}}\).

The Newton step is rejected if the value of \(\cos{\left(\alpha_{\underline{n}}\right)}\) is lower than a user defined threshold. This threshold must be in the range \(\left[-1:1\right]\), but due to the slow variation of the cosine near \(0\), a typical value of this threshold is \(0.99\) which is equivalent to impose that the angle between two successive estimates is below \(8\mbox{}^{\circ}\).

2.3 List of available stress criteria

The following section describes stress criteria available by default. However, the StandardElastoViscoPlasticity brick can also be extended by the user:

2.3.1 von Mises stress criterion

2.3.1.1 Definition

The von Mises stress is defined by: \[ \sigma_{\mathrm{eq}}=\sqrt{\dfrac{3}{2}\,\underline{s}\,\colon\,\underline{s}}=\sqrt{3\,J_{2}} \] where: - \(\underline{s}\) is the deviatoric stress defined as follows: \[ \underline{s}=\underline{\sigma}-\dfrac{1}{3}\,{\mathrm{tr}{\left(\underline{\sigma}\right)}}\,\underline{I} \] - \(J_{2}\) is the second invariant of \(\underline{s}\).

In terms of the eigenvalues of the stress, denoted by \(\sigma_{1}\), \(\sigma_{2}\) and \(\sigma_{3}\), the von Mises stress can also be defined by: \[ \sigma_{\mathrm{eq}}=\sqrt{\dfrac{1}{2}{\left({\left|\sigma_{1}-\sigma_{2}\right|}^{2}+{\left|\sigma_{1}-\sigma_{3}\right|}^{2}+{\left|\sigma_{2}-\sigma_{3}\right|}^{2}\right)}} \]

2.3.1.2 Options

This stress criterion does not have any option.

    criterion : "Mises"

2.3.2 Drucker 1949 stress criterion

The Drucker 1949 stress is defined by: \[ \sigma_{\mathrm{eq}}=\sqrt{3}\sqrt[6]{J_{2}^3-c\,J_{3}^{2}} \] where:

2.3.3 Example

    criterion : "Drucker 1949" {c : 1.285}

2.3.3.1 Options

The user must provide the \(c\) coefficient.

2.3.4 Hosford 1972 stress criterion

The Hosford equivalent stress is defined by (see [4]): \[ \sigma_{\mathrm{eq}}^{H}=\sqrt[a]{\dfrac{1}{2}{\left({\left|\sigma_{1}-\sigma_{2}\right|}^{a}+{\left|\sigma_{1}-\sigma_{3}\right|}^{a}+{\left|\sigma_{2}-\sigma_{3}\right|}^{a}\right)}} \] where \(\sigma_{1}\), \(\sigma_{2}\) and \(\sigma_{3}\) are the eigenvalues of the stress.

Therefore, when \(a\) goes to infinity, the Hosford stress reduces to the Tresca stress. When \(n = 2\) the Hosford stress reduces to the von Mises stress.

Comparison of the Hosford stress a=100,a=8 and the von Mises stress in plane stress

2.3.5 Options

The Hosford exponent a is mandatory.

Specifying the eigen solver using the eigen_solver option is optional. This option can have the value default or the value Jacobi.

2.3.6 Example

    criterion : "Hosford" {a : 6}

2.3.7 Notes

The Hosford yield surface may have sharp edges which may lead to divergence of the Newton algorithm du to oscillations of the flow direction. Specifying a threshold for the angle between. See Section 2.2 for details.

2.3.7.1 Options

The user must provide the Hosford exponent \(a\).

2.3.8 Isotropic Cazacu 2004 stress criterion

In order to describe yield differential effects, the isotropic Cazacu 2004 equivalent stress criterion is defined by (see [5]):

\[ \sigma_{\mathrm{eq}}=\sqrt[3]{J_{2}^{3/2} - c \, J_{3}} \]

where:

2.3.9 Example

    criterion : "Isotropic Cazacu 2004" {c : -1.056}

2.3.10 Hill stress criterion

This Hill criterion, also called Hill1948 criterion, is based on the equivalent stress \(\sigma_{\mathrm{eq}}^{H}\) defined as follows: \[ \begin{aligned} \sigma_{\mathrm{eq}}^{H}&=\sqrt{\underline{\sigma}\,\colon\,\underline{\mathbf{H}}\,\colon\,\underline{\sigma}}\\ &=\sqrt{F\,{\left(\sigma_{11}-\sigma_{22}\right)}^2+ G\,{\left(\sigma_{22}-\sigma_{33}\right)}^2+ H\,{\left(\sigma_{33}-\sigma_{11}\right)}^2+ 2\,L\sigma_{12}^{2}+ 2\,M\sigma_{13}^{2}+ 2\,N\sigma_{23}^{2}} \end{aligned} \]

Warning This convention is given in the book of Lemaître et Chaboche and seems to differ from the one described in most other books.

2.3.10.1 Options

This stress criterion has \(6\) mandatory options: F, G, H, L, M, N. Each of these options must be interpreted as material property.

Orthotropic axis convention If an orthotropic axis convention is defined (See the @OrthotropicBehaviour keyword’ documentation), the coefficients of the Hill tensor can be exchanged for some modelling hypotheses. The coefficients F, G, H, L, M, N must always correspond to the three dimensional case.

2.3.11 Example

    criterion : "Hill" {F : 0.371, G : 0.629, H : 4.052, L : 1.5, M : 1.5, N : 1.5},

2.3.12 Cazacu 2001 stress criterion

Plane stress yield surface (\sigma_{xy}=0 and \sigma_{xy}=0.45\,\sigma_{0}) of 2090-T3 alloy sheet as predicted by the generalization of the Drucker yield criterion using generalized invariants (See [6], Figure 6).

Within the framework of the theory of representation, generalizations to orthotropic conditions of the invariants of the deviatoric stress have been proposed by Cazacu and Barlat (see [6]):

Those invariants may be used to generalize isotropic yield criteria based on \(J_{2}\) and \(J_{3}\) invariants to orthotropy. The Cazacu 2001 equivalent stress criterion is defined as the orthotropic counterpart of the Drucker 1949 yield criterion, as follows (see [6]):

\[ \sigma_{\mathrm{eq}}=\sqrt{3}\sqrt[6]{\left(J_{2}^{O}\right)^3-c\,\left(J_{3}^{O}\right)^{2}} \]

2.3.12.1 Options

This criterion requires the following options:

2.3.12.2 Example

    criterion : "Cazacu 2001" {
      a : {0.586, 1.05, 0.823, 0.96, 1, 1},
      b : {1.44, 0.061, -1.302, -0.281, -0.375, 1, 1, 1, 1, 0.445, 1},
      c : 1.285
    },

2.3.12.3 Restrictions

Proper support of orthotropic axes conventions has not been implemented yet for the computation of the \(J_{2}^{O}\) and \(J_{3}^{O}\). Thus, the following restrictions apply:

2.3.13 Orthotropic Cazacu 2004 stress criterion

Plane stress yield loci for a magnesium sheet (See [5], Figure 6).

Using the invariants \(J_{2}^{O}\) and \(J_{3}^{O}\) previously defined, Cazacu and Barlat proposed the following criterion (See [5]):

\[ \sigma_{\mathrm{eq}}=\sqrt[3]{\left(J_{2}^{O}\right)^{3/2} - c\,J_{3}^{O}} \]

2.3.13.1 Options

This criterion requires the following options:

2.3.13.2 Example

    criterion : "Orthotropic Cazacu 2004" {
      a : {0.586, 1.05, 0.823, 0.96, 1, 1},
      b : {1.44, 0.061, -1.302, -0.281, -0.375, 1, 1, 1, 1, 0.445, 1},
      c : 1.285
    },

2.3.13.3 Restrictions

Proper support of orthotropic axes conventions has not been implemented yet for the computation of the \(J_{2}^{O}\) and \(J_{3}^{O}\). Thus, the following restrictions apply:

2.3.14 Barlat 2004 stress criterion

The Barlat equivalent stress is defined as follows (See [7]): \[ \sigma_{\mathrm{eq}}^{B}= \sqrt[a]{ \frac{1}{4}\left( \sum_{i=0}^{3} \sum_{j=0}^{3} {\left|s'_{i}-s''_{j}\right|}^{a} \right) } \]

where \(s'_{i}\) and \(s''_{i}\) are the eigenvalues of two transformed stresses \(\underline{s}'\) and \(\underline{s}''\) by two linear transformation \(\underline{\mathbf{L}}'\) and \(\underline{\mathbf{L}}''\): \[ \left\{ \begin{aligned} \underline{s}' &= \underline{\mathbf{L'}} \,\colon\,\underline{\sigma}\\ \underline{s}'' &= \underline{\mathbf{L''}}\,\colon\,\underline{\sigma}\\ \end{aligned} \right. \]

The linear transformations \(\underline{\mathbf{L}}'\) and \(\underline{\mathbf{L}}''\) are defined by \(9\) coefficients (each) which describe the material orthotropy. There are defined through auxiliary linear transformations \(\underline{\mathbf{C}}'\) and \(\underline{\mathbf{C}}''\) as follows: \[ \begin{aligned} \underline{\mathbf{L}}' &=\underline{\mathbf{C}}'\,\colon\,\underline{\mathbf{M}} \\ \underline{\mathbf{L}}''&=\underline{\mathbf{C}}''\,\colon\,\underline{\mathbf{M}} \end{aligned} \] where \(\underline{\mathbf{M}}\) is the transformation of the stress to its deviator: \[ \underline{\mathbf{M}}=\underline{\mathbf{I}}-\dfrac{1}{3}\underline{I}\,\otimes\,\underline{I} \]

The linear transformations \(\underline{\mathbf{C}}'\) and \(\underline{\mathbf{C}}''\) of the deviator stress are defined as follows: \[ \underline{\mathbf{C}}'= \begin{pmatrix} 0 & -c'_{12} & -c'_{13} & 0 & 0 & 0 \\ -c'_{21} & 0 & -c'_{23} & 0 & 0 & 0 \\ -c'_{31} & -c'_{32} & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & c'_{44} & 0 & 0 \\ 0 & 0 & 0 & 0 & c'_{55} & 0 \\ 0 & 0 & 0 & 0 & 0 & c'_{66} \\ \end{pmatrix} \quad \text{and} \quad \underline{\mathbf{C}}''= \begin{pmatrix} 0 & -c''_{12} & -c''_{13} & 0 & 0 & 0 \\ -c''_{21} & 0 & -c''_{23} & 0 & 0 & 0 \\ -c''_{31} & -c''_{32} & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & c''_{44} & 0 & 0 \\ 0 & 0 & 0 & 0 & c''_{55} & 0 \\ 0 & 0 & 0 & 0 & 0 & c''_{66} \\ \end{pmatrix} \]

When all the coefficients \(c'_{ji}\) and \(c''_{ji}\) are equal to \(1\), the Barlat equivalent stress reduces to the Hosford equivalent stress.

2.3.14.1 Options

This stress criterion has \(3\) mandatory options:

Orthotropic axis convention If an orthotropic axis convention is defined (See the @OrthotropicBehaviour keyword’ documentation), the coefficients of the linear transformationscan be exchanged for some modelling hypotheses. The coefficients given by the user must always correspond to the three dimensional case.

Specifying the eigen solver using the eigen_solver option is optional. This option can have the value default or the value Jacobi.

2.3.15 Example

    criterion : "Barlat" {
      a : 8,
      l1 : {-0.069888, 0.079143, 0.936408, 0.524741, 1.00306, 1.36318, 0.954322,
            1.06906, 1.02377},
      l2 : {0.981171, 0.575316, 0.476741, 1.14501, 0.866827, -0.079294, 1.40462,
            1.1471, 1.05166}
    }

2.3.16 Notes

The Barlat 2004 yield surface may have sharp edges which may lead to divergence of the Newton algorithm du to oscillations of the flow direction. Specifying a threshold for the angle between. See Section 2.2 for details.

2.4 List of available isotropic hardening rules

Note

The follwing hardening rules can be combined to define more complex hardening rules. For example, the following code adds to Voce hardening:

   isotropic_hardening : "Voce" {R0 : 600e6, Rinf : 900e6, b : 1},
   isotropic_hardening : "Voce" {R0 : 0, Rinf : 300e6, b : 10},

The previous code is equalivent to the following hardening rule:

\[ R{\left(p\right)}=R_{0}^{0}+{\left(R_{\infty}^{0}-R_{0}^{0}\right)}\,{\left(1-\exp{\left(-b^{0}\,p\right)}\right)}+R_{\infty}^{1}\,{\left(1-\exp{\left(-b^{1}\,p\right)}\right)} \]

with:

2.4.1 The Linear isotropic hardening rule

The Linear isotropic hardening rule is defined by: \[ R{\left(p\right)}=R_{0}+H\,p \]

2.4.1.1 Options

The Linear isotropic hardening rule expects one of the two following material properties:

Note

If one of the previous material property is not defined, the generated code is optimised and there will be no parameter asscoiated with it. To avoid this, you must define the material property and assign it to a zero value.

2.4.1.2 Example

The following code can be added in a block defining an inelastic flow:

    isotropic_hardening : "Linear" {R0 : 120e6, H : 438e6},

2.4.2 The Swift isotropic hardening rule

The Swift isotropic hardening rule is defined by: \[ R{\left(p\right)}=R_{0}\,{\left(\dfrac{p+p_{0}}{p_{0}}\right)}^{n} \]

2.4.2.1 Options

The Swift isotropic hardening rule expects three material properties:

2.4.2.2 Example

The following code can be added in a block defining an inelastic flow:

    isotropic_hardening : "Swift" {R0 : 120e6, p0 : 1e-8, n : 5.e-2}

2.4.3 The Power isotropic hardening rule (since TFEL 3.4)

The Power isotropic hardening rule is defined by: \[ R{\left(p\right)}=R_{0}\,{\left(p+p_{0}\right)}^{n} \]

2.4.3.1 Options

The Power isotropic hardening rule expects at least the following material properties:

The p0 material property is optional and generally is considered a numerical parameter to avoir an initial infinite derivative of the power law when the exponent is lower than \(1\).

2.4.3.2 Example

The following code can be added in a block defining an inelastic flow:

    isotropic_hardening : "Linear" {R0 : 50e6},
    isotropic_hardening : "Power" {R0 : 120e6, p0 : 1e-8, n : 5.e-2}

2.4.4 The Voce isotropic hardening rule

The Voce isotropic hardening rule is defined by: \[ R{\left(p\right)}=R_{\infty}+{\left(R_{0}-R_{\infty}\right)}\,exp{\left(-b\,p\right)} \]

2.4.4.1 Options

The Voce isotropic hardening rule expects three material properties:

2.4.4.2 Example

The following code can be added in a block defining an inelastic flow:

    isotropic_hardening : "Voce" {R0 : 200, Rinf : 100, b : 20}

2.4.5 User defined isotropic hardening rule

The UserDefined isotropic hardening rule allows the user to specify the radius of the yield surface as a function of the equivalent plastic strain p.

This function shall be given by a string option named R and must depend on p. The function may also depend on other variables. Let A be such a variable. The UserDefined isotropic hardening rule will look if an option named A has been given:

If required, the derivative of R with respect to p can be provided through the option dR_dp. The derivative dR_dp can depend on the variable R.

If this derivative is not provided, automatic differentiation will be used. The user shall be warned that the automatic differentiation provided by the tfel::math::Evaluator class may result in inefficient code.

Example of usage

@Parameter stress R0 = 200e6;
@Parameter stress Hy = 40e6;
@Parameter real b = 100;

@Brick StandardElastoViscoPlasticity{
  stress_potential : "Hooke" {young_modulus : 150e9, poisson_ratio : 0.3},
  inelastic_flow : "Plastic" {
    criterion : "Mises",
    isotropic_hardening : "UserDefined" {
      R : "R0 + Hy * (1 - exp(-b * p))",     // Yield radius
      dR_dp : "b * (R0 + Hy - R)"
    }
  }
};

2.4.6 Isotropic harderning rule based defined by points

The Data isotropic hardening rule allows the user to define an isotropic hardening rule using a curve defined by a set of pairs of equivalent strain and equivalent stress.

This isotropic hardening rule can be parametrised using three entries:

2.4.6.1 Example of usage

@Brick StandardElastoViscoPlasticity{
  stress_potential : "Hooke" {young_modulus : 150e9, poisson_ratio : 0.3},
  inelastic_flow : "Plastic" {
    criterion : "Mises",
    isotropic_hardening : "Data" {
      values : {0 : 150e6, 1e-3 : 200e6, 2e-3 : 400e6},
      interpolation : "linear"
    }
  }
};

2.4.7 Strain rate sensitive isotropic hardening rule

The StrainRateSensitive isotropic hardening rule is defined by: \[ R{\left(p, \dot{p}\right)} = R_{0}{\left(p\right)}\,R_{rs}{\left(\dot{p}\right)}, \]

where:

This isotropic hardening rule can be parametrised using the following options:

2.4.7.1 Example of usage

@Brick StandardElastoViscoPlasticity{
  stress_potential : "Hooke" {young_modulus : 210e9, poisson_ratio : 0.3},
  inelastic_flow : "Plastic" {
    criterion : "Mises",
    isotropic_hardening : "StrainRateSensitive" {
      rate_independent_isotropic_hardening :
          "Swift" {R0 : "alpha * Ks * (p0s ** ns)", p0 : "p0s", n : "ns"},
      rate_independent_isotropic_hardening : "Voce" {
        R0 : "(1 - alpha) * Q1 * (1 - Q2)",
        Rinf : "(1 - alpha) * Q1",
        b : "Q3"
      },
      rate_sensitivity_factor :
          "CowperSymonds" {dp0 : "dp0cs", n : "ncs", Rs_eps : 1e-8}
    }
  }
};

2.5 List of rate sensitivity factors

2.5.1 Cowper-Symonds’s rate sensitivity factor

\[ R_{rs}{\left(\dot{p}\right)}=1+A\,\left(\frac{\dot{p}}{\dot{p}_{0}}\right)^{n} \]

When the exponent \(n\) is lower than one, the following regularised version, based on the user defined value \(R_{\epsilon}\) is available:

\[ R_{rs}{\left(\dot{p}\right)}=1+ \left\{ \begin{aligned} R_{\epsilon}\,\left(\frac{\dot{p}}{\dot{p}_{\epsilon}}\right) &&\text{if}&&\dot{p}<\dot{p}_{\epsilon}\\ A\,\left(\frac{\dot{p}}{\dot{p}_{0}}\right)^{n} &&\text{if}&&\dot{p}\geq\dot{p}_{\epsilon} \end{aligned} \right. \]

2.5.2 Johnson-Cook’s rate sensitivity factor

\[ R_{rs}{\left(\dot{p}\right)}=1+ \left\{ \begin{aligned} 0 &&\text{if}&&\dot{p}<\dot{p}_{0}\\ A\,\log\left(\frac{\dot{p}}{\dot{p}_{0}}\right)&&\text{if}&&\dot{p}\geq\dot{p}_{0} \end{aligned} \right. \]

2.6 List of available kinematic hardening rules

2.6.1 The Prager kinematic hardening rule

2.6.1.1 Example

The following code can be added in a block defining an inelastic flow:

    kinematic_hardening : "Prager" {C : 33e6},

2.6.2 The Armstrong-Frederick kinematic hardening rule

The Armstrong-Frederick kinematic hardening rule can be described as follows (see [8]): \[ \left\{ \begin{aligned} \underline{X}&=\dfrac{2}{3}\,C\,\underline{a} \\ \underline{\dot{a}}&=\dot{p}\,\underline{n}-D\,\dot{p}\,\underline{a} \\ \end{aligned} \right. \]

2.6.2.1 Example

The following code can be added in a block defining an inelastic flow:

    kinematic_hardening : "Armstrong-Frederick" {C : 1.5e9, D : 5}

2.6.3 The Burlet-Cailletaud kinematic hardening rule

The Burlet-Cailletaud kinematic hardening rule is defined as follows (see [9]):

\[ \left\{ \begin{aligned} \underline{X}&=\dfrac{2}{3}\,C\,\underline{a} \\ \underline{\dot{a}}&=\dot{p}\,\underline{n} -\eta\,D\,\dot{p}\,\underline{a} -{\left(1-\eta\right)}\,D\,\dfrac{2}{3}\,\dot{p}\,{\left(\underline{a}\,\colon\,\underline{n}\right)}\,\underline{n} \\ \end{aligned} \right. \]

2.6.3.1 Example

The following code can be added in a block defining an inelastic flow:

    kinematic_hardening : "Burlet-Cailletaud" {C : 250e7, D : 100, eta : 0}

2.6.4 The Chaboche 2012 kinematic hardening rule

The Chaboche 2012 kinematic hardening rule is defined as follows (see [10]):

\[ \underline{\dot{a}} =\underline{\dot{\varepsilon}}^{p}-\frac{3\,D}{2\,C}\,\Phi\left(p\right)\, \Psi^{\left(\underline{X}\right)}\left(\underline{X}\right)\,\dot{p}\,\underline{X} =\underline{\dot{\varepsilon}}^{p}- D\,\Phi\left(p\right)\,\Psi\left(\underline{a}\right)\dot{p}\,\underline{a} \]

with:

2.6.4.1 Example

The following code can be added in a block defining an inelastic flow:

    kinematic_hardening : "Chaboche 2012" {
      C : 250e7,
      D : 100,
      m : 2,
      w : 0.6,
    }

2.6.5 Delobelle-Robinet-Schaffler (DRS) kinematic hardening rule

The Delobelle-Robinet-Schaffler (DRS) kinematic hardening rule has been introduced to describe orthotropic viscoplasticity of Zircaloy alloys [11, 12]. It describes both dynamic and static recovery by the following evolution law: \[ \underline{\dot{a}}= \dot{p}\,\underline{\mathbf{E}}_{c}\,\colon\,\underline{n} -D\,\dot{p}\,\underline{\mathbf{R}}_{d}\,\colon\,\underline{a} -f\,{\left(\frac{a_{\mathrm{eq}}}{a_{0}}\right)}^{m}\,{{\displaystyle \frac{\displaystyle \partial a_{\mathrm{eq}}}{\displaystyle \partial \underline{a}}}} \] with \(a_{\mathrm{eq}}=\sqrt{\underline{a}\,\colon\,\underline{\mathbf{R}}_{s}\,\colon\,\underline{a}}\) and \({{\displaystyle \frac{\displaystyle \partial a_{\mathrm{eq}}}{\displaystyle \partial \underline{a}}}}=\frac{\underline{\mathbf{R}}_{s}\,\colon\,\underline{a}}{a_{\mathrm{eq}}}\)

The three fourth order tensors \(\underline{\mathbf{E}}_{c}\), \(\underline{\mathbf{R}}_{d}\) and \(\underline{\mathbf{R}}_{s}\) are assumed to have the same structure as the Hill tensors and are defined by \(6\) components (see this page for details).

The f and a0 parameters are optional and defaults to \(1\).

2.6.5.1 Example

    kinematic_hardening : "DRS" {
      C : 150.e9,  // kinematic moduli
      D : 1e2,    // back-strain callback coefficient
      f : 10,
      m : 5,
      Ec : {0.33, 0.33, 0.33, 1, 1, 1},
      Rs : {0.33, 0.63, 0.33, 1, 1, 1},
      Rd : {0.33, 0.33, 0.33, 1, 1, 1}  //
    },

References

1.
Monerie, Yann and Gatt, Jean-Marie. Overall viscoplastic behavior of non-irradiated porous nuclear ceramics. Mechanics of Materials. July 2006. Vol. 38, no. 7, p. 608–619. DOI 10.1016/j.mechmat.2005.11.004. Available from: http://www.sciencedirect.com/science/article/pii/S0167663605001882
2.
Salvo, Maxime, Sercombe, Jérôme, Ménard, Jean-Claude, Julien, Jérôme, Helfer, Thomas and Désoyer, Thierry. Experimental characterization and modelling of UO2 behavior at high temperatures and high strain rates. Journal of Nuclear Materials. January 2015. Vol. 456, p. 54–67. DOI 10.1016/j.jnucmat.2014.09.024. Available from: http://www.sciencedirect.com/science/article/pii/S002231151400614X
3.
Salvo, Maxime, Sercombe, Jérôme, Helfer, Thomas, Sornay, Philippe and Désoyer, Thierry. Experimental characterization and modeling of UO2 grain boundary cracking at high temperatures and high strain rates. Journal of Nuclear Materials. May 2015. Vol. 460, p. 184–199. DOI 10.1016/j.jnucmat.2015.02.018. Available from: http://www.sciencedirect.com/science/article/pii/S0022311515001130
4.
Hosford, W. F. A generalized isotropic yield criterion. Journal of Applied Mechanics. 1972. Vol. 39, no. 2, p. 607–609.
5.
Cazacu, Oana and Barlat, Frédéric. A criterion for description of anisotropy and yield differential effects in pressure-insensitive metals. International Journal of Plasticity. 1 November 2004. Vol. 20, no. 11, p. 2027–2045. DOI 10.1016/j.ijplas.2003.11.021. Available from: http://www.sciencedirect.com/science/article/pii/S0749641904000348
6.
Cazacu, Oana and Barlat, Frédéric. Generalization of drucker’s yield criterion to orthotropy. Mathematics and Mechanics of Solids. 1 December 2001. Vol. 6, no. 6, p. 613–630. DOI 10.1177/108128650100600603. Available from: https://doi.org/10.1177/108128650100600603
7.
Barlat, F., Aretz, H., Yoon, J. W., Karabin, M. E., Brem, J. C. and Dick, R. E. Linear transfomation-based anisotropic yield functions. International Journal of Plasticity. 1 May 2005. Vol. 21, no. 5, p. 1009–1039. DOI 10.1016/j.ijplas.2004.06.004. Available from: http://www.sciencedirect.com/science/article/pii/S0749641904001160
8.
Armstrong, P. J. and Frederick, C. O. RD/BfN 731: A mathematical representation of the multiaxial bauschinger effect. Central Electricity Generating Board, 1966.
9.
Burlet, Hélène and Cailletaud, Georges. Modelling of cyclic plasticity in finite element codes. In : Proceedings of 2nd international conference on constitutive laws for engineering materials; theory and application. Tucson, AZ, 1987.
10.
Chaboche, J. -L., Kanouté, P. and Azzouz, F. Cyclic inelastic constitutive equations and their impact on the fatigue life predictions. International Journal of Plasticity. 1 August 2012. Vol. 35, p. 44–66. DOI 10.1016/j.ijplas.2012.01.010. Available from: http://www.sciencedirect.com/science/article/pii/S0749641912000113
11.
Delobelle, P., Robinet, P., Geyer, P. and Bouffioux, P. A model to describe the anisotropic viscoplastic behaviour of zircaloy-4 tubes. Journal of Nuclear Materials. 1 November 1996. Vol. 238, no. 2, p. 135–162. DOI 10.1016/S0022-3115(96)00450-3. Available from: https://www.sciencedirect.com/science/article/pii/S0022311596004503
12.
Schäffler, I., Geyer, P., Bouffioux, P. and Delobelle, P. Thermomechanical behavior and modeling between 350°c and 400°c of zircaloy-4 cladding tubes from an unirradiated state to high fluence. Journal of Engineering Materials and Technology. 6 July 1999. Vol. 122, no. 2, p. 168–176. DOI 10.1115/1.482783. Available from: https://doi.org/10.1115/1.482783