Computational Mechanics

, Volume 62, Issue 6, pp 1429–1441 | Cite as

Diagonally implicit Runge–Kutta (DIRK) integration applied to finite strain crystal plasticity modeling

  • Sally IssaEmail author
  • Mathias Wallin
  • Matti Ristinmaa
  • Håkan Hallberg
Open Access
Original Paper


Diagonally implicit Runge–Kutta methods (DIRK) are evaluated and compared to standard solution procedures for finite strain crystal plasticity boundary value problems. The structure of the DIRK implementation is similar to that of a conventional implicit backward Euler scheme. It is shown that only very small modifications are required in order to transform the numerical scheme from one into the other. This similarity permits efficient adaption of the integration procedure to a particular problem. To enforce plastic incompressibility, different projection techniques are evaluated. Rate dependent crystal plasticity, using a single crystal is simulated under various load cases as well as a larger polycrystalline sample. It is shown that the two-stage DIRK scheme combined with a step size control and a time continuous projection technique for the update of the plastic deformation gradient is in general more accurate than the implicit backward Euler and an update based on exponential mapping.


Crystal plasticity Numerical integration Implicit Euler Diagonally implicit Runge–Kutta 

1 Introduction

A key component in modeling of crystal plasticity is the evolution equations for the plastic slip, which can be formulated as either rate independent or rate dependent, cf. [1, 2]. The rate independent assumption requires continuous identification of the active set of slip systems and can lead to an ill-conditioned problem. To avoid non-uniqueness related to the selection of the active slip systems, rate dependent plasticity is frequently used, cf. [3, 4, 5, 6]. One possibility to model rate dependent crystal plasticity models is to model the slip by a power law flow rule where all slip systems are active [7]. The drawback of the rate dependent approach used in the quasi-rate independent region is that the evolution equations become stiff. Another possibility to model rate dependence is to make use of an elastic-viscoplastic model, where the elastic domain is defined by introducing a threshold into the governing equations of the slip [8]. This approach can however lead to stiff behavior and large computational times, see [2]. In order to model polycrystals, a large number of individual grains must be considered at significant computational cost. It is therefore of high relevance to find robust and efficient numerical algorithms for solving any type crystal plasticity model.

Different numerical methods used to solve crystal plasticity models are reviewed in [6] where uniaxial loading of a single crystal is considered. It is found that a fourth order Runge–Kutta algorithm used to solve an explicit slip rate formulation is computationally more efficient than an implicit slip rate approach and an implicit deformation gradient approach, where the deformation gradient is taken as the primary unknown. To simulate instability phenomena such as shear band localization in a rate dependent viscoplastic single crystal model, an implicit numerical algorithm is used in [4] where it is shown that the integration of the stiff constitutive equations can be performed using a simple and reliable algorithm. In [9], a second order Runge–Kutta algorithm is utilized to solve a three dimensional rate-dependent crystal plasticity model and it is shown that the Runge–Kutta algorithm provides higher order accuracy than first-order explicit and implicit schemes. Another method, discussed in [10], makes use of a homotopy continuation method combined with a Newton–Raphson algorithm to solve a rate dependent crystal plasticity model. The numerical results show that the algorithm is both stable and accurate. The method of variational constitutive updates, where the internal variables are updated by means of a minimization problem can also be used for crystal plasticity models, cf. [11, 12]. It is shown in [12] that the framework of variational constitutive updates allows for analysis of a broad spectrum of engineering applications such as size effects and texture evolution in polycrystals. In [13], it is shown that using decoupling between the grains allows the response of the individual crystal to be updated in parallel which opens up for the possibility to use GPUs.

Another solution procedure is based on the idea of considering both the balance laws and the constitutive evolution equations as a system of differential algebraic equations (DAE). This approach is proposed in [14] where the DIRK scheme is used together with a multilevel Newton algorithm, cf. e.g. [15], to integrate a rate-dependent Chaboche viscoplasticity constitutive model. In [16], the DIRK scheme is used to analyze the behavior of viscoelastic elastomers and in [17] it is applied to a finite strain continuum damage model. In these studies, results are compared to the implicit backward Euler of lower order and it is shown that the embedded DIRK method increases the accuracy of the numerical solution significantly. It is also shown that the DIRK scheme preserves the conventional implicit finite element structure found when the constitutive equations are integrated using the implicit backward Euler scheme. This means that adapting a conventional multilevel finite element code to the DIRK structure involves virtually no additional implementation costs. In [18], comparisons are performed between DIRK and linear implicit Runge–Kutta and half explicit Runge–Kutta in nonlinear finite element analyses. It is concluded that the DIRK approach is the preferred approach due to its efficiency and stability.

Use of either an implicit backward Euler approach or the DIRK method in rate dependent crystal plasticity will not per se guarantee that the plastic incompressibility requirement is fulfilled. This is due to the additive structure of the integration steps. To resolve this, an exponential map is frequently used in the update of the plastic deformation gradient, cf. [19]. As an alternative to the incompressibility preserving exponential map, projection methods can be used. In [20], the inelastic incompressibility in an elastic-viscoplastic constitutive model is considered as a side condition and is solved by a projection method. The projection method can be applied at the end of each time-step or it can be solved continuously in time. Both approaches will be studied in the present work.

In this work, numerical crystal plasticity simulations of fcc crystals are performed. The numerical results obtained using the DIRK scheme are compared to the results obtained when considering an implicit backward Euler method and an exponential map along with the Padé approximation. Different projection methods are evaluated in order to enforce plastic incompressibillity. In addition, to control the time step and to increase the robustness of the solution method, an embedded DIRK scheme is evaluated.

The paper is organized as follows: the governing equations and the constitutive model are described in Sect. 2. The formulation of the numerical method is given in Sect. 3 and in Sect. 4, numerical examples related to both single crystals and a polycrystalline structure are shown. Finally, some concluding remarks close the paper in Sect. 5.

2 Governing equations

For the sake of completeness, the key components of the adopted crystal plasticity model are briefly presented below along with the establishment of the mechanical balance laws. For further details on the specific crystal plasticity model, the reader is referred to [19].

2.1 Kinematics and thermodynamics

