22.07.2013 Views

Exponential Integrators - Numerical Analysis Innsbruck

Exponential Integrators - Numerical Analysis Innsbruck

Exponential Integrators - Numerical Analysis Innsbruck

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!