# Implicit yield function formulation for granular and rock-like materials

## Abstract

The constitutive modelling of granular, porous and quasi-brittle materials is based on yield (or damage) functions, which may exhibit features (for instance, lack of convexity, or branches where the values go to infinity, or ‘false elastic domains’) preventing the use of efficient return-mapping integration schemes. This problem is solved by proposing a general construction strategy to define an implicitly defined convex yield function starting from any convex yield surface. Based on this implicit definition of the yield function, a return-mapping integration scheme is implemented and tested for elastic–plastic (or -damaging) rate equations. The scheme is general and, although it introduces a numerical cost when compared to situations where the scheme is not needed, is demonstrated to perform correctly and accurately.

### Keywords

Plasticity Return mapping algorithm Automatic differentiation## 1 Introduction

The pressure-sensitive yielding of granular, porous, and quasi-brittle materials (such as ceramic or metallic powders, porous metals, rocks and concretes), or the Lode’s angle dependence of high-strength and shape memory alloys, forces the use of complex yield functions in the plastic or damaging constitutive modelling. These yield functions (three examples are those introduced by Jeremic et al. [7], by Foster et al. [5] and by Bigoni and Piccolroaz [2], the last called ‘BP’ in the following) often display ‘undesidered features’, such as for instance lack of convexity, or regions where they blow up to infinity or, as indicated by Brannon and Leelavanichkul [4], ‘false elastic domains’ (in which negative values are associated to stress states external to the ‘true’ elastic domain), preventing the use of standard return-mapping integration algorithms. Moreover, these yield functions often describe high-curvature surfaces and nearly sharp vertices, which are difficult to treat with the necessary accuracy and definitely slow down numerical procedures. Remedies to these problems have been proposed in [4] and [12], but the former technique, based on a multi-stage algorithm, is very complex, while the latter, based on a cutoff-substepping return algorithm, is applicable only to the BP yield function.

The purpose of the present article is to introduce a new approach to the problem, where a general procedure to construct an implicit definition of a convex yield function starting from a convex yield surface is proposed and the related application within a standard return-mapping scheme is explained and tested. The method is general, simple to be implemented, and applies to every convex yield surface. It is shown to be, on the one hand, associated to a computational cost (which has to be regarded as the counterpart of the complexity of the employed yield function), but on the other hand, to be robust and to provide accurate and stable results.

The paper is organized as follows. The general setting of the implicit yield function formulation is presented in Sect. 2. The original BP yield function [2] is recalled, and its undesired features are illustrated in Sect. 3. In Sect. 4, the general formulation is specified for the BP yield surface: the implicit yield function is formulated in the \((p,q)\)-space, and the presentation style is oriented towards computer implementation employing an automatic differentiation (AD) technique and *AceGen*, an automatic code generation system [8, 9]. The complete *AceGen* input is also provided as a supplementary material accompanying the paper along with ready-to-use subroutines in *C*, *Fortran*, *Mathematica* and *Matlab*. Feasibility of the implicit yield function concept in incremental elastoplasticity is finally illustrated in Sect. 5.

## 2 Implicit yield function: general setting

Consider a yield function \(F(\varvec{\sigma },\varvec{\eta })\), depending on stress \(\varvec{\sigma }\) and hardening variables \(\varvec{\eta }\), that defines a convex elastic domain \(\mathcal{E}\) such that the boundary \(\partial \mathcal{E}\) of the elastic domain, i.e., the yield surface, is specified by the zero level set, \(F(\varvec{\sigma },\varvec{\eta })=0\). As discussed in the introduction, the yield function \(F\) may be non-convex or defined infinity in some regions, see Sect. 3 for the illustration of those features in the case of the BP yield function.

The strategy proposed in the present paper to overcome the difficulties mentioned above is to introduce an alternative yield function \(F^*(\varvec{\sigma },\varvec{\eta })\) that is defined for an arbitrary stress, and such that its zero level set \(F^*=0\) (i.e., the yield surface) is identical to that of the original yield function, \(F=0\). In this way, the elastic domain \(\mathcal{E}\) and its closure, which are the only two relevant quantities from the mechanical point of view, will remain the same as for the original yield function \(F(\varvec{\sigma },\varvec{\eta })\), but convexity and finiteness will be enforced.