A material particle at the position \(\varvec{X}\) in the reference configuration \({\varOmega }_0\) is mapped to the position \(\varvec{x}\) in the current configuration \({\varOmega }\) at time t by the unique mapping \(\varvec{x} = \varvec{\varphi }(\varvec{X}, t)\). The deformation gradient is given by \(\varvec{F}=\partial _{\varvec{X}} \varvec{\varphi }\), and the right Cauchy–Green deformation tensor is defined as \(\varvec{C}= \varvec{F}^T \varvec{F}\). A multiplicative split of the deformation gradient allows \(\varvec{F}\) to be separated into an elastic and a plastic part as
$$\begin{aligned} \varvec{F} = \varvec{F}^e \varvec{F}^p \end{aligned}$$
where superscripts e and p are introduced to identify the elastic and the plastic components, respectively. The volume change associated with the deformation is described by \(J = \text {det} (\varvec{F})\), where \(\text {det}(\cdot )\) denotes the determinant. Since metal plasticity is considered, it is assumed that the volume change is purely elastic, i.e. plastic incompressibility is enforced, whereby it holds that \(J =\text {det}(\varvec{F}^e)\).
The spatial velocity gradient is defined as
$$\begin{aligned} \varvec{L} = \dot{\varvec{F}} \varvec{F}^{-1} \end{aligned}$$
where a superposed dot denotes the material time derivative. Making use of (1) together with (2) results in that \(\varvec{L}\) can be additively decomposed as \(\varvec{L} = \varvec{L}^e + \varvec{F}^e\varvec{L}^p \varvec{F}^{e-1}\), where the elastic and plastic velocity gradients are defined as
$$\begin{aligned} \varvec{L}^e = \dot{\varvec{F}}^e \varvec{F}^{e-1}, \quad \varvec{L}^p = \dot{\varvec{F}}^p \varvec{F}^{p-1} \end{aligned}$$
Assuming isothermal conditions, the dissipation inequality can be expressed as
$$\begin{aligned} \mathcal {D} = \varvec{\tau }:\text {sym}(\varvec{L})- \rho _0 \dot{\psi } \ge 0 \end{aligned}$$
where \(\psi \) is the Helmholtz free energy and \(\varvec{\tau }\) is the Kirchhoff stress tensor, \(\text {sym}(\cdot )\) is the symmetric part of a tensor and \((\cdot ):(\cdot )\) is the contraction of two second order tensors. The mass density in the reference configuration is denoted \(\rho _0\). The Helmholtz free energy is assumed to be decoupled into an elastic part and a plastic part according to
$$\begin{aligned} \rho _0 \psi \left( \varvec{C}^e_i , J , g^{\alpha }\right) = \rho _0 \psi ^e\left( \varvec{C}^e_i,J\right) + \rho _0 \psi ^p\left( g^{\alpha }\right) \end{aligned}$$
where \(\varvec{C}^e_i = (J)^{-2/3} \varvec{F}^{eT} \varvec{F}^e\) is the isochoric part of the elastic right Cauchy–Green deformation tensor and where \(g^{\alpha }\) are internal variables associated with the hardening, as further discussed in Sect. 2.2.
Using the Helmholtz free energy in (5) and the assumption that the elastic deformation is a non-dissipative process, the Kirchhoff stress tensor can be identified as
$$\begin{aligned} \varvec{\tau } = 2\rho _0 \varvec{F}^e \frac{\partial \psi }{\partial \varvec{C}^e} \varvec{F}^{eT} \end{aligned}$$
which allows the dissipation inequality in (4) to be reduced to
$$\begin{aligned} \mathcal {D} = \varvec{{\varSigma }} : \varvec{L}^p - \sum _{\alpha } G^{\alpha } \dot{g}^{\alpha } \ge 0 \end{aligned}$$
where the Mandel stress tensor \(\varvec{{\varSigma }}\) is given as
$$\begin{aligned} \varvec{{\varSigma }} = 2 \rho _0 \varvec{C}^e \frac{\partial \psi }{\partial \varvec{C}^e} \end{aligned}$$
and \(G^{\alpha }\) are thermodynamic forces associated with the hardening variables \(g^{\alpha }\) defined as
$$\begin{aligned} G^{\alpha } = \rho _0 \frac{\partial \psi }{\partial g^{\alpha }}. \end{aligned}$$
The crystal plasticity model is outlined in the following subsections, assuming isothermal conditions and isotropic hardening. For the fcc structure considered here, the slip occurs on three different directions on four closed packed planes, providing the \(\{ 1 1 1 \} \langle 110\rangle \) systems, which results in a total number of \( n= 12\) slip systems. As the plastic deformation is accommodated by concurrent slip on the individual slip systems, the evolution of \(\varvec{L}^p\) is given by
$$\begin{aligned} \varvec{L}^p = \sum _{\alpha =1}^n \dot{\gamma }^{\alpha } \varvec{M}^{\alpha } \otimes \varvec{N}^{\alpha }, \end{aligned}$$
where \(\dot{\gamma }^{\alpha }\) is the slip rate, \(\varvec{M}^{\alpha }\) is the slip direction and \(\varvec{N}^{\alpha }\) the normal to the slip plane, both defined in the intermediate configuration. It is assumed that the intermediate configuration is isoclinic, meaning that the crystal lattice in the intermediate configuration is undistorted. Based on the above, the dissipation inequality in (7) is given by
$$\begin{aligned} \mathcal {D} = \sum _{\alpha = 1}^n \left( \tau ^{\alpha } \dot{\gamma }^{\alpha } - G^{\alpha }\dot{g}^{\alpha } \right) \end{aligned}$$
where the resolved shear stress, \(\tau ^{\alpha }\), is defined as
$$\begin{aligned} \tau ^{\alpha } = \varvec{M}^{\alpha } \varvec{{\varSigma }} \varvec{N}^{\alpha }. \end{aligned}$$

2.2 Constitutive model

The elastic part of the Helmholtz free energy is chosen to be of Neo-Hookean type and is formulated as
$$\begin{aligned} \rho _0 \psi ^e \left( \varvec{C}^e_i, J \right)= & {} \frac{K}{2} \left[ \frac{1}{2} \left( J^2 -1 \right) -\text {ln} (J) \right] \nonumber \\&+ \frac{G}{2}\left[ \text {tr}\left( \varvec{C}^e_i\right) -3 \right] \end{aligned}$$
where K and G are the bulk and shear moduli in the limit of small strains. The trace of a tensorial quantity is denoted by \(\text {tr}(\cdot )\). The internal variable \(g^{\alpha }\) associated with hardening on slip system \(\alpha \) enters the plastic part of the Helmholtz free energy as
$$\begin{aligned} \rho _0 \psi ^p \left( g^{\alpha }\right) = \frac{1}{2} Q \sum _{\alpha =1}^n \sum _{\beta =1}^n h_{\alpha \beta } g^{\alpha } g^{\beta } \end{aligned}$$
where Q is a material parameter and \(h_{\alpha \beta }\) is a hardening matrix chosen as \( h_{\alpha \beta } = \delta _{\alpha \beta } + q(1-\delta _{\alpha \beta })\). The parameter q governs the ratio between the hardening of the current slip system and the hardening due to interaction with neighboring slip systems. The slip resistance \(G^{\alpha }\) that enters the dissipation inequality (11) can be identified as
$$\begin{aligned} G^{\alpha } = Q \sum _{\beta =1}^n h_{\alpha \beta } g^{\beta }. \end{aligned}$$
To complete the model description, the evolution law for the slip rate \(\dot{\gamma }^{\alpha }\), and the evolution law for the local slip \(\dot{g}^{\alpha }\) have to be postulated. The slip rate is modeled as rate-dependent by using the power law format
$$\begin{aligned} \dot{\gamma }^{\alpha } = \dot{\gamma }_0 \left( \frac{|\tau ^{\alpha }|}{G_0 + G^{\alpha }} \right) ^m \text{ sgn } \left( \tau ^{\alpha } \right) , \end{aligned}$$
where \(\dot{\gamma }_0\) and m are material parameters which define the reference shear rate and the rate sensitivity, respectively. The material parameter \(G_0\) describes the lattice friction. For a high value of the rate sensitivity parameter m, a rate-independent response is approached which results in that the resolved shear stress on slip system \(\alpha \) has to exceed the slip resistance, i.e. \(G_0 + G^{\alpha }\), in order for the slip system to become active.
The evolution law for the hardening variable \(g^{\alpha }\) is given by
$$\begin{aligned} \dot{g}^{\alpha } = \left( 1 - Bg^{\alpha } \right) \frac{|\tau ^{\alpha }|}{G_0+G^{\alpha }} \left| \dot{\gamma }^{\alpha }\right| , \end{aligned}$$
where B is a material parameter defining the saturation of the hardening. Insertion of (16) and (17) into the dissipation inequality (11) allows the dissipation inequality to be reduced to
$$\begin{aligned} \mathcal {D}= & {} \sum _{\alpha = 1}^{n} \nonumber \\&\left[ \left| \tau ^{\alpha } \right| \left( 1- \frac{G^{\alpha }}{G_0+G^{\alpha }} \right) + B g^{\alpha } \left| \tau ^{\alpha }\right| \frac{G^{\alpha }}{G_0+G^{\alpha }} \right] \left| \dot{\gamma }^{\alpha }\right| \nonumber \\\ge & {} 0 \end{aligned}$$
which is positive since \( 0 \le G^{\alpha }/(G_0+G^{\alpha }) \le 1\).

