Sie sind auf Seite 1von 56

Numerical Methods for the Time Dependent Maxwell System

Peter Monk
Preliminary version of August 20, 2010.
2
Contents
1 Introduction to Maxwells equations 7
1.1 Interior Problem: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2 Exterior Problems: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.3 Some Properties of Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.4 Homework set 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2 Finite dierence model 13
2.1 The nite dierence method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2 Error Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.3 Dispersion analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.4 Homework set 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3 Finite element discretization in space 19
3.1 General estimates for conforming spaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.2 Finite Element Spaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.2.1 Standard Scalar Space S
h
: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.2.2 Edge elements of Nedelec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.3 Implementation and FDTD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.4 Homework set 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4 Discontinuous Galerkin method 29
4.1 Derivation of SIPG for Maxwell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.2 Homework set 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
5 Background on Time Domain Integral Equations 37
5.1 The Stratton-Chu formula . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5.2 Integral equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.3 Marching on in time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.4 Homework set 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
6 Convolution Quadrature applied to the EFIE 45
6.1 Current methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
6.1.1 Space-time Petrov-Galerkin methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
6.1.2 Band limited interpolation and extrapolation . . . . . . . . . . . . . . . . . . . . . . . 46
6.2 Discrete convolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
6.2.1 Convolution quadrature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
6.3 Numerical Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
6.4 Convergence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
6.5 Dispersion: Equivalence to semi-discrete scattering problem . . . . . . . . . . . . . . . . . . . 53
3
4 CONTENTS
Introduction
Note: These are rough notes. The references are rather cursory, and some copyrighted material (i.e. graphs
in the last lecture) is used. Thanks are due to Dr Angela Mihai for correcting many typos in the original
version.
The notes feature a distressing lack of rigor. I elected to cover more topics a little supercially than one
in all detail. The nal version of these notes will incorporate a little more detail, and references where to
nd the exact statement of results. I apologize right now for the almost everywhere dense set of typos in
this version.
Approximating the time dependent Maxwell system, we face the same diculties encountered when
discretizing the wave equation. In particular, for eciency, practitioners usually require explicit time inte-
gration. To be accurate we need good dispersion error, and so higher order methods are attractive. However
in addition to these standard diculties we also need to respect divergence conditions (conservation condi-
tions). In particular spurious modes can occur and probably should be avoided.
Why bother with Maxwells equations? There are lots of applications, for example
Antenna design and placement
Electromagnetic compatibility
Stealth/radar cross section
Chip design
Metamaterials
I am just going to talk about generic Maxwells equations without any of the special reductions or data
needed for specic applications.
Why bother with time domain methods? Here are some positive points:
We can model broad band scattering (i.e. a wide range of frequencies in one experiment).
Large problems are possible since only limited matrix storage is needed and simple matrix equations
have to be solved (assuming we are using a nite element or nite dierence approach).
Nonlinear problems can be solved (not covered here).
But there are some drawbacks:
Frequency dependent coecients are dicult to model.
The method cannot be precisely targeted at a single frequency.
Modeling innite domains can be a challenge (see the PML - also not covered I regret).
In these notes I shall introduce the time domain Maxwells equations and two simple model boundary
value problems. I shall then examine three methods for approximating these problems. The rst is conform-
ing nite element methods, which are closely connected in one case to the workhorse of the computational
electromagnetism community: nite dierence time domain methods. Second we shall touch on discontinu-
ous Galerkin methods. Finally I will devote the remainder of the lectures to time domain integral equations.
Quite recently these have become the method of choice for exterior wave propagation problems.
5
6 CONTENTS
Chapter 1
Introduction to Maxwells equations
There are lots of engineering electromagnetics books that will give you the physical background to Maxwells
equations. A good example might be [30]. There are many simplications of Maxwells equations appropriate
to various applications. For example, eddy current models that are important in the design of electrical
machines like transformers, and static models describing a time independent eld. We dont have time to
consider these models, but instead consider the full time dependent Maxwell system.
From our point of view, the electromagnetic eld is described by four vector functions of time t and
position x:
E(x, t) Electric eld H(x, t) Magnetic eld
D(x, t) Electric displacement B(x, t) Magnetic induction
that satisfy Maxwells equations
D
t
H = J (Amperes law) D = (Gauss law)
B
t
+E = 0 (Faradays law) B = 0
where J is the current density and is the charge density. These are not independent functions. Taking
divergences

D
t
H = J
so since H = 0

t
+ J = 0 (charge conservation).
In a linear medium, the following constitutive relations hold:
D = E where is the electric permittivity (dielectric constant),
B = H where is the magnetic permeability.
Here > 0, > 0 and both functions may depend on x but not t. In air or vacuum =
0
, =
0
constant
and = 0 (except lightening!). In addition, in a conductor, Ohms Law holds so
J = E +J
s
where 0 is the conductivity and J
s
is a given source vector eld. In air = 0.
Thus the most general system we will investigate is

E
t
+E H = J
s
,

H
t
+E = 0.
_

_
(1.1)
7
8 CHAPTER 1. INTRODUCTION TO MAXWELLS EQUATIONS
As you can see here, we will frequently forget the divergence constraints, but these always lurk in the
background. They are the major complication for numerical analysis of Maxwells equations compared to
the scalar wave equation. Neglecting magnetic divergence condition can be justied since we note that


t
(H) + E = 0
so

t
H = 0.
Then if H = 0 at t = 0, it holds for all t.
At an interface of discontinuity between regions where and are smooth we have the following classical
continuity requirements (see Fig. 1.1 for notation)
[[ E]] =
1
E
1
+
2
E
2
= 0
[[ (H)]] =
1

1
H
1
+
2

2
H
2
= 0
in addition if J = 0
[[ (E)]] = 0
[[ H]] = 0.
If J ,= 0 both the conditions for the normal component of E and the tangential component of H may be
modied. Our nite element framework will need to take care of continuity automatically. Note in particular
that when jumps, E is not continuous so continuous nite elements will face complications!
1.1 Interior Problem:
The majority of our discussion will focus on a model interior problem beloved by numerical analysts. Given
a bounded domain D, the unknown electromagnetic eld (E, H) satises (1.1) in D. On the boundary of D
denoted (and having unit outward normal ) we can impose the perfect conducting or metallic boundary
condition (others, e.g. magnetic wall, impedance are also used) that is analogous to the Dirichlet boundary
condition for Laplaces equation
E = 0 on (1.2)
and the initial conditions
E(x, 0) = E
0
(x), H(x, 0) = H
0
(x) in D, (1.3)
where (E
0
, H
0
) are given functions and we require that (H
0
) = 0 at t = 0.
Region 1
1

Region 2

E H
S
2 2
E H
1
r,1 r,1
r,2 r,2
2

Figure 1.1: Geometry of the surface and subdomains in our discussion of interface boundary conditions.
1.2. EXTERIOR PROBLEMS: 9
1.2 Exterior Problems:
This problem is a good deal more realistic. It models, for example, radar scattering from a coated metallic
object. We assume =
0
, =
0
, = 0 if [x[ > R (other problems - e.g. Ground Penetrating Radar
involve innite scatterers). Denote by B
R
the ball of radius R.
1) First version: Given J
s
(x, t) of compact support in R
3
B
R
we seek E, H such that (1.1) holds outside
D (i.e. in D

= R
3
D) . On (1.2) holds and in addition we have the initial conditions
E(x, 0) = H(x, 0) = 0 x D

.
This problem models a source (antenna) modeled by J
s
producing a eld that scatters o the bounded
scatterer contained in B
R
.
2) Second version: Let the incident eld (E
i
, H
i
) be a smooth solution of Maxwells equations in the
background medium (air) so that

0
E
i
t
H
i
= 0,

0
H
i
t
+E
i
= 0
and in addition suppose this eld vanishes in the neighborhood of D at t = 0. Then the total eld
(E, H) consists of the incident eld (E
i
, H
i
) and the scattered eld denoted (E
s
, H
s
):
E = E
i
+E
s
H = H
i
+H
s
.
The eld (E, H) satises (1.1) in D

with J
s
= 0 and (1.2) on together with initial conditions
E
s
(x, 0) = H
s
(x, 0) = 0 x D

.
A common choice of incident eld is
E
i
= pg(x d ct)
H
i
=
_

