Exponential Integrators - Numerical Analysis Innsbruck
Exponential Integrators - Numerical Analysis Innsbruck
Exponential Integrators - Numerical Analysis Innsbruck
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Exponential</strong> <strong>Integrators</strong><br />
Marlis Hochbruck<br />
Heinrich-Heine University Düsseldorf<br />
Germany<br />
<strong>Innsbruck</strong>, October 2004<br />
– p.1
Motivation<br />
Outline<br />
<strong>Exponential</strong> integrators<br />
general purpose integrators<br />
2nd order equations<br />
Schrödinger equations<br />
Krylov approximations of the matrix exponential<br />
– p.2
Definition<br />
An exponential integrator is a numerical method which<br />
involves an exponential function (or a related function) of<br />
the Jacobian.<br />
Possible applications: stiff or oscillatory problems<br />
– p.3
Motivation<br />
<strong>Exponential</strong> methods are an old idea<br />
Certaine, 1960<br />
Pope, 1963<br />
Lawson, 1967<br />
Nørsett, 1969<br />
Ehle, Lawson, 1975<br />
Lambert, Sigurdsson, 1972<br />
Verwer, 1975<br />
Friedli, 1978<br />
Strehmel, Weiner, 1987<br />
– p.4
Motivation<br />
This old idea has not been regarded as practical<br />
ϕ(hA) was only computable for small A<br />
(via diagonalization)<br />
in most approaches: ϕ(z) approximated by rational<br />
function<br />
(Padé approximation or uniform approximation)<br />
– p.5
Motivation<br />
This old idea became practical even for large problems<br />
Krylov subspace approximations to ϕ(hA)v<br />
Druskin, Knizhnerman, 1989–1995,<br />
Gallopoulos and Saad, 1992,<br />
H., Lubich, 1997<br />
Moler and van Loan extended their 1979 paper<br />
“19 dubious ways to compute the matrix exponential”<br />
by method 20, Krylov subspace methods (2004)<br />
– p.6
Motivation<br />
Why might exponential integrators be a good idea?<br />
semilinear problems<br />
y ′ = −Ay + g(t, y),<br />
variation of constants formula<br />
y(t + h) = e −hA y(t) +<br />
h<br />
0<br />
e −(h−τ)A g(tn + τ, y(tn + τ))dτ<br />
approximating highly oscillatory functions by<br />
polynomials or rational functions typically leads to step<br />
size restrictions<br />
hωmax ≤ c<br />
– p.7
Stiff and nonstiff problems<br />
Ode’s are characterized in nonstiff and stiff problems:<br />
ode nonstiff stiff<br />
method explicit implicit<br />
stability h ∼ L −1 all h<br />
implementation f(y) f ′ (y),<br />
requires nonlinear solver<br />
but it could be worse ...<br />
– p.8
1<br />
0.8<br />
0.6<br />
0.4<br />
0.2<br />
0<br />
−0.2<br />
−0.4<br />
−0.6<br />
−0.8<br />
−1<br />
Oscillatory test problem<br />
y ′ = −i(ω + g(t))y, ω = 100, g(t) = sin t/100<br />
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1<br />
expl. impl. exp.<br />
steps 121 149 4<br />
f(y) 745 723 29<br />
LU decomp – 10 –<br />
time (sec) 0.08 0.17 0.02<br />
flops 82.904 120.417 9.370<br />
– p.9
General purpose exponential integrators<br />
<strong>Exponential</strong> Euler method<br />
with<br />
Properties<br />
y ′ = f(y), y(0) = y0<br />
yn+1 = yn + hϕ(hA)f(yn), A = f ′ (yn)<br />
exact for f(y) = Ay + b<br />
order two<br />
ϕ(z) = ez − 1<br />
z<br />
– p.10
Higher order exponential integrators<br />
(Motivated by Runge-Kutta- and Rosenbrock methods)<br />
A ≈ f ′ (y0), ϕ(z) = ez −1<br />
z<br />
for i = 1, . . . , s : ki = ϕ(γhA) ⎝f(ui) + hA<br />
ui = y0 + h<br />
y1 = y0 + h<br />
⎛<br />
i−1<br />
<br />
j=1<br />
s<br />
i=1<br />
αijkj<br />
biki .<br />
explicit Runge-Kutta method: ϕ(z) ≡ 1 (A = 0)<br />
Rosenbrock methods: ϕ(z) = 1/(1 − z)<br />
(H., Lubich, Selhofer, 1998)<br />
i−1<br />
j=1<br />
γijkj<br />
⎞<br />
⎠<br />
– p.11
General purpose integrators<br />
(Munthe-Kaas, 1999, in terms of Lie group methods)<br />
Transformation<br />
yields c(0) = 0 and<br />
y(t) = e tA y0 + ϕ(tA)c(t)<br />
c ′ = ψ(tA)(f(y) − Ay) − (ψ(tA) − 1) c(t)<br />
t<br />
<strong>Exponential</strong> integrator (RKMK methods):<br />
solve ode for c with standard RK method<br />
+ back transformation<br />
– p.12
2nd order differential equations<br />
y ′′ + Ω 2 (t, y)y = g(y), y(0) = y0 , y ′ (0) = y ′ 0<br />
for constant g and Ω, exact solution satisfies<br />
y(t+h)−2y(t)+y(t−h) = h 2 σ(hΩ) g−Ω 2 y(t) , σ(x) = sinc 2 x<br />
2<br />
(variation-of-constants formula)<br />
Gautschi-type exponential integrator<br />
yn+1 − 2yn + yn−1 = h 2 σ(hΩn) gn − Ω 2 <br />
n yn , Ωn = Ω(tn, yn)<br />
choice of gn?<br />
– p.13
2nd order differential equations<br />
yn+1 − 2yn + yn−1 = h 2 σ(hΩn) gn − Ω 2 <br />
n yn<br />
obvious choice: gn = g(yn) −→ Gautschi ’61<br />
resonance problems for hωk ≈ jπ, ωk eigenvalue of Ωn<br />
– p.14
2nd order differential equations<br />
yn+1 − 2yn + yn−1 = h 2 σ(hΩn) gn − Ω 2 <br />
n yn<br />
obvious choice: gn = g(yn) −→ Gautschi ’61<br />
resonance problems for hωk ≈ jπ, ωk eigenvalue of Ωn<br />
better choice: gn = g(φ(hΩn)yn), φ filter function<br />
φ(0) = 1 , φ(kπ) = 0 , k = 1, 2, 3, . . .<br />
– p.14
2nd order differential equations<br />
yn+1 − 2yn + yn−1 = h 2 σ(hΩn) gn − Ω 2 <br />
n yn<br />
obvious choice: gn = g(yn) −→ Gautschi ’61<br />
resonance problems for hωk ≈ jπ, ωk eigenvalue of Ωn<br />
better choice: gn = g(φ(hΩn)yn), φ filter function<br />
φ(0) = 1 , φ(kπ) = 0 , k = 1, 2, 3, . . .<br />
convergence result: (H., Lubich, 1999, Grimm 2002)<br />
Assumptions: g smooth, bounded energy:<br />
yn − y(tn) ≤ h 2 C(tn)ℓ(n, N), C(tn) ∼ e tnL<br />
– p.14
Schrödinger equations<br />
Quantum dynamics simulations:<br />
ψ ′ (t) = −iH(t)ψ(t), H(t) = U + V (t), U ∼ −∆∆x<br />
(hence H(t) large, ∼ 1/∆x d )<br />
exponential midpoint rule<br />
(exact for constant H)<br />
ψn+1 = exp <br />
−ihH(tn+1/2 ψn<br />
– p.15
Magnus integrators<br />
y ′ = A(t)y(t), y(0) = y0<br />
Magnus, 1954: determine Ω(t) such that<br />
y(t) = exp(Ω(t))y0<br />
Magnus expansion (valid for Ω(t) < π)<br />
Ω(t) =<br />
t<br />
0<br />
A(τ)dτ − 1<br />
2<br />
+ 1<br />
4<br />
+ 1<br />
12<br />
t<br />
0<br />
t<br />
0<br />
t<br />
0<br />
τ<br />
[<br />
[<br />
0<br />
τ<br />
[<br />
0<br />
τ<br />
0<br />
A(σ)dσ, A(τ)] dτ<br />
σ<br />
[<br />
0<br />
A(µ)dµ, A(σ)] dσ, A(τ)] dτ<br />
A(σ)dσ, [<br />
τ<br />
0<br />
A(µ)dµ, A(τ)]] dτ + . . .<br />
– p.16
<strong>Numerical</strong> methods<br />
Magnus integrators<br />
yn+1 = exp(Ωn)yn, Ωn ≈ Ω(h)<br />
(review: Iserles, Munthe-Kaas, Nørsett, Zanna, ’00)<br />
Approximation involves<br />
truncating the Magnus expansion (after k terms)<br />
k = 1 : Ω(t) ≈<br />
k = 2 : Ω(t) ≈<br />
t<br />
0<br />
t<br />
0<br />
A(tn + τ)dτ<br />
A(tn + τ)dτ − 1<br />
2<br />
t<br />
0<br />
τ<br />
[<br />
0<br />
A(tn + σ)dσ, A(tn + τ)] dτ<br />
approximating integrals by replacing A(t) by<br />
interpolation polynomial A(t) for quadrature nodes<br />
tn + cjh<br />
– p.17
Examples of Magnus integrators<br />
k = 1, exponential midpoint rule<br />
Ωn = hA(tn + h/2).<br />
k = 2, two-point Gauß quadrature rule:<br />
Ωn = h<br />
2 (A1<br />
√<br />
3h2 + A2) +<br />
12 [A2, A1], Aj = A(tn + cjh),<br />
cj nodes of Gauß quadrature rule<br />
k = 2, method by Blanes, Casas, Ros ’00<br />
Ωn = h<br />
A(tn)+4A(t<br />
6<br />
n+1/2)+A(tn+1) − h2<br />
12 [A(tn), A(tn+1)].<br />
– p.18
Convergence for Schrödinger equations<br />
Theorem (H., Lubich, 2003)<br />
<strong>Exponential</strong> midpoint rule<br />
yn − y(tn) ≤ Ch 2 tn max<br />
0≤t≤tn<br />
4th-order Gauß method: for hD ≤ c<br />
yn − y(tn) ≤ Ch 4 tn max<br />
0≤t≤tn<br />
Dy(t)<br />
D 3 y(t)<br />
– p.19
Convergence for Schrödinger equations<br />
Theorem (H., Lubich, 2003)<br />
<strong>Exponential</strong> midpoint rule<br />
yn − y(tn) ≤ Ch 2 tn max<br />
0≤t≤tn<br />
4th-order Gauß method: for hD ≤ c<br />
yn − y(tn) ≤ Ch 4 tn max<br />
0≤t≤tn<br />
Dy(t)<br />
D 3 y(t)<br />
error bound for classical implicit midpoint rule:<br />
yn − y(tn) ≤ Ch 2 tn max<br />
0≤t≤tn<br />
d3<br />
y(t)<br />
dt3 – p.19
Let 0 < ɛ ≪ 1<br />
Generalizations<br />
2nd order equations: Lorentz, 2004<br />
y ′′ + 1<br />
ɛ2 Ω2 (t)x(t) = 1<br />
f(t)<br />
ɛ2 Schrödinger equations: Jahnke, Lubich, 2000-2004<br />
iψ ′ = 1<br />
ɛ H(t)ψ(t)<br />
– p.20
Schrödinger equation<br />
iψ ′ = 1<br />
ɛ H(t)ψ(t)<br />
Main idea for construction and error analysis:<br />
transformation to adiabatic variables<br />
Q(t) T <br />
ψ(t) = exp − i<br />
ɛ Φ(t)<br />
<br />
η(t)<br />
where<br />
H(t) = Q(t)Λ(t)Q(t) T , Λ diagonal<br />
Φ(t) =<br />
t<br />
t0<br />
Λ(s)ds<br />
−→ ode for η(t) (advantage: η ′ (t) bounded uniformly in ɛ)<br />
– p.21
for all these problems:<br />
symmetric methods<br />
Convergence<br />
require only one evaluation of Ω or H, resp. per time<br />
step<br />
error bounds valid for ɛ ≤ h < √ ɛ<br />
error bounded by Ch 2 , where C is independent of ɛ<br />
implementation requires (partial) diagonalization of Ω, H,<br />
resp.<br />
– p.22
Other approaches / other applications<br />
(Commutator-free) Lie group methods<br />
Crouch, Grossman, 1993<br />
Munthe-Kaas, 1995–2004<br />
Celledoni, Marthinsen, Owren, 2003<br />
. . .<br />
Methods for nonlinear Schrödinger equations<br />
Strang splitting (analysis: Jahnke, Lubich 2000)<br />
Berland, Owren, Skaflestad, 2004<br />
– p.23
Stiff and oscillatory problems<br />
ode nonstiff stiff oscillatory<br />
method explicit implicit exponential<br />
stability h ∼ L −1 all h all h<br />
implementation f(y) f ′ (y), f ′ (y)<br />
requires nonlinear solver ϕ(A)b<br />
– p.24
Implementation of exponential integrators<br />
exponential integrators require approximation of<br />
assume:<br />
ϕ(A)b<br />
A complex N × N matrix with large N<br />
matrix-vector multiplication Av cheap<br />
b = 1<br />
– p.25
Krylov subspace methods<br />
Idea: approximate ϕ(A)b in subspace of low dimension<br />
suitable subspace:<br />
Kn(A, b) := span {b, Ab, . . . , A n−1 b}<br />
nth Krylov subspace w.r.t. A and b, (n ≪ N)<br />
two essential steps to compute nth iterate:<br />
xn = Vnyn ≈ ϕ(A)b, xn ∈ Kn(A, b)<br />
construction of a basis Vn of Kn(A, b)<br />
(Arnoldi, Lanczos, Tschebyscheff)<br />
characterization of yn<br />
– p.26
Approximation of matrix functions<br />
Krylov approximation to ϕ(A)b:<br />
ϕ(A)b = 1<br />
<br />
ϕ(λ) (λI − A)<br />
2πi Γ<br />
−1 ≈<br />
b dλ<br />
1<br />
<br />
2πi<br />
Γ<br />
= Vnϕ(Hn)e1<br />
ϕ(λ) Vn(λI − Hn) −1 e1 dλ<br />
other derivations:<br />
Park, Light 1985, Druskin, Knizhnerman 1991,<br />
Gallopoulos, Saad 1992<br />
– p.27
Convergence<br />
derive error bounds for Ax = b and thus for (λI − A)x = b<br />
(complex approximation theory using conformal<br />
mappings and Faber polynomials)<br />
multiply by ϕ(λ)<br />
integrate over suitable contour Γ<br />
always obtain superlinear convergence for n ≥ n0<br />
– p.28
Example<br />
A : 1001 × 1001 (symmetric), eigenvalues in [−40, 0]<br />
(uniformly distributed)<br />
10 0<br />
10 −5<br />
10<br />
0 20 40 60 80<br />
−10<br />
error and error bounds<br />
for approximations to<br />
(I − A) −1 b and exp(A)b<br />
– p.29
Example<br />
A : 1001 × 1001 (skew symmetric), eigenvalues i[−20, 20]<br />
(uniformly distributed)<br />
10 0<br />
10 −5<br />
10<br />
0 20 40 60 80<br />
−10<br />
error and error bounds<br />
for approximations to<br />
(I − A) −1 b and exp(A)b<br />
– p.30
Start of superlinear convergence behavior<br />
n0 ∼ hA<br />
n0 ∼ hA<br />
θπ n0 ∼ hA α , 1 2<br />
≤ α = 1<br />
2−θ<br />
≤ 1<br />
– p.31
exponential integrators<br />
go back to old ideas<br />
can be practical<br />
Summary<br />
can be used with step sizes larger than 1/ωmax for<br />
highly oscillatory problems<br />
can be implemented using Krylov subspace methods<br />
http://www.am.uni-duesseldorf.de/∼marlis<br />
– p.32