modern discretization techniques for time domain maxwell

Post on 20-Jun-2022

2 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Modern Discretization Techniques for Time DomainMaxwell Equations

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler

CCES, RWTH Aachen University & CST Computer Simulation Techniques, Darmstadt

Internship presentation, Aachen, December 4, 2009

content

1 DG formulations for Maxwell TD

2 Standard time stepping methods for Maxwell TD

3 Higher Order time stepping method for Maxwell TD

4 Local time stepping methods for Maxwell TD

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 2 / 54

DG formulations for Maxwell TD

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 3 / 54

Maxwell Equations

in an isotropic, non-conducting medium

ε∂E

∂t= curlH

ν∂H

∂t= −curlE

+ boundary conditions

model problem: scalar wave equation

∂u

∂t= div(v)

∂v

∂t= ∇u

+ boundary conditions

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 4 / 54

Maxwell Equations

in an isotropic, non-conducting medium

ε∂E

∂t= curlH

ν∂H

∂t= −curlE

+ boundary conditions

model problem: scalar wave equation

∂u

∂t= div(v)

∂v

∂t= ∇u

+ boundary conditions

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 4 / 54

Discontinuous Galerkin Discretization

We approximate the continuous problem

∂t(u, ξ)Ω = (div(v), ξ)Ω

∂t(v , η)Ω = (∇u, η)Ω + b.c .

with discontinuous uh and vh:

ξ, uh ∈ Uh := v ∈ L2 : v |T ∈ Pk+1(T )η, vh ∈ [Vh]3,Vh := v ∈ L2 : v |T ∈ Pk(T )

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 5 / 54

Discontinuous Galerkin Discretization

discrete problem (∑

T ):

∂t(uh, ξ)T = (div(vh), ξ)T = −(vh,∇ξ)T + (v∗n , ξ)∂T

∂t(vh, η)T = (∇uh, η)T = (∇uh, η)T + (u∗−uh, ηn)∂T

How to choose the numerical fluxes u∗ and v∗n ?

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 6 / 54

Discontinuous Galerkin Discretization

discrete problem (∑

T ):

∂t(uh, ξ)T = (div(vh), ξ)T = −(vh,∇ξ)T + (v∗n , ξ)∂T

∂t(vh, η)T = (∇uh, η)T = (∇uh, η)T + (u∗−uh, ηn)∂T

How to choose the numerical fluxes u∗ and v∗n ?

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 6 / 54

central flux

If we choose

u∗ = uhv∗n = vhn

we get

∂t(uh, ξ)T = −(vh,∇ξ)T + (vhn, ξ)∂T

∂t(vh, η)T = (∇uh, η)T − (

1

2[[uh]], ηn)∂T︸ ︷︷ ︸

(uh,ηn)∂T

with [[uh]] = u+h − u−h

qAAA

q

q

qJJJJ q

q

@

@@ qj+ j−j−j−

⇒ skewsymmetric r.h.s.

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 7 / 54

properties of the central flux

Writing

Gh(uh, η) = (∇uh, η)T − (1

2[[uh]], ηn)∂T

we get the semi-discrete formulation

∂t

(uhvh

)=

(−GT

h

Gh

)(uhvh

)which represents the structure of the continuous problem(−∇ is the adjoint operator to div)

∂t

(uv

)=

(div

)(uv

)spatial discretizations preserving the antisymmetry of the PDE areenergy-conserving

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 8 / 54

eigenvalue computation with the central flux

Nontrivial nonphysical kernel of Gh ⇒ spurious modes.

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 9 / 54

a dissipative flux

A choice which avoids spurious modes is

u∗ = uh − [[vh · n]]

v∗n = vhn −1

2[[uh]]

we get

∂t(uh, ξ)T = −(vh,∇ξ)T + (vhn − 1

2 [[uh]], ξ)∂T

∂t(vh, η)T = (∇uh, η)T − ( 1

2 [[uh]] + [[vh · n]], ηn)∂T

The difference to the central flux can be written as a sum over all facets:

−∑E

1