0
d pg(x d ct)
_
_
_
where g C
1
0
(R
3
) and [d[ = 1, p ,= 0 with p d = 0. Here p is called the polarization of the plane
wave and d is its direction of propagation. One possible choice we will see later is
g(s) = exp
_

1
2
2
c
(s t
p
)
2
_
cos
_
2f
0
c
s
_
where we choose t
p
= 8, and = 6/(2B). Here B is called the nominal bandwidth) and f
0
the center
frequency (eg. f
0
= 120MHz, B = 40MHz) of the Gaussian modulated wave. Obviously g , C

0
(R)
but practically g can be ignored for [s t
p
[ large enough.
1.3 Some Properties of Solutions
Assuming sucient dierentiability of the solution and data, taking the time derivative of the rst equation
in (1.1),

2
E
t
2
+

2
E
t

H
t
=
J
s
t
so using the second equation in (1.1)

2
E
t
2
+
E
t
+
1
E =
J
s
t
10 CHAPTER 1. INTRODUCTION TO MAXWELLS EQUATIONS
This is a second order formulation of the Maxwell system and the one we will consider most frequently. We
set F = J
s
/t.
If in addition =
0
(the material is not magnetic)

1
E =
1
0
E =
1
0
(E + E)
Finally suppose that =
0
, = 0, J
s
= 0, then we know that E = 0 (assuming the initial eld is
divergence free or solenoidal) and

2
E
t
2
= E.
Each component of E (or H) satises the wave equation. Let us denote by c =
1

00
, the speed of light
(3 10
8
m/s).
1.4 Homework set 1
Background: Maxwells equations require you to recall some basic vector identities. Here are some that come
immediately to mind:
Show that for any suciently smooth function H H = 0. How smooth must H be?
Show that for any suciently smooth function E
E = E + E.
Show that for any vectors a, b and c
(a b) c = (b c) a = (c a) b
Show that if [n[ = 1 then
(n a) n = a (a n)n
The theory of Hcurl; ) as well as the variational formulation of Maxwells equations rest on the following
corollary to the divergence theorem
Use the divergence theorem to show that for suitably smooth functions A and B
_

A B =
_

A B +
_

A B
where is the unit outward normal to
Chapter 2
Finite dierence model
The calculations at the end of the previous chapter justify the consideration of the wave equation

2
u
t
2
= c
2
u.
If u = u(x, t) (i.e. only depends on t and x!)

2
u
t
2
= c
2

2
u
x
2
. (2.1)
To get some feeling for the solution of this problem, consider the Cauchy problem

2
u
t
2
= c
2

2
u
x
2
< x < , t > 0
u(x, 0) = f(x), u
t
(x, 0) = 0, < x <
then
u(x, t) =
1
2
f(x ct) +
1
2
f(x +ct).
The solution splits into left and right going waves traveling with velocity c (the phase and group velocities
are both c also).
2.1 The nite dierence method
For a simple numerical test lets consider a bounded domain with Dirichlet
u
tt
= c
2
u
xx
x [0, 1], t > 0
u(0, t) = 0 for t > 0
u(1, t) = 0 for t > 0
u(x, 0) = f(x) u
t
(x, 0) = 0.
where f(x) is a given function.
We can easily discretize using the method of lines. We start with nite dierences in space: let u
j
(t)
u(x
j
, t) where x
j
= jh, h = 1/J, 0 j J. Then using second order centered dierences:
d
2
u
j
dt
2
= c
2
u
j+1
2u
j
+u
j1
h
2
, 1 j J 1
with u
0
= u
J
= 0.
Let u = (u
1
, . . . , u
J1
)
T
. We can summarize the semi-discrete nite dierence problem by requiring that
u satisfy the ordinary dierential system
d
2
u
dt
2
=
c
2
h
2
A
h
u
11
12 CHAPTER 2. FINITE DIFFERENCE MODEL
A
h
=
_
_
_
_
_
_
2 1 0 0
1 2 1 0
0 1 2 1
0 0 1 2
_
_
_
_
_
_
Note: A
h
is symmetric positive denite (semidenite is sucient and will be encountered when we consider
the Maxwell system).
Then we can discretize in time as we wish (of course some choices are better than others). For example
we might use centered dierences in time: let u
n
j
u(x
j
, t
n
), t
n
= nt where the time step t > 0. Let
u
n
= (u
n
1
, . . . , u
n
J1
), then this satises
u
n+1
2u
n
+u
n1
t
2
=
c
2
h
2
A
h
u
n
n = 0, 1, 2, . . .
u
0
= (f(x
0
), f(x
1
), . . . , f(x
J1
)), u
1
= u
0
.
Via numerical tests you will discover that if we choose space and time steps in dierent ways we get dierent
behavior:
_

_
if
ct
h
< 1 stable / but with the appearance of wiggles after some time
if
ct
h
= 1 Exact!!!
if
ct
h
> 1 unstable.
The method is conditionally stable and for stability the time step must satisfy a Courant-Friedrichs-Lewy
or CFL condition:
ct
h
1.
We could also use a rst order system (this is convenient for Maxwells equations since we are interested
in both electric and magnetic elds). If we introduce v(x, t)
u
t
= cv
x
v
t
= cu
x
_
we can see that u still satises the wave equation. We can discretize u as before, but choose v
j+
1
2
(t)
v(x
j+
1
2
, t) where x
j+
1
2
=
h
2
+x
j
for j = 0, . . . , J 1.
du
j
dt
= c(v
j+
1
2
v
j
1
2
),
dv
j+1/2
dt
= c(u
j+1
u
j
),
_

_
The advantage of this staggered grid is that it is exactly equivalent to the semi-discretization in space
we used before and hence gives the same second order accuracy for u. Again we can write this as a matrix
system
du
dt
=
c
h
B
h
v
dv
dt
=
c
h
B
T
h
u
_

_
where
B
h
=
_
_
_
_
1 1 0 0
0 1 1 0
0 0 1 1
_
_
_
_
We can verify that A
h
= B
h
B
T
h
.
2.2. ERROR ANALYSIS 13
Then we can use leap frog time stepping
u
n+1
u
n
t
=
c
h
B
h
v
n+
1
2
v
n+
3
2
v
n+
1
2
t
=
c
h
B
h
u
n+1
_

_
You can verify that u
n
satises the same equations as before!
2.2 Error Analysis
Most error analysis is based on energy methods (there are other techniques we shall investigate next time).
Multiplying (2.1) by u/t and integrating we have
_
1
0

2
u
t
2
u
t
c
2

2
u
x
2
u
t
dx = 0
and integrating by parts using the boundary conditions
1
2
d
dt
1
_
0

u
t

2
+c
2

u
x

2
dx = 0.
So if
E(t) =
1
_
0

u
t

2
+c
2

u
x

2
dx
we have conservation of energy: E(t) = E(0).
Now lets use this idea to analyze the nite dierence method. Straightforward Taylor series analysis
shows that if
e
n
j
= u(x
j
, t
n
) u
n
j
then we have the consistency result
e
n+1
2e
n
+e
n1
t
2
=
c
2
h
2
A
h
e
n
+

F
n
where

F
n
= O(h
2
+ t
2
). Taking the dot product with e
n+1
e
n1
= (e
n+1
e
n
) + (e
n
e
n1
) we obtain
|e
n+1
e
n
|
2
|e
n
e
n1
|
2
= A
h
e
n
(e
n+1
e
n1
) + t
2

F
n
(e
n+1
e
n1
)
where = t
2
c
2
/x
2
.
Summing over n and using a telescoping sum for the matrix term we get
|e
n+1
e
n
|
2
|e
1
e
n
|
2
+ [(A
h
e
n+1
) e
n+1
A
h
e
n+1
(e
n+1
e
n
)
A
h
e
1
e
0
] =
n

m=1
t
2

F
n
(e
m+1
e
m1
).
Lets assume for simplicity that e
0
= e
1
= 0, then using the arithmetic geometric mean inequality and
the positivity semi-deniteness of A
h
, for any > 0,
(1
|A
h
|
2
)|e
n+1
e
n
|
2
+ (1

2
)(A
h
e
n+1
) e
n+1
t
2
n

m=1
|

F
m
||e
m+1
e
m1
|.
Thus, provided and are chosen so that
|A
h
|
2
< 1 and < 2
14 CHAPTER 2. FINITE DIFFERENCE MODEL
we have the energy inequality
|e
n+1
e
n
|
2
+(A
n
e
n+1
) e
n+1
Ct
2
n

m=1
|

F
m
||e
m+1
e
m1
| (2.2)
where C is a constant independent of n, h and t.
Suppose we are interested in convergence for 0 t T = Nt then let
L = max
0nN1
|e
n+1
e
n
| = |e
n

+1
e
n

|
Using the energy inequality (2.2) we obtain
L
2
2Ct
2
n

m=1
|F
m
|L
so
L
t
2Ct
n

m=1
|F
m
| 2CT max
0mN
|F
m
|.
This shows that
1
t
|e
n+1
e
n
| TC(h
2
+ t
2
)
and accumulating this estimate we obtain
|e
n
| CT
2
O(h
2
+ t
2
).
This rests on the assumption that
|A
h
|
4
< 1.
But |A
h
| 4 by Gerschgorins Theorem (actually strictly less by other techniques) and so it suces to
choose such that
< 1 (actually = 1)
which is what we found by computing.
2.3 Dispersion analysis
In fact, for moderate choices of h, the dominant source of error is dispersion. As the wave propagates, dierent
Fourier components propagate at dierent velocities, and the interference between dierent components
becomes out of phase.
Suppose we seek solutions of the wave equation of the form
u = exp(i(kx t))
simple substitution implies the dispersion relation

2
= c
2
k
2
.
Thus [/k[ = c, the phase velocity of the wave.
We can analyze the numerical dispersion relation on an innite spatial nite dierence grid by Fourier
analysis. Suppose we seek solutions of the dierence equation of the form
u
n
j
= exp(i(kx
j

t
n
t
n
))
To be a solution, we need
exp(i
t
n
t) 2 + exp(i
t
n
t)
= (exp(ikh) 2 + exp(ikh))
2.4. HOMEWORK SET 2 15
so
sin
2
_

t
n
2
t
_
= sin
2
_
kh
2
_
.
Clearly in general
t
h
,= . To avoid exponentially growing solutions we immediately see that we need the
CFL condition 1 and then Taylors series shows that for small h and t the numerical phase velocity is

t
h
k
= c +
ck
2
24
(c
2
t
2
h
2
) +. . . .
The group velocity behaves similarly. The best choice is clearly ct = h and then the method is exact! This
is a one dimensional result.
An excellent reference for group and phase velocity in nite dierence methods is [29] and for a detailed
account in many settings see the book of Cohen [10].
2.4 Homework set 2
Here are some exercises with the matlab code
Use the 1D nite dierence code to convince yourself that the following is correct
_

_
if
t
cx
< 1 stable / but with the appearance of wiggles
if
t
cx
= 1 Exact!!!
if
t
cx
> 1 unstable.
Discretize the 1D analogue of Maxwells equations with a conductivity term:
c
2

2
u
t
2
+
u
t
=

2
u
x
2
Use central dierences and modify the code I gave you. Run the code with = 0.1, c = 1, and nal
time T = 4 with the other parameters as before. What changes compared to the case when = 0?
Derive the dispersion relation for nite dierence wave equation in 2D. This amounts to analyzing
the dispersion relation for the standard centered dierence approximation to the wave equation (u
approximates the scalar magnetic eld, see below)
u
n+1
i,j
2u
n
i,j
+u
n1
i,j
t
2
=
c
2
h
2
(u
n
i,j+1
+u
n
i,j1
+u
n
i+1,j
+u
n
i1,j
4u
n
i,j
) (2.3)
where u
n
i,j
u(x
i
, y
j
, t
n
) where x
i
= ih, y
j
= jh and T
n
= nt. Show that the method is stable if
t h/(c

2). Use the matlab function wave2d to convince yourself that this prediction is correct.
The solution in the rst version of the code is
u(x, y, t) = cos(2

2t) sin(2x) sin(2y)


this corresponds to an eigenmode of the problem and is called a standing wave. It will oscillate in place
with a period of 1/

2. So run your wave2d using N = 20, M your choice and T = 5/

2 to observe
several periods.
Modify the code by uncommenting the Gaussian initial data in function ix using waved2d(20,30,5).
Can you observe the anisotropic phase speed (the expanding contours look square after a while).
Try N = 40 and a suitable M for stability?
16 CHAPTER 2. FINITE DIFFERENCE MODEL
Chapter 3
Finite element discretization in space
We are going to concentrate on spatial discretization using nite element methods.
3.1 General estimates for conforming spaces
We are going to start by taking a nonstandard approach to deriving the standard method for solving
Maxwells equations in the time domain: Finite Dierence Time Domain (or FDTD). We will do this via
conforming nite elements.
Consider the simple interior problem in which we have chosen a system of units in which c = 1

2
E
t
2
+E = F in D,
E = 0 on ,
E(x, 0) =

t
E
t
(x, 0) = 0.
_

_
To use nite elements we need a weak or variational form of the equations. Let (C

0
(D))
3
then
_
D

2
E
t
2
dV +
_
D
E dV =
_
D
F dV
so using the fact that for smooth enough functions
_
D
A BdV =
_
D
A BdV +
_

A BdA
we obtain
_
D

2
E
t
2
dV +
_
D
E dV =
_
D
F dV.
We see that we need E L
2
(D) and E L
2
(D), which leads to the following Sobolev space
H(curl; D) = u (L
2
(D))
3
[ u (L
2
(D))
3

with norm |u|


2
curl
= |u|
2
+|u|
2
. Then
H
0
(curl; D) = u H(curl; D) [ u = 0 on .
Remark. If D is smooth and u H(curl; D) then u H

1
2
(D)
3
is well dened in the trace sense. An
alternative trace is ( u) H

1
2
(D)
3
. These notions can be extended to Lipschitz polyhedral domains.
17
18 CHAPTER 3. FINITE ELEMENT DISCRETIZATION IN SPACE
So loosely for each t we seek E(, t) H
0
(curl; D) such that
_
D

2
E
t
2
dV +
_
D
E dV =
_
D
F dV H
0
(curl; D)
and E(, 0) = E
/
t(, 0) = 0. Note we have used the fact that H
0
(curl; D) is the completion of (C

0
(D))
3
in the H(curl; D) norm.
To discretize this problem we need a nite element subspace U
h
of H
0
(curl; D). The semi-discrete problem
is: Find E
h
(t) U
h
such that
_
D

2
E
h
t
2

h
dV +
_
D
E
h

h
dV =
_
D
F
h
dV
h
U
h
.
Lets put o the choice of U
h
just now in order to derive some error estimates.
1) Conservation of energy: key to the estimates. Choosing = E
t
_
D

2
E
t
2

E
t
+ E
E
t
dV =
_
D
F
E
t
1
2
d
dt
_
D
[
E
t
[
2
+ [E[
2
dV =
_
D
F
E
t
if F = 0 and the initial data also vanishes, we have
E(t) = E(0) = 0 where E(t) =
_
D

E
t

2
+[E[
2
dV
and this implies uniqueness of the solution. The spatially discrete solution satises the same energy
conservation. This can be used to prove error estimates.
2) Conservation of charge: if p H
1
0
(D) then p H
0
(curl; D) and for a topologically trivial domain if
u = 0 then u = p for some p H
1
0
(D) so we write
H
1
0
(D)

H
0
(curl; D).
So choosing = p we have
d
2
dt
2
_
D
E pdV +
_
D
E pdV =
_
D
F pdV
and since this holds for all p H
1
0
(D) we have


2
t
2
E = F or

2
t
2
+

t
J = 0.
Thanks to the use of gradients as test functions we have conservation of charge, So for the nite element
method, conservation of charge results from having a rich space of gradients in U
h
.
We are now going to use a non-standard approach from [11] to estimate the error in a nite element
discretization. This uses the Laplace transform, so recall that we dene the Laplace transform of a function
as follows
f : (0, ) R by

f(s) =

_
0
e
st
f(t)dt
3.1. GENERAL ESTIMATES FOR CONFORMING SPACES 19
where we take s = +i for > 0 xed and R. Note that if f : (, ) R with f(t) = 0 for t < 0
then

f(s) =

_
0
(e
t
f)e
it
dt
= Fourier transform of e
t
f.
Hence by Parsevals Theorem

f( +i)[
2
d =

[f(t)[
2
e
2t
dt.
Note also if f(0) = 0, then

f

= s

f. So in the Laplace domain



E satises
s
2

E +

E =

F
and we are lead to consider the Laplace domain problem of nding

E H
0
(curl; D) such that
s
2
_
D

E dV +
_
D


E dV =
_
D

F dV for all H
0
(curl; D)
where both trial and test functions are now complex values.
Dene the sesquilinear form
a
s
(

E, ) =
_
D
s
2

E (s)dV +
_
D


E (s)dV.
Then

E H
0
(curl; D) satises
a
s
(

E, ) =
_
D
F (s)dV H
0
(curl; D)
and the nite dimensional analogue is to nd

E
h
U
h
satises
a
s
(

E
h
,
h
) =
_
D
F
h
(s)
h
dV
h
U
h
.
Denoting a new H(curl; D) norm by
|

E|
2
curl,s
= |

E|
2
+[s[
2
|

E|
2
we then obviously have the following coercivity and continuity estimates:
Coercivity
[a
s
(

E,

E)[ |

E|
2
curl,s

E H
0
(curl; D)
Continuity
[a
s
(

E,

)[ [s[|

E|
curl,s
|

|
curl,s

,

E H
0
(curl; D)
So we have the quasi-optimal error estimate (by Ceas lemma)
|

E

E
h
|
curl,s

[s[

h
|
curl,s

n
U
n
.
20 CHAPTER 3. FINITE ELEMENT DISCRETIZATION IN SPACE
Translating into time domain by the inverse Laplace, for any
h
U
h
:

_
0
_
|
E E
h
t
|
2
+|(E E
h
)|
2
_
e
2t
dt

_
0
_
|

2
t
2
(E
h
)|
2
+|

t
(E
h
))|
2
_
e
2t
dt
provided
2
E/t
2
and (/t)E vanish at t = 0.
On a nite interval time interval (0, T) we can take =
1
T
to get
T
_
0
_
|

t
(E E
h
)|
2
+|(E E
h
)|
2
_
dt
T
2

_
0
_
|

2
t
2
(E
h
)| +|

t
(E
h
)|
2
_
e
2t/T
dt
then we can obtain estimates for E E
h
by a second integration (of course the preceeding estimate is far
from optimal, see [11] for a better way to estimate on a nite time interval). This suggests that any choice
of an approximating space U
h
will work if the solution is smooth enough, the mesh is ne enough, and it
has the necessary approximation properties. But will it work well? So far we have not been able to examine
charge conservation.
Remark: This is not the standard way to obtain semidiscrete error estimates!
3.2 Finite Element Spaces
Now we will discuss two possible choice of U
h
: the good and the bad. Later we will examine one other choice:
the ugly.
Suppose D is the union of cubes such that it can be covered by a mesh T
h
consisting entirely of uniform
cubes of size h h h.
3.2.1 Standard Scalar Space S
h
:
For more details on standard elements and the presentation I am using, see [9, 4]. Let Q
r,s,t
denote the set
of polynomials of degree at most r in x, s in y and t in z. The lowest order piecewise linear nite element is
dened locally on an element K by
_
_
_
the element K is a cube of size h h h
nite element functions are in Q
1,1,1
degrees of freedom are vertex values.
The degrees of freedom ensure continuity of the functions in this nite element space. Hence it is H
1
conforming. Specifying the degrees of freedom uniquely determines the local function so it is unisolvent. We
can equivalently dene the space globally by
S
h
= p H
1
(D) [ p[
K
Q
1,1,1
K T
h
.
This gives a possible choice:
U
h
= (S
h
S
h
S
h
) H
0
(curl; D)
= u
h
S
h
S
h
S
h
[ u
h
= 0.
This is the bad choice you heard about earlier:
3.2. FINITE ELEMENT SPACES 21
- How would we enforce the tangential BC?
- We have no direct control over divergence.
- The method cannot directly be applied to variable coecient problems. If has a jump across a surface
S, E is continuous across S but (E) is continuous so E jumps.
From now on S
h
includes the zero boundary condition. So that
S
h
= p H
1
0
(D) [ p[
K
Q
1,1,1
K T
h
.
3.2.2 Edge elements of Nedelec
These elements were proposed in a paper by Nedelec [26].
Left: p = 1; the average value of tangential component of the nite element vector eld is given on each
edge. Right: p = 2; only the degrees of freedom for the second component u
2
of the eld are shown.
We now construct a vector element in H(curl; D). These were proposed by Nedelec in [26]. See also the
appendix to these notes from my book. We have seen that
H
1
0
(D)

H
0
(curl; D)
Suppose we want to mimic this in the nite element space. If p
h
S
h
then on an element K we have
p
h
[
K
Q
1,1,1
so
p
h
[
K
Q
0,1,1
Q
1,0,1
Q
1,1,0
.
This suggests we choose, at least,
U
h
= u
h
H
0
(curl; D) [ u
h
[
K
Q
0,1,1
Q
1,0,1
Q
1,1,0
, K T
h
.
We can choose as degrees of freedom of a function u
h
U
h
the integrals
_
e
u
h

e
ds for every edge e in the
interior of the element where
e
is tangent to e. This element is curl conforming and unisolvent as we can
easily see. For example consider a particular element and component u
1
of the nite element so that on
element K
u
1
[
K
= a +by +cz +dyz
Specifying the x integral along the appropriate edges (i.e. edges parallel to the x axis) shows this element is
clearly unisolvent and u
h
is continuous across faces so the element is curl conforming.
22 CHAPTER 3. FINITE ELEMENT DISCRETIZATION IN SPACE
With this choice we can prove a discrete form of charge conservation. Since S
h
U
h
we have discrete
divergence control since choosing
h
= p
h
for some p
h
S
h
we have
d
2
dt
2
_
D
E
h
p
h
dV =
_
D
F p
h
dV p
h
S
h
.
Suppose F = 0 then
_
D
E
h
p
h
dV = 0
and E
h
is said to be discrete divergence free. Note that in fact if u
h
is discrete divergence free we can
prove a Friedrichs inequality that there is a constant C independent of h such that
|u
h
| C|u
h
|
This is a key step in showing that the method we are working on is spectrally correct (see Professor Bos
talks).
Error estimates (including time discretization) can be found in the work of J. Li [21, 22, 1].
3.3 Implementation and FDTD
Now lets look a little at implementation. For thus we need a basis for the nite element space U
h
. Let

h
j

N
h
j=1
U
h
be the shape functions (basis functions) where N
h
= # interior edges in the mesh. The basis
function
h
j
has vanishing tangential component on each edge except edge j where the degree of freedom is
1. Of course the support of this basis function is just the elements sharing this edge. Now
E
h
(x, t) =
N
h

j=1
E
j
(t)
h
j
(x)
then if

E = (E
1
, E
2
, . . .)
T
we have
M
d
2
dt
2

E +S

E =

F
where the sparse N
h
N
h
symmetric matrices M and S are given by
M
,m
=
_
D


h
m
dV, S
,m
=
_
D


h
m
dV.
To discretize in time we could use standard centered dierences
M
(E
n+1
2E
n
+E
n1
)
t
2
+SE
n
= F
n
.
Since S is symmetric positive semi-denite we have already shown that the method is stable, and convergence
can also be proved.
But there is a problem: at each timestep we must invert M.(eg by conjugate gradients). This is unac-
ceptable to electrical engineers (to date). One further approximation saves the day [10]: We approximate
each elementary integral by a suitable quadrature. On an element K = [0, h] [0, h] [0, h] we can use the
quadrature
_
K
u v dV Q
K
(u, v) =
h
3
12
_
_
4

j=1
u
1
(a
j
) v
1
(a
j
) +
4

j=1
u
2
(b
j
) v
2
(b
j
) +
4

j=1
u
3
(c
j
) v
3
(c
j
)
_
_
3.4. HOMEWORK SET 3 23
where a
1
= (h/2, 0, 0), a
2
= (h/2, h, 0), a
3
= (h/2, 0, h), a
4
= (h/2, h, h) and similarly for b on edges parallel
to the y axis, and c on edges parallel to the z axis. The new method is then to approximate M by M
Q
using quadrature so that
M
Q
,m
=

KT
h
Q
K
(
h

,
h
m
), F
Q,n
m
=

KT
h
Q
K
(F
n
,
h
m
).
Now M
Q
is diagonal and we can time-step
M
Q
(

E
n+1
2

E
n
+

E
n1
)
t
2
+S

E
n
=

F
Q,n
without inverting a matrix. This is called the Finite Dierence Time Domain method (FDTD): we can show
that the method converges with error O(h
2
+ t
2
) provided we satisfy the CFL condition t h/

3c.
We also have discrete conservation of charge: if F = 0

KT
h
Q
K
(E
h
, p
h
) = 0 p
h
S
h
.
Taking p
h
to be unity at one vertex and zero at all the rest we have that at that vertex
(E
+
z
E

z
) + (E
+
y
E

y
) + (E
+
x
E

x
) = 0
where the superscripts represent elds to the left/right, and above/below the point at which p
h
is non-zero.
+
E
E
E
E
+
+

x
x
y
y
E
z

E
z
FDTD is the workhorse of CEM and results are to be found in every issue of IEEE Transactions on
Antennas and Propagation. The MAFIA code [25] is an example of a sophisticated implementation, and I
think this warrants the description: a good method.
Unfortunately, mass lumping is only possible for rectangular elements in general.
3.4 Homework set 3
Assuming = 0 and sucient regularity, derive the second order dierential equation satised by the
magnetic eld H after eliminating E (what is the boundary condition?). Write a spatial variational
formulation (what is the correct space for H) and derive the analogue of charge conservation (there is
now a boundary condition associated - what is it?).
The standard FDTD for Maxwells equations is based on the rst order Maxwell system. One polar-
ization in 2D involves a scalar magnetic eld H and a vector electric eld E = (E
1
, E
2
). These satisfy
the 2D Maxwell system (setting coecients to 1):
H
t
=
E
2
x

E
1
y
E
1
t
=
H
y
E
2
t
=
H
x
24 CHAPTER 3. FINITE ELEMENT DISCRETIZATION IN SPACE
x
E E
E
i+1/2,j
E
E
i+3/2,j
i,j1/2
H H
H
i,j+1
i,j i+1,j
i+1,j+1/2 i,j+1/2
y
y
x
Figure 3.1: Arrangement of degrees of freedom for the 2D FDTD scheme
Verify that H satises the wave equation.
Using the notation in Fig 3.1 the nite dierence equations (using staggered time steps and edge
discretization for E and piecewise constant discretization for H) is
H
n+1
i,j
H
n
i,j
t
=
E
n+1/2
i+1/2,j
E
n+1/2
i1/2,j
h

E
n+1/2
i,j+1/2
E
n+1/2
i,j1/2
h
E
n+3/2
i,j+1/2
E
n+1/2
i,j+1/2
t
=
_
H
n+1
i,j+1
H
n+1
i,j
h
_
E
n+3/2
i+1/2,j
E
n+1/2
i+1/2,j
t
=
H
n+1
i+1,j
H
n+1
i,j
h
Show that the local truncation error is O(h
2
+ t
2
) and, by eliminating the electric eld, show that
H
n
i,j
satises the discrete wave equation (2.3).
Chapter 4
Discontinuous Galerkin method
To avoid the problem of mass matrices many researchers have turned to discontinuous Galerkin methods (the
ugly method). We shall describe just one version: Symmetric Interior Penalty Galerkin methods (SIPG).
The method was rst analyzed in the time domain in [17, 18, 16] and for the related eigenvalue problem in
[7, 6].
4.1 Derivation of SIPG for Maxwell
We cover D by a mesh T
h
of regular tetrahedra of maximum diameter h (we could use cubes equally well).
To develop the method in the classical way we proceed as follows. On an element K, we multiply the model
interior Maxwell system by a smooth test function
K
and integrate over the domain. The key term is the
spatial derivative term:
_
K
E
K
dV =
_
K
E
K
dV
+
_
K
E
K

K
dA
where
K
is the unit outward normal to K. Adding over all elements and letting denote the piecewise
dened function [
K
=
K
and dening
h
[
K
=
K
so that we have
_
D
E dv =
_
D

h
E
h
dV +

fE
h
_
f
E [[]]dA
where c
h
denotes the set of all faces in the mesh and the jump [[]] is dened by
[[]] =
_

K

K
+
K

if f = K K

K
if f .
We will allow the discrete approximation to E to jump so dene the average value operator by
=
_
(
K
+
K

)/2 if f = K K

K
if f .
We are also motivated to dene the broken space
H(curl; T
h
) = v L
2
(D)
3
[ v[
K
L
2
(K)
3
K T
h
.
25
26 CHAPTER 4. DISCONTINUOUS GALERKIN METHOD
Then for all H(curl; T
h
) and suciently smooth E we have
_
D
E dV =
_
D

h
E
h
dV +

fE
h
_
f
E [[]]dA.
The RHS is not symmetric so we add a consistent symmetrizing term

fE
h
_
f
[[E]]dA.
So if E is smooth enough we have
_
D
E dV =
_
D

h
E
h
dV
+

fE
h
_
f
E [[]] + [[E]]dA.
The right hand side turns out not to be positive semidenite so we add a stabilizing term (still consistent)

fE
h
_
a[[E]][[]]dA
where a = /h and
h =
_
min(h
K
, h
K
) f K K
h
K
f K
Also > 0 is a penalty parameter which will need to be chosen large enough. We now use the discontinuous
Galerkin space
V
h
= v
h
L
2
(D) [ v
h
[
K
(P
p
)
3
K T
h

where P
p
is the set of all polynomials of degree at most p. The semi-discrete solution is E
h
(t) V
h
such
that
_
D

2
E
h
t
2

h
dV +a
DG
(E
h
,
h
) =
_
F
h
dV
h
V
h
where
a
DG
(E
h
,
h
) =
_
D

h
E
h

h

h
dV
+

fE
h
_
f
E
h
[[
h
]] +
h
[[E
h
]] +

fE
h
_
a[[E
h
]] [[
h
]]dA.
A key nite element result is the local inverse inequality: if v
h
V
h
then
|v
h
|
2
L
2
(K)
Ch
1
K
|v
K
|
2
L
2
(K)
.
So we can estimate if v V
h
, z V
h
so

fE
h
_
f
[[v]]zdA

fE
h
|a
1/2
[[v]]|
L
2
(f)
|a
1/2
z|
L
2
(f)
C
1/2
_
_

fE
h
|a
1/2
[[v]]|
L
2
(f)
_
_
|z|
L
2
(D)
We can then show if is large enough, for all u
h
V
h
there is a constant C > 0 independent of h and u
h
such that
[a
DG
(u
h
, u
h
)[ C|u
h
|
2
V
h
4.2. HOMEWORK SET 4 27
where
|u|
2
V
h
= |
h
u|
2
+

fE
h
|a
1/2
[[u]]|
2
L
2
(f)
.
So we will have a stable time marching scheme if we use centered dierence and a suitable CFL condition
(decreasing in ).
Convergence can then be proved by Laplace transforms and a Strang Lemma argument [17] and gives
the following theorem:
Theorem 4.1.1. Suppose for s > 1/2
E, E
t
, E, E
t
L

(0, T; H
s
(D)
3
) E
tt
, E
tt
L
1
(0, T; H
s
(D)
3
)
then if is small enough, and e
h
= E E
h
|e
h
/t|
L

(0,T;L
2
(D)
3
)
+|e
h
|
L

(0,T;V (h))
C
1
(|e
h
/t(0)| +|e
h
(0)|) +C
2
h
min(s,)
where C
2
depends on the indicated norms of E.
Note that the matrix resulting from the time derivative term in the DG formulation is block diagonal
and so it can be inverted easily. Often explicit Runge-Kutta is used for discontinuous Galerkin formulations,
but in [16] a new exible alternative based on local time steps is formulated.
4.2 Homework set 4
Lets write down (and program) DG in 1D for the wave equation

2
u
t
2
=

2
u
x
2
for x (0, 1) and t > 0
subject to periodic boundary conditions (to reduce the amount of calculation needed)
u(0, t) = u(1, t) and
u
x
(0, t) =
u
x
(1, t) for t > 0
with periodic initial conditions
u(x, 0) = u
0
(x) and
u
t
(x, 0) = 0 for all x (0, 1)
where u
0
(x) is a given function. We start by discretizing in space using the SIPG philosophy.
Step 1 We divide (0, 1) in J subintervals (x
j
, x
j+1
) of length h = 1/J.
Step 2 Using integration by parts, for amy smooth function
j
on (x
j
, x
j+1
)
_
xj+1
xj

2
u
x
2

j
dx =?? +
u
x
(x
j+1
)
j
(x
j+1
)
u
x
(x
j
)
j
(x
j
)
Complete the above expression by lling in ??.
ANS
_
xj+1
xj

2
u
x
2

j
dx =
_
xj+1
xj
u
x

j
x
dx +
u
x
(x
j+1
)
j
(x
j+1
)
u
x
(x
j
)
j
(x
j
)
Step 3 Add this expression over all elements, and use the fact that u/x is continuous and taking
care of signs to obtain
J1

j=0
_
xj+1
xj

2
u
x
2

j
dx =
J1

j=0
_
xj+1
xj
u
x

j
x
dx
J

j=0
u
x
(x
j
)[[]]
j
28 CHAPTER 4. DISCONTINUOUS GALERKIN METHOD
where the jump is dened by
[[]]
j
=?? if 0 j J
where we use periodicity to set
J+1
(1) =
0
(0) etc. Again what is ??
ANS
[[]]
j
=
j
(x
j
)
j1
(x
j
)
Introducing the average value operator (also periodic at the ends of the interval) by

j
= (
j
(x
j
) +
j1
(x
j
))/2
We have
J1

j=0
_
xj+1
xj

2
u
x
2

j
dx =
J1

j=0
_
xj+1
xj
u
x

j
x
dx
J

j=0

u
x

j
[[]]
j
Introducing a symmetrizing term we have
J1

j=0
_
xj+1
xj

2
u
x
2

j
dx =
J1

j=0
_
xj+1
xj
u
x

j
x
dx
J

j=0

u
x

j
[[]]
j
+??
What is ??
ANS
J1

j=0
_
xj+1
xj

2
u
x
2

j
dx =
J1

j=0
_
xj+1
xj
u
x

j
x
dx
J

j=0
_

u
x

j
[[]]
j
+

j
[[u]]
j
_
and nally a penalty term gives
J1

j=0
_
xj+1
xj

2
u
x
2

j
dx =
J1

j=0
_
xj+1
xj
u
x

j
x
dx
J

j=0
_

u
x

j
[[]]
j
+

j
[[u]]
j
_

h
J

j=0
[[u]]
j
[[]]
j
where > 0 is a penalty parameter to be chosen.
Step 3 Now suppose u is approximated by discontinuous piecewise linear functions. The semidiscrete
function u
h
is given on element (x
j
, x
j+1
) by a linear function denoted u
j
h
and we can write
u
j
h
= u
j
0
x +j + 1 x
h
+u
j
1
x x
j
h
The equation to be satised by u
h
is
J1

j=0
_
xj+1
xj

2
u
j
h
t
2

j
h
dx +
J1

j=0
_
xj+1
xj
u
j
h
x

j
h
x
dx +
J

j=0
_

u
h
x

j
[[]]
j
+

h
x
h

j
[[u
h
]]
j
_
+

h
J

j=0
[[u
h
]]
j
[[
h
]]
j
= 0
for all discontinuous piecewise linear functions
h
.
Step 4 We now need to derive the linear system of equations. We choose successively
h
to be one
of the two basis functions on each element. Each choice gives a row in the relevant matrix.
4.2. HOMEWORK SET 4 29
Choosing
m
h
= (x
m+1
x)/h and

h
= 0, ,= m,
_
xm+1
xm

2
u
m
h
t
2

m
h
dx +
_
xm+1
xm
u
m
h
x

m
h
x
dx +
m+1

j=m
_

u
h
x

j
[[]]
j
+

h
x
h

j
[[u
h
]]
j
_
+

h
m+1

j=m
[[u
h
]]
j
[[
h
]]
j
= 0
Why did the other terms drop out?
ANS: Only terms in which
m
h
is non-zero contribute to the equations
Straightfowardly
_
xm+1
xm

2
u
m
h
t
2
(x
m+1
x)
h
dx
=
_
xm+1
xm

2
t
2
u
m
0
(x
m+1
x)
2
h
2
dx +
_
xm+1
xm

2
t
2
u
m
1
(x x
m
)(x
m+1
x)
h
2
dx
=
h
3
d
2
u
m
0
dt
2
+
h
6
d
2
u
m
1
dt
2
Then
_
xm+1
xm
u
m
h
x

m
h
x
dx =
1
h
(u
m
1
u
m
0
)
Why?
ANS since
u
m
h
x
=
1
h
(u
m
1
u
m
0
) and in this case

m
h
x
= 1/h Then
u
m
h
/x
m+1
=
u
m+1
1
u
m+1
0
+u
m
1
u
m
0
2h
and in this case
[[
m
h
]]
m+1
= 0 and [[
m
h
]]
m
=??
ANS [[
m
h
]]
m
= 1 while
u
m
h
/x
m
=
u
m
1
u
m
0
+u
m1
1
u
m1
0
2h
and

m
h
/x
m+1
= 1/2h and
m
h
/x
m
= 1/2h
Finally
[[u
m
h
]]
m+1
= u
m+1
0
u
m
1
and [[u
m
h
]]
m
= u
m
0
u
m1
1
.
so
m+1

j=m
_

u
h
x

j
[[]]
j
+

h
x
h

j
[[u
h
]]
j
_
=??
ANS
m+1

j=m
_

u
h
x

j
[[]]
j
+

h
x
h

j
[[u
h
]]
j
_
=

1
h
(u
m
1
u
m
0
) +
1
2h
(u
m
1
u
m
0
+u
m1
1
u
m1
0
)

1
2h
(u
m+1
0
u
m
1
)
1
2h
(u
m
0
u
m1
1
)
and
m+1

j=m
[[u
h
]]
j
[[
h
]]
j
= (u
m
0
u
m1
1
)
30 CHAPTER 4. DISCONTINUOUS GALERKIN METHOD
Putting all this together
h
3
d
2
u
m
0
dt
2
+
h
6
d
2
u
m
1
dt
2
=
1
2h
u
m1
0
+
1
h
u
m1
1
+

h
u
m
0

1
2h
u
m+1
0
Now repeat this whole process with
m
h
= (x x
m
)/h (in real 3D life we would let the computer
do this work....). What do you get?
ANS
h
6
d
2
u
m
0
dt
2
+
h
3
d
2
u
m
1
dt
2
=
1
2h
u
m1
1
+

h
u
m
1
+
1
h
u
m+1
0

1
2h
u
m+1
1
you might have been able to guess this by symmetry.
Step 4 The above equations give us all we need to form the mass and stiness matrices. We set
u = (u
0
0
, u
0
1
, [ u
1
0
, u
1
1
, [ , [ u
J1
0
, u
J1
1
)
T
where I have inserted vertical bars remind us that the
unknowns come in pairs element by element. The 2J 2J mass matrix M
h
is block diagonal with
diagonal block given by
M = h
_
1/3 1/6
1/6 1/3
_
The stiness matrix is circulant (because of periodicity) and block tridiagonal with 2 2 blocks
A
h
=
_
_
_
_
_
_
_
_
_
S T 0 0 0 R
R S T 0 0
0 R S T 0
.
.
.
.
.
.
0 R S T
T 0 0 R S
_
_
_
_
_
_
_
_
_
where R, S, T are obtained from the above equations:
R =
_

1
2h
1
h
0
1
2h
_
S =
_

h
0
0

h
_
As you might expect from the symmetry of the bilinear for R = T
T
and S = S
T
. Note that this
choice of M
h
and A
h
involve h unlike in the lecture.
Some numerical experiments. In matlab try using N = 50 intervals, the recommended minimum
number of time steps M = (how many would nite dierences need?), nal time T = 4 and
= 5.
wave1dDGa(50,500,4,5)
You should get a slow but good solution!
Now reduce the number of timesteps
wave1dDGa(50,200,4,5)
How low can you take M and maintain reasonable accuracy. Try M = 170
Reduce to = 1. Note how the number of timesteps needed decreases. Is the method stable
and accurate?
Does = 0 work? Try = 1 and = 2. Looking at the entries of the matrix R you might guess
that = 1 is plausible lower bound.
4.2. HOMEWORK SET 4 31
Discretize the wave equation by the backward Euler method:
u
n+1
2u
n
+u
n1
t
2
=
c
2
h
2
A
h
u
n+1
Compute the dispersion relation. Develop the Taylor series and note a complex low order term.
Implement the method (you will need to solve a matrix equation at each time step) and observe the
dierence between this method and the conditionally stable scheme we examined in class.
32 CHAPTER 4. DISCONTINUOUS GALERKIN METHOD
Chapter 5
Background on Time Domain Integral
Equations
Integral equations reduce the solution of homogeneous boundary value problems to equations on the boundary
of the scatterer. A good reference for methods of this type for various equations is [14]. This reduction in
dimension carries with it the lure of fewer degrees of freedom, and hence considerable eort has been expended
to develop solvers based on this formulation. In the time domain it is only quite recently that stable and
accurate integral equation formulations have appeared. In some applications they are now the state of the
art.
We are now going to outline the derivation of a time domain boundary integral equation for Maxwells
equation. Suppose we want to solve

0
E
t
H = 0

0
H
t
+E = 0
_

_
in D

= R
3
D (5.1)
subject to the perfect conducting boundary condition
E = g := E
i
,
on where (E
i
, H
i
) is a solution of the Maxwell system in the absence of a scatter (i.e. D = - see Chapter
1 for an example of an incident eld). We assume E
i
= 0 in a neighborhood of D of t = 0 and select
E(x, 0) =
E
t
(x, 0) = 0 at t = 0.
We will now show how to reduce this problem to a time domain integral equation.
The rst point is that integral equations eectively solve the interior and exterior problem simultaneously.
So we now assume that (5.1) is satised both in D and in D

= R
3
D. However the eld is in general
discontinuous across the boundary of D and we take to be the unit outward normal to D.
5.1 The Stratton-Chu formula
Consider rst the problem of computing the time domain fundamental solution of the wave equation denoted
(x y, t ) due to a point source positioned at y and active at time . We can select y = 0 and = 0
so then by denition (x, t) satises
1
c
2

t
2
= +(x)(t)
(x, 0) =

t
(x, 0) = 0.
33
34 CHAPTER 5. BACKGROUND ON TIME DOMAIN INTEGRAL EQUATIONS
Taking the Laplace transform in time we need to solve
s
2
c
2

= (x),
where s = +i with xed > 0 and

should be bounded at innity.
Separating variables we see that the solution is

(x, s) =
e
s|x|/c
4[x[
Taking the inverse Laplace transform
(x, t) =
(t [x[/c)
4[x[
.
More generally we need a solution, bounded at innity, of
1
c
2

t
2
= +(x y)(t )
and by translation this has the solution
(x y, t ) =
(t [x y[/c )
4[x y[
.
Boundary integral equations are based on integral representations of the solution. We are now going to
derive a Laplace domain Stratton-Chu formula. This plays the role of Greens formula for the Helmholtz
equation. We need to consider D and D

separately. Suppose (

E,

H) is a smooth solution of the Laplace
domain Maxwells equations in D:
s
0

E

H = 0
s
0

H +

E = 0
_
in D.
Of course

E = 0.
Let p be a xed vector then using the denition of

and the standard Laplacian vector identity
p

E(x) =
_
D

E p(
y

+
s
2
c
2

) dV (y)
=
_
D

E (
y

y
(p

)
y

y
(

p)) +
s
2
c
2

E p dV
Integrating by parts and adding and subtracting terms and performing a further integration by parts shows
that
p

E(x) =
_
D

y


E
y
(p

) +
y
(

p)
y


E +
s
2
c
2

E p

dV
+
_

E
y
(p

)
y
(

p)

E dA(y)
=
_
D
(

E +s
0

H)
y
(p

) dV (y)
+
_
D
(
s
2
c
2

E p

s
0

H
y
(p

)) dV (y)
+
_

E )
y
(p

)

E v
y
(

p) dA(y)
5.1. THE STRATTON-CHU FORMULA 35
Now using Maxwells equations
p

E(x) =
_

E )
y
(p

)

E
y
(

p) s
0

H p

dA(y).
Using vector calculus we can show that

y
(p) (y) = p
x
()

y
(p) = p
x
.
In addition, since the above equality holds for all p, we arrive at

E(x) =
_

x
[(

E )

] +

E
x

s
0
(

H )

dV (y).
But

= c
2

/s
2
so

E(x) =
_

x
((

E )

) +

E
x

+s
0
c
2
s
2
[
x

x
(

H )

x
(H )

] dA.
Now we need to integrate by parts again to show that
_

x
((

H )

)dA =
_

H
y

dA
=
_
D


H
y

dV =
_
D
s
0

E
y

dV
=
_

s
0

E

dA
where we have used the fact that

E = 0. Hence

E(x) =
x

_

E )

dA+

0
c
2
s

x

x

_

(

H )

dA
This is one version of the Stratton-Chu formula. It is convenient to rearange terms yet more. Denoting by

the surface divergence and using the curl-curl vector identity and the equation for

we have

E(x) =
x

_

E )

dA+
1

0
s
(
x
+
x

x
)
_

dA
=
x

_

E )

dA
1

0
s
s
2
c
2
_

H

dA+
1

0
s

x
_

(

H )

dA
=
x

_

E )


0
s
_

(

H )

dA+
1

0
s

(

H )

dA.
If the evaluation point x is outside D, the right hand side vanishes.
We conclude at last that, if x D, using the traces

E and

H taken from the eld inside D,

E(x) =
0
s

S(

H ) +
1

0
s

S(

(

H ) +
x


S(

E )
36 CHAPTER 5. BACKGROUND ON TIME DOMAIN INTEGRAL EQUATIONS
where

S is the single layer operator given by

S( u) =
1
4
_

e
s|xy|/c
[x y[
u(y) dA(y).
Inverse Laplace transforming we obtain the retarded potential single layer operator
S(u)(x, t) =
1
4

(t [x y[/c )
[x y[
u(y, ) dA(y)d
=
1
4
_

u(y, t [x y[/c)
[x y[
dA(y).
We can perform similar calculations for x D

for the eld outside D to obtain for x R


3

E(x, t) =
0
S
_

t
j
_
+
1

0
S
_
_

t
_
1

j
_
+S(m).
where the surface currents are given as follows: j = [[H ]] and m = [[E ]] where [[]] denotes the jump
across in direction of .
5.2 Integral equations
We can derive several integral equation formulations by choosing j and m appropriately. The one we will
consider is the indirect single layer representation where we choose m = 0. Then
E(x, t) =
0
S
_

t
j
_
+
1

0
S
_
_

t
_
1

j
_
where j is a tangential eld on , and
_

t
_
1

j =
t
_
0

j ds.
Note that
E
t
(t, x) =
0
S
_

2
j
t
2
_
+
1

0
S(

j).
To obtain an integral equation we now let x and dene the tangential projection

T
(a) = (a ).
Unsurprisingly the single layer operator is continuous (for a nice analysis of the continuity properties of
vector potentials, see [12]) and we obtain the problem of nding j such that, on ,

g
t
=
0

T
S
_

2
j
t
2
_
+
1

S(

j).
We denote by V (j) the right hand side of this equation. This is the time domain Electric Field Integral
Equation (EFIE).
For future reference, the corresponding Laplace domain problem is to nd

j such that
s g = s
2

T

S(

j) +
1


S(

j) := V (

j) x .
5.3. MARCHING ON IN TIME 37
The appropriate space for solutions of this equation is j H
1/2
(Div, ) where, for a smooth domain,
H
1/2
(Div, ) =
_
u H
1/2
()
3
[ u = 0 a.e. on ,

u H
1/2
()
_
.
We can easily determine a Galerkin formulation: we seek

j H
1/2
(Div, ) such that
_

s g dA = s
2

0
_

S(

j) dA
1

0
_

S(

j)

dA H
1/2
(Div, ).
Clearly we need g H
1/2
(Curl; ) the dual space of H
1/2
(Div; ) where
H
1/2
(Curl; ) =
_
u H
1/2
()
3
[ u = 0 a.e. on ,

u H
1/2
()
_
.
The analysis of this method in the time domain is again based on energy estimates. Let
E(t) =
1
2
_
R
3

E
t

2
+
1

0
[E[
2
dV
then
dE
dt
=
_
R
3

0
E
t


2
E
t
2
+
1

0
E
E
t
dV
=
_
DD

2
E
t
+
1

0
E
_

E
t
dV
+
_

[[
1

0
E ]]
E
t
dA
=
_

j
t
V (j) dA
so

_
0
e
2t
E(t)dt =

_
0
e
2t
2
_

j
t
V (j) ds dt.
This partial coercivity analysis shows that
1) Test functions need to include
j
t
.
2) Coercivity is found in unusual norms dened by the energy integral.
Completing this analysis to obtain an explicit coercivity result is highly technical, see [28, 2].
5.3 Marching on in time
In practice, on nite time intervals, the e
2t
term is dropped. For suitable function spaces U and V we
seek j U
T
_
0
_

V (j) dA dt =
T
_
0
_


g
t
dAdt V
and we want
U
t
V.
38 CHAPTER 5. BACKGROUND ON TIME DOMAIN INTEGRAL EQUATIONS
For example, in [13], j is approximated by
j
h
(x, t) =
N
T

i=1
N
S

n=1
j
i,n
T
i
(t)
n
(x)
where the basis functions
n
are Raviart-Thomas divergence conforming elements on a triangular mesh of
. In electrical engineering these are also called RWG (Rao-Wilton-Glisson) elements. In time, continuous
piecewise linear elements can be used. Denoting by J
n
the vector of unknowns at t
n
= nt, and testing
the equation by the derivative of the Lagrange elements in time and RWG elements in space we obtain a
convolution type equation. Suppose we know J
1
, , J
n1
then J
n
satises
n

k=0
T
k
J
jk
= F
n
where F
n
is a suitable right hand side vector. The convolution appears due to the retarded potential.
Nevertheless we can solve
T
0
J
n
= F
n

n

k=1
T
k
J
nk
where T
0
is a dense matrix. At this stage algorithmic aspects, such as fast operator evaluation become very
important. In addition preconditioning is also vital. See [13] for more details.
5.4 Homework set 5
Show that

(x, t) satises the Laplace domain Helmholtz problem of your notes when x ,= y.
Given a smooth bounded domain D with boundary , suppose we want to solve the time domain wave
equation outside D

2
u
t
2
= c
2
u in D

, t > 0
u = g on , t > 0
u =
u
t
= 0 at t = 0
where g is a given smooth function with g = 0 at t = 0. Start in the Laplace domain and assume the
Laplace domain solution u solves the Laplace domain Helmholtz equation inside and outside . Use
Greens formula to derive the analogue of the Stratton-Chu formula for the wave equation and hence
the following integral representation of the solution u of the Laplace domain Helmholtz equation:
u(x) =
_

(x y)[[u]](y)

(x y)[[
u

]](y) dA(y) provided x ,


where

y

(x y) = (y)
y

(x y).
Now derive an indirect boundary integral equation as follows. Set

j = [[
u

]] and choose [[u]] = 0 to


obtain
u(x) =
_

(x y)

j(y) dA
Now take limits as x and using the fact that the single layer operator is continuous to write down
the single layer Laplace domain integral equation for the Laplace domain Helmholtz equation.
Now move back to the time domain by inverse Laplace transform to show that j(x, t) satises the
following retarded potential integral equation
_

j(y, t |x y|/c)
4[x y|
dA(y) = g(x, t) on for t > 0
Now starts the fun of proving existence uniqueness etc of the solution (on another day).
5.4. HOMEWORK SET 5 39
Suppose |d| = 1 and p ,= 0 Show that if g is continuously dierentiable
E = pg(x d/c t)
H =
_
0
0
d pg(x d/c t)
_
satises Maxwells equations provided p d = 0
Use matlab to plot
g(s) = exp
_

1
2
2
(s t
p
)
2
_
cos (2f
0
s)
=
3
B
we shall set t
p
= 0 for ease of plotting (in practice we set t
p
= 8). Set f
0
= 120MHz, B = 40MHz.
You will need to use s [10
7
, 10
7
] to get a decent picture. Double B and you should see the pulse
become narrower (wider bandwidth) and double f
0
(you should see more oscillations!).
Use MAPLE (or similar) to compute the Fourier transform of the function g and plot the Fourier
transform noting the location of for transform parameter in the range (2 (f
0
B), 2(f
0
+ B)).
You should see why f
0
is called the center frequency and B the nominal bandwidth. What is the
magnitude of the transform at = 2(f
0
B)?
40 CHAPTER 5. BACKGROUND ON TIME DOMAIN INTEGRAL EQUATIONS
Chapter 6
Convolution Quadrature applied to
the EFIE
Given a bounded domain D with connected complement, we want to nd the solution E = E(x, t) of the
model time domain exterior scattering problem

2
t
2
E +E = 0 in D

= R
3
D for t (0, T)
E = g on := D
E
t
= 0 at t = 0 in D

E = 0 at t = 0 in D

where g is a tangential vector eld (g = E


i
where E
i
is a smooth solution of Maxwells equations
vanishing for t < 0 in the neighborhood of ). In addition, is the unit outward normal to .
For x D

D we proved in the previous chapter that E has the representation

t
E(x, t) =
_
t
0
_

(x y, t )

2
t
2
j(y, ) dA(y) d

_
t
0
_

(x y, t )(

j)(y, ) dA(y) d
and the kernel is given by
(x, t) =
(t [x[/c)
4[x[
Let
T
u = ( u) on ,

denote the surface gradient and

denote the surface divergence.


Letting x and using the tangential component of the eld E together with the time derivative of the
boundary data we obtain the time domain Electric Field Integral Equation

T
_
t
0
_

(x y, t )

2
t
2
j(y, ) dA(y) d

_
t
0
_

(x y, t )(

j)(y, ) dA(y) d = n

t
g
on for 0 < t < T. Unlike for the Helmholtz equation, this is an integro-dierential equation.
6.1 Current methods
Historically time discretization has been a challenge due to stability problems. There have been several
successful solutions. For example:
41
42 CHAPTER 6. CONVOLUTION QUADRATURE APPLIED TO THE EFIE
Space-time Petrov-Galerkin methods
Band limited interpolation and extrapolation
6.1.1 Space-time Petrov-Galerkin methods
This method was sketched at the end of the previous chapter, and is the current state of the art, used very
successfully in practical applications. We use nite elements in space and time (tensor product) to discretize
the problem
See the work of Terrasse [28], Abboud, Michielssen [13],...
Due to the retarded potential, basis functions depend on time through functions with time argument
(t [x y[/c) and so may have support only over part of an integration region. This makes Gaussian
integration rules inaccurate and leads to instability. These integrals must be performed with special
rules that respect the light cone.
Wave encroachment
Integration points
The need to handle integrals accurately suggests a diculty in handling curved patches
6.1.2 Band limited interpolation and extrapolation
This method is due to D. Weile, B. Shanker and E. Michielssen [33]. They assume that the signal has a
maximum angular frequency
0
and use band-limited interpolation functions
(t) =
sin(
0
t)

0
t
sin
_
a
_
_
t
Nt
_
2
1
_
sinh(a)
_
_
t
Nt
_
2
1
to approximate in time (and the usual elements in space). By itself this is not suitable for time-marching.
Future values are predicted using band limited extrapolation. Features of this method include
No problem with integrations since the basis function is smooth.
Extrapolation requires small time steps.
Usually highly accurate.
6.2 Discrete convolution
The approach we shall take is to discretize the convolution using a method due to C. Lubich [23, 24]. We
need to discretize
_
t
0
(t R/c )() d
where R = [x y[.
Introducing a time step t = T/N, N > 0 and t
n
= nt, we seek an approximation of the form
_
tn
0
(t
n
R/c )() d
n

j=1
w
nj
(R/c)
n
where
n
= (t
n
) and the kernels w
j
(R/c) are to be computed.
Goals for this technique are :
6.2. DISCRETE CONVOLUTION 43
Preservation of the composition property of convolutions.
Reliable accuracy even for singular kernels.
Stability for time marching.
6.2.1 Convolution quadrature
Convolution Quadrature (CQ) is a technique to discretize convolutions due to Lubich [23]. It is based on
the Laplace transform

f(s) =
_

0
f(t) exp(st) dt
Recall


( R/c) = exp(sR/c).
Multiplication by s corresponds to time dierentiation.
Consider the discrete ideally sampled function
f(t) =

n=0
f
n
(t nt)
then, setting z = exp(st) we have the z-transform

f(z) = (

f)(ln(z)/t) =

n=0
f
n
z
n
The inversion formula is
f
n
=
1
2i
_
C

f(z)z
n1
dz
where C encloses the origin. The z transform is a standard control engineering technique for converting
analogue lters to digital lters.
Suppose f
0
= 0 and and we dene (Df)
n
= f
n1
(delay) then

Df = z
1

f(z)
(note z =
1
from Lubichs papers).
To transform from analogue to digital, we need to replace s
t
by a discrete counterpart. It turns
out [24] that a sub-class of A-stable schemes are desirable for the wave equation (more precisely, L-stable
A-stable schemes). Candidates include:
Backward Euler : BE:
t

1 z
1
t
BDF2:
t

3 4z
1
+z
2
2t
The derivation of the convolution quadrature (CQ) technique by Lubich can then be described using the
z-transform. As an example we use BE. For any suitable f we choose

f =

f((1 z
1
)/t)
Then if f(t) = (t R/c) we have

f = exp
_
R(1 z
1
)
ct
_
= exp(R/ct)

n=0
1
n!
_
R
ct
_
n
z
n
44 CHAPTER 6. CONVOLUTION QUADRATURE APPLIED TO THE EFIE
Temporal Snapshot
Fix time step.
Plot a function of R/ct.
Spatial Snapshot
Fix spatial location.
Plot a discrete function of time.
Figure 6.1: Here we show plots of w
(0)
n
(R/ct) for the BE scheme. The left panel shows temporal snapshots
xing n and plotting as a function of scaled distance. In the right panel we show spatial snapshots xing
= R/ct and plotting as a discrete function of time.
so for BE
w
(0)
n
=
exp(R/ct)
n!
_
R
ct
_
n
Similarly for s
2
exp(Rs/c) corresponding to the second derivative term gives w
(2)
n
.
The strong form of the semi-discrete problem is to nd j
n
H
1/2
(Div; ), n = 0, 1, 2, , such that
n

j=0
_

T
_

w
(2)
nj
([x y[/c)
4c
2
[x y[
j
j
(y) dA(y)

w
(0)
nj
([x y[/c)
4[x y[
(

j
j
)(y) dA(y)
_
= n g
n
for n = 0, 1, 2, , N.
To allow spatial discretization we use the following weak form: for each n we seek j
n
H
1/2
(Div; )
such that
n

j=0
_

_
w
(2)
nj
([x y[/c)
4c
2
[x y[
j
j
(y) (x) +
w
(0)
nj
([x y[/c)
4[x y[
(

j
j
)(y)(

)(x)
_
dA(y) dA(x)
=
_

n g
n
dA
for all H
1/2
(Div; ) and n = 0, 1, 2, , N.
We now need to discretize in space. We use
mth order Raviart-Thomas elements in H(Div; ) using the basis from [15].
6.3. NUMERICAL EXAMPLES 45
CFIE
f
0
= 120 MHz,
B = 40 MHz,
Figure 6.2: Results for 1m conducting sphere using CFIE with 160 spatial degrees of freedom with polariza-
tion p along the z axis and direction of propagation d along the x-axis. We plot the avergae current density
on the surface as a function of time. Here we used BDF2 and an exact triangulation of the sphere using
spherical patches and quadratic divergence conforming elements.
The lowest order elements are known as RWG elements in the electrical engineering literature [27].
Note that higher order elements on curved surfaces require curved patches to preserve accuracy.
For theoretical aspects of the discretization of the EFIE in the frequency domain see the work of
Bendali [3, 5].
6.3 Numerical Examples
The incident electric eld is of the form
E
inc
(r, t) = pexp
_
_
1
2
2
_
t
r

k
c
t
p
_
2
_
_
cos
_
2f
0
_
t
r

k
c
__
where =
6
2B
, t
p
= 8, and p

k = 0, B is a nominal bandwidth, and f
0
is a center frequency.
The time step is related to the frequency parameters and oversampling rate according to
=
1
2 (f
0
+B) t
We now show several results for dierent scatterers. The sphere is convenient because we can compute the
solution at each frequency by an innite series. In each case we solve the time domain problem, the Fourier
transform the results to get the solution at some desired frequency (e.g. f
0
). Then we can compare the
computed radar cross-section (RCS) from the time domain code with one computed by an integral equation
in frequency domain using the same spatial elements and spatial grid. The dierence between these solutions
gives an indication of time discretization error.
46 CHAPTER 6. CONVOLUTION QUADRATURE APPLIED TO THE EFIE
BDF3 current
RCS for several methods
Figure 6.3: 1m Diameter Conducting Sphere Current and RCS computed by several methods including
unstable(!) BDF3.
Error is in the L
1
norm for the RCS
BE convergence is linear
BDF2 convergence is quadratic
BDF3 convergence is cubic and conditional
The BDF3 kernel was computed using FFT.
Figure 6.4: 1m Diameter Conducting Sphere Convergence
6.3. NUMERICAL EXAMPLES 47
Note that the drawing is not to scale.
1140 spatial unknowns,
f
0
= 0,
B = 400 MHz,


k = x
p = z
Figure 6.5: PEC NASA Almond meshed using at patches and lowest order divergence conforming elements.
Figure 6.6: Current results for the almond. No oversampling factor makes BLIF work.
Figure 6.7: Comparison of RCS for the almond.
48 CHAPTER 6. CONVOLUTION QUADRATURE APPLIED TO THE EFIE
6.4 Convergence
The analysis of CQ rests on understanding the Laplace domain EFIE and spatially discretized EFIE. In the
Laplace domain the EFIE is to nd

j H
1/2
(Div; ) such that
b
s
(

j, ) =
_

n s g dA, H
1/2
(Div; )
where
b
s
(

j, ) =
_

exp(s[x y[/c)
4c
2
[x y[
_
s
2

j(y) (x)+
(

j)(y)(

)(x)
_
dA(y) dA(x)
for s = + i where
0
> 0.
Often s dependent norms are used to analyze the frequency domain problem. But to allow for a simple
interpretation of the results in the time domain we use s independent norms at the expense of extra factors
of s in the estimates.
Dene V (s) : H
1/2
(Div; ) H
1/2
(Curl; ) by
V (s), = b
s
(, ) H
1/2
(Div; )
then by modifying slightly the results of Terrasse [28] we have the following theorem:
Theorem 6.4.1. The sesquilinear form b
s
is continuous and coercive on H
1/2
(Div; ) H
1/2
(Div, ).
In particular
[V (s), s[ C()
1
[s[
4
||
2
H
1/2
(Div;)
.
for all H
1/2
(Div; ).
This theorem is proved by an energy based analysis as we have seen before. From this theorem we can
conclude that
|V (s)
1
| C[s[
5
Applying Lubichs theory [24], assuming g and suciently many of its time derivatives vanish at t = 0;
Theorem 6.4.2. Using BDF2
_
N

n=0
|J
n
J(, nt)|
2
H
1/2
(Div;)
_
2
C(t)
2
|n g|
X
where X = H
8
(0, T; H
1/2
(Curl; )).
Similarly, we obtain rst order convergence for BE.
6.5 Dispersion: Equivalence to semi-discrete scattering problem
Let
t
t
denote the relevant backward dierence operator. Following similar arguments to those in Lubich
[24] for the wave equation we have
Theorem 6.5.1. For smooth compatible data, the solution of the boundary integral equation is equivalent to
solving
(
t
t
)
2
E
n
+E
n
= 0 in D
e
for n = 0, 1, 2, ...
E
n
= g
n
with E
n
= 0 for n 0.
6.5. DISPERSION: EQUIVALENCE TO SEMI-DISCRETE SCATTERING PROBLEM 49
This theorem implies that the CQ method is dispersive and dissipative which is unusual for an integral
equation based method, and a potential drawback. This can be controlled to some extent by using implicit
Runge-Kutta methods which give, for example, fth order in time convergence and very low phase error [31]
As we saw in the second chapter, to analyze dispersion in a PDE method we suppose the semi-discrete
PDE is satised in all space. It then suces to consider the semi discrete wave equation
(
t
t
)
2
u
n
= u
n
Using the BE method
u
n
2u
n1
+u
n2
(t)
2
= u
n
We then seek solutions of the form u
n
= exp(i(k x
t
t
n
)) and arrive at
4 exp(i
t
t)
(t)
2
sin
2
(
t
t/2) = [k[
2
If the method has no dispersion = [k[, however for backward Euler we nd

t
= [k[
1
2
i[k[t
1
2
[k[
3
(t)
2
+...
The method is isotropic (
t
only depends on [k[) but in general dispersive and dissipative.
Several more recent works on CQ for the wave equation have appeared recently including [20, 19, 32].
The analysis presented her is from [8].
50 CHAPTER 6. CONVOLUTION QUADRATURE APPLIED TO THE EFIE
Bibliography
[1] J. L. anmd Y. Chen, Analysis of a time-domain nite element method for 3-D maxwells equations in
dispersive media, Comput. Meth. Appl. Mech. Eng., 195 (2006), pp. 422029.
[2] A. Bachelot and A. Pujols, Equations integrales espace-temps pour le syste`eme de Maxwell, C.R.
Acad. Sc. Paris, Serie I, 314 (1992), pp. 63944.
[3] A. Bendali, Numerical analysis of the exterior boundary value problem for the time harmonic Maxwell
equations by a boundary nite element method. Part ii: The discrete problem, Math. Comput., 43 (1984),
pp. 4768.
[4] S. Brenner and L. Scott, The Mathematical Theory of Finite Element Methods, Springer, New
York, 1994.
[5] A. Buffa, R. Hiptmair, T. von Petersdorff, and C. Schwab, Boundary element methods for
Maxwell transmission problems in Lipschitz domains, Numer. Math., 95 (2003), pp. 45985.
[6] A. Buffa, P. Houston, and I. Perugia, Discontinuous Galerkin computation of the Maxwell eigen-
values on simplicial meshes, J. Comput. Appl. Math., 204 (2007), pp. 31733.
[7] A. Buffa and I. Perugia, Discontinuous galerkin approximation of the Maxwell eigenproblem, SIAM
J. Numer. Anal., 44 (2006), pp. 2198226.
[8] Q. Chen, P. Monk, D. Weile, and X. Wang, Convolution quadrature applied to time domain
electromagnetic scattering. submitted.
[9] P. Ciarlet, The Finite Element Method for Elliptic Problems, vol. 4 of Studies In Mathematics and
Its Applications, North-Holland, New York, 1978.
[10] G. Cohen, Higher-order numerical methods for transient wave equations, Springer, Berlin, 2002.
[11] G. Cohen, P. Joly, J. Roberts, and N. Tordjman, Higher order triangular nite elements with
mass lumping for the wave equation, SIAM J. Numer. Anal., 38 (2001), pp. 204778.
[12] D. Colton and R. Kress, Integral Equation Methods in Scattering Theory, Wiley, New York, 1983.
[13] K. Cools, F. Andriulli, F. Olyslager, and E. Michielssen, Time domain Calderon identities
and their application to the integral equation analysis of scattering by PEC objects Part I: Precondition-
ing, IEEE Trans. Antennas Propagat., 57 (2009), pp. 235264.
[14] M. Costabel, Fundamentals, vol. 1 of Encyclopedia of Computational Mechanics, John Wiley & Sons,
2004, ch. Time-dependent Problems with the Boundary Integral Equation Method.
[15] R. Graglia, D. Wilton, and A. Peterson, Higher order interpolatory vector bases for computa-
tional electromagnetics, IEEE Trans. Antennas Propagat., 45 (1997), pp. 329342.
[16] M. Grote and T. Mitkova, Explicit local time-stepping methods for Maxwells equations, J. Comput.
Appl. Math., 234 (2010), pp. 3283302.
51
52 BIBLIOGRAPHY
[17] M. Grote, A. Schneebeli, and D. Sch otzau, Interior penalty discontinuous Galerkin method for
Maxwells equations:Energy norm error estimates, IMA J. Numer. Anal., 204 (2007), pp. 37586.
[18] , Interior penalty discontinuous Galerkin method for Maxwells equations: Optimal L
2
-norm error
estimates, IMA J. Numer. Anal., 28 (2008), pp. 44068.
[19] W. Hackbusch, W. Kress, and S. Sauter, Sparse convolution quadrature for time domain boundary
integral formulations of the wave equation, IMA J. Numer. Anal., 29 (2009), pp. 15879.
[20] W. Kress and S. Sauter, Numerical treatment of retarded boundary integral equations by sparse panel
clustering, IMA J. Numer. Anal., 28 (2008), pp. 16285.
[21] J. Li, Error analysis for 3-D Maxwells equations in dispersive media, J. Comput. Appl. Math., 188
(2006), pp. 10720.
[22] , Error analysis for fully discrete mixed nite element schemes for 3-D Maxwells equations in
dispersive media, Comput. Meth. Appl. Mech. Eng., 196 (2007), pp. 308194.
[23] C. Lubich, Convolution quadrature and discretized operational calculus. I and II, Numer. Math., 52
(1988), pp. 12945 and 413425.
[24] , On the multistep time discretization of linear initial-boundary value problems and their boundary
integral equations, Numer. Math., 67 (1994), pp. 36589.
[25] T. W. M.Clemens, Transient eddy-current calculation with the FI-method, IEEE Trans. Mag., 35
(1999), pp. 11636.
[26] J. N ed elec, Mixed nite elements in R
3
, Numer. Math., 35 (1980), pp. 31541.
[27] S. Rao, D. Wilton, and A. Glisson, Electromagnetic scattering by surfaces of arbitrary shap, IEEE
Trans. Antennas Propagat., 30 (1982), pp. 40918.
[28] I. Terrasse, Resolution mathematique et numerique des equations de Maxwell instationnaires par une
methode de potentiels retardes, PhD thesis, Ecole Polytechnique, France, 1993.
[29] L. Trefethen, Group velocity in nite dierence schemes, SIAM Rev., 24 (1982), pp. 11336.
[30] J. Van Bladel, Electromagnetic Fields, Hemisphere, New York, 1985.
[31] X. Wang and D. Weile, Implicit Runge-Kutta methods for the discretization of time domain integral
equations. submiited, 2010.
[32] X. Wang, R. Wildman, D. Weile, and P. Monk, A nite dierence delay modeling approach to
the discretization of the time domain integral equations of electromagnetism, IEEE Trans. Antennas
Propagat., 56 (2008), pp. 244252.
[33] D. Weile, G. Pisharody, N.-W. Chen, B. Shanker, and E. Michielssen, A novel scheme for the
solution of the time-domain integral equations of electromagnetics, IEEE Trans. Antennas Propagat.,
52 (2004), pp. 28395.
Appendices
1D Wave Equation Code
function wave1d(N,M,T,sigma)
%
% Solve the wave equation on a 1D domain with zero dirichlet BC
% using leapfrog
%
% N = Number of spatial subintervals so h=1/N
% M = Number of time steps per unit time so dt=1/M
% T = final time
% sigma=conductivity
dt=1/M;
h=1/N;
disp(sprintf(CFL parameter dt/h = %g,dt/h))
%
% Finite difference in time matrix
Ah=makematrix(N);
% Initial condition is u=ix, u_t=0
x=linspace(0,1,N+1);
u0=ix(x);
u0(1)=0;
u0(N+1)=0;
u=u0;
uprev=u0;
plot(x,u);axis([0,1,-1.5,1.5])
Mf(1)=getframe;
unew=zeros(N+1,1);
% Courant parameter
lambda=dt^2/h^2
for j=1:ceil(M*T)
unew(2:N)=(2*u(2:N)-(1-dt*sigma/2)*uprev(2:N)-lambda*Ah*u(2:N))/(1+sigma*dt/2);
uprev=u;
u=unew;
plot(x,u);axis([0,1,-1.5,1.5]);
Mf(j+1)=getframe;
end
%movie(Mf,3)
figure
plot(x,u0,x,u);axis([0,1,-1.5,1.5])
53
54 BIBLIOGRAPHY
function A=makematrix(N)
e = ones(N-1,1);
A = spdiags([-e 2*e -e], -1:1, N-1, N-1);
function y=ix(x)
%
% initial data
y=exp(-80*(x-.5).^2);
2D Wave equation code
function wave2d(N,M,T)
%
% Solve the wave equation on a periodic 1D domain
% using leapfrog
dt=1/M;
h=1/N;
disp(sprintf(CFL parameter dt/h = %g,dt/h))
x=linspace(0,1,N+1);
[X,Y]=meshgrid(x,x);
u0=ic(X,Y);
u=u0;
uprev=u0;
unew=u0;
%mesh(X,Y,u0);
mesh(X,Y,u0);axis(square),colorbar;axis([0,1,0,1,-1,1]);drawnow;pause
%Mf(1)=getframe;
v=zeros(N,1);
for j=1:ceil(M*T)
for r=2:N
unew(r,2:N)=2*u(r,2:N)-uprev(r,2:N)+...
dt^2*(u(r+1,2:N)+u(r,(2:N)+1)+u(r,(2:N)-1)+u(r-1,2:N)-4*u(r,2:N))/h^2;
end
uprev=u;
u=unew;
mesh(X,Y,u);axis(square);colorbar,axis([0,1,0,1,-1,1]);drawnow;%pause
end
%movie(Mf,3)
figure
mesh(X,Y,u);axis(square);axis([0,1,0,1,-1,1]);colorbar
figure
contourf(X,Y,u);axis(square);colorbar
norm(u-u0,fro)/norm(u0,fro)
function y=ic(X,Y)
%y=exp(-80*((X-.5).^2+(Y-0.5).^2));
y=sin(2*pi*X).*sin(2*pi*Y);
BIBLIOGRAPHY 55
DG code
function wave1dDG(N,M,T,alpha)
%
% Solve the wave equation on a 1D domain with periodic BC
% using leapfrog
%
% N = Number of spatial subintervals so h=1/N
% M = Number of time steps per unit time so dt=1/M
% T = final time
dt=1/M;
h=1/N;
disp(sprintf(CFL parameter dt/h = %g,dt/h))
%
% Finite difference in time matrix
[Ah,Mh]=makematrix(N,alpha);
% Initial condition is u=ix, u_t=0
xx=linspace(0,1,N+1);
u0=ix(xx);
x(1)=xx(1);
x(2)=xx(2);
uprev=zeros(2*N,1);
for j=0:N-1
x(2*j+1)=xx(j+1);
x(2*j+2)=xx(j+2);
uprev(2*j+1)=u0(j+1);
uprev(2*j+2)=u0(j+2);
end
u=uprev;
unew=zeros(2*N,1);
figure
for j=1:ceil(M*T)
unew=2*u-uprev-dt^2*(Mh\(Ah*u));
uprev=u;
u=unew;
clf
DGplot(x,u);axis([0,1,-1.5,1.5]);
drawnow
end
figure
plot(xx,u0,r),hold on,DGplot(x,u);hold off;axis([0,1,-1.5,1.5]);
title(Compare initial and final states, they should be equal if T=4)
function [Ah,Mh]=makematrix(N,alpha)
%
% Make the sparse mass and stiffness matrix
%
h=1/N;
ix=zeros(4*3*N,1);
iy=ix;
56 BIBLIOGRAPHY
z=ix;
R=[-1/2/h 1/h-alpha/h; 0 -1/2/h]
S=[alpha/h 0;0 alpha/h]
T=R
M0=[h/3 h/6;h/6 h/3];
%
% This is a very slow way to make the matrix but easy...
Ah=sparse(2*N,2*N);
Mh=sparse(2*N,2*N);
for j=1:N
Ah(2*(j-1)+1:2*j,2*(j-1)+1:2*j)=S;
Mh(2*(j-1)+1:2*j,2*(j-1)+1:2*j)=M0;
if j<N
Ah(2*(j-1)+1:2*j,2*(j-1)+3:2*j+2)=T;
end
if j>1
Ah(2*(j-1)+1:2*j,2*(j-1)-1:2*j-2)=R;
end
end
Ah(1:2,2*N-1:2*N)=R;
Ah(2*N-1:2*N,1:2)=T;
%
% Below is some diagnostic output. It would be too costly to
% compute in a real case and you can remove it without worry.
figure
spy(Ah);title(Sparsity structure of the stiffness matrix)
figure
spy(Mh),title(Sparsity structure of the mass matrix)
function y=ix(x)
y=exp(-80*(x-.5).^2);
function DGplot(x,u)
N=length(x)/2;
hold on
axis([0,1,-1.5,1.5])
for j=0:N-1
plot(x(2*j+1:2*j+2),u(2*j+1:2*j+2))
end
hold off