Note that the yield surface may be non-convex with respect to the hardening or damage variables \(\varvec{\eta }\) which could result in convergence problems in an incremental computational scheme, e.g., [16]. However, such non-convexity would be a constitutive feature of a specific hardening/softening law that cannot be removed by reformulating the yield function itself. For the sake of a compact notation, we will skip the dependence of \(F\) on \(\varvec{\eta }\) in this section, because only the dependency on \(\varvec{\sigma }\) is relevant in the following.

For completeness, the second derivative of \(F^*\) with respect to \(\varvec{\sigma }\) is provided in “Appendix”. The derivatives with respect to the hardening variables \(\varvec{\eta }\) and the mixed second derivatives can be obtained analogously. In the implementation approach adopted in the present work, the necessary derivatives of the implicit yield function \(F^*\) are obtained using an automatic differentiation technique, hence the explicit formulae are, in fact, not needed. The corresponding formulation, with application to the BP yield function, is presented in Sect. 4.

## 3 Original BP yield function

In this section, the original Bigoni–Piccolroaz (BP) yield function [2] is briefly introduced, and its deficiencies concerning its practical application in computational plasticity are illustrated.

^{1}as illustrated in Fig. 2b. Here, the squared function \(f^2(p)\) is defined for arbitrary \(p\) by the first branch in Eq. (17). The nonconvex yield function shows, in the terminology introduced by Brannon and Leelavanichkul [4], a ‘false elastic domain’ so that, employing a return mapping algorithm it may happen (for certain trial stresses) that convergence is reached at a wrong stress state. Nonconvexity may also lead to divergence of the corresponding iterative scheme.

## 4 Implicit yield function in the \((p,q)\)-space

In the special case of the BP yield function defined by Eq. (16), one can use the general formulation of the implicit yield function, as presented in Sect. 2. However, as only the pressure-dependent part \(f(p)\) specified by Eq. (17) is inconvenient for numerical implementation, it is simpler and thus numerically more efficient to apply the implicit yield function formulation in the \((p,q)\)-space, as shown below.

Compared to Sect. 2, a somewhat different presentation style is adopted here, which is oriented towards computer implementation using an automatic differentiation (AD) technique and *AceGen*, an automatic code generation system [8, 9]. Accordingly, the specific formulae, such as that in Eq. (14) are not provided, as they are not needed, and the focus is on indicating the actual dependencies and on defining the implicit derivatives of \(\varrho _0\).

By construction, the yield function \(F^*\) defined by Eq. (21) generates a family of self-similar surfaces \(F^*=\text{ const }\) that are scaled with respect to the reference point \((p_r,0)\), as Fig. 3 illustrates. Self-similarity implies that the implicit yield function is convex if the generating yield surface \(F=0\) is convex.

The first derivative \(\partial \varrho _0/\partial \varvec{\sigma }\), Eq. (28), is needed, for instance, to compute the gradient of the implicit yield function, see Eq. (9). The second derivative comes into play when the constitutive update problem is solved and when the incremental constitutive equations are linearized, see Sect. 5.1.

Computer implementation of the above implicit BP yield function has been performed using *AceGen*, a code generation system that combines the symbolic algebra capabilities of *Mathematica* (www.wolfram.com) with an automatic differentiation technique and a stochastic expression optimization technique [8, 9]. In particular, all the necessary explicit derivatives are directly derived by automatic differentiation, while the implicit derivatives of \(\varrho _0\), i.e., those specified by Eqs. (28) and (29), are introduced using the so-called AD exceptions implemented in *AceGen* [9].

The *AceGen* implementation of the implicit BP yield function is provided as a supplementary material accompanying this paper. Specifically, the complete *AceGen* input is provided for generating the numerical code that computes the implicit BP yield function \(F^*\) and its first and second derivatives with respect to the stress \(\varvec{\sigma }\) and with respect to all the parameters defining the yield surface. The *AceGen* code, as well as the corresponding ready-to-use subroutines in *C*, *Fortran*, *Mathematica* and *Matlab*, are also available at our web sites.^{2}