2([[uh]], [[ξ]])E + ([[vh · n]], [[η · n]])E

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 10 / 54

eigenvalue computation with the dissipative flux

Nonphysical damping of high frequencies

+ avoids spurios modes

− is not energy-conserving

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 11 / 54

problem in the frequency domain

The problem in frenquency domain reads

iωu = divv

iωv = ∇u

and the discretized version reads (with the discrete operator Gh):

iω(u, ξ) = −(Ghξ, v)

iω(v , η) = (Ghu, η)

or0 = (iω)2(u, ξ) + (Ghu,Ghξ) +

∑E

α

h([[u]], [[ξ]])∂T

(Ghu,Ghξ) ≈ (∇u,∇ξ) is an symmetric, positive definite bilinearform⇒ Add an Internior Penalty Term to avoid nontrivial kernel of Gh

(proposed by Warburton/Hesthaven) (where α ∼ p(p + 1))

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 12 / 54

problem in the frequency domain

The problem in frenquency domain reads

iωu = divv

iωv = ∇u

and the discretized version reads (with the discrete operator Gh):

iω(u, ξ) = −(Ghξ, v)

iω(v , η) = (Ghu, η)

or0 = (iω)2(u, ξ) + (Ghu,Ghξ) +

∑E

α

h([[u]], [[ξ]])∂T

(Ghu,Ghξ) ≈ (∇u,∇ξ) is an symmetric, positive definite bilinearform⇒ Add an Internior Penalty Term to avoid nontrivial kernel of Gh

(proposed by Warburton/Hesthaven) (where α ∼ p(p + 1))

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 12 / 54

non-dissipative stabilization approach

With αh [[u]] = iωvF we get a new unknown living only on the facets.

We introduce this variable analogously on the time domain level

vFh ∈ V F

h := vFh ∈ L2(F) : v |E ∈ Pk+1(E )

∂t(vF

h , ξF ) = (

α

h[[uh]], ξF ) ∀ξF ∈ V F

h

and get the new non-dissipative spatial discretization(∑

T · · · ,∑

E · · · )

∂t(uh, ξ)T = −(vh,∇ξ)T + (vhn, ξ)∂T − (vF

h , [[ξ]])E

∂t(vh, η)T = (∇uh, η)T − (

1

2[[uh]], ηn)∂T

h

α

∂t(vF

h , ξF )E = ([[uh]], ξF )E

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 13 / 54

eigenvalue computation with the non-dissipative stabilizedflux

+ the zero eigenvalues vanished+ discretization is still energy-conserving

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 14 / 54

discretization of Maxwell’s equation

Transfering the ideas of the wave equation to Maxwell’s equation, we get (∑

T · · ·,∑

E · · · )

∂t(εEh, e)T = (Hh, curl e)T + (Hh × n, e)∂T + (HF

h × n, [[e]])E

∂t(νHh, h)T = − (curlEh, h)T + (

1

2[[Eh]]× n, h)∂T

h

α

∂t(HF

h , hF )E = ([[Eh]]× n, hF )E

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 15 / 54

numerical exampleAs an example of the opportunities of a higher order discretization, we will look atthe error of the smallest resonance frequencies (eigenvalues) for a cube vacuumresonator with side length 1mm and PEC boundary conditions.

6 elements

p-refinement

1e-08

1e-06

0.0001

0.01

1

500 1000 2000 4000 8000 16000

rela

tive

erro

r

#unknowns

relative error of resonant frequencies

Mode 1Mode 2Mode 3Mode 4Mode 5Mode 6Mode 7Mode 8

exp(-n^1/3)

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 16 / 54

the complete scheme

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 17 / 54

global time-stepping

For the investigations of the time-stepping scheme we consider the semi-discreteproblem

∂t

(MεEMνH

)=

(−GT

h HGhE

)To maintain the energy-conserving property of our spatial discretization we use atime-stepping scheme that is also energy-conserving in a discrete sense. Here weuse the symplectic euler / leap frog:

Hn+1 = Hn+M−1ν Gh(E n

h ) Hn+ 12 = Hn− 1

