EPIRKW and EPIRKK Time Discretization Methods
 64 Downloads
Abstract
Exponential integrators are special time discretization methods where the traditional linear system solves used by implicit schemes are replaced with computing the action of matrix exponentiallike functions on a vector. A very general formulation of exponential integrators is offered by the Exponential Propagation Iterative methods of Runge–Kutta type (EPIRK) family of schemes. The use of Jacobian approximations is an important strategy to drastically reduce the overall computational costs of implicit schemes while maintaining the quality of their solutions. This paper extends the EPIRK class to allow the use of inexact Jacobians as arguments of the matrix exponentiallike functions. Specifically, we develop two new families of methods: EPIRKW integrators that can accommodate any approximation of the Jacobian, and EPIRKK integrators that rely on a specific Krylovsubspace projection of the exact Jacobian. Classical order conditions theories are constructed for these families. Practical EPIRKW methods of order three and EPIRKK methods of order four are developed. Numerical experiments indicate that the methods proposed herein are computationally favorable when compared to a representative stateoftheart exponential integrator, and a Rosenbrock–Krylov integrator.
Keywords
Time integration Exponential integrator Krylov Bseries Butcher treesMathematics Subject Classification
65L05 65L04 65F60 65M221 Introduction
Runge–Kutta methods [9] are the prototypical onestep discretizations that use internal stage approximations to propagate the numerical solution forward in time from \(t_n\) to \(t_{n+1}=t_n+h\). Explicit Runge–Kutta methods [9, Section II.2] perform inexpensive calculations at each step, but suffer from stability restrictions on the time step size which makes them inappropriate for solving stiff systems. Implicit Runge–Kutta methods [9, Section II.7] require solution of nonlinear systems of equations at each step that can be done, for instance, by using a Newtonlike approach. This eases the numerical stability restrictions and allows to use large time step sizes for stiff problems, however it also increases the computational cost per step.
Exponential integrators [1, 3, 4, 7, 12, 13, 14, 15, 16, 18, 19, 24, 27, 28, 33] are a class of timestepping methods that replace the linear system solves in Rosenbrock style methods with operations involving the action of matrix exponentiallike functions on a vector. For many problems these products of a matrix exponentiallike function with a vector can be evaluated more efficiently than solving the corresponding linear systems.
Both the Wversions [13] and Kversions [31] of exponential methods have been established for particular formulations of exponential methods. This paper extends the theory of W and Ktype methods to the general class of Exponential Propagation Iterative methods of Runge–Kutta type (EPIRK) [27, 28].
The remainder of the paper is laid out as follows. In Sect. 2, we describe the general form of the EPIRK method and some simplifying assumptions that we make in this paper. In Sect. 3, we derive the order conditions for an EPIRKW method and construct methods with two different sets of coefficients. In Sect. 4, we extend the Ktheory, introduced in [32] for Rosenbrock–Krylov methods, to EPIRK methods and construct an EPIRKK method. Section 5 addresses strategies to evaluate products involving exponentiallike functions of matrices and vectors that are present in the formulation of methods discussed in this paper. Section 6 presents the numerical results, and conclusions are drawn in Sect. 7.
2 Exponential Propagation Iterative Methods of Runge–Kutta Type
Remark 1
Computationally efficient strategies to evaluate exponentiallike matrix function times vector products vary depending on the size of the ODE system. Approximating products \(\varvec{\psi }(z)v\) constitutes the major portion of overall computational cost of the method. Taylor expansion or Pade based approximations can be used to evaluate the products \(\varvec{\psi }(z)v\) for small systems. For large scale problems, particularly those where matrices cannot be stored explicitly and a matrixfree formulation of an integrator is a necessity, Krylov projectionbased methods become the de facto choice [28].
EPIRK methods of a given order can be built by solving either classical [28] or stiff [21] order conditions. In this paper we will focus on the classically accurate EPIRK methods. A classical EPIRK scheme is constructed by matching required number of Taylor expansion coefficients of the exact and approximate solutions to derive order conditions. The order conditions are then solved to compute the coefficients of the method. To ensure that the error has the desired order, the exact Jacobian matrix \(\mathbf {J}_{n}\) has to be used in the Taylor expansion of the numerical solution. If the Jacobian or its action on a vector is not computed with full accuracy, the numerical method will suffer from order reduction.
In this paper we construct EPIRK methods that retain full accuracy even with an approximated Jacobian. The theory of using inexact Jacobians in the method formulation, first proposed in [26] for implicit schemes, is extended to EPIRK methods. More specifically, EPIRKW methods that admit arbitrary approximations of the Jacobian while maintaining full order of accuracy are derived in Sect. 3. The drawback of Wmethods, as mentioned in [10, section IV.7], is the very fast growth of the number of order conditions with increasing order of the method. In such cases, significantly larger number of stages are typically needed to build higherorder methods.
In [31, 32] we developed Kmethods, versions of Wmethods that use a specific Krylovsubspace approximation of the Jacobian, and dramatically reduce the number of necessary order conditions. Here we construct Kmethods for EPIRK schemes in Sect. 4. The Kmethod theory enables the construction of high order methods with significantly fewer stages than Wmethods. For example, we show that three stage EPIRK Wmethods only exist up to order three, whereas we derive here two threestage fourth order Kmethods. Furthermore, as shown in the the numerical results in Sect. 6, for some problems Kmethods have better computational performance than traditional exponential integrators.
3 EPIRKW Methods
3.1 Order Conditions Theory for EPIRKW Methods
TWtrees up to order four (part one of two) [31]
\(\tau \)  