## 5 Application to return mapping algorithm

In this section, feasibility of the implicit yield function concept is illustrated in the context of time integration algorithms in elastoplasticity. The classical return mapping algorithm is first recalled and its performance is subsequently evaluated in the case when the implicit BP yield function is used in an elastoplastic model based on perfect plasticity.

### 5.1 Return mapping algorithm

The return mapping algorithm is here introduced for the possibly simplest model of elastoplasticity. Specifically, ideal plasticity (no hardening) and the associated flow rule are assumed. No restrictions are introduced for the yield surface, except the usual assumptions of convexity and smoothness. The goal is to apply the return mapping algorithm to a yield surface that is defined by an implicit yield function, such as the BP yield surface, and this can be sufficiently accomplished for the present simple model. For more general formulations of elastoplasticity and their computational treatment, the reader is referred, for instance, to the monographs [17, 18].

Upon backward-Euler integration of the flow rule, the incremental constitutive equations can be written in the form of the following constitutive update problem:

*Constitutive update problem*Given the strain \(\varvec{\varepsilon }_{n+1}\) at the current time step \(t=t_{n+1}\) and the plastic strain \(\varvec{\varepsilon }^p_n\) at the previous time step \(t=t_n\), find the current plastic strain \(\varvec{\varepsilon }^p_{n+1}\) and the plastic multiplier \(\varDelta \gamma \) that satisfy the elastic constitutive equationthe incremental flow rule

- 1.Compute the trial elastic state
- 2.Check the yield condition: if \(F^{ trial}\le 0\) then the step is elastic and$$\begin{aligned} \varvec{\varepsilon }^p_{n+1} = \varvec{\varepsilon }^p_n , \quad \varDelta \gamma = 0 . \end{aligned}$$(34)
- 3.If \(F^{ trial}>0\) then the step is plastic and the following nonlinear algebraic equations are solved for \(\varvec{\varepsilon }^p_{n+1}\) and \(\varDelta \gamma \):where the stress \(\varvec{\sigma }_{n+1}\) is given by the constitutive equation (30).$$\begin{aligned} \begin{array}{l} 0 = \varvec{\varepsilon }^p_{n+1} - \varvec{\varepsilon }^p_n - \varDelta \gamma \, \mathbf n (\varvec{\sigma }_{n+1}) , \\ [0.5ex] 0 = F(\varvec{\sigma }_{n+1}) , \end{array} \end{aligned}$$(35)

At the solution of the constitutive update problem, the current stress \(\varvec{\sigma }_{n+1}\) belongs to the elastic domain \(F(\varvec{\sigma })\le 0\). However, the trial stress \(\varvec{\sigma }_{n+1}^{ trial}\) and the stresses \(\varvec{\sigma }_{n+1}^i\) at subsequent iterations may lie well outside the elastic domain. It is thus crucial for the direct application of the return mapping algorithm that the yield function \(F(\varvec{\sigma })\) be defined and differentiable for arbitrary stress. The original BP yield function (but also many other yield functions, for instance, those of Jeremic et al. [7] and Foster et al. [5]) is thus not suitable for the return mapping algorithm, while the implicit one introduced in Sect. 4 is fully suitable.

Note that the flow rule (31) involves the gradient of the yield function. The tangent matrix \(\partial \mathbf{Q}/\partial \mathbf{h}\) used in the Newton scheme (36) involves thus the second derivative of the yield function. In the case of the implicit yield function, those derivatives cannot be obtained directly, so that the implicit derivatives discussed in Sect. 4 must be used instead.

Convergence of the iterative Newton scheme (36) is not guaranteed in general. This difficulty can be circumvented (at least partially) by applying a globally convergent scheme, for instance, by enhancing the Newton scheme with a suitable line search strategy. The iterative update (36)\(_1\) would then be replaced by the following one: \(\mathbf{h}^{i+1}=\mathbf{h}^i+\alpha ^i\varDelta \mathbf{h}^i\), where the line search parameter \(0<\alpha ^i\le 1\) is determined by requiring that the iterative update results in a sufficient decrease of an appropriate merit function, see, for instance, [11]. In the numerical study reported in Sect. 5.3, the Newton method combined with the line search scheme specified in Box A.1 of [13] has been used in addition to the pure Newton method specified by Eq. (36). More elaborate, globally convergent schemes employing primal and dual algorithms for the solution of the closest-point projection problems in incremental elastoplasticity are discussed in [13].