2 +M−1ν Gh(E n

h )

E n+1 = E n−M−1ε GT

h (Hn+1h ) E n+1 = E n −M−1

ε GTh (H

n+ 12

h )

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 18 / 54

computational aspects

From point of view of implementation we have

full polynomials of degree k + 1 for Eh

full polynomials of degree k and additional facet unknowns for Hh

block-diagonal mass matrices

For further optimization we

don’t assemble global matrices Gh or −GTh

but implement the operations M−1ν Gh(E k

h ) and −M−1ε GT

h (Hkh )

The complexity of elementwise operations is dominated by

evaluating gradients

evaluating trace terms

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 19 / 54

We use the covariant transformation (u(x) = F−T u(x)) (G. Cohen et al.2005) for the transformation from the reference element leading togeometry independent element matrices

On the reference element we use an orthogonal basis which is computed in atensor product form with Jacobi polynomials

This leads to several advantages

diagonal mass matrices for uncurved elements (orthogonal polynomials +covariant transformation)

...

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 20 / 54

Standard time stepping methods forMaxwell TD

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 21 / 54

Maxwells Equations

Maxwells Equations read as

ε∂E

∂t= −σEE +curlH + jE

ν∂H

∂t= −curlE −σMH + jM

+ boundary conditions

If we use an energy-conserving discretization method in space (like our DGmethod or FIT) we end up with the semi-discrete form(

)∂

∂t

(Eh

Hh

)=

(−MσE

CT

−C −MσM

)(Eh

Hh

)+

(jEjM

)

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 22 / 54

For ease of presentation we will - at the beginning - neglect loss terms andexcitations.Further we will transform the Fields Eh and Hh as well as the Operator CT and−C such that we can limit our investigations to the following problem

∂t

(Eh

Hh

)=

(CT

−C

)(Eh

Hh

)On the time-continuous level the following energy is conserved:

‖Eh‖22 + ‖Hh‖2

2 = const

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 23 / 54

symplectic Euler method

tn

H E

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 24 / 54

symplectic Euler method

tn

H E

1. ∆Hn+ 12 = −∆tCE n

tn+16

1

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 24 / 54

symplectic Euler method

tn

H E

1. ∆Hn+ 12 = −∆tCE n

2. ∆E n+ 12 = ∆tCTHn+1

tn+16

1

6

2

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 24 / 54

symplectic Euler method

tn

H E

1. ∆Hn+ 12 = −∆tCE n

2. ∆E n+ 12 = ∆tCTHn+1

tn+16

1

6

2

+ conserves a discrete energy(dependent of ∆t):

ε = ‖E n‖22 + (Hn+1,Hn) = ‖E n‖2

2 + ‖Hn‖22 −∆t(CE n,Hn)

+ Hn and E n are stored at the same timelevel

+ needs only 2 steps

- only first order accurate

- non-reversible (A−1it (∆t) 6= Ait(−∆t))

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 24 / 54

symmetric symplectic Euler

tn

H E

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 25 / 54

symmetric symplectic Euler

tn

H E

1. ∆Hn+ 14 = − 1

2 ∆tCE n

tn+ 12

6

1

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 25 / 54

symmetric symplectic Euler

tn

H E

1. ∆Hn+ 14 = − 1

2 ∆tCE n

2. ∆E n+ 14 = 1

2 ∆tCTHn+ 14 tn+ 1

26

16

2

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 25 / 54

symmetric symplectic Euler

tn

H E

1. ∆Hn+ 14 = − 1

2 ∆tCE n

2. ∆E n+ 14 = 1

2 ∆tCTHn+ 14

3. ∆E n+ 34 = 1

2 ∆tCTHn+ 14

tn+ 12

6

16

2

6

3

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 25 / 54

symmetric symplectic Euler

tn

H E

1. ∆Hn+ 14 = − 1

2 ∆tCE n

2. ∆E n+ 14 = 1

2 ∆tCTHn+ 14

3. ∆E n+ 34 = 1

2 ∆tCTHn+ 14

4. ∆Hn+ 34 = − 1