2.3 Balance of linear momentum

The balance of linear momentum in the reference configuration \({\varOmega }_0\) can be stated as
$$\begin{aligned} \mathcal {R} = \int _{{\varOmega }_0} \delta \varvec{E}: \varvec{S}dV - \int _{\partial {\varOmega }_{0T}} \delta \varvec{u} \cdot \varvec{T} dS = 0 \end{aligned}$$
which is fulfilled for all admissible \(\delta \varvec{u}\) such that \(\{ \delta \varvec{u} | \delta \varvec{u} = \varvec{0} \ \text {on} \ \partial {\varOmega }_u \} \) where \(\partial {\varOmega }_u\) denotes the part of the boundary where the displacement is prescribed and \(\partial {\varOmega }_{0T}\) is the part of the boundary where the traction vector \(\varvec{T}\) is prescribed. The virtual strain, \(\delta \varvec{E}\), is defined as \(\delta \varvec{E} = \frac{1}{2} (\delta \varvec{F}^T\varvec{F} + \varvec{F}^T\delta \varvec{F})\) and the second Piola–Kirchhoff stress tensor \(\varvec{S}\) is obtained by the following pull-back operation on the Kirchhoff stress tensor
$$\begin{aligned} \varvec{S} = \varvec{F}^{-1} \varvec{\tau } \varvec{F}^{-T} \end{aligned}$$
Referring to (6), it can be concluded that since \(\varvec{\tau }\) depends implicitly on the displacement field \(\varvec{u}\) and the internal variable \(\varvec{F}^p\) it also holds that \(\varvec{S} = \varvec{S}(\varvec{\nabla } \varvec{u}, \varvec{F}^p)\).

3 Numerical solution procedure

The governing equations comprise the balance law (19) and the constitutive model defined by (13)–(17). Introducing the auxiliary variable \(x^{\alpha } = \text {ln} (1-B g^{\alpha })\) permits the evolution law in (17) to be rewritten as
$$\begin{aligned} \dot{x}^{\alpha } = -B \frac{\left| \tau ^{\alpha }\right| }{G_0+G^{\alpha }} \left| \dot{\gamma }^{\alpha }\right| \end{aligned}$$
Making use of the notation \(\dot{\varvec{z}} = \left[ \dot{\varvec{F}}^p \quad \dot{x}^{\alpha } \right] ^T\), the evolution equations can be conveniently written on the compact form
$$\begin{aligned} \dot{\varvec{z}} = \varvec{f}(\varvec{z},\varvec{F}) \end{aligned}$$
The system of governing equations can now be written as
$$\begin{aligned}&\mathcal {R} (\delta \varvec{u},\varvec{u},\varvec{z},t) = 0 \ \ \forall \ \text {admissible} \ \delta \varvec{u} \nonumber \\&\dot{\varvec{z}}= \varvec{f}(\varvec{z},\varvec{F}) \end{aligned}$$
The differential algebraic system of equations (DAE) in (23) will be spatially discretized by the finite element method, i.e. the displacement field \(\varvec{u}\) is interpolated as \(\varvec{u} = \varvec{Na}\) where \(\varvec{N}\) and \(\varvec{a}\) contain the shape functions and the nodal displacements, respectively. From the Galerkin method it follows that \(\delta \varvec{u} = \varvec{N} \delta \varvec{a}\) and exploiting the fact that \(\delta \varvec{a}\) can be chosen arbitrarily yields the residual equation
$$\begin{aligned} \varvec{\mathcal {R}}(\varvec{a},\varvec{z},t) = \int _{{\varOmega }_0} \varvec{B}^T\varvec{S}dV - \int _{{\varOmega }_{0T}} \varvec{N}^T \varvec{T} dS = \varvec{0} \end{aligned}$$
where \(\varvec{B}\) is defined from \(\delta \varvec{E} =\varvec{B} \delta \varvec{a} \). The domain \({\varOmega }_0\) is discretized by \(N_{elm}\) elements and the integrals over each element are evaluated using \(N_{gp}\) Gauss quadrature points. The internal variables \(\varvec{z}\) are evaluated in all \(N_{gp} \cdot N_{elm}\) points in the domain \({\varOmega }_0\). Letting \(\varvec{z}^{\xi }\) denote the internal variables at \(\xi = 1 \dots \ N_{gp} \cdot N_{elm}\), the spatially discretized system can be stated as
$$\begin{aligned}&\varvec{\mathcal {R}} \left( \varvec{a},\varvec{z}^{\xi },t\right) = \varvec{0} \nonumber \\&\dot{\varvec{z}}^{\xi }= \varvec{f}\left( \varvec{z}^{\xi },\varvec{a}\right) , \ \ \xi = 1 \ldots \ N_{gp} \cdot N_{elm} \end{aligned}$$
The superscript \(\xi \) is dropped in the following subsections.

3.1 Diagonally implicit Runge–Kutta method