### 5.2 Implementation and computational efficiency

Computer implementation of the incremental constitutive equations has been performed using the *AceGen* system [8, 9]. The formulation of incremental elastoplasticity that is appropriate for an automated implementation using *AceGen* is introduced in [9]; a concise presentation of the formulation can also be found in [10]. As an essential part of this formulation, an automatic differentiation technique is used to automatically derive the consistent tangent moduli Open image in new window and other relevant quantities such as the dependent tangent \(\partial \mathbf{Q}/\partial \mathbf{h}\) involved in the Newton scheme (36). In the context of the present implicit yield function formulation, the automatic differentiation technique is also used to efficiently implement the implicit derivatives (28) and (29), representing an important ‘ingredient’ in the formulation. This part of *AceGen* implementation is available as a supplementary material, see Sect. 4.

It is obvious that the use of an implicitly defined yield function, as introduced in Sect. 4, in incremental algorithms of elastoplasticity is necessarily associated with an extra computational cost due to the nonlinear equation (25), that must be solved at each evaluation of the yield function. Furthermore, evaluation of the gradient and second derivative of the yield function requires evaluation of the implicit derivatives (28) and (29), and this also has a computational price. Therefore, it is worthwhile to assess the computational efficiency of the implicit yield function formulation, and this is done below with reference to the Cam-clay model.

Being numerically equivalent, the two yield functions exhibit identical convergence behavior in the return mapping algorithm, but they differ in computational efficiency: \(F_{cc}^*\) is an explicit analytical function while \(F^*\) is implicit and thus is associated with an additional computational cost, as described above.

Normalized evaluation time and code size for the solution of the constitutive update problem for the Cam-clay yield function

Cam-clay yield function \(F_{cc}^*\) | Implicit BP yield function \(F^*\) | |||
---|---|---|---|---|

\(\varvec{\sigma }_{n+1}\) | \(\varvec{\sigma }_{n+1}\) | |||

Evaluation time | 1.000 | 1.032 | 4.148 | 4.408 |

Code size | 1.000 | 1.506 | 2.916 | 3.824 |

Model parameters used in the convergence study

\(E\) (MPa) | \(\nu \) | \(p_c\) (MPa) | \(c\) (MPa) | \(M\) | \(m\) | \(\alpha \) | \(\beta \) | \(\gamma \) | |
---|---|---|---|---|---|---|---|---|---|

Alumina powder | 1,000 | 0.3 | 10 | 0 | 1.1 | 2 | 0.1 | 0.19 | 0.9 |

Concrete | 11,200 | 0.18 | 350 | 2 | 0.26 | 2 | 1.99 | 0.12 | 0.98 |

In addition to the computation of both the stress and the consistent tangent moduli (marked “\(\varvec{\sigma }_{n+1}\) & Open image in new window” in Table 1), the code has also been tested when computing only the stress (marked “\(\varvec{\sigma }_{n+1}\)” in Table 1). The evaluation times, normalized by the evaluation time needed for the computation of the stress using the Cam-clay yield function \(F_{cc}^*\), are reported in Table 1.

The return mapping algorithm based on the implicit yield function \(F^*\) has been found to be approximately four times less efficient than that employing the explicit Cam-clay yield function \(F_{cc}^*\). It is reminded here that the convergence behavior, including the number of Newton iterations, of both formulations is identical, so that the difference is solely due to the extra cost of evaluation of the implicit yield function and its derivatives. Though the factor of four might at a first glance seem significant, two aspects have to be considered. Firstly, a very simple elastoplastic model has been used in the present study, so that the evaluation of the yield function and its derivatives constitutes a significant part of the complete formulation. In more complex models (involving, for instance, hardening, elastoplastic coupling, or finite-strain effects), the extra cost of evaluation of the implicit yield function related to the (increased) overall cost of the constitutive update problem becomes significantly lower. Secondly, the remarkable flexibility of the meridian and deviatoric shape of the BP yield surface must be associated to some ‘computational cost’.