2 ∆tCE n+ 34

tn+ 12

6

16

2

6

3

tn+16

4

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 25 / 54

symmetric symplectic Euler → Verlet scheme

tn

H E

1. ∆Hn+ 14 = − 1

2 ∆tCE n

2 + 3. ∆E n+ 34 = ∆tCTHn+ 1

4

4. ∆Hn+ 34 = − 1

2 ∆tCE n+ 34

tn+ 12

6

1

6

2 + 3

tn+16

4

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 25 / 54

Verlet scheme

tn

H E

1. ∆Hn+ 14 = − 1

2 ∆tCE n

2. ∆E n+ 34 = ∆tCTHn+ 1

4

3. ∆Hn+ 34 = − 1

2 ∆tCE n+ 34

tn+ 12

6

1

6

2

tn+16

3

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 25 / 54

Verlet scheme

tn

H E

1. ∆Hn+ 14 = − 1

2 ∆tCE n

2. ∆E n+ 34 = ∆tCTHn+ 1

4

3. ∆Hn+ 34 = − 1

2 ∆tCE n+ 34

tn+ 12

6

1

6

2

tn+16

3

+ conserves a discrete energy( dependent of ∆t):

ε = ‖E‖22 + ‖H‖2

2 −∆t2

4‖CE‖2

2

+ Hn and E n are stored at the same timelevel

+ second order accurate

+ reversible (A−1it (∆t) = Ait(−∆t))

- needs 3 steps

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 25 / 54

multiple Verlet steps

tn

H E

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 26 / 54

multiple Verlet steps

tn

H E

1. ∆Hn+ 14 = − 1

2∆tCE n

2. ∆E n+ 12 = ∆tCTHn+ 1

2

3. ∆Hn+ 34 = − 1

2∆tCE n+1

tn+ 12

61

tn+16

263

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 26 / 54

multiple Verlet steps

tn

H E

1. ∆Hn+ 14 = − 1

2∆tCE n

2. ∆E n+ 12 = ∆tCTHn+ 1

2

3. ∆Hn+ 34 = − 1

2∆tCE n+1

4. ∆Hn+ 54 = − 1

2∆tCE n+1

5. ∆E n+ 32 = ∆tCTHn+ 3

2

6. ∆Hn+ 74 = − 1

2∆tCE n+2 tn+ 1

261

tn+16

263

tn+ 32

64

tn+26

566

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 26 / 54

multiple Verlet steps

tn

H E

1. ∆Hn+ 14 = − 1

2∆tCE n

2. ∆E n+ 12 = ∆tCTHn+ 1

2

3. ∆Hn+ 34 = − 1

2∆tCE n+1

4. ∆Hn+ 54 = − 1

2∆tCE n+1

5. ∆E n+ 32 = ∆tCTHn+ 3

2

6. ∆Hn+ 74 = − 1

2∆tCE n+2 tn+ 1

261

tn+16

263

tn+ 32

64

tn+26

566

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 26 / 54

multiple Verlet steps → LeapFrog

tn

H E

1. ∆Hn+ 14 = − 1

2∆tCE n

2. ∆E n+ 12 = ∆tCTHn+ 1

2

3 + 4. ∆Hn+1 = −∆tCE n+1

5. ∆E n+ 32 = ∆tCTHn+ 3

2

6. ∆Hn+ 74 = − 1

2∆tCE n+2 tn+ 1

261

tn+16

2

tn+ 32

6

3 + 4

tn+26

566

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 26 / 54

multiple Verlet steps → LeapFrog

tn

H

E

0 + 1. ∆Hn = −∆tCE n

2. ∆E n+ 12 = ∆tCTHn+ 1

2

3 + 4. ∆Hn+1 = −∆tCE n+1

5. ∆E n+ 32 = ∆tCTHn+ 3

2

tn+ 12

tn− 12

6

0 + 1

tn+16

2

tn+ 32

6

3 + 4

tn+26

5

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 26 / 54

LeapFrog

tn

H

E

1. ∆Hn = −∆tCE n

