Exponential integrators are a class of numerical methods for the solution of ordinary differential equations, specifically initial value problems. This large class of methods from numerical analysis is based on the exact integration of the linear part of the initial value problem. Because the linear part is integrated exactly, this can help to mitigate the stiffness of a differential equation. Exponential integrators can be constructed to be explicit or implicit for numerical ordinary differential equations or serve as the time integrator for numerical partial differential equations.
Dating back to at least the 1960s, these methods were recognized by Certaine and Pope. As of late exponential integrators havebecome an active area of research, see Hochbruck and Ostermann (2010). Originally developed for solving stiff differential equations, the methods have been used to solve partial differential equations including hyperbolic as well as parabolicproblems[1] such as the heat equation.
We consider initial value problems of the form,
u'(t)=Lu(t)+N(u(t)), u(t0)=u0, (1)
L
N
u'(t)=f(u(t)), u(t0)=u0,
u*
L=
\partialf | |
\partialu |
(u*); N=f(u)-Lu.
\partialf | |
\partialu |
f
u
Exact integration of this problem from time 0 to a later time
t
u(t)=eLu0+
t | |
\int | |
0 |
eN\left(u\left(\tau\right)\right)d\tau. (2)
N\equiv0
Numerical methods require a discretization of equation (2). They can be based on Runge-Kutta discretizations,linear multistep methods or a variety of other options.
Exponential Rosenbrock methods were shown to be very efficient in solving large systems of stiff ordinary differential equations, usually resulted from spatial discretization of time dependent (parabolic) PDEs. These integrators are constructed based on a continuous linearization of (1) along the numerical solution
un
u'(t)=Lnu(t)+Nn(u(t)), u(t0)=u0, (3)
Ln=
\partialf | |
\partialu |
(un),Nn(u)=f(u)-Lnu.
\partialNn | |
\partialu |
(un)=0.
N(u(t))
tn+1
u(tn+1)=
hnLn | |
e |
u(tn)+
hn | |
\int | |
0 |
(hn-\tau)Ln | |
e |
Nn(u(tn+\tau))d\tau. (4)
ci
bi(hnLn)
1\leqi\leqs
s-stage
Uni=
cihnLn | |
e |
un+hn
i-1 | |
\sum | |
j=1 |
aij(hnLn)Nn(Unj),
un+1=
hnLn | |
e |
un+hn
s | |
\sum | |
i=1 |
bi(hnLn)Nn(Uni)
un ≈ u(tn),Uni ≈ u(tn+cihn),hn=tn+1-tn
aij(z),bi(z)
\varphik(ciz),\varphik(z)
\varphi0(z)=ez, \varphik
1 | |
(z)=\int | |
0 |
e(1-\theta
\thetak-1 | |
(k-1)! |
d\theta, k\geq1.
\varphik+1(z)=
\varphik(z)-\varphik(0) | |
z |
, k\geq0.
Dni=Nn(Uni)-Nn(un)
Uni=un+cihn\varphi1(cihnLn)f(un)+hn
i-1 | |
\sum | |
j=2 |
aij(hnLn)Dnj,
un+1=un+hn\varphi1(hnLn)f(un)+hn
s | |
\sum | |
i=2 |
bi(hnLn)Dni.
In order to implement this scheme with adaptive step size, one can consider, for the purpose of local error estimation, the following embedded methods
\bar{u}n+1=un+hn\varphi1(hnLn)f(un)+hn
s | |
\sum | |
i=2 |
\bar{b}i(hnLn)Dni,
Uni
\bar{b}i
For convenience, the coefficients of the explicit exponential Rosenbrock methods together with their embedded methods can be represented by using the so-called reduced Butcher tableau as follows:
c2 | ||||||
c3 | a32 | |||||
\vdots | \vdots | \ddots | ||||
cs | as2 | as3 | … | as,s-1 | ||
b2 | b3 | … | bs-1 | bs | ||
\bar{b}2 | \bar{b}3 | … | \bar{b}s-1 | \bar{b}s |
Moreover, it is shown in Luan and Ostermann (2014a) that the reformulation approach offers a new and simple way to analyze the local errors and thus to derive the stiff order conditions for exponential Rosenbrock methods up to order 5. With the help of this new technique together with an extension of the B-series concept, a theory for deriving the stiff order conditions for exponential Rosenbrock integrators of arbitrary order has been finally given in Luan and Ostermann (2013). As an example, in that work the stiff order conditions for exponential Rosenbrock methods up to order 6 have been derived, which are stated in the following table:
\begin{array}{|c|c|c|} \hline No.&Stiffordercondition&Order
s | |
\\ \hline 1&\sum | |
i=2 |
bi
2 | |
(Z)c | |
i=2\varphi |
3(Z)&3\\
s | |
\hline 2&\sum | |
i=2 |
bi
3 | |
(Z)c | |
i=6\varphi |
4(Z)&4
s | |
\\ \hline 3&\sum | |
i=2 |
bi
4 | |
(Z)c | |
i=24\varphi |
5(Z)&5
s | |
\\ 4&\sum | |
i=2 |
bi(Z)ciK\psi3,i(Z)=0&5
s | |
\\ \hline 5&\sum | |
i=2 |
bi
5 | |
(Z)c | |
i |
=120\varphi6(Z)&
s | |
6\\ 6&\sum | |
i=2 |
bi(Z)
2 | |
c | |
i |
M\psi3,i(Z)=0&6
s | |
\\ 7&\sum | |
i=2 |
bi(Z)ciK\psi4,i(Z)=0&6\\ \hline \end{array}
Here
Z,K,M.
The stability and convergence results for exponential Rosenbrock methods are proved in the framework of strongly continuous semigroups in some Banach space.
All the schemes presented below fulfill the stiff order conditions and thus are also suitable for solving stiff problems.
The simplest exponential Rosenbrock method is the exponential Rosenbrock–Euler scheme, which has order 2, see, for example Hochbruck et al. (2009):
un+1=un+hn \varphi1(hnLn)f(un).
A class of third-order exponential Rosenbrock methods was derived in Hochbruck et al. (2009), named as exprb32, is given as:
exprb32:
1 | ||
2\varphi3 | ||
0 |
Un2=un+hn \varphi1(hnLn)f(un),
un+1=un+hn \varphi1(hnLn)f(un)+hn 2\varphi3(hnLn)Dn2,
Dn2=Nn(Un2)-Nn(un).
For a variable step size implementation of this scheme, one can embed it with the exponential Rosenbrock–Euler:
\hat{u}n+1=un+hn \varphi1(hnLn)f(un).
Cox and Matthews describe a fourth-order method exponential time differencing (ETD) method that they used Maple to derive.
We use their notation, and assume that the unknown function is
u
un
tn
l{N}=l{N}(t,u)
Three stage values are first constructed:
an=eun+L-1\left(eLh/2-I\right)l{N}(tn,un)
bn=eun+L-1\left(eLh/2-I\right)l{N}(tn+h/2,an)
cn=ean+L-1\left(eLh/2-I\right)\left(2l{N}(tn+h/2,bn)-l{N}(tn,un)\right)
un+1=eLun+h-2L-3\left\{\left[-4-Lh+eLh\left(4-3Lh+(Lh)2\right)\right]l{N}(tn,un)+ 2\left[2+Lh+eLh\left(-2+Lh\right)\right]\left(l{N}(tn+h/2,an)+l{N}(tn+h/2,bn)\right)+ \left[-4-3Lh-(Lh)2+eLh\left(4-Lh\right)\right]l{N}(tn+h,cn) \right\}.
If implemented naively, the above algorithm suffers from numerical instabilities due to floating point round-off errors. To see why, consider the first function,
\varphi1(z)=
ez-1 | |
z |
,
z
\varphi1
Exponential integrators are used for the simulation of stiff scenarios in scientific and visual computing, for example in molecular dynamics, for VLSI circuit simulation, and in computer graphics. They are also applied in the context of hybrid monte carlo methods. In these applications, exponential integrators show the advantage of large time stepping capability and high accuracy. To accelerate the evaluation of matrix functions in such complex scenarios, exponential integrators are often combined with Krylov subspace projection methods.