Interestingly, the additional computing cost for the consistent tangent moduli is surprisingly small, when compared to the computing cost of the stress only, as it is well below 10 % for both formulations. This is probably due to the highly efficient treatment of implicit dependencies through the so-called AD exceptions that are implemented in *AceGen*, see [9].

Table 1 shows also the normalized size of the generated C code. As expected, the use of the implicit yield function \(F^*\) results in an increase of the code size by a factor of 2–3, with respect to the code corresponding to the explicit yield function \(F_\mathrm{cc}^*\). The code size is in some way related to the evaluation time, so that the remarks concerning the latter apply also here.

### 5.3 Convergence of the return mapping algorithm

The maximum number of iterations has been set to 50, and the white regions in Figs. 6 and 7 indicate the regions where the maximum number of iterations has been reached and which are thus considered ‘no-convergence regions’. It has been checked that, in the case of the pure Newton method (reported in the top rows in Figs. 6 and 7), no-convergence regions do not noticeably decrease with an increase of the maximum number of iterations. The figures corresponding to the Newton method with line search (reported in the bottom rows in Figs. 6 and 7), show only isolated spots of lack of convergence, and it has been checked that these regions vanish when the maximum number of iterations is further increased.

The main purpose of the present numerical example is to show that the implicit yield surface formulation can be effectively applied to develop incremental schemes for elastoplasticity. This goal has been achieved by showing that the implicit BP yield function can be evaluated for arbitrary stresses, so that the standard return mapping algorithm can be applied directly, while this is not the case of the original BP yield function, as illustrated in Sect. 3. Further, by construction, the implicit yield function is convex (provided that the generating yield surface is convex), which is beneficial for the convergence of the return mapping algorithm. This is illustrated by the excellent convergence properties of the return mapping algorithm, employing the Newton method combined with a standard line search strategy.

Note that the two yield surfaces used in the present study pose difficulties in their computational treatment as they locally exhibit very high curvature. Especially the yield surface representative of concrete features sharp edges in the deviatoric section (\(\gamma =0.98\)) and nearly a vertex on the hydrostatic axis located at high pressure (\(\alpha =1.99\)). Those features are responsible for the poor convergence of the pure Newton method, particularly for \(\theta ^{ trial}=\pi /6\), both for the model for alumina powder and for the model for concrete, see Figs. 6b and 7b (in the latter case, the no-convergence region spans the whole plot).

It should be noted here that the simple return mapping algorithm enhanced with a line search strategy performs so well because the elastoplastic model is rather simple, so that the only difficulty lies in the complexity of the yield surface, as related, in particular, to its high curvature. Effects such as strain hardening and elastoplastic coupling, which are crucial in applications involving granular and rock-like materials, would definitely deteriorate convergence of the return mapping algorithm. Anyway, the implicit yield function formulation may offer significant advantages in the development of more advanced incremental formulations of elastoplasticity.

## 6 Conclusions

A technique has been introduced to integrate elastoplastic (or elastodamaging) rate equations based on pressure-sensitive and \(J_3\)-dependent yield functions that often exhibit undesired features such as lack of convexity or ‘false elastic domains’. The technique is based on a re-definition of the yield function in an implicit form, that can be subsequently treated with standard numerical tools. Although associated to a numerical cost, the proposed technique is shown to be efficient, general and accurate.

## Footnotes

## Notes

### Acknowledgments

SS and DB gratefully acknowledge financial support from the European Union’s Seventh Framework Programme FP7/2007-2013/ under REA Grant Agreement Number PIAP-GA-2011-286110-INTERCER2. AP gratefully acknowledges financial support from the European Union’s Seventh Framework Programme FP7/2007-2013/ under REA Grant Agreement Number PITN-GA-2013-606878-CERMAT2.

## Supplementary material

### References