2. ∆E n+ 12 = ∆tCTHn+ 1

2

3. ∆Hn+1 = −∆tCE n+1

4. ∆E n+ 32 = ∆tCTHn+ 3

2

tn+ 12

tn− 12

6

1

tn+16

2

tn+ 32

6

3

tn+26

4

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 26 / 54

LeapFrog

tn

H

E

1. ∆Hn = −∆tCE n

2. ∆E n+ 12 = ∆tCTHn+ 1

2

3. ∆Hn+1 = −∆tCE n+1

4. ∆E n+ 32 = ∆tCTHn+ 3

2

tn+ 12

tn− 12

6

1

tn+16

2

tn+ 32

6

3

tn+26

4

+ algorithmically equal to symplectic euler(except for start/end synchronization (Verlet))

+ conserves the same discrete energy as the symplectic euler method

+ needs only 2 steps

+ second order accurate

+ ≈ reversible (A−1it (∆t) = Ait(−∆t))

- H and E are no longer stored at the same timelevel

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 26 / 54

What all three methods have in common:

They are explicit

They conserve a discrete energy (for ∆t = const)

They have the same stability limit (for one complete step)

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 27 / 54

Remark on simplified assumptions

6 6

6 6

If you go back to the “symmetric symplectic Euler” and interprete theexplicit/implicit updates (indicated by green/red arrows) as explicit/implicitupdates for the loss and excitation terms you end up with an algorithm, which

is computationally always explicit when handling curl terms

handles only mass terms implicit(they are cheap ((block-) diagonal) for the DG Solver or FIT)

The steps from “symmetric symplectic Euler” to “Verlet” to “LeapFrog” can begenerated as well by summing updates using the same curl-terms together

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 28 / 54

Remark on stability

If you can show that the conserved (discrete) energy is a continuous, symmetricpositiv definite bilinearform, you now

‖Hn‖22 + ‖E n‖2

2 ' εn = ε0 ' ‖H0‖22 + ‖E 0‖2

2

⇒ H,E are bounded (stability)