The system of DAEs defined in (25) will be discretized in time using the diagonally implicit Runge–Kutta method (DIRK). For an ordinary differential equation \(\dot{\varvec{y}} = \varvec{f}(\varvec{y},t)\), the time interval \(t \in [t_0, t_N] \) is divided into n time steps, \({\varDelta }t_n\), and at each time step the solution \(\varvec{y}(t_{n+1})\) is approximated using s stages as
$$\begin{aligned}&\varvec{y}\left( t_{n+1}\right) \approx \varvec{y}_{n+1} \nonumber \\&\qquad \quad = \varvec{y}_n + {\varDelta }t_n \sum _{i=1}^s b_i \varvec{f} \left( \varvec{y}\left( t_n+c_i{\varDelta }t_n\right) ,\left( t_n+c_i {\varDelta }t_n\right) \right) \nonumber \\ \end{aligned}$$
where \(c_i\) and \(b_i\) are quadrature points and weights at stage i, respectively. At time step n and stage i the stage values \(\varvec{y}(t_n+c_i {\varDelta }t_n)\) are required and they are approximated in a similar manner to provide
$$\begin{aligned} \varvec{y}\left( t_n+c_i {\varDelta }t_n\right) \approx \varvec{Y}_{ni} = \varvec{y}_n + {\varDelta }t_n \sum _{j=1}^s a_{ij} \varvec{f} \left( \varvec{Y}_{nj},T_{nj}\right) \end{aligned}$$
where \(a_{ij}\) is another set of weight factors and where the time is denoted by \(T_{ni} =t_n+c_i {\varDelta }t_n \). Making use of (27), the approximation in (26) can be written as
$$\begin{aligned} \varvec{y}_{n+1} = \varvec{y}_n + {\varDelta }t_n \sum _{i=1}^s b_i \varvec{f} \left( \varvec{Y}_{ni}, T_{ni}\right) \end{aligned}$$
The DIRK method is based on the weight factors having the property \(a_{si}=b_i\) and \(a_{ij} = 0 \) for \(i>j\), cf. the Butcher tableau in Table 1. This choice of weight factors implies that the solution \(\varvec{y}_{n+1}\) coincides with the solution at the last stage, i.e. with \(\varvec{Y}_{ns}\). Hence, the approximation in (27) can be rewritten as
$$\begin{aligned} \varvec{Y}_{ni} = \varvec{y}_n + {\varDelta }t_n\sum _{j=1}^i a_{ij} \varvec{f} \left( \varvec{Y}_{nj},T_{nj}\right) \end{aligned}$$
The sought approximation \(\varvec{Y}_{ni}\) in (29) can be rewritten on a more compact form as
$$\begin{aligned} \varvec{Y}_{ni} = \varvec{Y}_{S,ni} + {\varDelta }t_n a_{ii} \varvec{f}(\varvec{Y}_{ni}, T_{ni}) \end{aligned}$$
where \(\varvec{Y}_{S,ni}\), with the subscript S, denotes the start values which are known at time step n and stage i and which are obtained by evaluating
$$\begin{aligned} \varvec{Y}_{S,ni} = \varvec{y}_n + {\varDelta }t_n \sum _{j=1}^{i-1} a_{ij} \varvec{f} \left( \varvec{Y}_{nj},T_{nj}\right) \end{aligned}$$
Using the definition in (31), it can be noted that the only unknown variable in (30) is \(\varvec{Y}_{ni}\).
Returning to the elasto-plastic boundary value problem defined by (25) and by identifying the state variables \( \left[ \varvec{a} \quad \varvec{z} \right] ^T\) as \(\varvec{y}\), the DIRK stage values associated with (25) are given by
$$\begin{aligned}&\varvec{R}\left( \varvec{A}_{ni}, \varvec{Z}_{ni}, T_{ni}\right) = \varvec{0} \nonumber \\&\varvec{Z}_{ni} = \varvec{Z}_{S,ni} + {\varDelta }t_n a_{ii} \varvec{f}\left( \varvec{Z}_{ni}, \varvec{A}_{ni}\right) \end{aligned}$$
where \(\varvec{A}_{ni}\) and \(\varvec{Z}_{ni}\) represent the displacements and the internal variables at time step n and stage i, respectively. The nonlinear system in (32) is solved using a multilevel Newton–Raphson scheme in each time step n and at each stage i.
In [14], different DIRK schemes are investigated and it is observed that a three-stage DIRK scheme is not able to provide third-order accuracy due to lack of smoothness of the underlying equations. The two-stage DIRK method proposed in [14] is compared to high-order DIRK methods in [21] and it is proven that the two-stage DIRK method is the most efficient of the methods in the study. Therefore the two-stage DIRK, as proposed in [14], is utilized in the present work. The Butcher tableau for the two-stage DIRK scheme is provided in Table 1. Applying the two-stage DIRK scheme on the DAE system in (32) yields the system
$$\begin{aligned}&\varvec{R}(\varvec{A}_{ni}, \varvec{Z}_{ni}, T_{ni}) = \varvec{0} \end{aligned}$$
$$\begin{aligned}&\varvec{F}^p_{ni} = \varvec{F}^p_{S,ni} + {\varDelta }t_n a_{ii} \varvec{L}^p_{ni}\varvec{F}^p_{ni} \end{aligned}$$
$$\begin{aligned}&x^{\alpha }_{ni} = x^{\alpha }_{S,ni} - {\varDelta }t_n a_{ii} B \frac{\left| \tau ^{\alpha }_{ni}\right| }{G_0+G^{\alpha }_{ni}} \left| \dot{\gamma }^{\alpha }_{ni}\right| \end{aligned}$$
where \(\varvec{L}^p_{ni}=\sum _{\alpha =1}^n \left[ \dot{\gamma }^{\alpha }_{ni} \varvec{M}^\alpha \otimes \varvec{N}^{\alpha } \right] \) according to (10).
The DIRK scheme provides an error control that can be used to determine the time step adaptively. Denoting the DIRK solution of order q at time step \(n+1\) by \(\varvec{y}_{n+1}\) and the solution of order \(q-1\) at the same time step by \(\hat{\varvec{y}}_{n+1}\), the solution \(\hat{\varvec{y}}_{n+1}\) can be estimated using an embedded error control [14]. The embedded DIRK scheme makes use of the same weight factors \(a_{ij}\) and \(c_i\) but different \(b_i\), denoted by \(\hat{b}_i\). Thus, the solution of order \(q-1\) at time step \(n+1\) is obtained as
$$\begin{aligned} \hat{\varvec{y}}_{n+1} = \varvec{y}_{n} + {\varDelta }t_n \sum _{i=1}^s \hat{b}_i \varvec{f} \left( \varvec{Y}_{ni}, T_{ni}\right) \end{aligned}$$
Based on (28) and (36), the local error can then be estimated as
$$\begin{aligned} \varvec{\kappa } = \hat{\varvec{y}}_{n+1} - \varvec{y}_{n+1} \end{aligned}$$
Comparing the solution of order q in (28) with the solution of order \(q-1\) in (36) it is evident that the solutions are both obtained from the stage derivatives \(\varvec{f} (\varvec{Y}_{ni}, T_{ni})\), thus the local error is provided at virtually no extra cost using the embedded DIRK method.
The new time step will be based on an error measure of the displacements and internal variables by adopting the approach in [14] which provides
$$\begin{aligned} e= \max \left( \frac{1}{N_{dof}}\sqrt{ \sum _{l=1}^{N_{dof}} \left( \frac{\kappa ^l_u}{\epsilon _r |u^l| + \epsilon _u} \right) ^2}, \underset{\xi =1 \dots N_{elm}\times N_{gp}}{\max } \left| \frac{\kappa ^{\xi }_z}{\epsilon _r |z^{\xi }| + \epsilon _z} \right| \right) \nonumber \\ \end{aligned}$$
where \(N_{dof}\) is the number of degrees of freedom, \( u^l\) is the displacement at degree of freedom l, \(z^{\xi }\) are the internal variables at Gauss point \(\xi \), \(\epsilon _r\) is a relative tolerance and \(\epsilon _u\) and \(\epsilon _z\) are absolute tolerances. Based on the error estimate, the new time step can be estimated as
$$\begin{aligned} {\varDelta }t_{new} = {\varDelta }t_n {\left\{ \begin{array}{ll} \max \left( f_{min}, f_s e^{-1/q} \right) &{}\quad \text {if} \, e > 1 \\ \min \left( f_{max}, f_s e^{-1/q} \right) &{}\quad \text {if} \, e \le 1 \end{array}\right. } \end{aligned}$$
where \(f_{min}\) and \(f_{max}\) are parameters chosen such that oscillations of the adaptive time step are prevented.
Table 1

(a) General Butcher tableau for the diagonally implicit Runge–Kutta method. (b) Butcher tableau for the 2-stage diagonally implicit Runge–Kutta method, see [14]. (c) Butcher tableau for the backward Euler method





\(\begin{array}{c|cccc} c_1 &{} a_{11} &{} 0 &{} \cdots &{} 0 \\ c_2 &{} a_{21} &{} a_{22} &{} \cdots &{} 0 \\ \vdots &{}\vdots &{}\vdots &{}\ddots &{}\vdots \\ c_s &{} b_{1} &{} b_{2} &{} \cdots &{} b_{s} \\ \hline &{} b_{1} &{} b_{2} &{} \cdots &{} b_{s} \\ &{} \hat{b}_{1} &{} \hat{b}_{2} &{} \cdots &{} \hat{b}_{s} \end{array}\)

\(\begin{array}{c|cc} \alpha &{} \alpha &{} 0 \\ 1 &{} 1-\alpha &{} \alpha \\ \hline &{} 1-\alpha &{} \alpha \\ &{} 1-\hat{\alpha } &{}\hat{\alpha } \end{array}\)

\(\begin{array}{l} \alpha = 1-\frac{1}{2} \sqrt{2} \\ \hat{\alpha } = 2-\frac{5}{4} \sqrt{2} \\ \end{array}\)

\(\begin{array}{c|c} 1 &{} 1 \\ \hline &{} 1 \\ \end{array}\)

3.2 Implicit backward Euler method

Application of the implicit backward Euler (BE) method on the DAE system in (25) provides
$$\begin{aligned}&\varvec{R}\left( \varvec{a}_{n+1}, \varvec{z}_{n+1}, t_{n+1}\right) = \varvec{0} \end{aligned}$$
$$\begin{aligned}&\varvec{F}^p_{n+1} = \varvec{F}^p_{n} + {\varDelta }t_n \varvec{L}^p_{n+1}\varvec{F}^p_{n+1} \end{aligned}$$
$$\begin{aligned}&x^{\alpha }_{n+1} = x^{\alpha }_{n+1} - {\varDelta }t_n B \frac{\left| \tau ^{\alpha }_{n+1}\right| }{G_0+G^{\alpha }_{n+1}} \left| \dot{\gamma }^{\alpha }_{n+1}\right| \end{aligned}$$
Making use of the Butcher tableau in Table 1c reveals that the BE scheme can be seen as a special case of the DIRK scheme in which only one stage is employed at each time step. Moreover a comparison between (33)–(35) and (40)–(42) reveals that the structure of the BE update and the DIRK stage update are identical.

3.3 Exponential update

A frequently used alternative numerical scheme is an exponential update cf. [22]. Following this approach, the system in (25) is solved by applying the implicit backward Euler method on the balance equation and the evolution equation for the auxiliary variable \(x^{\alpha }\), cf. (21). An exponential temporal discretization is used to update the plastic deformation gradient cf. [4, 19]. Applying the exponential update scheme on the system in (25) provides
$$\begin{aligned}&\varvec{R}\left( \varvec{a}_{n+1}, \varvec{z}_{n+1}, t_{n+1}\right) = \varvec{0} \nonumber \\&\varvec{F}^p_{n+1} = \text{ exp } \left( {\varDelta }t_n \varvec{L}^p_{n+1}\right) \varvec{F}^p_{n} \nonumber \\&x^{\alpha }_{n+1} = x^{\alpha }_{n} - {\varDelta }t_n B \frac{\left| \tau ^{\alpha }_{n+1}\right| }{G_0+G^{\alpha }_{n+1}} \left| \dot{\gamma }^{\alpha }_{n+1}\right| \end{aligned}$$
To calculate the exponential matrix in (43), a first order Padé approximation can be used to provide
$$\begin{aligned} \text {exp}\left( {\varDelta }t_n \varvec{L}^p_{n+1}\right) \approx \left[ \varvec{I} - \frac{1}{2} {\varDelta }t_n \varvec{L}^p_{n+1} \right] ^{-1} \left[ \varvec{I} + \frac{1}{2} {\varDelta }t_n \varvec{L}^p_{n+1} \right] \nonumber \\ \end{aligned}$$
Fig. 1

Illustration of a initial state, b uniaxial tension and c simple shear of a single crystal, discretized by a single 8-node brick element

3.4 Plastic incompressibility

For small strains, plastic incompressibility is easily preserved due to the additive structure of the small strain tensor. For finite strains, however, plastic incompressibility must be handled with care since the DIRK and the BE schemes do not, in general, preserve plastic incompressibility. Since both the DIRK and the BE updates for the plastic deformation gradient are based on (34), it can not be guaranteed that
$$\begin{aligned} \text {det} \left( \varvec{F}^p_{ni}\right) =\text {det} \left( \varvec{F}^p_{S,ni} + {\varDelta }t_n \varvec{L}^p_{ni} \varvec{F}^p_{ni}\right) = 1 \end{aligned}$$
holds. As a consequence, the condition \(\text {det} (\varvec{F}^p_{ni}) = 1\) must be enforced separately. In [20], the plastic incompressibility is enforced as a side-condition by the construction
$$\begin{aligned} K\left( \varvec{F}^p_{ni}\right) = \text{ det } \left( \varvec{F}^p_{ni}\right) -1 =0 \end{aligned}$$
The construction of the projection method is based on solving the optimization problem
$$\begin{aligned} \left\| \varvec{F}^p_{ni} - \tilde{\varvec{F}}^p_{ni} \right\| \longrightarrow \ \text {min} \ \ \text {subject to} \ K\left( \varvec{F}^p_{ni}\right) = 0 \end{aligned}$$
where \(\varvec{\tilde{F}}^p_{ni}\) is the solution obtained from (34) and \(\varvec{F}^p_{ni}\) is the projected deformation gradient which fulfills the plastic incompressibility. Applying the Lagrangian multiplier method leads to the following coupled non-linear system
$$\begin{aligned}&\varvec{F}^p_{ni} - \tilde{\varvec{F}}^p_{ni} - \lambda _{ni} \frac{d K}{d \varvec{F}^p_{ni}} = 0 \end{aligned}$$
$$\begin{aligned}&K\left( \varvec{F}^p_{ni}\right) = 0 \end{aligned}$$
To reduce the computational cost, the following simplification
$$\begin{aligned} \frac{d K}{d \varvec{F}^p}\Bigg \vert _{\varvec{F}^p=\varvec{F}^p_{ni}} \approx \frac{d K}{d \varvec{F}^p}\Bigg \vert _{\varvec{F}^p= \tilde{\varvec{F}}^p_{ni}} \end{aligned}$$
can be employed which requires only a single non-linear equation in \(\lambda _{ni}\) to be solved
$$\begin{aligned}&K\left( \varvec{F}^p_{ni}\right) = K\left( \tilde{\varvec{F}}^p_{ni} + \lambda _{ni} \frac{d K}{d \varvec{F}^p}\Big \vert _{\varvec{F}^p = \tilde{\varvec{F}}^p_{ni}} \right) := \hat{K}(\lambda _{ni}) = 0 \nonumber \\ \end{aligned}$$
In [20], the nonlinear equation in (51) is to be solved at the last stage in each time step. Hence, inserting the side-condition (46) into (51) permits the side-condition to be written as
$$\begin{aligned} \text{ det } \left( \tilde{\varvec{F}}^p_{ni} +\lambda _{n+1} \text{ det }\left( \tilde{\varvec{F}}^p_{ni}\right) \tilde{\varvec{F}}^{p-1}_{ni} \right) -1 = 0 \end{aligned}$$
Solving the nonlinear Eq. (52) by, for example, a Newton–Raphson method, the projected plastic deformation gradient can be obtained as
$$\begin{aligned} \varvec{F}^p_{ni}= \tilde{\varvec{F}}^p_{ni}+\lambda _{n+1} \text{ det }\left( \tilde{\varvec{F}}^p_{ni}\right) \tilde{\varvec{F}}^{p-1}_{ni} \end{aligned}$$
The method provided by (46)–(53) will in general introduce small inconsistencies in the solution due to the fact that the plastic deformation gradient is updated after determining the internal variables \(g^{\alpha }_{ni}\) associated with hardening. For the set of evolution laws (16) and (17), the inconsistency caused by using (46)–(53) results in that the projected plastic deformation gradient \(\varvec{F}^p_{ni}\) and the hardening variables \(g^{\alpha }_{ni}\) may no longer satisfy (32), and due to the exponential character of the evolution laws these small inconsistencies can cause large errors. To overcome this problem, a different approach is used in this work. To arrive at the method adopted here, (34) is first rewritten as
$$\begin{aligned} \varvec{F}^p_{ni} = \varvec{A}^p_{ni} \varvec{F}^p_{S,ni} \end{aligned}$$
where \(\varvec{A}^p_{ni}\) is defined as
$$\begin{aligned} \varvec{A}^p_{ni} = \left( \varvec{I}-a_{ii}{\varDelta }t_n \varvec{L}^p_{ni} \right) ^{-1} \end{aligned}$$
Multiplying (54) by the factor \([ \text {det}(\varvec{A}^p_{ni}) \text {det}(\varvec{F}^p_{S,ni})]^{-1/3}\), the plastic deformation gradient is guaranteed to fulfill the plastic incompressibility. By this modification, (54) can now be stated as
$$\begin{aligned} \varvec{F}^p_{ni} = \frac{\varvec{A}^p_{ni} \varvec{F}^p_{S,ni} }{ \left[ \text {det}\left( \varvec{A}^p_{ni}\right) \text {det}\left( \varvec{F}^p_{S,ni}\right) \right] ^{1/3}}. \end{aligned}$$
The system of equations in (33)–(35) together with (56) can now be solved simultaneously. It can be noted that the adopted approach is similar to the time continuous projection technique discussed in [20].

As mentioned previously, for a model in which small strains are assumed, neither the exponential update nor the projection method is needed and the plastic incompressibility is fulfilled without any extra computational costs.

4 Numerical examples

In order to compare the different numerical solution schemes, a single crystal is represented by a single 8-node brick element. The crystal is subjected to uniaxial tension and simple shear, respectively, as illustrated in Fig. 1. In addition, a polycrystalline plate with a central hole subjected to uniaxial tension is also considered. The material parameters are taken from [19] to mimic the response of an austenitic steel, see Table 2. In all examples a reference simulation is performed using the Exponential Update (EU) scheme with the very small time step \({\varDelta }t = 1\times 10^{-6}\) s. In order to compare the methods for the same computational cost, the tolerances in (38) are adjusted such that the same number of implicit steps are taken, i.e. the average time step for the two-stage DIRK scheme is set to twice that used in the EU and BE schemes, see Table 3.
Table 2

Material parameters used in the constitutive model, representative for austenitic steel [19]







\(\dot{\gamma }_0\)



\(g^{\alpha }_0\)


80 MPa

164 MPa

200 MPa

55 MPa


\(10^{-3}\) 1/s



\( 7\times 10^{-3}\)

Table 3

Numerical parameters for the adaptive DIRK method


\(\epsilon _r\)

\(\epsilon _u\)

\(\epsilon _{F^p}\)

\(\epsilon _g\)






\(2 \times 10^{-3}\)

\(2.7 \times 10^{-3}\)

\(1.8 \times 10^{-3}\)




In all simulations, it is assumed that all grains in the same Gauss point are subjected to the same deformation gradient. Thus, in the single crystal simulations, the von Mises effective stress is the same in all Gauss points in the element. For the polycrystalline case, the Cauchy stress tensor in one Gauss point is determined by averaging the Cauchy stress tensor over all grains at that point by evaluating
$$\begin{aligned} \varvec{\sigma } = \frac{1}{N}\sum _{i=1}^N \varvec{\sigma }^i \end{aligned}$$
where N is the number of grains in each Gauss point. Results will be shown for the internal variables by finding the maximum hardening variable \(g^{\alpha }\) in all slip systems. The maximum component of \(\varvec{F}^p\) will also be studied. To simplify the notation, the following definitions will be used subsequently
$$\begin{aligned} g_{max} = \max _{\alpha } g^{\alpha } \ \ \text {and} \ \ F^p_{max} = \max _{i,j} F_{ij}^p \end{aligned}$$
The relative errors of the average von Mises effective stress as well as the maximum of the internal variables are evaluated as
$$\begin{aligned}&\sigma ^{rel. \, error} = \frac{\mid \sigma - \sigma ^{ref} \mid }{\sigma ^{ref}}, \nonumber \\&g^{rel. \, error} = \frac{\mid g_{max} - g_{max}^{ref} \mid }{g_{max}^{ref}}, \nonumber \\&F^{p, rel. \, error}= \frac{\mid F^p_{max} - F^{p, ref}_{max} \mid }{F^{p,ref}_{max}} \end{aligned}$$

4.1 Uniaxial tensile deformation of a one-element single crystal

In the first example, uniaxial tensile deformation of a single crystal is modeled using a single three dimensional 8-node element of dimensions \(1 \times 1 \times 1\,\text {mm}^3\), see Fig. 1a. The simulation is performed for an initial orientation of the crystal defined by the Bunge Euler angle set \( (\phi _1,{\varPhi },\phi _2) =(0,0,0)\). This choice of angle set mimics uniaxial loading along the crystal’s [100] axis. The simulations are performed with a constant displacement rate of \(\dot{u}_x = 0.1\) mm/s, applied as shown in Fig. 1b for a total time of 30 s. The BE and EU schemes are performed with the time step \({\varDelta }t=0.4\) s. For comparison purpose, a simulation using DIRK is performed with a fixed time step \({\varDelta }t= 0.8\) s. The doubled time step for the DIRK scheme results in that the same number of solutions of the global system is employed. Adaptive time stepping will not be considered as the purpose of this first example is to investigate the influence of different projection methods. Thus, a comparison is made where the projection method in (46)–(53), cf. [20], is used together with the BE and DIRK schemes and a comparison where the projection method presented in (56) is used together with the BE and DIRK schemes.
Fig. 2

The von Mises effective stress obtained with the reference simulation, i.e. the EU scheme with a time step \({\varDelta }t = 1\times 10^{-6}\) s

Fig. 3
a The relative error of the von Mises effective stress, b the relative error of \(g_{max}\) and c the relative error of \(F^p_{max}\) found when using EU
Open image in new window
, BE with projection according to (46)–(53
Open image in new window
, DIRK with projection according to (46)–(53
Open image in new window
, BE with the projection method proposed in (56
Open image in new window
and DIRK with the projection method proposed in (56
Open image in new window

The von Mises effective stress is plotted in Fig. 2 where a maximum effective stress slightly above 800 MPa is obtained at a displacement of \(u_x=3\) mm. In Fig. 3, the relative errors of the von Mises effective stress, \(g_{max}\) and \(F^p_{max}\) are shown for the different methods. Both the BE and the DIRK schemes simulated with the projection method in (46)–(53) result in significant errors in the von Mises effective stress and in the relative error of \(F^p_{max}\). The relative errors in the stresses and in \(F^p_{max}\) obtained from BE are the highest whereas the DIRK scheme performs slightly better. Considering the relative error of \(g_{max}\) shown in Fig. 3b, the BE scheme generates the largest relative error.

Next, the proposed projection method in (56) is evaluated. For this projection method, the accuracy of all integration schemes is slightly increased, see Fig. 3. The relative error of \(g_{max}\) obtained when using the DIRK scheme is small for both projection methods considered here, cf. Fig. 3b.
Fig. 4
The relative error of \(g_{max}\) as function of the size of the time step (note the logarithmic scale on both axes), found when using: EU 
Open image in new window
, BE with projection according to (46)–(53
Open image in new window
, DIRK with projection according to (46)–(53
Open image in new window
, BE with the projection method proposed in (56
Open image in new window
and DIRK with the projection method proposed in (56
Open image in new window

It can be concluded that the BE scheme is systematically less accurate compared to the DIRK and EU schemes and that use of a time continuous projection technique will improve the results in terms of a lower relative error, at least when considering the effective stress and the plastic deformation gradient. Based on this conclusion, only results from using the time continuous projection technique will be considered from here on.

The relative error of the quantity \(g_{max}\) is plotted as function of the time step in Fig. 4. It can be concluded that the order of the EU scheme and the DIRK scheme is higher than the order of the BE scheme. It can also be seen that the relative error of the EU and DIRK schemes are lower than the relative error of the BE scheme.
Fig. 5

Effective von Mises stress obtained from the reference simulation, i.e. the EU scheme with a time step \({\varDelta }t = 1\times 10^{-6}\) s

Fig. 6
a The relative error of the von Mises effective stress, b the relative error of \(g_{max}\) and c the relative error of \(F^p_{max}\) found when using EU 
Open image in new window
, BE 
Open image in new window
and DIRK with adaptive time step 
Open image in new window

4.2 Simple shear deformation of a single crystal

Next, simple shear deformation of a single crystal is modeled, again using a single 3D 8-node element of dimensions \(1 \times 1 \times 1 \ \text {mm}^3\) , cf. Fig. 1c. The initial orientation of the crystal is defined by the Euler angle set \((\phi _1,{\varPhi },\phi _2) =(0,0,0)\) and the BE and EU schemes are used with the time step \({\varDelta }t=0.4\) s. The simulations are performed with a constant displacement rate of \(\dot{u}_x = 0.1\) mm/s, applied as shown in Fig. 1c for a total time of 30 s.

As discussed in [12, 23], the crystal orientation will, in this deformation mode, continuously change. Figure 5 shows that the von Mises stress is continuously changing due to the evolution of the crystal orientation and as a result the relative errors in the stresses shown in Fig. 6a are significantly higher compared to the uniaxial load case. The peaks in the errors can be explained by additional slip systems being activated as deformation progresses.

The relative error of \(g_{max}\) and \(F^p_{max}\) are plotted versus the displacement in Fig. 6b, c, respectively. The relative errors resulting from using the DIRK and EU schemes are of the same order, and significantly lower than the error generated by the BE scheme. The error estimate e from the embedded DIRK, cf. (38), is plotted together with the time step versus the displacement in Fig. 7. The fluctuations in the error and the time step are due to activation of different slip systems.
Fig. 7
Evolution of the time step \({\varDelta }t\) 
Open image in new window
and the error e 
Open image in new window
found when considering the embedded DIRK method. For a definition of the error e, see (38)
Fig. 8

a Illustration of the plate with a hole subjected to uniaxial deformation. b Finite element discretization of one eighth of the plate where advantage is taken of the symmetry of the geometry in a

As a conclusion from the single crystal examples, the DIRK scheme with the time continuous projection technique and the EU scheme are the two integration methods which generate the smallest relative errors compared to the other methods.

4.3 Uniaxial tension of a plate with hole

Fig. 9

Effective von Mises stress obtained from the reference simulation, i.e. the EU scheme with a time step \({\varDelta }t = 1\times 10^{-6}\) s

Fig. 10
a The relative error of the von Mises effective stress, b the relative error of \(g_{max}\) and c the relative error of \(F^p_{max}\) found when using EU 
Open image in new window
, BE 
Open image in new window
and DIRK with adaptive time step 
Open image in new window

As a final example, a polycrystalline plate with a centrally located hole is considered, cf. Fig. 8. The plate has the dimensions \(100 \times 100 \times 10\,\text {mm}^3\) and due to symmetry only one eighth of the structure is modeled. The finite element mesh consists of 370 brick elements and the plate is subjected to tensile deformation with a constant displacement rate \(\dot{u}_x = 5\) mm/s for a total time of 1 s. Each Gauss point comprises \(N= 100\) randomly oriented grains. The rate sensitivity parameter m, cf. (16), is chosen as \(m=20\), which is lower than the value in Table 2, to decrease the computational time. The time step used in the BE and EU schemes is \({\varDelta }t = 0.004\) s.

In Fig. 9, the average effective von Mises stress, cf. (57), is plotted for element 1 marked in Fig. 8. The structure is stretched 10 mm which results in a maximum stress slightly under 800 MPa. The relative error in the effective stress is shown in Fig. 10a, and it can be concluded that the relative error obtained from the DIRK method is lower than the relative error obtained from using the EU and BE schemes. Using the DIRK scheme results also in higher accuracy when considering the relative errors of \(g_{max}\) and \(F^p_{max}\) shown in Fig. 10b, c.
Fig. 11
Evolution of the time step \({\varDelta }t\) 
Open image in new window
and the error e 
Open image in new window
from using the embedded DIRK method, cf. (38)

In Fig. 11, the error e from the embedded DIRK method, cf. (38), is plotted together with the time step \({\varDelta }t\). The error is fluctuating around or slightly below 1 and thus the time step changes are negligible.

Summarizing the results from the single and polycrystal examples, the DIRK method provides higher accuracy when combined with the time continuous projection technique. In addition, the embedded DIRK method offers a time step control at no additional computational costs. It can be concluded that DIRK integration method should be the method of choice when solving crystal plasticity boundary value problems.

5 Conclusion

The implications of using a diagonally implicit Runge–Kutta (DIRK) scheme in crystal plasticity simulations have been scrutinized. The DIRK approach is compared to a classical implicit backward Euler (BE) scheme and an exponential update procedure. Different projection techniques have been evaluated to enforce plastic incompressibility. For the DIRK scheme, an embedded error estimate is used to control the step size. Both single crystal and polycrystal simulation examples are considered

The relative error in terms of stresses, hardening variables and plastic deformation are investigated. It is shown that the choice of projection method to ensure plastic incompressibility is crucial for the DIRK and the implicit backward Euler schemes. A time-continuous projection approach is shown to be able to enforce plastic incompressibility without reducing the accuracy.

The single crystal simulations show that the exponential update procedure generates relative errors of the same order as the relative error from the implicit backward Euler approach, while the DIRK scheme provides higher accuracy. It is also shown that in polycrystalline simulations, the DIRK approach provides significantly higher accuracy than the methods used for comparison in the present work.

In conclusion, since the DIRK scheme results in higher accuracy with negligible additional cost, the DIRK scheme appears to be the preferable time integration scheme for crystal plasticity, when combined with a time-continuous projection approach.


  1. 1.
    Horstemeyer MF, Potirniche GP, Marin EB (2005) Crystal plasticity. Springer Netherlands, Dordrecht, pp 1133–1149Google Scholar
  2. 2.
    Busso EP, Cailletaud G (2005) On the selection of active slip systems in crystal plasticity. Int J Plast 21(11):2212–2231CrossRefGoogle Scholar
  3. 3.
    Nemat-Nasser S, Okinaka T (1996) A new computational approach to crystal plasticity: fcc single crystal. Mech Mater 24(1):43–57CrossRefGoogle Scholar
  4. 4.
    Steinmann P, Stein E (1996) On the numerical treatment and analysis of finite deformation ductile single crystal plasticity. Comput Methods Appl Mech Eng 129(3):235–254CrossRefGoogle Scholar
  5. 5.
    Kuroda M, Tvergaard V (2007) Effects of texture on shear band formation in plane strain tension/compression and bending. Int J Plast 23(2):244–272CrossRefGoogle Scholar
  6. 6.
    Ling X, Horstemeyer MF, Potirniche GP (2005) On the numerical implementation of 3D rate-dependent single crystal plasticity formulations. Int J Numer Methods Eng 63(4):548–568CrossRefGoogle Scholar
  7. 7.
    Hutchinson JW (1976) Bounds and self-consistent estimates for creep of polycrystalline materials. Proc R Soc Lond A Math Phys Eng Sci 348(1652):101–127CrossRefGoogle Scholar
  8. 8.
    Forest S, Rubin M (2016) A rate-independent crystal plasticity model with a smooth elastic–plastic transition and no slip indeterminacy. Eur J Mech A Solids 55:278–288MathSciNetCrossRefGoogle Scholar
  9. 9.
    Raphanel J, Ravichandran G, Leroy Y (2004) Three-dimensional rate-dependent crystal plasticity based on Runge–Kutta algorithms for update and consistent linearization. Int J Solids Struct 41:5995–6021CrossRefGoogle Scholar
  10. 10.
    Li H, Yang H, Sun Z (2008) A robust integration algorithm for implementing rate dependent crystal plasticity into explicit finite element method. Int J Plast 24(2):267–288CrossRefGoogle Scholar
  11. 11.
    Mosler J, Bruhns O (2009) Towards variational constitutive updates for non-associative plasticity models at finite strain: models based on a volumetric-deviatoric split. Int J Solids Struct 46(7):1676–1684MathSciNetCrossRefGoogle Scholar
  12. 12.
    Miehe C, Becker M (2006) Multiscale modeling of anisotropies in single crystals and polycrystals at finite strains. Springer, Berlin, pp 145–177zbMATHGoogle Scholar
  13. 13.
    Mellbin Y, Hallberg H, Ristinmaa M (2014) Accelerating crystal plasticity simulations using GPU multiprocessors. Int J Numer Methods Eng 100(2):111–135MathSciNetCrossRefGoogle Scholar
  14. 14.
    Ellsiepen P, Hartmann S (2001) Remarks on the interpretation of current non-linear finite element analyses as differential–algebraic equations. Int J Numer Methods Eng 51(6):679–707CrossRefGoogle Scholar
  15. 15.
    Hartmann S (2005) A remark on the application of the Newton–Raphson method in non-linear finite element analysis. Comput Mech 36(2):100–116MathSciNetCrossRefGoogle Scholar
  16. 16.
    Hartmann S (2002) Computation in finite-strain viscoelasticity: finite elements based on the interpretation as differential–algebraic equations. Comput Methods Appl Mech Eng 191(13–14):1439–1470CrossRefGoogle Scholar
  17. 17.
    Borgqvist E, Wallin M (2013) Numerical integration of elasto-plasticity coupled to damage using a diagonal implicit Runge–Kutta integration scheme. Int J Damage Mech 22(1):68–94CrossRefGoogle Scholar
  18. 18.
    Rothe S, Hamkar A-W, Quint KJ, Hartmann S (2012) Comparison of diagonal-implicit, linear-implicit and half-explicit Runge–Kutta methods in non-linear finite element analyses. Arch Appl Mech 82(8):1057–1074CrossRefGoogle Scholar
  19. 19.
    Håkansson P, Wallin M, Ristinmaa M (2008) Prediction of stored energy in polycrystalline materials during cyclic loading. Int J Solids Struct 45(6):1570–1586CrossRefGoogle Scholar
  20. 20.
    Hartmann S, Quint KJ, Arnold M (2008) On plastic incompressibility within time-adaptive finite elements combined with projection techniques. Comput Methods Appl Mech Eng 198(2):178–193MathSciNetCrossRefGoogle Scholar
  21. 21.
    Quint KJ, Hartmann S, Rothe S, Saba N, Steinhoff K (2011) Experimental validation of high-order time integration for non-linear heat transfer problems. Comput Mech 48(1):81–96CrossRefGoogle Scholar
  22. 22.
    Weber G, Anand L (1990) Finite deformation constitutive equations and a time integration procedure for isotropic, hyperelastic-viscoplastic solids. Comput Methods Appl Mech Eng 79(2):173–202CrossRefGoogle Scholar
  23. 23.
    Schmidt-Baldassari M (2003) Numerical concepts for rate-independent single crystal plasticity. Comput Methods Appl Mech Eng 192(11–12):1261–1280CrossRefGoogle Scholar

Copyright information

© The Author(s) 2018

Open AccessThis article is distributed under the terms of the Creative Commons Attribution 4.0 International License (, which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Authors and Affiliations

  1. 1.Division of Solid MechanicsLund UniversityLundSweden

Personalised recommendations