- 1.Bigoni D (2012) Nonlinear solid mechanics: bifurcation theory and material instability. Cambridge University Press, New YorkCrossRefGoogle Scholar
- 2.Bigoni D, Piccolroaz A (2004) Yield criteria for quasibrittle and frictional materials. Int J Solids Struct 41:2855–2878MathSciNetCrossRefMATHGoogle Scholar
- 3.Bonnesen T, Fenchel W (1987) Theory of convex bodies. BCS Associates, Moscow, Idaho, USAGoogle Scholar
- 4.Brannon RM, Leelavanichkul S (2010) A multi-stage return algorithm for solving the classical damage component of constitutive models for rocks, ceramics, and other rock-like media. Int J Fract 163:133–149CrossRefMATHGoogle Scholar
- 5.Foster CD, Regueiro RA, Fossum A, Borja RI (2005) Implicit numerical integration of a three-invariant, isotropic/kinematic hardening cap plasticity model for geomaterials. Comput Methods Appl Mech Eng 194:5109–5138CrossRefMATHGoogle Scholar
- 6.Hiriart-Urruty JB, Lemarechal C (1993) Convex analysis and minimization algorithms I: fundamentals. Springer, BerlinMATHGoogle Scholar
- 7.Jeremic B, Runesson K, Sture S (1999) A model for elastic-plastic pressure sensitive materials subjected to large deformations. Int J Solids Struct 36:4901–4918CrossRefMATHGoogle Scholar
- 8.Korelc J (2002) Multi-language and multi-environment generation of nonlinear finite element codes. Eng Comput 18:312–327CrossRefGoogle Scholar
- 9.Korelc J (2009) Automation of primal and sensitivity analysis of transient coupled problems. Comput Mech 44:631–649MathSciNetCrossRefMATHGoogle Scholar
- 10.Korelc J, Stupkiewicz S (2014) Closed-form matrix exponential and its application in finite-strain plasticity. Int J Numer Methods Eng 98:960–987MathSciNetCrossRefGoogle Scholar
- 11.Nocedal J, Wright SJ (2006) Numerical optimization, 2nd edn. Springer, New YorkMATHGoogle Scholar
- 12.Penasa M, Piccolroaz A, Argani L, Bigoni D (2014) Integration algorithms of elastoplasticity for ceramic powder compaction. J Eur Ceram Soc 34:2775–2788CrossRefGoogle Scholar
- 13.Perez-Foguet A, Armero F (2002) On the formulation of the closest-point projection algorithms in elastoplasticity-part II: globally convergent schemes. Int J Numer Methods Eng 53:331–374MathSciNetCrossRefGoogle Scholar
- 14.Piccolroaz A, Bigoni D, Gajo A (2006a) An elastoplastic framework for granular materials becoming cohesive through mechanical densification. Part I–small strain formulation. Eur J Mech A Solids 25:334–357MathSciNetCrossRefMATHGoogle Scholar
- 15.Piccolroaz A, Bigoni D, Gajo A (2006b) An elastoplastic framework for granular materials becoming cohesive through mechanical densification. Part II–the formulation of elastoplastic coupling at large strain. Eur J Mech A Solids 25:358–369MathSciNetCrossRefMATHGoogle Scholar
- 16.Sheng D, Augarde CE, Abbo AJ (2011) A fast algorithm for finding the first intersection with a non-convex yield surface. Comput Geotech 38:465–471CrossRefGoogle Scholar
- 17.Simo JC, Hughes TJR (1998) Computational inelasticity. Springer, New YorkMATHGoogle Scholar
- 18.de Souza Neto EA, Peric D, Owen DRJ (2008) Computational methods for plasticity: theory and applications. Wiley, ChichesterCrossRefGoogle Scholar
- 19.Stupkiewicz S, Piccolroaz A, Bigoni D (2014) Elastoplastic coupling to model cold ceramic powder compaction. J Eur Ceram Soc 34:2839–2848CrossRefGoogle Scholar

## Copyright information

**Open Access**This article is distributed under the terms of the Creative Commons Attribution License which permits any use, distribution, and reproduction in any medium, provided the original author(s) and the source are credited.