(Here a ' b means a ≤ c1b and a ≥ c2b for c1, c2 > 0 independent of n)

For ∆t = const the condition of this remark leads to an explicit time steprestriction (the CFL-condition from LinAlg point of view):

∆t ≤ 2√λmax(CTC )

⇔ |λ(AIt)| = 1

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 29 / 54

Remark on non-constant ∆t

If we choose ∆t 6= const, we can easily construct all three methods with theabove orders of consistency.

Here, looking at the LeapFrog scheme as an algorithmically enhanced Verletscheme is helpful to construct an extension of the LeapFrog scheme for arbitrarilychanging ∆t which is still of second order accurate.

But: For arbitrarily changing ∆t we can no longer assure stability or conservationof a discrete energy.

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 30 / 54

Higher Order time stepping methodfor Maxwell TD

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 31 / 54

Higher Order time stepping methods for Maxwell TD

Standard approaches for Higher Order time stepping methods for Maxwell’sEquations are:

explicit Runge-Kutta methods

The Modified Equation Approach

(only for the lossfree case)

explicit (partitioned) Runge-Kutta methods

Our method of choice is called Composition Method and is related to explicit(partitioned) Runge-Kutta methods

Main Idea:Combine several steps (with different step sizes) of a symmetric second ordermethod, such that truncation errors cancel out and you get a method of higherorder (even).

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 32 / 54

Higher Order time stepping methods for Maxwell TD

Standard approaches for Higher Order time stepping methods for Maxwell’sEquations are:

explicit Runge-Kutta methods (not energy-conserving)

The Modified Equation Approach (only for the lossfree case)

explicit (partitioned) Runge-Kutta methods

Our method of choice is called Composition Method and is related to explicit(partitioned) Runge-Kutta methods

Main Idea:Combine several steps (with different step sizes) of a symmetric second ordermethod, such that truncation errors cancel out and you get a method of higherorder (even).

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 32 / 54

Higher Order time stepping methods for Maxwell TD

Standard approaches for Higher Order time stepping methods for Maxwell’sEquations are:

explicit Runge-Kutta methods (not energy-conserving)

The Modified Equation Approach (only for the lossfree case)

explicit (partitioned) Runge-Kutta methods

Our method of choice is called Composition Method and is related to explicit(partitioned) Runge-Kutta methods

Main Idea:Combine several steps (with different step sizes) of a symmetric second ordermethod, such that truncation errors cancel out and you get a method of higherorder (even).

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 32 / 54

Higher Order time stepping methods for Maxwell TD

Standard approaches for Higher Order time stepping methods for Maxwell’sEquations are:

explicit Runge-Kutta methods (not energy-conserving)

The Modified Equation Approach (only for the lossfree case)

explicit (partitioned) Runge-Kutta methods

Our method of choice is called Composition Method and is related to explicit(partitioned) Runge-Kutta methods

Main Idea:Combine several steps (with different step sizes) of a symmetric second ordermethod, such that truncation errors cancel out and you get a method of higherorder (even).

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 32 / 54

Higher Order time stepping methods for Maxwell TD

Standard approaches for Higher Order time stepping methods for Maxwell’sEquations are:

explicit Runge-Kutta methods (not energy-conserving)

The Modified Equation Approach (only for the lossfree case)

explicit (partitioned) Runge-Kutta methods

Our method of choice is called Composition Method and is related to explicit(partitioned) Runge-Kutta methods

Main Idea:Combine several steps (with different step sizes) of a symmetric second ordermethod, such that truncation errors cancel out and you get a method of higherorder (even).

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 32 / 54

Higher Order time stepping methods for Maxwell TD

Standard approaches for Higher Order time stepping methods for Maxwell’sEquations are:

explicit Runge-Kutta methods (not energy-conserving)

The Modified Equation Approach (only for the lossfree case)

explicit (partitioned) Runge-Kutta methods

Our method of choice is called Composition Method and is related to explicit(partitioned) Runge-Kutta methods

Main Idea:Combine several steps (with different step sizes) of a symmetric second ordermethod, such that truncation errors cancel out and you get a method of higherorder (even).

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 32 / 54

Example: Suzuki Method

6

Each of those steps is a Verlet Step but can also be translated to an equivalentLeapFrog formulation.

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 33 / 54

Example: Suzuki Method

6

6

Each of those steps is a Verlet Step but can also be translated to an equivalentLeapFrog formulation.

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 33 / 54

Example: Suzuki Method

6

6

?

Each of those steps is a Verlet Step but can also be translated to an equivalentLeapFrog formulation.

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 33 / 54

Example: Suzuki Method

6

6

?

6

Each of those steps is a Verlet Step but can also be translated to an equivalentLeapFrog formulation.

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 33 / 54

Example: Suzuki Method

6

6

?

6

6

Each of those steps is a Verlet Step

but can also be translated to an equivalentLeapFrog formulation.

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 33 / 54

Example: Suzuki Method

6

6

?

6

6

Each of those steps is a Verlet Step . but can also be translated to anequivalent LeapFrog formulation.

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 33 / 54

Example: Suzuki Method

6

6

?

6

6

Each of those steps is a Verlet Step , but can also be translated to an equivalentLeapFrog formulation.

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 33 / 54

properties of the Composition Method

The Composition Method

can be constructed of arbitrary high order

is explicit

conserves a discrete energy

For the Composition Method we need a second order accurate time steppingscheme which can handle changing step sizes. The Verlet and LeapFrog schemesfulfill this requirements.The nice thing about the Composition Method is, that we can use a LeapFrog orVerlet of arbitrary complexity, meaning:

+ all special features that are only implemented for second order,translate naturally to higher order!

As mentioned before, a changing step size Verlet scheme in general is notunconditionally stable.

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 34 / 54

stability of the Composition Method

A sufficient stability criteria for the Composition Method of a Verlet scheme canbe found by looking at the corresponding scalar problem

∂t

(eh

)=

(0 −

√a√

a 0

)(eh

)If the discretization of the scalar problem is stable for all a ∈ ρ(CTC ), thediscretization of the whole system is stable.

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 35 / 54

Stabilty of the Verlet scheme (2nd order) [scalar]

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 36 / 54

Stabilty of the Suzuki method (4th order) [scalar]

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 37 / 54

Convergence in the L2-Error for a Vacuum Cube Resonator

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 38 / 54

Local time stepping methods forMaxwell TD

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 39 / 54

Local time stepping methods for Maxwell TD

For every explicit time stepping method for Maxwell TD you have to fulfill acertain CFL-criteria which depends linearly on the mesh size.

If you have a mesh with different mesh size scales, large elements have to step atsmall time scales because of other (small) elements.

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 40 / 54

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 41 / 54

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 42 / 54

Idea:Use different step sizes for different elements to circumvents this problem.

Aim:A Method which is

explicit

second order accurate

has few additional cost (for example for interpolation in time)

conserves a discrete energy

stable

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 43 / 54

recursive Verlet method

The Std. Verlet scheme consists of three steps.After each step on the smallest level (level with the largest elements) request thenext larger level to step the same field to the same time level.

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 44 / 54

recursive Verlet example

H0 E0

tn

H1 E1

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 45 / 54

recursive Verlet example

H0 E0

tn

H1 E1

tn+ 12

6

1

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 45 / 54

recursive Verlet example

H0 E0

tn

H1 E1

tn+ 12

6

1tn+ 16

62

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 45 / 54

recursive Verlet example

H0 E0

tn

H1 E1

tn+ 12

6

1tn+ 16

62

tn+ 13

6

3

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 45 / 54

recursive Verlet example

H0 E0

tn

H1 E1

tn+ 12

6

1tn+ 16

62

tn+ 13

6

364

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 45 / 54

recursive Verlet example

H0 E0

tn

H1 E1

tn+ 12

6

1tn+ 16

62

tn+ 13

6

364

65

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 45 / 54

recursive Verlet example

H0 E0

tn

H1 E1

tn+ 12

6

1tn+ 16

62

tn+ 13

6

364

65

tn+16

6

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 45 / 54

recursive Verlet example

H0 E0

tn

H1 E1

tn+ 12

6

1tn+ 16

62

tn+ 13

6

364

65

tn+16

6

tn+ 23

6

7

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 45 / 54

recursive Verlet example

H0 E0

tn

H1 E1

tn+ 12

6

1tn+ 16

62

tn+ 13

6

364

65

tn+16

6

tn+ 23

6

7

tn+ 56

68

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 45 / 54

recursive Verlet example

H0 E0

tn

H1 E1

tn+ 12

6

1tn+ 16

62

tn+ 13

6

364

65

tn+16

6

tn+ 23

6

7

tn+ 56

68

69

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 45 / 54

recursive Verlet example

H0 E0

tn

H1 E1

tn+ 12

6

1tn+ 16

62

tn+ 13

6

364

65

tn+16

6

tn+ 23

6

7

tn+ 56

68

69

6

10

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 45 / 54

recursive Verlet example

H0 E0

tn

H1 E1

tn+ 12

6

1tn+ 16

62

tn+ 13

6

364

65

tn+16

6

tn+ 23

6

7

tn+ 56

68

69

6

10

tn+ 16

611

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 45 / 54

recursive Verlet example

H0 E0

tn

H1 E1

tn+ 12

6

1tn+ 16

62

tn+ 13

6

364

65

tn+16

6

tn+ 23

6

7

tn+ 56

68

69

6

10

tn+ 16

6116

12

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 45 / 54

examplary part of the algorithm

First H Update(class i, ∆t)

1 Update H-Field on my level

2 If (i<=#classes)

3 Call First H Update(i+1, 13 ∆t)

4 Call E Update(i+1, 13 ∆t)

5 Call Second H Update(i+1, 13 ∆t)

6 Call First H Update(i+1, 13 ∆t)

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 46 / 54

This method is

explicit

reversible (symmetric)

cheap (no additional synchronization/interpolation overhead)

second order accurate

conservative (conserves a discrete energy (which is unknown to us))

again Verlet → LeapFrog:Sum up step 4,5 and step 8,9 at the inner part and step 0,1 and -1,2This works only if the factor between two classes is odd (here three).

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 47 / 54

This method is

explicit

reversible (symmetric)

cheap (no additional synchronization/interpolation overhead)

second order accurate

conservative (conserves a discrete energy (which is unknown to us))

again Verlet → LeapFrog:Sum up step 4,5 and step 8,9 at the inner part and step 0,1 and -1,2This works only if the factor between two classes is odd (here three).

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 47 / 54

recursive LeapFrog example

tn− 12

H0

E0

tn

H1

tn− 16 E1

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 48 / 54

recursive LeapFrog example

tn− 12

H0

E0

tn

H1

tn− 16 E1

tn+ 12

6

1

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 48 / 54

recursive LeapFrog example

tn− 12

H0

E0

tn

H1

tn− 16 E1

tn+ 12

6

1

tn+ 16

6

2

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 48 / 54

recursive LeapFrog example

tn− 12

H0

E0

tn

H1

tn− 16 E1

tn+ 12

6

1

tn+ 16

6

2

tn+ 13

6

3

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 48 / 54

recursive LeapFrog example

tn− 12

H0

E0

tn

H1

tn− 16 E1

tn+ 12

6

1

tn+ 16

6

2

tn+ 13

6

3

6

4

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 48 / 54

recursive LeapFrog example

tn− 12

H0

E0

tn

H1

tn− 16 E1

tn+ 12

6

1

tn+ 16

6

2

tn+ 13

6

3

6

4

6

5

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 48 / 54

recursive LeapFrog example

tn− 12

H0

E0

tn

H1

tn− 16 E1

tn+ 12

6

1

tn+ 16

6

2

tn+ 13

6

3

6

4

6

5

tn+ 23

6

6

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 48 / 54

recursive LeapFrog example

tn− 12

H0

E0

tn

H1

tn− 16 E1

tn+ 12

6

1

tn+ 16

6

2

tn+ 13

6

3

6

4

6

5

tn+ 23

6

6

tn+ 56

6

7

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 48 / 54

recursive LeapFrog example

tn− 12

H0

E0

tn

H1

tn− 16 E1

tn+ 12

6

1

tn+ 16

6

2

tn+ 13

6

3

6

4

6

5

tn+ 23

6

6

tn+ 56

6

7

tn+16

8

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 48 / 54

To realize a local time stepping scheme we need:

local operators that are only acting on arbitrary parts of the domain

a strategy subdividing the domain into several classes

an algorithm giving a stable time step

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 49 / 54

Subdivision strategy

Our approach to divide the elements into the classes is as follows:

1 Estimate elementwise a local time step

2 First Division: [min ∆tlocal , 3 min ∆tlocal ] is the largest class, ...

3 Overlap: To “stabilize” the interaction between small to larger elements addone neighbouring layer of larger elements to the small class

4 Avoid large jumps in step size, meaning: the classes of neighbouring elementsmay only differ by one

5 Estimate the necessary time step for the classes

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 50 / 54

Example Glider (continued): local time steps

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 51 / 54

Example Glider (continued): (before Overlap procedure)

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 52 / 54

Example Glider (continued): (Overlapped class 4)

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 52 / 54

Example Glider (continued): (Overlapped class 3)

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 52 / 54

Example Glider (continued): (Overlapped class 2)

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 52 / 54

Example Glider (continued): (finished Overlapping)

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 52 / 54

Example Glider (continued): (avoided jumps)

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 52 / 54

Ongoing work and open question

Although accuracy of the method and the existence of a discrete energy canbe proven for the recursive local time stepping scheme, there is no explicitcriteria available that describes the stability limit! (⇒ “Fummelfaktor”)

heuristic methods (as long as needed) still have to be improved and developed

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 53 / 54

Thank you for your attention!

Christoph Lehrenfeld, Joachim Schoberl, Timo Euler (RWTH)Modern Techniques for Maxwell TD Aachen, December 4, 2009 54 / 54

top related