Wtree name  \(\tau ^{W}_{1}\)  \(\tau ^{W}_{2}\)  \(\tau ^{W}_{3}\)  \(\tau ^{W}_{4}\) 
Ktree name  \(\tau ^{K}_{1}\)  \(\tau ^{K}_{2}\)  –  \(\tau ^{K}_{3}\) 
\(F(\tau )\)  \(f^J\)  \(f^J_Kf^K\)  \(\mathbf {A}_{JK}f^K\)  \(f^J_{KL}f^Kf^L\) 
\(\mathsf {a}(\tau )\)  \(x_1\)  \(x_2\)  \(x_3\)  \(x_4\) 
\(B^\#\left( h\mathbf {f}(B(\mathsf {a},y))\right) \)  1  \(x_1\)  0  \(x_1^2\) 
\(B^\#\left( h\mathbf {A}B(\mathsf {a},y)\right) \)  0  0  \(x_1\)  0 
\(B^\#\left( \varvec{\varphi }_j(h\, \mathbf {A})B(\mathsf {a},y)\right) \)  \(c_0x_1\)  \(c_0x_2\)  \(c_0x_3 + c_1x_1\)  \(c_0x_4\) 
\(\tau \)  

Wtree name  \(\tau ^{W}_{5}\)  \(\tau ^{W}_{6}\)  \(\tau ^{W}_{7}\)  \(\tau ^{W}_{8}\) 
Ktree name  \(\tau ^{K}_{4}\)  –  –  – 
\(F(\tau )\)  \(f^J_Kf^K_Lf^L\)  \(f^J_K\mathbf {A}_{KL}f^L\)  \(\mathbf {A}_{JK}f^K_Lf^L\)  \(\mathbf {A}_{JK}\mathbf {A}_{KL}f^L\) 
\(\mathsf {a}(\tau )\)  \(x_5\)  \(x_6\)  \(x_7\)  \(x_8\) 
\(B^\#\left( h\mathbf {f}(B(\mathsf {a},y))\right) \)  \(x_2\)  \(x_3\)  0  0 
\(B^\#\left( h\mathbf {A}B(\mathsf {a},y)\right) \)  0  0  \(x_2\)  \(x_3\) 
\(B^\#\left( \varvec{\varphi }_j(h\, \mathbf {A})B(\mathsf {a},y)\right) \)  \(c_0x_5\)  \(c_0x_6\)  \(c_0x_7 + c_1x_2\)  \(c_0x_8 + c_1x_3 + c_2x_1\) 
\(\tau \)  

Wtree name  \(\tau ^{W}_{9}\)  \(\tau ^{W}_{10}\)  \(\tau ^{W}_{11}\)  \(\tau ^{W}_{12}\) 
Ktree name  \(\tau ^{K}_{5}\)  \(\tau ^{K}_{6}\)  –  \(\tau ^{K}_{7}\) 
\(F(\tau )\)  \(f^J_{KLM}f^Kf^Lf^M\)  \(f^J_{KL}f^L_Mf^Mf^K\)  \(f^J_{KL}\mathbf {A}_{LM}f^Mf^K\)  \(f^J_Kf^K_{LM}f^Mf^L\) 
\(\mathsf {a}(\tau )\)  \(x_9\)  \(x_{10}\)  \(x_{11}\)  \(x_{12}\) 
\(B^\#\left( h\mathbf {f}(B(\mathsf {a},y))\right) \)  \(x_1^3\)  \(x_1x_2\)  \(x_1x_3\)  \(x_4\) 
\(B^\#\left( h\mathbf {A}B(\mathsf {a},y)\right) \)  0  0  0  0 
\(B^\#\left( \varvec{\varphi }_j(h\, \mathbf {A})B(\mathsf {a},y)\right) \)  \(c_0x_9\)  \(c_0x_{10}\)  \(c_0x_{11}\)  \(c_0x_{12}\) 
TWtrees up to order four (part two of two) [31]
\(\tau \)  

Wtree name  \(\tau ^{W}_{13}\)  \(\tau ^{W}_{14}\)  \(\tau ^{W}_{15}\) 
Ktree name  \(\tau ^{K}_{8}\)  \(\tau ^{K}_{9}\)  – 
\(F(\tau )\)  \(\mathbf {A}_{JK}f^K_{LM}f^Lf^M\)  \(f^J_Kf^K_Lf^L_Mf^M\)  \( f^J_Kf^K_L\mathbf {A}_{LM}f^M \) 
\(\mathsf {a}(\tau )\)  \(x_{13}\)  \(x_{14}\)  \(x_{15}\) 
\(B^\#\left( h\mathbf {f}(B(\mathsf {a},y))\right) \)  0  \(x_5\)  \(x_6\) 
\(B^\#\left( h\mathbf {A}B(\mathsf {a},y)\right) \)  \(x_4\)  0  0 
\(B^\#\left( \varvec{\varphi }_j(h\, \mathbf {A})B(\mathsf {a},y)\right) \)  \(c_0x_{13} + c_1 x_4\)  \(c_0x_{14}\)  \(c_0x_{15}\) 
\(\tau \)  

Wtree name  \(\tau ^{W}_{16}\)  \(\tau ^{W}_{17}\)  \(\tau ^{W}_{18}\) 
Ktree name  –  –  – 
\(F(\tau )\)  \(f^J_K\mathbf {A}_{KL}f^L_Mf^M\)  \(f^J_K\mathbf {A}_{KL}\mathbf {A}_{LM}f^M\)  \(\mathbf {A}_{JK}f^K_Lf^L_Mf^M\) 
\(\mathsf {a}(\tau )\)  \(x_{16}\)  \(x_{17}\)  \(x_{18}\) 
\(B^\#\left( h\mathbf {f}(B(\mathsf {a},y))\right) \)  \(x_7\)  \(x_8\)  0 
\(B^\#\left( h\mathbf {A}B(\mathsf {a},y)\right) \)  0  0  \(x_5\) 
\(B^\#\left( \varvec{\varphi }_j(h\, \mathbf {A})B(\mathsf {a},y)\right) \)  \(c_0x_{16}\)  \(c_0x_{17}\)  \(c_0x_{18} + c_1x_5\) 
\(\tau \)  

Wtree name  \(\tau ^{W}_{19}\)  \(\tau ^{W}_{20}\)  \(\tau ^{W}_{2,1}\) 
Ktree name  –  –  – 
\(F(\tau )\)  \( \mathbf {A}_{JK}f^K_L\mathbf {A}_{LM}f^M\)  \( \mathbf {A}_{JK}\mathbf {A}_{KL}f^L_Mf^M\)  \(\mathbf {A}_{JK}\mathbf {A}_{KL}\mathbf {A}_{LM}f^M\) 
\(\mathsf {a}(\tau )\)  \(x_{19}\)  \(x_{20}\)  \(x_{21}\) 
\(B^\#\left( h\mathbf {f}(B(\mathsf {a},y))\right) \)  0  0  0 
\(B^\#\left( h\mathbf {A}B(\mathsf {a},y)\right) \)  \(x_6\)  \(x_7\)  \(x_8\) 
\(B^\#\left( \varvec{\varphi }_j(h\, \mathbf {A})B(\mathsf {a},y)\right) \)  \(c_0x_{19} + c_1x_6\)  \(c_0x_{20} + c_1x_7 + c_2x_2\)  \(c_0x_{21} + c_1x_8 + c_2x_3 + c_3x_1\) 
In TWtrees that correspond to elementary differentials of the Taylor expansion of numerical solution, the meagre nodes represents the appearance of f and its derivatives. The fat nodes represent the appearance of the inexact Jacobian \(\mathbf {A}_{n}\). It is useful to note that trees that contain both meagre and fat nodes do not appear in the trees corresponding to the Taylor expansion of the exact solution, as such an expansion does not contain the inexact Jacobian.

The elementary differentials corresponding to each TWtrees up to order four.

A set of coefficients \(x_i\) for an arbitrary Bseries \(\mathsf {a}(\tau )\).

The coefficients of the Bseries resulting from composing the function f with the Bseries \(\mathsf {a}(\tau )\). The rules for composing Bseries are discussed in [6, 28].

The coefficients of the Bseries resulting from leftmultiplying the Bseries \(\mathsf {a}(\tau )\) by an inexact Jacobian. The multiplication rule for Bseries is explained in [6].

The coefficients of the Bseries resulting from leftmultiplying the Bseries \(\mathsf {a}(\tau )\) by \(\varvec{\varphi }_j(h\, \mathbf {A}_{n})\). The rules for multiplying a Bseries by \(\varvec{\psi }(h\,\mathbf {J}_{n})\), where \(\mathbf {J}_{n}\) is the exact Jacobian at \(\mathbf {y}_{n}\,\), are given in [28]. The rules for multiplying a Bseries by \(\varvec{\psi }(h\,\mathbf {A}_{n})\), for an arbitrary matrix \(\mathbf {A}_{n}\), are given in [31].
We now recall the following definition:
Definition 1
(Density of a tree [5, 9]) The density \(\gamma (\tau )\) of a tree \(\tau \) is the product over all vertices of the orders of the subtrees rooted at those vertices.
And we have the following theorem:
Theorem 1
Proof
First part of the proof follows from the observation that the elementary differentials in the Bseries expansion of the exact solution cannot have the approximate Jacobian appearing anywhere in their expressions. Second part of the proof follows from [9, Theorem 2.6, 2.11] and [5, Subsection 302, 380]. \(\square \)
EPIRKW order conditions are obtained by imposing that the Bseries coefficients of the numerical solution match the Bseries coefficients of the exact solution up to the desired order of accuracy.
3.2 Construction of Practical EPIRKW Integrators
Order conditions for the three stage EPIRKW method
Tree  Order  Order condition: \(B^{\#}(\mathbf {y}_{n+1})  B^{\#}\big (\mathbf {y}(t_{n}\,+h)\big ) = 0\) 

\({\tau ^{W}_1}\)  1  \(b_{1}\, p_{1,1}\,1= 0\) 
\({\tau ^{W}_2}\)  2  \(\begin{array}{ll} &{}\frac{1}{6} (6 a_{1,1}\, b_{2}\, p_{1,1}\, p_{2,1}\,+3 a_{1,1}\, b_{2}\, p_{1,1}\, p_{2,2}\,12 a_{1,1}\, b_{3}\, p_{1,1}\, p_{3,1}\,\\ &{}\quad +\,6 a_{2,1}\, b_{3}\, p_{1,1}\, p_{3,1}\,6 a_{1,1}\, b_{3}\, p_{1,1}\, p_{3,2}\,+3 a_{2,1}\, b_{3}\, p_{1,1}\, p_{3,2}\,\\ &{}\quad \,2 a_{1,1}\, b_{3}\, p_{1,1}\, p_{3,3}\,+a_{2,1}\, b_{3}\, p_{1,1}\, p_{3,3}\,3)= 0\end{array}\) 
\({\tau ^{W}_3}\)  2  \(\begin{array}{ll} &{}\frac{1}{6} p_{1,1}\, (3 b_{1}\, g_{3,1}\,6 a_{1,1}\, b_{2}\, p_{2,1}\, 3 a_{1,1}\, b_{2}\, p_{2,2}\,\\ &{}\quad +\,12 a_{1,1}\, b_{3}\, p_{3,1}\,6 a_{2,1}\, b_{3}\, p_{3,1}\,+6 a_{1,1}\, b_{3}\, p_{3,2}\,\\ &{}\quad 3 a_{2,1}\, b_{3}\, p_{3,2}\,+2 a_{1,1}\, b_{3}\, p_{3,3}\,a_{2,1}\, b_{3}\, p_{3,3})= 0\end{array}\) 
\({\tau ^{W}_4}\)  3  \(\begin{array}{ll} &{}\frac{1}{6} \left( 6 a_{1,1}^2\, b_{2}\, p_{2,1}\, p_{1,1}^2\,+3 a_{1,1}^2\, b_{2}\, p_{2,2}\, p_{1,1}^2\,12 a_{1,1}^2\, b_{3}\, p_{3,1}\, p_{1,1}^2\,\right. \\ &{}\quad +\,6 a_{2,1}^2\, b_{3}\, p_{3,1}\, p_{1,1}^2\,6 a_{1,1}^2\, b_{3}\, p_{3,2}\, p_{1,1}^2\,+3 a_{2,1}^2\, b_{3}\, p_{3,2}\, p_{1,1}^2\,\\ &{}\quad \left. \,2 a_{1,1}^2\, b_{3}\, p_{3,3}\, p_{1,1}^2\,+a_{2,1}^2\, b_{3}\, p_{3,3}\, p_{1,1}^2\,2\right) = 0\end{array}\) 
\({\tau ^{W}_5}\)  3  \(\begin{array}{ll} &{}\frac{1}{12} (12 a_{1,1}\, a_{2,2}\, b_{3}\, p_{1,1}\, p_{2,1}\, p_{3,1}\, +6 a_{1,1}\, a_{2,2}\, b_{3}\, p_{1,1}\, p_{2,2}\, p_{3,1}\,\\ &{}\quad +\,6 a_{1,1}\, a_{2,2}\, b_{3}\, p_{1,1}\, p_{2,1}\, p_{3,2}\,+3 a_{1,1}\, a_{2,2}\, b_{3}\, p_{1,1}\, p_{2,2}\, p_{3,2}\,\\ &{}\quad +\,2 a_{1,1}\, a_{2,2}\, b_{3}\, p_{1,1}\, p_{2,1}\, p_{3,3}\,+a_{1,1}\, a_{2,2}\, b_{3}\, p_{1,1}\, p_{2,2}\, p_{3,3}\,2)= 0\end{array}\) 
\({\tau ^{W}_6}\)  3  \(\begin{array}{ll} &{}\frac{1}{12} p_{1,1}\, (6 a_{1,1}\, b_{2}\, g_{1,1}\, p_{2,1}\, 12 a_{1,1}\, a_{2,2}\, b_{3}\, p_{3,1}\, p_{2,1}\,\\ &{}\quad \,6 a_{1,1}\, a_{2,2}\, b_{3}\, p_{3,2}\, p_{2,1}\,2 a_{1,1}\, a_{2,2}\, b_{3}\, p_{3,3}\, p_{2,1}\,\\ &{}\quad +\,3 a_{1,1}\, b_{2}\, g_{1,1}\, p_{2,2}\,12 a_{1,1}\, b_{3}\, g_{1,1}\, p_{3,1}\,+6 a_{2,1}\, b_{3}\, g_{2,1}\, p_{3,1}\,\\ &{}\quad \,6 a_{1,1}\, a_{2,2}\, b_{3}\, p_{2,2}\, p_{3,1}\,6 a_{1,1}\, b_{3}\, g_{1,1}\, p_{3,2}\,\\ &{}\quad +\,3 a_{2,1}\, b_{3}\, g_{2,1}\, p_{3,2}\,3 a_{1,1}\, a_{2,2}\, b_{3}\, p_{2,2}\, p_{3,2}\,2 a_{1,1}\, b_{3}\, g_{1,1}\, p_{3,3}\,\\ &{}\quad +\,a_{2,1}\, b_{3}\, g_{2,1}\, p_{3,3}\,a_{1,1}\, a_{2,2}\, b_{3}\, p_{2,2}\, p_{3,3})= 0\end{array}\) 
\({\tau ^{W}_7}\)  3  \(\begin{array}{ll}&{}\frac{1}{24} p_{1,1}\, (12 a_{1,1}\, b_{2}\, g_{3,2}\, p_{2,1}\,24 a_{1,1}\, a_{2,2}\, b_{3}\, p_{3,1}\, p_{2,1}\,\\ &{}\quad \,12 a_{1,1}\, a_{2,2}\, b_{3}\, p_{3,2}\, p_{2,1}\,4 a_{1,1}\, a_{2,2}\, b_{3}\, p_{3,3}\, p_{2,1}\,\\ &{}\quad +\,4 a_{1,1}\, b_{2}\, g_{3,2}\, p_{2,2}\,24 a_{1,1}\, b_{3}\, g_{3,3}\, p_{3,1}\,+12 a_{2,1}\, b_{3}\, g_{3,3}\, p_{3,1}\,\\ &{}\quad \,12 a_{1,1}\, a_{2,2}\, b_{3}\, p_{2,2}\, p_{3,1}\, 8 a_{1,1}\, b_{3}\, g_{3,3}\, p_{3,2}\,\\ &{}\quad +\,4 a_{2,1}\, b_{3}\, g_{3,3}\, p_{3,2}\,6 a_{1,1}\, a_{2,2}\, b_{3}\, p_{2,2}\, p_{3,2}\,2 a_{1,1}\, b_{3}\, g_{3,3}\, p_{3,3}\,\\ &{}\quad +\,a_{2,1}\, b_{3}\, g_{3,3}\, p_{3,3}\,2 a_{1,1}\, a_{2,2}\, b_{3}\, p_{2,2}\, p_{3,3})= 0\end{array}\) 
\({\tau ^{W}_8}\)  3  \(\begin{array}{ll} &{}\frac{1}{24} p_{1,1}\, \left( 4 b_{1}\, g_{3,1}^2\, 12 a_{1,1}\, b_{2}\, g_{1,1}\, p_{2,1}\,12 a_{1,1}\, b_{2}\, g_{3,2}\, p_{2,1}\,\right. \\ &{}\quad \,6 a_{1,1}\, b_{2}\, g_{1,1}\, p_{2,2}\,4 a_{1,1}\, b_{2}\, g_{3,2}\, p_{2,2}\,+24 a_{1,1}\, b_{3}\, g_{1,1}\, p_{3,1}\,\\ &{}\quad \,12 a_{2,1}\, b_{3}\, g_{2,1}\, p_{3,1}\,+24 a_{1,1}\, b_{3}\, g_{3,3}\, p_{3,1}\, 12 a_{2,1}\, b_{3}\, g_{3,3}\, p_{3,1}\,\\ &{}\quad +\,24 a_{1,1}\, a_{2,2}\, b_{3}\, p_{2,1}\, p_{3,1}\,+12 a_{1,1}\, a_{2,2}\, b_{3}\, p_{2,2}\, p_{3,1}\,\\ &{}\quad +\,12 a_{1,1}\, b_{3}\, g_{1,1}\, p_{3,2}\,6 a_{2,1}\, b_{3}\, g_{2,1}\, p_{3,2}\,+8 a_{1,1}\, b_{3}\, g_{3,3}\, p_{3,2}\,\\ &{}\quad \,4 a_{2,1}\, b_{3}\, g_{3,3}\, p_{3,2}\,+12 a_{1,1}\, a_{2,2}\, b_{3}\, p_{2,1}\, p_{3,2}\,\\ &{}\quad +\,6 a_{1,1}\, a_{2,2}\, b_{3}\, p_{2,2}\, p_{3,2}\,+4 a_{1,1}\, b_{3}\, g_{1,1}\, p_{3,3}\,\\ &{}\quad \,2 a_{2,1}\, b_{3}\, g_{2,1}\, p_{3,3}\,+2 a_{1,1}\, b_{3}\, g_{3,3}\, p_{3,3}\,a_{2,1}\, b_{3}\, g_{3,3}\, p_{3,3}\,\\ &{}\quad \left. +\,4 a_{1,1}\, a_{2,2}\, b_{3}\, p_{2,1}\, p_{3,3}\,+2 a_{1,1}\, a_{2,2}\, b_{3}\, p_{2,2}\, p_{3,3}\,\right) = 0\end{array}\) 
The order conditions corresponding to trees \(\tau ^{W}_{1} \ldots \tau ^{W}_{8}\) of the three stage EPIRKW method (12) are given in Table 3. The difference between Bseries coefficients of the exact solution and of the numerical solution corresponding to \(\tau ^{W}_{14}\) turns out to be equal to \(1/24\) and cannot be zeroed out. \(\tau ^{W}_{14}\) is a tree that has four meagre nodes in it and appears in the Bseries expansions of both the exact solution and the numerical solution. The conclusion is that three stage EPIRKW methods with the simplified choice of \(\varvec{\psi }_{i,j}(z)\) given in Eq. (9) cannot achieve order four. Consequently, we will limit our solution procedure to constructing third order EPIRKW methods by satisfying the above eight order conditions. We use Mathematica^{®} to solve the order conditions using two different approaches, as discussed next.
In order to solve for a second order embedded method we rewrite the final stage of the method with new coefficients \(\widehat{b}_i\). Plugging in the substitutions that have been arrived at while solving the order conditions for the third order method results in a set of new conditions in only the \(\widehat{b}_i\). It is again straightforward to observe that \(\widehat{b}_{1} \rightarrow {1}/{p_{1,1}}\). We next solve the conditions for TWtrees up to order = 2. Solving order conditions \(\tau ^{W}_{2}\) and \(\tau ^{W}_{3}\) we get \(\widehat{b}_3 \rightarrow 3 + 8\, \widehat{b}_2\).
Coefficients for epirkw3a
\(a = \left[ \begin{array}{ccc} \frac{1}{2} &{}\quad 0 &{}\quad 0\\ 0 &{}\quad 1&{}\quad 0\\ \end{array}\right] , \quad \left[ \begin{array}{c} b \\ \widehat{b} \end{array}\right] = \left[ \begin{array}{ccc} \frac{3}{4} &{}\quad \frac{1}{2} &{}\quad 1\\ \frac{3}{4} &{}\quad \frac{3}{4} &{}\quad \frac{6}{5} \end{array}\right] , \quad g = \left[ \begin{array}{ccc} \frac{2}{3} &{}\quad 0 &{}\quad 0\\ 0 &{}\quad 0 &{}\quad 0\\ 1 &{}\quad \frac{3}{5} &{}\quad 0 \end{array}\right] , \quad p = \left[ \begin{array}{ccc} \frac{4}{3} &{}\quad 0 &{}\quad 0\\ 1 &{}\quad 2 &{}\quad 0\\ 0 &{}\quad 0 &{}\quad \frac{3}{4} \end{array}\right] .\) 
The choices that we have made for the coefficients a’s, b’s, g’s and p’s result in the sum of coefficients on trees \(\tau ^{W}_{5}\), \(\tau ^{W}_{6}\), \(\tau ^{W}_{7}\) and \(\tau ^{W}_{8}\) to sum to zero in the embedded method no matter what value is chosen for \(\widehat{b}_2\). And when we choose \(\mathbf {A}_{n} = \mathbf {J}_{n}\), the exact Jacobian, trees \(\tau ^{W}_{5}\), \(\tau ^{W}_{6}\), \(\tau ^{W}_{7}\) and \(\tau ^{W}_{8}\) are the same tree and it turns out that we incidentally solve the embedded method up to third order as well. To get a secondorder embedded method, we need to make a, g and p be independent of b and solve separately for \(\widehat{b}\).
Second approach to solving the order conditions
Coefficients for epirkw3b
\(a = \left[ \begin{array}{ccc} 0.22824182961171620396 &{}\quad 0 &{}\quad 0\\ 0.45648365922343240794 &{}\quad 0.33161664063356950085 &{}\quad 0 \end{array}\right] \),  
\(b = \left[ \begin{array}{c} 1 \\ 2.0931591383832578214 \\ 1.2623969257900804404 \end{array}\right] ^{T},\)  
\(\widehat{b} = \left[ \begin{array}{c} 1 \\ 2.0931591383832578214 \\ 1 \end{array}\right] ^{T},\)  
\(g = \left[ \begin{array}{ccc} 0 &{}\quad 0 &{}\quad 0\\ 0.34706341174296320958 &{}\quad 0.34706341174296320958 &{}\quad 0.34706341174296320958\\ 1 &{}\quad 1 &{}\quad 1 \end{array}\right] ,\)  
\(p = \left[ \begin{array}{ccc} 1 &{}\quad 0 &{}\quad 0\\ 0 &{}\quad 2.0931604100438501004 &{}\quad 0\\ 1 &{}\quad 1 &{}\quad 1 \end{array}\right] .\) 
Coefficients for epirkw3c
\(a = \left[ \begin{array}{ccc} \frac{282}{311} &{}\quad 0 &{}\quad 0\\ \frac{294}{311} &{}\quad \frac{\,7}{94} &{}\quad 0 \end{array}\right] , \quad \left[ \begin{array}{ccc} b \\ \widehat{b} \end{array}\right] = \left[ \begin{array}{ccc} 1 &{}\quad \frac{\,3421}{987} &{}\quad \frac{\,622}{105}\\ 1 &{}\quad \frac{13}{9} &{}\quad 1 \end{array}\right] , \quad g = \left[ \begin{array}{ccc} \frac{1}{5} &{}\quad 0 &{}\quad 0\\ \frac{1}{8} &{}\quad \frac{1}{8} &{}\quad 0\\ 1 &{}\quad 1 &{}\quad 1 \end{array}\right] , \quad p = \left[ \begin{array}{ccc} 1 &{}\quad 0 &{}\quad 0\\ \frac{1}{2} &{}\quad \frac{1}{2} &{}\quad 0\\ \frac{1}{3} &{}\quad \frac{1}{3} &{}\quad \frac{1}{3} \end{array}\right] .\) 
Additionally, we derived epirkw3c, a third order Wmethod with a second order embedded method, to have full a, b, g and p coefficient matrices such that all \(\varvec{\psi }\) function products appearing in the three stage formulation (12) need to be computed and contribute to the final onestep solution. Table 6 lists the coefficients for epirkw3c.
4 EPIRKK Methods
Wmethods have the advantage that any approximation of the Jacobian that ensures stability can be used, therefore they have the potential for attaining excellent computational efficiency in comparison to methods that require exact Jacobians. The drawback of the Wmethods, however, is the very large number of order conditions that need to be solved for constructing the method [10, Section IV.7].
In order to reduce the number of order conditions Krylovbased methods (Kmethods) were developed for Rosenbrock integrators in [32] and for exponential integrators in [31]. Kmethods are built in the framework of Wmethods and use a very specific approximation to the Jacobian constructed in the Krylov space. This approximation allows TWtrees with linear subtrees having fat root to be recolored (as meagre), leading to the new class of TKtrees. The recoloring results in substantially fewer trees, and therefore fewer order conditions for the Kmethods [32, Lemma 3.2, 3.3].
In this section we derive Kmethods in the framework of EPIRK integrators.
4.1 KrylovSubspace Approximation of Jacobian
Lemma 1
(Powers of \(\mathbf {A}_{n}\) [31]) Powers of \(\mathbf {A}_{n}\): \(\mathbf {A}_{n}^k = \mathbf {V}\mathbf {H}^k \mathbf {V}^T\) for any \(k \ge 1\).
Lemma 2
In order to derive the Krylov formulation of the EPIRK methods (12) we need to extend Lemma 2 to the evaluation of \(\varvec{\psi }\) functions (9). We have the following result.
Lemma 3
Proof
4.2 Formulation of EPIRKK Methods
 1.Splitting the internal stage vectors leads to:where \(\mathbf {Y}_0 \equiv \mathbf {y}_n\).$$\begin{aligned} \mathbf {Y}_i = \mathbf {V}\varvec{\lambda }_i + \mathbf {Y}_i^{\bot } \qquad \text {where} \quad \mathbf {V}^{T} \mathbf {Y}_i = \varvec{\lambda }_i, \quad \left( \mathbf {I}_N  \mathbf {V}\mathbf {V}^{T}\right) \,\mathbf {Y}_i = \mathbf {Y}_i^{\bot }, \end{aligned}$$(17)
 2.Splitting the righthand side function evaluated at the internal stage vectors gives:where \(\mathbf {f}_0 \equiv \mathbf {f}(\mathbf {y}_n)\).$$\begin{aligned} \mathbf {f}_i := \mathbf {f}(\mathbf {Y}_i) = \mathbf {V}\varvec{\eta }_i + \mathbf {f}_i^{\bot } \qquad \text {where} \quad \mathbf {V}^{T} \mathbf {f}_i = \varvec{\eta }_i, \quad \left( \mathbf {I}_N  \mathbf {V}\mathbf {V}^{T}\right) \mathbf {f}_i = \mathbf {f}_i^{\bot }, \end{aligned}$$(18)
 3.Splitting the nonlinear Taylor remainder terms of the righthand side functions yields:$$\begin{aligned}&\mathbf {r}(\mathbf {Y}_i) = \mathbf {f}(\mathbf {Y}_i)  \mathbf {f}(\mathbf {y}_{n})  \mathbf {A}_{n}\, (\mathbf {Y}_i  \mathbf {y}_{n}) = \mathbf {f}_i  \mathbf {f}_0  \mathbf {V}\, \mathbf {H}\, \mathbf {V}^{T}\, (\mathbf {Y}_i  \mathbf {y}_{n}), \nonumber \\&\quad \text {where} \quad \mathbf {V}^{T}\, \mathbf {r}(\mathbf {Y}_i) = \varvec{\eta }_i  \varvec{\eta }_0  \mathbf {H}\, (\varvec{\lambda }_i  \varvec{\lambda }_0), \nonumber \\&\quad \left( \mathbf {I}_N  \mathbf {V}\mathbf {V}^{T}\right) \, \mathbf {r}(\mathbf {Y}_i) = \mathbf {f}_i^{\bot }  \mathbf {f}_0^{\bot }. \end{aligned}$$(19)
 4.Splitting the forward differences of the nonlinear remainder terms leads to:$$\begin{aligned} \begin{aligned} \mathbf {\widetilde{r}}_{(j1)}&:=\Delta ^{(j1)}\mathbf {r}(\mathbf {y}_{n}) = \mathbf {V}\, \mathbf {d}_{(j1)} + \mathbf {\widetilde{r}}_{(j1)}^{\bot }, \\ \text {where}&\quad \mathbf {V}^{T}\,\mathbf {\widetilde{r}}_{(j1)} = \mathbf {d}_{(j1)}, \quad \left( \mathbf {I}_N  \mathbf {V}\mathbf {V}^{T}\right) \, \mathbf {\widetilde{r}}_{(j1)} = \mathbf {\widetilde{r}}_{(j1)}^{\bot }. \end{aligned} \end{aligned}$$(20)
4.3 Order Conditions Theory for EPIRKK Methods
Kmethods construct a single Krylovsubspace per timestep, and use it to approximate the Jacobian. All stage vectors are also computed in this reduced space, before being projected back into the full space between successive stages. The order condition theory accounts for this computational procedure [32, Theorem 3.6].
Before we discuss the order conditions for the Kmethods, we define the trees that arise in the expansion of their solutions. Recalling that a linear tree is one where each node has only one child, consider the following definition:
Definition 2
Theorem 2
Trees corresponding to series expansion of the numerical solution of Kmethod with Krylovsubspace dimension M are TK(M).
The order conditions are derived from matching the coefficients of the Bseries expansion of the numerical solution to those of the Bseries expansion of the exact solution. If the expansion is made in the elementary differentials corresponding to the TK trees, then for a fourth order method there is a single additional tree (\(\tau ^{K}_{8}\)) in the numerical solution having both meagre and fat nodes in comparison to the Ttrees up to order four for a classical EPIRK method. In contrast with the Wmethod that has twentyone order conditions, the Kmethod has just nine for a fourth order method, which is almost the same as a classical EPIRK having eight.
As mentioned earlier, TKtrees come from recoloring all the linear subtrees with a fat root as meagre in the TWtrees. This significantly reduces the number of order conditions for the Kmethod since groups of TWtrees become isomorphic to one another after recoloring. TKtrees up to order four are given in [31]. This also indicates that the coefficients in front of these TKtrees in the Bseries expansion can be obtained by summing together the coefficients of TWtrees, which become isomorphic to one another, from the corresponding expansion.
Order conditions for the three stage EPIRKK method
Tree #  Order  Order condition: \(B^{\#}(\mathbf {y}_{n+1})  B^{\#}\big (\mathbf {y}(t_{n}\,+h)\big ) = 0\) 

\(\tau _{1}^{K}\)  1  \(b_{1}\, p_{1,1}\,1= 0\) 
\(\tau _{2}^{K}\)  2  \(\frac{1}{2} (b_{1}\, g_{3,1}\, p_{1,1}\,1)= 0\) 
\(\tau _{3}^{K}\)  3  \(\begin{array}{ll} &{}\frac{1}{6} \left( 6 a_{1,1}^2\, b_{2}\, p_{1,1}^2\, p_{2,1}\,+3 a_{1,1}^2\, b_{2}\, p_{1,1}^2\, p_{2,2}\,12 a_{1,1}^2\, b_{3}\, p_{1,1}^2\, p_{3,1}\,\right. \\ &{}\quad \,6 a_{1,1}^2\, b_{3}\, p_{1,1}^2\, p_{3,2}\,2 a_{1,1}^2\, b_{3}\, p_{1,1}^2\, p_{3,3}\,+6 a_{2,1}^2\, b_{3}\, p_{1,1}^2\, p_{3,1}\,\\ &{}\quad \left. +\,3 a_{2,1}^2\, b_{3}\, p_{1,1}^2\, p_{3,2}\,+a_{2,1}^2\, b_{3}\, p_{1,1}^2\, p_{3,3}\,2\right) = 0\end{array}\) 
\(\tau _{4}^{K}\)  3  \(\frac{1}{6} \left( b_{1}\, g_{3,1}^2\, p_{1,1}\,1\right) = 0\) 
\(\tau _{5}^{K}\)  4  \(\begin{array}{ll} &{}\frac{1}{12} \left( 12 a_{1,1}^3\, b_{2}\, p_{1,1}^3\, p_{2,1}\,+6 a_{1,1}^3\, b_{2}\, p_{1,1}^3\, p_{2,2}\,24 a_{1,1}^3\, b_{3}\, p_{1,1}^3\, p_{3,1}\,\right. \\ &{}\quad \,12 a_{1,1}^3\, b_{3}\, p_{1,1}^3\, p_{3,2}\,4 a_{1,1}^3\, b_{3}\, p_{1,1}^3\, p_{3,3}\,+12 a_{2,1}^3\, b_{3}\, p_{1,1}^3\, p_{3,1}\,\\ &{}\quad \left. +\,6 a_{2,1}^3\, b_{3}\, p_{1,1}^3\, p_{3,2}\,+2 a_{2,1}^3\, b_{3}\, p_{1,1}^3\, p_{3,3}\,3\right) = 0\end{array}\) 
\(\tau _{6}^{K}\)  4  \(\begin{array}{ll} &{}\frac{1}{24} \left( 12 a_{1,1}^2\, b_{2}\, g_{1,1}\, p_{1,1}^2\, p_{2,1}\,+6 a_{1,1}^2\, b_{2}\, g_{1,1}\, p_{1,1}^2\, p_{2,2}\,\right. \\ &{}\quad \,24 a_{1,1}^2\, b_{3}\, g_{1,1}\, p_{1,1}^2\, p_{3,1}\, 12 a_{1,1}^2\, b_{3}\, g_{1,1}\, p_{1,1}^2\, p_{3,2}\,\\ &{}\quad \,4 a_{1,1}^2\, b_{3}\, g_{1,1}\, p_{1,1}^2\, p_{3,3}\,+12 a_{2,1}^2\, b_{3}\, g_{2,1}\, p_{1,1}^2\, p_{3,1}\,\\ &{}\quad \left. +\,6 a_{2,1}^2\, b_{3}\, g_{2,1}\, p_{1,1}^2\, p_{3,2}\,+2 a_{2,1}^2\, b_{3}\, g_{2,1}\, p_{1,1}^2\, p_{3,3}\,3\right) = 0\end{array}\) 
\(\tau _{7}^{K}\)  4  \(\begin{array}{ll} &{}\frac{1}{12} \left( 12 a_{1,1}^2\, a_{2,2}\, b_{3}\, p_{1,1}^2\, p_{2,1}\, p_{3,1}\,+6 a_{1,1}^2\, a_{2,2}\, b_{3}\, p_{1,1}^2\, p_{2,1}\, p_{3,2}\,\right. \\ &{}\quad +\,2 a_{1,1}^2\, a_{2,2}\, b_{3}\, p_{1,1}^2\, p_{2,1}\, p_{3,3}\,+6 a_{1,1}^2\, a_{2,2}\, b_{3}\, p_{1,1}^2\, p_{2,2}\, p_{3,1}\,\\ &{}\quad \left. +\,3 a_{1,1}^2\, a_{2,2}\, b_{3}\, p_{1,1}^2\, p_{2,2}\, p_{3,2}\,+a_{1,1}^2\, a_{2,2}\, b_{3}\, p_{1,1}^2\, p_{2,2}\, p_{3,3}\,1\right) = 0\end{array}\) 
\(\tau _{8}^{K}\)  4  \(\begin{array}{ll} &{}\frac{1}{24} p_{1,1}^2\, \left( 24 a_{1,1}^2\, a_{2,2}\, b_{3}\, p_{2,1}\, p_{3,1}\,12 a_{1,1}^2\, a_{2,2}\, b_{3}\, p_{2,1}\, p_{3,2}\,\right. \\ &{}\quad \,4 a_{1,1}^2\, a_{2,2}\, b_{3}\, p_{2,1}\, p_{3,3}\,12 a_{1,1}^2\, a_{2,2}\, b_{3}\, p_{2,2}\, p_{3,1}\,\\ &{}\quad \,6 a_{1,1}^2\, a_{2,2}\, b_{3}\, p_{2,2}\, p_{3,2}\,2 a_{1,1}^2\, a_{2,2}\, b_{3}\, p_{2,2}\, p_{3,3}\,\\ &{}\quad +\,12 a_{1,1}^2\, b_{2}\, g_{3,2}\, p_{2,1}\,+4 a_{1,1}^2\, b_{2}\, g_{3,2}\, p_{2,2}\,24 a_{1,1}^2\, b_{3}\, g_{3,3}\, p_{3,1}\,\\ &{}\quad \,8 a_{1,1}^2\, b_{3}\, g_{3,3}\, p_{3,2}\,2 a_{1,1}^2\, b_{3}\, g_{3,3}\, p_{3,3}\,+12 a_{2,1}^2\, b_{3}\, g_{3,3}\, p_{3,1}\,\\ &{}\quad \left. +\,4 a_{2,1}^2\, b_{3}\, g_{3,3}\, p_{3,2}\,+a_{2,1}^2\, b_{3}\, g_{3,3}\, p_{3,3}\,\right) = 0\end{array}\) 
\(\tau _{9}^{K}\)  4  \(\frac{1}{24} \left( b_{1}\, g_{3,1}^3\, p_{1,1}\,1\right) = 0\) 
Corollary 1
Any EPIRKKmethod of order p gives rise to a classical EPIRK method of order p (with the same coefficients).
Proof
The proof follows directly from comparing the set of Ttrees to TKtrees. \(\square \)
Corollary 2
Any classical EPIRK method of order \(p \ge 3\) gives rise to an equivalent Kmethod of order at least three (with the same coefficients).
Proof
The proof follows directly from comparing the set of Ttrees to TKtrees. \(\square \)
4.4 Construction of Practical EPIRKK Integrators
Coefficients for epirkk4a
\(a = \left[ \begin{array}{ccc} \frac{692665874901013}{799821658665135} &{}\quad 0 &{}\quad 0\\ \frac{692665874901013}{799821658665135} &{}\quad \frac{3}{4} &{}\quad 0 \end{array}\right] ,\qquad \qquad \left[ \begin{array}{c} b \\ \widehat{b} \end{array}\right] = \left[ \begin{array}{ccc} \frac{799821658665135}{692665874901013} &{}\quad \frac{352}{729} &{}\quad \frac{64}{729}\\ \frac{799821658665135}{692665874901013} &{}\quad \frac{32}{81} &{}\quad 0 \end{array}\right] ,\)  
\(g = \left[ \begin{array}{ccc} \frac{3}{4} &{}\quad 0 &{}\quad 0\\ \frac{3}{4} &{}\quad 0 &{}\quad 0\\ 1 &{}\quad \frac{9}{16} &{}\quad \frac{9}{16} \end{array}\right] , \qquad \qquad p = \left[ \begin{array}{ccc} \frac{692665874901013}{799821658665135} &{}\quad 0 &{}\quad 0\\ 1 &{}\quad 1 &{}\quad 0\\ 1 &{}\quad 1 &{}\quad 0 \end{array}\right] .\) 
Coefficients for epirkk4b
\(a = \left[ \begin{array}{ccc} 1 &{}\quad 0 &{}\quad 0\\ 1 &{}\quad 1 &{}\quad 0 \end{array}\right] , \qquad \qquad \left[ \begin{array}{c} b \\ \widehat{b} \end{array}\right] = \left[ \begin{array}{ccc} \frac{4}{3} &{}\quad \frac{112}{243} &{}\quad 1\\ \frac{4}{3} &{}\quad \frac{80}{243} &{}\quad \,1 \end{array}\right] ,\)  
\(g = \left[ \begin{array}{ccc} \frac{3}{4} &{}\quad 0 &{}\quad 0\\ \frac{3}{4} &{}\quad \frac{3}{4} &{}\quad 0\\ 1 &{}\quad \frac{3}{4} &{}\quad \frac{3}{4} \end{array}\right] , \qquad \quad p = \left[ \begin{array}{ccc} \frac{3}{4} &{}\quad 0 &{}\quad 0\\ 1 &{}\quad 1 &{}\quad 0\\ 1 &{}\quad \frac{\,962}{243} &{}\quad \frac{524}{81} \end{array}\right] .\) 
The theory of Kmethods gives a lower bound on the Krylovsubspace size that guarantees the order of convergence [32, Theorem 3.6]. This bound depends only on the order of convergence of the method and not on the dimension of the ODE system. Here we have constructed two fourth order EPIRKK methods, whose coefficients are listed in Tables 8 and 9, and they require a Krylovsubspace of dimension four [32, Theorem 3.6]. All expensive operations such as computing products of \(\varvec{\psi }\) function of matrices with vectors are performed in this reduced space. Significant computational advantages are obtained if the Krylovsubspace captures all the stiff eigenmodes of the system. If not all stiff eigenmodes are captured, stability requirements will force the integrator to take smaller timesteps, which will increase the overall cost of integration. In such cases we typically observe that adding more vectors to the Krylovsubspace can improve the performance of the Ktype integrator.
5 Implementation Strategies for Exponential Integrators
Computing products of \(\varvec{\varphi }\) (or \(\varvec{\psi }\)) functions of matrices times vectors is at the core of exponential integrators. We briefly review the strategies we use to evaluate these products on a per integrator basis before we segue into a discussion on the construction of Krylovsubspaces that are an integral part of this process. Table 10 lists the methods under study and their implementation framework.
5.1 Evaluation of \(\varvec{\varphi }_k\) and \(\varvec{\psi }\) Products
We start our discussion with the classical exponential integrators listed in Table 10. For epirkk4classical and epirk5 [28, Table 4, Equation 28] the evaluation of products of \(\varvec{\psi }\) functions with vectors proceeds by first approximating the individual \(\varvec{\varphi }\) function products in the Krylovsubspace as illustrated in [27, sec 3.1], i.e. \(\varvec{\varphi }_k(h\,\gamma \, \mathbf {A}_{n})\mathbf {b} \approx s\Vert \mathbf {b}\Vert \mathbf {V}\varvec{\varphi }_k(h\,\gamma \, \mathbf {H})\mathbf {e}_1\). The \(\varvec{\varphi }\) function products associated with the approximation, \(\varvec{\varphi }_k(h\,\gamma \,\mathbf {H})\mathbf {e}_1\), are computed by constructing an augmentedmatrix and exponentiating it as described in [25, Theorem 1]. Finally, taking a linear combination of columns of the resultant matrix gives the \(\varvec{\psi }\) function product.
In the augmentedmatrix approach, an Arnoldi (or Lanczos – for a symmetric matrix) iteration is needed for each distinct vector in the formulation given in Eq. (10). Each of the classical integrators listed earlier has three stages that work with three different vectors, \(\mathbf {b}\), requiring three Arnoldi (or Lanczos) iterations per timestep. epirk5p1bvar [29], another classical method that we include in our numerical experiments, also performs three Arnoldi (or Lanczos) projections per timestep. It combines the Arnoldi (or Lanczos) projection, and the evaluation of \(\varvec{\varphi }\) function products by substepping, into a single computational process as described in [20].
Recall that Wmethods admit arbitrary Jacobian approximations while maintaining full accuracy. In order to demonstrate this, we have four alternate implementations that use different approximations to the Jacobian: the Jacobian itself; the identity matrix; the zero matrix, which reduces the epirkw scheme (12) to an explicit Runge–Kutta scheme; and lastly, the diagonal of the Jacobian. We will refer to these methods as epirkw3 in the paper and highlight the approximation in context. Figure 1 in the following section shows that these alternative implementations retain full order when we use an approximation to \(\mathbf {J}_{n}\). It is to be noted, however, that in the case of Wmethods, \(\mathbf {A}_n=\mathbf {J}_n\) might be needed to assure stability. Some discussion in this regard when \(\mathbf {A}_{n} = \mathbf {J}_{n}\) or when \(\Vert \mathbf {A}_{n}  \mathbf {J}_{n} \Vert \) is small, is done in [10, Sec IV.7, IV.11] and [26].
 1.
\(\mathbf {A}_{n} = \text {diag}(\mathbf {J}_{n})\). We compute the individual \(\varvec{\varphi }_k\) functions with successively higher subscripts using the recursive definition given in (6), where \(\varvec{\varphi }_0\) is computed as pointwise exponential of the entries along the diagonal. Next, we take a linear combination of the \(\varvec{\varphi }\) functions to evaluate the \(\varvec{\psi }\) function as defined in Eq. (9). Finally, the product of \(\varvec{\psi }\) function of matrix times vector is evaluated as a matrixvector product. A similar procedure is adapted for other approximations where \(\mathbf {A}_{n}\) is either zero or identity.
 2.
\(\mathbf {A}_{n} = \mathbf {J}_{n}\). The evaluation of products of \(\varvec{\psi }\) function of Jacobian with vectors is similar to classical integrators. An Arnoldi (or Lanczos) iteration is needed for each distinct vector in the three stage formulation given in Eq. (12). Implementations with nontrivial approximations to the Jacobian may use a similar strategy to compute the \(\varvec{\psi }\) function products.
epirkk4, being a fourth order Kmethod, theoretically, requires only four vectors in the Krylovsubspace for full accuracy. Stability requirements may, however, impose a need for larger subspaces. Since the stage values of epirkk4 are computed in this reduced space, the size of the matrices used in the computation of \(\varvec{\psi }\) function products is usually smaller than the size of the ODE system under consideration. As a result, in our implementation of epirkk4, quantities \(\varvec{\varphi }_k(h\,\gamma \,\mathbf {H})\) are directly computed using the recursive definition given in (6); they are stored independently, and linearly combined to compute the \(\varvec{\psi }\) function. The product of a \(\varvec{\psi }\) function of a matrix with a vector is computed as a matrixvector product. We repeat the procedure with five basis vectors in the Krylovsubspace for epirk5k.
5.2 Building KrylovSubspaces
When solving large systems of ODEs, \(\varvec{\varphi }\) (and \(\varvec{\psi }\)) function products are approximated in the Krylovsubspace. We use Lanczos iteration to compute the subspace when the Jacobian (or its approximation) is symmetric, and we use Arnoldi when the Jacobian is not symmetric. The computational complexity of Lanczos iteration scales linearly with the size of subspace, whereas it scales quadratically with the subspace size for Arnoldi. Order condition theory for classical exponential methods relies on using the exact Jacobian when computing \(\varvec{\varphi }\) (or \(\varvec{\psi }\)) function products. As a consequence, larger subspaces are usually needed to approximate the action of the Jacobian accurately. W and Kmethods, on the other hand, account for Jacobian approximations in their order condition theory and therefore work satisfactorily with comparably smaller subspaces.
For stiff problems, classical methods incur a huge cost per timestep in building large subspaces to capture enough stiff modes, albeit they take larger timesteps. In classical methods, if the cost of building the subspace is disproportionately high such that even taking larger timesteps does not offset it, then W and Kmethods turn out to be more efficient, despite the fact that they shrink the stepsize. We observe this to be the case, particularly, when we use Arnoldi iteration to compute the subspace.

epirkk4 We test two different implementations of epirkk4. The first one constructs the Krylovsubspace adaptively, by limiting the residual of \(\varvec{\varphi _1}\) evaluated on the (scaled) upperHessenberg matrix, \(\mathbf {H_m}\), to be below \(1\hbox {e}{}12\). The residual computations are performed only at certain fixed indices, where the cost of computing a residual equals the total cost of all previous residual computations [13, Section 6.4]. The maximum dimension of the subspace is set to 100; and the minimum, which has to be atleast four for fourth order accuracy, is indicated on plot legends in the subsequent section as a lower bound on the subspace dimension. Residual checks only occur once the minimum bound has been exceeded.
The second implementation of epirkk4 constructs Krylovsubspaces with a fixed number of basis vectors, and does not incur the cost of computing the residuals. In each experiment, we choose a range of subspace sizes that are a subset of the indices at which the adaptive variant computes the residuals. We only plot those that performed the best.

epirkk4classical: In our implementation, the Krylovsubspace is built adaptively using the desired solution tolerance as the tolerance during residual checks, with maximum dimension of the subspace left unrestricted.

epirkw3: The implementation uses adaptive Krylov to construct subspaces by limiting the residual to be below the desired solution tolerance, and the maximum dimension of the subspace is set to 100.

epirk5p1bvar: No limits are imposed on the subspace size as this would intervene with the algorithm that builds the Krylovsubspace and does substepping in a single computational process to compute the \(\varphi \) function product [20]. Implementation uses the desired solution tolerance to determine when the Krylov algorithm has converged.
6 Numerical Results
Comparative study of various exponential integrators
Integrator  Implementation framework  Coefficients  Derived order  Fixed step convergence order 

\({\ddag }\) epirkw3b \([\mathbf {A}_n = \mathbf {0}]\)  Wtype  Table 5  3  2.977000 
\({\ddag }\) epirkw3b \([\mathbf {A}_n = \text {diag}(\mathbf {J}_n)]\)  Wtype  Table 5  3  2.967430 
\({\ddag }\) epirkw3b \([\mathbf {A}_n = \mathbf {I}]\)  Wtype  Table 5  3  2.987911 
epirkw3b \([\mathbf {A}_n = \mathbf {J}_n]\)  Wtype  Table 5  3  2.994241 
epirkw3c \([\mathbf {A}_n = \mathbf {J}_n]\)  Wtype  Table 6  3  3.032945 
epirkk4b  Ktype  Table 9  4  4.014407 
epirkk4a  Ktype  Table 8  4  4.018722 
epirkk4aclassical  Classical  Table 8  4  4.009777 
\({\ddag }\) epirk5k  Ktype  [28, Table 4]  \(5^{*}\)  3.051511 
\({\ddag }\) epirk5  Classical  [28, Table 4]  5  5.016092 
epirk5p1bvar  Classical  [29, Table 3]  5  – 
rok4a  Ktype  [32, Table 1]  4  – 
6.1 Lorenz96 System
 1.
The numerical experiment verifies the order of methods derived in the paper. epirkk4 (a and b) and epirkw3 (b and c) show their respective theoretical order of convergence.
 2.
The theory of Wmethods is validated by testing different approximations to the Jacobian. As expected, epirkw3b consistently shows third order convergence irrespective of the approximation used for the Jacobian.
 3.
The results demonstrate that every Kmethod can be implemented as a classical method of the same order. Here we test epirkk4aclassical, the implementation of the method epirkk4a (see Sect. 4.4) in the classical framework as discussed in Sect. 5. It has the same order of convergence as epirkk4a since the coefficients derived for epirkk4a method satisfy all the order conditions of a fourth order classical epirk method. This is true for every Kmethod as shown in Corollary 1.
 4.
In general, classical methods implemented as a Kmethod will reduce to a lower order. epirk5 and epirk5k were implemented to test this hypothesis, where epirk5k is a Ktype implementation of the fifth order classical method epirk5 derived in [28]. From Table 10, we see that the Ktype implementation reduces to a lower order. The coefficients of fifth order classical method epirk5 puts a nonzero in front of the elementary differential corresponding to \(\tau ^{K}_{8}\) in the Ktype implementation. Solving the order conditions for a Ktype method is more restrictive than for a classical method due to the additional order conditions that arise from approximating the Jacobian in the Krylovsubspace. As a consequence, not all classical methods lead to Ktype integrators of the same order. This is in line with Corollary 2.
To evaluate the relative computational efficiency of the integrators—epirkk4 (a and b), epirkw3 (b and c), and epirkk4aclassical—we perform variable timestepping experiments with the Allen–Cahn system [2], and the BSVD system [11]. We include a classical exponential scheme, epirk5p1bvar [29], a Rosenbrock–Krylov method, rok4a, [32], and MATLAB’s builtin onestep integrator for stiff systems, ode23s, as benchmarks for comparison. Experiments are run for different relative tolerances \([1\hbox {e}{}1, 3.9\hbox {e}{}3, \ldots , 1\hbox {e}{}8]\); the error controller [9, Section II.4], which is the same across all methods, with the exception of ode23s, adjusts the step size to ensure that the solution meets tolerance requirements. ode23s has its own error controller built inside MATLAB^{®} . Reference solutions are computed using ode15s with absolute and relative tolerances set equal to \(1\hbox {e}{}12\).
6.2 The Allen–Cahn Problem
The Jacobian of Allen–Cahn equation (31) is symmetric. Therefore, the methods use Lanczos iteration to compute the Krylovsubspace. rok4a is excluded from this study as the implementation we use has Arnoldi baked in. Figure 2 shows both the workprecision and convergence diagram for the integrators under study (excluding rok4a) on Allen–Cahn equations.
6.2.1 Observations
Explicit methods ode45, and MATLODE ’s dopri5 do not converge to a solution for the given settings.
The timesteps of epirkk4 methods are bounded by stability considerations indicated by the nearly vertical lines in the convergence diagram 2. Nonetheless, epirkk4 [\(M = 100\)] (both a and b) perform better than classical integrators—epirkk4aclassical and epirk5p1bvar—because they are cheaper per timestep by virtue of building comparably smaller subspaces, and not incurring the cost of computing residuals. Also, the computational cost of constructing large subspaces by classical methods (see Table 11) is not offset by the large step sizes that they take. Furthermore, in additional experiments, not reported here, artificially limiting the subspace size of the classical methods leads to a poor performing method, where the global error is \(\mathcal {O}(1)\) for several tolerance settings.
Root mean square number of Krylov vectors per projection for each integrator applied to Allen–Cahn equation on a \(300 \times 300\) grid (31)
Integrator  Tolerance  

\(1\hbox {e}{}1\)  \(3.98\hbox {e}{}3\)  \(1.58\hbox {e}{}4\)  \(6.31\hbox {e}{}6\)  \(2.51\hbox {e}{}7\)  \(1\hbox {e}{}8\)  
EPIRKK4aclassical  2  669  564  493  402  309 
EPIRKK4a [\(M \ge 4\)]  23  23  23  24  25  25 
EPIRKK4a [\(M \ge 20\)]  28  33  33  40  42  52 
EPIRKK4a [\(M = 100\)]  100  100  100  100  100  100 
EPIRKK4b [\(M = 100\)]  –  100  100  100  100  – 
EPIRKW3b [\(A_n = J_n\)]  93  83  93  78  60  39 
EPIRKW3c [\(A_n = J_n\)]  2  58  69  67  49  29 
EPIRK5P1BVar  3099  2811  2543  1754  1523  1294 
epirkw3 (both b and c) performs just as well as epirkk4 methods with fixed basis size for lowmedium accuracy solutions. For tighter solution tolerances, epirkw3 shrinks both the stepsize and subspace size, and takes longer than epirkk4 [\(M = 100\)] methods to compute the solution.
The new methods (both W and K) are also significantly faster than MATLAB’s builtin onestep method to tackle stiff problems (ode23s), when computing mediumhigh accuracy solutions for this setup.
Remark 2
Earlier, we observed that epirkk4 with [\(M = 100\)] is stability bounded with the integrator taking about the same number of steps for different tolerance settings. However, we would like to point out that the order of epirkk4 method is partially recovered by increasing the subspace dimension—see Fig. 3, where we increased the Krylovsubspace size to 180 vectors and we see epirkk4a beginning to take different sized steps for tight tolerances.
Remark 3
The inexpensive Krylovsubspace iterations, while using Lanczos for symmetric problems, results in competitive CPU times for classical methods when compared against W and Kmethods (see Fig. 2). If the Jacobian of the problem is not symmetric or if Arnoldi iterations are used to compute the Krylovsubspace, and the problem is large, then the construction of large Krylovsubspaces, as the classical methods do, will dominate the total cost of timestepping. In additional numerical experiments not reported here, we observed this to be the case when we used Arnoldi iterations to compute the Krylovsubspace for the Allen–Cahn problem (31). Both the classical methods—epirkk4classical and epirk5p1bvar—were halforder of magnitude slower than epirkk4 and epirkw3 methods, while taking fewer steps.
6.3 BSVD: Bistable Equation with SpaceDependent Diffusion
The Jacobian of BSVD equation (32) is nonsymmetric and the methods that we test use Arnoldi to compute the Krylovsubspace. Figure 4 shows both the workprecision and convergence diagram for this study.
6.3.1 Observations
Root mean square number of Krylov vectors per projection for each integrator applied to BSVD equation on a \(150 \times 300\) grid (32)
Integrator  Tolerance  

\(1\hbox {e}{}1\)  \(3.98\hbox {e}{}3\)  \(1.58\hbox {e}{}4\)  \(6.31\hbox {e}{}6\)  \(2.51\hbox {e}{}7\)  \(1\hbox {e}{}8\)  
EPIRKK4classical  248  161  77  62  51  39 
EPIRKK4a [M >= 20]  –  27  27  27  29  30 
EPIRKK4a [M = 36]  –  36  36  36  36  36 
EPIRKK4b [M = 36]  36  36  36  36  36  – 
EPIRKW3b [\(A_n = J_n\)]  88  40  60  28  16  10 
EPIRKW3c [\(A_n = J_n\)]  43  38  29  22  13  8 
ROK4A [M = 20]  –  –  20  20  20  20 
ROK4A [M = 36]  –  36  36  36  36  36 
EPIRK5P1BVar  –  1177  946  656  472  351 
ode45 needed \(\mathcal {O}(10^5)\) steps to compute the solution and filled up the system memory on a 64GB machine. We had to exclude it from our study as the operating system was thrashing. dopri5, available through MATLODE, didn’t converge to a solution.
Timesteps of Kmethods—both epirkk4 and rok4a—are bounded by stability considerations, which is evident from the nearly vertical lines on the convergence diagram 4. These methods also reject a number of timesteps, and this may have to do with the single projection that the Kmethods do internally, which likely affects the stepsize; whereas, all other methods (excluding ode23s) perform three Arnoldi projections per timestep. epirkk4 is more efficient than rok4a [32], a Rosenbrock–Krylov method built using similar principles as epirkk4. Note that rok4a [\(M = 20\)] performs better than rok4a [\(M = 36\)]; whereas, epirkk4 [\(M = 36\)] was the best performing among different subspace sizes that we tested on, including epirkk4 [\(M = 20\)].
epirkw3 is the best performing amongst all methods under study. It admits Jacobian approximations making it computationally cheap per timestep; in comparison with classical methods—epirkk4aclassical and epirk5p1bvar—epirkw3 needs fewer vectors in the Krylovsubspace (see Table 12), besides being capped at a maximum of 100 vectors in our experiments. It takes larger timesteps than epirkk4 methods, and is not bounded by stability considerations unlike Kmethods.
The cost of building large subspaces by the classical exponential method, epirk5p1bvar, is not offset by the large steps that it takes. As a result, epirk5p1bvar performs poorly in comparison to all other exponential integrators. Furthermore, we can observe that building large subspaces using Arnoldi iterations considerably affects the timing of epirk5p1bvar, where the method takes at least twice as much time as epirkw3 and epirkk4 methods to compute the solution. Compare this to the Allen–Cahn problem, where the integrators used Lanczos iteration to compute the Krylovsubspace and the performance of epirk5p1bvar was about the same as all other methods (see Fig. 2).
Clearly, all the methods perform significantly better than the stiff onestep integrator built inside MATLAB—ode23s.
7 Conclusions
Exponential Propagation Iterative Methods of Runge–Kutta type (EPIRK) rely on the computation of exponentiallike matrix functions of the Jacobian times vector products. This paper develops two new classes of EPIRK methods that allow the use of inexact Jacobians as arguments of the matrix functions. We derive a general order conditions theory for EPIRKW methods, which admit arbitrary approximations of the Jacobian. We also derive a similar theory for EPIRKK methods, which uses a specific Krylovsubspace based approximation of the Jacobian. A computational procedure to derive order conditions for these methods with an arbitrary number of stages is provided, and the order conditions of a three stage formulation is solved to obtain coefficients for three third order EPIRKWmethods, named epirkw3 (a, b and c), and two fourth order EPIRKKmethod, named epirkk4 (a and b). Furthermore, several alternative implementations of Wmethods and Kmethods are discussed, and their properties are studied.
Numerical experiments are conducted with three different test problems to study the performance of the new methods. The results confirm empirically that epirkw3 method retains third order of convergence with different Jacobian approximations. The epirkw3 method is computationally more efficient than epirkk4, for stiff problems, and performs better than classical methods in a number of different scenarios considered in the paper. In particular epirkk4 outperforms epirkk4classical, a method with the same set of coefficients, but implemented in the classical framework for exponential integrators; epirkk4 also outperforms epirk5p1bvar, a classical exponential integrator, and rok4a a Rosenbrock–Krylov method built using the same principles as epirkk4. More numerical experiments are needed to assess how these results generalize to different applications.
It was also observed that increasing the basis size can make epirkk4 more stable, but there is a cost to pay for it and that it is important to balance gains in stability against the increased computational cost. Adaptive approach to basis size selection for the Kmethods is relevant in this regard and will be considered again in a future work.
Notes
Acknowledgements
This work has been supported in part by NSF through Awards NSF DMS1419003, NSF DMS1419105, NSF CCF1613905, by AFOSR through Award AFOSR FA95501210293DEF, and by the Computational Science Laboratory at Virginia Tech.
References
 1.AlMohy, A.H., Higham, N.J.: Computing the action of the matrix exponential, with an application to exponential integrators. SIAM J. Sci. Comput. 33(2), 488–511 (2011)MathSciNetCrossRefzbMATHGoogle Scholar
 2.Allen, S.M., Cahn, J.W.: A microscopic theory for antiphase boundary motion and its application to antiphase domain coarsening. Acta Metall. 27(6), 1085–1095 (1979). https://doi.org/10.1016/00016160(79)901962 CrossRefGoogle Scholar
 3.Berland, H., Owren, B., Skaflestad, B.: Bseries and order conditions for exponential integrators. SIAM J. Numer. Anal. 43(4), 1715–1727 (2005)MathSciNetCrossRefzbMATHGoogle Scholar
 4.Berland, H., Skaflestad, B., Wright, W.M.: Expint—a matlab package for exponential integrators. ACM Trans. Math. Softw. (TOMS) 33(1), 4 (2007)CrossRefGoogle Scholar
 5.Butcher, J.: Numerical Methods for Ordinary Differential Equations, 2nd edn. Wiley, New York (2008). https://doi.org/10.1002/9780470753767 CrossRefzbMATHGoogle Scholar
 6.Butcher, J.: Trees, Bseries and exponential integrators. IMA J. Numer. Anal. 30, 131–140 (2010)MathSciNetCrossRefzbMATHGoogle Scholar
 7.Caliari, M., Ostermann, A.: Implementation of exponential rosenbrocktype integrators. Appl. Numer. Math. 59(3–4), 568–581 (2009)MathSciNetCrossRefzbMATHGoogle Scholar
 8.D’Augustine, A.F.: MATLODE: A MATLAB ODE solver and sensitivity analysis toolbox. Masters Thesis, Virginia Tech (2018)Google Scholar
 9.Hairer, E., Norsett, S., Wanner, G.: Solving Ordinary Differential Equations I: Nonstiff Problems. Springer Series in Computational Mathematics, vol. 8. Springer, Berlin (1993)zbMATHGoogle Scholar
 10.Hairer, E., Wanner, G.: Solving Ordinary Differential Equations II: Stiff and DifferentialAlgebraic Problems. Springer Series in Computational Mathematics, vol. 14, 2nd edn. Springer, Berlin (1996)CrossRefzbMATHGoogle Scholar
 11.Heineken, W., Warnecke, G.: Partitioning methods for reaction–diffusion problems. Appl. Numer. Math. 56(7), 981–1000 (2006)MathSciNetCrossRefzbMATHGoogle Scholar
 12.Hochbruck, M., Lubich, C.: On Krylov subspace approximations to the matrix exponential operator. SIAM J. Numer. Anal. 34(5), 1911–1925 (1997)MathSciNetCrossRefzbMATHGoogle Scholar
 13.Hochbruck, M., Lubich, C., Selhofer, H.: Exponential integrators for large systems of differential equations. SIAM J. Sci. Comput. 19(5), 1552–1574 (1998)MathSciNetCrossRefzbMATHGoogle Scholar
 14.Hochbruck, M., Ostermann, A.: Explicit exponential Runge–Kutta methods for semilinear parabolic problems. SIAM J. Numer. Anal. 43(3), 1069–1090 (2005)MathSciNetCrossRefzbMATHGoogle Scholar
 15.Hochbruck, M., Ostermann, A.: Exponential integrators. Acta Numer. 19, 209–286 (2012)MathSciNetCrossRefzbMATHGoogle Scholar
 16.Loffeld, J., Tokman, M.: Comparative performance of exponential, implicit, and explicit integrators for stiff systems of odes. J. Comput. Appl. Math. 241, 45–67 (2013)MathSciNetCrossRefzbMATHGoogle Scholar
 17.Lorenz, E.N.: Predictability—a problem partly solved. In: Palmer, T., Hagedorn, R. (eds.) Predictability of Weather and Climate, pp. 40–58. Cambridge University Press (CUP), Cambridge (1996). https://doi.org/10.1017/cbo9780511617652.004 Google Scholar
 18.Lu, Y.Y.: Computing a matrix function for exponential integrators. J. Comput. Appl. Math. 161(1), 203–216 (2003)MathSciNetCrossRefzbMATHGoogle Scholar
 19.Minchev, B.V., Wright, W.: A review of exponential integrators for first order semilinear problems. Technical report (2005)Google Scholar
 20.Niesen, J., Wright, W.M.: Algorithm 919: a krylov subspace algorithm for evaluating the \(\varphi \)functions appearing in exponential integrators. ACM Trans. Math. Softw. 38(3), 22:1–22:19 (2012). https://doi.org/10.1145/2168773.2168781 MathSciNetCrossRefzbMATHGoogle Scholar
 21.Rainwater, G., Tokman, M.: A new approach to constructing efficient stiffly accurate Epirk methods. J. Comput. Phys. 323, 283–309 (2016). https://doi.org/10.1016/j.jcp.2016.07.026 MathSciNetCrossRefGoogle Scholar
 22.Roberts, S., Popov, A., Sandu, A.: ODE Test Problems. https://sibiu.cs.vt.edu/odetestproblems/index.html. Accessed 16 Dec 2017
 23.Saad, Y.: Iterative Methods for Sparse Linear Systems. SIAM, Philadelphia (2003)CrossRefzbMATHGoogle Scholar
 24.Schulze, J.C., Schmid, P.J., Sesterhenn, J.L.: Exponential time integration using Krylov subspaces. Int. J. Numer. Meth. Fluids 60(6), 561–609 (2008)MathSciNetzbMATHGoogle Scholar
 25.Sidje, R.B.: Expokit: a software package for computing matrix exponentials. ACM Trans. Math. Softw. 24(1), 130–156 (1998). https://doi.org/10.1145/285861.285868 CrossRefzbMATHGoogle Scholar
 26.Steihaug, T., Wolfbrandt, A.: An attempt to avoid exact Jacobian and nonlinear equations in the numerical solution of stiff differential equations. Math. Comput. 33(146), 521–521 (1979). https://doi.org/10.1090/s00255718197905212738 MathSciNetCrossRefzbMATHGoogle Scholar
 27.Tokman, M.: Efficient integration of large stiff systems of ODEs with exponential propagation iterative (EPI) methods. J. Comput. Phys. 213(2), 748–776 (2006)MathSciNetCrossRefzbMATHGoogle Scholar
 28.Tokman, M.: A new class of exponential propagation iterative methods of Runge–Kutta type (EPIRK). J. Comput. Phys. 230, 8762–8778 (2011)MathSciNetCrossRefzbMATHGoogle Scholar
 29.Tokman, M., Loffeld, J., Tranquilli, P.: New adaptive exponential propagation iterative methods of Runge–Kutta type. SIAM J. Sci. Comput. 34(5), A2650–A2669 (2012)MathSciNetCrossRefzbMATHGoogle Scholar
 30.Tranquilli, P., Glandon, S.R., Sarshar, A., Sandu, A.: Analytical Jacobianvector products for the matrixfree time integration of partial differential equations. J. Comput. Appl. Math. (2016). https://doi.org/10.1016/j.cam.2016.05.002 zbMATHGoogle Scholar
 31.Tranquilli, P., Sandu, A.: Exponential–Krylov methods for ordinary differential equations. J. Comput. Phys. 278, 31–46 (2014). https://doi.org/10.1016/j.jcp.2014.08.013 MathSciNetCrossRefzbMATHGoogle Scholar
 32.Tranquilli, P., Sandu, A.: Rosenbrock–Krylov methods for large systems of differential equations. SIAM J. Sci. Comput. 36(3), A1313–A1338 (2014). https://doi.org/10.1137/130923336 MathSciNetCrossRefzbMATHGoogle Scholar
 33.Trefethen, L.N.: Evaluating matrix functions for exponential integrators via Carathéodory–Fejér approximation and contour integrals. Electron. Trans. Numer. Anal. 29, 1–18 (2007)MathSciNetzbMATHGoogle Scholar
 34.Verwer, J.G., Spee, E.J., Blom, J.G., Hundsdorfer, W.: A secondorder rosenbrock method applied to photochemical dispersion problems. SIAM J. Sci. Comput. 20(4), 1456–1480 (1999)MathSciNetCrossRefzbMATHGoogle Scholar
 35.van der Vorst, H.A.: Iterative Krylov Methods for Large Linear Systems. Cambridge University Press, Cambridge (2003). https://doi.org/10.1017/cbo9780511615115 CrossRefzbMATHGoogle Scholar