0% found this document useful (0 votes)
7 views

Selected Topics in Finite+Element+Methods

Uploaded by

aindiywe
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views

Selected Topics in Finite+Element+Methods

Uploaded by

aindiywe
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 187

Selected Topics in Finite Element Methods

Zhiming Chen
Haijun Wu
Institute of Computational Mathematics, Chinese Academy
of Sciences, Beijing, 100080, China.
E-mail address: [email protected]

Department of Mathematics, Nanjing University, Nanjing,


Jiangsu, 210093, China.
E-mail address: [email protected]
Contents

Preface vii

Chapter 1. Variational Formulation of Elliptic Problems 1


1.1. Basic concepts of Sobolev space 1
1.2. Variational formulation 8
1.3. Exercises 11

Chapter 2. Finite Element Methods for Elliptic Equations 13


2.1. Galerkin method for variational problems 13
2.2. The construction of finite element spaces 15
2.3. Computational consideration 21
2.4. Exercises 24

Chapter 3. Convergence Theory of Finite Element Methods 27


3.1. Interpolation theory in Sobolev spaces 27
3.2. The energy error estimate 33
3.3. The L2 error estimate 35
3.4. Exercises 35

Chapter 4. Adaptive Finite Element Methods 37


4.1. An example with singularity 37
4.2. A posteriori error analysis 39
4.3. Adaptive algorithm 45
4.4. Convergence analysis 46
4.5. Exercises 50

Chapter 5. Finite Element Multigrid Methods 51


5.1. The model problem 51
5.2. Iterative methods 52
5.3. The multigrid V-cycle algorithm 55
5.4. The finite element multigrid V-cycle algorithm 61
iii
iv CONTENTS

5.5. The full multigrid and work estimate 62


5.6. The adaptive multigrid method 64
5.7. Exercises 65

Chapter 6. Mixed Finite Element Methods 67


6.1. Abstract framework 67
6.2. The Poisson equation as a mixed problem 72
6.3. The Stokes problem 77
6.4. Exercises 80

Chapter 7. Finite Element Methods for Parabolic Problems 81


7.1. The weak solutions of parabolic equations 81
7.2. The semidiscrete approximation 85
7.3. The fully discrete approximation 89
7.4. A posteriori error analysis 93
7.5. The adaptive algorithm 99
7.6. Exercises 105

Chapter 8. Finite Element Methods for Maxwell Equations 107


8.1. The function space H(curl; Ω) 108
8.2. The curl conforming finite element approximation 115
8.3. Finite element methods for time harmonic Maxwell equations 120
8.4. A posteriori error analysis 123
8.5. Exercises 129

Chapter 9. Multiscale Finite Element Methods for Elliptic Equations 131


9.1. The homogenization result 131
9.2. The multiscale finite element method 135
9.3. The over-sampling multiscale finite element method 140
9.4. Exercises 146

Chapter 10. Implementations 147


10.1. A brief introduction to the MATLAB PDE Toolbox 147
10.2. Codes for Example 4.1—L-shaped domain problem on uniform
meshes 154
10.3. Codes for Example 4.6—L-shaped domain problem on adaptive
meshes 157
10.4. Implementation of the multigrid V-cycle algorithm 159
10.5. Exercises 171
CONTENTS v

Bibliography 173

Index 177
CHAPTER 0

A brief introduction to finite element methods

1. Two-point boundary value problem and weak formulation


Consider the two-point boundary value problem: Given a constant a ≥ 0 and
a function f (x), find u(x) such that
−u00 + au = f (x), 0 < x < 1,
0 (0.1)
u(0) = 0, u (1) = 0.
If u is the solution to (0.1) and v(x) is any (sufficiently regular) function such
that v(0) = 0, then integration by parts yields
Z 1 Z 1
−u00 v dx + auv dx
0 0
Z 1 Z 1
= −u0 (1)v(1) + u0 (0)v(0) + u0 (x)v 0 (x) dx + auv dx
0 0
Z 1
= f v dx.
0
Let us introduce the bilinear form
Z 1
A(u, v) = (u0 v 0 + auv) dx,
0
and define
© ª
V = v ∈ L2 ([0, 1]) : A(v, v) < ∞ and v(0) = 0 .
Then we can say that the solution u to (0.1) is characterized by
Z 1
u∈V such that A(u, v) = f (x)v(x) dx ∀v ∈ V. (0.2)
0

which is called the variational or weak formulation of (0.1).


We remark that the boundary condition u(0) = 0 is called essential as it appears
in the variational formulation explicitly, i.e., in the definition of V . This type of
boundary condition is also called “Dirichlet” boundary condition. The boundary
condition u0 (0) = 0 is called natural as it is incorporated implicitly. This type of
boundary condition is often referred to by the name “Neumann”.
Theorem 1.1. Suppose f ∈ C 0 ([0, 1]) and u ∈ C 2 ([0, 1]) satisfies (0.2). Then
u solves (0.1).
T
Proof. Let v ∈ V C 1 ([0, 1]). Then integration by parts gives
Z 1 Z 1 Z 1
00
f v dx = A(u, v) = −u v dx + auv dx + u0 (1)v(1). (0.3)
0 0 0
1
2 0. A BRIEF INTRODUCTION TO FINITE ELEMENT METHODS

R1 T
Thus, 0 (f + u00 − au)v dx = 0 for all v ∈ V C 1 ([0, 1]) such that v(1) = 0. Let
w = f + u00 − au ∈ C 0 ([0, 1]). If w 6≡ 0, then w(x) is of one sign in some interval
[b, c] ⊂ [0, 1], with b < c. Choose v(x) = (x − b)2 (x − c)2 in [b, c] and v ≡ 0 outside
R1
[b, c]. But then 0 wv dx 6= 0 which is a contradiction. Thus −u00 + au = f . Now
apply (0.3) with v(x) = x to find u0 (1) = 0. So u solves (0.1). ¤

2. Piecewise polynomial spaces – the finite element method


2.1. Meshes. Let Mh be a partition of [0, 1]:

0 = x0 < x1 < x2 < · · · < xn−1 < xn = 1.

The points {xi } are called nodes. Let hi = xi − xi−1 be the length of the i-th
subinterval [xi−1 , xi ]. Define h = max1≤i≤n hi .

2.2. Finite element spaces. We shall approximate the solution u(x) by us-
ing the continuous piecewise linear functions over Mh . Introduce the linear space
of functions
©
Vh = v ∈ C 0 ([0, 1]) : v(0) = 0,
ª (0.4)
v|[xi−1 ,xi ] is a linear polynomial, i = 1, · · · , n .

It is clear that Vh ⊂ V.

2.3. The finite element method. The finite element discretization of (0.2)
reads as:
Z 1
Find uh ∈ Vh such that A(uh , vh ) = f (x)vh (x) dx ∀vh ∈ Vh . (0.5)
0

2.4. A nodal basis. For i = 1, · · · , n, define φi ∈ Vh by the requirement that


φi (xj ) = δij = the Kronecker delta, as shown in Fig. 1:

φi(x) φ (x)
n

0 x1 x xi x 1 0 x1 xi xn−1 1
i−1 i+1

Figure 1. piecewise linear basis function φi .


2. PIECEWISE POLYNOMIAL SPACES – THE FINITE ELEMENT METHOD 3


x−xi−1

 hi , xi−1 ≤ x ≤ xi ,
xi+1 −x
φi = hi+1 , xi < x ≤ xi+1 , 1 ≤ i ≤ n − 1.

 0, x < xi−1 or x > xi+1 ,
½ x−xn−1
hn , xn−1 ≤ x ≤ 1,
φn =
0, x < xn−1 .

For any vh ∈ Vh , let vi be the value of vh at the node xi , i.e.,

vi = vh (xi ), i = 1, 2, · · · , n,

then

vh = v1 φ1 (x) + v2 φ2 (x) + · · · + vn φn (x).

2.5. The finite element equations. Let

uh = u1 φ1 + u2 φ2 + · · · + un φn , u1 , · · · , un ∈ R,

where ui = uh (xi ).
Let vh = φi , i = 1, · · · , n in (0.5), then we obtain an algebraic linear system in
unknowns u1 , u2 , · · · , un :
Z 1
A(φ1 , φi )u1 + A(φ2 , φi )u2 + · · · + A(φn , φi )un = f (x)φi dx,
0 (0.6)
i = 1, · · · , n.

Denote by
Z 1 Z 1
kij = A(φj , φi ) = φ0j φ0i + aφj φi dx, fi = f (x)φi dx,
0 0

and
¡ ¢ ¡ ¢ ¡ ¢
K = kij n×n , F = fi n×1 , U = ui n×1 ,

then (0.6) can be rewritten as:

KU = F (0.7)

Here K is called the stiffness matrix.


It is clear that A(φj , φi ) = 0 if xi and xj are not adjacent to each other.
Therefore K is sparse.
We recall that the Simpson quadrature rule
Z d · ¸
d−c ¡c + d¢
φ(x) dx ' φ(c) + 4φ + φ(d)
c 6 2
4 0. A BRIEF INTRODUCTION TO FINITE ELEMENT METHODS

is accurate for polynomials of degree ≤ 3. To compute A(φj , φi ), we first calculate


the following integrals over the subinterval [xi−1 , xi ]:
Z xi Z xi
1 1
φ0i φ0i dx = 2 dx = h ,
xi−1 xi−1 ih i
Z xi
1
φ0i−1 φ0i−1 dx = ,
xi−1 hi
Z xi Z xi
1 1
φ0i φ0i−1 dx = − 2 dx = − ,
xi−1 xi−1 hi hi
Z xi Z xi ³ ´
x − xi−1 2 hi 4 hi
φi φi dx = dx = (1 + + 0) = ,
xi−1 xi−1 h i 6 4 3
Z xi Z xi ³ ´
xi − x 2 hi
φi−1 φi−1 dx = dx = ,
xi−1 xi−1 h i 3
Z xi Z xi ³
x − xi−1 xi − x ´
´³ hi 4 hi
φi φi−1 dx = dx = (0 + + 0) = . (0.8)
xi−1 xi−1 h i h i 6 4 6
Hence
 R Rx
 xi 1 1
Z 1 
 φ0i φ0i dx + xii+1 φ0i φ0i dx = +
 xi−1 hi hi+1
φ0i φ0i dx = i = 1, · · · , n − 1,
0 
 1

 , i = n,
hn
Z 1 Z xi
1
φ0i φ0i−1 dx = φ0i φ0i−1 dx = − , i = 2, · · · , n,
0 x h i
 i−1
Z 1 
 ih + h i+1
, i = 1, · · · , n − 1,
φi φi dx = 3
 h
0  n , i = n,
3
Z 1
hi
φi φi−1 dx = , i = 2, · · · , n.
0 6

Therefore

 1 1 a
Z 1 Z 1 
 + + (hi + hi+1 ),
 hi hi+1 3
A(φi , φi ) = φ0i φ0i dx + a φi φi dx = i = 1, · · · , n − 1,
0 0 
 1 a

 + hn , i = n,
hn 3
1 a
A(φi , φi−1 ) = A(φi−1 , φi ) = − + hi , i = 2, · · · , n.
hi 6

Combining the above equations and (0.6) yields


 £ a(h +h ) ¤ ¡ ¢


1 2
+ h11 + h12 u1 + ah6 2 − h12 u2 = f1 ,
 ¡
 ahi
3 ¢ £ a(hi +hi+1 ) ¤ ¡ ¢
1
6 − hi ui−1 + 3 + h1i + hi+1
1
ui + ah6i+1 − 1
hi+1 ui+1 = fi

 i = 2, · · · , n − 1,

 ¡ ahn 1
¢ £ ah 1
¤
6 − hn un−1 + 3 + hn un = fn .
n
2. PIECEWISE POLYNOMIAL SPACES – THE FINITE ELEMENT METHOD 5

2.6. The interpolant. Given u ∈ C 0 ([0, 1]), the interpolant uI ∈ Vh of u is


determined by
Xn
uI = u(xi )φi .
i=1
It clear that uI (xi ) = u(xi ), i = 0, 1, · · · , n, and
xi − x x − xi−1
uI (x) = u(xi−1 ) + u(xi ) for x ∈ [xi−1 , xi ].
hi hi
¡ R xi 2 ¢1/2
Denote by τi = [xi−1 , xi ] and by kgkL2 (τi ) = xi−1 g dx .

Theorem 2.1.
1
ku − uI kL2 (τi ) ≤ hi ku0 kL2 (τi ) , (0.9)
π
1
ku − uI kL2 (τi ) ≤ 2 h2i ku00 kL2 (τi ) , (0.10)
π
1
ku0 − u0I kL2 (τi ) ≤ hi ku00 kL2 (τi ) . (0.11)
π
Proof. We only prove (0.9) and leave the others as an exercise. We first
change (0.9) to the reference interval [0, 1]. Let x̂ = (x − xi−1 )/hi and let ê(x̂) =
u(x) − uI (x). Note that ê(0) = ê(1) = 0 and k = u0I is a constant. The inequality
(0.9) is equivalent to
2 1 2 hi 2 1 2
kêkL2 ([0,1]) = ku − uI kL2 (τi ) ≤ 2 ku0 kL2 (τi ) = 2 kê0 + khi kL2 ([0,1]) ,
hi π π
that is
2 1 2 1 2
kêkL2 ([0,1]) ≤ 2 kê0 kL2 ([0,1]) + 2 kkhi kL2 ([0,1]) . (0.12)
π π
© ª
Introduce the space W = w ∈ L2 ([0, 1]) : w0 ∈ L2 ([0, 1]) and w(0) = w(1) = 0 .
Let
2
kw0 kL2 ([0,1])
λ1 = inf R[w] = inf .
w∈W,w6=0 w∈W,w6=0 kwk2 2
L ([0,1])
By variational calculus it is easy to see that R[w] is the Rayleigh quotient of the
following eigenvalue problem:
−w00 = λw, w ∈ W.
Therefore λ1 = π 2 is the smallest eigenvalue of the above problem, and hence (0.12)
holds. This completes the proof of (0.9). ¤

2.7. A priori error estimate. Introduce the energy norm


|||v||| = A(v, v)1/2 .
From the Cauchy inequality,
A(u, v) ≤ |||u||||||v|||.
By taking v = vh ∈ Vh in (0.2) and subtracting it from (0.5), we have the
following fundamental orthogonality
A(u − uh , vh ) = 0 ∀vh ∈ Vh . (0.13)
6 0. A BRIEF INTRODUCTION TO FINITE ELEMENT METHODS

Therefore
|||u − uh |||2 = A(u − uh , u − uh ) = A(u − uh , u − uI ) ≤ |||u − uh ||||||u − uI |||,
It follows from Theorem 2.1 that
" n #1/2
X 2 2
|||u − uh ||| ≤ |||u − uI ||| = (ku0 − u0I kL2 (τi ) + a ku − uI kL2 (τi ) )
i=1
" n ³³ ´2
#1/2
X h ³ h ´4 ´
2 2
≤ ku00 kL2 (τi ) +a ku00 kL2 (τi )
i=1
π π
·³ Z
³ h ´2 ´ 1 ¸1/2
h 00 2
= 1+a (u ) dx .
π π 0
We have proved the following error estimate.
Theorem 2.2.
h³ ³ h ´2 ´1/2
|||u − uh ||| ≤
1+a ku00 kL2 ([0,1]) .
π π
Since the above estimate depends on the unknown solution u, it is called the
a priori error estimate.
2.8. A posteriori error estimates. We will derive error estimates indepen-
dent of the unknown solution u.
Let e = u − uh . Then
A(e, e) = A(u − uh , e − eI )
Z 1 Z 1 Z 1
= f · (e − eI ) dx − u0h (e − eI )0 dx − auh (e − eI ) dx
0 0 0
Z 1 n Z
X xi
= (f − auh )(e − eI ) dx − u0h (e − eI )0 dx
0 i=1 xi−1

Since u0h is constant on each interval (xi−1 , xi ),


Xn Z xi
A(e, e) = (f − auh )(e − eI ) dx
i=1 xi−1

Xn
≤ kf − auh kL2 (τi ) ke − eI kL2 (τi )
i=1
Xn
hi
≤ kf − auh kL2 (τi ) ke0 kL2 (τi ) .
i=1
π
Here we have used Theorem 2.1 to derive the last inequality.
Define the local error estimator on the element τi = [xi−1 , xi ] as follows
1
ηi = hi kf − auh kL2 (τi ) . (0.14)
π
Then à n !1/2 à n !1/2
X X
2 2 0 2
|||e||| ≤ ηi ke k ≤ ηi |||e|||.
i=1 i=1
That is, we have the following a posteriori error estimate.
2. PIECEWISE POLYNOMIAL SPACES – THE FINITE ELEMENT METHOD 7

Theorem 2.3 (Upper bound).


à n !1/2
X
|||u − uh ||| ≤ ηi2 . (0.15)
i=1

Now a question is if the above upper bound overestimates the true error. To
answer this question we introduce the following theorem that gives a lower bound
of the true error.
¡ R xi ¢1/2
Theorem 2.4 (Lower bound). Define |||φ|||τi = xi−1 ((φ0 )2 + aφ2 ) dx . Let
1
R xi 1
(f − auh )i = hi xi−1 (f − auh ) dx and osci = π hi kf − auh − (f − auh )i kL2 (τi ) .
Then √ ´
³ 30 1³ 6ah2i ´ 12
ηi − 1 + osci ≤ 12 + |||u − uh |||τi . (0.16)
5 π 5
Proof. Suppose ψ is differentiable over each τi and continuous on [0, 1]. It is
clear that
Z 1 Xn Z xi
A(e, ψ) = (f − auh )ψ dx − u0h ψ 0 dx (0.17)
0 i=1 xi−1

Define ψi (x) = 4φi−1 (x)φi (x) if x ∈ τi and ψi (x) = 0 otherwise. Choose ψ = αi ψi


such that
Z 1
2
(f − auh )i ψ dx = h2i k(f − auh )i kL2 (τi ) .
0
From (0.8),
h3i (f − auh )i 3 1
αi = R1 = hi2 hi k(f − auh )i kL2 (τi ) .
ψi dx 2
0
Therefore, by simple calculations,

−1 30 √
hi kψkL2 (τi ) = hi k(f − auh )i kL2 (τi ) , kψ 0 kL2 (τi ) = 2 3hi k(f − auh )i kL2 (τi ) .
5
From (0.17),
Z 1 Z xi
2
A(e, ψ) = (f −auh )ψ dx = (f −auh −(f −auh )i )ψ dx+h2i k(f − auh )i kL2 (τi ) .
0 xi−1

We have,
2
h2i k(f − auh )i kL2 (τi ) ≤ |||e|||τi |||ψ|||τi + osci πh−1 i kψkL2 (τi )
³³ ´ √ ´
6ah2i 2 1
π 30
= 12 + |||e|||τi + osci hi k(f − auh )i kL2 (τi ) ,
5 5
which implies
³ √
6ah2i ´ 12 π 30
hi k(f − auh )i kL2 (τi ) ≤ 12 + |||e|||τi + osci
5 5
1
Now the proof is completed by using ηi ≤ π hi k(f − auh )i kL2 (τi ) + osci . ¤

We remark that the term osci is of high order compared to ηi if f and a are
smooth enough on τi .
8 0. A BRIEF INTRODUCTION TO FINITE ELEMENT METHODS

Example 2.5. We solve the following problem by the linear finite element
method.
− u00 + 10000u = 1, 0 < x < 1,
u(0) = u(1) = 0.
The true solution (see Fig. 2) is
µ ¶
1 e100x + e100(1−x)
u= 1− .
10000 1 + e100
If we use the uniform mesh obtained by dividing the interval [0, 1] into 1051 subin-
tervals of equal length, then the error |||u − uh ||| = 2.7438 × 10−5 . On the other
hand, if we use a non-uniform mesh as shown in Fig. 2 which also contains 1051
subintervals, then the error |||u − uh ||| = 1.9939 × 10−6 is smaller than that obtained
by using the uniform mesh.

Figure 2. Example 2.5. The finite element solution and the mesh.

3. Exercises
Exercise 0.1. Prove (0.10) and (0.11).
Exercise 0.2. Let u ∈ V ,°show ° that the interpolant uI ∈ Vh is the best
d °
approximation of u in the norm ° dx · L2 ([0,1]) , that is,
k(u − uI )0 kL2 ([0,1]) = inf k(u − vh )0 kL2 ([0,1]) .
vh ∈Vh

Exercise 0.3. Use Example 2.5 to verify numerically the a posteriori error
estimates in Theorem 2.3 and 2.4.
CHAPTER 1

Variational Formulation of Elliptic Problems

In this chapter we shall introduce the variational formulation of the el-


liptic boundary value problem

Lu = f in Ω, u=0 on ∂Ω, (1.1)

where Ω is a bounded open subset of Rd (d = 1, 2, 3) and u : Ω → R is the


unknown function. Here f : Ω → R is a given function and L denotes the
second-order partial differential operator of the form
∑d ( ) ∑ d
∂ ∂u ∂u
Lu = − aij (x) + bi (x) + c(x)u (1.2)
∂xi ∂xj ∂xi
i,j=1 i=1

for given coefficients aij , bi , c, i, j = 1, 2, · · · , d.


We shall assume the partial differential operator L is uniformly elliptic,
that is, there exists a constant θ > 0 such that

d
aij (x)ξi ξj > θ|ξ|2 for a.e. x ∈ Ω and all ξ ∈ Rd .
i,j=1

1.1. Basic concepts of Sobolev space


Let Ω be an open subset in Rd . We define C0∞ (Ω) to be the linear space
of infinitely differentiable functions with compact support in Ω. Let L1loc (Ω)
be the set of locally integrable functions:
{ }
L1loc (Ω) = f : f ∈ L1 (K) ∀ compact set K ⊂ interior Ω ,

We start with the definition of weak derivatives.

Definition 1.1. Assume f ∈ L1loc (Ω), 1 6 i 6 d, we say gi ∈ L1loc (Ω) is


the weak partial derivative of f with respect to xi in Ω if
∫ ∫
∂φ
f dx = − gi φ dx ∀ φ ∈ C0∞ (Ω).
Ω ∂xi Ω
1
2 1. VARIATIONAL FORMULATION OF ELLIPTIC PROBLEMS

We write
∂f ( ∂f ∂f )T
∂xi f = = gi , i = 1, 2, · · · , d, ∇f = ,··· , .
∂xi ∂x1 ∂xd
Similarly, for a multi-index α = (α1 , α2 , · · · , αd ) ∈ Nd with length |α| =
α1 + α2 + · · · + αd , ∂ α f ∈ L1loc (Ω) is defined by
∫ ∫
|α|
α
∂ f φ dx = (−1) f ∂ α φ dx ∀ φ ∈ C0∞ (Ω),
Ω Ω
where ∂ α = ∂xα11 ∂xα22 · · · ∂xαdd .
Example 1.2. Let d = 1, Ω = (−1, 1), and f (x) = 1 − |x|. The weak
derivative of f is {
1 if x 6 0,
g=
−1 if x > 0.
The weak derivative of g does not exist.
Definition 1.3 (Sobolev space). For a non-negative integer k and a real
p > 1, we define
W k,p (Ω) = {u ∈ Lp (Ω) : ∂ α u ∈ Lp (Ω) for all |α| 6 k}.
The space is a Banach space with the norm
 ( ∑ )1/p

 ∥∂ α u∥pLp (Ω) , 1 6 p < +∞;
∥u∥W k,p (Ω) = |α|6k

 max ∥∂ α u∥L∞ (Ω) , p = +∞.
|α|6k

The closure of C0∞ (Ω) in W k,p (Ω) is denoted by W0k,p (Ω). It is also a Banach
space. When p = 2, we denote
H k (Ω) = W k,2 (Ω), H0k (Ω) = W0k,2 (Ω).
The space H k (Ω) is a Hilbert space when equipped with the inner product
∑ ∫
(u, v)k,Ω = ∂ α u∂ α v dx.
|α|6k Ω

Example 1.4.
(1) Let Ω = (0, 1) and consider the function u = xα . One easily verifies
that u ∈ L2 (Ω) if α > − 12 , u ∈ H 1 (Ω) if α > 21 , and u ∈ H k (Ω) if
α > k − 12 .
(2) Let Ω = {x ∈ R2 : |x| < 1/2} and consider the function f (x) =
log log |x| . Then f ∈ W 1,p (Ω) for p 6 2 but f ̸∈ L∞ (Ω). This
example shows that functions in H 1 (Ω) are neither necessarily con-
tinuous nor bounded.
1.1. BASIC CONCEPTS OF SOBOLEV SPACE 3

Now we consider the regularization of functions in Sobolev space. Let ρ


be a non-negative, real-valued function in C0∞ (Rd ) with the property

ρ(x) dx = 1, supp(ρ) ⊂ {x : |x| 6 1} . (1.3)
Rd

An example of such a function is


{ 1

ρ(x) = Ce |x|2 −1 if |x| < 1, (1.4)


0 if |x| > 1,

where the constant C is so chosen that Rd ρ(x) dx = 1. For ϵ > 0, the
function ρϵ (x) = ϵ−d ρ(x/ϵ) belongs to C0∞ (Rd ) and supp(ρϵ ) ⊂ {x : |x| < ϵ}.
ρϵ is called the mollifier and the convolution

uϵ (x) = (ρϵ ∗ u)(x) = ρϵ (x − y)u(y) dy (1.5)
Rd

is called the regularization of u. Regularization has several important and


useful properties that are summarized in the following lemma.

Lemma 1.1.

(i) If u ∈ L1loc (Rd ), then for every ϵ > 0, uϵ ∈ C ∞ (Rn ) and ∂ α (ρϵ ∗ u) =
(∂ α ρϵ ) ∗ u for each multi-index α;
(ii) If u ∈ C(Rd ), then uε converges uniformly to u on compact subsets
of Rd ;
(iii) If u ∈ Lp (Rd ), 1 6 p < ∞, then uϵ ∈ Lp (Rd ), ∥uϵ ∥Lp (Rd ) 6 ∥u∥Lp (Rd ) ,
and limϵ→0 ∥uϵ − u∥Lp (Rd ) = 0.

Proof. (i) follows directly from (1.5).


(ii) is obvious by observing that

|uε (x) − u(x)| 6 ρϵ (x − y) |u(x) − u(y)| dy
Rd

−d
6 (max ρ)ε |u(x) − u(y)| dy
|y−x|6ε

and that u is uniformly continuous on compact sets.


4 1. VARIATIONAL FORMULATION OF ELLIPTIC PROBLEMS

To show (iii), let p′ ∈ R such that 1/p + 1/p′ = 1. Then by Hölder


inequality
∥uϵ ∥Lp (Rd )
{ ∫ (∫ )p }1/p
6 |u(y)|ρϵ (x − y) dy dx
Rd Rd
{∫ (∫ ) (∫ )p/p′ }1/p
6 |u(y)| ρϵ (x − y) dy ·
p
ρϵ (x − y) dy dx
Rd Rd Rd
{∫ ∫ }1/p
= |u(y)| ρϵ (x − y) dy dx
p
Rd Rd
= ∥u∥Lp (Rd ) . (1.6)
For u ∈ Lp (Rd ) and any δ > 0, we choose a continuous function v with
compact support such that ∥u − v∥Lp (Rd ) 6 δ/3. From (ii), ∥vϵ − v∥Lp (Rd ) 6
δ/3 for ϵ sufficiently small. By the triangle inequality and (1.6),
∥uϵ − u∥Lp (Rd ) 6 ∥uϵ − vϵ ∥Lp (Rd ) + ∥vϵ − v∥Lp (Rd ) + ∥u − v∥Lp (Rd ) 6 δ. (1.7)
This completes the proof of (iii). 
In this book, a domain is referred to an open and connected set. The
following lemma will be useful in proving the Poincaré-Friedrichs inequality.
Lemma 1.2. Let Ω be a domain, u ∈ W 1,p (Ω), 1 6 p 6 ∞, and ∇u = 0
a.e. on Ω, then u is constant on Ω.
Proof. For any bounded subdomain K of Ω and ϵ > 0, let Kϵ be the
ϵ-neighborhood of K, that is, Kϵ is the union of all balls B(x, ϵ), x ∈ K. Let
u be extended to be zero outside Ω and let uϵ = u ∗ ρϵ . If Kϵ ⊂ Ω for some
ϵ > 0, then ∇uϵ = (∇u) ∗ ρϵ = 0 in K. Since uϵ is smooth, we deduce that
uϵ is constant in K. On the other hand, by Lemma 1.1, uϵ → u in L1 (K).
Thus u is constant in K. This completes the proof. 
Theorem 1.5 (Properties of weak derivatives). Assume 1 6 p < +∞.
(i) (Product rule) If f, g ∈ W 1,p (Ω) ∩ L∞ (Ω), then f g ∈ W 1,p (Ω) and
∂(f g) ∂f ∂g
= g+f a.e. in Ω, i = 1, 2, · · · , d;
∂xi ∂xi ∂xi
(ii) (Chain rule) If f ∈ W 1,p (Ω) and F ∈ C 1 (R), F ′ ∈ L∞ (R), then
F (f ) ∈ W 1,p (Ω) and
∂F (f ) ∂f
= F ′ (f ) a.e. in Ω, i = 1, 2, · · · , d;
∂xi ∂xi
1.1. BASIC CONCEPTS OF SOBOLEV SPACE 5

A H
A  HH
 HH HH
A  r H Ω
A HH
y
HH
 H r
A   H x HH
AA  HH
Q(x, r) ∂Ω

Figure 1. The domain with a Lipschitz boundary

(iii) If f ∈ W 1,p (Ω) and F is piecewise smooth on R with F ′ ∈ L∞ (R),


then F (f ) ∈ W 1,p (Ω). Furthermore, if L is the set of all corner
points of F , we have, for i = 1, 2, · · · , d,
{
∂F (f ) F ′ (f ) ∂x
∂f
if f (x) ̸∈ L,
= i
∂xi 0 if f (x) ∈ L.
In order to introduce further properties of Sobolev spaces, we introduce
the following condition on the boundary of the domain.
Definition 1.6 (Lipschitz domain). We say that a domain Ω has a Lip-
schitz boundary ∂Ω if for each point x ∈ ∂Ω there exist r > 0 and a Lipschitz
mapping φ : Rd−1 → R such that — upon rotating and relabeling the coor-
dinate axes if necessary — we have
Ω ∩ Q(x, r) = {y : φ(y1 , · · · , yd−1 ) < yd } ∩ Q(x, r),
where Q(x, r) = {y : |yi − xi | < r, i = 1, 2, · · · , d}. We call Ω a Lipschitz
domain if it has a Lipschitz boundary.
Theorem 1.7. Let Ω be a Lipschitz domain in Rd .
(i) Let D(Ω̄) be the set of all functions φ|Ω , φ ∈ C0∞ (Rd ). Then D(Ω̄) is
dense in W k,p (Ω) for all integers k > 0 and real p with 1 6 p < ∞;
(ii) Let u ∈ W k,p (Ω) and let u e denote its extension by zero outside Ω.
e ∈ W (R ), for k > 1, 1 6 p < ∞, then u ∈ W0k,p (Ω);
If u k,p d

(iii) If in addition Ω is bounded and k > 1, 1 6 p 6 ∞, there exists a


continuous linear extension operator E from W k,p (Ω) to W k,p (Rd )
such that Eu = u in Ω.
The following theorem plays an important role in the application of
Sobolev spaces.
Theorem 1.8 (Sobolev Imbedding Theorem). Let Ω ⊂ Rd be a bounded
Lipschitz domain and 1 6 p 6 ∞. Then
6 1. VARIATIONAL FORMULATION OF ELLIPTIC PROBLEMS

(i) If 0 6 k < d/p, the space W k,p (Ω) is continuously imbedded in



Lq (Ω) with q = dp/(d − kp) and compactly imbedded in Lq (Ω) for
any 1 6 q ′ < q;
(ii) If k = d/p, the space W k,p (Ω) is compactly imbedded in Lq (Ω) for
any 1 6 q < ∞;
(iii) If 0 6 m < k − dp < m + 1, the space W k,p (Ω) is continuously
imbedded in C m,α (Ω̄) for α = k − dp − m, and compactly imbedded
in C m,β (Ω̄) for all 0 6 β < α.

Example 1.9. H 1 (Ω) is continuously imbedded in C 0,1/2 (Ω̄) for d = 1,


in Lq (Ω), 1 6 q < ∞, for d = 2, and in L6 (Ω) for d = 3.

Theorem 1.10 (Poincaré-Friedrichs Inequality). Let Ω ⊂ Rd be a bounded


Lipschitz domain and 1 6 p 6 ∞. Then
∥u∥Lp (Ω) 6 Cp ∥∇u∥Lp (Ω) ∀u ∈ W01,p (Ω),
∥u − uΩ ∥Lp (Ω) 6 Cp ∥∇u∥Lp (Ω) ∀u ∈ W 1,p (Ω),
1

where uΩ = |Ω| Ω u(x) dx.

Proof. We only give the proof of the first inequality. Assume it is false.
Then there exists a sequence {un } ⊂ W01,p (Ω) such that
1
∥un ∥Lp (Ω) = 1, ∥∇un ∥Lp (Ω) 6 .
n
By the compactness imbedding theorem, there exists a subsequence (still
denoted by) un and a function u ∈ Lp (Ω) such that un → u in Lp (Ω). By
the completeness of Lp (Ω) we know that ∇un → 0 in Lp (Ω)d . Thus, by the
definition of weak derivative, ∇u = 0, which implies, by Lemma 1.2, that
u = 0. This contradicts the fact that ∥u∥Lp (Ω) = 1. 

Next we study the trace of functions in W k,p for which we first introduce
the Sobolev spaces of non-integer order k. There are several definitions of
fractional Sobolev spaces which unfortunately are not equivalent. Here we
shall use the following one.

Definition 1.11 (Fractional Sobolev space). For two real numbers s, p


with p > 1 and s = k + σ where σ ∈ (0, 1). We define W s,p (Ω) when p < ∞
as the set of all functions u ∈ W k,p (Ω) such that
∫ ∫
|∂ α u(x) − ∂ α u(y)|p
dx dy < +∞ ∀|α| = k.
Ω Ω |x − y|d+σp
1.1. BASIC CONCEPTS OF SOBOLEV SPACE 7

Likewise, when p = ∞, W s,∞ (Ω) is the set of all functions u ∈ W k,∞ (Ω) such
that
|∂ α u(x) − ∂ α u(y)|
max ess sup < ∞ ∀|α| = k.
|α|=k x,y∈Ω,x̸=y |x − y|σ
W s,p (Ω) when p < ∞ is a Banach space with the norm
 1/p
 ∑ ∫ ∫ 
|∂ u(x) − ∂ u(y)|
α α p
∥u∥W s,p (Ω) = ∥u∥pW k,p (Ω) + dx dy
 Ω Ω |x − y|d+σp 
|α|=k

with the obvious modification when p = ∞.


The closure of C0∞ (Ω) in W s,p (Ω) is denoted by W0s,p (Ω). It is also a
Banach space. When p = 2, we denote H s (Ω) = W s,2 (Ω) and H0s (Ω) =
W0s,2 (Ω).

We remark that the statement of Sobolev Imbedding Theorem 1.8 is valid


for fractional Sobolev spaces. The density result and the extension result in
Theorem 1.7 are valid as well for fractional Sobolev spaces when s > 0.
Now we examine the boundary values of functions in W s,p (Ω). The frac-
tional Sobolev space W s,p (Γ) on the boundary Γ of Ω can be defined by using
the atlas of the boundary Γ and using the definition of fractional Sobolev
space in Definition 1.6 locally. As we are mostly interested in the case when
s < 1 we make use of the following equivalent definition of Sobolev space on
the boundary.

Definition 1.12 (Sobolev space on the boundary). Let Ω be a bounded


Lipschitz domain in Rd with boundary Γ. Let s, p be two real numbers with
0 6 s < 1 and 1 6 p < ∞. We define W s,p (Γ) as the set of all functions
u ∈ Lp (Ω) such that
∫ ∫
|u(x) − u(y)|p
ds(x) ds(y) < ∞.
Γ Γ |x − y|
d−1+sp

W s,p (Γ) is a Banach space with the norm


{ ∫ ∫ }1/p
p |u(x) − u(y)|p
∥u∥W s,p (Γ) = ∥u∥Lp (Γ) + ds(x) ds(y) .
Γ Γ |x − y|
d−1+sp

As usual, when p = 2, H s (Γ) = W s,2 (Γ).

We know that if u is continuous on Ω̄ then its restriction to the boundary


∂Ω is well-defined and continuous. If however, u is a function in some Sobolev
space, the restriction u|∂Ω may not be defined in a pointwise sense. To
8 1. VARIATIONAL FORMULATION OF ELLIPTIC PROBLEMS

interpret boundary values of Sobolev functions properly, we introduce the


following trace theorem for Sobolev spaces.

Theorem 1.13 (Trace Theorem). Let Ω be a bounded Lipschitz domain


with boundary Γ, 1 6 p < ∞, and 1/p < s 6 1.
(i) There exists a bounded linear mapping
γ0 : W s,p (Ω) onto W s−1/p,p (Γ)
such that γ0 (u) = u on Γ for all u ∈ W s,p (Ω) ∩ C(Ω̄);
(ii) For all v ∈ C 1 (Ω̄) and u ∈ W 1,p (Ω),
∫ ∫ ∫
∂v ∂u
u dx = − v dx + γ0 (u) v ni ds,
Ω ∂xi Ω ∂xi Γ
where ni denotes the i-th component of the unit outward normal to
Γ;
(iii) W01,p (Ω) = {u ∈ W 1,p (Ω) : γ0 (u) = 0}.
(iv) γ0 has a continuous right inverse, that is, there exists a constant C
such that, ∀g ∈ W s−1/p,p (Γ), there exists ug ∈ W s,p (Ω) satisfying
γ0 (ug ) = g and ∥ug ∥W s,p (Ω) 6 C ∥g∥W s−1/p,p (Γ) .

γ0 (u) is called the trace of u on the boundary Γ = ∂Ω. Noting that


γ0 is surjective and the property (iv) is a consequence of (i) and the open
mapping theorem. The function ug is said to be a lifting of g in W s,p (Ω). In
what follows, whenever no confusion can arise, we write u instead of γ0 (u)
on boundaries.

1.2. Variational formulation


We assume f ∈ L2 (Ω) and the coefficients in (1.2) satisfies aij , bi , c ∈
L∞ (Ω), i, j = 1, 2, · · · , d.
Assuming for the moment the solution u is a smooth function, we multiply
Lu = f in (1.1) by a smooth function φ ∈ C0∞ (Ω), and integrate over Ω, to
find
 
∫ ∑d ∑
d ∫
 ∂u ∂φ ∂u 
aij + bi φ + cuφ dx = f φ dx, (1.8)
Ω ∂xj ∂xi ∂xi Ω
i,j=1 i=1

where we have used the integration by parts formula in Theorem 1.13 in the
first term on the left hand side. There are no boundary terms since φ = 0 on
∂Ω. By the density argument we deduce that (1.8) is valid for any φ ∈ H01 (Ω),
and the resulting equation makes sense if u ∈ H01 (Ω). We choose the space
1.2. VARIATIONAL FORMULATION 9

H01 (Ω) to incorporate the boundary condition from (1.1) that “u = 0” on


∂Ω. This motivates us to define the bilinear form a : H01 (Ω) × H01 (Ω) → R
as follows
∫ (∑ )
∂u ∂φ ∑ ∂u
d d
a(u, φ) = aij + bi φ + cuφ dx.
Ω ∂xj ∂xi ∂xi
i,j=1 i=1

Definition 1.14. u ∈ H01 (Ω) ia called a weak solution of the boundary


value problem (1.1) if
a(u, φ) = (f, φ) ∀ φ ∈ H01 (Ω),
where (·, ·) denotes the inner product on L2 (Ω).

More generally, we can consider the boundary value problem (1.1) for
f ∈ H −1 (Ω), the dual space of H01 (Ω). For example, f is defined by
∫ ( ∑ ∂φ )
d
⟨f, φ⟩ = f0 φ + fi dx, ∀ φ ∈ H01 (Ω),
Ω ∂xi
i=1

where fi ∈ = 0, 1, · · · , d, and ⟨·, ·⟩ denotes the duality pairing of


L2 (Ω), i
−1 1
H (Ω) and H0 (Ω).
Definition 1.15. Suppose f ∈ H −1 (Ω). u ∈ H01 (Ω) is called a weak
solution of (1.1) if
a(u, φ) = ⟨f, φ⟩ ∀ φ ∈ H01 (Ω).

The inhomogeneous boundary-value problem


Lu = f in Ω, u=g on ∂Ω,
can be transformed to the homogeneous one if g ∈ H 1/2 (Γ) is the trace of
some function w ∈ H 1 (Ω). Then ũ = u − w ∈ H01 (Ω) is a weak solution of
the problem
Lũ = f˜ in Ω, ũ = 0 on ∂Ω,
where f˜ = f − Lw ∈ H −1 (Ω).
Theorem 1.16 (Lax-Milgram Lemma). Assume that V is a real Hilbert
space, with norm ∥ · ∥ and inner product (·, ·). Assume that a : V × V → R
is a bilinear form, for which there exist constants α, β > 0 such that
|a(u, v)| 6 β∥u∥∥v∥ ∀ u, v ∈ V, (1.9)
and
a(v, v) > α∥v∥2 ∀ v ∈ V. (1.10)
10 1. VARIATIONAL FORMULATION OF ELLIPTIC PROBLEMS

Let f : V → R be a bounded linear functional on V . Then there exists a


unique element u ∈ V such that
a(u, v) = ⟨f, v⟩ ∀ v ∈ V. (1.11)

The bilinear form a is called V -elliptic (or V -coercive) if it satisfies (1.10).


The Lax-Milgram lemma is a consequence of the following generalized Lax-
Milgram lemma.

Theorem 1.17 (Generalized Lax-Milgram Lemma). Let U and V be real


Hilbert spaces and let a(·, ·) denote a bounded bilinear form on U × V . Con-
sider the variational problem: Find u ∈ U such that
a(u, v) = ⟨f, v⟩ ∀v ∈ V. (1.12)
(1.12) attains a unique solution u ∈ U for any f ∈ V ′ if and only if a(u, v)
satisfies the following two conditions:
(i) There exists a constant α such that
inf sup |a(u, v)| > α > 0;
u∈U,∥u∥U =1 v∈V,∥v∥ =1
V

(ii) For every v ∈ V, v ̸= 0,


sup |a(u, v)| > 0.
u∈U

(i) is called the inf-sup condition of the bilinear form.

Proof. Denote by (·, ·) the inner product on V. From the Riesz repre-
sentation theorem, there exist two bounded linear operators J : U → V and
K : V ′ → V such that
(Ju, v) = a(u, v) ∀u ∈ U, v ∈ V,
(Kf, v) = ⟨f, v⟩ ∀v ∈ V, f ∈ V ′ .
Then the problem (1.12) is equivalent to: Find u ∈ U such that
Ju = Kf (1.13)
Since
sup |a(u, v)| = sup |(Ju, v)| = ∥Ju∥V , (1.14)
v∈V,∥v∥V =1 v∈V,∥v∥V =1

(i) is equivalent to: there exists α > 0 such that


inf ∥Ju∥V > α. (1.15)
u∈U,∥u∥U =1
1.3. EXERCISES 11

If (i) and (ii) hold, then from (1.15) J is injective and R(J), the range of
J, is closed. It follows from (ii) that for any v ∈ V, v ̸= 0,
sup |a(u, v)| = sup |(Ju, v)| > 0
u∈U u∈U

which implies that R(J)⊥ = {0}, that is, J is surjective. Therefore, J is


invertible and hence (1.13) attains a unique solution in U for any f ∈ V ′ .
It remains to prove the necessity. If (1.12) attains a unique solution in U
for any f ∈ V ′ , then J is invertible and the open mapping theorem implies
that J −1 is continuous. There exist α > 0 such that
1
J −1 v U 6 ∥v∥V or ∥Ju∥V > α ∥u∥U .
α
From (1.14), (i) holds. (ii) is a consequence of R(J) = V. This completes the
proof of the theorem. 

Remark 1.18. The Generalized Lax-Milgram Lemma is still valid if U


and V are complex Hilbert spaces and a(·, ·) is a bounded sesquilinear form.

Corollary 1.19. If L is uniformly elliptic, bi = 0 for i = 1, · · · , d, and


c(x) > 0. Suppose f ∈ H −1 (Ω). Then the boundary value problem Lu = f
in Ω has a unique weak solution u ∈ H01 (Ω).

Theorem 1.20 (Regularity). Assume that aij ∈ C 1 (Ω̄), bi , c ∈ L∞ (Ω), i, j


= 1, · · · , d, and f ∈ L2 (Ω). Suppose that u ∈ H01 (Ω) is the weak solution of
the problem Lu = f in Ω. Assume that ∂Ω is smooth (C 1,1 ) or Ω is convex.
Then u ∈ H 2 (Ω) satisfies the estimate
∥u∥H 2 (Ω) 6 C(∥f ∥L2 (Ω) + ∥u∥L2 (Ω) ).

Bibliographic notes. The standard reference on Sobolev spaces is


Adams [1]. Here we mainly follow the development in Evans [32] and Girault
and Ravairt [34]. Further results on regularity theory for elliptic equations
can be found in Gilbarg and Trudinger [33] for smooth domains and in Gris-
vard [35], Dauge [25] for non-smooth domains. The generalized Lax-Milgram
Theorem 1.17 is due to Nečas [45].

1.3. Exercises
Exercise 1.1. If Ω is an open subset in Rd and K is a compact subset
of Ω, show that there exists a function φ ∈ C0∞ (Rd ) such that supp(φ) ⊂ Ω
and φ = 1 in K.
12 1. VARIATIONAL FORMULATION OF ELLIPTIC PROBLEMS

Exercise 1.2 (Partition of unity). Let {Oi }, i = 1, · · · , k, be a family


of open sets in Rd that covers a compact set K. Then there exists a family

of functions φi > 0, φi ∈ C0∞ (Oi ), and ki=1 φi = 1 in K. {φi } is called a
partition of unity subordinate to {Oi }.
Exercise 1.3. Let Ω be a bounded domain with Lipschitz boundary.
For any g ∈ H 1/2 (∂Ω), let ug ∈ H 1 (Ω) be the weak solution of the following
Dirichlet boundary value problem
−∆u = 0 in Ω, u=g on ∂Ω.
Show that there exist constants C1 and C2 such that
C1 ∥g∥H 1/2 (∂Ω) 6 ∥ug ∥H 1 (Ω) 6 C2 ∥g∥H 1/2 (∂Ω) .

Exercise 1.4. Let Ω be a bounded domain in Rd . A function u ∈ H 1 (Ω)


is a weak solution of Neumann problem
∂u
−△u = f in Ω, =0 on ∂Ω
∂ν
if ∫ ∫
∇u · ∇v dx = f v dx ∀ v ∈ H 1 (Ω). (1.16)
Ω Ω ∫
Suppose f ∈ L2 (Ω). Prove (1.16) has a weak solution if and only if Ω f dx =
0.
Exercise 1.5. Let Ω be a bounded domain in Rd . A function u ∈
H02 (Ω)is a weak solution of the homogeneous boundary value problem for
the biharmonic equation
∂u
△2 u = f in Ω, u= =0 on ∂Ω
∂ν
provided ∫ ∫
△u · △v dx = f v dx ∀ v ∈ H02 (Ω). (1.17)
Ω Ω
Suppose f ∈ L2 (Ω). Prove that there exists a unique weak solution of (1.17).
CHAPTER 2

Finite Element Methods for Elliptic Equations

2.1. Galerkin method for variational problems


Let V be a real Hilbert space with the norm ∥ · ∥V and inner product
(·, ·)V . Assume that the bilinear form a : V × V → R satisfies (1.9) and
(1.10), i.e. a is bounded and V -elliptic. Let f : V → R be a bounded linear
functional on V . We consider the variational problem to find u ∈ V such
that
a(u, v) = ⟨f, v⟩ ∀ v ∈ V, (2.1)

where ⟨·, ·⟩ denotes the duality pairing between V and V ′ .


Let Vh be a subspace of V which is finite dimensional, h stands for a
discretization parameter. The Galerkin method of the variation problem is
then to find uh ∈ Vh such that

a(uh , vh ) = ⟨f, vh ⟩ ∀ v ∈ Vh . (2.2)

Suppose that {ϕ1 , · · · , ϕN } is a basis for Vh . Then (2.2) is equivalent to

a(uh , ϕi ) = ⟨f, ϕi ⟩, i = 1, · · · , N.

Writing uh in the form



N
uh = zj ϕj , (2.3)
j=1

we are led to the system of equations


N
a(ϕj , ϕi )zj = ⟨f, ϕi ⟩, i = 1, · · · , N,
j=1

which we can write in the matrix-vector form as

Az = b,
13
14 2. FINITE ELEMENT METHODS FOR ELLIPTIC EQUATIONS

where Aij = a(ϕj , ϕi ) and bi = ⟨f, ϕi ⟩. Since a is V -elliptic, the matrix A is


positive definite:

N (∑
N ∑
N )
z T Az = zi Aij zj = a zj ϕj , zi ϕi = a(uh , uh ) > α∥uh ∥2V ,
i,j=1 j=1 i=1

and so z T Az > 0, for any z ̸= 0. The matrix A is called the stiffness matrix .

Theorem 2.1 (Céa Lemma). Suppose the bilinear form a(·, ·) satisfies
(1.9) and (1.10), i.e., a is bounded and V-elliptic. Suppose u and uh are
the solutions of the variational problem (2.1) and its Galerkin approximation
(2.2), respectively. Then
β
∥u − uh ∥V 6 inf ∥u − vh ∥V . (2.4)
α vh ∈Vh
Proof. Since Vh ⊂ V, by the definition of u and uh ,
a(u, vh ) = ⟨f, vh ⟩ ∀ vh ∈ Vh ,
a(uh , vh ) = ⟨f, vh ⟩ ∀ vh ∈ Vh .
It follows by subtraction we obtain the following Galerkin orthogonality
a(u − uh , vh ) = 0 ∀ vh ∈ Vh , (2.5)
which implies that a(u − uh , vh − uh ) = 0. Thus
α∥u − uh ∥2V 6 a(u − uh , u − uh ) = a(u − uh , u − vh )
6 β∥u − uh ∥V ∥u − vh ∥V .
After dividing by ∥u − uh ∥V , the assertion is established. 

According to Céa Lemma, the accuracy of a numerical solution depends


essentially on choosing function spaces which are capable of approximating
the solution u well. For polynomials, the order of approximation is deter-
mined by the smoothness of the solution. However, for boundary-value prob-
lems, the smoothness of the solution typically decreases as we approach the
boundary. Thus, it may not be advantageous to insist on a high accuracy by
forcing the degree of the polynomials to be high.
There are several methods related.
Rayleigh-Ritz method. When the bilinear form a : V ×V → R is sym-
metric, then the variational problem (2.1) is equivalent to the minimization
problem
1
min J(v), J(v) := a(v, v) − ⟨f, v⟩. (2.6)
v∈V 2
2.2. THE CONSTRUCTION OF FINITE ELEMENT SPACES 15

The Rayleigh-Ritz method is then to solve (2.6) by solving uh ∈ Vh as


min J(vh ).
vh ∈Vh

Usually one finds uh as in (2.3) by solving the equation (∂/∂zi )J( N
j=1 zj ϕj )
= 0.
Galerkin method. The weak equation (2.2) is solved for problems
where the bilinear form is not necessarily symmetric. If the weak equations
arise from a variational problem with a positive quadratic form, then often
the term Ritz-Galerkin method is used.
Petrov-Galerkin method. We seek uh ∈ Vh with
a(uh , v) = ⟨f, v⟩ ∀ v ∈ Sh ,
where Vh is termed the trial space, Sh is termed the test space, and the two
spaces Vh and Sh need not be the same but have the same dimension.
Finite element method. The finite element method can be regarded
as a special kind of Galerkin method that uses piecewise polynomials to
construct discrete approximating function spaces.

2.2. The construction of finite element spaces


In practice, the spaces used in finite element methods over which we
solve the variational problems are called finite element spaces. We partition
the given domain Ω into (finitely many) subdomains, and consider functions
which reduce to a polynomial on each subdomain (element). For planar prob-
lems, the elements can be triangles or quadrilaterals. For three-dimensional
problems, we can use tetrahedrons, hexahedrons, etc. For simplicity, we re-
strict our discussion primarily to the piecewise polynomial approximations
over triangular (2D) or tetrahedral (3D) elements.

2.2.1. The finite element.

Definition 2.2. A finite element is a triple (K, P, N ) with the following


properties:
(i) K ⊂ Rd is a closed set with piecewise smooth boundary (the ele-
ment);
(ii) P is a finite-dimensional space of functions on K (the space func-
tions);
(iii) N = {N1 , · · · , Nn } is a basis for P ′ (the nodal variables or degrees
of freedom).
16 2. FINITE ELEMENT METHODS FOR ELLIPTIC EQUATIONS

Definition 2.3. Let (K, P, N ) be a finite element, and let {ψ1 , ψ2 , · · · ,


ψn } be the basis for P dual to N , that is, Ni (ψj ) = δij . It is called the nodal
basis for P.

It is clear that the following expansion holds for any v ∈ P:



n
v(x) = Ni (v)ψi (x).
i=1

Denote by Pk the set of polynomials of degree 6 k.

Example 2.4 (The linear element). Let K be a simplex in Rd with


vertices Ai (i = 1, · · · , d + 1), P = P1 , and N = {N1 , · · · , Nd+1 }, where
Ni (v) = v(Ai ) for any v ∈ P. Then (K, P, N ) is a finite element.

The nodal basis {λ1 (x), · · · , λd+1 (x)} of the linear element satisfies

λi (x) is linear and λi (Aj ) = δij , i, j = 1, · · · , d + 1. (2.7)

Given a simplex K in Rd it is often convenient to consider the associated


barycentric coordinates defined as the ordered (d+1)-tuple (λ1 (x), λ2 (x), · · · ,
λd+1 (x)), where λi (x) satisfies (2.7). Let αi be the Cartesian coordinates of
the vertex Ai . We have the following relationship between the Cartesian
coordinates and the barycentric coordinates:

d+1 ∑
d+1
λi (x) = 1 and x = αi λi (x). (2.8)
i=1 i=1

The relationship is obvious since any two linear functions are equal if they
coincide at the vertices Ai , i = 1, · · · , d + 1. Note that the barycenter of K
has barycentric coordinates ( d+11
, · · · , d+1
1
).

A3
A
A
A
rA A
A
A
A1 A2

Figure 1. The triangle and the barycentric coordinates.


2.2. THE CONSTRUCTION OF FINITE ELEMENT SPACES 17

Next we consider a geometric interpretation of the barycentric coordi-


nates in dimension 2. Let the coordinates of Ai be (ai , bi ) and let
a1 b1 1
1
S= a2 b2 1
2 a3 b3 1
be the directional area of the triangle K. S > 0 if A1 , A2 , A3 is ordered
counter-clockwise, S < 0 otherwise. For any point A(x1 , x2 ) in the element
K (see Figure 1), by connecting A with three vertices of K, we obtain three
triangles. It is clear that λi (A) is the ratio of areas
|△AA2 A3 | |△A1 AA3 | |△A1 A3 A|
λ1 = , λ2 = , λ3 = .
|△A1 A2 A3 | |△A1 A2 A3 | |△A1 A2 A3 |
That is
x1 x2 1 a1 b1 1 a1 b1 1
1 1 1
λ1 = a2 b2 1 , λ2 = x1 x2 1 , λ3 = a2 b2 1 .(2.9)
2S a3 b3 1 2S a3 b3 1 2S x1 x2 1
Example 2.5 (The Argyris element). Let K be a triangle in R2 , P = P5
of dimension 21, N = the 21 degrees of freedom shown in Figure 2. “•”
denotes the evaluation at that point, the inner circle denotes the evaluation
of the gradient at the center, the outer circle denotes the evaluation of three
second derivatives at the center, and the arrows represent the evaluation of
the normal derivatives at three midpoints.
rm
h A3
@
@
@
@
I
@ @ 
M2 M@
1
@
@
M3 @
rh
m @rh
m
A1 ? A2
Figure 2. The degrees of freedom of the Argyris element

We claim that N = {N1 , N2 , · · · , N21 } determines P5 . Suppose that for


some P ∈ P5 , Ni (P ) = 0, for i = 1, 2, · · · , 21. All we need is to prove P ≡ 0.
From (2.8), P is a fifth order polynomial in λ1 and λ2 . Since the edge A2 A3
is on the line λ1 = 0, the restriction of P to A2 A3 is a fifth order polynomial
in λ2 . Moreover,
∂P ∂2P
P (Aj ) = (Aj ) = (Aj ) = 0, j = 2, 3.
∂λ2 ∂λ22
18 2. FINITE ELEMENT METHODS FOR ELLIPTIC EQUATIONS

Therefore
P A2 A3
= P (0, λ2 ) = 0. (2.10)
On the other hand,
∂P ∂ ∂P
(Aj ) = (Aj ) = 0, j = 2, 3.
∂λ1 ∂λ2 ∂λ1
Since ∇λ1 is parallel to the unit outer normal to A2 A3 , ∂λ
∂P
1
(M1 ) = 0. Notice
that ∂λ1 A2 A3 is a forth order polynomial, we have ∂λ1 |A2 A3 ≡ 0, that is,
∂P ∂P

∂P
(0, λ2 ) = 0. (2.11)
∂λ1
Combining (2.10) and (2.11), we have P = λ21 P1 . Similarly, P = λ21 λ22 λ23 Q =
0. Since Q is a polynomial, Q ≡ 0, and hence P ≡ 0. 

Definition 2.6. Given a finite element (K, P, N ), let the set {ψi : 1 6
i 6 n} ⊂ P be the nodal basis of P. If v is a function for which all Ni ∈ N ,
i = 1, · · · , n, are defined, then we define the local interpolant by

n
IK v := Ni (v)ψi .
i=1

It is easy to see that IK is linear and IK u = u for u ∈ P.

Example 2.7 (Lagrange interpolant of linear elements). Let (K, P, N )


be the linear finite element with nodal basis {ψi }. The Lagrange interpolant
is defined as

d+1
(IK v)(x) := v(xi )ψi (x) ∀v ∈ C(K).
i=1

We now piece together the elements.

Definition 2.8. A triangular (tetrahedral) mesh Mh is a partition of the


domain Ω in Rd (d = 2, 3) into a finite collection of triangles (tetrahedrons)
{Ki } satisfying the following conditions:
(i) The intersection of the interior of any two elements is empty;
(ii) ∪Ki = Ω̄;
(iii) No vertex of any triangle (tetrahedron) lies in the interior of an edge
(a face or an edge) of another triangle (tetrahedron).

In this book, a triangular or tetrahedral mesh is called a triangulation,


or simply a mesh.
2.2. THE CONSTRUCTION OF FINITE ELEMENT SPACES 19

Theorem 2.9. Let Ω be a bounded domain in Rd and Mh = {Kj }Jj=1


be a partition of Ω, that is, ∪Ki = Ω̄ and Ki ∩ Kj = ∅ if i ̸= j. Assume
that ∂Ki (i = 1, · · · , J) are Lipschitz. Let k > 1. Then a piecewise infinitely
differentiable function v : Ω̄ → R over the partition Mh belongs to H k (Ω) if
and only if v ∈ C k−1 (Ω̄).

Proof. We only prove the case k = 1. For k > 1, the assertion follows
from a consideration of the derivatives of order k − 1.
Let v ∈ C(Ω̄). For i = 1, 2, define
∂v
wi (x) = for x ∈ Ω,
∂xi
where on the edges we can take either of the two limiting values. Let φ ∈
C0∞ (Ω),
∫ ∑ ∫ ∂v
φwi dx = φ dx
Ω ∂xi
K∈Mh K
∑ ( ∫ ∂φ
∫ ) ∫
∂φ
= − v dx + φv · ni ds = − v dx,
K∈Mh K ∂xi ∂K Ω ∂xi

where nK = (n1 , · · · , nd )T is the unit outward normal to ∂K. This shows


that wi is the weak derivative of v and hence v ∈ H 1 (Ω).
Conversely, let v ∈ H 1 (Ω). Let x be on the interior of an edge e shared
by two elements K1 , K2 . Then there exists a neighborhood B small enough
such that B ⊂ K1 ∪ K2 . Denote by vi = v|Ki , i = 1, 2. Then, by Green
formula, for all φ ∈ C0∞ (B)d ,

@ K2
@  
@r 
@
x
 
B@ 
@@

K1 


Figure 3. The neighborhood of a point x on the common


side of two elements K1 and K2 .

∫ ∫ ∫
∇v · φ dx = − v∇ · φ dx + vi (φ · nKi ) ds, i = 1, 2.
Ki Ki ∂Ki
20 2. FINITE ELEMENT METHODS FOR ELLIPTIC EQUATIONS

Since v ∈ H 1 (Ω), we have


∫ ∫
∇v · φ dx = − v∇ · φ dx.
Ω Ω

Thus

(v1 − v2 )ϕ ds = 0 ∀ ϕ ∈ C0∞ (B).
e

This implies that v1 = v2 at x. Therefore, v is continuous across any inter-


element edges. 

Example 2.10 (Conforming linear element). Let (K, P, N ) be the linear


finite element defined in Example 2.4. Since any piecewise linear function is
continuous as long as it is continuous at the vertices, we can introduce

Vh = {v : v|K ∈ P1 , ∀K ∈ Mh , v is continuous
at the vertices of the elements}.

By Theorem 2.9, Vh ⊂ H 1 (Ω), Vh is a H 1 -conforming finite element space.

Example 2.11 (Crouzeix-Raviart element). Let K be a triangle in R2 ,


P = P1 the set of linear polynomials, and N = {N1 , N2 , N3 }, where Ni (v) =
v(Mi ) and Mi , i = 1, 2, 3, are the midpoints of three edges. It is easy to see
that (K, P, N ) is a finite element. Define

V̂h = {v : v|K ∈ P1 , ∀K ∈ Mh , v is continuous


at the midpoints of the triangle edges}.

Then V̂h ⊂ L2 (Ω) but V̂h ̸⊂ H 1 (Ω). V̂h is an example of H 1 -nonconforming


finite element spaces.

Example 2.12. Let (K, P, N ) be the Argyris element and define

Veh = {v : v|K ∈ P5 , ∀ K ∈ Mh , v and its partial derivatives up to


second order are continuous at the vertices of the triangle
elements, v has continuous normal derivatives at the
midpoints of the triangle edges.}.

It can be shown that Veh ⊂ C 1 (Ω̄). Therefore Veh ⊂ H 2 (Ω) is a H 2 -conforming


finite element space.
2.3. COMPUTATIONAL CONSIDERATION 21

2.3. Computational consideration


The computation of finite element methods can be divided into three
steps:
1. Construction of a mesh by partitioning Ω;
2. Setting up the stiffness matrix;
3. Solution of the system of equations.
In this section we consider the computation of the stiffness matrix. The solu-
tion of the system of equations will be treated in Chapter 5. The construction
of the mesh will be discussed in Chapter 4 and Chapter 10.
We will only consider conforming linear finite element approximations to
elliptic equations of second order. In this case, the stiffness matrix can be
assembled elementwise. For simplicity, we consider only the principal part
∫ ∑ d ∫
∂u ∂v
a(u, v) = akl (x) dx = a(x)∇u · ∇v dx,
Ω k,l=1 ∂xl ∂xk Ω
( )
where a(x) = akl (x) d×d . Let {ϕj }Jj=1 be a nodal basis of the linear finite
element space Vh0 = Vh ∩ H01 (Ω) so that ϕi (xj ) = δij , i, j = 1, · · · , J, where
{xj }Jj=1 is the set of interior nodes of the mesh Mh . Then
∑ ∫
Aij = a(ϕj , ϕi ) = a(x)∇ϕj · ∇ϕi dx. (2.12)
K∈Mh K

In forming the sum, we need only take account of those triangles which
overlap the support of both ϕi and ϕj . Note that Aij = 0 if the xi and xj
are not adjacent. The stiffness matrix A = (Aij ) is sparse.
In practice, for every element K ∈ Mh , we find the additive contribution
from (2.12) to the stiffness matrix. Since on each element K, the nodal
basis function reduces to one of the barycentric coordinate functions λp , p =
1, 2, · · · d + 1. Thus we need only to evaluate the following (d + 1) × (d + 1)
matrix ∫
AK : (AK )pq = a(x)∇λq · ∇λp dx. (2.13)
K
Here AK is called the element stiffness matrix . Denote by Kp the global
index of the p-th vertex of the element K. Then ϕKp |K = λp and the global
stiffness matrix may be assembled through the element stiffness matrices as

Aij = (AK )pq . (2.14)
K,p,q
Kp =i,Kq =j
22 2. FINITE ELEMENT METHODS FOR ELLIPTIC EQUATIONS

For example, consider two adjacent nodal points xi and xj on a triangular


mesh as shown in Figure 4. Suppose the local indices of the vertices of the
elements K I , K II , ..., K VI are labeled as in the same figure. Then

K2I = K1II = K3III = K2IV = K1V = K3VI = i, K3I = K2VI = j.

and (2.14) implies that

3 2
1 K II 1
K III 1 2 K I
2 3 xi 3 xj
3 2 3 2
1
K IV K VI
1 KV 1
2 3

Figure 4. Global and local indices.

Aij = (AK I )23 + (AK VI )32 ,


Aii = (AK I )22 + (AK II )11 + (AK III )33 + (AK IV )22 + (AK V )11 + (AK VI )33 .

The computation of (2.13) can be simplified by using the following prop-


erty of the conforming linear finite element space.

Theorem 2.13. The conforming linear finite element space Vh associated


with a triangulation Mh of Ω ⊂ Rd is an affine family in the sense that there
exists a finite element (K̂, P̂, N̂ ) called the reference finite element with the
following properties: For every K ∈ Mh , there exists an affine mapping
FK : K̂ → K such that for every v ∈ Vh , its restriction to K has the form
−1
v(x) = v̂(FK (x)) with some v̂ ∈ P̂.

Proof. It is obvious. We only need to set


{ }

d
K̂ = x̂ = (ξ1 , · · · , ξd ) ∈ Rd : ξ1 , · · · , ξd > 0, 1 − ξi > 0 ,
i=1

P̂ = P1 , and N̂ = {N̂i , i = 1, · · · , d + 1}, where N̂i (p) = p(Âi ) for any p ∈ P̂,
where {Âi } is the set of vertices of K̂. 
2.3. COMPUTATIONAL CONSIDERATION 23

To compute (2.13), we transform the element K into the reference element


K̂. Let
x = FK x̂ = BK x̂ + bK
be the corresponding linear mapping. Then

|K| −T ˆ −T ˆ
(AK )pq = â(x̂)(BK ∇λ̂q ) · (BK ∇λ̂p ) dx̂. (2.15)
|K̂| K̂
Here |K| is the measure of K and |K̂| is the measure of K̂.

Example 2.14. Let K be a triangle element with vertices Ai (ai , bi ), i =


−1
1, 2, 3, and let FK be the affine mapping defined by x̂ = FK (x) (cf. (2.9)):
1 ( )
x̂1 = λ1 (x) = (b2 − b3 )x1 + (a3 − a2 )x2 + a2 b3 − a3 b2 ,
2|K|
1 ( )
x̂2 = λ2 (x) = (b3 − b1 )x1 + (a1 − a3 )x2 + a3 b1 − a1 b3 .
2|K|
−1
It is clear that FK maps the points A1 , A2 , and A3 in the x1 x2 plane to the
points (1, 0), (0, 1), and (0, 0) in the x̂1 x̂2 plane, respectively. Obviously,
( )
−T 1 b2 − b3 b3 − b1
BK = .
2|K| a3 − a2 a1 − a3
Noting that λ̂i (x̂) = λi (x) and λ1 + λ2 + λ3 = 1, we have
( ) ( ) ( )
∇ˆ λ̂1 = 1
, ∇ˆ λ̂2 = 0
, ∇ˆ λ̂3 = −1 .
0 1 −1
Then the element stiffness matrix AK can be computed by using (2.15) and
the global stiffness matrix can be assembled by using (2.14).

For partial differential equations with variable coefficients, the evaluation


of the integrals (2.15) is usually accomplished by using a quadrature formula.
Some examples of quadrature formulas on the two-dimensional reference el-
ement (see Figure. 5) are as follows. The quadrature formula

φ̂(x̂)dx̂ ∼ |K̂|φ̂(â123 ), (2.16)

is exact for polynomials of degree 6 1, i.e.,

φ̂(x̂) dx̂ = |K̂|φ̂(â123 ) ∀ φ̂ ∈ P1 (K̂).

Here â123 is the barycenter of K̂.


24 2. FINITE ELEMENT METHODS FOR ELLIPTIC EQUATIONS

The quadrature formula


∫ ∑
|K̂|
φ̂(x̂)dx̂ ∼ φ̂(âij ), (2.17)
K̂ 3
16i<j63

is exact for polynomials of degree 6 2. Here â12 , â23 , and â13 are the mid-edge
points of K̂.
The quadrature formula
 
∫ ∑
3 ∑
|K̂| 
φ̂(x̂)dx̂ ∼ 3 φ̂(âi ) + 8 φ̂(âij ) + 27φ̂(â123 ) (2.18)
K̂ 60
i=1 16i<j63

is exact for polynomials of degree 6 3.

6
â3 (0, 1)
@
@
@
@
â13 b @bâ23
b @
â123 @
@
b @â2-
â1 â12 (1, 0)
Figure 5. The reference element K̂ for the quadrature for-
mulas (2.16),(2.17), and (2.18).

Table 1 shows the sample points (ξi , ηi ) and weights for Gaussian quad-
rature formula which is exact for polynomials of degree 6 5
∫ ∑
7
φ̂(x̂)dx̂ ∼ wi φ̂(ξi , ηi ). (2.19)
K̂ i=1

Bibliographic notes. The material in this chapter is classical. We refer


to the book of Ciarlet [23] for further information on the construction and
computation of finite elements. The quadrature formulas (2.19) in Section 2.3
is taken from Braess [11].

2.4. Exercises
Exercise 2.1. Construct the nodal basis functions for the Crouzeix-
Raviort element using barycentric coordinates.
2.4. EXERCISES 25

i ξi ηi wi
1 1/3
√ 1/3
√ 9/80
2 (6 + 15)/21 (6 + 15)/21 √
√ √ 155 + 15
3 (9 − 2 15)/21 (6 + 15)/21
√ √ 2400
4 (6 + √15)/21 (9 − 2√ 15)/21
5 (6 − 15)/21 (6 − 15)/21 √
√ √ 155 − 15
6 (9 + 2 15)/21 (6 − 15)/21
√ √ 2400
7 (6 − 15)/21 (9 + 2 15)/21

Table 1. The sample points (ξi , ηi ) and weights for the seven-
point Gaussian quadrature rule over the reference element K̂.

Exercise 2.2. Show that the finite element space based on the Argyris
element is a subspace of C 1 and thus is indeed H 2 -conforming.
Exercise 2.3. Show the quadrature scheme (2.17) is exact for polyno-
mials of degree 6 2.
Exercise 2.4. Let K be a triangle in R2 . Compute the element mass
matrix
(∫ )3
MK = λi λj dx .
K i,j=1

Exercise 2.5. Let K be a triangle in R2 . Show that



p!q!r!
λp1 λq2 λr3 dx = 2|K| , p, q, r > 0, integer.
K (p + q + r + 2)!
Exercise 2.6. Consider the Poisson equation −∆u = 1 on the unit
square with homogeneous Dirichlet boundary condition. Compute the stiff-
ness matrix of the linear finite element method on the standard triangulation
of the unit square constructed by first dividing the unit square into n2 sub-
squares of equal size and then connecting the southwest-to-northeast diagonal
of each subsquare. Here n is an positive integer. Compare the stiffness matrix
with the coefficient matrix of the five-point difference equations.
CHAPTER 3

Convergence Theory of Finite Element Methods

In this chapter we consider the convergence of the finite element method


for solving elliptic equations. From Céa lemma in Theorem 2.1 we know that
the error of the finite element solution is bounded by inf vh ∈Vh ∥u − vh ∥H 1 (Ω) .
This quantity will be estimated by the scaling argument that we develop in
the first section.

3.1. Interpolation theory in Sobolev spaces


We start from the following result which plays an important role in the
error analysis of finite element methods. This result generalizes the second
Poincaré-Friedrichs inequality in Theorem 1.10.

Theorem 3.1 (Deny-Lions). Let Ω be a bounded Lipschitz domain. For


any k > 0, there exists a constant C(Ω) such that

inf ∥v + p∥H k+1 (Ω) 6 C(Ω)|v|H k+1 (Ω) ∀v ∈ H k+1 (Ω). (3.1)
p∈Pk (Ω)

Here Pk (Ω) is the set of polynomials over Ω with degree 6 k.

Proof. Let N = dim Pk (Ω) and let fi , 1 6 i 6 N, be a basis of the


dual space of Pk (Ω). Using the Hahn-Banach extension theorem, there exist
continuous linear forms over the space H k+1 (Ω), again denote by fi , 1 6 i 6
N, such that for any p ∈ Pk (Ω), f1 (p) = f2 (p) = · · · = fN (p) = 0 if and only
if p = 0. We will show that there exists a constant C(Ω) such that

( ∑
N )
∥v∥H k+1 (Ω) 6 C(Ω) |v|H k+1 (Ω) + |fi (v)| ∀v ∈ H k+1 (Ω). (3.2)
i=1

(3.1) is a direct consequence of (3.2) because for any v ∈ H k+1 (Ω), there
exists a p ∈ Pk (Ω) such that fi (p) = −fi (v), 1 6 i 6 N .
27
28 3. CONVERGENCE THEORY OF FINITE ELEMENT METHODS

If inequality (3.2) is false, there exists a sequence {vn } of functions vn ∈


H k+1 (Ω) such that


N
1
∥vn ∥H k+1 (Ω) = 1, |vn |H k+1 (Ω) + |fi (vn )| 6 . (3.3)
n
i=1

Since {vn } is bounded in H k+1 (Ω), by the compactness imbedding theorem,


there exists a subsequence, again denoted by {vn }, and a function v ∈ H k (Ω)
such that
∥vn − v∥H k (Ω) → 0 as n → ∞. (3.4)

Since, by (3.3), |vn |H k+1 (Ω) → 0, and since the space H k+1 (Ω) is complete,
we conclude from (3.4) , that the sequence {vn } converges in H k+1 (Ω). The
limit v of this sequence satisfies


N
|v|H k+1 (Ω) + |fi (v)| = 0.
i=1

Thus, it follows from Lemma 1.2 that v ∈ Pk (Ω), and hence v = 0. But this
contradicts the equality ∥v∥H k+1 (Ω) = 1. 

A direct consequence of this theorem is the following lemma which is


called Bramble-Hilbert Lemma in the literature.

Lemma 3.1 (Bramble-Hilbert). Let Ω be a bounded Lipschitz domain and


let k > 0 be an integer. Denote by X = H k+1 (Ω). Let Y be a Banach space
and let f ∈ L(X, Y ) be a continuous linear operator from X to Y such that
f (p) = 0 for any p ∈ Pk (Ω). Then there exists a constant C(Ω) such that

∥f (v)∥Y 6 C(Ω)∥f ∥L(X,Y ) |v|H k+1 (Ω) ∀ v ∈ H k+1 (Ω),

where ∥ · ∥L(X,Y ) is the operator norm.

The error analysis of the finite element method depends on the scaling
argument which makes use of the relation of Sobolev norms under the affine
transform.

Lemma 3.2. Let Ω and Ω̂ ⊂ Rd be affine equivalent, i.e., there exists a


bijective affine mapping

F : Ω̂ → Ω, F x̂ = B x̂ + b
3.1. INTERPOLATION THEORY IN SOBOLEV SPACES 29

with a nonsingular matrix B. If v ∈ H m (Ω), then v̂ = v ◦ F ∈ H m (Ω̂), and


there exists a constant C = C(m, d) such that
|v̂|H m (Ω̂) 6 C∥B∥m | det B|−1/2 |v|H m (Ω) ,
|v|H m (Ω) 6 C∥B −1 ∥m | det B|1/2 |v̂|H m (Ω̂) .
Here ∥·∥ denotes the matrix norm associated with the Euclidean norm in Rd .
Proof. Consider the derivative of order m as a multi-linear form. For
yk = (y1k , y2k , · · · , ydk )T ∈ Rd , k = 1, · · · , m, define

Dm v(x)(y1 , · · · , ym ) = yi1 1 · · · yim m ∂i1 · · · ∂im v(x).
16i1 ,··· ,im 6d
From the chain rule, we have

D̂m v̂(x̂)(ŷ1 , · · · , ŷm ) = ŷi1 1 · · · ŷim m ∂ˆi1 · · · ∂ˆim v̂(x̂)
16i1 ,··· ,im 6d
∑ ∑
= ŷi1 1 · · · ŷim m bj1 i1 · · · bjm im ∂j1 · · · ∂jm v(x)
16i1 ,··· ,im 6d 16j1 ,··· ,jm 6d
∑ ∑
= bj1 i1 ŷi1 1 · · · bjm im ŷim m ∂j1 · · · ∂jm v(x)
16j1 ,··· ,jm 6d 16i1 ,··· ,im 6d
= Dm v(x)(B ŷ1 , · · · , B ŷm ).
Thus
∥D̂m v̂∥Lm 6 ∥B∥m ∥Dm v∥Lm ,
where
∥Dm v∥Lm = sup {|Dm v(x)(y1 , · · · , ym )| : |yk | 6 1, 1 6 k 6 m} .
Apply this estimate to the partial derivatives ∂i1 ∂i2 · · · ∂im v = Dm v(ei1 , · · · ,
eim ) to get

|∂ˆα v̂|2 6 dm max |∂ˆα v̂|2 6 dm ∥D̂m v̂∥2Lm 6 dm ∥B∥2m ∥Dm v∥2Lm
|α|=m
|α|=m

6 d2m ∥B∥2m |∂ α v|2 .
|α|=m

Finally we integrate, taking account of the transformation formula for mul-


tiple integrals
∫ ∑ ∫ ∑
ˆ
|∂ v̂| dx̂ 6 d ∥B∥
α 2 2m 2m
|∂ α v|2 | det B −1 |dx.
Ω̂ |α|=m Ω |α|=m

This completes the proof of the first inequality. The other inequality is proved
in a similar fashion. 
30 3. CONVERGENCE THEORY OF FINITE ELEMENT METHODS

To apply Lemma 3.2, it is desirable to estimate ∥B∥ and ∥B −1 ∥ in terms


of simple geometric quantities.

Lemma 3.3. Let Ω and Ω̂ be affine equivalent with


F : x̂ ∈ Rd 7→ B x̂ + b ∈ Rd
being an invertible affine mapping. Then the upper bounds
h ĥ ( ρ )d ( h )d
∥B∥ 6 , ∥B −1 ∥ 6 , 6 |det B| 6 (3.5)
ρ̂ ρ ĥ ρ̂
hold, where h = diam(Ω), ĥ = diam(Ω̂), ρ and ρ̂ are the maximum diameter
of the ball contained in Ω and Ω̂, respectively.

'$

Ω̂ F (ẑ)

> Z
}
Z
 Z
 Z
ŷ&% Ω F (ŷ)

Figure 1. The affine mapping between Ω and Ω̂.

Proof. We may write


1
∥B∥ = sup |Bξ|.
ρ̂ |ξ|=ρ̂

Given ξ ∈ Rd so that |ξ| = ρ̂, there exist ŷ, ẑ ∈ Ω̂ such that ŷ − ẑ = ξ (see
Figure 1). Bξ = F (ŷ) − F (ẑ) with F (ŷ), F (ẑ) ∈ Ω. We deduce |Bξ| 6 h.
This proves the first inequality in (3.5). The second inequality can be proved
similarly. The last two inequalities are consequences of the identity |det B| =
|Ω| /|Ω̂|. 

Theorem 3.2. Suppose m − d/2 > l. Let (K̂, P̂, N̂ ) be a finite element
satisfying
(i) Pm−1 ⊂ P̂ ⊂ H m (K̂);
(ii) N̂ ⊂ C l (K̂)′ .
Then for 0 6 i 6 m and v̂ ∈ H m (K̂) we have
|v̂ − Iˆv̂|H i (K̂) 6 C(m, d, K̂)|v̂|H m (K̂) ,

where Iˆ is the local interpolation operator of the finite element defined in


Definition 2.6.
3.1. INTERPOLATION THEORY IN SOBOLEV SPACES 31

Proof. We first prove Iˆ is bounded from H m (K̂) to H i (K̂). Let N̂ =


{N̂1 , · · · , N̂n } and let {ϕ̂1 , · · · , ϕ̂n } be the dual basis. Then


n ∑
n
∥Iˆû∥H i (K̂) = N̂j (û)ϕ̂j 6 |N̂j (û)|∥ϕ̂j ∥H i (K̂)
j=1 j=1
H i (K̂)

n
6 ∥N̂j ∥C l (K̂)′ ∥ϕ̂j ∥H m (K̂) ∥û∥C l (K̂)
j=1
6 C ∥û∥C l (K̂) 6 C ∥û∥H m (K̂) .

Here we have used the Sobolev Imbedding Theorem 1.8 in the last inequality.
Next by Theorem 3.1

|v̂ − Iˆv̂|H i (K̂) = inf |v̂ − p̂ − I(v̂


ˆ − p̂)| i
H (K̂)
p̂∈Pm−1
6C inf ∥v̂ − p̂∥H m (K̂) 6 C |v̂|H m (K̂) .
p̂∈Pm−1

This completes the proof of the theorem. 

Definition 3.3. Let (K̂, P̂, N̂ ) be a finite element and x = F (x̂) = B x̂+b
be an affine map. Let v = v̂ ◦ F −1 . The finite element (K, P, N ) is affine-
interpolation equivalent to (K̂, P̂, N̂ ) if
(i) K = F (K̂);
(ii) P = {p : p̂ ∈ P̂};
(iii) c = Iˆv̂.
Iv
Here Iˆv̂ and Iv are the (K̂, P̂, N̂ )-interpolant and the (K, P, N )-interpolant,
respectively.

Definition 3.4. A family of meshes {Mh } is called regular or shape


regular provided there exists a number κ > 0 such that each K ∈ Mh
contains a ball of diameter ρK with ρK > hK /κ.

Theorem 3.5. Let (K̂, P̂, N̂ ) satisfy the conditions of Theorem 3.2 and
let (K, P, N ) be affine-interpolation equivalent to (K̂, P̂, N̂ ). Then for 0 6
i 6 m and v ∈ H m (K) we have

|v − Iv|H i (K) 6 Chm−i


K |v|H m (K) ,

where C depends on m, d, K̂, and hK /ρK .


32 3. CONVERGENCE THEORY OF FINITE ELEMENT METHODS

Proof. By Lemmas 3.2–3.3 and Theorem 3.2 we have

|v − Iv|H i (K) 6 C∥B −1 ∥i | det B|1/2 v\


− Iv
H i (K̂)

= C∥B −1 ∥i | det B|1/2 v̂ − Iˆv̂


H i (K̂)

6 C∥B −1 ∥i | det B|1/2 |v̂|H m (K̂) 6 C∥B −1 ∥i ∥B∥m |v|H m (K)


( ĥ )i ( h )m ĥiK̂ ( hK )i
K
6C K̂
|v|H m (K) 6 C K |v|H m (K) .
hm−i
ρK ρ̂K̂ ρ̂m ρK

This completes the proof. 

As a consequence of the above theorem we have the following estimate.

Theorem 3.6. Suppose {Mh } is a regular family of meshes of a polyhe-


dral domain Ω ⊂ Rd . Let (K̂, P̂, N̂ ) be a reference finite element satisfying
the conditions of Theorem 3.2 for some l and m. For all K ∈ Mh , sup-
pose (K, PK , NK ) is affine-interpolation equivalent to (K̂, P̂, N̂ ). Then for
0 6 i 6 m, there exists a positive constant C(K̂, d, m, κ) such that
( ∑ )1/2
∥v − Ih v∥2H i (K) 6 Chm−i |v|H m (Ω) , h = max hK , ∀ v ∈ H m (Ω),
K∈Mh
K∈Mh

where Ih v is the global interpolant defined by Ih v|K = IK v for all K ∈ Mh .

Now we consider the inverse estimates which are useful in the error anal-
ysis of finite element methods. We first introduce the quasi-uniform meshes.

Definition 3.7. A family of meshes {Mh } is called quasi-uniform if


there exists a constant ν such that
h/hK 6 ν ∀ K ∈ Mh ,
where h = maxK∈Mh hK .

Theorem 3.8. Let {Mh } be a shape-regular quasi-uniform family of tri-


angulations of Ω and let Xh be a finite element space of piecewise polynomials
of degree less than or equal to p. Then for m > l > 0, there exists a constant
C = C(p, κ, ν, m) such that for any vh ∈ Xh ,
 1/2  1/2
∑ ∑
 |vh |2H m (K)  6 Chl−m  |vh |2H l (K)  .
K∈Mh K∈Mh
3.2. THE ENERGY ERROR ESTIMATE 33

Proof. From Lemma 3.2, we have


−1 m
|v|H m (K) 6 C∥BK ∥ |detBK |1/2 |v̂|H m (K̂) .
Since
|v̂|H m (K̂) = inf |v̂ + p|H m (K̂) 6 inf ∥v̂ + p∥H m (K̂)
p∈Pl−1 (K̂) p∈Pl−1 (K̂)

6C inf ∥v̂ + p∥H l (K̂) 6 C|v̂|H l (K̂) ,


p∈Pl−1 (K̂)

it follows from Lemma 3.2 and Lemma 3.3 that


−1 m
|v|H m (K) 6 C∥BK ∥ ∥BK ∥l |v|H l (K)
( )m ( )
ĥK̂ hK l
6C |v|H l (K) 6 Chl−m
K |v|H l (K) . (3.6)
ρK ρ̂K̂
This completes the proof. 

From (3.6) we have the following local inverse estimates on an element


K:

|v|H m (K) 6 Chl−m


K |v|H l (K) , ∀m > l > 0, v ∈ Pp (K), (3.7)

where C depends only on p, m, and the shape regularity of the element K.

3.2. The energy error estimate


Let Ω be a polyhedral domain in Rd and {Mh } be a regular family of
triangulations of the domain. Let Vh be the piecewise linear conforming finite
element space over Mh . Denote Vh0 = Vh ∩ H01 (Ω). Let u ∈ H01 (Ω) be the
weak solution of the variational problem

a(u, v) = ⟨f, v⟩ ∀ v ∈ H01 (Ω), (3.8)

and uh ∈ Vh0 be the corresponding finite element solution

a(uh , vh ) = ⟨f, vh ⟩ ∀ vh ∈ Vh0 . (3.9)

We assume the bilinear form a : H01 (Ω) × H01 (Ω) → R is bounded and H01 (Ω)-
elliptic:

|a(u, v)| 6 β∥u∥H 1 (Ω) ∥v∥H 1 (Ω) , a(u, u) > α∥u∥2H 1 (Ω) , ∀u, v ∈ H01 (Ω).

Then we know from Lax-Milgram Lemma that (3.8) and (3.9) have a unique
solution u, uh , respectively.
34 3. CONVERGENCE THEORY OF FINITE ELEMENT METHODS

Theorem 3.9. If the solution u ∈ H01 (Ω) has the regularity u ∈ H 2 (Ω),
then there exists a constant C independent of h such that

∥u − uh ∥H 1 (Ω) 6 Ch|u|H 2 (Ω) .

Proof. By Céa lemma and the finite element interpolation estimate in


Theorem 3.6,

∥u − uh ∥H 1 (Ω) 6 C inf ∥u − vh ∥H 1 (Ω) 6 C∥u − Ih u∥H 1 (Ω) 6 Ch|u|H 2 (Ω) .


vh ∈Vh0

If the solution of the problem (3.8) does not in H 2 (Ω), we still have the
convergence of finite element methods.

Theorem 3.10 (Convergence). If the solution u only belongs to H01 (Ω),


we still have
lim ∥u − uh ∥H 1 (Ω) = 0.
h→0

Proof. We only need to prove

lim inf ∥u − vh ∥H 1 (Ω) = 0.


h→0 vh ∈Vh0

For u ∈ H01 (Ω) and any ϵ > 0, there exists a function vϵ ∈ C0∞ (Ω) such that

∥u − vϵ ∥H 1 (Ω) 6 ϵ.

On the other hand, by the interpolation estimate in Theorem 3.6,

∥vϵ − Ih vϵ ∥H 1 (Ω) 6 Ch|vϵ |H 2 (Ω) .

Thus

inf ∥u − vh ∥H 1 (Ω) 6 ∥u − Ih vϵ ∥H 1 (Ω) 6 ϵ + Ch|vϵ |H 2 (Ω) .


vh ∈Vh0

By letting h → 0 we get

limh→0 inf ∥u − vh ∥H 1 (Ω) 6 ϵ for any ϵ > 0.


vh ∈Vh0

This completes the proof. 


3.4. EXERCISES 35

3.3. The L2 error estimate


We assume the adjoint variational problem of (3.8) is regular in the fol-
lowing sense
(i) For any g ∈ L2 (Ω), the problem
a(v, φg ) = (g, v) ∀ v ∈ H01 (Ω) (3.10)
attains a unique solution φg ∈ H 2 (Ω) ∩ H01 (Ω);
(ii) There exists a constant C such that
∥φg ∥H 2 (Ω) 6 C∥g∥L2 (Ω) .

Theorem 3.11. Assume the solution of problem (3.8) u ∈ H 2 (Ω) and


the adjoint problem is regular. Then there exists a constant C independent
of h such that
∥u − uh ∥L2 (Ω) 6 Ch2 |u|H 2 (Ω) .

Proof. For g = u − uh , let φg be the solution of (3.10). Then


(u − uh , g) = a(u − uh , φg ) = a(u − uh , φg − Ih φg )
6 β∥u − uh ∥H 1 (Ω) ∥φg − Ih φg ∥H 1 (Ω)
6 Ch2 |u|H 2 (Ω) |φg |H 2 (Ω)
6 Ch2 ∥g∥L2 (Ω) |u|H 2 (Ω) .
This completes the proof. 

The argument used in the proof of Theorem 3.11 is termed Aubin-Nitsche


trick in the literature.

Bibliographic notes. The results in this chapter are taken for Ciarlet
[23] to which we refer for further developments in the finite element a priori
error analysis. The Deny-Lions Theorem is from [26]. The Bramble-Hilbert
Lemma is proved in [13].

3.4. Exercises
Exercise 3.1. Let m > 0 and let 1 6 p 6 ∞. Show that, under the
conditions of Lemma 3.2, there exists a constant C = C(m, p, d) such that
|v̂|W m,p (Ω̂) 6 C∥B∥m | det B|−1/p |v|W m,p (Ω) ,
|v|W m,p (Ω) 6 C∥B −1 ∥m | det B|1/p |v̂|W m,p (Ω̂) .
36 3. CONVERGENCE THEORY OF FINITE ELEMENT METHODS

Exercise 3.2. Under the assumption of Theorem 3.8, show that


∥vh ∥Lp (∂Ω) 6 Ch−1/p ∥vh ∥Lp (Ω) ∀ vh ∈ Xh .

Exercise 3.3. Let K be an element in Rd with diameter hK . Prove the


scaled trace inequality
( )
1/2 −1/2
∥v∥L2 (∂K) 6 C hK ∥∇v∥L2 (K) + hK ∥v∥L2 (K) ∀ v ∈ H 1 (K).

Exercise 3.4. Let {Mh } be a regular and quasi-uniform family of trian-


gulations and Vh be the H 1 -conforming linear finite element space. Let Qh
be the L2 -projection to Vh ⊂ H 1 (Ω), i.e.,
(Qh v, vh ) = (v, vh ) ∀ vh ∈ Vh .
Show that ∥Qh v∥H 1 (Ω) 6 C∥v∥H 1 (Ω) for all v ∈ H 1 (Ω).
CHAPTER 4

Adaptive Finite Element Methods

The adaptive finite element method based on a posteriori error estimates


provides a systematic way to refine or coarsen the meshes according to the
local a posteriori error estimator on the elements. The purpose of this chapter
is to describe the basic idea of the adaptive finite element method using the
example of solving the Poisson equation.

4.1. An example with singularity


We know from Chapter 3 that if the solution of the elliptic problem Lu =
f has the regularity u ∈ H 2 (Ω), then the linear finite element method has
the optimal convergence order O(h). For the domain with reentrant corners,
however, the solution is no longer in H 2 (Ω). So the classical finite element
method fails to provide satisfactory result. The purpose of this chapter is to
construct one way to attack this problem. But first we construct an example
to illustrate the singular behavior around reentrant corners.

Γ2
@
@ ω Γ1
@
0 θ=0

Figure 1. The sector Sω .

We consider the harmonic functions in the sector Sω = {(r, θ) : 0 < r <


∞, 0 6 θ 6 ω}, where 0 < ω < 2π. We look for the solution of the form
u = rα µ(θ) for the Laplace equation −△u = 0 in Sω with boundary condition
u = 0 on Γ1 ∪ Γ2 , where

Γ1 = {(r, θ) : r > 0, θ = 0} , Γ2 = {(r, θ) : r > 0, θ = ω}


37
38 4. ADAPTIVE FINITE ELEMENT METHODS

Let u = rα µ(θ). Since in polar coordinates


∂ 2 u 1 ∂u 1 ∂2u
∆u = + + ,
∂r2 r ∂r r2 ∂θ2
we have

△u = α(α − 1)rα−2 µ(θ) + αrα−2 µ(θ) + rα−2 µ′′ (θ) = 0,

which implies
µ′′ (θ) + α2 µ(θ) = 0.
Therefore µ(θ) = A sin αθ +B cos αθ. The boundary condition µ(0) = µ(ω) =
ω θ), k = 1, 2, 3, · · · . Therefore, the
0 yields that α = kπ/ω and µ(θ) = A sin( kπ
boundary value problem △u = 0 in Sω , u = 0 on Γ1 ∪ Γ2 has a solution
π
u = rα sin(αθ), α = .
ω
Lemma 4.1. u ̸∈ H 2 (Sω ∩ BR ) for any R > 0 if π < ω < 2π.

Proof. By direct calculation


∫ 2 ∫ R∫ ω
∂2u 2
2
dx = α(α − 1)rα−2 sin(αθ) rdrdθ
Ω ∂r 0 0
∫ ω ∫ R
= α2 (α − 1)2 | sin2 (αθ)|2 dθ · r2α−3 dr
0 0
= cr2(α−1) |R
0.

This completes the proof. 

Example 4.1. Let us consider the Laplace equation on the L-shaped


domain Ω of Figure 2 with the Dirichlet boundary condition so chosen that
the true solution is u = r2/3 sin(2θ/3) in polar coordinates.
Let Mh be a uniform triangulation of Ω, and uh be the solution of the
linear finite element method over Mh . Since u ̸∈ H 2 (Ω), the H 1 error esti-
mate of uh in Theorem 3.9 does not hold for this L-shaped domain problem.
To find the convergence rate of the linear finite element approximation uh ,
we solve the L-shaped domain problem using a sequence of uniform refined
meshes Mj which is obtained by connecting the edge midpoints of Mj−1
starting from the mesh M0 shown in Figure 2 (left). Figure 2 (right) plots
the H 1 error ∥u − uhj ∥H 1 (Ω) versus 2j = h0 /hj in log-log coordinates, where
uhj is the finite element approximation over Mj and hj is the maximum
diameter of triangles in Mj . It shows that the following error estimate holds
4.2. A POSTERIORI ERROR ANALYSIS 39

for the linear finite element approximation of the L-shaped problem over
uniform triangulations:
∥u − uh ∥H 1 (Ω) 6 Ch2/3 . (4.1)
The implementation details of this example are given in Section 10.2.

1 0
10

0.5

H1 error
−1
10 Slope: −2/3
0

−0.5

−2
10
0 1 2
−1 10 10 10
−1 −0.5 0 0.5 1 j
2

Figure 2. Example 4.1: the L-shaped domain and the ini-


tial mesh (left). The H 1 error versus 2j in log-log coordinates
and the dotted reference line with slope −2/3 (right).

4.2. A posteriori error analysis


Let Ω ⊂ Rd (d = 2, 3) be a bounded polyhedral domain and Mh be a
shape regular triangulation of Ω. The set of all interior sides of the mesh Mh
is denoted as Bh . Let Vh be the standard H 1 -conforming linear finite element
space, Vh0 = Vh ∩ H01 (Ω). For any K ∈ Mh , let hK be the diameter of K. For
any e ∈ Bh with e = K1 ∩ K2 , let Ωe = K1 ∪ K2 and let he be the diameter
of e as before.
We consider the variational problem to find u ∈ H01 (Ω) such that
(a∇u, ∇v) = (f, v) ∀ v ∈ H01 (Ω), (4.2)
where a is assumed to be a piecewise constant function, f ∈ L2 (Ω), and Ω is
not necessarily convex. Suppose that a(x) is constant on each K ∈ Mh .
Let uh ∈ Vh0 be the finite element solution of the discrete problem
(a∇uh , ∇vh ) = (f, vh ) ∀ vh ∈ Vh0 . (4.3)
40 4. ADAPTIVE FINITE ELEMENT METHODS

In this section, we first introduce the Clément interpolation operator


for non-smooth functions, then introduce the a posteriori error estimates
including the upper bound and lower bound.

4.2.1. The Clément interpolation operator. The Clément interpo-


lation operator to be introduced has a definition for any function in L1 (Ω),
comparing to the Lagrange interpolation operator which is defined for con-
tinuous functions.
¯ ¯
Let {xj }Jj=1 be the set of nodes of the mesh Mh , and {ϕj }Jj=1 be the set
of nodal basis functions. For any xj , define Sj = supp(ϕj ), the star surround
xj . Since the triangulation Mh is regular, the number of elements in Sj is
bounded by a constant depending only on the minimum angle of the mesh
Mh . Consequently, the macro-elements Sj can only assume a finite number
of different configurations.
Denote by Λ = {Ŝ} the set of reference configurations. The number of
reference configurations #Λ depends only on the minimum angle of Mh . For
any Sj , let Ŝj be the corresponding reference configuration in Λ and let Fj be
a C 0 -diffeomorphism from Ŝj to Sj such that Fi |K̂ is affine for any K̂ ⊂ Ŝj .
Define R̂j : L1 (Ŝj ) → P1 (Ŝj ) the L2 projection operator by
∫ ∫
R̂j ψ̂ ∈ P1 (Ŝj ) : (R̂j ψ̂)v̂h dx = ψ̂v̂h dx ∀v̂h ∈ P1 (Ŝj ), (4.4)
Ŝj Ŝj

for any ψ̂ ∈ L1 (Ŝj ). For any ψ ∈ L1 (Ω), denote by ψ̂j = ψ ◦ Fj . Let {xj }Jj=1
be the set of interior nodes. The Clément interpolation operators Πh and Π0h
are then defined by


Πh : L (Ω) → Vh , Πh ψ =
1
(R̂j ψ̂j )(Fj−1 (xj ))ϕj ,
j=1


J
Π0h : L1 (Ω) → Vh0 , Π0h ψ = (R̂j ψ̂j )(Fj−1 (xj ))ϕj .
j=1

Theorem 4.2. There exists a constant C depending only on the minimum


angle of Mh such that for any ψ ∈ H01 (Ω)
∥ψ − Π0h ψ∥L2 (K) 6 ChK ∥∇ψ∥L2 (K)
e ∀ K ∈ Mh , (4.5)
∥ψ − Π0h ψ∥L2 (e) 6 Che1/2 ∥∇ψ∥L2 (ẽ) ∀ e ∈ Bh , (4.6)
∇Π0h ψ L2 (K) 6 C∥∇ψ∥L2 (K)
e ∀ K ∈ Mh , (4.7)
4.2. A POSTERIORI ERROR ANALYSIS 41

e is the union of all elements in Mh having nonempty intersection


where K
e1 ∪ K
with K, and ẽ = K e 2 with e = K1 ∩ K2 .

Proof. The proof is divided into three steps.



1◦ ) (4.6) and (4.7) are direct consequences of (4.5). Let ψK = |K|
1
K ψdx
be the average of ψ on K, then it follows from the local inverse estimate in
(3.7), Theorem 1.10, and (4.5) that
∥∇Π0h ψ∥L2 (K) = ∥∇(Π0h ψ − ψK )∥L2 (K) 6 Ch−1
K ∥Πh ψ − ψK ∥L2 (K)
0
( )
6 Ch−1
K ∥Πh ψ − ψ∥L2 (K) + ∥ψ − ψK ∥L2 (K)
0

6 C∥∇ψ∥L2 (K)
e .

On the other hand, by the scaled trace inequality in Exercise 3.3, for e ⊂ ∂K
for some K ∈ Mh ,
( )
∥ψ − Π0h ψ∥L2 (e) 6 C h−1/2
e ∥ψ − Π0h ψ∥L2 (K) + he1/2 ∥∇(ψ − Π0h ψ)∥L2 (K)
6 Ch1/2
e ∥∇ψ∥L2 (K)
e 6 Che ∥∇ψ∥L2 (ẽ) .
1/2

2◦ ) We have, from Theorem 3.1 and the inverse inequality, for any ψ̂ ∈
H 1 (Ŝj ),
∥ψ̂ − R̂j ψ̂∥L2 (Ŝj ) 6 inf ∥ψ̂ − p̂∥L2 (Ŝj ) 6 C∥∇ψ̂∥L2 (Ŝj ) , (4.8)
p̂∈P1 (Ŝj )
( )
∥∇R̂j ψ̂∥L2 (Ŝj ) = ∥∇R̂j (ψ̂ − ψ̂Ŝj )∥L2 (Ŝj ) 6 C R̂j ψ̂ − ψ̂Ŝj L2 (Ŝj )

6 C ψ̂ − ψ̂Ŝj
6 C∥∇ψ̂∥L2 (Ŝj ) .
L2 (Ŝj )
(4.9)
∑¯
Denote by hj the diameter of Sj . Since Jj=1 ϕj = 1, we have
∑ ( )
∥ψ−Πh ψ∥L2 (K) = ψ − (R̂j ψ̂j )(Fj−1 (xj )) ϕj L2 (K)
xj ∈K

6C ψ − (R̂j ψ̂j )(Fj−1 (xj )) L2 (Sj )
xj ∈K

ψ̂j − (R̂j ψ̂j )(Fj−1 (xj ))
d/2
6C hj L2 (Ŝj )
xj ∈K
∑ ( )
+ R̂j ψ̂j − (R̂j ψ̂j )(Fj−1 (xj ))
d/2
6 hj ψ̂j − R̂j ψ̂j L2 (Ŝj ) L2 (Ŝj )
xj ∈K
∑ ( )
d/2
6 hj ψ̂j − R̂j ψ̂j L2 (Ŝj )
+ ∇R̂j ψ̂j L2 (Ŝj )
xj ∈K
∑ d/2
6 hj ∇ψ̂j L2 (Ŝj )
6 ChK ∥∇ψ∥L2 (K)
e .
xj ∈K
42 4. ADAPTIVE FINITE ELEMENT METHODS

3◦ ) To conclude the proof we must consider the case when K ∈ Mh has


a node on the boundary ∂Ω because, otherwise, Π0h ψ = Πh ψ on K. Notice
that if xj ∈ ∂Ω then there exists a side ej ⊂ ∂Ω including xj as one of its
vertices. Let êj = Fj−1 (ej ). Since ψ = 0 on ej for ψ ∈ H01 (Ω), we have
∫ ∫
−1 −1 1 1
|(R̂j ψ̂j )(Fj (xj ))| 6 (R̂j ψ̂j )(Fj (xj )) − R̂j ψ̂j + R̂j ψ̂j
|êj | êj |êj | êj
6 C∥∇R̂j ψ̂j ∥L2 (Ŝj ) + C∥ψ̂j − R̂j ψ̂j ∥L2 (êj )
1−d/2
6 C∥∇ψ̂j ∥L2 (Ŝj ) 6 Chj ∥∇ψ∥L2 (Sj ) .
Therefore, on boundary element K ∈ Mh ,

∥Πh ψ − Π0h ψ∥L2 (K) 6 |(R̂j ψ̂j )(Fj−1 (xj ))| ∥ϕj ∥L2 (K)
xj ∈∂Ω∩K
∑ 1−d/2 d/2
6C hj ∥∇ψ∥L2 (Sj ) hj
xj ∈∂Ω∩K

6C hK ∥∇ψ∥L2 (Sj ) 6 ChK ∥∇ψ∥L2 (K)
e .
xj ∈∂Ω∩K

This completes the proof of the theorem. 

4.2.2. A posteriori error estimates. For any e ∈ Bh with e = K1 ∩K2


we define the jump residual for uh by
( )
Je = [[a(x)∇uh ]] · ν e := a(x)∇uh |K1 · ν1 + a(x)∇uh |K2 · ν2 , (4.10)
where νi is the unit outer normal of ∂Ki restricted to e. For convenience,
define Je = 0 for any side e ⊂ ∂Ω. For any K ∈ Mh , define the error
indicator ηK by

ηK2
: = h2K ∥f ∥2L2 (K) + hK ∥Je ∥2L2 (e) . (4.11)
e⊂∂K

For any domain G ⊂ Ω let ∥| · |∥G = ∥a1/2 ∇ · ∥L2 (G) . Note that ∥| · |∥Ω is
the energy norm in H01 (Ω).

Theorem 4.3 (Upper bound ). There exists a constant C1 > 0 which


depends only on the minimum angle of the mesh Mh and the minimum value
of a(x) such that
 1/2

∥|u − uh |∥Ω 6 C1  2 
ηK .
K∈Mh
4.2. A POSTERIORI ERROR ANALYSIS 43

Proof. Define R ∈ H −1 (Ω) as the residual through


⟨R, φ⟩ = (f, φ) − (a∇uh , ∇φ) = (a∇(u − uh ), ∇φ), ∀ φ ∈ H01 (Ω).
By (4.3) we obtain the Galerkin orthogonality ⟨R, vh ⟩ = 0 for any vh ∈ Vh0 .
Thus
(a∇(u − uh ), ∇φ) = ⟨R, φ − Π0h φ⟩
= (f, φ − Π0h φ) − (a∇uh , ∇(φ − Π0h φ))
∑ ∫
= (f, φ − Πh φ) −
0
a∇uh · ∇(φ − Π0h φ)dx
K∈Mh K
∑ ∫
= (f, φ − Π0h φ) − a∇uh · ν(φ − Π0h φ) ds
K∈Mh ∂K
∑ ∫ ∑∫
= f (φ − Π0h φ)dx − Je (φ − Π0h φ) ds
K∈Mh K e∈Bh e
 1/2

6C ∥hK f ∥2L2 (K)  ∥∇φ∥L2 (Ω)
K∈Mh
 1/2

+C ∥h1/2
e Je ∥L2 (e)
2  ∥∇φ∥L2 (Ω)
e∈Bh
 1/2

6 C1  2 
ηK ∥|φ|∥Ω .
K∈Mh

The theorem follows by taking φ = u − uh ∈ H01 (Ω). 

Theorem 4.4 (Local lower bound ). There exists a constant C2 > 0 which
depends only on the minimum angle of the mesh Mh and the maximum value
of a(x) such that for any K ∈ Mh

2
ηK 6 C2 ∥|u − uh |∥2K ∗ + C2 h2K ∥f − fK ∥2L2 (K) ,
K⊂K ∗
1
∫ ∗
where fK = |K| K f dx and K is the union of all elements sharing at least
one common side with K.

Proof. From the proof of Theorem 4.3,


∑ ∫ ∑∫
(a∇(u − uh ), ∇φ) = f φdx − Je φ ds, ∀φ ∈ H01 (Ω). (4.12)
K∈Mh K e∈Bh e
44 4. ADAPTIVE FINITE ELEMENT METHODS

The remains of the proof is divided into two steps.


1◦ ) For any K ∈ Mh , Let φK = (d + 1)d+1 λ1 · · · λd+1 be the canonical
bubble function in K, we choose the constant αK such that φ = αK φK
satisfies ∫
fK φdx = h2K ∥fK ∥2L2 (K) .
K
It is clear that
h2 |fK ||K| 1− d
|αK | = ∫K 6 ChK 2 ∥hK fK ∥L2 (K)
K φK dx

and thus

h−1
K ∥φ∥L2 (K) , ∥∇φ∥L2 (K) 6 C|αK | h−1
K |K|
1/2
6 C∥hK fK ∥L2 (K) .

Now

∥hK f ∥2L2 (K) 6 2∥hK fK ∥2L2 (K) + 2∥hK (f − fK )∥2L2 (K)

and it follows from (4.12) and φ ∈ H01 (K) that


∫ ∫ ∫
∥hK fK ∥L2 (K) =
2
fK φdx = (fK − f )φdx + a∇(u − uh )∇φdx
K K K
6C∥hK (f − fK )∥L2 (K) ∥h−1
K φ∥L2 (K) + C∥|u − uh |∥K ∥∇φ∥L2 (K)
( )1/2
6C∥hK fK ∥L2 (K) ∥|u − uh |∥2K + ∥hK (f − fK )∥2L2 (K) .

Therefore,
( )
∥hK f ∥2L2 (K) 6 C ∥|u − uh |∥2K + ∥hK (f − fK )∥2L2 (K) .

2◦ ) For any side e ⊂ ∂K ∩ Ω, let ψe = dd λ1 · · · λd be the bubble function,


where λ1 , · · · , λd are the barycentric coordinate functions associate with the
nodes of e. Denote by ψ = βe ψe the function satisfies

Je ψ = hK ∥Je ∥2L2 (e) ,
e

It is easy to check that


1− d 1/2
|βe | 6 ChK |Je | 6 ChK 2 hK ∥Je ∥L2 (e)

and thus

h−1 ∥∇ψ∥L2 (Ωe ) 6 C |βe | h−1 1/2 1/2


K ∥ψ∥L2 (Ωe ) , K |Ωe | 6 ChK ∥Je ∥L2 (e) .
4.3. ADAPTIVE ALGORITHM 45

Now it follows from (4.12) and ψ ∈ H01 (Ωe ) that


∫ ∫ ∫
hK ∥Je ∥L2 (e) = Je ψ =
2
f ψdx − a∇(u − uh )∇ψdx
e Ωe Ωe
( )1/2
1/2

6 ChK ∥Je ∥L2 (e) ∥hK f ∥2L2 (K) + ∥|u − uh |∥2Ωe .
K⊂Ωe

This completes the proof upon using the estimate for ∥hK f ∥L2 (K) . 

The lower bound in Theorem 4.4 implies that up to a high order quantity
(∑ )1/2
h2 ∥f − f ∥2 , the local energy error ∥|u − uh |∥K ∗ is bound
K⊂K ∗ K K 2
L (K)
from below by the error indicator ηK .

4.3. Adaptive algorithm


Based on the local error indicators, the usual adaptive algorithm solving
the variational problem (4.5) may be described as loops of the form
Solve −→ Estimate −→ Mark −→ Refine. (4.13)
The important convergence property, which guarantees the iterative loop
(4.13) terminates in finite number of iterations starting from any given initial
mesh, depends on the proper design of marking strategies. There are several
marking strategies proposed in the literature. Here we give a brief review.
1. The error equidistribution strategy: Given θ > 1 and a tolerance
TOL, mark all elements K such that
TOL
ηK > θ √ ,
M
where M is the number of elements in Mh .
2. The maximum strategy: Given θ ∈ (0, 1), mark all elements K such
that
ηK > θ max

ηK ′ .
K ∈Mh
3. The Dörfler Strategy. Given θ ∈ (0, 1], mark elements in a subset
M̂h of Mh such that
ηM̂h > θηMh . (4.14)

Given a triangulation MH and and a set of marked elements M̂H ⊂ MH ,


the refinement of MH usually consists of two steps: refining the marked ele-
ments and removing the hanging nodes. We make the following assumption
46 4. ADAPTIVE FINITE ELEMENT METHODS

on the first step:


Any marked simplex is subdivided into several subsimplices such that
1
the measure of each subsimplex 6 × the measure of its father simplex.
m
(4.15)

Here m > 1 is a fixed number. For example, in the case of one time bisection,
m = 2. We remark that some unmarked simplices may be refined in the step
of removing hanging nodes.

4.4. Convergence analysis


In this section we consider the convergence of the adaptive finite element
algorithm based on the Dörfler strategy. We start with the following lemma.

Lemma 4.2. Let Mh be a refinement of MH such that VH ⊂ Vh . Then


the following relation holds

∥|u − uh |∥2Ω = ∥|u − uH |∥2Ω − ∥|uh − uH |∥2Ω .

Proof. The proof is straightforward by the Galerkin orthogonality since


uh − uH ∈ VH0 . 

Let

2
η̃K : = h̃2K ∥f ∥2L2 (K) + h̃K ∥Je ∥2L2 (e) , where h̃K := |K|1/d . (4.16)
e⊂∂K

It is clear that there exist positive constants c1 and c2 such that

c2 ηK 6 η̃K 6 c1 ηK . (4.17)

The modified the error indicator η̃K enjoys the following reduction property.

Lemma 4.3. Let M̂H ⊂ MH be the set of elements marked for refinement
and let Mh be a refinement of MH satisfying the assumption (4.15). Then
there exists a constant C3 depending only the minimum angle of the meshes
and the maximum value of a(x) such that, for any δ > 0,
( ( 1 ) 2 ) ( 1)
2
η̃M 6 (1 + δ) η̃ 2
MH − 1 − √
d
η̃M̂ + 1 + C3 ∥|uh − uH |∥2Ω .
h
m H δ
4.4. CONVERGENCE ANALYSIS 47

Proof. From the Young inequality with parameter δ,


∑ ( ∑ ( ) 2
)
2
η̃M h
= h̃2K ∥f ∥2L2 (K) + h̃K [[a∇(uH + uh − uH )]] · ν e L2 (e)
K∈Mh e⊂∂K∩Ω
∑ ( ∑ ( ) 2
)
6 h̃2K ∥f ∥2L2 (K) + (1 + δ)h̃K [[a∇uH ]] · ν e L2 (e)
K∈Mh e⊂∂K∩Ω
(1) ∑ ∑ ( ) 2
+ 1+ h̃K [[a∇(uh − uH )]] · ν e L2 (e)
δ
K∈Mh e⊂∂K∩Ω
:=I + II.
( )
Note that [[a∇uH ]] · ν e = 0 for any e in the interior of some element
1 e
K ′ ∈ MH and that h̃K = |K|1/d 6 √ ′
d m HK ′ for any K ⊂ K ∈ M̂H . We

have
∑ ( ∑ ( ) 2 )
I 6(1 + δ) h̃2K ∥f ∥2L2 (K) + h̃K [[a∇uH ]] · ν e L2 (e)
K⊂K ′ ∈MH \M̂H e⊂∂K∩Ω
∑ ( ∑ ( ) )
2
+ (1 + δ) h̃2K ∥f ∥2L2 (K) + h̃K [[a∇uH ]] · ν e L2 (e)
K⊂K ′ ∈M̂H e⊂∂K∩Ω
∑ ( ∑ ( ) )
6(1 + δ) e 2 ′ ∥f ∥2 2 ′ + H
H eK′ [[a∇uH ]] · ν
2
K L (K ) e′ L2 (e′ )
K ′ ∈MH \M̂H e′ ⊂∂K ′ ∩Ω

1+δ ∑ ( ∑ ( ) )
+ √ e 2 ′ ∥f ∥2 2 ′ + H
H eK′ [[a∇uH ]] · ν
2
d
m K L (K ) e′ L2 (e′ )
K ′ ∈M̂H e′ ⊂∂K ′ ∩Ω

1+δ 2 ( ( 1 ) 2 )
2
=(1 + δ)η̃M + √ η̃ = (1 + δ) η̃ 2
MH − 1 − √ η̃ .
H \M̂H d
m M̂H d
m M̂H
Next we estimate II. For any e ∈ Bh , denote by K1 and K2 the two elements
having common side e. We have
( 1) ∑ ( ) 2
II 6C 1 + he [[a∇(uh − uH )]] · ν e L2 (e)
δ
e∈Bh
( 1) ∑
=C 1 + he ∥a∇(uh − uH )|K1 · ν1 + a∇(uh − uH )|K2 · ν2 ∥2L2 (e)
δ
e∈Bh
( 1) ∑ ( )
6C 1 + he ∥a∇(uh − uH )|K1 ∥2L2 (e) + ∥a∇(uh − uH )|K2 ∥2L2 (e)
δ
e∈Bh
( 1) ∑ ( 1)
6C 1 + ∥a∇(uh − uH )∥2K1 ∪K2 6 1 + C3 ∥|uh − uH |∥2Ω .
δ δ
e∈Bh

The proof follows by combining the above three estimates. 


48 4. ADAPTIVE FINITE ELEMENT METHODS

Theorem 4.5. Let θ ∈ (0, 1], and let {Mk , uk }k>0 be the sequence of
meshes and discrete solutions produced by the adaptive finite element algo-
rithm based on the Dörfler marking strategy and the assumption (4.15). Sup-
pose the family of meshes {Mk } is shape regular. Then there exist constants
γ > 0, C0 > 0, and 0 < α < 1, depending solely on the shape-regularity of
{Mk }, m, and the marking parameter θ, such that
( )1/2
∥|u − uk |∥2Ω + γηM
2
k
6 C0 α k . (4.18)

Proof. We first show that there exist constants γ0 > 0 and 0 < α < 1
such that
( )
∥|u − uk+1 |∥2Ω + γ0 η̃M
2
k+1
6 α 2
∥|u − u |∥
k Ω
2
+ γ 2
0 Mk .
η̃ (4.19)
For convenience, we use the notation
1
ek := ∥|u − uk |∥Ω , η̃k := η̃Mk , λ := 1 − √
d
.
m
From Lemma 4.2, Lemma 4.3, and the Dörfler strategy, we know that
( ) ( 1)
2
η̃k+1 6 (1 + δ) 1 − λθ2 η̃k2 + 1 + C3 (e2k − e2k+1 ). (4.20)
δ
Next by Theorem 4.3 and (4.17) we have
e1 η̃ 2 ,
e2k 6 C e1 = C1 /c2 .
where C (4.21)
k
( 1)
Let β = 1+ C3 . Then, it follows from (4.20) and (4.21) that, for 0 < ζ < 1,
δ
1 2 1 ( )
e2k+1 + η̃k+1 6e2k + (1 + δ) 1 − λθ2 η̃k2
β β
( ( ))
6ζ e2k + (1 − ζ)C e1 + 1 (1 + δ) 1 − λθ2 η̃ 2
k
β
( 1 ( −1 ( )) )
=ζ e2k + βζ (1 − ζ)C e1 + ζ −1 (1 + δ) 1 − λθ2 η̃ 2 .
k
β
We choose δ > 0 such that (1 + δ)(1 − λθ2 ) < 1 and choose ζ such that
( )
e1 + ζ −1 (1 + δ) 1 − λθ2 = 1 which amounts to take
βζ −1 (1 − ζ)C
( )
e1
(1 + δ) 1 − λθ2 + β C
ζ= < 1.
e1
1 + βC
This implies (4.19) holds with
1 δ e1 C3
δ(1 + δ)(1 − λθ2 ) + (1 + δ)C
γ0 = = and α2 = ζ = .
β (1 + δ)C3 δ + (1 + δ)Ce1 C3
4.4. CONVERGENCE ANALYSIS 49

To conclude the proof, we note that by (4.17) η̃k > c2 ηk and thus (4.18) is
valid with
( )1/2
γ = γ0 c22 and C0 = ∥|u − u0 |∥2Ω + γ0 η̃02 .
This completes the proof of the theorem. 

In two dimensional case, extensive numerical experiments strongly sug-


gest that the adaptive finite element method based on a posteriori error
estimates described in this chapter enjoys the remarkable property that the
meshes and the associated numerical complexity are quasi-optimal in the
sense that the linear finite element discretization error is proportional to
N −1/2 in terms of the energy norm, where N is the number of elements of
the underlying mesh. Theorem 4.5, however, does not provide any hint on
this important property.

Example 4.6. Consider the L-shaped domain problem in Example 4.1 us-
ing the adaptive algorithm base on the maximum strategy. Figure 3 plots the
mesh after 10 adaptive iterations (left) and plots the H 1 errors ∥u − uk ∥H 1 (Ω)
versus Nk in log-log coordinates (right), where uk is the finite element ap-
proximation over Mk , the mesh after k iterations, and Nk is the total number
of degrees of freedom in Mk . It shows that
−1/2
∥u − uk ∥H 1 (Ω) ≈ O(Nk ), (4.22)
is valid asymptotically as k → ∞. We notice that the convergence rate
is quasi-optimal. The implementation details of this example are given in
Section 10.3.

Bibliographic notes. The study of adaptive finite element methods


based on a posteriori error estimates is started in Babuška and Rheihnbold
[6]. The upper bound in Theorem 4.3 is from Babuška and Miller [5] and the
local lower bound in Theorem 4.4 is from Verfürth [50]. Further results on the
a posteriori error estimates for stationary problems can be found in the book
Verfürth [51]. The convergence of adaptive algorithms is first considered in
Dörfler [27]. Section 4.4 is based on the work of Cascon et al [18] where the
convergence of the adaptive finite element methods based on Dörfler strategy
using the error indicator η̃K is proved. The Clément interpolation operator
for non-smooth functions is introduced in [24]. Studies on the quasi-optimal
convergence of adaptive finite element methods can be found in [18] and the
extensive references therein.
50 4. ADAPTIVE FINITE ELEMENT METHODS

0
1 10

0.5
−1
10
Slope: −1/2

H1 error
0
−2
10
−0.5

−3
10
−1 10
2
10
3 4
10
5
10
−1 −0.5 0 0.5 1
DoFs

Figure 3. Example 4.6: the mesh after 10 adaptive itera-


tions (left). The H 1 error versus the total number of degrees
of freedom in log-log coordinates and the dotted reference line
with slope −1/2 (right).

4.5. Exercises
Exercise 4.1. Find the general solution of the form u = rα µ(θ) to the
Laplace equation −△u = 0 in the sector Sω which satisfies the boundary
conditions
∂u
(i) = 0 on Γ1 ∪ Γ2 ;
∂ν
∂u
(ii) u = 0 on Γ1 , = 0 on Γ2 .
∂ν
Exercise 4.2. Show that there exists a constant C depending only on
the minimum angle of Mh such that (4.8) and (4.9) hold.
Exercise 4.3. Let Ω be a bounded polyhedral domain in Rd (d = 2, 3).
Prove the following error estimate for the Clément interpolation operator
∥φ − Πh φ∥H k (K) 6 Ch2−k
K |φ|H 2 (K)
e ∀φ ∈ H 2 (Ω), k = 0, 1.
Exercise 4.4. Let Ω ⊂ R2 be a bounded polygon. For f ∈ L2 (Ω) and g ∈
C(∂Ω), let u ∈ H 1 (Ω) be the weak solution of −∆u = f in Ω, u = g on ∂Ω.
Let uh ∈ Vh be the conforming linear finite element approximation such that
uh = Ih g on ∂Ω. Derive an a posteriori error estimate for ∥∇(u − uh )∥L2 (Ω) .
Exercise 4.5. Let Ω = (0, 1). Derive a posteriori error estimate for the
conforming linear finite element approximation to the two-point boundary
value problem −u′′ = f in Ω, u(0) = α, u′ (1) = β.
CHAPTER 5

Finite Element Multigrid Methods

The multigrid method provides an optimal complexity algorithm for solv-


ing discrete elliptic boundary value problems. The error bounds of the ap-
proximate solution obtained from the full multigrid algorithm are comparable
to the theoretical error bounds of the the finite element solution, while the
amount of computational work involved is proportion only to the number of
unknowns in the discretized equations.
The multigrid method has two main features: smoothing on the current
grid and error correction on the coarse grid. The smoothing step has the
effect of damping the oscillatory part of the error. The smooth part of the
error can then be corrected on the coarse grid.

5.1. The model problem


Let Ω ⊂ Rd (d = 1, 2, 3) be a convex polyhedral domain and

a(u, v) = (α∇u · ∇v + βuv) dx (5.1)

where α and β are smooth functions such that for some α0 , α1 , β1 ∈ R+ we
have α0 6 α(x) 6 α1 and 0 6 β(x) 6 β1 for all x ∈ Ω. We consider the
Dirichlet problem: Find u ∈ V = H01 (Ω) such that
a(u, v) = (f, v) ∀ v ∈ V, (5.2)
where f ∈ L2 (Ω) and (·, ·) denotes the L2 inner product.
Let Mk be a sequence of meshes of Ω obtained successively by standard
uniform refinements. Let Vk be the H 1 -conforming linear finite element space
over Mk whose functions vanish on ∂Ω. The discrete problem on Vk is then
to find uk ∈ Vk such that
a(uk , vk ) = (f, vk ) ∀ vk ∈ Vk . (5.3)
We introduce the L2 and H 1 projection operators
(Qk φ, vk ) = (φ, vk ) , a(Pk ψ, vk ) = a(ψ, vk ) ∀ vk ∈ Vk ,
51
52 5. FINITE ELEMENT MULTIGRID METHODS

where φ ∈ L2 (Ω) and ψ ∈ H01 (Ω). Then by using the Aubin-Nitsche trick
(cf. Section 3.3) we have
∥w − Pk w∥L2 (Ω) 6 Chk ∥w∥A ∀w ∈ H01 (Ω),
where hk = maxK∈Mk hK and ∥·∥A = a(·, ·)1/2 . From v − Pk−1 v = (I −
Pk−1 )(I − Pk−1 )v, we then have the following approximation property
∥(I − Pk−1 )v∥L2 (Ω) 6 Chk ∥(I − Pk−1 )v∥A ∀ v ∈ Vk . (5.4)

5.2. Iterative methods


Let Ak : Vk → Vk be defined by
(Ak wk , vk ) = a(wk , vk ) ∀ vk ∈ Vk .
Then the finite element scheme (5.3) can be rewritten in the form
Ak uk = fk := Qk f. (5.5)
Let {ϕik : i = 1, · · · , nk } denote the nodal basis of Vk . Given any vk =
∑nk i ek , e
i=1 vk,i ϕk ∈ Vk , define v vek ∈ Rnk as follows

vk )i = vk,i , (e
(e vek )i = (vk , ϕik ), i = 1, · · · , nk . (5.6)
[ ]
ek = a(ϕj , ϕi ) nk
Let A k k i,j=1 be the stiffness matrix. We have the following
matrix representation of (5.5):
e
A ek = fek ,
ek u (5.7)
We want to consider the following linear iterative method for (5.7): Given
e(0)
u ∈ Rnk

e(n+1) = u
u e(n) + Rek (feek − A
ek u
e(n) ), n = 0, 1, 2, · · · . (5.8)
ek is called the iterator of A
R ek . Note that (5.8) converges if the spectral radius
e e
ρ(I − Rk Ak ) < 1. If we define a linear operator Rk : Vk 7→ Vk as

nk
Rk g = ek )ij (g, ϕj )ϕi ,
(R (5.9)
k k
i,j=1

then Rg e ee, so that the algorithm (5.8) for the matrix equation (5.7) is
k g = Rk g
equivalent to the following linear iterative algorithm for the operator equation
(5.5): Given u(0) ∈ Vk
u(n+1) = u(n) + Rk (fk − Ak u(n) ), n = 0, 1, 2, · · · .
5.2. ITERATIVE METHODS 53

^
Here we have used the fact that A^ ku
ek u
(n) = A e(n) . It is clear that the error
propagation operator is I − Rk Ak .
Noting that A ek is symmetric and positive definite, we write A ek = De−
e−L
L e T with D e and −L e being the diagonal and the lower triangular part of
ek respectively. We recall the following choices of R
A ek that result in various
different iterative methods:



ω
 ρ(Aek ) I

Richardson;
 e −1
ek = ω D
R
Damped Jacobi;
(5.10)

 (De − e
L)−1 Gauss-Seidel;


(D e − L) e D
e −T D( e − L)
e −1 Symmetrized Gauss-Seidel.

Lemma 5.1. We have


(i)The Richardson method converges if and only if 0 < ω < 2;
2
(ii)The Damped Jacobi method converges if and only if 0 < ω < ek ) ;
e −1 A
ρ(D
(iii)The Gauss-Seidel method and symmetrized Gauss-Seidel method al-
ways converge.

Lemma 5.2. The damped Jacobi iterative method for solving (5.7) is
equivalent to the following iterative scheme in the space Vk :

nk
Pki A−1
(n+1) (n) (n)
uk = uk + Rk (fk − A k uk ) , Rk = ω k ,
i=1

where Pki is the projection operator to the subspace spanned by {ϕik }:


a(Pki wk , ϕik ) = a(wk , ϕik ) ∀ wk ∈ Vk . (5.11)

Proof. From (5.11) we know that


a(wk , ϕik ) i
Pki wk = ϕ , i = 1, 2, · · · , nk .
a(ϕik , ϕik ) k

Recall that the iterator of the damped Jacobi iterative method is R ek =


( )
e = diag ω/a(ϕ , ϕ ), · · · , ω/a(ϕ , ϕ ) . It follows from (5.9) that
ωD −1 1 1 nk nk
k k k k

∑nk
(g, ϕik ) i ∑nk
a(A−1 i ∑nk
k g, ϕk ) i
Rk g = ω ϕ
i , ϕi ) k
= ω i , ϕi )
ϕk = ω Pki A−1
k g ∀g ∈ Vk ,
i=1
a(ϕk k i=1
a(ϕk k i=1

which completes the proof. 


54 5. FINITE ELEMENT MULTIGRID METHODS

Lemma 5.3. The standard Gauss-Seidel iterative method for solving (5.7)
is equivalent to the following iterative scheme in the space Vk :
Rk = (I − Ek )A−1
(n+1) (n) (n)
uk = uk + Rk (fk − Ak uk ), k ,

where Ek = (I − Pknk ) · · · (I − Pk1 ).

Lemma 5.4. The symmetrized Gauss-Seidel iterative method for solving


(5.7) is equivalent to the following iterative scheme in the space Vk :

Rk = (I − Ek∗ Ek )A−1
(n+1) (n) (n)
uk = uk + Rk (fk − Ak uk ), k ,

where Ek = (I − Pknk ) · · · (I − Pk1 ) and Ek∗ = (I − Pk1 ) · · · (I − Pknk ) is the


conjugate operator of Ek with respect to a(·, ·).

The proofs of Lemma 5.3 and Lemma 5.4 are left as Exercise 5.1.
It is well-known that the classical iterative methods listed in (5.10) are
inefficient for solving (5.7) when nk is large. But they have an important
“smoothing property” that we discuss now. For example, Richardson itera-
tion for (5.7) reads as
ω ee ek u
e(n+1) = u
u e(n) + (f k − A e(n) ), n = 0, 1, 2, · · · .
e
ρ(Ak )
e ϕe = µi ϕei with µ1 6 µ2 6 · · · 6 µn , (ϕei , ϕej ) = δij and u
Let A ek − u
e0 =
∑nk k ei k

i=1 αi ϕi , then

ek − u
u e(n) = αi (1 − ωµi /µnk )n ϕei .
i

For a fixed ω ∈ (0, 2), it is clear that (1 − ωµi /µnk )n converges to zero very
fast as n → ∞ if µi is close to µnk . This means that the high frequency
modes in the error get damped very quickly.
Let us illustrate the smoothing property of the Gauss-Seidel method by
a simple numerical example. Consider the Poisson equation −∆u = 1 with
homogeneous Dirichlet condition on the unit square which is discretized by
the uniform triangulation. Figure 1 shows that high frequency errors are well
annihilated by Gauss-Seidel iterations.
For the above model problem, Brandt applied the “local mode analysis”
to show that: The damped Jacobi method achieve its optimal smoothing
property when ω = 4/5; the Gauss-Seidel method is a better smoother than
the damped Jacobi method; the Gauss-Seidel method with red-black ordering
is a better smoother than the one with lexicographic ordering. We also
5.3. THE MULTIGRID V-CYCLE ALGORITHM 55

Figure 1. Error after 0, 3, 9 and 200 Gauss-Seidel iterations,


respectively, with 2113 unknowns

note that the red-black Gauss-Seidel and Jacobi method have better parallel
features.

5.3. The multigrid V-cycle algorithm


The basic idea in a multigrid strategy is that smoothing on the current
grid and error correction on a coarser grid. Let Rk : Vk → Vk be a linear
smoother and Rkt be the adjoint of Rk with respect to (·, ·). The multigrid
V-cycle algorithm for solving (5.5) can be written as

(n+1) (n) (n)


uk = uk + Bk (fk − Ak uk ), n = 0, 1, 2, · · · , (5.12)
where the iterator Bk is defined by the following algorithm.

Algorithm 5.1. (V-cycle iterator). For k = 1, define B1 = A−1 1 . Assume


that Bk−1 : Vk−1 7→ Vk−1 is defined. For g ∈ Vk , define the iterator Bk : Vk 7→
Vk through the following steps.
(1) Pre-smoothing: For y0 = 0 ∈ Vk and j = 1, · · · , m,

yj = yj−1 + Rk (g − Ak yj−1 ).

(2) Coarse grid correction: ym+1 = ym + Bk−1 Qk−1 (g − Ak ym ),


(3) Post-smoothing: For j = m + 2, · · · , 2m + 1,

yj = yj−1 + Rkt (g − Ak yj−1 ).

Define Bk g = y2m+1 .
56 5. FINITE ELEMENT MULTIGRID METHODS

In the following, we assume that Rk is symmetric with respect to (·, ·)


and positive semi-definite. Denote by y = A−1
k g, then we have

y2m+1 − y = (I − Rk Ak )m (I − Bk−1 Qk−1 Ak )(I − Rk Ak )m (y0 − y).


Thus
I − Bk Ak = (I − Rk Ak )m (I − Bk−1 Qk−1 Ak )(I − Rk Ak )m
On the other hand, for any vk ∈ Vk , wk−1 ∈ Vk−1 , we have
(Qk−1 Ak vk , wk−1 ) = (Ak vk , wk−1 ) = a(vk , wk−1 )
= a(Pk−1 vk , wk−1 ) = (Ak−1 Pk−1 vk , wk−1 )
that is, Qk−1 Ak = Ak−1 Pk−1 . Therefore we have the following two-level re-
currence relation.

Lemma 5.5. Let Kk = I − Rk Ak . Then


I − Bk Ak = Kkm ((I − Pk−1 ) + (I − Bk−1 Ak−1 )Pk−1 )Kkm on Vk .

The following lemma is left as an Exercise 5.2.

Lemma 5.6. We have


a(Kk v, w) = a(v, Kk w) and (Bk v, w) = (v, Bk w) ∀ v, w ∈ Vk .

The following abstract estimate plays an important role in the analysis


of multigrid method.

Theorem 5.1. Assume that Rk : Vk → Vk is symmetric with respect to


(·, ·), positive semi-definite, and satisfies
a((I − Rk Ak )v, v) > 0 ∀ v ∈ Vk . (5.13)
Moreover
(Rk−1 v, v) 6 αa(v, v) ∀ v ∈ (I − Pk−1 )Vk . (5.14)
Then we have
0 6 a((I − Bk Ak )v, v) 6 δa(v, v) ∀ v ∈ Vk , (5.15)
where δ = α/(α + 2m).

Proof. We prove by induction, (5.15) is trivial when k = 1 since B1 =


A−1
1 . Let us now assume (5.15) is true for k − 1:
0 6 a((I − Bk−1 Ak−1 )v, v) 6 δa(v, v) ∀ v ∈ Vk−1 . (5.16)
5.3. THE MULTIGRID V-CYCLE ALGORITHM 57

Then it follows from Lemma 5.5 that for any v ∈ Vk ,

a((I − Bk Ak )v, v)
= a(Kkm (I − Pk−1 )Kkm v, v) + a(Kkm (I − Bk−1 Ak−1 )Pk−1 Kkm v, v)
= a((I − Pk−1 )Kkm v, Kkm v) + a((I − Bk−1 Ak−1 )Pk−1 Kkm v, Pk−1 Kkm v)
> a((I − Pk−1 )Kkm v, Kkm v) = a((I − Pk−1 )Kkm v, (I − Pk−1 )Kkm v)
> 0.

For the upper bound, we have

a((I − Bk Ak )v, v) 6 a((I − Pk−1 )Kkm v, Kkm v) + δa(Pk−1 Kkm v, Pk−1 Kkm v)
= (1 − δ)a((I − Pk−1 )Kkm v, Kkm v) + δa(Kkm v, Kkm v).

Now

a((I−Pk−1 )Kkm v, Kkm v) = ((I − Pk−1 )Kkm v, Ak Kkm v)


= (Rk−1 (I − Pk−1 )Kkm v, Rk Ak Kkm v)
6 (Rk−1 (I − Pk−1 )Kkm v, (I − Pk−1 )Kkm v)1/2 (Rk Ak Kkm v, Ak Kkm v)1/2

6 αa((I − Pk−1 )Kkm v, Kkm v)1/2 a((I − Kk )Kkm v, Kkm v)1/2 .

Thus
a((I − Pk−1 )Kkm v, Kkm v) 6 αa((I − Kk )Kkm v, Kkm v).
Since Rk : Vk → Vk is symmetric and simi-definite, by Lemma 5.6 we know
that Kk is symmetric with respect to a(·, ·) and 0 6 a(Kk v, v) 6 a(v, v).
Thus the eigenvalues of Kk belong to [0, 1]. Hence

a((I − Kk )Kk2m v, v) 6 a((I − Kk )Kki v, v) ∀ 0 6 i 6 2m,

and consequently

1 ∑
2m−1
1
a((I − Kk )Kk2m v, v) 6 a((I − Kk )Kki v, v) = a((I − Kk2m )v, v).
2m 2m
i=0

This yields
α ( α )
a((I − Bk Ak )v, v) 6 (1 − δ) a(v, v) + δ − (1 − δ) a(Kkm v, Kkm v)
2m 2m
α
= a(v, v).
α + 2m
This completes the proof of the theorem. 
58 5. FINITE ELEMENT MULTIGRID METHODS

Now we define the smoothers which satisfy the assumptions in Theorem


5.1. Let

K
Vk = Vki
i=1

and denote by Pki : Vk → Vki the projection

a(Pki v, w) = a(v, w) ∀ w ∈ Vki , ∀ v ∈ Vk .

We introduce the following additive and multiplicative Schwarz operator


K
Rka = Pki A−1
k
i=1

and

Rkm = (I − Ek∗ Ek )A−1


k ,

where Ek = (I − PkK ) · · · (I − Pk1 ) and Ek∗ = (I − Pk1 ) · · · (I − PkK ) is the


conjugate operator of Ek with respect to a(·, ·).
If K = nk and Vki = span{ϕik }, then, from Lemma 5.2 and Lemma 5.4,
Rk and Rkm are the iterators of the Jacobi method and the symmetrized
a

Gauss-Seidel method, respectively.

Theorem 5.2. Assume there exist constants β, γ > 0 such that


K ∑
∑ K (∑
K )1 ( ∑
K )1
a(vki , wkj ) a(wkj , wkj ) ,
2 2
(i) 6β a(vki , vki )
i=1 j=1 i=1 j=1
∀vki , wki ∈ Vki ;

K
(ii) ∑
inf a(vki , vki ) 6 γa(v, v) ∀ v ∈ (I − Pk−1 )Vk .
v= K v i
i=1 k i=1
v i ∈V i
k k

Then

1◦ ) For ω 6 1/β, Rk = ωRka satisfies the assumptions in Theorem 5.1


with α = γ/ω.

2 ) Rk = Rkm satisfies the assumptions in Theorem 5.1 with α = β 2 γ.
5.3. THE MULTIGRID V-CYCLE ALGORITHM 59

Proof. 1◦ ) For any v ∈ Vk ,


(K ) (K )1/2
∑ ∑ ∑
K
a(Rka Ak v, v) = a Pki v, v 6 a(v, v)1/2 a Pki v, Pki v
i=1 i=1 i=1
(K )1/2

6β 1/2
a(v, v) 1/2
a(Pki v, v)
i=1
1/2 1/2
=β a(v, v) a(Rka Ak v, v)1/2 .
Thus
( )
a (I − ωRka Ak )v, v > 0 if ω 6 1/β.
Next we prove (5.14) by showing that

K
((Rka )−1 v, v) = ∑K
inf a(vki , vki ) for any v ∈ (I − Pk−1 )Vk . (5.17)
v= vi
i=1 k i=1
v i ∈V i
k k
∑K
Denote by Θ = Rka , and v = i
i=1 vk , vki ∈ Vki . Then

K ∑
K ∑
K
(Θ−1 v, v) = (Θ−1 v, vki ) = a(A−1 −1 i
k Θ v, vk ) = a(Pki A−1 −1 i
k Θ v, vk )
i=1 i=1 i=1
( )1/2 ( )1/2

K ∑
K
6 a(Pki A−1 −1 i −1 −1
k Θ v, Pk Ak Θ v) a(vki , vki )
i=1 i=1
( )1/2 ( K )1/2

K ∑
= (Pki A−1 −1 −1
k Θ v, Θ v) a(vki , vki ) , (5.18)
i=1 i=1

that is
( )1/2

K
(Θ−1 v, v) 6 (v, Θ−1 v)1/2 a(vki , vki ) .
i=1
Thus

K ∑
K
−1
(Θ v, v) 6 a(vki , vki ) ∀v = vki .
i=1 i=1

To show the equality in (5.17) we only need to take vki = Pki A−1 −1
k Θ v. This
proves the assertion for Rka .
2◦ ) Since Rkm = (I − Ek∗ Ek )A−1
k , we have
( )
a (I − Rkm Ak )v, v = a(Ek v, Ek v) > 0.
60 5. FINITE ELEMENT MULTIGRID METHODS

Note that (5.18) holds for any invertible operator on Vk . By letting Θ = Rkm
in (5.18) we have
(K )1/2
( m −1 ) ( a m −1 ) ∑
(Rk ) v, v 6 Rk (Rk ) v, (Rkm )−1 v
1/2
a(vki , vki ) .
i=1
It follows from (ii) that
( m −1 ) ( )1/2
(Rk ) v, v 6 γ 1/2 Rka (Rkm )−1 v, (Rkm )−1 v a(v, v)1/2 . (5.19)
Now we show
( ) ( )
Rka v, v 6 β 2 Rkm v, v , ∀ v ∈ Vk . (5.20)
Denote by y = A−1
k v, then
( m ) ( ) ( )
Rk v, v = (I − E ∗ E)A−1 ∗
k v, v = a (I − E E)y, y = a(y, y) − a(Ek y, Ek y)

Let Ek0 = I and Eki = (I − Pki ) · · · (I − Pk1 ), i = 1, · · · , K. Then


Eki = (I − Pki )Eki−1 and EkK = Ek .
Therefore
( )
a(Eki y, Eki y) = a (I − Pki )Eki−1 y, Eki−1 y
= a(Eki−1 y, Eki−1 y) − a(Pki Eki−1 y, Eki−1 y),
which yields

K
a(Ek y, Ek y) = a(y, y) − a(Pki Eki−1 y, Eki−1 y).
i=1
Consequently,
( ) ∑K
Rkm v, v = a(Pki Eki−1 y, Eki−1 y).
i=1
On the other hand,
( ) ∑K
( i −1 ) ∑K ∑
K
Rka v, v = Pk Ak v, v = a(Pki y, y) = a(Pki y, Pki y).
i=1 i=1 i=1

We deduce from Ekj = Ekj−1 − Pkj Ekj−1 that



i
Eki y = y − Pkj Ekj−1 y
j=1
and thus

i ∑
i
Pki y = Pki Eki y + Pki Pkj Ekj−1 y = Pki Pkj Ekj−1 y.
j=1 j=1
5.4. THE FINITE ELEMENT MULTIGRID V-CYCLE ALGORITHM 61

Now
( ) ∑
K ∑
i K ∑
∑ i
Rka v, v = a(Pki y, Pkj Ekj−1 y) = a(Pki y, Pkj Ekj−1 y)
i=1 j=1 i=1 j=1
( )1/2  1/2

K ∑
K
6β a(Pki y, Pki y)  a(Pkj Ekj−1 y, Pkj Ekj−1 y)
i=1 j=1
( )1/2 ( )1/2
= β Rka v, v Rkm v, v .

This proves (5.20). Finally, we deduce from (5.19) that


( m −1 ) ( )1/2
(Rk ) v, v 6 βγ 1/2 (Rkm )−1 v, v a(v, v).

This completes the proof of the theorem. 

5.4. The finite element multigrid V-cycle algorithm


Now we apply the abstract result in last section to solve the discrete el-
liptic problem (5.3). Let K = nk and Vki = span{ϕik }, the subspace spanned
by nodal basis function ϕik , i = 1, 2, · · · , nk . Then the condition (i) in Theo-
rem 5.2 is easily satisfied by the local property of finite element nodal basis
functions. For any v ∈ (I − Pk−1 )Vk , it remains to find the decomposition
∑ k i i
v = ni=1 vk , vk ∈ Vki , so that (ii) of Theorem 5.2 is satisfied. To do so, we
∑ k
take the canonical decomposition v = ni=1 v(xik )ϕik with vki = v(xik )ϕik ∈ Vki .
It is easy to see that

nk ∑
nk
∥vki ∥2L2 (Ω) 6 C hdk v(xik )2 6 C∥v∥2L2 (Ω)
i=1 i=1

by the scaling argument. Thus by the inverse estimate and (5.4) we get

nk ∑
nk
a(vki , vki ) 6 Ch−2
k ∥vki ∥2L2 (Ω) 6 Ch−2
k ∥v∥L2 (Ω) 6 Ca(v, v),
2

i=1 i=1

for any v ∈ (I − Pk−1 )Vk .

Theorem 5.3. Let Bk be the standard multigrid V-cycle with symmetric


Gauss-Seidel relaxation as the smoothing operator. Then the exists a constant
C independent of Mk and m > 1 such that
C
∥I − Bk Ak ∥A 6 ,
C +m
62 5. FINITE ELEMENT MULTIGRID METHODS

where
a((I − Bk Ak )v, v)
∥I − Bk Ak ∥A = sup .
0̸=v∈Vk ∥v∥A
Example 5.4. Consider the Poisson equation −∆u = 1 with homoge-
neous Dirichlet condition on unit square discretized with uniform triangula-
tions. We solve the problem by the V-cycle algorithm (5.12) with zero initial
value, Gauss-Seidel smoother (m = 2), and stopping rule
e / e
∥fek − A ek ∥∞ ∥fek − A
ek u ek u
ek ∥∞ < 10−6 .
(n) (0)

The initial mesh consists of 4 triangles. Table 1 shows the number of multi-
grid iterations after 1–10 uniform refinements by the “newest vertex bisec-
tion” algorithm. The final mesh consists of 4194304 triangles and 2095105
interior nodes. For an implementation of the V-cycle algorithm we refer to
Section 10.4.

N 5 25 113 481 1985 8065 32513 130561 523265 2095105


l 3 6 6 7 7 7 7 7 7 7
Table 1. Number of multigrid iterations (l) versus number
of degrees of freedom (N ) for Example 5.4.

5.5. The full multigrid and work estimate


We shall now describe a more efficient multigrid technique, called the full
multigrid cycle. Recall that uk is the k th level finite element solution. By
the convergence theory of finite element methods in Chapter 3 we have the
following error estimates:
∥u − uk ∥A 6 c1 hk , k > 1, (5.21)
where c1 > 0 is a constant independent of k. The full multigrid method
(FMG) is based on the following two observations:
(1) uk−1 ∈ Vk−1 ⊂ Vk is closed to uk ∈ Vk and hence can be used as an
initial guess for an iterative scheme for solving uk ;
(2) Each uk can be solved within its truncation error by a multigrid
iterative scheme.

Algorithm 5.2. (FMG).


For k = 1, û1 = A−1
1 f1 ;
5.5. THE FULL MULTIGRID AND WORK ESTIMATE 63

For k > 2, let ûk = ûk−1 , and iterate ûk ← ûk + Bk (fk − Ak ûk ) for l
times.

Denote by h̃k = maxK∈Mk |K|1/d . It is clear that there exists a positive


number p > 1 such that h̃k = h̃k−1 /p and that h̃k is equivalent to hk , that
is, there exist positive constants c2 and c3 depending only on the minimum
angle of the meshes such that c2 h̃k 6 hk 6 c3 h̃k . The following theorem
says that the above full multigrid algorithm can produce results with errors
comparable to the errors of the finite element solutions.

Theorem 5.5. Assume that Theorem 5.1 holds and that δ l < 1/p. Then
c3 pδ l
∥uk − ûk ∥A 6 c1 hk , k > 1.
c2 (1 − pδ l )
Proof. By Theorem 5.1 we have
∥uk − ûk ∥A 6 δ l ∥uk − ûk−1 ∥A 6 δ l (∥uk − uk−1 ∥A + ∥uk−1 − ûk−1 ∥A ).
Noting that ∥u1 − û1 ∥A = 0, we conclude that

k−1 ∑
k−1
∥uk − ûk ∥A 6 (δ ) ∥uk−n+1 − uk−n ∥A 6
l n
(δ l )n ∥u − uk−n ∥A
n=1 n=1

k−1 ∑
k−1
6 c1 (δ l )n hk−n 6 c1 c3 (δ l )n h̃k−n
n=1 n=1

k−1
c1 c3 pδ l
6 c1 c3 h̃k (pδ l )n 6 hk .
c2 1 − pδ l
n=1

This completes the proof. 

We now turn our attention to the work estimate. It is clear that


1 1
nk = dimVk ∼ d ∼ d ∼ (pd )k . (5.22)
hk h̃k
Theorem 5.6. The work involved in the FMG is O(nk ).

Proof. Let Wk denote the work in the k th level V-cycle iteration. To-
gether, the smoothing and correction steps yield
Wk 6 Cmnk + Wk−1 .
Hence
Wk 6 Cm(n1 + n2 + · · · + nk ) 6 Cnk .
64 5. FINITE ELEMENT MULTIGRID METHODS

Let Ŵk denote the work involved in obtaining ûk in the FMG. Then
Ŵk 6 Ŵk−1 + lWk 6 Ŵk−1 + Cnk .
Thus we have
Ŵk 6 C(n1 + · · · + nk ) 6 Cnk .
This completes the proof. 

This theorem shows that the FMG has an optimal computational com-
plexity O(nk ) to compute the solution within truncation error. In contrast,
the computational complexity of the k th level V-cycle iteration is not op-
timal, because its number of operations required to compute the solution
within truncation error is O(nk log h1k ) = O(nk log nk ).

5.6. The adaptive multigrid method


The distinct feature of applying multigrid methods on adaptively refined
finite element meshes is that the number of nodes of Mk may not grow expo-
nentially with respect to the number of mesh refinements k. In practice, local
relaxation schemes are used in applying multigrid methods on adaptively
refined finite element meshes.
Let Nek be the set of nodes on which local Gauss-Seidel relaxation are
carried out
ek = {z ∈ N
N ek : z is a new node or z ∈ Nk−1 but ϕz ̸= ϕz },
k k−1

where ϕzk is the nodal basis function at the node z in Vk . For convenience we
denote N ek = {xj : j = 1, · · · , ñk }. The local Gauss-Seidel iterative operator
k
is given by
Rk = (I − (I − Pkñk ) · · · (I − Pk1 ))A−1
k .

The following theorem is proved by Wu and Chen [52].

Theorem 5.7. Let the meshes Mk , 0 6 k 6 J, be obtained by the “newest


vertex bisection” algorithm in Section 10.4. Let each element K ∈ Mk is
obtained by refining some element K ′ ∈ Mk−1 finite number of times so that
hK ′ 6 ChK . Then the standard multigrid V-cycle with local Gauss-Seidel
relaxation satisfies
∥I − Bk Ak ∥A < δ
for some constant δ < 1 independent of k and Mk .
5.7. EXERCISES 65

Bibliographic notes. There is a rich literature on the mathematical


theory of multigrid methods. We refer to Brandt [14], the book Bramble
[12], and the review paper Xu [53] for further mathematical results. Our
development in Section 5.3 follows Arnold et al [3]. The full multigrid method
is introduced in Brandt [15]. The convergence of the adaptive multigrid finite
element method is considered in Wu and Chen [52].

5.7. Exercises
Exercise 5.1. Prove Lemma 5.3 and Lemma 5.4.
Exercise 5.2. Prove Lemma 5.6.
( )
Exercise 5.3. Let Rk be symmetric with respect to ·, · and let Kk =
I − Rk Ak . Then Rk is semi-definite and satisfies
( )
a Kk v, v > 0 ∀ v ∈ Vk
is equivalent to
∥Kk ∥A 6 1 and ∥I − Kk ∥A 6 1.
CHAPTER 6

Mixed Finite Element Methods

In this chapter we consider mixed finite element methods for solving


partial differential equations that can be formulated in the variational saddle
point form. We first introduce the abstract framework for the approximation
of saddle point problems. Then we apply the general results to two examples,
the Possion equation in the mixed form and the Stokes problem.

6.1. Abstract framework


Let X, M be two Hilbert spaces and assume
a : X × X → R, b: X ×M →R
are continuous bilinear forms. Let f ∈ X ′ and g ∈ M ′ . We denote both the
dual pairing of X with X ′ and that of M with M ′ by ⟨·, ·⟩. We consider the
following problem: Find (u, λ) ∈ X × M such that
a(u, v) + b(v, λ) = ⟨f, v⟩ ∀v ∈ X,
(6.1)
b(u, µ) = ⟨g, µ⟩ ∀µ ∈ M.
Define the Lagrange functional:
1 [ ]
L(u, λ) := a(u, u) − ⟨f, u⟩ + b(u, λ) − ⟨g, λ⟩ ∀(u, λ) ∈ X × M.
2
It is easy to see that every solution (u, λ) of problem (6.1) must satisfy the
saddle point property
L(u, µ) 6 L(u, λ) 6 L(v, λ) ∀(v, µ) ∈ X × M.
It is often easier to handle the saddle point equation (6.1) if we reformulate
it as operator equations. Introduce
A : X → X′ : ⟨Au, v⟩ = a(u, v) ∀v ∈ X.
Similarly, we associate a mapping B and its adjoint mapping B ′ with the
form b:
B : X → M ′ : ⟨Bu, µ⟩ = b(u, µ) ∀µ ∈ M,
67
68 6. MIXED FINITE ELEMENT METHODS

B′ : M → X ′ : ⟨B ′ λ, v⟩ = b(v, λ) ∀v ∈ X.
Then (6.1) is equivalent to
Au + B ′ λ = f in X ′ ,
(6.2)
Bu = g in M ′ .
Define
V = ker(B) = {v ∈ X : b(v, µ) = 0 ∀µ ∈ M } . (6.3)
Lemma 6.1. The following assertions are equivalent:
(i) There exists a constant β > 0 such that
b(v, µ)
inf sup > β; (6.4)
µ∈M v∈X ∥v∥X ∥µ∥M
(ii) The operator B : V ⊥ → M ′ is an isomorphism, and
∥Bv∥M ′ > β∥v∥X ∀v ∈ V ⊥ ; (6.5)
(iii) The operator B ′ : M → V 0 ⊂ X ′ is an isomorphism, and
∥B ′ µ∥X ′ > β∥µ∥M ∀µ ∈ M. (6.6)
Here V 0 is the polar set
V 0 = {l ∈ X ′ : ⟨l, v⟩ = 0 ∀v ∈ V }.
Proof. By Riesz Representation Theorem, there exist canonical isomet-
ric isomorphisms
πX : X ′ → X, πM : M ′ → M
such that
(πX l, v) = ⟨l, v⟩ ∀v ∈ X, ∀l ∈ X ′ ,
(πM g, µ) = ⟨g, µ⟩ ∀µ ∈ M, ∀ g ∈ M ′ .
It is easy to check that V 0 and V ⊥ is isomorphic under the mapping πX .
In fact, for any l ∈ V 0 , (πX l, v) = ⟨l, v⟩ = 0 for any v ∈ V . This implies
πX l ∈ V ⊥ . The inverse is also valid.
We prove now the equivalence of (i) and (iii). It is clear that (6.4) is
equivalent to (6.6). So we only need to show that B ′ : M → V 0 ⊂ X ′ is an
isomorphism. By (6.6) we know that B ′ : M → R(B ′ ) is an isomorphism.
We now show R(B ′ ) = V 0 . First we have R(B ′ ) is closed and R(B ′ ) ⊂ V 0 .
In fact, for any v ∈ V and µ ∈ M , we know ⟨B ′ µ, v⟩ = ⟨Bv, µ⟩ = 0. That is
R(B ′ ) ⊂ V 0 . By isometry πX we know that πX R(B ′ ) is a closed subspace of
πX V 0 = V ⊥ . If v ∈ πX R(B ′ )⊥ ,
(πX B ′ µ, v) = 0 ∀µ ∈ M ⇔ ⟨Bv, µ⟩ = 0 ∀µ ∈ M ⇔ v ∈ V.
6.1. ABSTRACT FRAMEWORK 69

Thus V ⊥ = πX R(B ′ )⊥ . This proves the equivalence of (i) and (iii).


Next we prove the equivalence of (ii) and (iii). We consider the diagram
B
V ⊥ −−−−→ M′
 
−1  π
πX y y M
X ′ ⊃ V 0 ←−−′−− M
B
−1 −1
For any v ∈ V ⊥ , πX v ∈ V 0, thus there exists a µ ∈ M such that B ′ µ = πX v
−1 ′ −1 −1 −1
and ∥µ∥M 6 β ∥B µ∥X ′ = β ∥πX v∥X ′ = β ∥v∥X . Thus
⟨Bv, λ⟩ ⟨B ′ µ, v⟩ ∥v∥2
∥Bv∥M ′ = sup > > −1 X = β∥v∥X .
λ∈M ∥λ∥M ∥µ∥M β ∥v∥X
Now we prove B : V ⊥ → M ′ is an isomorphism. First R(B) is a closed
subspace in M ′ , which implies πM R(B) is a closed subspace in M . If µ ∈
πM R(B)⊥ , then
(µ, πM Bv) = 0 ∀v ∈ X ⇔ ⟨B ′ µ, v⟩ = 0 ∀v ∈ X ⇔ B ′ µ = 0.
Hence µ = 0 since B ′ is an isomorphism. This shows (iii) implies (ii). Simi-
larly, one can show (ii) implies (iii). This completes the proof. 

Theorem 6.1. Assume that


(i) The bilinear form a is V -elliptic, i.e.,
a(v, v) > α∥v∥2X ∀v ∈ V, for some α > 0;
(ii) The bilinear form b satisfies the inf-sup condition (6.4).
Then the saddle point problem (6.1) has a unique solution (u, λ) ∈ X × M
which satisfies
∥u∥X + ∥λ∥M 6 C(∥f ∥X ′ + ∥g∥M ′ ).

Proof. From Lemma 6.1, B : V ⊥ → M ′ is an isomorphism, there exists


an element u0 ∈ V ⊥ such that Bu0 = g and
∥u0 ∥X 6 β −1 ∥Bu0 ∥M ′ = β −1 ∥g∥M ′ .
Let w = u − u0 , then (6.2) is equivalent to
Aw + B ′ λ = f − Au0 , Bw = 0.
Since A is V -elliptic, by Lax-Milgram Lemma, there exists a unique w ∈ V
such that Aw = f − Au0 in V ′ and
α∥w∥X 6 ∥f ∥X ′ + C∥u0 ∥X 6 ∥f ∥X ′ + β −1 C∥g∥M ′ .
70 6. MIXED FINITE ELEMENT METHODS

Finally, since f −Au0 −Aw ∈ V 0 , by Lemma 6.1, there exists a unique λ ∈ M


such that B ′ λ = f − Au0 − Aw and
β∥λ∥M 6 ∥B ′ λ∥X ′ = ∥f − Au0 − Aw∥X ′ 6 ∥f ∥X ′ + C∥u0 + w∥X .
Thus (u, λ) = (u0 + w, λ) ∈ X × M is the solution of (6.1) and satisfies
∥u∥X 6 β −1 ∥g∥M ′ + α−1 ∥f ∥X ′ + α−1 β −1 C∥g∥M ′
= α−1 ∥f ∥X ′ + (1 + α−1 C)β −1 ∥g∥M ′ ,
∥λ∥M 6 β −1 (1 + α−1 C)∥f ∥X ′ + (1 + α−1 C)Cβ −2 ∥g∥M ′ .
This completes the proof. 

Now we choose finite dimensional subspaces Xh ⊂ X, Mh ⊂ M and solve


the discrete approximation problem: Find (uh , λh ) ∈ Xh × Mh such that
a(uh , vh ) + b(vh , λh ) = ⟨f, vh ⟩ ∀vh ∈ Xh ,
(6.7)
b(uh , µh ) = ⟨g, µh ⟩ ∀µh ∈ Mh .
Define
Bh : Xh → Mh′ : ⟨Bh uh , µh ⟩ = b(uh , µh ) ∀µh ∈ Mh ,
and
Vh = ker(Bh ) = {vh ∈ Xh : b(vh , µh ) = 0 ∀µh ∈ Mh } .

Theorem 6.2. Assume that there exist positive constants αh and βh such
that
(i) The bilinear form a is Vh -elliptic, i.e.,
a(vh , vh ) > αh ∥vh ∥2X ∀vh ∈ Vh ; (6.8)
(ii) The bilinear form b satisfies the inf-sup condition:
b(vh , µh )
inf sup > βh . (6.9)
µh ∈Mh vh ∈Xh ∥vh ∥X ∥µh ∥M
Then the discrete problem (6.7) has a unique solution (uh , λh ) ∈ Xh × Mh
which satisfies
( )
∥u − uh ∥X + ∥λ − λh ∥M 6 C inf ∥u − vh ∥X + inf ∥λ − µh ∥M .
vh ∈Xh µh ∈Mh

Here the constant C depends on αh , βh .

Proof. Introduce the set


Zh (g) = {wh ∈ Xh : b(wh , µh ) = ⟨g, µh ⟩ ∀µh ∈ Mh } . (6.10)
6.1. ABSTRACT FRAMEWORK 71

Clearly, Zh (g) is non-empty because Bh is surjective. Let vh be arbitrary


in Xh . Since Bh verifies (6.9), the reciprocal of Lemma 6.1 (ii) implies the
existence of rh ∈ Xh such that

b(rh , µh ) = b(u − vh , µh ) ∀µh ∈ Mh , βh ∥rh ∥X 6 C ∥u − vh ∥X . (6.11)

It is clear that rh + vh ∈ Zh (g). Let wh = rh + vh , yh = uh − wh . Then


yh ∈ Vh , which implies

αh ∥yh ∥2X 6 a(uh − wh , yh ) = a(uh − u, yh ) + a(u − wh , yh )


= b(yh , λ − λh ) + a(u − wh , yh )
= b(yh , λ − µh ) + a(u − wh , yh )
6 C ∥yh ∥X ∥λ − µh ∥M + C ∥u − wh ∥X ∥yh ∥X .

Therefore
∥yh ∥X 6 C ∥λ − µh ∥M + C ∥u − wh ∥X .
It follows from the triangle inequality and (6.11) that

∥u − uh ∥X = ∥u − vh − rh − yh ∥X 6 C ∥λ − µh ∥M + C ∥u − vh ∥X .

We now estimate λ−λh . Since b(vh , λ−λh ) = a(uh −u, vh ) for all vh ∈ Xh ,
we have for any µh ∈ Mh ,

b(vh , µh − λh ) = a(uh − u, vh ) + b(vh , µh − λ) ∀vh ∈ Xh .

Combining (6.9) then implies

∥µh − λh ∥M 6 C ∥u − uh ∥X + C ∥λ − µh ∥M 6 C ∥u − vh ∥X + C ∥λ − µh ∥M ,

which completes the proof of the theorem. 

In the practical application, the verification of the inf-sup condition (6.9)


can be done through the following lemma due to Fortin.

Lemma 6.2. Suppose that the bilinear form b : X × M → R satisfies the


inf-sup condition. In addition, suppose that for the subspaces Xh , Mh , there
exists a bounded linear projection πh : X → Xh such that

b(v − πh v, µh ) = 0 ∀µh ∈ Mh .

Then if ∥πh ∥ 6 C for some constant independent of h, the finite element


spaces Xh , Mh satisfy the inf-sup condition in (6.9) with βh independent of
h.
72 6. MIXED FINITE ELEMENT METHODS

Proof. By the assumption,


b(v, µh ) b(πh v, µh ) b(πh v, µh )
β∥µh ∥M 6 sup = sup 6 C sup
v∈X ∥v∥X v∈X ∥v∥ X v∈X ∥πh v∥X
b(vh , µh )
6 C sup .
vh ∈Xh ∥vh ∥X

This proves the lemma. 

6.2. The Poisson equation as a mixed problem


Let Ω be a bounded polygonal domain in R2 . We consider the Dirichlet
problem of the Poisson equation
−△u = f in Ω, u = 0 on ∂Ω.
Let σ = ∇u, then we have −div σ = f. Introduce the Sobolev space
H(div ; Ω) = {τ ∈ L2 (Ω)2 : div τ ∈ L2 (Ω)}
with norm
( )1/2
∥τ ∥H(div ,Ω) = ∥τ ∥2L2 (Ω) + ∥div τ ∥2L2 (Ω) .
Then the original problem can be put in the mixed form: Find (σ, u) ∈
H(div ; Ω) × L2 (Ω) such that
(σ, τ ) + (div τ , u) = 0 ∀τ ∈ H(div ; Ω),
(6.12)
(div σ, v) = −(f, v) ∀v ∈ L2 (Ω).
Set X = H(div ; Ω), M = L2 (Ω). Let a : X × X → R, b : X × M → R be the
bilinear forms
a(σ, τ ) = (σ, τ ), b(τ , v) = (div τ , v).
Clearly the forms a, b are continuous. From (6.3), V = {τ ∈ X : div τ = 0}.
Therefore, for any τ ∈ V, we have
a(τ , τ ) = ∥τ ∥2L2 (Ω) = ∥τ ∥2X .
Thus a is elliptic in the kernel V. It remains to check the inf-sup condition
for b. For any v ∈ L2 (Ω), let w ∈ H01 (Ω) be the weak solution of −∆w = v
in Ω. Then τ = −∇w ∈ H(div ; Ω) satisfies
∥τ ∥X = ∥ − ∆w∥L2 (Ω) + ∥τ ∥L2 (Ω) 6 C∥v∥L2 (Ω) .
Thus
b(τ ′ , v) (div τ , v) ∥v∥2L2 (Ω)
sup ′
> > = β∥v∥L2 (Ω) . (6.13)
τ ′ ∈X ∥τ ∥X ∥τ ∥X C∥v∥L2 (Ω)
6.2. THE POISSON EQUATION AS A MIXED PROBLEM 73

This shows that (6.12) has a unique solution (σ, u) ∈ X × M. It is easy to


show that u ∈ H01 (Ω) by the first equation in (6.12).
We now consider the finite element approximation of (6.12). Let Mh
be a shape regular mesh over Ω. We introduce the Raviart-Thomas element
which is conforming in H(div; Ω). The first hint to proceed is the following
result whose proof is similar to Theorem 2.9 and is omitted..

Lemma 6.3. Let Ω be a bounded domain. Then a piecewise infinitely


differentiable function v : Ω̄ → R belongs to H(div ; Ω) if and only if v · n is
continuous across any inter-element side.

Definition 6.3. The lowest order Raviart-Thomas element is a triple


(K, P, N ) with the following properties:
(i) K ⊂ R2 is a triangle with three edges e1 , e2 , e3 ;
(ii) P = {p ∈ P1 (K)2 : p = aK + cK x, aK ∈ R2 , cK ∈ R};
(iii) N = {Ni : i = 1, 2, 3} is a basis of P ′ ,

1
Ni (p) = p · ni ds ∀p ∈ P.
|ei | ei
Here ni is the unit outer normal vector to ei .

Notice that if Ni (p) = 0 (i = 1, 2, 3) for some p ∈ P, then


∫ ∫
1 1
div p = div p ds = p · n ds = 0.
|K| K |K| ∂K
This implies cK = 0 and consequently aK = 0. This shows that N is a basis
of P ′ , the dual space of P.
Next let K be a triangle with vertices Ai , 1 6 i 6 3. Let FK : K̂ → K be
the affine transform from the reference element K̂ to K
x = FK (x̂) = BK x̂ + bK , x̂ ∈ K̂.
Notice that the unit outward normal vectors n, n̂ satisfy
−1 T
/ −1 T
n ◦ FK = (BK ) n̂ |(BK ) n̂|.
For any scaler function φ defined on K, we associate
φ̂ = φ ◦ FK , that is, φ̂(x̂) = φ(BK x̂ + bK ).
For any vector valued function σ defined on K, we associate
−1 −1
σ̂ = BK σ ◦ FK , that is, σ̂(x̂) = BK σ(BK x̂ + bK ).

Lemma 6.4. We have


74 6. MIXED FINITE ELEMENT METHODS

(i) σ ∈ P(K) ⇔ σ̂ ∈ P(K̂);


(ii) Ni (σ) = 0 ⇔ N̂i (σ̂) = 0 ∀σ ∈ P(K), i = 1, 2, 3;
(iii) Ni (σ) = 0 ⇒ σ · ni = 0 on ei ∀σ ∈ P(K), i = 1, 2, 3.

Proof. (i) If σ = aK + cK x ∈ P(K), then


−1 −1
σ̂ = BK (aK + cK (BK x̂ + bK )) = BK (aK + cK bK ) + cK x̂ ∈ P(K).
The proof of the reverse is the same.
(ii) For any σ ∈ P(K), we have
∫ ∫
1 1 |êi |
N̂i (σ̂) = σ̂ · n̂i dŝ = · B −1 σ · BK
T
ni · |(BK−1 T
) n̂i | ds
|êi | êi |êi | |ei | ei K

1 −1 T −1 T
= σ · ni ds · |(BK ) n̂i | = |(BK ) n̂i | · Ni (σ). (6.14)
|ei | ei
(iii) It is a direct consequence of
−1 T
σ̂ · n̂i = |(BK ) n̂i | σ · ni .
and the corresponding result in the reference element. 

Lemma 6.5. There exists an operator πK : H 1 (K)2 → P(K) and a con-


stant C such that

(πK σ − σ) · ni ds = 0, i = 1, 2, 3, (6.15)
ei

and
h2K ( )
∥σ − πK σ∥H(div ,K) 6 C |σ|H 1 (K) + |div σ|H 1 (K) . (6.16)
ρK
Proof. We notice that (6.15) uniquely defines the interpolation operator
πK and Ni (σ) = Ni (πK σ). By (6.14) we know that
−1 T −1 T
N̂i (πd
K σ) = |(BK ) n̂i |Ni (πK σ) = |(BK ) n̂i |Ni (σ) = N̂i (σ̂).

Thus we have
π̂K σ̂ = πd
K σ.

This implies
|K|1/2
∥σ − πK σ∥L2 (K) = ∥BK (σ̂ − π̂K σ̂)∥L2 (K̂)
|K̂|1/2
|K|1/2
6 ∥BK ∥ ∥σ̂ − π̂K σ̂∥L2 (K̂) .
|K̂|1/2
6.2. THE POISSON EQUATION AS A MIXED PROBLEM 75

By Theorem 3.1 and the definition of π̂K ,


∥σ̂ − π̂K σ̂∥L2 (K̂) = inf ∥σ̂ − c − π̂K (σ̂ − c)∥L2 (K̂)
c∈P02
( )
6 C inf ∥σ̂ − c∥L2 (K̂) + ∥σ̂ − c∥H 1 (K̂)
c∈P02

6 C|σ̂|H 1 (K̂) .
Thus, by Lemma 3.2 and Lemma 3.3,
|K|1/2 −1
∥σ − πK σ∥L2 (K) 6 C∥BK ∥ |σ̂|H 1 (K̂) 6 C∥BK ∥2 ∥BK ∥ |σ|H 1 (K)
|K̂|1/2
h2K
6C |σ|H 1 (K) .
ρK
On the other hand, from (6.15),
∫ ∫
div σdx = div πK σdx.
K K
Thus
∥div (σ − πK σ)∥L2 (K) 6 inf ∥div σ − c∥L2 (K) 6 ChK |div σ|H 1 (K) .
c∈P0
This completes the proof. 
We define the finite element spaces
Xh : = {τ ∈ H(div; Ω) : τ |K ∈ P(K) ∀K ∈ Mh },
Mh : = {v ∈ L2 (Ω) : v|K ∈ P0 (K) ∀K ∈ Mh }.
By Lemma 6.3 and 6.4(iii) we know Xh is well-defined. The discrete problem
to approximate (6.12) is: Find (σ h , uh ) ∈ Xh × Mh such that
(σ h , τ h ) + (div τ h , uh ) = 0 ∀τ h ∈ Xh ,
(6.17)
(div σ h , vh ) = −(f, vh ) ∀vh ∈ Mh .
Lemma 6.6. For any p ∈ L2 (Ω), there exists a function τ ∈ H 1 (Ω)2 such
that div τ = p and ∥τ ∥H 1 (Ω) 6 C∥p∥L2 (Ω) .
Proof. We extend p to be zero outside the domain Ω and denote the
extension by p̃. Let BR be a circle of radius R that includes Ω̄. Let w be the
solution of the problem
−∆w = p̃ in BR , w = 0 on ∂BR .
By the regularity theorem for elliptic equations in Theorem 1.20 we know
that w ∈ H 2 (BR ) and ∥w∥H 2 (Ω) 6 ∥w∥H 2 (BR ) 6 C∥p̃∥L2 (BR ) = C∥p∥L2 (Ω) .
This shows the lemma by setting τ = −∇w. 
76 6. MIXED FINITE ELEMENT METHODS

Theorem 6.4. Assume that u ∈ H 2 (Ω) and f ∈ H 1 (Ω). Let Mh be a


shape regular mesh of Ω. Then the problem (6.17) has a unique solution and
there exists a constant C such that

∥σ − σ h ∥H(div ;Ω) + ∥u − uh ∥L2 (Ω) 6 Ch(∥u∥H 2 (Ω) + ∥f ∥H 1 (Ω) ).

Proof. The proof is divided into two steps.


1◦ ) Notice that

Vh = {τ h ∈ Xh : (div τ h , vh ) = 0 ∀vh ∈ Mh }
= {τ h ∈ Xh : div τ h = 0 on K ∈ Mh }.

Thus a(·, ·) is Vh -elliptic with the constant αh = 1.


2◦ ) We show

(div τ h , vh )
inf sup > β > 0. (6.18)
vh ∈Mh τ h ∈Xh ∥τ h ∥H(div ;Ω) ∥vh ∥L2 (Ω)

By Lemma 6.6, for any vh ∈ Mh , there exists a function τ ∈ H 1 (Ω)2 such


that
div τ = vh in Ω and ∥τ ∥H 1 (Ω) 6 C∥vh ∥L2 (Ω) .

We define the interpolation operator πh : H 1 (Ω)2 → Xh by using the local


operator in Lemma 6.5 to get
∫ ∫
div (πh τ ) dx = div τ dx.
Ω Ω

Moreover, we have

∥πh τ ∥L2 (Ω) 6 ∥τ ∥L2 (Ω) + ∥τ − πh τ ∥L2 (Ω)


6 ∥τ ∥L2 (Ω) + Ch∥τ ∥H 1 (Ω) 6 C∥vh ∥L2 (Ω) ,
∥div πh τ ∥L2 (Ω) 6 ∥div τ ∥L2 (Ω) = ∥vh ∥L2 (Ω) .

Now for any vh ∈ L2 (Ω),

(div τ h , vh ) (div πh τ , vh ) (div τ , vh )


sup > > > C∥vh ∥L2 (Ω) .
τ h ∈Xh ∥τ h ∥H(div ;Ω) ∥πh τ ∥H(div ;Ω) C∥vh ∥L2 (Ω)

This shows (6.18) and thus completes the proof by using the abstract result
Theorem 6.2 and Lemma 6.5. 
6.3. THE STOKES PROBLEM 77

6.3. The Stokes problem


Let Ω be a bounded Lipschitz domain in Rd (d = 2, 3). We consider the
Stokes problem
−ν△u + ∇p = f in Ω,
div u = 0 in Ω, (6.19)
u=0 on ∂Ω.
We set X = H01 (Ω)d , M = L20 (Ω), and
a(u, v) = ν(∇u, ∇v), b(v, q) = −(q, div v).
Then (6.19) is equivalent to the variational formulation: Find a pair (u, p) ∈
X × M such that
a(u, v) + b(v, p) = ⟨f , v⟩ ∀v ∈ X,
(6.20)
b(u, q) = 0 ∀q ∈ M.
To prove the well-posedness of the above variational problem, we need
the following theorem whose proof is outside the scope of this book and is
omitted.

Theorem 6.5 (Nečas). Let Ω be a bounded Lipschitz domain. There


exists a constant C > 0, depending only on Ω, such that
( )
∥p∥L2 (Ω) 6 C ∥p∥H −1 (Ω) + ∥∇p∥H −1 (Ω) ∀p ∈ L2 (Ω),
∥p∥L2 (Ω) 6 C ∥∇p∥H −1 (Ω) ∀p ∈ L20 (Ω),
where H −1 (Ω) is the dual space of H01 (Ω) and ∇p ∈ H −1 (Ω)d is defined by
⟨∇p, v⟩ = −(p, div v) ∀v ∈ H01 (Ω)d . (6.21)
{ }
By (6.3), V = v ∈ H01 (Ω)d : div v = 0 . Then the polar set of V is
{ }
V 0 = l ∈ H −1 (Ω)d : ⟨l, v⟩ = 0 ∀v ∈ V .

Lemma 6.7. Let Ω be a bounded Lipschitz domain. Then


(i) The operator ∇ is an isomorphism of L20 (Ω) to V 0 ;
(ii) The operator div is an isomorphism of V ⊥ to L20 (Ω).

Proof. (i) First we know that ∇ is an isomorphism of L20 (Ω) to R(∇) ⊂


H −1 (Ω)d . By Theorem 6.5, R(∇) is closed. Since ⟨∇p, v⟩ = −⟨p, div v⟩ = 0
for any p ∈ L20 (Ω) and v ∈ V , we know R(∇) ⊂ V 0 . Let π be the canonical
mapping between H −1 (Ω) and H01 (Ω), then πR(∇) is a closed subspace of
78 6. MIXED FINITE ELEMENT METHODS

πV 0 = V ⊥ . If there exists a function v ∈ V ⊥ , v ̸= 0 such that v ∈ πR(∇)⊥ ,


that is,
0 = (π∇p, v) = ⟨∇p, v⟩ = −(p, div v) ∀p ∈ L20 (Ω),
then div v = 0, that is, v ∈ V , a contradiction! Thus πR(∇) = V ⊥ and
hence R(∇) = V 0 .
(ii) This is a direct consequence of (i) since div is the dual operator of ∇
and πV 0 = V ⊥ . This completes the proof. 

It is easy to see by Poincaré inequality that a(·, ·) is X-elliptic and thus


also V -elliptic. The continuous inf-sup condition follows from Lemma 6.7
and thus (6.20) has a unique solution.
In the rest of this section, suppose Ω is a bounded polygonal domain in
R . Next we consider the finite element approximation of (6.20). Let Mh be
2

a shape regular mesh. We will approximate the velocity by the “mini” finite
element which we now introduce. On each element K we approximate the
velocity by a polynomial of the form

P(K) = (P1 ⊕ {λ1 λ2 λ3 })2

and the pressure by a polynomial of P1 (K). We define

X̃h ={v ∈ C(Ω̄)2 : v|K ∈ P(K) ∀ K ∈ Mh }, Xh = X̃h ∩ H01 (Ω),


M̃h ={q ∈ C(Ω̄) : q|K ∈ P1 (K) ∀K ∈ Mh }, Mh = M̃h ∩ L20 (Ω).

The degrees of freedom are the simplest ones, namely the values of the ve-
locity at the vertices and the center of K, the values of the pressure at the
vertices of K. The discrete problem is: Find a pair (uh , ph ) ∈ Xh × Mh such
that

a(uh , vh ) + b(vh , ph ) = ⟨f , vh ⟩ ∀vh ∈ Xh ,


b(uh , qh ) = 0 ∀qh ∈ Mh .

Lemma 6.8. There exists a constant β > 0 independent of h such that


(qh , div vh )
inf sup > β > 0.
qh ∈Mh vh ∈Xh ∥vh ∥H 1 (Ω)
Proof. We define an operator πh satisfying the condition in Lemma 6.2.
For any v ∈ H01 (Ω)2 , we want to construct a function πh v ∈ Xh that satisfies
∫ ∫
πh v · ∇µh dx = v · ∇µh dx ∀µh ∈ Mh .
Ω Ω
6.3. THE STOKES PROBLEM 79

Since ∇µh ∈ P0 (K)2 on each K, this equality induces us to define πh v in Xh


such that
(πh v)(a) = (rh v)(a) ∀ node a of Mh ,
and ∫ ∫
πh v dx = v dx ∀K ∈ Mh ,
K K
where rh is the Clément interpolation operator in Section 4.2. Clearly πh :
H01 (Ω)2 → Xh is well-defined. Moreover

div (πh v − v)µh dx = 0 ∀µh ∈ Mh .

On each element K ∈ Mh , we have
πh v|K = rh v|K + β K λ1 λ2 λ3 ,
where ∫ /∫
βK = (v − rh v)dx λ1 λ2 λ3 dx.
K K
By the scaling argument and Theorem 4.2
|β K | 6 Ch−1
K ∥v − rh v∥L2 (K) 6 C∥v∥H 1 (K̃) ,

where K̃ is the union of all elements having non-empty intersection with K.


Hence
∥πh v∥H 1 (Ω) 6 C∥v∥H 1 (Ω).
This proves the lemma by Lemma 6.2. 

The following theorem is a direct consequence of Theorem 6.2.

Theorem 6.6. Let the solution (u, p) of the Stokes problem satisfy
( )2
u ∈ H 2 (Ω) ∩ H01 (Ω) , p ∈ H 1 (Ω) ∩ L20 (Ω).
Then
∥u − uh ∥H 1 (Ω) + ∥p − ph ∥L2 (Ω) 6 Ch(|u|H 2 (Ω) + |p|H 1 (Ω) ).

Bibliographic notes. There is a rich literature on mixed finite element


methods. We refer to the monographs Girault and Raviart [34], Brezzi and
Fortin [16] for further studies. Theorem 6.5 is due to Nečas [46]. Duvaut and
Lions [28] gives a proof of Theorem 6.5 when the boundary of the domain is
smooth.
80 6. MIXED FINITE ELEMENT METHODS

6.4. Exercises
Exercise 6.1. Formulate the mixed formulation of the Neumann Prob-
lem
∂u
−△u = f in Ω, = g on ∂Ω,
∂n
and prove the unique existence of the solution to the corresponding saddle
point problem.
Exercise 6.2. For the Stokes problem, let
Xh = {v ∈ C(Ω̄)2 : v|K ∈ P1 (K)2 ∀K ∈ Mh , v|∂Ω = 0},
Mh = {q ∈ L20 (Ω) : q|K ∈ P0 (K) ∀K ∈ Mh }.
Does the inf-sup condition
(q, div v)
inf sup >β>0
q∈Mh v∈Xh ∥q∥L2 (Ω) ∥v∥H 1 (Ω)
hold?
Exercise 6.3. Construct the local nodal basis functions for the lowest
order Raviart-Thomas finite element.
CHAPTER 7

Finite Element Methods for Parabolic Problems

In this chapter we consider finite element methods for solving the initial
boundary value problem of the following parabolic equation:
∑ d ( )
∂u ∂ ∂u
− aij (x) + c(x)u = f in Ω × (0, T ),
∂t ∂xi ∂xj
i,j=1
(7.1)
u = 0 on Γ × (0, T ),
u(·, 0) = u0 (·) in Ω,
where Ω is a bounded domain in Rd with boundary Γ, T > 0, u = u(x, t),
and aij , c are bounded functions on Ω, aij = aji , and there exists a constant
α0 > 0 such that

d
aij (x)ξi ξj > α0 |ξ|2 , c(x) > 0 for a.e. x ∈ Ω and all ξ ∈ Rd . (7.2)
i,j=1

7.1. The weak solutions of parabolic equations


We start with introducing the function spaces involving time.

Definition 7.1. Let X be a real Banach space with norm ∥ · ∥.


(i) The space Lp (0, T ; X) consists of all measurable functions u : [0, T ]
→ X with
(∫ T )1/p
∥u∥Lp (0,T ;X) := ∥u(t)∥ dt
p
<∞
0
for 1 6 p < ∞, and
∥u∥L∞ (0,T ;X) := sup ∥u(t)∥ < ∞.
06t6T

(ii) The space C([0, T ]; X) consists of all continuous functions u : [0, T ]


→ X with
∥u∥C([0,T ];X) := max ∥u(t)∥ < ∞.
06t6T

81
82 7. FINITE ELEMENT METHODS FOR PARABOLIC PROBLEMS

Definition 7.2. Let u ∈ L1 (0, T ; X). We say v ∈ L1 (0, T ; X) is the


weak derivative of u, written u′ = v, provided
∫ T ∫ T
ϕ′ (t)u(t) dt = − ϕ(t)v(t) dt ∀ϕ ∈ C0∞ (0, T ).
0 0

The Sobolev space W 1,p (0, T ; X)


is then defined as the set of all func-

tions u ∈ L (0, T ; X) such that u exists in the weak sense and belongs to
p

Lp (0, T ; X). When p = 2, we write H 1 (0, T ; X) = W 1,2 (0, T ; X).

Theorem 7.3. Let u ∈ W 1,p (0, T ; X) for some 1 6 p 6 ∞. Then


(i) After possibly being redefined on a set of measure zero u ∈ C([0, T ];
X);
∫t
(ii) u(t) = u(s) + s u′ (τ )dτ for all 0 6 t 6 T ;
(iii) We have the estimate
max ∥u(t)∥ 6 C∥u∥W 1,p (0,T ;X) ,
06t6T
the constant C depending only on T .

The proof of this theorem is left as an exercise.

Theorem 7.4. Suppose u ∈ L2 (0, T ; H01 (Ω)) with u′ ∈ L2 (0, T ; H −1 (Ω)).


Then after possibly redefined on a set of measure zero, u ∈ C([0, T ]; L2 (Ω))
and the mapping t 7→ ∥u(t)∥2L2 (Ω) is absolutely continuous with
d
∥u(t)∥2L2 (Ω) = 2⟨u′ (t), u(t)⟩ for a.e. 0 6 t 6 T. (7.3)
dt
Furthermore, we have the estimate
( )
max ∥u(t)∥L2 (Ω) 6 C ∥u∥L2 (0,T ;H01 (Ω)) + ∥u′ ∥L2 (0,T ;H −1 (Ω)) , (7.4)
06t6T
for constant C dependening only on T .

Proof. 1◦ ) We extend u to be zero on (−∞, 0) and (T, ∞) and define


the regularization uϵ = ρϵ ∗ u, where ρϵ is the usual mollifier on R1 . It is clear
that u′ϵ = ρϵ ∗ u′ on (ϵ, T − ϵ). Then for ϵ, δ > 0,
d
∥ uϵ (t) − uδ (t) ∥2L2 (Ω) = 2(u′ϵ (t) − u′δ (t), uϵ (t) − uδ (t)).
dt
Thus, for all 0 6 s, t 6 T ,
∥ uϵ (t) − uδ (t) ∥2L2 (Ω) =∥ uϵ (s) − uδ (s) ∥2L2 (Ω)
∫ t
+ 2 ⟨u′ϵ (τ ) − u′δ (τ ), uϵ (τ ) − uδ (τ )⟩dτ. (7.5)
s
7.1. THE WEAK SOLUTIONS OF PARABOLIC EQUATIONS 83

Fix any point s ∈ (0, T ) for which uϵ (s) → u(s) in L2 (Ω). Hence
lim sup sup ∥ uϵ (t) − uδ (t) ∥L2 (Ω)
ϵ,δ→0 06t6T
∫ T ( )
6 lim ∥ u′ϵ (τ ) − u′δ (t) ∥2H −1 (Ω) + ∥ uϵ (τ ) − uδ (t) ∥2H 1 (Ω) dτ = 0.
ϵ,δ→0 0

This implies there exists a v ∈ C([0, T ]; L2 (Ω)) such that uϵ → v in C([0, T ];


L2 (Ω)). Since uϵ → u for a.e. t, we conclude v = u a.e. in (0, T ).
2◦ ) Similar to (7.5) we have
∫ t
∥ uϵ (t) ∥L2 (Ω) = ∥ uϵ (s) ∥L2 (Ω) + 2 ⟨u′ϵ (τ ), uϵ (τ )⟩dτ.
2 2
s
By letting ϵ → 0 we obtain,
∫ t
∥ u(t) ∥2L2 (Ω) = ∥ u(s) ∥2L2 (Ω) + 2 ⟨u′ (τ ), u(τ )⟩dτ ∀s, t ∈ [0, T ]. (7.6)
s
This proves ∥u(t)∥L2 (Ω) is absolutely continuous and the equality (7.3). (7.4)
is a direct consequence of (7.6). 

To define the weak solution of the problem (7.1) we introduce the the
bilinear form a(u, v) : H 1 (Ω) × H 1 (Ω) → R
 
∫ ∑d
 ∂u ∂v
a(u, v) = aij (x) + c(x)uv  dx.
Ω ∂xj ∂xi
i,j=1

It is clear by the assumption (7.2) that a is bounded and V -elliptic, that is,
there exist constants α0 , β > 0 such that
|a(u, v)| 6 β ∥u∥H 1 (Ω) ∥v∥H 1 (Ω) ∀ u, v ∈ H01 (Ω), (7.7)
and
a(v, v) > α ∥v∥2H 1 (Ω) ∀ v ∈ H01 (Ω). (7.8)
We have the following definition of weak solutions for parabolic problems.

Definition 7.5. Given f ∈ L2 (0, T ; H −1 (Ω)) and u0 ∈ L2 (Ω). We call a


function
u ∈ L2 (0, T ; H01 (Ω)), ∂t u ∈ L2 (0, T ; H −1 (Ω)),
is a solution of the parabolic initial boundary value problem (7.1) if
(i) ⟨∂t u, v⟩ + a(u, v) = ⟨f, v⟩ ∀v ∈ H01 (Ω) and a.e. 0 6 t 6 T ;
(ii) u(x, 0) = u0 (x) in Ω.
84 7. FINITE ELEMENT METHODS FOR PARABOLIC PROBLEMS

By Theorem 7.4 we see u ∈ C([0, T ]; L2 (Ω)), and thus the equality in (ii)
makes sense.

Theorem 7.6. There exists a unique weak solution to the problem (7.1).
Moreover, the following stability estimate holds
∥ ∂t u ∥L2 (0,T ;H −1 (Ω)) + ∥ u ∥L2 (0,T ;H 1 (Ω)) 6 C∥ u0 ∥L2 (Ω) + C∥ f ∥L2 (0,T ;H −1 (Ω)) .

Proof. Let N > 1 be an integer and τ = T /N be the time step. Denote


tn = nτ , n = 1, · · · , N . For n = 1, · · · , N , we consider the elliptic problem
to find U n ∈ H01 (Ω) such that
¯ n , v) + a(U n , v) = ⟨f¯n , v⟩ ∀v ∈ H 1 (Ω),
(∂U (7.9)
0
∫ n
¯ n = (U n − U n−1 )/τ , f¯n = 1 tn−1 f (x, t) dt, and U 0 = u0 . By (7.2)
where ∂U τ t
and the Lax-Milgram Lemma, (7.9) has a unique weak solution U n ∈ H01 (Ω).
Notice that
¯ n , U n ) = 1 ∥ U n ∥2 2 + 1 ∥ U n−1 ∥2 2 + 1 ∥ U n − U n−1 ∥2 2 ,
(∂U L (Ω) L (Ω) L (Ω)
2 2 2
by taking v = U n in (7.9), we can obtain the energy estimate

N ∑
N
max ∥ U n ∥2L2 (Ω) + ∥ U n − U n−1 ∥2L2 (Ω) + τ α0 ∥ U n ∥2H 1 (Ω)
16n6N
n=1 n=1
6 C∥ u0 ∥2L2 (Ω) + C∥f ∥2L2 (0,T ;H −1 (Ω)) . (7.10)
Now we define the Uτ and Ūτ through the following relations
Uτ (t) = l(t)U n + (1 − l(t))U n−1 , Ūτ (t) = U n ∀t ∈ (tn−1 , tn ), ∀n > 1,
where l(t) = (t − tn−1 )/τ . Then by (7.10)
∥ Uτ ∥2L2 (0,T ;H 1 (Ω)) + ∥ Ūτ ∥2L2 (0,T ;H 1 (Ω))
6 C∥ u0 ∥2L2 (Ω) + C∥f ∥2L2 (0,T ;H −1 (Ω)) . (7.11)
Moreover, it follows from the equation (7.9) than
∥ ∂t Uτ ∥2L2 (0,T ;H −1 (Ω)) 6 C∥ u0 ∥2L2 (Ω) + C∥f ∥2L2 (0,T ;H −1 (Ω)) . (7.12)
Therefore we know that there exist functions
u ∈ L2 (0, T ; H01 (Ω)) ∩ H 1 (0, T ; H −1 (Ω)), ū ∈ L2 (0, T ; H01 (Ω))
such that
Uτ → u weakly in L2 (0, T ; H01 (Ω)) ∩ H 1 (0, T ; H −1 (Ω)),
Ūτ → ū weakly in L2 (0, T ; H01 (Ω)).
7.2. THE SEMIDISCRETE APPROXIMATION 85

But by (7.10)

N
∥Uτ − Ūτ ∥2L2 (0,T ;L2 (Ω)) 6 τ ∥U n − U n−1 ∥2L2 (Ω) 6 Cτ,
n=1
which by taking τ → 0 implies u = ū a.e. in Ω × (0, T ).
Now by (7.9) we have
(∂t Uτ , v) + a(Ūτ , v) = ⟨f¯τ , v⟩ ∀v ∈ H01 (Ω) a.e. in (0, T ),
where f¯τ = f¯n for t ∈ (tn−1 , tn ). We then have, for any ϕ ∈ C0∞ (0, T ),
∫ T ∫ T
[ ]
(∂t Uτ , v) + a(Ūτ , v) ϕ dt = ⟨f¯τ , v⟩ϕ dt ∀v ∈ H01 (Ω).
0 0
Let τ → 0 in above equality, we obtain
∫ T ∫ T
[(∂t u, v) + a(u, v)] ϕ dt = ⟨f, v⟩ϕ dt ∀v ∈ H01 (Ω), ϕ ∈ C0∞ (0, T ),
0 0
which implies
⟨∂t u, v⟩ + a(u, v) = ⟨f, v⟩ ∀v ∈ H01 (Ω) a.e. in (0, T ).
This proves the existence of weak solution. The stability estimate of the
theorem follows from (7.11)-(7.12) by letting τ → 0. The uniqueness is a
direct consequence of the stability estimate. 

7.2. The semidiscrete approximation


The problem (7.1) will be discretized and analyzed in two steps. In the
first step we shall approximate u(x, t) by means of a function uh (x, t) which,
for each fixed t, belongs to a finite element space Vh0 . This function will be a
solution of an h-dependent finite system of ordinary differential equations in
time and is referred to as a spatially discrete, or semidiscrete, solution. We
then proceed to discretize this system in the time to produce a fully discrete
time stepping scheme for the approximate solution of (7.1). In this section
we consider the spatially semidiscrete approximation and the a priori L2 and
H 1 error estimates.
Suppose that Ω ⊂ Rd is a bounded polyhedral domain and Mh is a
shape regular partition of Ω. Let Vh0 ⊂ H01 (Ω) be the standard piecewise
linear conforming finite element space. We may then pose the approximate
problem to find uh = uh (x, t), belong to Vh0 for each t, such that
(uh,t , vh ) + a(uh , vh ) = (f, vh ) ∀vh ∈ Vh0 , t > 0, uh (·, 0) = uh0 , (7.13)
where uh0 is some approximation of u0 in Vh0 .
86 7. FINITE ELEMENT METHODS FOR PARABOLIC PROBLEMS

In terms of the nodal basis {ϕj }Jj=1 for Vh0 , our semidiscrete problem may

be stated: Find the coefficients zj (t) in uh (x, t) = Jj=1 zj (t)ϕj (x) such that


J ∑
J
zj′ (t)(ϕj , ϕi ) + zj (t)a(ϕj , ϕi ) = (f, ϕi ), i = 1, · · · , J,
j=1 j=1

and, with zj0 the components of uh0 , zj (0) = zj0 for j = 1, · · · , J. In the
matrix notation this may be expressed as

M z ′ (t) + Az(t) = b(t), t > 0, with z(0) = z0 , (7.14)

where M = (mij ) is the mass matrix with elements mij = (ϕj , ϕi ), A = (aij )
the stiffness matrix with aij = a(ϕj , ϕi ), b = (bi ) the vector with entries
bi = (f, ϕi ), z(t) the vector of unknowns zj (t), and z0 = (zj0 ). Since M is
positive definite and invertible, the system of ordinary differential equations
(7.14) has a unique solution for t > 0.
Next we estimate the error between uh and u. To do so we first prove a
stability result for the semidiscrete problem. Throughout this chapter, C will
denote a positive generic constant independent of h, t, and can have different
values in different places.

Theorem 7.7. Let r(t) ∈ L2 (Ω), and θh (t) = θh (·, t) ∈ Vh0 satisfies

(θh,t , vh ) + a(θh , vh ) = (r, vh ) ∀vh ∈ Vh0 , t > 0. (7.15)

Then
∫ t
∥θh (t)∥L2 (Ω) 6 ∥θh (0)∥L2 (Ω) + ∥r(s)∥L2 (Ω) ds, (7.16)
0
(∫ t )1/2
∥θh (t)∥H 1 (Ω) 6 C ∥θh (0)∥H 1 (Ω) + C ∥r(s)∥2L2 (Ω) ds . (7.17)
0

Proof. We choose vh = θh (t) in (7.15) and conclude

1 d
∥θh (t)∥2L2 (Ω) + a(θh (t), θh (t)) = (r(t), θh (t)).
2 dt
From (7.8) and the Cauchy inequality,

1 d
∥θh (t)∥2L2 (Ω) 6 ∥r(t)∥L2 (Ω) ∥θh (t)∥L2 (Ω) .
2 dt
7.2. THE SEMIDISCRETE APPROXIMATION 87

d
Since dt ∥θh (t)∥L2 (Ω) might not be differentiable when θh = 0, we add ε2 to
obtain
1 d 1 d( )
∥θh (t)∥2L2 (Ω) = ∥θh (t)∥2L2 (Ω) + ε2
2 dt 2 dt
( )1/2 d ( )1/2
= ∥θh (t)∥2L2 (Ω) + ε2 ∥θh (t)∥2L2 (Ω) + ε2
dt
6 ∥r(t)∥L2 (Ω) ∥θh (t)∥L2 (Ω) ,
and hence
d( )1/2
∥θh (t)∥2L2 (Ω) + ε2 6 ∥r(t)∥L2 (Ω) .
dt
After integration and letting ε → 0 we conclude that (7.16) holds.
In order to prove (7.17), we use again (7.15), now with vh = θh,t , we
obtain
1 d 1
∥θh,t ∥2L2 (Ω) + a(θh , θh ) = (r(t), θh,t ) 6 ∥r(t)∥2L2 (Ω) + ∥θh,t ∥2L2 (Ω) .
2 dt 4
Therefore
d 1
a(θh (t), θh (t)) 6 ∥r(t)∥2L2 (Ω) ,
dt 2
and hence by integration

1 t
a(θh (t), θh (t)) 6 a(θh (0), θh (0)) + ∥r(s)∥2L2 (Ω) ds.
2 0
Now (7.17) follows from (7.7) and (7.8). 

For the purpose of error estimates between uh and u, we introduce the


so called elliptic or Ritz projection Rh onto Vh0 :

a(Rh φ, vh ) = a(φ, vh ) ∀vh ∈ Vh0 , for any φ ∈ H01 (Ω). (7.18)

As an immediate consequence of Theorem 3.9 and 3.11 we have the following


error estimate:
∥Rh φ − φ∥L2 (Ω) + h ∥Rh φ − φ∥H 1 (Ω) 6 Ch2 |φ|H 2 (Ω)
(7.19)
∀φ ∈ H 2 (Ω) ∩ H01 (Ω),

∥Rh φ − φ∥L2 (Ω) 6 Ch ∥φ∥H 1 (Ω) ∀φ ∈ H01 (Ω), (7.20)


where h is the maximum diameter of the elements in Mh .
Now we are ready to prove the following estimates in L2 (Ω) and H 1 (Ω)
for the error between the solutions of the semidiscrete problem and the con-
tinuous problem.
88 7. FINITE ELEMENT METHODS FOR PARABOLIC PROBLEMS

Theorem 7.8. Let u and uh be the solutions of (7.1) and (7.13), respec-
tively. Suppose that
∥uh0 − u0 ∥L2 (Ω) + h ∥uh0 − u0 ∥H 1 (Ω) 6 Ch2 |u0 |H 2 (Ω) . (7.21)
Then for t > 0,
( ∫ t )
∥uh (t) − u(t)∥L2 (Ω) 6Ch 2
|u0 |H 2 (Ω) + |ut (s)|H 2 (Ω) ds , (7.22)
0
(
∥uh (t) − u(t)∥H 1 (Ω) 6Ch |u0 |H 2 (Ω) + |u(t)|H 2 (Ω)
(∫ t )1/2 )
+ ∥ut (s)∥2H 1 (Ω) ds . (7.23)
0

Proof. We split the error into two parts:


uh − u = θh + ρ, where θh = uh − Rh u ∈ Vh0 , ρ = Rh u − u. (7.24)
The second term is easily bounded by (7.19),
∥ρ(t)∥L2 (Ω) + h ∥ρ(t)∥H 1 (Ω) 6 Ch2 |u(t)|H 2 (Ω) . (7.25)
In order to estimate θh , we note that by our definitions
(θh,t , vh ) + a(θh , vh ) =(uh,t , vh ) + a(uh , vh ) − (Rh ut , vh ) − a(Rh u, vh )
=(f, vh ) − a(u, vh ) − (Rh ut , vh )
=(ut − Rh ut , vh ), (7.26)
or
(θh,t (t), vh ) + a(θh (t), vh ) = (ρt (t), vh ) ∀vh ∈ Vh0 , t > 0. (7.27)
From Theorem 7.7 with r(t) = −ρt (t),
∫ t
∥θh (t)∥L2 (Ω) 6 ∥θh (0)∥L2 (Ω) + ∥ρt (s)∥L2 (Ω) ds.
0
Now (7.22) follows from (7.21), (7.25),
∥ρt (s)∥L2 (Ω) = ∥ut (s) − Rh ut (s)∥L2 (Ω) 6 Ch2 |ut (s)|H 2 (Ω) , (7.28)
∫ t ∫ t
|u(t)|H 2 (Ω) = u0 + ut (s) ds 6 |u0 |H 2 (Ω) + |ut (s)|H 2 (Ω) ds,
0 H 2 (Ω) 0

and
θh (0) = uh0 − Rh u0 = uh0 − u0 + u0 − Rh u0 .
7.3. THE FULLY DISCRETE APPROXIMATION 89

Similarly, from Theorem 7.7 with r(t) = −ρt (t),


(∫ t )1/2
∥θh (t)∥H 1 (Ω) 6 C ∥θh (0)∥H 1 (Ω) + C ∥ρt (s)∥2L2 (Ω) ds . (7.29)
0

Then the estimate (7.23) follows from (7.21), (7.25), and

∥ρt (s)∥L2 (Ω) = ∥ut (s) − Rh ut (s)∥L2 (Ω) 6 Ch ∥ut (s)∥H 1 (Ω) . (7.30)

This completes the proof of the theorem. 

If we choose uh0 = Ih u0 or uh0 = Rh u0 or uh0 = Qh u0 then (7.21) holds.


Here Ih is the standard finite element interpolation operator onto Vh0 , and
Qh is the L2 projection onto Vh0 . We also remark that if we take uh0 =
Rh u0 then θh (0) = 0 and hence (7.29) and (7.28) imply that ∥θh (t)∥H 1 (Ω) =
∥uh (t) − Rh u(t)∥H 1 (Ω) = O(h2 ), that is, the finite element solution uh (t) is
superconvergent to the elliptic projection Rh u(t) of the exact solution in
H 1 (Ω) norm for any fixed t > 0.

7.3. The fully discrete approximation


In this section we turn to the analysis of some simple time discretization
schemes. We begin by the backward Euler-Galerkin method . Let τ be the
time step and U n the approximation in Vh0 of u(t) at t = tn = nτ , this
method is defined by replacing the time derivative in (7.13) by a backward
¯ n = (U n − U n−1 )/τ,
difference quotient, or if ∂U
¯ n , vh ) + a(U n , vh ) = (f (tn ), vh )
(∂U ∀vh ∈ Vh0 , n > 1, U 0 = uh0 , (7.31)

For given U n−1 this defines U n implicitly from the equation

(U n , vh ) + τ a(U n , vh ) = (U n−1 + τ f (tn ), vh ) ∀vh ∈ Vh0 .

With the notation as in the semidiscrete situation, this may be written

(M + τ A)z n = M z n−1 + τ b(tn ), n > 1, with z(0) = z0 , (7.32)

where M + τ A is positive definite.


Following the argument in the semidiscrete case, we first prove a stability
estimate for the backward Euler fully discrete problem (7.31).

Theorem 7.9. Let rn ∈ L2 (Ω) and θn ∈ Vh0 satisfy


¯ n , vh ) + a(θn , vh ) = (rn , vh )
(∂θ ∀vh ∈ Vh0 , n > 1. (7.33)
90 7. FINITE ELEMENT METHODS FOR PARABOLIC PROBLEMS

Then

n
∥θn ∥L2 (Ω) 6 θ0 L2 (Ω)
+ τ rj L2 (Ω)
, (7.34)
j=1
 1/2

n
+C 
2
∥θn ∥H 1 (Ω) 6 C θ0 H 1 (Ω)
τ rj L2 (Ω)
. (7.35)
j=1

¯ n , θn ) 6 (rn , θn ), or
Proof. Choosing vh = θn , we have (∂θ

∥θn ∥2L2 (Ω) 6 θn−1 L2 (Ω)


∥θn ∥L2 (Ω) + τ ∥rn ∥L2 (Ω) ∥θn ∥L2 (Ω) ,

so that
∥θn ∥L2 (Ω) 6 θn−1 L2 (Ω)
+ τ ∥rn ∥L2 (Ω) ,

and, by repeated application, we have that (7.34) holds.


¯ n to obtain
To prove (7.35), we choose instead vh = ∂θ

¯ n , ∂θ
¯ n ) + a(θn , ∂θ
¯ n ) = (rn , ∂θ
¯ n) 6 1 n 2 ¯ n 2
(∂θ ∥r ∥L2 (Ω) + ∂θ L2 (Ω)
,
4
or
τ n 2
a(θn , θn ) 6a(θn , θn−1 ) + ∥r ∥L2 (Ω) ,
4
1 1 τ
6 a(θn , θn ) + a(θn−1 , θn−1 ) + ∥rn ∥2L2 (Ω) ,
2 2 4
so that
τ n 2
a(θn , θn ) 6 a(θn−1 , θn−1 ) + ∥r ∥L2 (Ω) ,
2
which together with (7.7) and (7.8) implies that (7.35) holds. 

We need the following Taylor formula with integral remainder in the


subsequent analysis:

m ∫ t
φ(k) (a) 1
φ(t) = (t − a) +
k
φ(m+1) (s)(t − s)m ds. (7.36)
k! m! a
k=0

Theorem 7.10. Suppose that

∥uh0 − u0 ∥L2 (Ω) + h ∥uh0 − u0 ∥H 1 (Ω) 6 Ch2 |u0 |H 2 (Ω) .


7.3. THE FULLY DISCRETE APPROXIMATION 91

With U n and u the solutions of (7.31) and (7.1), respectively, we have


( ∫ tn )
∥U − u(tn )∥L2 (Ω) 6Ch |u0 |H 2 (Ω) +
n 2
|ut (s)|H 2 (Ω) ds
0
∫ tn
+ Cτ ∥utt (s)∥L2 (Ω) ds, (7.37)
( 0
∥U n − u(tn )∥H 1 (Ω) 6Ch |u0 |H 2 (Ω) + |u(tn )|H 2 (Ω)
(∫ tn )1/2 )
+ ∥ut (s)∥2H 1 (Ω) ds
0
(∫ tn )1/2
+ Cτ ∥utt (s)∥2L2 (Ω) ds , n > 0. (7.38)
0

Proof. In analogy with (7.24) we write


U n − u(tn ) = (U n − Rh u(tn )) + (Rh u(tn ) − u(tn )) = θn + ρn ,
and ρn is bounded as claimed in (7.25). This time, a calculation correspond-
ing to (7.26) yields
¯ n , vh ) + a(θn , vh ) = −(ω n , vh ) ∀vh ∈ V 0 , n > 1,
(∂θ (7.39)
h

where
¯ n ) − ut (tn )
ω n = Rh ∂u(t
¯ n ) + (∂u(t
= (Rh − I)∂u(t ¯ n ) − ut (tn )) = ω n + ω n . (7.40)
1 2

We write
∫ tj ∫ tj
τ ω1j = (Rh − I) ut ds = (Rh − I)ut (s) ds,
tj−1 tj−1
∫ tj
τ ω2j = u(tj ) − u(tj−1 ) − τ ut (tj ) = − (s − tj−1 )utt (s) ds,
tj−1
and obtain
∫ tj
τ ∥ ω1j ∥L2 (Ω) 6 Ch 2
|ut (s)|H 2 (Ω) ds,
tj−1
∫ tj
τ ∥ ω1j ∥L2 (Ω) 6 Ch ∥ut (s)∥H 1 (Ω) ds,
tj−1
∫ tj
τ ∥ ω2j ∥L2 (Ω) 6 Cτ ∥utt (s)∥L2 (Ω) ds.
tj−1
92 7. FINITE ELEMENT METHODS FOR PARABOLIC PROBLEMS

Together our estimates and using Theorem 7.9 with rn = −ω n complete the
proof of the theorem. 

We now turn to the Crank-Nicolson Galerkin method . Here the semidis-


crete equation is discretized in a symmetric fashion around the point tn− 1 =
2
(n − 12 )τ, which will produce a second order accurate method in time. More
precisely, we define U n in Vh0 recursively for n > 1 by
( )
¯ , vh )+a U n + U n−1
(∂U n
, vh = (f (tn− 1 ), vh ) ∀vh ∈ Vh0 , n > 1, (7.41)
2 2

with U 0 = uh0 . Here the equation for U n may be written in the matrix form
as
1 1
(M + τ A)z n = (M − τ A)z n−1 + τ b(tn− 1 ),
2 2 2

with a positive definite matrix M + 12 τ A. We have the following stability


result for (7.41).

Theorem 7.11. Let rn ∈ L2 (Ω) and θn ∈ Vh0 satisfy


( )
¯ n , vh ) + a θn + θn−1
(∂θ , vh = (rn , vh ) ∀vh ∈ Vh0 , n > 1. (7.42)
2

Then (7.34) and (7.35) hold, that is,


n
∥θ ∥L2 (Ω) 6 θ
n 0
L2 (Ω)
+ τ rj L2 (Ω)
, (7.43)
j=1
 1/2

n
+C 
2
∥θn ∥H 1 (Ω) 6 C θ0 H 1 (Ω)
τ rj L2 (Ω)
. (7.44)
j=1

Proof. (7.43) and (7.44) can be proved by choosing vh = (θn + θn−1 )/2
¯ n in (7.42), respectively, we omit the details.
and vh = ∂θ 

Now the error estimate reads as follows.

Theorem 7.12. Suppose that

∥uh0 − u0 ∥L2 (Ω) + h ∥uh0 − u0 ∥H 1 (Ω) 6 Ch2 |u0 |H 2 (Ω) .


7.4. A POSTERIORI ERROR ANALYSIS 93

Let U n and u be the solutions of (7.41) and (7.1), respectively. Then we have
for n > 0,
∥U n − u(tn )∥L2 (Ω)
( ∫ tn )
6 Ch |u0 |H 2 (Ω) +
2
|ut (s)|H 2 (Ω) ds
0
∫ tn ( )
+ Cτ 2 ∥uttt (s)∥L2 (Ω) + ∥utt (s)∥H 2 (Ω) ds, (7.45)
0
∥U n − u(tn )∥H 1 (Ω)
( (∫ )1/2 )
tn
6 Ch |u0 |H 2 (Ω) + |u(tn )|H 2 (Ω) + ∥ut (s)∥2H 1 (Ω) ds
0
(∫ tn )1/2
+ Cτ 2
(∥uttt (s)∥2L2 (Ω) + ∥utt (s)∥2H 2 (Ω) ) ds . (7.46)
0

Proof. Since ρn is bounded as above, we only need to consider θn . We


have
( n )
¯ θ + θn−1
n
(∂θ , vh ) + a , vh = −(ω n , vh ) ∀vh ∈ Vh0 , n > 1,
2
where now
ω n = ω1n + ω2n + ω3n , ¯ n ),
ω1n = (Rh − I)∂u(t ¯ n ) − ut (t 1 ),
ω2n = ∂u(t n− 2

and ω3n ∈ Vh0 such that


( )
u(tn ) + u(tn−1 )
n
(ω3 , vh ) = a − u(tn− 1 ), vh ∀vh ∈ Vh0 .
2 2

Since θ0 and ω1j are estimated as before, to apply Theorem 7.11, it remains
to bound the terms in ω2j and ω3j . This can be done by using Taylor formula
(7.36). We omit the details. 

7.4. A posteriori error analysis


In this section we consider the a posteriori error estimates for the finite
element method for solving linear parabolic problems which are the basis of
the time and space adaptive algorithm in next section.
Let Ω be a polyhedron domain in Rd (d = 1, 2, 3), Γ = ∂Ω and T > 0, we
consider the following linear parabolic equation:
ut − div (a(x)∇u) = f in Ω × (0, T ),
(7.47)
u = 0 on Γ × (0, T ), u(x, 0) = u0 (x) in Ω,
94 7. FINITE ELEMENT METHODS FOR PARABOLIC PROBLEMS

where f ∈ L2 (0, T ; L2 (Ω)) and u0 ∈ L2 (Ω), and the coefficient a(x) is as-
sumed to be piecewise constant and positive. The weak formulation of (7.47)
reads as follows: Find u ∈ L2 (0, T ; H01 (Ω)) ∩ H 1 (0, T ; H −1 (Ω)) such that
u(·, 0) = u0 (·), and for a.e. t ∈ (0, T ) the following relation holds

⟨ut , φ⟩ + (a∇u, ∇φ) = ⟨f, φ⟩ ∀φ ∈ H01 (Ω). (7.48)

We consider the backward Euler fully discrete approximation with vari-


able time steps for (7.48). Let τn be the n-th time-step size and set

n
n
t := τi , φn (·) = φ(·, tn )
i=1

for any function φ continuous in (tn−1 , tn ]. Let N be the total number of


steps, that is tN > T . At each time step n, n = 1, 2, · · · , N , we denote
by Mn a uniformly regular partition of Ω into simplexes which is obtained
from Mn−1 by using refinement/coarsening procedures. Let V0n ⊂ H01 (Ω)
indicate the usual space of conforming linear finite elements over Mn . Let
Uh0 = Q0 u0 , where Q0 : L2 (Ω) → V00 is the L2 projection operator into
the linear finite element space V00 over the initial mesh M0 . Then the fully
discrete finite element approximation at the n-th time step reads as follows:
Given Uhn−1 ∈ V n−1 , then Mn−1 and τn−1 are modified as described below
to give rise to Mn and τn and thereafter Uhn ∈ V0n computed according to
the following prescription:
⟨ n n ⟩ ⟨ ⟩
∂¯ Uh , v + (a∇Uhn , ∇v) = f¯n , v ∀v ∈ V0n . (7.49)

Here ∂¯n Uhn = (Uhn − Uhn−1 )/τn is the backward difference quotient, and
∫ tn
1
f¯n = f (x, t) dt.
τn tn−1

Denote Bn the collection of interior inter-element sides e of Mn in Ω. hK


stands for the diameter of K ∈ Mn and he stands for the size of e ∈ B n . We
define the interior residual

Rn := f¯n − ∂¯n Uhn ,

along with the jump residual across e ∈ B n

Jen := [[a∇Uhn ]]e · νe = (a∇Uhn |K1 − a∇Uhn |K2 ) · νe , e = ∂K1 ∩ ∂K2 ,


7.4. A POSTERIORI ERROR ANALYSIS 95

using the convention that the unit normal vector νe to e points from K2 to
K1 . We observe that the integration by parts implies
∑∫
(a∇Uh , ∇φ) = −
n
Jen φds ∀φ ∈ H01 (Ω). (7.50)
e∈Bn e

Introduce the energy norm |||φ|||Ω = (a∇φ, ∇φ)1/2 . We have the following
upper bound estimate.

Theorem 7.13. For any integer 1 6 m 6 N , there exists a constant


C > 0 depending only the minimum angle of meshes Mn , n = 1, 2, · · · , m,
and the coefficient a(x) such that the following a posteriori error estimate
holds
∑m ∫ tn
1 m m 2
∥u − Uh ∥L2 (Ω) + |||u − Uhn |||2Ω dt
2 tn−1 n=1

2 ∑
m ∑
m
6 u0 − Uh0 L2 (Ω) + n
τn ηtime +C n
τn ηspace
n=1 n=1
m ∫
(∑ tn )2
+2 f − f¯n L2 (Ω)
dt , (7.51)
n−1
n=1 t
n
where the time error indicator ηtime n
and space error indicator ηspace are given
by
1 ∑
n
ηtime = ∥|Uhn − Uhn−1 |∥2Ω , n
ηspace = ηen
3 n e∈B

with the local error indicator ηen defined as


1 ∑ 2
ηen = hK ∥ Rn ∥2L2 (K) + he ∥ Jen ∥2L2 (e) .
2
K∈Ωe

Here Ωe is the collection of two elements sharing the common side e ∈ B n .

Proof. From (7.49) we know that, for any φ ∈ H01 (Ω) and v ∈ V0n ,

⟨∂¯n U n , φ⟩ + (a∇Uhn , ∇φ)


= −⟨Rn , φ − v⟩ + (a∇Uhn , ∇(φ − v)) + ⟨f¯n , φ⟩. (7.52)

For any t ∈ (tn−1 , tn ], we denote by

Uh (t) = l(t)Uhn + (1 − l(t))Uhn−1 , l(t) = (t − tn−1 )/τn .


96 7. FINITE ELEMENT METHODS FOR PARABOLIC PROBLEMS

Then from (7.48) and (7.52) we have, for a.e. t ∈ (tn−1 , tn ], and for any
φ ∈ H01 (Ω), v ∈ V0n ,
⟨ ∂(u − U ) ⟩
h
, φ + ⟨a∇(u − Uhn ), ∇φ⟩
∂t
= ⟨Rn , φ − v⟩ − (a∇Uhn , ∇(φ − v)) + ⟨f − f¯n , φ⟩.
Now we resort to the Clément interpolation operator rn : H01 (Ω) → V0n
defined in Subsection 4.2.1, which satisfies the following local approximation
properties by Theorem 4.2, for any φ ∈ H01 (Ω),
∥ φ − rn φ ∥L2 (K) + hK ∥ ∇(φ − rn φ) ∥L2 (K) 6 C ∗ hK ∥ ∇φ ∥L2 (K̃) , (7.53)
∥ φ − rn φ ∥L2 (e) 6 C ∗ h1/2
e ∥ ∇φ ∥L2 (ẽ) , (7.54)
where à is the union of all elements in Mn surrounding the sets A = K ∈ Mn
or A = e ∈ B n . The constant C ∗ depends only on the minimum angle of mesh
Mn . Based on this interpolation operator, by taking φ = u − Uh ∈ H01 (Ω),
v = rn (u − Uh ) ∈ V0n , and using (7.50) and the identity
1 1 1
(a∇(u − Uhn ), ∇(u − Uh )) = |||u − Uhn |||2Ω + |||u − Uh |||2Ω − |||Uh − Uhn |||2Ω ,
2 2 2
we deduce that
1d 1 1
∥ u − Uh ∥2L2 (Ω) + |||u − Uhn |||2Ω + |||u − Uh |||2Ω
2 dt 2 2
1
= |||Uh − Uhn |||2Ω + ⟨Rn , (u − Uh ) − rn (u − Uh )⟩
2
∑∫
+ J n [(u − Uh ) − rn (u − Uh )]ds + ⟨f − f¯n , u − Uh ⟩.
e (7.55)
e∈Bn e

For any t∗ ∈ (tm−1 , tm ], by integrating (7.55) in time from 0 to t∗ , using


(7.53)-(7.54) and exploiting the standard argument in finite element a pos-
teriori analysis, we have
m ∫ n ∗
1 ∗ 1 ∑ t ∧t ( )
∥ (u − Uh )(t ) ∥L2 (Ω) +
2
|||u − Uhn |||2Ω + |||u − Uh |||2Ω dt
2 2 n−1
n=1 t

1∑ t
m n
1
6 ∥ u0 − Uh0 ∥2L2 (Ω) + |||Uh − Uhn |||2Ω dt
2 2 tn−1
n=1
∑m ∫ tn
1
+C n
(ηspace )1/2 |||u − Uh |||Ω dt + max∗ ∥ u − Uh ∥2L2 (Ω)
n−1 4 06t6t
n=1 t
(∑m ∫ tn )2
+ ∥ f − f¯n ∥L2 (Ω) dt ,
n−1
n=1 t
7.4. A POSTERIORI ERROR ANALYSIS 97

where tn ∧ t∗ = min(tn , t∗ ). This implies the desired estimate (7.51) by using


the fact that
∫ tn ∫ tn
|||Uh − Uhn |||2Ω dt = (1 − l(t))2 |||Uhn − Uhn−1 |||2Ω dt
tn−1 tn−1
1
= τn |||Uhn − Uhn−1 |||2Ω .
3
This completes the proof. 

In our a posteriori error estimate at the n-th time ∫ tn step, the time dis-
cretization error is controlled by |||Uhn − Uh |||Ω and
n−1
∥ f − f¯n ∥L2 (Ω) dt,
tn−1
which can only be reduced by reducing the time-step sizes τn . On the other
hand, the time-step size τn essentially controls the semi-discretization error:
the error between the exact solution u and the solution U n of the following
problem
⟨ U n − U n−1 ⟩
, φ + (a∇U n , ∇φ) = ⟨f¯n , φ⟩ ∀φ ∈ H01 (Ω). (7.56)
τn
Thus |||Uhn − Uhn−1 |||Ω is not a good error indicator for time discretization
unless the space discretization error is sufficiently resolved. In the adaptive
method for time-dependent problems, we must do space mesh and time-step
size adaptation simultaneously. Ignoring either one of them may not provide
correct error control of approximation to the problem.
Our objective next is to prove the following estimate for the local error
which ensures over-refinement will not occur for the refinement strategy based
on our space error indicator. First we note that for given Uhn−1 ∈ V0n−1 , let
U∗n ∈ H01 (Ω) be the solution of the following continuous problem
⟨ U n − U n−1 ⟩
∗ h
, φ + (a∇U∗n , ∇φ) = ⟨f¯n , φ⟩ ∀φ ∈ H01 (Ω), (7.57)
τn
n
Then the space error indicator ηspace controls only the error between Uhn and
U∗n , not between Uhn and U n (or the exact solution u).

For any K ∈ Mn and φ ∈ L2 (Ω), we define PK φ = |K| 1
K φdx, the
average of φ over K. For any n = 1, 2, · · · , we also need the notation

Ĉn = maxn (h2K /τn ) + 1, hK = diam (K). (7.58)


K∈M

Theorem 7.14. Let U∗n ∈ H01 (Ω) be the solution of the auxiliary problem
(7.57). Then there exist constants C2 , C3 > 0 depending only on the minimum
98 7. FINITE ELEMENT METHODS FOR PARABOLIC PROBLEMS

angle of Mn and the coefficient a(x) such that for any e ∈ B n , the following
estimate holds
∑ (1 )
ηen 6C2 Ĉn ∥ U∗n − Uhn ∥2L2 (K) + |||U∗n − Uhn |||2K
τn
K∈Ωe

+ C3 h2K ∥ Rn − PK Rn ∥2L2 (K) . (7.59)
K∈Ωe

Proof. The proof extends the idea to prove the local lower bound for
elliptic equations in Theorem 4.4. For any K ∈ Mn , let ψK = (d +
1)d+1 λ1 · · · λd+1 be the bubble function, where λ1 , · · · , λd+1 are the barycen-
tric coordinate functions. By the standard scaling argument, we have the
following inf-sup relation that holds for some constant β depending only on
the minimum angle of K ∈ Mn

vh φh ψK dx
inf sup K
> β > 0,
vh ∈P1 (K) φh ∈P1 (K) ∥ φh ∥L2 (K) ∥ vh ∥L2 (K)

Thus there exists a function φn ∈ P1 (K) with ∥ φn ∥L2 (K) = 1 such that

β∥ PK Rn ∥L2 (K)

6 (PK Rn )ψK φn dx
K
∫ ∫ (
U n − Uhn−1 )
= (PK Rn − Rn )ψK φn dx + f¯n − h ψK φn dx
τn
∫K ∫K
U∗n − Uhn
= (PK Rn − Rn )ψK φn dx + ψK φn dx + (a∇U∗n , ∇(ψK φn ))K ,
K K τn
where we have used (7.57) in the last identity. Since Uhn ∈ P1 (K) and ψK = 0
on ∂K, simple integration by parts implies that (a∇Uhn , ∇(ψK φn ))K = 0.
Thus, we have

∥ PK Rn ∥L2 (K) 6C∥ Rn − PK Rn ∥L2 (K) + Cτn−1 ∥ U∗n − Uhn ∥L2 (K)
+ C|||U∗n − Uhn |||K |||ψK φn |||K .

Since |||ψK φn |||K 6 Ch−1


K by inverse estimate, we conclude by the definition
of Ĉn in (7.58) that

∥ PK Rn ∥L2 (K) 6C∥ Rn − PK Rn ∥L2 (K)


(1 )1/2
+ C Ĉn1/2 h−1
K ∥ U∗
n
− U ∥
n 2
h L2 (K) + |||U∗
n
− U |||
n 2
h K .
τn
7.5. THE ADAPTIVE ALGORITHM 99

Therefore, we have
h2K ∥ Rn ∥2L2 (K) 6Ch2K ∥ Rn − PK Rn ∥2L2 (K)
(1 )
+ C Ĉn ∥ U∗ − Uh ∥L2 (K) + |||U∗ − Uh |||K .
n n 2 n n 2
τn
For any e ∈ Bn , let ψe = dd λ1 · · · λd be the bubble function, where λ1 , · · · , λd
are the barycentric coordinate functions associated with the nodes of e. De-
note by ψ n = Jen ψe ∈ H01 (Ω). Then since Jen is constant on e ∈ B n , we get,
after integration by parts, that
∫ ∑ ∫
∥ Je ∥L2 (e) 6C Je ψ dx = −C
n 2 n n
a(x)∇Uhn ∇ψ n dx
e K∈Ωe K
∑ ∫
=C a(x)∇(U∗n − Uhn )∇ψ n dx
K∈Ωe K
∑ ∫ ( Un − Un )
−C Rn − ∗ n h ψ n dx,
K τ
K∈Ωe

where we have used the definition of U∗n in (7.57). Moreover, it is easy to see
that
∥ ∇ψ n ∥L2 (K) 6 Ch−1/2
e ∥ Jen ∥L2 (e) , ∥ ψ n ∥L2 (K) 6 Ch1/2
e ∥ Je ∥L2 (e) , ∀K ∈ Ωe .
n

Thus

he ∥ Jen ∥2L2 (e) 6C h2K ∥ Rn ∥2L2 (K)
K∈Ωe
∑ ( 1 )
+ C Ĉ n |||U∗n − Uhn |||2K + ∥U∗
n
− Uh
n
∥L (K) .
2
τn
K∈Ωe

This completes the proof. 

7.5. The adaptive algorithm


We start by considering the algorithm for time-step size control. The ad-
justment of the time-step size is based on the error equi-distribution strategy:
the time discretization error should be equally distributed to each time inter-
val (tn−1 , tn ), n = 1, · · · , N . Let TOLtime be the total tolerance allowed for the
part of a posteriori error estimate in (7.51) related to the time discretization,
that is,

N (∑ N ∫ tn )2
n
τn ηtime +2 ∥ f − f¯n ∥L2 (Ω) dt 6 TOLtime . (7.60)
n−1
n=1 n=1 t
100 7. FINITE ELEMENT METHODS FOR PARABOLIC PROBLEMS

A natural way to achieve (7.60) is to adjust the time-step size τn such that
the following relations are satisfied
∫ tn
TOLtime 1 1 √
ηtime 6
n
, ∥ f − f¯n ∥L2 (Ω) dt 6 TOLtime . (7.61)
2T τn tn−1 2T
Let TOLspace be the tolerance allowed for the part of a posteriori error
estimate in (7.51) related to the spatially semidiscrete approximation. Then
the usual stopping criterion for the mesh adaptation is to satisfy the following
relation at each time step n
TOLspace
n
ηspace 6 . (7.62)
T
This stopping rule is appropriate for mesh refinements but not for mesh
coarsening. We will use the coarsening error indicator based on the following
theorem.
Define the weighted norm of H 1 (Ω) with parameter τn > 0
(1 )1/2
∥ φ ∥τn ,Ω = ∥ φ ∥2L2 (Ω) + |||φ|||2Ω ∀φ ∈ H 1 (Ω) (7.63)
τn
Theorem 7.15. Given Uhn−1 ∈ V n−1 and τn > 0. Let MnH be a coars-
ening of the mesh Mn . Let UH n ∈ V n,H , U n ∈ V n be the solutions of the
0 h 0
discrete problem (7.49) over meshes MnH and Mn , respectively. Then the
following error estimate is valid
∥ U∗n − UH ∥τn ,Ω 6 ∥ U∗n − Uhn ∥2τn ,Ω + ∥ Uhn − IH
n 2
Uh ∥τn ,Ω ,
n n 2

where IHn : C(Ω̄) → V n,H is the standard linear finite element interpolation
0
operator.

Proof. By definition, UH n ∈ V n,H and U n ∈ V n satisfy the following


0 h 0
relations
( U n − U n−1 )
H h
, v + (a∇UH n
, ∇v) = ⟨f¯n , v⟩ ∀v ∈ V0n,H , (7.64)
τn
( U n − U n−1 )
h h
, v + (a∇Uhn , ∇v) = ⟨f¯n , v⟩ ∀v ∈ V0n , (7.65)
τn
Since MnH is a coarsening of Mn , we have V0n,H ⊂ V0n . Thus UHn − U n ∈ V n.
h 0
Now the equation (7.65) together with (7.57) implies the following Galerkin
orthogonal identity:
(Un − Un )
∗ h
, UHn
− Uhn + (a∇(U∗n − Uhn ), ∇(UH
n
− Uhn )) = 0.
τn
7.5. THE ADAPTIVE ALGORITHM 101

Hence
∥ U∗n − UH ∥τn ,Ω = ∥ U∗n − Uhn ∥2τn ,Ω + ∥ UH
n 2 n
− Uhn ∥2τn ,Ω . (7.66)
Next, by subtracting (7.64) from (7.65) and taking v = UHn − I n U n ∈ V n,H ,
H h 0
we obtain the following Galerkin orthogonal relation
⟨Un − Un ⟩
H h
, UHn
− IH
n n
Uh + (a∇(UH n
− Uhn ), ∇(UH
n
− IH
n n
Uh )) = 0,
τn
which implies
∥ UH
n
− Uhn ∥2τn ,Ω = ∥ Uhn − IH Uh ∥τn ,Ω − ∥ UH
n n 2 n
− IH Uh ∥τn ,Ω
n n 2

6 ∥ Uhn − IH Uh ∥τn ,Ω .
n n 2

This completes the proof by using (7.66). 


Theorem 7.15 suggests us to introduce the following coarsening error
indicator
1
n
ηcoarse = ∥ IH Uh − Uhn ∥2L2 (Ω) + |||IH
n n
Uh − Uhn |||2Ω .
n n
(7.67)
τn
The nice feature of this indicator lies in that it does not depend on UH n , the

solution of the coarsened problem. This property allows us to do coarsening


only once, without checking whether the coarsened solution UH n satisfies some

stopping criterion such as (7.62). Combining above ideas together, we arrive


at the following adaptive algorithm for one single time step.

Algorithm 7.1. (Time and space adaptive algorithm) Given tolerances


TOLtime , TOLspace and TOLcoarse , parameters δ1 ∈ (0, 1), δ2 > 1 and θtime ∈
(0, 1). Given Uhn−1 from the previous time-step at time tn−1 with the mesh
Mn−1 and the time-step size τn−1 .
1. Mn := Mn−1 , τn := τn−1 , tn := tn−1 + τn
solve the discrete problem for Uhn on Mn using data Uhn−1
compute error estimates on Mn
2. while (7.61) is not satisfied do
τn := δ1 τn , tn := tn−1 + τn
solve the discrete problem for Uhn on Mn using data Uhn−1
compute error estimates on Mn
end while
n
3. while ηspace > TOLspace /T do
refine mesh Mn producing a modified Mn
solve the discrete problem for Uhn on Mn using data Uhn−1
102 7. FINITE ELEMENT METHODS FOR PARABOLIC PROBLEMS

compute error estimates on Mn


while (7.61) is not satisfied do
τn := δ1 τn , tn := tn−1 + τn
solve the discrete problem for Uhn on Mn using data Uhn−1
compute error estimates on Mn
end while
end while
4. coarsen Mn producing a modified mesh Mn according to ηcoarse n 6
TOLcoarse
T
solve the discrete problem for Uhn on Mn using data Uhn−1
5. if

TOLtime 1 tn
1 √
n
ηtime 6 θtime , ∥ f − f¯n ∥L2 (Ω) dt 6 θtime TOLtime ,
2T τn tn−1 2T

then
τn := δ2 τn
end if

A good choice of the parameters in above algorithm for the backward


Euler scheme in time is to take δ1 = 0.5, δ2 = 2, and θtime = 0.5. The
goal of the first three steps in above algorithm is to reduce the time-step
size and refine the mesh so that the time and space error indicators become
smaller than the respective tolerances. We achieve this goal by first reducing
the time-step size to have the time error estimate below the tolerance while
keeping the mesh unchanged. In Step 5, when the time error indicator is
much smaller than the tolerance, the step size is enlarged (coarsened) by a
factor δ2 > 1. In this case, the actual time step is not re-calculated, only the
initial time-step size for the next time step is changed.
We have the following theorem which guarantees the reliability of the
above algorithm in terms of error control.

Theorem 7.16. For n > 1, assume that Algorithm 7.1 terminates and
generates the final mesh MnH , time-step size τn , and the the corresponding
discrete solution UHn . Here the mesh Mn is coarsened from the mesh Mn
H
produced by the first three steps. Then for any integer 1 6 m 6 N , there exists
a constant C depending only on the minimum angles of Mn , n = 1, 2, · · · , m,
7.5. THE ADAPTIVE ALGORITHM 103

and the coefficient a(x) such that the following estimate holds
∑m ∫ tn
1 m
∥ u − UH ∥L2 (Ω) +
m 2
|||u − UH |||Ω dt
n 2
2 tn−1
n=1
tm
6 ∥ u0 − Uh0 ∥2L2 (Ω) + TOLtime
T
tm m tm
+C TOLspace + C ĈH TOLcoarse , (7.68)
T T
m = max{h2 /τ : K ∈ Mn , n = 1, 2, · · · , m}.
where ĈH K n H

Proof. Let Uhn be the solution of the discrete problem (7.49) over the
mesh Mn and with the time-step size τn . Then upon the termination of
Algorithm 7.1 we have that
∫ tn
TOLtime 1 1 √
ηtime 6
n
, ∥ f − f¯n ∥L2 (Ω) dt 6 TOLtime ,
2T τn tn−1 2T
TOLspace
n
ηspace 6 .
T
From (7.49) we know that, for any φ ∈ H01 (Ω),
⟨ U n − U n−1 ⟩
H h
, φ + (a∇UH n
, ∇φ)
τn
⟨Un − Un ⟩
= H h
, φ + (a∇(UH n
− Uhn ), ∇φ)
τn
− ⟨Rn , φ⟩ + (a∇Uhn , ∇φ) + ⟨f¯n , φ⟩. (7.69)
Since MnH is a coarsening of Mn , by the Galerkin orthogonal relation as in
Theorem 3.1, we have
⟨Un − Un ⟩
H h
, vH + (a∇(UH n
− Uhn ), ∇vH ) = 0 ∀vH ∈ V0n,H .
τn
On the other hand, since Uhn is the discrete solution over mesh Mn , we have
−⟨Rn , v⟩ + (a∇Uhn , ∇v) = 0 ∀v ∈ V0n .
Thus from (7.48) and (7.69) we deduce that, for a.e. t ∈ (tn−1 , tn ] and for
any φ ∈ H01 (Ω), vH ∈ V0n,H , v ∈ V0n ,
⟨ ∂(u − U ) ⟩
H
, φ + (a∇(u − UH n
), ∇φ)
∂t
= ⟨Rn , φ − v⟩ − (a∇Uhn , ∇(φ − v)) + ⟨f − f¯n , φ⟩
⟨Un − Un ⟩
− H h
, φ − vH − (a∇(UH n
− Uhn ), ∇(φ − vH )),
τn
104 7. FINITE ELEMENT METHODS FOR PARABOLIC PROBLEMS

where for any t ∈ (tn−1 , tn ], UH (t) = l(t)UH n + (1 − l(t))U n−1 with l(t) =
h
(t − tn−1 )/τn . By taking vH = ΠnH φ ∈ V0n,H , the Clément interpolant of
φ ∈ H01 (Ω) in V0n,H , we get, after using the estimate (7.53) for the Clément
interpolation operator, that
⟨Un − Un ⟩
H h
, φ − ΠH φ + (a∇(UH
n n
− Uhn ), ∇(φ − ΠnH φ))
τn
( ∑ )1/2
6C h2K τn−2 ∥ UHn
− Uhn ∥2L2 (K) + |||UHn
− Uhn |||2Ω |||φ|||Ω
K∈Mn
H

6 C(ĈH ) ∥ UH
m 1/2 n
− Uhn ∥τn ,Ω |||φ|||Ω .
Again, since MnH is a coarsening of Mn , from the proof of Theorem 3.1 and
the Step 4 in Algorithm 7.1 we know that

TOLcoarse
∥ UH − Uh ∥τn ,Ω 6 ∥ IH Uh − Uh ∥τn ,Ω 6 (ηcoarse ) 6
n n n n n n 1/2
,
T
which yields
⟨Un − Un ⟩
H h
, φ − ΠnH φ + (a∇(UH n
− Uhn ), ∇(φ − ΠnH φ))
τn

m TOL
ĈH coarse
6C |||φ|||Ω .
T
The rest of the proof is similar to that of in Theorem 2.1. Here we omit the
details. 

In practical computations, it is natural to choose the coarsening tolerance


TOLcoarse much smaller than the space tolerance TOLspace . However, the
m in the estimate (7.68) suggests that the ratio between
additional factor ĈH
the coarsening tolerance and the time tolerance should also be small.

Bibliographic notes. The Sobolev space involving time in Section 7.1


follows Evans [32]. A comprehensive account on the mathematical theory
of parabolic equations can be found in Ladyzhenskaya et al [40]. Sections
7.2 and 7.3 follow the development in Thomée [49] where further results on
finite element methods for parabolic problems can be found. There are several
approaches for deriving a posteriori error estimates for parabolic problems,
e.g., the duality argument by Eriksson and Johnson [30, 31] and the energy
argument by Picasso [47]. The analysis in Sections 7.4 is from Chen and Jia
[20] and improves the results of [47]. The space and time adaptive algorithms
based on a posteriori error estimates and their implementation are considered
7.6. EXERCISES 105

in Schmidt and Siebert [48]. Section 7.5 is taken from [20] to which we refer
for the discussion on the termination of the adaptive algorithm 7.1 in finite
number of steps.

7.6. Exercises
Exercise 7.1. Prove Theorem 7.3.
Exercise 7.2. Under the assumptions of Theorem 7.7, prove that, for
t > 0,
∫ t
−αt
∥θh (t)∥L2 (Ω) 6 e ∥θh (0)∥L2 (Ω) + e−α(t−s) ∥r(s)∥L2 (Ω) ds,
0
where α is the constant in (7.8).
Exercise 7.3. Let u and uh be the solutions of (7.1) and (7.13), respec-
tively. Suppose that ∥uh0 − u0 ∥L2 (Ω) 6 Ch2 |u0 |H 2 (Ω) . Then for t > 0,
∫ t ( ∫ t )
2 2
∥uh (s) − Rh u(s)∥H 1 (Ω) ds 6Ch |u0 |H 2 (Ω) +
4
|ut (s)|2H 2 (Ω) ds .
0 0
Exercise 7.4. Complete the proofs of Theorem 7.11 and Theorem 7.12.
CHAPTER 8

Finite Element Methods for Maxwell Equations

The Maxwell equations comprise four first-order partial differential equa-


tions linking the fundamental electromagnetic quantities, the electric field E,
the magnetic induction B, the magnetic field H, the electric flux density D,
the electric current density J, and the space charge density ρ:

∇ × H = J + ∂t D, divD = ρ,
∇ × E = −∂t B, divB = 0.

They are usually supplemented by the following linear constitutive laws

D = εE, B = µH,

where ε is the dielectric permittivity and µ the magnetic permeability. In


the wave form, we have
( )
2
ε∂tt E + ∇ × µ−1 ∇ × E = −∂t J, div(εE) = ρ,
( −1 ) ( −1 )
µ∂tt H + ∇ × ε ∇ × H = ∇ × ε J , div(µH) = 0.
2

Usually, time harmonic solutions are considered, that is,

E(x, t) = ℜ(Ê(x)e−iωt ), H(x, t) = ℜ(Ĥ(x)e−iωt ), J(x, t) = ℜ(Ĵ(x)e−iωt ),

where ω > 0 is the angular frequency, then

∇ × (µ−1 ∇ × Ê) − εω 2 Ê = iω Ĵ, div(εÊ) = ρ,


−1 −1
∇ × (ε ∇ × Ĥ) − µω Ĥ = ∇ × (ε
2
Ĵ), div(µĤ) = 0.

In this chapter we consider adaptive edge element methods for solving the
time-harmonic Maxwell equations. We will first introduce the function space
H(curl; Ω) and its conforming finite element discretization, the lowest or-
der Nédélec edge element method. Then we will derive the a priori and a
posteriori error estimate for the edge element method.
107
108 8. FINITE ELEMENT METHODS FOR MAXWELL EQUATIONS

8.1. The function space H(curl; Ω)


Let Ω be a bounded domain in R3 with a Lipschitz boundary Γ. we define
H(curl; Ω) = {v ∈ L2 (Ω)3 : ∇ × v ∈ L2 (Ω)3 }
with the norm
( )1/2
∥v∥H(curl;Ω) = ∥v∥2L2 (Ω) + ∥∇ × v∥2L2 (Ω) .
We define H0 (curl; Ω) to be the closure of C0∞ (Ω)3 in H(curl; Ω). H(curl; Ω)
and H0 (curl; Ω) are Hilbert spaces.
Lemma 8.1. Let Ω be a bounded Lipschitz domain. Let v ∈ H(curl; R3 )
vanish outside Ω. Then v ∈ H0 (curl; Ω).
Proof. Suppose for the moment that the domain Ω is strictly star-
shaped with respect to one of its points. Without loss of generality, we
may take the point as the origin. Then
θΩ̄ ⊂ Ω ∀θ ∈ [0, 1) and Ω̄ ⊂ θΩ ∀θ > 1.
Define, for θ ∈ (0, 1),
vθ (x) = v(x/θ) ∀x ∈ R3 .
It is obvious that vθ has a compact support in Ω for θ ∈ (0, 1) and
lim vθ = v in H(curl, R3 ).
θ→1

For any ϵ > 0, let ρϵ (x) = ϵ−d ρ(x/ϵ) ∈ C0∞ (R3 ) be the mollifier function
where ρ(x) is defined in (1.4). Recall that ρϵ = 0 for |x| > ϵ. Hence, for ϵ > 0
sufficiently small, ρϵ ∗ vθ is in C0∞ (Ω)3 and from Lemma 1.1,
lim lim (ρϵ ∗ vθ ) = v in H(curl, Ω).
ϵ→0 θ→1
In the general case, Ω can be covered by a finite family of open sets
Ω ⊂ ∪16i6q Oi
such that each Ωi = Ω ∩ Oi is Lipschitz, bounded and strictly star-shaped.
Let {χi }16i6q be a partition of unity subordinate to the family {Oi }16i6q ,
that is,
∑ q
χi ∈ C0∞ (Oi ), 0 6 χi 6 1, and χi = 1 in Ω.
i=1
∑q
Then v = i=1 χi v in R3 .
Clearly χi v ∈ H(curl; Ω) with support in Ωi .
Therefore, we can finish the proof by using the result for the strictly star-
shaped domain in the first part of the proof. 
8.1. THE FUNCTION SPACE H(curl; Ω) 109

Theorem 8.1. Let D(Ω̄) be the set of all functions ϕ|Ω with ϕ ∈ C0∞ (R3 ).
Then D(Ω̄)3 is dense in H(curl; Ω).

Proof. Let l belong to H(curl; Ω)′ , the dual space of H(curl; Ω). As
H(curl; Ω) is a Hilbert space, by Riesz representation theorem, we can asso-
ciate with l a function u in H(curl; Ω) such that
⟨l, v⟩ = (u, v) + (w, ∇ × v) ∀v ∈ H(curl; Ω),
where
w = ∇ × u.
Now assume that l vanishes on D(Ω̄)3 and let ũ, w̃ be respectively the exten-
sion of u, w by zero outside Ω. Then we have

{ũ · v + w̃ · ∇ × v} dx = 0 ∀v ∈ C0∞ (R3 )3 .
R3
This implies that
ũ = −∇ × w̃.
Therefore w̃ ∈ H(curl; R3 ), since ũ ∈ L2 (R3 )3 . Now by Lemma 8.1 we have
w ∈ H0 (curl; Ω). As C0∞ (Ω)3 is dense in H0 (curl; Ω), let wϵ be a sequence of
functions in C0∞ (Ω)3 that tends to w in H(curl; Ω) as ϵ → 0, then
⟨l, v⟩ = lim {(−∇ × wϵ , v) + (wϵ , ∇ × v)} = 0 ∀v ∈ H(curl; Ω).
ϵ→0

Therefore, l vanishes on D(Ω̄)3 implies that l also vanishes on H(curl; Ω).


This completes the proof. 
The following theorem about the tangential trace of the functions in
H(curl; Ω) is a direct consequence of the above theorem.

Theorem 8.2. The mapping γτ : v → v × n|Γ defined on D(Ω̄)3 can be


extended by continuity to a linear and continuous mapping from H(curl; Ω)
to H −1/2 (Γ)3 . Moreover, the following Green formula holds
∫ ∫
⟨v×n, w⟩Γ = v·∇×w dx− ∇×v·w dx ∀ w ∈ H 1 (Ω)3 , v ∈ H(curl; Ω).
Ω Ω

We remark that the trace operator γτ is not a surjective mapping. The


following characterization of the H0 (curl; Ω) follows from the definition of the
space H0 (curl; Ω) and Lemma 8.1.

Lemma 8.2. We have


H0 (curl; Ω) = {v ∈ H(curl, Ω) : v × n = 0 on Γ}.
110 8. FINITE ELEMENT METHODS FOR MAXWELL EQUATIONS

The Helmholtz decomposition plays an important role in the analysis and


computation of electromagnetic fields. We start with the following general-
ization of the classical Stokes theorem.
Theorem 8.3. Let Ω be a simply connected Lipschitz domain. Then
u ∈ L2 (Ω)3 and ∇×u = 0 if and only if there exists a function φ ∈ H 1 (Ω)/R
such that u = ∇φ.
Proof. We first prove that u = ∇φ for some φ = L2loc (Ω). Since ∇φ ∈
L2 (Ω)3 , we then easily have φ ∈ L2 (Ω). In fact, using the argument in
Lemma 8.1 we may assume Ω is strictly star-shaped. Then we can introduce
φθ as in Lemma 8.1. Since φ ∈ L2loc (Ω) and ∇φ ∈ L2 (Ω)3 , we know that
∫ ∫
∇φθ → ∇φ and D φθ → D φ as θ → 1, where D is some compact subset of
Ω. Now since φ ∈ L2loc (Ω) we know φθ ∈ L2 (Ω). By using Poincaré inequality
we know that φθ is a Cauchy sequence in L2 (Ω) as θ → 1. Thus there exists
a φ1 ∈ L2 (Ω) such that φθ → φ1 in L2 (Ω). This implies φ = φ1 ∈ L2 (Ω).
To show u = ∇φ for some φ = L2loc (Ω), first we find a sequence of simply
connected Lipschitz domain {Ωm }m>1 such that
Ω̄m ⊂ Ω, Ωm ⊂ Ωm+1 , Ω = ∪m>1 Ωm .
In Ωm we can smooth u so that its curl is zero and so we can apply the classical
Stokes theorem for C 1 functions. For any ϵ > 0, let ρϵ (x) = ϵ−d ρ(x/ϵ) ∈
C0∞ (R3 ) be the mollifier function where ρ(x) is defined in (1.4). Recall that
ρϵ = 0 for |x| > ϵ. Denote by ũ the zero extension of u outside Ω. Then
ρϵ ∗ ũ ∈ C0∞ (R3 )3 , and
ρϵ ∗ ũ → ũ in L2 (R3 )3 , ∇ × (ρϵ ∗ ũ) = ρϵ ∗ ∇ × ũ.
For sufficiently small ϵ, we have ∪x∈Ωm B(x; ϵ) ⊂ Ω. Thus
∇ × (ρϵ ∗ ũ) = 0 in Ωm .
Now from the classical Stokes theorem, there is a smooth function φϵ ∈
H 1 (Ωm )/R such that
ρϵ ∗ ũ = ∇φϵ in Ωm .
Let ϵ → 0, we know that there is a function φm ∈ H 1 (Ωm ) such that φϵ → φm
in H 1 (Ωm )/R, and
u = ∇φm in Ωm .
But ∇φm = ∇φm+1 in Ωm . Thus φm , φm+1 differ by only a constant which
we can choose as zero. Therefore
φm+1 = φm in Ωm ∀m > 1.
8.1. THE FUNCTION SPACE H(curl; Ω) 111

This defines a function φ ∈ L2loc (Ω) such that u = ∇φ. 

Our next goal is to show that a vector field whose divergence vanishes
must be a curl filed. We assume ∂Ω has p + 1 connected parts Γi , 0 6 i 6 p,
and Γ0 is the exterior boundary. We denote Ωi the domain encompassed by
Γi , 1 6 i 6 p (see Figure 1).

Ω0

Ω 2 Γ2

Ω1 Γ1
Ωp
Γp

O
Γ0

Figure 1. The domain Ω and the ball O.

Theorem 8.4. A vector field v ∈ L2 (Ω)3 satisfies

div v = 0 in Ω, ⟨v · n, 1⟩Γi = 0, 0 6 i 6 p, (8.1)

if and only if there is a vector potential w ∈ H 1 (Ω))3 such that

v = ∇ × w. (8.2)

Moreover, w may be chosen such that div w = 0 and the following estimate
holds

∥w∥H 1 (Ω) 6 C∥v∥L2 (Ω) . (8.3)

Proof. 1◦ ) Let w ∈ H 1 (Ω)3 and v = ∇ × w. Obviously div v = 0. For


0 6 i 6 p, let χi ∈ C0∞ (R3 ) be the cut-off function such that 0 6 χi 6 1,
χi = δij in the neighborhood of Γj . Define vi = ∇ × (χi w). Then

⟨v · n, 1⟩Γi = ⟨vi · n, 1⟩Γ = div vi dx = 0, 0 6 i 6 p.

This shows (8.1).


112 8. FINITE ELEMENT METHODS FOR MAXWELL EQUATIONS

2◦ ) Now let us assume (8.1) holds. First we extend v to be a function in


R3 so that its divergence is zero. Let O be a ball containing Ω (see Figure 1).
For 0 6 i 6 p, denote by θi ∈ H 1 (Ωi ) the solution of the following problem
( )
− ∆θ0 = 0 in Ω0 = O \ Ω̄ ∪pi=1 Ωi , ∂n θ0 = v · n on Γ0 , ∂n θ0 = 0 on ∂O,
− ∆θi = 0 in Ωi , ∂n θi = v · n on Γi , 0 6 i 6 p.

Define

 v in Ω,
ṽ = ∇θi in Ωi , 1 6 i 6 p,

0 in R3 \Ō.

Then ṽ ∈ L2 (R3 ) and div ṽ = 0. Let v̂ = (v̂1 , v̂2 , v̂3 )T be the Fourier
transform of ṽ
∫ ∑
3
v̂(ξ) = e−2πi(x,ξ) ṽ(x) dx, (x, ξ) = xi ξi .
R3 i=1

By taking the Fourier transform of (8.1) we obtain

ξ1 v̂1 + ξ2 v̂2 + ξ3 v̂3 = 0. (8.4)

Notice that if (8.2) is satisfied we need

v̂ = 2πi(ξ2 ŵ3 − ξ3 ŵ2 , ξ3 ŵ1 − ξ1 ŵ3 , ξ1 ŵ2 − ξ2 ŵ1 )T . (8.5)

If div w = 0 we need

ξ1 ŵ1 + ξ2 ŵ2 + ξ3 ŵ3 = 0. (8.6)

Solving ŵ from (8.4)-(8.6) we get


1
ŵ = (ξ3 v̂2 − ξ2 v̂3 , ξ1 v̂3 − ξ3 v̂1 , ξ2 v̂1 − ξ1 v̂2 )T .
2πi|ξ|2
We will define w as the inverse Fourier transform of the above function.
Obviously ∇w ∈ L2 (Ω)3×3 because
1
|ξj ŵk | 6 (|v̂1 | + |v̂2 | + |v̂3 |). (8.7)

Now we show w ∈ L2 (Ω)3 . Denote by ω ∈ C0∞ (R3 ) the function which is 1
in the neighborhood of the origin. Then

ŵ(ξ) = ω(ξ)ŵ(ξ) + (1 − ω(ξ))ŵ(ξ).


8.1. THE FUNCTION SPACE H(curl; Ω) 113

From (8.5) we know that v̂j (0) = 0. Since v̂j (ξ) is holomorphic, we know
that, in the neighborhood of the origin,

3
∂v̂j
v̂j (ξ) = ξk + O(|ξ|2 ).
∂ξk
k=1
Thus ŵ is bounded in the neighborhood of the origin. Now ω ŵ has the com-
pact support, its inverse Fourier transform is holomorphic and its restriction
to Ω belongs to L2 (Ω)3 . On the other hand, (1 − ω)ŵ is zero in the neigh-
borhood of the origin. Hence (1 − ω)ŵ ∈ L2 (R3 )3 and its inverse Fourier
transform in L2 (R3 )3 . This proves the inverse Fourier transform of ŵ is in
L2 (Ω)3 .
Clearly w can be chosen up to an arbitrary constant. Thus (8.3) follows
from (8.7), the Parserval identity, and Poincaré inequality. 
The following Helmholtz decomposition theorem is now a direct conse-
quence of Theorems 8.3 and 8.4.
Theorem 8.5. Any vector field v ∈ L2 (Ω)3 has the following orthogonal
decomposition
v = ∇q + ∇ × w,
where q ∈ H 1 (Ω)/R is the unique solution of the following problem
(∇q, ∇φ) = (v, ∇φ) ∀φ ∈ H 1 (Ω),
and w ∈ H 1 (Ω)3 satisfies div w = 0 in Ω, ∇ × w · n = 0 on Γ.
We conclude this section by proving the embedding theorem for function
spaces XN (Ω) and XT (Ω) which will be used in our subsequent analysis
XN (Ω) = {v ∈ L2 (Ω)3 : ∇ × v ∈ L2 (Ω)3 , divv ∈ L2 (Ω), v × n = 0 on Γ},
XT (Ω) = {v ∈ L2 (Ω)3 : ∇ × v ∈ L2 (Ω)3 , divv ∈ L2 (Ω), v · n = 0 on Γ}.
Theorem 8.6. If Ω is a C 1 or convex domain, XN (Ω), XT (Ω) are con-
tinuously embedded into H 1 (Ω)3 .
Proof. Without loss of generality, we may assume Ω is also simply con-
nected and has connected boundary. For, otherwise, Ω is the union of finite
number of domains Ωk having above properties. We can introduce the par-
tition of unity χk subordinate to Ωk and apply the result for each χk v.
1◦ ) Let v ∈ XT (Ω). By Theorem 8.4, for ∇ × v, we have vector potential
w ∈ H 1 (Ω)3 such that
∇ × w = ∇ × v, div w = 0 in Ω.
114 8. FINITE ELEMENT METHODS FOR MAXWELL EQUATIONS

Moreover, ∥w∥H 1 (Ω) 6 C∥∇ × v∥L2 (Ω) . Thus ∇ × (v − w) = 0 and by


Theorem 8.3, v − w = ∇φ for some function φ ∈ H 1 (Ω). Moreover, φ
satisfies

−∆φ = −div v in Ω, ∂n φ = −w · n on Γ. (8.8)

Since w ∈ H 1 (Ω)3 , w · n ∈ H 1/2 (Γ). Now if Ω is a C 1 domain, then the


regularity theory for elliptic equations implies φ ∈ H 2 (Ω). Thus v = w + ∇φ
belongs to H 1 (Ω)3 . Moreover,
( )
|φ|H 2 (Ω) 6C ∥ divv ∥L2 (Ω) + ∥ w · n ∥H 1/2 (Γ)
( )
6C ∥ divv ∥L2 (Ω) + ∥ ∇ × v ∥L2 (Ω) .

Thus
( )
|v|H 1 (Ω) 6 C ∥ divv ∥L2 (Ω) + ∥ ∇ × v ∥L2 (Ω) .

2◦ ) Let v ∈ XN (Ω). Let O be a ball in R3 that includes Ω. Denote


by ṽ the zero extension to O of v. By Theorem 8.4, there exists a function
w ∈ H 1 (O)3 such that

∇ × w = ∇ × ṽ, div w = 0 in O.

Now w is curl free in O\Ω̄ and by Theorem 8.3, w = ∇ψ for some ψ ∈


H 2 (O\Ω̄). On the other hand, ∇ × (ṽ − w) = 0 and O is simply connected,
again by Theorem 8.3, v − w = ∇φ for some function φ ∈ H 1 (O). Clearly φ
satisfies

−∆φ = −divv in Ω, φ = −ψ on Γ. (8.9)

If Ω is a C 1 domain, then φ ∈ H 2 (Ω) and consequently v = w+∇φ ∈ H 1 (Ω)3 .


Moreover,
( )
|v|H 1 (Ω) 6 C ∥ divv ∥L2 (Ω) + ∥ ∇ × v ∥L2 (Ω) .

3◦ ) If Ω is a convex domain, the regularity theory for elliptic equation


ensures that the solution φ of (8.9) is in H 2 (Ω) and thus XN (Ω) is contin-
uously embedded into H 1 (Ω)3 by using the same argument in 2◦ ). For the
case of XT (Ω), the regularity of the elliptic equation with Neumann condition
in (8.8) is unknown. A different approach is used to prove the embedding
theorem. We refer the reader to the monograph [34]. 
8.2. THE CURL CONFORMING FINITE ELEMENT APPROXIMATION 115

8.2. The curl conforming finite element approximation


In this section we only consider the lowest order Nédélec finite element
space.

Definition 8.7. The lowest order Nédélec finite element is a triple (K, P,
N ) with the following properties
(i) K ⊂ R3 is a tetrahedron;
(ii) P = {u = aK + bK × x ∀ aK , bK ∈ R3 };

(iii) N = {Me : Me (u) = e (u · t) dl ∀ edge e of K, ∀u ∈ P}. Me (u) is
called the moment of u on the edge e.
Note that if u ∈ P1 (K)3 then ∇×u is a constant vector, say ∇×u = 2bK ,
which implies ∇ × (u − bK × x) = 0 in K. We get u = ∇φ + bK × x for some
φ ∈ P2 (K). When bK = 0, u should approximate the function in L2 (K)3 ,
the minimum requirement is φ ∈ P1 (K), that is, ∇φ = aK for some constant
vector aK in R3 . This motivates the shape functions in P.

Lemma 8.3. The nodal basis of the lowest order Nédélec element is {λi ∇λj
−λj ∇λi , 1 6 i < j 6 4}. Here λj , j = 1, 2, 3, 4, are barycentric coordinate
functions of the element K.

Proof. Let K be the tetrahedron with four vertices A1 , A2 , A3 , A4 cor-


responding to λ1 , λ2 , λ3 , λ4 , respectively. We first notice that the normal to
the face F123 with vertices A1 , A2 , A3 is parallel to ∇λ4 . In fact, for any edge
e of F123 with tangential vector te ,
∂λ4
∇λ4 · te = = 0.
∂te
Similarly, we have the normal to the face F234 is parallel to ∇λ1 .
Now we show that the basis function corresponding to the edge e14 is
u14 = λ1 ∇λ4 − λ4 ∇λ1 . In fact, since λ1 = 0 on the face F234 and λ4 = 0 on
the face F123 , we have

u14 · te dl = 0 ∀ e ̸= e14 .
e
It remains to prove ∫
u14 · t14 dl = 1.
e14
Noting that λ1 + λ4 = 1 on e14 , we have
u14 = ∇λ4 − λ4 ∇(λ1 + λ4 ) = ∇λ4 + λ4 ∇(λ2 + λ3 ).
116 8. FINITE ELEMENT METHODS FOR MAXWELL EQUATIONS

Therefore
∫ ∫ ∫
∂λ4
u14 · t14 dl = ∇λ4 · t14 dl = dl = 1.
e14 e14 e14 ∂t14
This completes the proof. 
Let K be a tetrahedron with vertices Ai , 1 6 i 6 4, and let FK : K̂ → K
be the affine transform from the reference element K̂ to K
x = FK (x̂) = BK x̂ + bK , x̂ ∈ K̂, BK is invertible,
so that FK (Âi ) = Ai , 1 6 i 6 4. Notice that the normal and tangential
vectors n, n̂ and t, t̂ to the faces satisfy
−1 T
/ −1 T /
n ◦ FK = (BK ) n̂ |(BK ) n̂|, t ◦ FK = BK t̂ |BK t|.
For any scaler function φ defined on K, we associate
φ̂ = φ ◦ FK , that is, φ̂(x̂) = φ(BK x̂ + bK ).
For any vector valued function u defined on K, we associate
T
û = BK u ◦ FK , that is, T
û(x̂) = BK u(BK x̂ + bK ). (8.10)
Denote by u = (u1 , u2 , u3 ), û = (û1 , û2 , û3 ). We introduce
( ) ( )
∂ui ∂uj 3 ∂ ûi ∂ ûj 3
C= − and C = ˆ − .
∂xj ∂xi i,j=1 ∂ x̂j ∂ x̂i i,j=1
Then we have
−1 T ˆ −1
C ◦ FK = (BK ) CBK . (8.11)
In fact,
∂ ûi ∂ (∑ ) ∑ ∂u
k
= bki (uk ◦ FK ) = bki blj
∂ x̂j ∂ x̂j ∂xl
k k,l
and
∂ ûi ∂ ûj ∑ ∂uk ∑ ∂uk ∑ ( ∂uk ∂ul
)
− = bki blj − bkj bli = bki − blj .
∂ x̂j ∂ x̂i ∂xl ∂xl ∂xl ∂xk
k,l k,l k,l

This yields

Cˆij = bki Ckl blj and hence Cˆ = BK
T
(C ◦ FK )BK ,
k,l

that is, (8.11) holds.

Lemma 8.4. We have


(i) u ∈ P(K) ⇔ û ∈ P̂(K̂);
(ii) ∇ × u = 0 ⇔ ∇
ˆ × û = 0, ∀ u ∈ P(K);
8.2. THE CURL CONFORMING FINITE ELEMENT APPROXIMATION 117

(iii) Me (u) = 0 ⇔ Mê (û) = 0, ∀ u ∈ P(K);


(iv) Let u ∈ P(K) and F be a face of K. If Me (u) = 0 for any edge
e ⊂ ∂F , then u × n = 0 on F ;
(v) If u ∈ P(K) and Me (u) = 0 for any edge e, then u = 0 in K.

Proof. (i) For u = aK + bK × x ∈ P(K), we have


T
û(x̂) = BK (aK + bK × (BK x̂ + bK ))
T
= BK (aK + bK × bK ) + BK
T
(bK × BK x̂)
T
= BK aK + b̂K̂ × x̂ T
(by BK (bK × BK x̂) · x̂ = 0)
∈ P̂(K̂).

(ii) From (8.11), it is obvious.


(iii) By definition,
∫ ∫
|e| BK t̂ ˆ
Me (u) = u · t dl = u(FK (x̂)) · dl
e |ê| ê |BK t̂|

|e| 1
= û · t̂dˆl
|ê| |BK t̂| ê
|e| 1
= Mê (û). (8.12)
|ê| |BK t̂|
(iv) Without loss of generality, we may assume

F ⊂ {x = (x1 , x2 , x3 ) ∈ R3 : x3 = 0}.

First by Stokes theorem


∫ ∫
∇ × u · n ds = u · t dl = 0
F ∂F

which implies ∇ × u · n = 0 on F , i.e.,


∂u1 ∂u2
− =0 on {x3 = 0}. (8.13)
∂x2 ∂x1
Let u′ = (u1 (x1 , x2 , 0), u2 (x1 , x2 , 0)) and

u = aK + bK × x = (b2 x3 − b3 x2 , b3 x1 − b1 x3 , b1 x2 − b2 x1 ) + aK .

(8.13) implies b3 = 0. Thus u′ is constant. Note that u · t = u′ · t on F.


By assumption, we have, Me (u) = 0, for any edge e ⊂ F , which implies
u′ · t = 0 on any edge e ⊂ F . Thus u′ = 0 in F. This shows u × n =
(u2 (x1 , x2 , 0), −u1 (x1 , x2 , 0), 0) = 0 on F .
118 8. FINITE ELEMENT METHODS FOR MAXWELL EQUATIONS

(v) At first, by (iv) we know that u × n = 0 on F for any face F . Thus,


from Theorem 8.2,
∫ ∫
∇ × u · bK dx = − (u × n) · bK ds = 0
K ∂K
which implies bK = 0, that is, u = aK . Now aK × n = 0 for any face F yields
aK = 0. 
This lemma induces a natural interpolation operator on K.
Definition 8.8. Let K be an arbitrary tetrahedron in R3 and u ∈
W 1,p (K)3 for some p > 2. Its interpolant γK u is a unique polynomial in P(K)
that has the same moments as u on K. In other words, Me (γK u − u) = 0.
Recall that for any bounded Lipschitz domain, the trace theorem says
that the trace of any function in W s,p (Ω) is in W s−1/p,p (∂Ω), where s > 1/p.
Thus if u ∈ W 1,p (K)3 for some p > 2, u ∈ W 1−1/p,p (∂F ) for any face F
of K. Again by the trace theorem u ∈ W 1−2/p,p (∂F ). Therefore, Me (u) is
well-defined for functions u in W 1,p (K), p > 2.
The following lemma indicates that the interpolation operator γK can
also be defined for functions with weaker regularity.
Lemma 8.5. For any p > 2, the operator γK is continuous on the space
{v ∈ Lp (K)3 : ∇ × v ∈ Lp (K)3 and v × n ∈ Lp (∂K)3 }.
Proof. Let p′ be such that 1/p + 1/p′ = 1. For an edge e of a face F of
K, we let φ be the function which equals to 1 on e and 0 on the other edges
′ ′
of F . Then φ ∈ W 1−1/p ,p (∂F ) since 1 − 1/p′ < 1/2. Denote φ̄ its lifting
′ ′ ′
from W 1−1/p ,p (∂F ) to W 1,p (F ). Next, we extend φ̄ to be zero on the other
′ ′ ′
faces of ∂K and denote φ̄¯ its lifting from W 1−1/p ,p (∂K) to W 1,p (K). By
Stokes theorem and Green formula

Me (v) = (v · t)φ dl
∫∂F

= ∇ × (φ̄v) · n ds
∫F

= φ̄∇ × v · n ds + ∇φ̄ × v · n ds
∫F ∫F
= ∇ × v · ∇φ̄¯ dx + ∇φ̄ × v · n ds.
K F
This implies
|Me (v)| 6 C(∥ ∇ × v ∥Lp (K) + ∥ v × n ∥Lp (F ) )∥ φ ∥W 1−1/p′ ,p′ (e)
8.2. THE CURL CONFORMING FINITE ELEMENT APPROXIMATION 119

with a constant C depending only on K and p. This completes the proof. 


Let Ω be a bounded polyhedron and Mh be a regular mesh of Ω. We set
Xh = {uh ∈ H(curl; Ω) : uh |K ∈ P(K) ∀K ∈ Mh }.
For any function u whose moments are defined on all edges of the mesh Mh ,
we define the interpolation operator γh by
γh u|K = γK u on K, ∀K ∈ Mh .
Theorem 8.9. Let u ∈ H 1 (curl; Ω), that is, u ∈ H 1 (Ω)3 and ∇ × u ∈
H 1 (Ω)3 . We have
( )
∥u − γh u∥H(curl;Ω) 6 Ch |u|H 1 (Ω) + |∇ × u|H 1 (Ω) .
Proof. First it follows from (8.12) that
γd
K u = γK̂ û, i.e., T
BK [(γK u) ◦ FK ] = γK̂ [BK
T
(u ◦ FK )].
From (8.10), we have
−1
∥u − γh u∥L2 (K) 6 | det(BK )|1/2 ∥BK ∥ ∥û − γK̂ û∥L2 (K̂) .
Since P0 (K̂)3 ⊂ P(K̂), for any p̂ ∈ P0 (K̂)3 , we have
∥û − γK̂ û∥L2 (K̂) = ∥(I − γK̂ )(û + p̂)∥L2 (K̂) .
But the degrees of freedom of u may be estimated by using Lemma 8.5 and
by using the Sobolev imbedding theorem to get
( )
∥(I − γK̂ )(û + p̂)∥L2 (K̂) 6 C ∥û + p̂∥H 1 (K̂) + ∥∇
ˆ × (û + p̂)∥ 1
H (K̂)
( )
= C ∥û + p̂∥H 1 (K̂) + ∥∇
ˆ × û∥ 1
H (K̂)

Now, by using Theorem 3.1,


( )
inf ∥(I − γK̂ )(û + p̂)∥L2 (K̂) 6 C |û|H 1 (K̂) + |∇
ˆ × û| 1
H (K̂) .
p̂∈P0 (K̂)3

Mapping back to the original element K and using (8.11) we obtain


−1
∥u − γh u∥L2 (K) 6 C| det(BK )|1/2 ∥BK ∥(|û|H 1 (K̂) + |∇
ˆ × û| 1 )
H (K̂)
−1
6 C∥BK ∥ ∥BK ∥2 (|u|H 1 (K) + ∥BK ∥ |∇ × u|H 1 (K) )
6 ChK (|u|H 1 (K) + |∇ × u|H 1 (K) ).
To show the curl estimate, we use the H(div, Ω) conforming finite element
space Wh and the interpolation operator τh : H(div, Ω) → Wh in Exercise
8.4 to obtain
∥∇ × (u − γh u)∥L2 (Ω) 6 ∥(I − τh )∇ × u∥L2 (Ω) 6 Ch∥∇ × u∥H 1 (Ω) .
120 8. FINITE ELEMENT METHODS FOR MAXWELL EQUATIONS

This proves the theorem. 

8.3. Finite element methods for time harmonic Maxwell equations


Let Ω be bounded polyhedral domain in R3 . In this section we consider
the finite element approximation to the time harmonic Maxwell equation

∇ × (α(x)∇ × E) − k 2 β(x)E = f in Ω,

with the boundary condition

E×n=0 on ∂Ω.

Here k > 0 is the wave number. We assume f ∈ L2 (Ω)3 , α, β ∈ L∞ (Ω) such


that α > α0 > 0 and β > β0 > 0.
The variational formulation is to find E ∈ H0 (curl; Ω) such that

(α∇ × E, ∇ × v) − k 2 (βE, v) = (f , v) ∀v ∈ H0 (curl; Ω). (8.14)

The problem (8.14) is not necessarily coercive and thus its uniqueness and
existence is not guaranteed. Here we will not elaborate on this issue and
simply assume (8.14) has a unique solution E ∈ H0 (curl; Ω) for any given
f ∈ L2 (Ω)3 .
Let X0h = Xh ∩ H0 (curl; Ω). Then the finite element approximation to
(8.14) is to find Eh ∈ X0h such that

(α∇ × Eh , ∇ × vh ) − k 2 (βEh , vh ) = (f , vh ) ∀ vh ∈ X0h . (8.15)

The discrete problem (8.15) may not have a unique solution. It can be
proved that for sufficiently small mesh size h, the problem (8.15) indeed
has a unique solution under fairly general conditions on the domain and the
coefficients α, β. Here we only consider a special case when the domain is a
convex polyhedron and α, β are constants.

Theorem 8.10. Let Ω be a convex polyhedral domain in R3 and α =


1, β = 1. Then there exists a constant h0 > 0 such that for h < h0 , the
discrete problem (8.15) has a unique solution Eh . Moreover, assume that
the solution E of (8.14) satisfies E ∈ H 1 (Ω)3 , ∇ × E ∈ H 1 (Ω)3 , then the
following error estimate holds
( )
∥E − Eh ∥H(curl;Ω) 6 Ch |E|H 1 (Ω) + |∇ × E|H 1 (Ω) .

Proof. The proof is divided into several steps.


8.3. FINITE ELEMENT METHODS FOR TIME HARMONIC MAXWELL EQUATIONS121

1◦ ) Let a(·, ·) : H0 (curl; Ω)×H0 (curl; Ω) → R be the bilinear form defined


by
a(u, v) = (∇ × u, ∇ × v) − k 2 (u, v).
From (8.14) and (8.15) we know that
a(E − Eh , vh ) = 0 ∀vh ∈ X0h . (8.16)
Let Ph E ∈ X0h be the projection of E to X0h defined by
(∇ × Ph E, ∇ × v) + (Ph E, v) = (∇ × E, ∇ × v) + (E, v) ∀v ∈ X0h .
Thus
∥ E − Eh ∥2H(curl;Ω) = a(E − Eh , E − Eh ) + (1 + k 2 )∥ E − Eh ∥2L2 (Ω)
= a(E − Eh , E − Ph E) + (1 + k 2 )∥ E − Eh ∥2L2 (Ω)
= (∇ × (E − Eh ), ∇ × (E − Ph E) + (E − Eh , E − Ph E)
+ (1 + k 2 )(E − Eh , Ph E − Eh ).
This yields
∥ E − Eh ∥H(curl;Ω)
|(E − Eh , vh )|
6 ∥ E − Ph E ∥H(curl;Ω) + (1 + k 2 ) sup . (8.17)
0̸=vh ∈X0h ∥ vh ∥H(curl;Ω)

2◦ ) Now we estimate the second term in above estimate. First since


E − Eh ∈ H0 (curl; Ω), there exists a w ∈ H0 (curl; Ω) and φ ∈ H01 (Ω) such
that
E − Eh = w + ∇φ, divw = 0. (8.18)
In fact we can define φ ∈ H01 (Ω) as the solution of the following problem
(∇φ, ∇v) = (E − Eh , ∇v) ∀v ∈ H01 (Ω),
and let w = E − Eh − ∇φ. Clearly ∥ ∇φ ∥L2 (Ω) 6 ∥ E − Eh ∥L2 (Ω) .
For any vh ∈ X0h , we use the following decomposition
vh = wh + ∇φh , wh ∈ X0h,0 , φh ∈ Vh0 , (8.19)
where Vh0 ⊂ H01 (Ω) is the conforming linear finite element space having zero
trace on the boundary and X0h,0 is the subspace of X0h whose functions are
discrete divergence free
X0h,0 = {uh ∈ X0h : (uh , ∇vh ) = 0 ∀vh ∈ Vh0 }.
122 8. FINITE ELEMENT METHODS FOR MAXWELL EQUATIONS

In fact we can construct φh ∈ Vh0 as the solution of the following discrete


problem
(∇φh , ∇vh ) = (vh , ∇vh ) ∀vh ∈ Vh0 ,
and let wh = vh − ∇φh . Clearly ∥ ∇φh ∥L2 (Ω) 6 ∥ vh ∥L2 (Ω) and thus
∥ wh ∥L2 (Ω) 6 C∥ vh ∥L2 (Ω) .
Since E−Eh is discrete divergence free by (8.16), we have by (8.18)-(8.19)
that
(E − Eh , vh ) = (E − Eh , wh ) = (w, wh ) + (∇φ, wh ). (8.20)
3◦ ) We will use the duality argument to estimate ∥ w ∥L2 (Ω) . Let z ∈
H0 (curl; Ω) be the solution of the following problem
∇ × ∇ × z − k2 z = w in Ω,
z×n = 0 on Γ.
By the assumption that k2is not the eigenvalue of the Dirichlet problem
for the Maxwell system, we know that z ∈ H0 (curl; Ω) is well-defined and
∥ z ∥H(curl;Ω) 6 C∥ w ∥L2 (Ω) . Moreover, div z = 0 in Ω as the consequence of
div w = 0 in Ω. Thus z ∈ XN (Ω). Since Ω is convex, by Theorem 8.5, we
have z ∈ H 1 (Ω)3 and ∥ z ∥H 1 (Ω) 6 C∥ w ∥L2 (Ω) . Similarly, noting that
∫ ∫ ∫
∇ × z · nφ = ∇ × z · ∇φ = n × z · φ = 0, ∀φ ∈ H 1 (Ω),
Γ Ω Γ
we have ∇ × z ∈ XT (Ω), and hence by Theorem 8.5, ∇ × z ∈ H 1 (Ω)3 and
∥ ∇ × z ∥H 1 (Ω) 6 C∥ w ∥L2 (Ω) .
Now, since z is divergence free, by (8.16),
∥ w ∥2L2 (Ω) = a(w, z) = a(E − Eh , z) = a(E − Eh , z − γh z),
which implies, by Theorem 8.9,
∥ w ∥2L2 (Ω) 6 Ch∥ w ∥L2 (Ω) ∥ E − Eh ∥H(curl;Ω) .
Therefore
|(w, wh )| 6 Ch∥ E − Eh ∥H(curl;Ω) ∥ wh ∥L2 (Ω)
6 Ch∥ E − Eh ∥H(curl;Ω) ∥ vh ∥L2 (Ω) . (8.21)
4◦ ) To estimate (∇φ, wh ), we define v ∈ H0 (curl; Ω) such that
∇ × v = ∇ × wh , divv = 0.
Note that v is the divergence free part in the Helmholtz decomposition of vh .
Since Ω is convex, we have v ∈ H 1 (Ω)3 and ∥ v ∥H 1 (Ω) 6 C∥ ∇ × wh ∥L2 (Ω) .
On the other hand, since ∇ × v = ∇ × wh ∈ Lp (Ω) for any p > 2, we
8.4. A POSTERIORI ERROR ANALYSIS 123

know from Lemma 8.5 that γh v is well-defined. By using the operator τh in


Exercise 8.3, we have

∇ × γh v = τh ∇ × v = τh ∇ × wh = ∇ × wh .

Thus γn v − wh = ∇ψh for some ψh ∈ H01 (Ω). Since γn v − wh ∈ P(K),


ψh ∈ Vh0 . Now since divv = 0 and wh is discrete divergence free,

∥ wh − v ∥2L2 (Ω) = (wh − v, wh − γh v) + (wh − v, γh v − v)


= (wh − v, γh v − v) 6 ∥ wh − v ∥L2 (Ω) ∥ γh v − v ∥L2 (Ω) ,

which implies

∥ wh − v ∥L2 (Ω) 6 ∥ γh v − v ∥L2 (Ω) .

By using Lemma 8.5 we can prove as in Theorem 8.9 that


( )
∥ γh v − v ∥L2 (Ω) 6 Ch |v|H 1 (Ω) + ∥∇ × v∥L2 (Ω) 6 Ch∥ ∇ × wh ∥L2 (Ω) .

Therefore, since div v = 0,

|(∇φ, wh )| = |(∇φ, wh − v)| 6 Ch∥ ∇ × wh ∥L2 (Ω) ∥ ∇φ ∥L2 (Ω)


= Ch∥ ∇ × vh ∥L2 (Ω) ∥ ∇φ ∥L2 (Ω) . (8.22)

5◦ ) Combining (8.21)-(8.22) with (8.20) we obtain

|(E − Eh , vh )| 6 Ch∥ E − Eh ∥H(curl;Ω) ∥ vh ∥H(curl;Ω) .

Substitute it into (8.17) we know that for sufficiently small h, Eh is uniquely


existent, and by Theorem 8.9
( )
∥ E − Eh ∥H(curl;Ω) 6 Ch |E|H 1 (Ω) + |∇ × E|H 1 (Ω) .

This completes the proof. 

8.4. A posteriori error analysis


In this section we consider the a posteriori error estimate for the time-
harmonic Maxwell equation with homogeneous Dirichlet boundary condition
(8.14). We start with the following theorem on the interpolation of non-
smooth functions [8].
124 8. FINITE ELEMENT METHODS FOR MAXWELL EQUATIONS

Theorem 8.11. There exists a linear projection Πh : H 1 (Ω)3 ∩H0 (curl; Ω)


7→ X0h such that for all v ∈ H 1 (Ω)3
( )
∥Πh v∥L2 (K) 6 C ∥v∥L2 (K)e + hK |v|H 1 (K)
e ∀K ∈ Mh ,
∥∇ × Πh v∥L2 (K) 6 C|v|H 1 (K)
e ∀K ∈ Mh ,
∥v − Πh v∥L2 (K) 6 ChK |v|H 1 (K)
e ∀K ∈ Mh
1/2
∥v − Πh v∥L2 (F ) 6 ChF |v|H 1 (Fe) ∀ face F ∈ Fh ,

e and Fe are the


where Fh is the set of all interior faces of the mesh Mh , K
union of the elements in Mh having having nonempty intersection with K
and F , respectively.

Proof. For any edge e ∈ Eh , let we ∈ Xh be the associated canonical


basis function of Xh , that is, {we }e∈Eh be the basis of Xh satisfying
∫ ∫
we · te dl = 1, we · te′ dl = 0 ∀e, e′ ∈ Eh , e′ ̸= e.
e e′

On each face F ∈ Fh with edges {e1 , e2 , e3 }, we construct a dual basis {qj }


of {wi × n} as follows

(wi × n) · qj ds = δij , i, j = 1, 2, 3. (8.23)
F

We claim that
∥qi ∥L∞ (F ) 6 Ch−1
F (8.24)
which implies that ∥qi ∥L2 (F ) 6 C. Without loss of generality, we will prove
that (8.24) holds for i = 1. We first find α = (α1 , α2 , α3 )T such that

q1 = α1 w1 ×n+α2 w2 ×n+α3 w3 ×n, (wi ×n)·q1 ds = δi1 , i = 1, 2, 3.
F

It is clear that α is the solution of the linear system


(∫ )
T
AF α = (1, 0, 0) , where AF = (wi ×n)·(wj ×n) ds . (8.25)
F 3×3

We will show that AF is invertible. Let F be the face F123 of a tetrahedron K


with vertices Ai , i = 1, 2, 3, 4 and let e1 , e2 , e3 be the edges A2 A3 , A3 A1 , A1 A2 ,
respectively. From Lemma 8.3,

w1 = λ2 ∇λ3 − λ3 ∇λ2 , w2 = λ3 ∇λ1 − λ1 ∇λ3 , w3 = λ1 ∇λ2 − λ2 ∇λ1 .


8.4. A POSTERIORI ERROR ANALYSIS 125
∑4
Let bij = (∇λi ×n)·(∇λj ×n). Since i=1 ∇λi = 0 and ∇λ4 is perpendicular
to the face F123 , we have

3
bij = 0 and bij = bji .
j=1

Therefore, AF can be rewritten as


 
3b22 + 3b33 − b11 −3b33 + b11 + b22 −3b22 + b33 + b11
|F |  
−3b33 + b11 + b22 3b11 + 3b33 − b22 −3b11 + b22 + b33  .
AF =  
12
−3b22 + b33 + b11 −3b11 + b22 + b33 3b11 + 3b22 − b33
It follows from ∇λ1 ⊥F234 that

|∇λ1 | = 1/the height of K to the face F234 ,

which implies that


|e1 |2
b11 = |∇λ1 × n|2 = .
4 |F |2
Similarly,
|e2 |2 |e3 |2
b22 = , b33 = .
4 |F |2 4 |F |2
Straightforward computation shows that
|e1 |2 + |e2 |2 + |e3 |2
det AF = > c0 ,
576 |F |
where c0 is a positive constant that depends only on the minimum angle of
the elements in the mesh. Thus AF is invertible. Since AF = O(1), we have
A−1 −1 T
F = O(1) which implies α = AF (1, 0, 0) = O(1), that is, (8.24) holds.
Now for each e ∈ Eh , we assign one of those faces with edge e and call it
Fe ∈ Fh . We have to comply with the restriction that for e on the boundary,
Fe also on the boundary. Then we can define
∑ (∫ )
Πh v = (v × n) · qFe e ds we .
e∈Eh Fe

By virtue of (8.23) this defines a projection. Obviously the boundary condi-


tion is respected. By (8.24)

(v × n) · qFe e dσ 6 ∥v∥L2 (Fe ) qFe e L2 (Fe ) 6 C ∥v∥L2 (Fe ) .
Fe
126 8. FINITE ELEMENT METHODS FOR MAXWELL EQUATIONS

Let Ke ∈ Mh be an element with Fe as one of its faces. By the scaled trace


inequality, we have
( )
∥v∥2L2 (Fe ) 6 C h−1 2 2
e ∥v∥L2 (Ke ) + he |v|H 1 (Ke ) .

Therefore,
∑ ∫ 2
∥Πh v∥2L2 (K) 6 ChK (v × n)qeFe dσ
e∈Eh Fe
e⊂∂K
∑ ( )
6 ChK h−1 2 2
e ∥v∥L2 (Ke ) + he |v|H 1 (Ke )
e∈Eh
e⊂∂K
( )
6 C ∥v∥2L2 (K̃) + h2K |v|2H 1 (K̃) .
This proves the first estimate in the theorem.
Since Πh is a projection, we know that Πh cK = cK for any constant cK .
Thus
∥v − Πh v∥L2 (K) = inf ∥(v + cK ) − Πh (v + cK )∥L2 (K)
cK
( )
6 C inf ∥v + cK ∥L2 (K̃) + hK |v + cK |H 1 (K̃)
cK
6 ChK |v|H 1 (K̃) ,
where we have used the scaling argument and Theorem 3.1 in the last in-
equality. This proves the third inequality. The last inequality can be proved
similarly. The proof of the second inequality is left as an exercise. 

The following regular decomposition theorem is due to Birman-Solomyak.

Lemma 8.6. Let Ω be a bounded Lipschitz domain. Then for any v ∈


H0 (curl; Ω), there exists a ψ ∈ H01 (Ω) and a vs ∈ H 1 (Ω)3 ∩ H0 (curl; Ω) such
that v = ∇ψ + vs in Ω, and
∥ψ∥H 1 (Ω) + ∥vs ∥H 1 (Ω) 6 C ∥v∥H(curl;Ω) ,
where the constant C depends only on Ω.

Proof. Let O be a ball containing Ω. We extend v by zero to the


e . Clearly v
exterior of Ω and denote the extension by v e ∈ H0 (curl; O) with
compact support in O. By Theorem 8.4 there exists a w ∈ H 1 (O)3 such that
e , div w = 0 in O,
∇×w =∇×v (8.26)
and
e ∥L2 (O) = C ∥∇ × v∥L2 (Ω) .
∥w∥H 1 (O) 6 C ∥∇ × v (8.27)
8.4. A POSTERIORI ERROR ANALYSIS 127

Now since O is simply-connected, ∇×(w − v e ) = 0, by Theorem 8.3, there


exists a φ ∈ H (O)/R such that ṽ = w + ∇φ in O, and, from (8.27),
1
( )
∥φ∥H 1 (O) 6 C |φ|H 1 (O) 6 C ∥e
v∥L2 (O) + ∥w∥L2 (O) 6 C ∥v∥H(curl;Ω) ,
|φ|H 2 (O\Ω̄) 6 |w|H 1 (O) 6 C ∥∇ × v∥L2 (Ω) .
Since O \ Ω̄ is a Lipschitz domain, by the extension theorem of Nečas, there
e ∈ H 2 (R3 ), such that
exists an extension of φ|O\Ω̄ , denoted by φ
e = φ in O \ Ω̄,
φ ∥φ∥
e H 2 (R3 ) 6 C ∥φ∥H 2 (O\Ω̄) 6 C ∥v∥H(curl;Ω) .
This completes the proof by letting ψ = φ − φ
e ∈ H01 (Ω) and vs = w + ∇φ.
e
Remember that v e = vs + ∇ψ in O and vs = v e = 0 in O \ Ω̄. Thus vs ∈
H01 (Ω)3 . 
Theorem 8.12. Let E ∈ H0 (curl; Ω) and Eh ∈ X0h be respectively the
solutions of (8.14) and (8.15). We have the following a posteriori error
estimate  1/2

∥E − Eh ∥H(curl;Ω) 6 C  ηK2 
,
K∈Mh
where
2 2
2
ηK =h2K f − ∇ × (α∇ × Eh ) + k 2 βEh L2 (K) + h2K div (f + k 2 βEh ) L2 (K)
∑ ( 2
)
+ hF ∥[[n × (α∇ × Eh )]]∥2L2 (F ) + hF [[(f + k 2 βEh ) · n]] L2 (F ) .
F ⊂∂K
Here [[·]] denotes the jump across the interior face F .
Proof. Let a(·, ·) : H0 (curl; Ω) × H0 (curl; Ω) → R be the bilinear form
defined by
a(u, v) = (α∇ × u, ∇ × v) − k 2 (βu, v).
From (8.14) and (8.15) we know that
a(E − Eh , vh ) = 0 ∀vh ∈ X0h . (8.28)
The unique existence of the weak solution of the problem (8.14) implies that
there exists a constant C > 0 such that
|a(u, v)|
inf sup > C. (8.29)
0̸=u∈H0 (curl;Ω) 0̸=v∈H0 (curl;Ω) ∥u∥H(curl;Ω) ∥v∥H(curl,Ω)

For any v ∈ H0 (curl; Ω), by Lemma 8.6, there exists a ψ ∈ H01 (Ω) and a
vs ∈ H 1 (Ω)3 ∩ H0 (curl; Ω) such that v = ∇ψ + vs in Ω, and
∥ψ∥H 1 (Ω) + ∥vs ∥H 1 (Ω) 6 C ∥v∥H(curl;Ω) . (8.30)
128 8. FINITE ELEMENT METHODS FOR MAXWELL EQUATIONS

Let rh : H 1 (Ω) 7→ Vh0 be the Clément interpolant defined in Chapter 4,


Section 4.2.1, and define
vh = ∇rh ψ + Πh vs ∈ X0h .
Then by the inf-sup condition (8.29) and (8.28)
|a(E − Eh , v)|
∥E − Eh ∥H(curl;Ω) 6 C sup
0̸=v∈H0 (curl,Ω) ∥v∥H(curl,Ω)
|a(E − Eh , v − vh )|
=C sup .
0̸=v∈H0 (curl,Ω) ∥v∥H(curl,Ω)
On the other hand, by integrating by parts, we have
a(E − Eh , v − vh )
( )
= (f , v − vh ) − (α ∇ × Eh , ∇ × (v − vh )) + k 2 βEh , v − vh
( ) ( )
= f , (∇ψ + vs ) − (∇rh ψ + Πh vs ) − α ∇ × Eh , ∇ × (vs − Πh vs )
( ) ( )
+ k 2 βEh , vs − Πh vs + k 2 βEh , ∇(ψ − rh ψ)
∑ ( )
= f − ∇ × (α ∇ × Eh ) + k 2 βEh , vs − Πh vs
K∈Mh
∑ ∫
+ [[n × (α∇ × Eh )]] · (vs − Πh vs )
F ∈Fh F
∑ ( )
− div (f + k 2 βEh ), ψ − rh ψ
K∈Mh
∑ ∫
+ [[(f + k 2 βEh ) · n]](ψ − rh ψ).
F ∈Fh F

Now by Theorem 8.11 and (8.30)


( ∑ )1/2 ( )
|a(E − Eh , v − vh )| 6 C 2
ηK ∥vs ∥H 1 (Ω) + |ψ|H 1 (Ω)
K⊂Mh
( ∑ )1/2
6C 2
ηK ∥v∥H(curl;Ω) .
k⊂Mh

This completes the proof. 

Bibliographic notes. The results in Section 8.1 are taken from Girault
and Raviart [34]. Further results on vector potentials on nonsmooth domains
can be found in Amrouche et al [2]. The full characterization of the trace for
functions in H(curl; Ω) can be found in Buffa et al [17]. The Nédélec edge
elements are introduced in Nédédec [43, 44]. Lemma 8.5 is taken from [2].
8.5. EXERCISES 129

Further properties of edge elements can be found in Hiptmair [36] and Monk
[42]. The error analysis in Section 8.3 follows the development in [42] which
we refer to for further results. The interpolation operator in Theorem 8.11
is from Beck et al [8] although the proof here is slightly different. In [8] the
a posteriori error estimate is derived for smooth or convex domains. Lemma
8.6, which is also known as regular decomposition theorem, is from Birman
and Solomyak [10]. Theorem 8.12 is from Chen et al [21] in which the adap-
tive multilevel edge element method for time-harmonic Maxwell equations
based on a posteriori error estimate is also considered.

8.5. Exercises
Exercise 8.1. Prove D(Ω̄)3 is dense in H(div; Ω).
Exercise 8.2. The lowest order divergence conforming finite element is
a triple (K, D, N ) with the following properties:
(i) K ⊂ R3 is a tetrahedron;
(ii) D = {u = aK + bK x ∀ aK ∈ R3 , bK ∈ R};

(iii) N = {MF : MF (u) = F (u · n) ds ∀ face F of K, ∀u ∈ D}.
For any vector field u defined on K, let
û ◦ FK (x̂) = BK u(BK x̂ + bK ).
Prove that
(i) u ∈ D(K) ⇔ û ∈ D̂(K̂);
(ii) ˆ û = 0 ∀ u ∈ D(K);
div u = 0 ⇔ div
(iii) MF (u) = 0 ⇔ MF̂ (û) = 0 ∀ u ∈ D(K);
(iv) If u ∈ D(K) and MF (u) = 0, then u × n = 0 on F ;
(v) If u ∈ D(K) and MF (u) = 0 for any face F , then u = 0 in K.
Exercise 8.3. For any function u defined on K such that MF (u) is
defined on each face F of K. Let τK u be the unique polynomial in D(K)
that has the same moments as u on K: MF (τK u − u) = 0. Prove that for
any p > 2, τK is continuous on the space
{u ∈ Lp (K)3 : div u ∈ L2 (K)}.
Exercise 8.4. Let D(K) be the finite element space in Exercise 8.2 and
Wh = {uh ∈ H(div; Ω) : uh |K ∈ D(K) ∀K ∈ Mh }.
Let τh be the global interpolation operator
τh u|K = τK u on K, ∀K ∈ Mh .
130 8. FINITE ELEMENT METHODS FOR MAXWELL EQUATIONS

Prove that ∇ × Xh ⊂ Wh and ∇ × γh u = τh ∇ × u.


Exercise 8.5. Prove that
∥u − τh u∥L2 (Ω) 6 Ch∥u∥H 1 (Ω) ∀u ∈ H 1 (Ω)3 ,
∥div (u − τh u)∥L2 (Ω) 6 Ch∥div u∥H 1 (Ω) ∀u ∈ H 1 (Ω)3 , div u ∈ H 1 (Ω).
Exercise 8.6. Prove the second estimate in Theorem 8.11.
CHAPTER 9

Multiscale Finite Element Methods for Elliptic


Equations

In this chapter we consider finite element methods for solving the follow-
ing elliptic equation with oscillating coefficients
−∇ · (a(x/ε)∇u) = f in Ω,
(9.1)
u=0 on ∂Ω,
where Ω ⊂ R2 is a bounded Lipschitz domain and f ∈ L2 (Ω). We assume
a(x/ε) = (aij (x/ε)) is a symmetric matrix and aij (y) are W 1,p (p > 2) peri-
odic functions in y with respect to a unit cube Y . We assume aε = a(x/ε) is
elliptic, that is, there exists a constant γ > 0 such that

aij (y)ξi ξj > γ|ξ|2 ∀ξ ∈ R2 , for a.e. y ∈ Y .

Here and throughout this chapter, the Einstein convention for repeated in-
dices are assumed.
The problem (9.1) a model multiscale problem which arises in the mod-
eling of composite materials and the flow transport in heterogeneous porous
media. The main difficulty in solving it by standard finite element method
is that when ε is small, the underlying finite element mesh h must be much
less than ε which makes the computational costs prohibitive. The multiscale
finite element method allows to solve the problem with mesh size h greater
than ε.

9.1. The homogenization result


In this section we introduce the homogenization result that will be used
in the subsequent analysis. We start with using the method of asymptotic
expansion to derive the homogenized equation for (9.1). Assume that the
solution of (9.1) has the following expansion

u(x) = u0 (x, x/ε) + εu1 (x, x/ε) + ε2 u2 (x, x/ε) + o(ε2 ),


131
132 9. MULTISCALE FINITE ELEMENT METHODS FOR ELLIPTIC EQUATIONS

where ui (x, y) is periodic in Y with respect to the second variable y. By


∇ = ε−1 ∇y + ∇x we know that
∇u = ε−1 ∇y u0 + (∇x u0 + ∇y u1 ) + ε(∇x u1 + ∇y u2 ) + o(ε),
and
( )
∂ ∂u
∇ · (aε ∇u) = aij (x/ε)
∂xi ∂xj
∂aij ∂u ∂2u
= ε−1 · + aij
∂yi ∂xj ∂xi ∂xj
( )
∂ ∂u0
= ε−2 aij
∂yi ∂yj
[ ( ) ( ) ]
−1 ∂ ∂u0 ∂ ∂u1 ∂ 2 u0
+ε aij + aij + aij
∂yi ∂xj ∂yi ∂yj ∂yi ∂xj
[ ( ) ( ) ]
0 ∂ ∂u2 ∂ ∂u1 ∂ 2 u0 ∂u1
+ε aij + aij + aij + aij
∂yi ∂yj ∂yi ∂xj ∂xi ∂xj ∂xi ∂yj
+ o(1).
Substitute the above equation into (9.1) and compare the coefficient of ε−2
we know that
( )
∂ ∂u0
− aij = 0 in Ω.
∂yi ∂yj
By the boundary condition we have u0 = 0 on ∂Ω. Thus we deduce u0 is
independent of y, that is, u0 (x, y) = u0 (x) in Ω.
Now we compare the coefficient of ε−1 and obtain
( )
∂ ∂u1 ∂aij ∂u0
aij + = 0.
∂yi ∂yj ∂yi ∂xj
If we assume χj is the periodic solution of

∇y · (a(y)∇y χj ) = aij (y) in Y (9.2)
∂yi

with zero mean, i.e., Y χj dy = 0, then
∂u0
u1 (x, y) = −χj (y) . (9.3)
∂xj
Finally we compare the coefficient of ε0 to get
( ) ( )
∂ ∂u2 ∂ ∂u1 ∂ 2 u0 ∂ 2 u1
aij + aij + aij + aij = −f.
∂yi ∂yj ∂yi ∂xj ∂xi ∂xj ∂xi ∂yj
9.1. THE HOMOGENIZATION RESULT 133

Integrating the above equation in y over the cell Y and using the periodicity,
we obtain the following homogenized equation
−∇ · (a∗ ∇u0 ) = f in Ω,
(9.4)
u0 = 0 on ∂Ω,
where a∗ = (a∗ij ) is the homogenized coefficient

∗ 1
aij = aik (y)(δkj − ∂χj /∂yk ) dy. (9.5)
|Y | Y
In summary we have the following asymptotic expansion
u(x) = u0 (x) + εu1 (x, x/ε) + o(ε),
where u0 satisfies (9.4) and u1 (x, y) is given by (9.3).
The above argument is heuristic. Our purpose now is to show the con-
vergence of the asymptotic expansion. Let θε denote the boundary corrector
which is the solution of
−∇ · (aε ∇θε ) = 0 in Ω,
(9.6)
θε = u1 (x, x/ε) on ∂Ω.
The variational form of the problem (9.1) is to find u(x) ∈ H01 (Ω) such
that
a(u, v) := (a(x/ε)∇u, ∇v) = (f, v) ∀v ∈ H01 (Ω). (9.7)
Similarly, the variational form of the problem (9.4) is to find u0 (x) ∈ H01 (Ω)
such that
(a∗ ∇u0 , ∇v) = (f, v) ∀v ∈ H01 (Ω). (9.8)
It can be shown that a∗ satisfies
a∗ij ξi ξj > γ|ξ|2 ∀ξ ∈ R2 .
Thus by Lax-Milgram lemma, (9.8) has a unique solution.

Lemma 9.1. Let p ∈ L2loc (Rd )d (d > 1) be Y -periodic and div p = 0 in


Rd . Then there exists a skew-symmetric matrix α = (αij ) ∈ Rd×d such that
αij ∈ Hloc
1 (Rd ), α is Y -periodic with zero mean, and
ij

1 ∂
pj = pj (y) dy + αij .
|Y | Y ∂yi
This lemma extends the classical result in Theorem 8.4 that a divergence
free vector must be a curl field. The proof is left as an exercise.
The following theorem plays an important role in our analysis.
134 9. MULTISCALE FINITE ELEMENT METHODS FOR ELLIPTIC EQUATIONS

Theorem 9.1. Assume that u0 ∈ H 2 (Ω). There exists a constant C


independent of u0 , ε, Ω such that
∥u − u0 − εu1 + εθε ∥H 1 (Ω) 6 Cε|u0 |H 2 (Ω)

Proof. By simple calculation, we have


( )
∂ k ∂u0
aij (x/ε) u0 − εχ
∂xj ∂xk
∂u0 ∂ ( k ∂u0 )
= aij (x/ε) − εaij (x/ε) χ (x/ε)
∂xj ∂xj ∂xk
∂u0 ∂χk (y) ∂u0 ∂ 2 u0
= aij (x/ε) − aij (x/ε) − εaij (x/ε)χk (x/ε)
∂xj ∂yj ∂xk ∂xj ∂xk
∂u0 ∂u0 ∂ 2 u0
= a∗ij − Gki (x/ε) − εaij (x/ε)χk (x/ε) ,
∂xj ∂xk ∂xj ∂xk
where ( )
∂χk
Gki = a∗ik − aij δkj − .
∂yj
From the definitions of a∗ik and χk (y), it follows that

∂Gki
Gki (y) dy = 0 and = 0.
Y ∂yi
By Lemma 9.1 there exist skew-symmetric matrices αk (x/ε) = (αij k (x/ε))

such that ∫
k ∂ k k
Gi (y) = (α (y)), αij (y) dy = 0.
∂yj ij Y
With this notation, we can rewrite
( )
∂u0 ∂ ∂u0 ∂ 2 u0
k
Gi (x/ε) =ε k
αij (x/ε) − εαijk
(x/ε) .
∂xk ∂xj ∂xk ∂xj ∂xk
For any φ ∈ H01 (Ω), from (9.6)–(9.8) and (9.3), we have
(a(x/ε)∇(u − u0 − εu1 + εθε ), ∇φ)
( ( ) )
∗ k ∂u0
= (a ∇u0 , ∇φ) − a(x/ε)∇ u0 − εχ , ∇φ
∂xk
∫ ∫
∂ 2 u0 ∂φ ∂ 2 u0 ∂φ
= ε aij (x/ε)χk dx − ε αij k
(x/ε) dx.
Ω ∂xj ∂xk ∂xi Ω ∂xj ∂xk ∂xi
( k ∂u0
)
Notice here we have used ∂x∂ j αij (x/ε) ∂xk
is divergence free. Thus by taking
φ = u − u0 − εu1 + εθε yields the result. 
9.2. THE MULTISCALE FINITE ELEMENT METHOD 135

9.2. The multiscale finite element method


Let Ω be a bounded convex polygonal domain and Mh be a regular
mesh over Ω. We denote by {xj }Jj=1 the interior nodes of the mesh Mh and
{ψj }Jj=1 the canonical basis of the H 1 -conforming linear finite element space
Wh ⊂ H 1 (Ω). Let Si = supp(ψi ) and define ϕi with support in Si as follows
−∇ · (aε (x)∇ϕi ) = 0 in K ⊂ Si ,
i
(9.9)
ϕ = ψi on ∂K.
It is clear that ϕi ∈ H01 (Si ) ⊂ H01 (Ω). Introduce the multiscale finite element
space
Vh = span{ϕi : i = 1, · · · , J} ⊂ H01 (Ω).
In the following, we study the approximate solution of (9.4) in Vh , i.e., uh ∈ Vh
such that
a(uh , vh ) = (f, vh ) ∀vh ∈ Vh . (9.10)

9.2.1. Error estimate when h < ε. We first introduce the interpola-


tion operator Ih : C(Ω̄) → Vh

J
Ih u = u(xj )ϕj (x)
j=1

and the usual Lagrange interpolation operator Πh : C(Ω̄) → Wh



J
Πh u = u(xj )ψj (x).
j=1

It is obvious that
−∇ · (a(x/ε)∇Ih u) = 0 in K,
(9.11)
Ih u = Πh u on ∂K.

Lemma 9.2. Let u ∈ H 2 (Ω)∩H01 (Ω) be the solution of (9.1). There exists
a constant C independent of h, ε such that
∥u − Ih u∥L2 (Ω) + h∥u − Ih u∥H 1 (Ω) 6 Ch2 (|u|H 2 (Ω) + ∥f ∥L2 (Ω) ).
Proof. By Theorem 3.6, we have
∥u − Πh u∥L2 (Ω) + h∥u − Πh u∥H 1 (Ω) 6 Ch2 |u|H 2 (Ω) . (9.12)
Since Πh u − Ih u = 0 on ∂K, by the scaling argument and the Poincaré-
Friedrichs inequality we get
∥Πh u − Ih u∥0,K 6 Ch∥Πh u − Ih u∥1,K . (9.13)
136 9. MULTISCALE FINITE ELEMENT METHODS FOR ELLIPTIC EQUATIONS

From (9.11), it follows that


(a(x/ε)∇Ih u, ∇(Ih u − Πh u))K = 0.
Then
(a(x/ε)∇(Ih u − Πh u), ∇(Ih u − Πh u))K
= (a(x/ε)∇(u − Πh u), ∇(Ih u − Πh u))K − (a(x/ε)∇u, ∇(Ih u − Πh u))K
= (a(x/ε)∇(u − Πh u), ∇(Ih u − Πh u))K − (f, ∇(Ih u − Πh u))K
6 C|u − Πh u|1,K |Ih u − Πh u|1,K + ∥f ∥0,K ∥Ih u − Πh u∥0,K ,
which implies by using (9.13) that
|Ih u − Πh u|1,K 6 Ch(|u|2,K + ∥f ∥0,K ).
This completes the proof. 
Theorem 9.2. Let u and uh be the solutions of (9.1) and (9.10), re-
spectively. Then there exists a constant C, independent of h and ε, such
that
∥u − uh ∥H 1 (Ω) 6 Ch(|u|H 2 (Ω) + ∥f ∥L2 (Ω) ). (9.14)
Moreover,
∥u − uh ∥L2 (Ω) 6 C(h/ε)2 ∥f ∥L2 (Ω) .
Proof. (9.14) follows easily from the Céa Lemma and Lemma 9.2. To
show the error estimate in L2 , we use the Aubin-Nitsche trick. By the regu-
larity estimate for the elliptic equation, we know that
|u|H 2 (Ω) 6 Cε−1 ∥f ∥L2 (Ω) .
Thus, by (9.14)
∥u − uh ∥H 1 (Ω) 6 C (h/ε)∥f ∥L2 (Ω) . (9.15)
For any φ ∈ L2 (Ω), let w ∈ H01 (Ω) ∩ H 2 (Ω) be the solution of the dual
problem
−∇ · (a(x/ε)∇w) = φ in Ω,
w=0 on ∂Ω.
Then, for any vh ∈ Vh , we have
(uh − u, φ) = (a(x/ε)∇(uh − u), ∇w)
= (a(x/ε)∇(uh − u), ∇(w − vh ))
6 C∥uh − u∥H 1 (Ω) ∥w − vh ∥H 1 (Ω) .
Hence by (9.15)
(uh − u, φ) 6 C(h/ε)∥f ∥L2 (Ω) inf ∥w − vh ∥H 1 (Ω) .
vh ∈Vh
9.2. THE MULTISCALE FINITE ELEMENT METHOD 137

Choosing vh as Ih w yields
(uh − u, φ) 6 C(h/ε)∥f ∥L2 (Ω) ∥w − Ih w∥H 1 (Ω)
6 C(h/ε)∥f ∥L2 (Ω) (h/ε)∥φ∥L2 (Ω) .
Hence
(uh − u, φ)
∥uh − u∥L2 (Ω) = sup 6 C(h/ε)2 ∥f ∥L2 (Ω) .
2
0̸=φ∈L (Ω) ∥φ∥ 2
L (Ω)

This completes the proof. 

9.2.2. Error estimate when h > ε. Now we consider the error esti-
mate when h > ε which is the main attraction of the multiscale finite element
method.

Theorem 9.3. Let u and uh be the solutions of (9.1) and (9.10), re-
spectively. Then there exists a constant C, independent of h and ε, such
that
∥u − uh ∥H 1 (Ω) 6 C(h + ε)∥f ∥L2 (Ω) + C((ε/h)1/2 + ε1/2 )∥u0 ∥W 1,∞ (Ω) .

Proof. Denote uε = u0 + εu1 − εθε . Let



J
uI = Ih u0 = u0 (xj )ϕj (x).
j=1

It follows that
−∇ · (aε ∇uI ) = 0 in K,
uI = Πh u0 on ∂K.
Let uI0 be the solution of the homogenized problem
−∇ · (a∗ ∇uI0 ) = 0 in K,
(9.16)
uI0 = Πh u0 on ∂K,
and
∂uI0
uI1 = −χj in K. (9.17)
∂xj
Let θIε be the boundary corrector
−∇ · (a(x/ε)∇θIε ) = 0 in K,
(9.18)
θIε = uI1 (x, x/ε) on ∂K.
Clearly
uI0 = Πh u0 in K, (9.19)
138 9. MULTISCALE FINITE ELEMENT METHODS FOR ELLIPTIC EQUATIONS

that is, uI0 is linear in K which implies |uI0 |2,K = 0. Thus by following the
proof of Theorem 9.1,

∥uI − uI0 − εuI1 + εθIε ∥H 1 (K) = 0.

Again by Theorem 9.1


∥u − uI ∥H 1 (Ω) 6 ∥u0 − uI0 ∥H 1 (Ω) + ε∥u1 − uI1 ∥H 1 (Ω)
(9.20)
+ ∥ε(θε − θIε )∥H 1 (Ω) + Cε|u0 |H 2 (Ω) .

It is clear that

∥u0 − uI0 ∥H 1 (Ω) = ∥u0 − Πh u0 ∥H 1 (Ω) 6 Ch|u0 |H 2 (Ω) . (9.21)

Simple calculation shows that

∥ε∇(u1 − uI1 )∥L2 (K) = ∥ε∇(χj ∂(u0 − Πh u0 )/∂xj ∥L2 (K)


6 C∥∇(u0 − Πh u0 )∥L2 (K) + Cε|u0 |H 2 (K)
6 C(h + ε)|u0 |H 2 (K) .

Here we have used the fact that for any K ∈ Mh

∥χj ∥L∞ (K) + ε∥∇χj ∥L∞ (K) 6 C,

where C is independent of K, h, ε. Hence

∥ε∇(u1 − uI1 )∥L2 (Ω) 6 C(h + ε)|u0 |H 2 (Ω) .

On the other hand

∥ε(u1 − uI1 )∥L2 (Ω) = ε∥χj ∂(u0 − Πh u0 )/∂xj ∥L2 (Ω) 6 Chε|u0 |H 2 (Ω) .

Thus, we have

∥ε(u1 − uI1 )∥1,Ω 6 C(h + ε)|u0 |H 2 (Ω) 6 C(h + ε)∥f ∥L2 (Ω) . (9.22)

Next we estimate ∥εθε ∥H 1 (Ω) and ∥εθIε ∥H 1 (Ω) respectively. Let ξ ∈


C0∞ (R2 ) be the cut-off function such that 0 6 ξ 6 1, ξ = 1 in Ω \ Ωε/2 , ξ = 0
in Ωε , and |∇ξ| 6 C/ε in Ω, where Ωε := {x : dist{x, ∂Ω} > ε}. Then

θε + ξ(χj ∂u0 /∂xj ) ∈ H01 (Ω).

Thus, from (9.6) we get

(a(x/ε)∇θε , ∇(θε + ξχj ∂u0 /∂xj )) = 0.


9.2. THE MULTISCALE FINITE ELEMENT METHOD 139

Hence
∥∇θε ∥L2 (Ω) 6 C∥∇(ξχj ∂u0 /∂xj )∥L2 (Ω)
6 C∥∇ξχj ∂u0 /∂xj ∥L2 (Ω) + C∥ξ∇χj ∂u0 /∂xj ∥L2 (Ω)
+ C∥ξχj ∇(∂u0 /∂xj )∥L2 (Ω)

6 C∥∇u0 ∥L∞ (Ω) |∂Ω|ε/ε + C|u0 |H 2 (Ω) (9.23)
On the other hand, from the maximum principle, we have
∥θε ∥L∞ (Ω) 6 ∥χj ∂u0 /∂xj ∥L∞ (∂Ω) 6 C∥u0 ∥W 1,∞ (Ω) .
Thus, we obtain

∥εθε ∥H 1 (Ω) 6 C ε∥u0 ∥W 1,∞ (Ω) + Cε|u0 |H 2 (Ω) . (9.24)
Finally, we estimate ∥εθIε ∥H 1 (Ω) . From the maximum principle, we have
∥θIε ∥L∞ (K) 6 ∥χj ∂(Πh u0 )/∂xj ∥L∞ (∂K) 6 C∥Πh u0 ∥W 1,∞ (K)
6 C∥u0 ∥W 1,∞ (K) .
Hence
∥εθIε ∥L2 (Ω) 6 Cε∥u0 ∥W 1,∞ (Ω) .
Similar to (9.23), we have

∥ε∇θIε ∥L2 (K) 6 C∥∇u0 ∥L∞ (K) |∂K|ε + Cε|Πh u0 |H 2 (K)

6 C hε∥u0 ∥W 1,∞ (K) ,
which implies
∥ε∇θIε ∥L2 (Ω) 6 C(ε/h)1/2 ∥u0 ∥W 1,∞ (Ω) .
Hence
∥εθIε ∥1,Ω 6 C((ε/h)1/2 + ε)∥u0 ∥W 1,∞ (Ω) . (9.25)
Combing (9.21)–(9.22), (9.24)–(9.25) and using Céa Lemma, we obtain
∥u − uh ∥1,Ω 6 C(h + ε)∥f ∥L2 (Ω) + C((ε/h)1/2 + ε1/2 )∥u0 ∥W 1,∞ (Ω) .
This completes the proof. 
We remark that the error estimate in Theorem 9.3 is uniform when ε → 0
which suggests that one can take the mesh size h larger than ε in using the
multiscale finite element methods. The term (ε/h)1/2 in the error estimate is
due to the mismatch of the multiscale finite element basis functions with the
solution u of the original problem inside the domain. One way to improve
this error is the over-sampling finite element method that we introduce in
the next section.
140 9. MULTISCALE FINITE ELEMENT METHODS FOR ELLIPTIC EQUATIONS

9.3. The over-sampling multiscale finite element method


Let MH be a regular and quasi-uniform triangulation of Ω and WH the
H -conforming linear finite element space over MH . For any K ∈ MH with
1
{ }3 { K }3
nodes xK K K
i i=1 , let φi i=1 be the basis of P1 (K) satisfying φi (xj ) = δij .
For any K ∈ MH , we denote by S = S(K) a macro-element which contains
K and satisfies that HS 6 C1 HK and dist (∂K, ∂S) > δ0 HK for some positive
constants C1 , δ0 indipendent of H. The minimum angle of S(K) is bounded
below by some positive constant θ0 independent of H.
Let MS (K) be the multiscale finite element space spanned by ψiK , i =
1, 2, 3, with ψiS ∈ H 1 (S) being the solution of the problem
−div (aε ∇ψiS ) = 0 in S, ψiS |∂S = φSi .
{ }3
Here φSi i=1 is the nodal basis of P1 (S) such that φSi (xSj ) = δij , i, j = 1, 2, 3.
The over-sampling multiscale finite element base functions over K is defined
by
K
ij ψj |K
= cK S
ψ̄i in K,
with the constants so chosen that

i = cij φj |K
φK K S
in K.
{ }3
The existence of the constants cK
ij is guaranteed because φSj also forms
j=1
the basis of P1 (K).
K
Let OMS (K) = span {ψ̄i }3i=1 and ΠK : OMS (K) → P1 (K) the projec-
tion
K
ΠK ψ = ci φK
i if ψ = ci ψ̄i ∈ OMS (K).
Let X̄H be the finite element space
X̄H = {ψH : ψH |K ∈ OMS (K) ∀K ∈ MH }
and define ΠH : X̄H → ΠK∈MH P1 (K) through the relation
ΠH ψH |K = ΠK ψH for any K ∈ MH , ψH ∈ X̄H .
The over-sampling multiscale finite element space is then defined as
{ }
XH = ψH ∈ X̄H : ΠH ψH ∈ WH ⊂ H 1 (Ω) .
In general, XH ̸⊂ H 1 (Ω) and the requirement ΠH ψH ∈ WH is to impose
certain continuity of the functions ψH ∈ XH across the inter-element bound-
aries. Here we have an example of nonconforming finite element method.
9.3. THE OVER-SAMPLING MULTISCALE FINITE ELEMENT METHOD 141

The multiscale finite element method is then to find uH ∈ XH


0 , where

0
XH = {ψH ∈ XH : ΠH ψH = 0 on ∂Ω} ,

such that
∑ ∫ ∫
aε ∇uH ∇ψH dx = f ψH dx ∀ψH ∈ XH
0
.
K∈MH K Ω

∏ ∏
We introduce the bilinear form aH (·, ·) : K∈MH H 1 (K) × K∈MH H 1 (K)
→R
∑ ∫ ∏
aH (φ, ψ) = aε ∇φ∇ψ dx ∀φ, ψ ∈ H 1 (K),
K∈MH K K∈MH

and the discrete norm


 1/2
∑ ∏
∥φ∥h,Ω =  ∥∇φ∥2L2 (K)  ∀φ ∈ H 1 (K).
K∈MH K∈MH

Lemma 9.3. We have

∥uε − uH ∥h,Ω

Ω f ψH dx − aH (uε , ψH )
6C inf ∥uε − ψH ∥h,Ω + C sup .
ψH ∈XH
0
0̸=ψH ∈XH
0 ∥ψH ∥h,Ω

Proof. Define ⟨R, ψH ⟩ = Ω f ψH − aH (uε , ψH ), then we have

aH (uε − uH , ψH ) = − ⟨R, ψH ⟩ ∀ψH ∈ XH


0
.

The lemma follows easily by taking ψH = vH − uH for any vH ∈ XH


0. 

Lemma 9.4. Let N ∈ L∞ (R2 ) be a periodic function with respect to the



cell Y and assume Y N (y) dy = 0. Then for any ζ ∈ H 1 (K) ∩ L∞ (K), K ∈
MH , we have

(x)
ζ(x)N dx 6 ChK ε ∥∇ζ∥L2 (K) + CεhK ∥ζ∥L∞ (K) .
K ε

Proof. Define ζi = Yi ζ dx, where Yi is a periodic cell of N (x/ε), Yi ⊂
K. Then
∥ζ − ζi ∥L2 (Yi ) 6 Cε ∥∇ζ∥L2 (Yi ) .
142 9. MULTISCALE FINITE ELEMENT METHODS FOR ELLIPTIC EQUATIONS

Denote K ′ = ∪Yi ⊂K Yi , we have


∫ ∑ ∫ ∑ ∫
(x) (x) (x)
ζ(x)N dx 6 (ζ − ζi )N dx + ζi N dx
K ε Yi ε Yi ε
Yi ⊂K Yi ⊂K

(x)
+ ζ(x)N dx
K\K ′ ε
6Cε ∥∇ζ∥L2 (K ′ ) ∥N ∥L2 (K ′ ) + C ∥ζ∥L∞ (K) K \ K ′
6ChK ε ∥∇ζ∥L2 (K) + CεhK ∥ζ∥L∞ (K) .
This completes the proof. 

Lemma 9.5. There exist constants γ2 and C independent of H and ε such


that if HK 6 γ2 and ε/HK 6 γ2 for all K ∈ MH , the following estimates
are valid
C −1 ∥∇ΠH χH ∥L2 (K) 6 ∥∇χH ∥L2 (K) 6 C ∥∇ΠH χH ∥L2 (K) ∀χH ∈ XH
0
.

Proof. We know that χH ∈ H 1 (S) satisfies


−∇ · (aε ∇χH ) = 0 in S, χH = ΠH χH on ∂S. (9.26)
For any φ ∈ H01 (S) we have
(aε ∇χH , ∇φ)S = 0.
By taking φ = χH − ΠH χH ∈ H01 (S) we obtain easily that
∥∇χH ∥L2 (K) 6 ∥∇χH ∥L2 (S) 6 C ∥∇ΠH χH ∥L2 (S) 6 C ∥∇ΠH χH ∥L2 (K) .
Next by Theorem 9.1 we have the asymptotic expansion
∂χ0H
χH = χ0H − εχj − εθεS , (9.27)
∂xj
where χ0H = ΠH χH and θεS ∈ H 1 (S) is the boundary corrector defined by
∂χ0H
−∇ · (aε ∇θεS ) = 0 in S, θεS ∂S
= −χj .
∂xj
By simple calculations
∂χH ∂χ0 ∂χ0H ∂ 2 χ0H
aij = a∗ij H − Gki − εaij χk − ε(a∇θεS )i
∂xj ∂xj ∂xk ∂xj ∂xk
∂χ0 ( x ) ∂χ0H
= a∗ij H − Gki − ε(a∇θεS )i , (9.28)
∂xj ε ∂xk
9.3. THE OVER-SAMPLING MULTISCALE FINITE ELEMENT METHOD 143

where GK
i satisfies

∂Gki
Gki (y) dy = 0 and = 0.
Y ∂yi
Multiplying (9.28) by ∇χ0H and integrating over K we see
∫ ∫ ∫
0
∗ ∂χH ∂χH
0
∂χH ∂χ0H ( x ) ∂χ0H ∂χ0H
aij dx = aij dx + Gki dx
K ∂xj ∂xi K ∂xj ∂xi K ε ∂xk ∂xi

∂θS ∂χ0H
−ε aij ε dx.
K ∂xj ∂xi
From the interior estimate due to Avellaneda and Lin [4, Lemma 16]
∇θεS L∞ (K)
6 Ch−1
K θεS L∞ (S)
.
Therefore by the maximum principle and the finite element inverse estimate

∂θS ∂χ0H
ε aij ε dx 6 CεhK ∇θεS L∞ (K) ∇χ0H L2 (K)
K ∂xj ∂xi
ε 2
6C ∇χ0H L2 (K) .
hK
By Lemma 9.4 we have

( x ) ∂χ0H ∂χ0H 2 ε 2
Gki dx 6CεhK ∇χ0H L∞ (K) 6 C ∇χ0H L2 (K) .
K ε ∂xk ∂xi hK
Thus
ε
α∗ ∇χ0H
2 2
L2 (K)
6 C ∥∇χH ∥L2 (K) ∇χ0H L2 (K)
+C ∇χ0H L2 (K)
.
hK
This completes the proof. 

Theorem 9.4. we have


(ε √ )( )
∥uε − uH ∥h,Ω 6 C(h + ε) ∥f ∥L2 (Ω) + C + ε ∥u0 ∥W 1,∞ (Ω) + ∥f ∥L2 (Ω) .
h
Proof. First we notice that by Theorem 9.1
[ ( ∂u0 )]
∇ uε − u0 − εxj − εθε 6 Cε |u|H 2 (Ω) .
∂xj L2 (Ω)

By the estimate (9.24)



ε ∥∇θε ∥L2 (Ω) 6 C ε∥u0 ∥W 1,∞ (Ω) + Cε |u0 |H 2 (Ω) ,
we get
( ∂u0 ) √
∇ uε − u0 + εxj 6 Cε |u0 |H 2 (Ω) + C ε∥u0 ∥W 1,∞ (Ω) . (9.29)
∂xj L2 (Ω)
144 9. MULTISCALE FINITE ELEMENT METHODS FOR ELLIPTIC EQUATIONS

We take

ψH = u0 (xj )ψ¯j (x) ∈ XH
0
,
xj interior node

then
ΠH ψH |K = IH u0 ∀K ∈ MH .
where IH : C(Ω̄) → WH is the standard Lagrange interpolation operator over
linear finite element space. By (9.27) we know that
∂(IH u0 )
ψH = (IH u0 ) − εχj − εθεS ,
∂xj
where θεS ∈ H 1 (S) is the boundary corrector given by
∂(IH u0 )
−∇ · (aε ∇θεS ) = 0 in S, θεS ∂S
= −χj .
∂xj
By the interior estimate in Avellaneda and Lin [4, Lemma 16]
∇θεS L∞ (K)
6 Ch−1
K θεS L∞ (S)
6 Ch−1 −1
K |IH u0 |W 1,∞ (S) 6 ChK |u0 |W 1,∞ (K) .

Therefore
( ( ∂(IH u0 ) ))
∇ ψH − IH u0 + εχj 6 Cεh−1
K |u0 |W 1,∞ (K) |K|
1/2
∂xj L2 (K)
6 Cε |u0 |W 1,∞ (K) . (9.30)
Since
∥∇(u0 − IH u0 )∥L2 (K) 6 ChK |u0 |H 2 (K) ,
( ∂(I u − u ) )
H 0 0
ε∇ χj 6 C(h + ε) |u0 |H 2 (K) ,
∂xj L2 (K)

we finally obtain
(ε √ )
∥∇(uε − ψH )∥h,Ω 6 C(h + ε) |u0 |H 2 (K) + C + ε ∥u0 ∥W 1,∞ (Ω) .
h
It remains to estimate the non-conforming error. Since ΠH ψH ∈ WH ⊂
H 1 (Ω) we know that

f ψH dx − aH (uε , ψH )

∫ ∑ ∫
= f (ψH − ΠH ψH ) dx − aε ∇uε ∇(ψH − ΠH ψH ) dx .
Ω K∈Mh K
9.3. THE OVER-SAMPLING MULTISCALE FINITE ELEMENT METHOD 145

By (9.27) and Lemma 9.5 we have


∫ ∫ ( )
j ∂ΠH ψH
f (ψH − ΠH ψH ) dx = f −εχ − εθε dx
S
K K ∂xj
( )
6 Cε ∥f ∥L2 (K) ∥∇ΠH ψH ∥L2 (K) + ∥∇ΠH ψH ∥L∞ (K)
ε
6 C ∥f ∥L2 (K) ∥∇ψH ∥L2 (K) .
h
Thus ∫
ε
f (ψH − ΠH ψH ) dx 6 C ∥f ∥L2 (Ω) ∥ψH ∥h,Ω .
Ω h
Furthermore, by (9.29)
∑ ∫
aε ∇uε ∇(ψH − Πh ψH )
K∈MH K
( √ )
6 C ε |u0 |H 2 (Ω) + ε∥u0 ∥W 1,∞ (Ω) ∥ψH ∥h,Ω
∑ ∫ ( )
j ∂u0
+ aε ∇ u0 + εχ · ∇(ψH − ΠH ψH ) dx
K ∂xj
K∈MH
= I + II.

But
( ∫

|II| 6 a∗ ∇u0 ∇(ψH − ΠH ψH ) dx
K∈MH K

∂u0 ∂(ψH − ΠH ψH )
+ Gki dx
K ∂xk ∂xi
)
+ ε |u0 |H 2 (K) ∥∇(ψH − ΠH ψH )∥L2 (K)

=II1 + II2 + II3 .

By (9.27) and Lemma 9.4



∂u0 ∂
a∗ij (ψH − ΠH ψH ) dx
K ∂xi ∂xj
∫ ( )
∂u0 ∂ ∂ΠH ψH
= a∗ij εχk − εθεS dx
K ∂xi ∂xj ∂xk

∂u0 ∂χk ∂ΠH ψH
6 a∗ij dx + ε ∥∇u0 ∥L2 (K) ∇θεS L2 (K)
K ∂xi ∂y j ∂xk
( )
6 Cε |u0 |H 2 (K) + |u0 |W 1,∞ (K) ∥∇ψH ∥L2 (K) .
146 9. MULTISCALE FINITE ELEMENT METHODS FOR ELLIPTIC EQUATIONS

That is, ( )
ε
|II1 | 6 C ε |u0 |H 2 (Ω) + C |u0 |W 1,∞ (Ω) ∥ψH ∥h,Ω .
h
Similarly, we know that
( ε )
|II2 | 6 C ε |u0 |H 2 (Ω) + C |u0 |W 1,∞ (Ω) ∥ψH ∥h,Ω .
h
It is obvious that
|II3 | 6 Cε |u0 |H 2 (Ω) ∥ψH ∥h,Ω .
This shows that the non-conforming error in Lemma 9.3

Ω f ψH dx − aH (uε , ψH )
sup
0̸=ψH ∈XH
0 ∥ψH ∥h,Ω
( ε √ )( )
6 Cε |u0 |H 2 (Ω) + C + ε ∥f ∥L2 (Ω) + ∥u0 ∥W 1,∞ (Ω) .
h
This completes the proof. 
Bibliographic notes. Homogenization theory for elliptic equations with
highly oscillatory coefficients is a topic of intensive studies. We refer to the
monographs Bensoussan et al [9] and Jikov et al [39] for further results. The-
orem 9.1 is taken from [39]. The multiscale finite element method is intro-
duced in Hou and Wu [37] and Hou et al [38]. The over-sampling multiscale
finite element is introduced in Efendiev et al [29]. Further development of
multiscale finite elements can be found in Chen and Hou [19] for the mixed
multiscale finite element method and in Chen and Yue [22] for the multiscale
finite element method dealing with well singularities.

9.4. Exercises
Exercise 9.1. Show that the homogenized coefficient a∗ satisfies
a∗ij ξi ξj > γ|ξ|2 ∀ξ ∈ R2 .
Exercise 9.2. Prove Lemma 9.1.
CHAPTER 10

Implementations

In this chapter we talk about some implementation issues. First we give


a brief introduction to the MATLAB PDE Toolbox. Then we show how to
solve the L-shaped domain problem on uniform meshes and adaptive meshes
by MATLAB. Finally we introduce the implementation of the multigrid V-
cycle algorithm.

10.1. A brief introduction to the MATLAB PDE Toolbox


The MATLAB Partial Differential Equation (PDE) Toolbox is a tool for
solving partial differential equations in two space dimensions and time by
linear finite element methods on triangular meshes. The PDE Toolbox can
solve linear or nonlinear elliptic PDE
−∇ · (c∇u) + au = f, (10.1)
the linear parabolic PDE
∂u
d − ∇ · (c∇u) + au = f, (10.2)
∂t
the linear hyperbolic PDE
∂2u
d − ∇ · (c∇u) + au = f, (10.3)
∂t2
or the linear eigenvalue problem
−∇ · (c∇u) + au = λdu, (10.4)
in a plane region Ω, with boundary condition
hu = r on Γ1 , (10.5)
(c∇u) · n + q u = g on Γ2 , (10.6)
where Γ1 ∪ Γ2 = ∂Ω, Γ1 ∩ Γ2 = ∅. The PDE Toolbox can also solve the PDE
systems. The PDE Toolbox includes tools that:
• Define a PDE problem, i.e., define 2-D regions, boundary conditions,
and PDE coefficients;
147
148 10. IMPLEMENTATIONS

• Numerically solve the PDE problem, i.e., generate unstructured


meshes, discretize the equations, and produce an approximation to
the solution;
• Visualize the results.
There are two approaches to define and solve a PDE problem: by using a
graphical user interface (GUI) or by MATLAB programming. The GUI can
be started by typing
pdetool
at the MATLAB command line. From the command line (or M-files) you can
call functions from the toolbox to do the hard work, e.g., generate meshes,
discretize your problem, perform interpolation, plot data on unstructured
grids, etc., while you retain full control over the global numerical algorithm.
One advantage of the PDE Toolbox is that it is written using the MAT-
LAB open system philosophy. There are no black-box functions, although
some functions may not be easy to understand at first glance. The data
structures and formats are documented. You can examine existing functions
and create your own as needed.

10.1.1. A first example—Poisson equation on the unit disk. We


consider the Poisson equation
−∇ · (∇u) = 1 in Ω,
(10.7)
u = 0 on ∂Ω,
on the unit disk Ω. For this problem, you can compare the exact solution
u = (1 − x2 − y 2 )/4 with the numerical solution at the nodal points on
the mesh. To set up the PDE on the command line follow these steps (cf.
pdedemo1.m):
1. Create a unit circle centered at the origin using the geometry M-file
”circleg.m”:
g=’circleg’;
2. The initmesh function creates a triangular mesh on the geometry
defined in g:
[p,e,t]=initmesh(g);
pdemesh(p,e,t); axis equal; %Plot the mesh.
3. Specify the PDE coefficients:
c=1;
a=0;
10.1. A BRIEF INTRODUCTION TO THE MATLAB PDE TOOLBOX 149

f=1;
4. Specify the boundary condition:
b=’circleb1’;
5. Solve the PDE and plot the solution:
u=assempde(b,p,e,t,c,a,f);
pdesurf(p,t,u);
6. Compute the maximum error:
exact=(1-p(1,:).^2-p(2,:).^2)’/4;
error=max(abs(u-exact));
fprintf(’Error: %e. Number of nodes: %d\n’,...
error,size(p,2));
pdesurf(p,t,u-exact); %Plot the error.
7. If the error is not sufficiently small, refine the mesh:
[p,e,t]=refinemesh(g,p,e,t);
You can then solve the problem on the new mesh, plot the solution, and
recompute the error by repeating Steps 5 and 6.

10.1.2. The mesh data structure. A triangular mesh is described


by the mesh data which consists of a Point matrix, an Edge matrix, and a
Triangle matrix.
In the mesh vertex matrix (for example, denoted by p), the first and
second row contain x- and y-coordinates of the mesh vertices in the mesh.
p = [x % x coordinates for mesh vertices
y]; % y coordinates for mesh vertices
In the boundary element matrix (for example, denoted by e), the first
and second row contain indices of the starting and ending point, the third
and fourth row contain the starting and ending parameter values, the fifth
row contains the boundary segment number, and the sixth and seventh row
contain the left- and right-hand side subdomain numbers.
e = [p1;p2 % index to column in p
s1;s2 % arc-length parameters
en % geometry boundary number
l % left-subdomain number
r]; % right-subdomain number
150 10. IMPLEMENTATIONS

In the element matrix (for example, denoted by t), the first three rows
contain indices to the corner points, given in counter-clockwise order, and
the fourth row contains the subdomain number.
t = [p1; p2; p3 % index to column in p
sd]; % subdomain number
We remark that the (global) indices to the nodal points are indicated by
the column numbers of the point matrix p, i.e., the coordinates of the i-th
point is p(:,i). The edge matrix e contains only the element sides on the
boundary of the (sub)domain(s). In the j-th element (the triangle defined by
the j-th column of t), the 1st–3rd rows gives the global indices of the 1st–3rd
vertices of the element. It is clear that, the first three rows of element matrix
t defines a map from the local indices of the nodal points to their global
indices. This relationship is important in assembling the global stiffness
matrix from the element stiffness matrices in the finite element discretization
(see Section 2.3).
For example, we consider the unit square described by the decomposed
geometry matrix
g = [2 2 2 2
0 1 1 0
1 1 0 0
1 1 0 0
1 0 0 1
0 0 0 0
1 1 1 1];
Here the decomposed geometry matrix g is obtained as follows. We first
draw the geometry (the unit square) in the GUI, then export it by selecting
“Export the Decomposed Geometry, Boundary Cond’s” from the “Boundary”
menu. For details on the decomposed geometry matrix we refer to the help
on the function "decsg.m”. Figure 1 shows a standard triangulation of the
unit square obtained by running
[p,e,t] = poimesh(g,2);
Here the output mesh data
p = [0 0.5 1 0 0.5 1 0 0.5 1
0 0 0 0.5 0.5 0.5 1 1 1];

e = [1 2 3 6 9 8 7 4
10.1. A BRIEF INTRODUCTION TO THE MATLAB PDE TOOLBOX 151

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

Figure 1. A standard triangulation of the unit square. The


numbers give the global and local indices to the points, the
indices to the elements, and the indices to the edges, respec-
tively.

2 3 6 9 8 7 4 1
1 0.5 1 0.5 1 0.5 1 0.5
0.5 0 0.5 0 0.5 0 0.5 0
3 3 2 2 1 1 4 4
1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0];

t = [2 4 4 5 1 1 2 5
6 5 8 9 5 2 3 6
5 8 7 8 4 5 6 9
1 1 1 1 1 1 1 1];
Figure 1 also shows the global and local indices to the points, the indices to
the elements, and the indices to the edges, respectively.

Example 10.1. Assemble the stiffness matrix for the Poisson equation
(10.7) on a given mesh p, e, t. The following function assembles the stiff-
ness matrix from the element stiffness matrices which is analogous to the
function “pdeasmc.m”.

Code 10.1. (Assemble the Poission equation)


function [A,F,B,ud]=pdeasmpoi(p,e,t)
% Assemble the Poission’s equation -div(grad u)=1
% with homogeneous Dirichlet boundary condition.
152 10. IMPLEMENTATIONS

%
% A is the stiffness matrix, F is the right-hand side vector.
% UN=A\F returns the solution on the non-Dirichlet points.
% The solution to the full PDE problem can be obtained by the
% MATLAB command U=B*UN+ud.

% Corner point indices


it1=t(1,:);
it2=t(2,:);
it3=t(3,:);

np=size(p,2); % Number of points

% Areas and partial derivatives of nodal basis functions


[ar,g1x,g1y,g2x,g2y,g3x,g3y]=pdetrg(p,t);

% The element stiffness matrices AK.


c3=((g1x.*g2x+g1y.*g2y)).*ar; % AK(1,2)=AK(2,1)=c3
c1=((g2x.*g3x+g2y.*g3y)).*ar; % AK(2,3)=AK(3,2)=c1
c2=((g3x.*g1x+g3y.*g1y)).*ar; % AK(1,3)=AK(3,1)=c2
% AK(1,1)=-AK(1,2)-AK(1,3)=-c2-c3
% AK(2,2)=-AK(2,1)-AK(2,3)=-c3-c1
% AK(3,3)=-AK(3,1)-AK(3,2)=-c1-c2

% Assemble the stiffness matrix


A=sparse(it1,it2,c3,np,np);
A=A+sparse(it2,it3,c1,np,np);
A=A+sparse(it3,it1,c2,np,np);
A=A+A.’;
A=A+sparse(it1,it1,-c2-c3,np,np);
A=A+sparse(it2,it2,-c3-c1,np,np);
A=A+sparse(it3,it3,-c1-c2,np,np);

% Assmeble the right-hand side


f=ar/3;
F=sparse(it1,1,f,np,1);
F=F+sparse(it2,1,f,np,1);
F=F+sparse(it3,1,f,np,1);
10.1. A BRIEF INTRODUCTION TO THE MATLAB PDE TOOLBOX 153

% We have A*U=F.

% Assemble the boundary condition


[Q,G,H,R]=assemb(’circleb1’,p,e); % H*U=R

% Eliminate the Dirichlet boundary condition:


% Orthonormal basis for nullspace of H and its complement
[null,orth]=pdenullorth(H);
% Decompose U as U=null*UN+orth*UM. Then, from H*U=R, we have
% H*orth*UM=R which implies UM=(H*orth)\R.
% The linear system A*U=F becomes
% null’*A*null*UN+null’*A*orth*((H*orth)\R)=null’*F
ud=full(orth*((H*orth)\R));
F=null’*(F-A*ud);
A=null’*A*null;
B=null;

10.1.3. A quick reference. Here is a brief table that tell you where
to find help information on constructing geometries, writing boundary con-
ditions, generating and refining meshes, and so on.

Decomposed geometry g that is specified


by either a Decomposed Geometry See decsg, pdegeom, initmesh.
matrix, or by a Geometry M-file:
Boundary condition b that is specified
by either a Boundary Condition matrix, See assemb, pdebound.
or a Boundary M-file:
Coefficients c, a, f: See assempde.
Mesh structure p, e, t: See initmesh.
Mesh generation: See initmesh.
Mesh refinement: See refinemesh.
See assempde, adaptmesh,
Solvers: parabolic, hyperbolic, pdeeig,
pdenonlin, ......
Table 1. A brief reference for the PDE Toolbox.
154 10. IMPLEMENTATIONS

10.2. Codes for Example 4.1—L-shaped domain problem on


uniform meshes
10.2.1. The main script.

Code 10.2. (L-shaped domain problem — uniform meshes)


% lshaped_uniform.m
% Solve Poisson equation -div(grad(u))=0 on the L-shaped
% membrane with Dirichlet boundary condition.
% The exact solution is ue(r,theta)=r^(2/3)*sin(2/3*theta).

% The exact solution and its partial derivatives


ue=’(x.^2+y.^2).^(1/3).*sin(2/3*(atan2(y,x)+2*pi*(y<0)))’;
uex=’-2/3*(x.^2+y.^2).^(-1/6).*sin(1/3*(atan2(y,x)+2*pi*(y<0)))’;
uey=’2/3*(x.^2+y.^2).^(-1/6).*cos(1/3*(atan2(y,x)+2*pi*(y<0)))’;

% Geometry
g = [2 2 2 2 2 2
0 1 1 -1 -1 0
1 1 -1 -1 0 0
0 0 1 1 -1 -1
0 1 1 -1 -1 0
1 1 1 1 1 1
0 0 0 0 0 0];

% Boundary conditions
r=’(x.^2+y.^2).^(1/3).*sin(2/3*(atan2(y,x)+2*pi*(y<0)))’;
b=[1 1 1 1 1 length(r) ’0’ ’0’ ’1’ r]’;
b=repmat(b,1,6);

% PDE coefficients
c=1;
a=0;
f=0;

% Initial mesh
[p,e,t]=initmesh(g);

% Do iterative refinement, solve PDE, estimate the error.


10.2. L-SHAPED DOMAIN PROBLEM ON UNIFORM MESHES 155

error=[];
J=6;
for j=1:J
u=assempde(b,p,e,t,c,a,f);
err=pdeerrH1(p,t,u,ue,uex,uey);
error=[error err];
if j<J,
[p,e,t]=refinemesh(g,p,e,t);
end
end

% Plot the error versus 2^j in log-log coordinates and


% the reference line with slope -2/3.
n=2.^(0:J-1);
figure;
loglog(n,error,’k’);
hold on;
loglog(n,error(end)*(n./n(end)).^(-2/3),’k:’);
xlabel(’2^j’);
ylabel(’H^1 error’);
hold off;

10.2.2. H 1 error. The following function estimates the H 1 error of the


linear finite element approximation.

Code 10.3. (H 1 error)


function error=pdeerrH1(p,t,u,ue,uex,uey)
% Evaluate the H^1 error of "u"

it1=t(1,:); % Vertices of triangles.


it2=t(2,:);
it3=t(3,:);
% Areas, gradients of linear basis functions.
[ar,g1x,g1y,g2x,g2y,g3x,g3y]=pdetrg(p,t);
% The finite element approximation and its gradient
u=u.’;
ux=u(it1).*g1x+u(it2).*g2x+u(it3).*g3x; % ux
uy=u(it1).*g1y+u(it2).*g2y+u(it3).*g3y; % uy
f=[’(’ ue ’-(xi*u(it1)+eta*u(it2)+(1-xi-eta)*u(it3))).^2’];
156 10. IMPLEMENTATIONS

err=quadgauss(p,t,f,u);
errx=quadgauss(p,t,[’(’ uex ’-repmat(u,7,1)).^2’],ux);
erry=quadgauss(p,t,[’(’ uey ’-repmat(u,7,1)).^2’],uy);
error=sqrt(err+errx+erry);

10.2.3. Seven-point Gauss quadrature rule. The following function


integrates a function over a triangular mesh.

Code 10.4. (Seven-point Gauss quadrature rule)


function q=quadgauss(p,t,f,par)
% Integrate ’f’ over the domain with triangulation ’p, t’ using
% seven-point Gauss quadrature rule.
%
% q=quadgauss(p,t,f) evaluate the integral of ’f’ where f can
% be a expression of x and y.
% q=quadgauss(p,t,f,par) evaluate the integral of ’f’ where f
% can be a expression of x, y ,u, xi, and eta, where xi and eta
% are 7 by 1 vector such that (xi, eta, 1-xi-eta) gives the
% barycentric coordinates of the Gauss nodes. The parameter
% ’par’ will be passed to ’u’. The evaluation of ’f’ should
% give a matrix of 7 rows and size(t,2) columns.

% Nodes and weigths on the reference element


xi=[1/3;(6+sqrt(15))/21;(9-2*sqrt(15))/21;(6+sqrt(15))/21
(6-sqrt(15))/21;(9+2*sqrt(15))/21;(6-sqrt(15))/21];
eta=[1/3;(6+sqrt(15))/21;(6+sqrt(15))/21;(9-2*sqrt(15))/21
(6-sqrt(15))/21;(6-sqrt(15))/21;(9+2*sqrt(15))/21];
w=[9/80;(155+15^(1/2))/2400;(155-15^(1/2))/2400];

it1=t(1,:); % Vertices of triangles.


it2=t(2,:);
it3=t(3,:);
ar=pdetrg(p,t); % Areas of triangles
% Quadrature nodes on triangles
x=xi*p(1,it1)+eta*p(1,it2)+(1-xi-eta)*p(1,it3);
y=xi*p(2,it1)+eta*p(2,it2)+(1-xi-eta)*p(2,it3);
if nargin==4,
u=par;
end
10.3. L-SHAPED DOMAIN PROBLEM ON ADAPTIVE MESHES 157

f=eval(f);
qt=2*ar.*(w(1)*f(1,:)+w(2)*sum(f(2:4,:))+w(3)*sum(f(5:7,:)));
q=sum(qt);

10.3. Codes for Example 4.6—L-shaped domain problem on


adaptive meshes
Code 10.5. (L-shaped domain problem — adaptive meshes)
% Solve the L-shaped domain problem by the adaptive finite
% element algorithm based on the greedy strategy.
% See "lshaped_uniform.m" for a description of the L-shaped
% domain problem.

% Parameters for the a posteriori error estimates


alfa=0.15;beta=0.15;mexp=1;
J=17; % Maximum number of iterations.

% The exact solution and its partial derivatives


ue=’(x.^2+y.^2).^(1/3).*sin(2/3*(atan2(y,x)+2*pi*(y<0)))’;
uex=’-2/3*(x.^2+y.^2).^(-1/6).*sin(1/3*(atan2(y,x)+2*pi*(y<0)))’;
uey=’2/3*(x.^2+y.^2).^(-1/6).*cos(1/3*(atan2(y,x)+2*pi*(y<0)))’;

% Geometry
g = [2 2 2 2 2 2
0 1 1 -1 -1 0
1 1 -1 -1 0 0
0 0 1 1 -1 -1
0 1 1 -1 -1 0
1 1 1 1 1 1
0 0 0 0 0 0];

% Boundary conditions
b=[1 1 1 1 1 length(ue) ’0’ ’0’ ’1’ ue]’;
b=repmat(b,1,6);

% PDE coefficients
c=1;
a=0;
f=0;
158 10. IMPLEMENTATIONS

% Initial mesh
[p,e,t]=initmesh(g);

% Do iterative adaptive refinement, solve PDE,


% estimate the error.
error=[];
N_k=[];
for k=1:J+1
fprintf(’Number of triangles: %g\n’,size(t,2))
u=assempde(b,p,e,t,c,a,f);
err=pdeerrH1(p,t,u,ue,uex,uey); % H^1 error
error=[error err];
N_k=[N_k,size(p,2)]; % DoFs
if k<J+1,
% A posteriori error estimate
[cc,aa,ff]=pdetxpd(p,t,u,c,a,f);
eta_k=pdejmps(p,t,cc,aa,ff,u,alfa,beta,mexp);
% Mark triangles
it=pdeadworst(p,t,cc,aa,ff,u,eta_k,0.5);
tl=it’;
% Kludge: tl must be a column vector
if size(tl,1)==1,
tl=[tl;tl];
end
% Refine mesh
[p,e,t]=refinemesh(g,p,e,t,tl);
end
end

% Plot the error versus DOFs in log-log coordinates and


% the reference line with slope -1/2.
figure;
loglog(N_k,error,’k’);
hold on;
loglog(N_k,error(end)*(N_k./N_k(end)).^(-1/2),’k:’);
xlabel(’DOFs’);
ylabel(’H^1 error’);
10.4. MULTIGRID V-CYCLE ALGORITHM 159

hold off;

10.4. Implementation of the multigrid V-cycle algorithm


In this section, we first introduce the matrix versions of multigrid V-cycle
algorithm 5.1 and the FMG algorithm 5.2, then provide the MATLAB codes
for the FMG algorithm (fmg.m), the multigrid V-cycle iterator algorithm
(mgp vcycle.m), the V-cycle algorithm(mg vcycle.m), and “newest vertex bi-
section” algorithm (refinemesh mg.m). We remark that “mgp vcycle.m” is
an implementation of the adaptive multigrid V-cycle iterator algorithm that
can be applied to adaptive finite element methods.

10.4.1. Matrix versions for the multigrid V-cycle algorithm and


{ }
FMG. Recall that ϕ1k , · · · , ϕnk k is the nodal basis for Vk , we define the so
k
called prolongation matrix Ik−1 ∈ Rnk ×nk−1 as follows

nk
ϕjk−1 = k
(Ik−1 )ij ϕik . (10.8)
i=1

It follows from the definition (5.6) of vek and e


vek that
vek = Ik−1
k
vek−1 ∀vk = vk−1 , vk ∈ Vk , vk−1 ∈ Vk−1 ,
(10.9)
^ te
Q^ k
ek
k−1 rk = (Ik−1 ) r ∀rk ∈ Vk .
Notice that Ak−1 vk−1 = Qk−1 Ak vk−1 , ∀vk−1 ∈ Vk−1 , we have
^
ek−1 vek−1 = Ak−1
^ ^ te k
A k
vk−1 = (Ik−1 )t A^ k
ek−1 ,
k vk−1 = (Ik−1 ) Ak Ik−1 v

that is,
ek−1 = (I k )t A
A ek I k . (10.10)
k−1 k−1

e1 = A
Algorithm 10.1. (Matrix version for V-cycle iterator). Let B e−1 .
1
Assume that B e k−1 ∈ R k−1 k−1 is defined, then B
n ×n e k ∈ R k k is defined as
n ×n

follows: Let e
ge ∈ Rnk .
(1) Pre-smoothing: For ye0 = 0 and j = 1, · · · , m,
ek (e
yej = yej−1 + R ek yej−1 ).
ge − A
e k−1 (I k )t (e
(2) Coarse grid correction: ee = B ek yem ), yem+1 = yem +
ge − A
k−1
k e
Ik−1 e.
160 10. IMPLEMENTATIONS

(3) Post-smoothing: For j = m + 2, · · · , 2m + 1,


et (e
yej = yej−1 + R ek yej−1 ).
e−A
k g
eke
Define B ge = ye2m+1 .

Then the multigrid V-cycle iteration for (5.7) read as:

ek
u
(n+1) (n)
ek + B
=u e k (feek − A
ek u (n)
ek ), n = 0, 1, 2, · · · , (10.11)

Algorithm 10.2. (Matrix version for FMG).


e−1 fee1 .
e1 = A
For k = 1, u 1
For k > 2, let u
ek = Ik−1
k u ek−1 , and iterate u
ek ← u e k (feek − A
ek + B ek u
ek ) for l
times.

10.4.2. Code for FMG. The following code is an implementation of


the above FMG algorithm.

Code 10.6. (FMG)


function [u,p,e,t]=fmg(g,b,c,a,f,p0,e0,t0,nmg,nsm,nr)
% Full multigrid solver for "-div(c*grad(u))+a*u=f".
%
% "nmg": Number of multigrid iterations.
% "nsm": Number of smoothing iterations.
% "nr": Number of refinements.

p=p0;
e=e0;
t=t0;
fprintf(’k = %g. Number of triangles = %g\n’,1,size(t,2));
[A,F,Bc,ud]=assempde(b,p,e,t,c,a,f);
u=Bc*(A\F)+ud;
I={};
for k=2:nr+1
% Mesh and prolongation matrix
[p,e,t,C]=refinemesh_mg(g,p,e,t);
[A,F,Bf,ud]=assempde(b,p,e,t,c,a,f);
fprintf(’k = %g. Number of triangles = %g\n’,k,size(t,2));
I=[I {Bf’*C*Bc}]; % Eliminate the Dirichlet boundary nodes
Bc=Bf;
u=Bf’*C*u; % Initial value
10.4. MULTIGRID V-CYCLE ALGORITHM 161

for l=1:nmg % Multigrid iteration


r=F-A*u;
Br=mgp_vcycle(A,r,I,nsm,k); % Multigrid precondtioner
u=u+Br;
end
u=Bf*u+ud;
end

10.4.3. Code for the multigrid V-cycle algorithm. The following


code is an implementation of Algorithm 10.1 for multigrid iterator.

Code 10.7. (V-cycle iterator)


function Br=mgp_vcycle(A,r,I,m,k)
% Multigrid V-cycle precondtioner.
%
% "A" is stiffness matrix at level k,
% "I" is a cell of matrics such that: [I;I{k-1}]=I_{k-1}^k.
% "m" is the number of smoothing iterations. Br=B_k*r.

if(k==1),
Br=A\r;
else
Ik=I{k-1}; % Prolongation matrix
[np,np1]=size(Ik);
ns=find(sum(Ik)>1);
ns=[ns, np1+1:np]; % Nodes to be smoothed.
y=zeros(np,1);
y=mgs_gs(A,r,y,ns,m); % Pre-smoothing
r1=r-A(:,ns)*y(ns);
r1=Ik’*r1;
B=Ik’*A*Ik;
Br1=mgp_vcycle(B,r1,I,m,k-1);
y=y+Ik*Br1;
y=mgs_gs(A,r,y,ns(end:-1:1),m); % Post-smoothing
Br=y;
end

The following code is an implementation of the V-cycle algorithm (10.11).

Code 10.8. (V-cycle)


162 10. IMPLEMENTATIONS

function [u,steps]=mg_vcycle(A,F,I,u0,m,k,tol)
% Multigrid V-cycle iteration

if k==1,
u=A\F;
steps=1;
else
u=u0;
r=F-A*u;
error0=max(abs(r));
error=error0;
steps=0;
fprintf(’Number of Multigrid iterations: ’);
while error>tol*error0,
Br=mgp_vcycle(A,r,I,m,k); % Multigrid precondtioner
u=u+Br;
r=F-A*u;
error=max(abs(r));
steps=steps+1;
for j=1:floor(log10(steps-0.5))+1,
fprintf(’\b’);
end
fprintf(’%g’,steps);
end
fprintf(’\n’);
end

The following code is the Gauss-Seidel smoother.

Code 10.9. (Gauss-Seidel smoother)


function x=mgs_gs(A,r,x0,ns,m)
% (Local) Gauss-Seidel smoother for multigrid method.
%
% "A*x=r": The equation.
% "x0": The initial guess.
% "ns": The set of nodes to be smoothed.
% "m": Number of iterations.

A1=A(ns,ns);
10.4. MULTIGRID V-CYCLE ALGORITHM 163

ip=ones(size(r));
ip(ns)=0;
ip=ip==1;
A2=A(ns,ip);
y1=x0(ns);
y2=x0;
y2(ns)=[];
r1=r(ns)-A2*y2;
L=tril(A1);
U=triu(A1,1);
for k=1:m
y1=L\(r1-U*y1);
end
x=x0;
x(ns)=y1;

10.4.4. The “newest vertex bisection” algorithm for mesh re-


finements. We first recall the “newest vertex bisection” algorithm for the
mesh refinements which consists of two steps:
1. The marked triangles for refinements are bisected by the edge oppo-
site to the newest vertex a fixed number of times (the newest vertex of an
element in the initial mesh is the vertex opposite to the longest edge). The
resultant triangulation may have nodes that are not the common vertices of
two triangles. Such nodes are called hanging nodes.
2. All triangles with hanging nodes are bisected by the edge opposite to
the newest vertex, this process is repeated until there are no hanging nodes.
It is known that the iteration in the second step to remove the hanging
nodes can be completed in finite number of steps. An important property
of the newest vertex bisection algorithm is that the algorithm generates a
sequence of meshes that all the descendants of an original triangle fall into
four similarity classes indicated in Figure 2. Therefore, let Mj , j = 1, 2, · · · ,
be a sequence of nested meshes generated by the newest vertex bisection
algorithm, then there exists a constant θ > 0 such that
θK > θ ∀K ∈ Mj , j = 1, 2, · · · , (10.12)
where θK is the minimum angle of the element K.
Next, we provide a code for the “newest vertex bisection” algorithm for
mesh refinements.
164 10. IMPLEMENTATIONS

@ @
C @
C @
C
 @  C @  C @ 2 C 3@
 1 @ 2 C 3 @  4 C4 @  C @
 @  C @ @
1 C 1 @ 2C@33 C 22C 3@
 @  C @  @@C @  CC @ @C CC @
(a) (b) (c) (d)
Figure 2. Four similarity classes of triangles generated by “newest
vertex bisection”.

Code 10.10. (Newest vertex bisection)


function [p1,e1,t1,Icr]=refinemesh_mg(g,p,e,t,it)
% The "newest-vertex-bisection algorithm" for mesh refinements.
% Output also the prolongation matrix for multigrid iteration.
%
% G describes the geometry of the PDE problem. See either
% DECSG or PDEGEOM for details.
% The triangular mesh is given by the mesh data P, E, and T.
% Details can be found under INITMESH.
% The matrix Icr is the prolongation matrix from the coarse
% mesh to the fine mesh.
% ’it’ is a list of triangles to be refined.
%
% This function is a modification of the ’refinemesh.m’ from
% the MATLAB PDE Toolbox.

np=size(p,2);
nt=size(t,2);

if nargin==4,
it=(1:nt)’; % All triangles
end

itt1=ones(1,nt);
itt1(it)=zeros(size(it));
it1=find(itt1); % Triangles not yet to be refined
it=find(itt1==0); % Triangles whose side opposite to
% the newest vertex is to be bisected

% Make a connectivity matrix, with edges to be refined.


10.4. MULTIGRID V-CYCLE ALGORITHM 165

% -1 means no point is yet allocated


ip1=t(1,it);
ip2=t(2,it);
ip3=t(3,it);
A=sparse(ip1,ip2,-1,np,np)+sparse(ip2,ip3,-1,np,np)...
+sparse(ip3,ip1,-1,np,np);
A=-((A+A.’)<0);
newpoints=1;

% Loop until no additional hanging nodes are introduced


while newpoints,
newpoints=0;
ip1=t(1,it1);
ip2=t(2,it1);
ip3=t(3,it1);
m1 = aij(A,ip2,ip3);%A(ip2(i),ip3(i)), i=1:length(it1).
m2 = aij(A,ip3,ip1);
m3 = aij(A,ip1,ip2);
ii=find(m3);
if ~isempty(ii),
itt1(it1(ii))=zeros(size(ii));
end
ii=find((m1 | m2) & (~m3));
if ~isempty(ii),
A=A+sparse(ip1(ii),ip2(ii),-1,np,np);
A=-((A+A.’)<0);
newpoints=1;
itt1(it1(ii))=zeros(size(ii));
end
it1=find(itt1); % Triangles not yet fully refined
it=find(itt1==0); % Triangles fully refined
end

% Find edges to be refined


ie=(aij(A,e(1,:),e(2,:))==-1);

ie1=find(ie==0); % Edges not to be refined


ie=find(ie); % Edges to be refined
166 10. IMPLEMENTATIONS

% Get the edge "midpoint" coordinates


[x,y]=pdeigeom(g,e(5,ie),(e(3,ie)+e(4,ie))/2);
% Create new points
p1=[p [x;y]];

% Prolongation matrix.
if nargout == 4,
nie = length(ie);
Icr = [sparse(1:nie,e(1,ie),1/2,nie,np)+...
sparse(1:nie,e(2,ie),1/2,nie,np)];
end

ip=(np+1):(np+length(ie));
np1=np+length(ie);
% Create new edges
e1=[e(:,ie1) ...
[e(1,ie);ip;e(3,ie);(e(3,ie)+e(4,ie))/2;e(5:7,ie)] ...
[ip;e(2,ie);(e(3,ie)+e(4,ie))/2;e(4,ie);e(5:7,ie)]];
% Fill in the new points
A=sparse(e(1,ie),e(2,ie),ip+1,np,np)...
+sparse(e(2,ie),e(1,ie),ip+1,np,np)+A;

% Generate points on interior edges


[i1,i2]=find(A==-1 & A.’==-1);
i=find(i2>i1);
i1=i1(i);
i2=i2(i);
p1=[p1 [(p(1:2,i1)+p(1:2,i2))/2]];

% Prolongation matrix.
if nargout == 4,
ni=length(i);
Icr = [Icr;sparse(1:ni,i1,1/2,ni,np)+...
sparse(1:ni,i2,1/2,ni,np)];
Icr = [speye(size(Icr,2));Icr];
end
10.4. MULTIGRID V-CYCLE ALGORITHM 167

ip=(np1+1):(np1+length(i));
% Fill in the new points
A=sparse(i1,i2,ip+1,np,np)+sparse(i2,i1,ip+1,np,np)+A;

% Lastly form the triangles


ip1=t(1,it);
ip2=t(2,it);
ip3=t(3,it);
mp1 = aij(A,ip2,ip3); % A(ip2(i),ip3(i)), i=1:length(it).
mp2 = aij(A,ip3,ip1);
mp3 = aij(A,ip1,ip2);

% Find out which sides are refined


bm=1*(mp1>0)+2*(mp2>0);
% The number of new triangles
nnt1=length(it1)+length(it)+sum(mp1>0)+sum(mp2>0)+sum(mp3>0);
t1=zeros(4,nnt1);
t1(:,1:length(it1))=t(:,it1); % The unrefined triangles
nt1=length(it1);
i=find(bm==3); % All sides are refined
li=length(i); iti=it(i);
t1(:,(nt1+1):(nt1+li))=[t(1,iti);mp3(i);mp2(i);t(4,iti)];
nt1=nt1+length(i);
t1(:,(nt1+1):(nt1+li))=[mp3(i);t(2,iti);mp1(i);t(4,iti)];
nt1=nt1+length(i);
t1(:,(nt1+1):(nt1+li))=[t(3,iti);mp3(i);mp1(i);t(4,iti)];
nt1=nt1+length(i);
t1(:,(nt1+1):(nt1+li))=[mp3(i);t(3,iti);mp2(i);t(4,iti)];
nt1=nt1+li;
i=find(bm==2); % Sides 2, 3 are refined
li=length(i); iti=it(i);
t1(:,(nt1+1):(nt1+li))=[t(1,iti);mp3(i);mp2(i);t(4,iti)];
nt1=nt1+length(i);
t1(:,(nt1+1):(nt1+li))=[t(2,iti);t(3,iti);mp3(i);t(4,iti)];
nt1=nt1+length(i);
t1(:,(nt1+1):(nt1+li))=[mp3(i);t(3,iti);mp2(i);t(4,iti)];
nt1=nt1+li;
i=find(bm==1); % Sides 3 and 1 are refined
168 10. IMPLEMENTATIONS

li=length(i); iti=it(i);
t1(:,(nt1+1):(nt1+li))=[mp3(i);t(2,iti);mp1(i);t(4,iti)];
nt1=nt1+li;
t1(:,(nt1+1):(nt1+li))=[t(3,iti);t(1,iti);mp3(i);t(4,iti)];
nt1=nt1+length(i);
t1(:,(nt1+1):(nt1+li))=[t(3,iti);mp3(i);mp1(i);t(4,iti)];
nt1=nt1+li;
i=find(bm==0); % Side 3 is refined
li=length(i); iti=it(i);
t1(:,(nt1+1):(nt1+li))=[t(3,iti);t(1,iti);mp3(i);t(4,iti)];
nt1=nt1+li;
t1(:,(nt1+1):(nt1+li))=[t(2,iti);t(3,iti);mp3(i);t(4,iti)];

The following code “aij.c” in C language should be built into a MATLAB


“mex” file that is used by the above function.

Code 10.11. (Find A(i,j))


/*============================================================
*
* aij.c, aij.mex:
*
* The calling syntax is:
*
* b = aij(A,vi,vj)
*
* where A should be a sparse matrix, vi and vj be integer
* vertors. b is a row vector satisfying b_m=A(vi_m,vj_m).
* This is a MEX-file for MATLAB.
*
*==========================================================*/
/* $Revision: 1.0 $ */
#include "mex.h"

/* Input Arguments */

#define A_IN prhs[0]


#define vi_IN prhs[1]
#define vj_IN prhs[2]
10.4. MULTIGRID V-CYCLE ALGORITHM 169

/* Output Arguments */

#define b_OUT plhs[0]

void mexFunction( int nlhs, mxArray *plhs[],


int nrhs, const mxArray*prhs[] )
{
double *pr, *pi, *br, *bi, *vi, *vj;
mwIndex *ir, *jc;
mwSize ni, nj, l, row, col, k;

/* Check for proper number of arguments */

if (nrhs != 3) {
mexErrMsgTxt("Three input arguments required.");
} else if (nlhs > 1) {
mexErrMsgTxt("Too many output arguments.");
}

ni = mxGetN(vi_IN)*mxGetM(vi_IN);
nj = mxGetN(vj_IN)*mxGetM(vj_IN);
if (ni != nj)
mexErrMsgTxt("The lengths of vi and vi must be equal");

pr = mxGetPr(A_IN);
pi = mxGetPi(A_IN);
ir = mxGetIr(A_IN);
jc = mxGetJc(A_IN);
vi = mxGetPr(vi_IN);
vj = mxGetPr(vj_IN);

if (!mxIsComplex(A_IN)){
/* Create a matrix for the return argument */
b_OUT = mxCreateDoubleMatrix(1, ni, mxREAL);

/* Assign pointers to the various parameters */


br = mxGetPr(b_OUT);
170 10. IMPLEMENTATIONS

for (l=0; l<ni; l++){


row = *(vi+l);row--;
col = *(vj+l);
for (k=*(jc+col-1); k<*(jc+col); k++){
if (*(ir+k)==row)
*(br+l) = *(pr+k);
}
}
}else{
/* Create a matrix for the return argument */
b_OUT = mxCreateDoubleMatrix(1, ni, mxCOMPLEX);

/* Assign pointers to the various parameters */


br = mxGetPr(b_OUT);
bi = mxGetPi(b_OUT);

for (l=0; l<ni; l++){


row = *(vi+l);row--;
col = *(vj+l);
for (k=*(jc+col-1); k<*(jc+col); k++){
if (*(ir+k)==row){
*(br+l) = *(pr+k);
*(bi+l) = *(pi+k);
}
}
}
}
return;
}

Bibliographic notes. The “newest vertex bisection” algorithm is intro-


duced in Bänsch [7], Mitchell [41]. Further details of the algorithm can be
found in Schmidt and Siebert [48].
10.5. EXERCISES 171

10.5. Exercises
Exercise 10.1. Solve the following problem by the linear finite element
method.

 −∆u = x, −∞ < x < ∞, 0 < y < 1,
u(x, 0) = u(x, 1) = 0, −∞ < x < ∞,

u(x, y) is periodic in the x direction with period 1.
Exercise 10.2. Solve the L-shaped domain problem in Example 4.1 by
using the adaptive finite element algorithm base on the Dörfler marking strat-
egy and verify the quasi-optimality of the algorithm.
Exercise 10.3. Solve the Poisson equation on the unit disk with homoge-
neous Dirichlet boundary condition by using the full muligrid algorithm 10.2
with Gauss-Seidel smoother and verify Theorem 5.5 numerically.
Bibliography

[1] R. Adams, Sobolev Spaces, Academic Press, 1975.


[2] C. Amrouche, C. Bernardi, M. Dauge, and V. Girault, Vector potentials in
three-diemnsional nonsmooth domains, Math. Meth. Appl. Sci., 21 (1998), pp. 823–
864.
[3] D. Arnold, R. Falk, and R. Winther, Preconditioning in h(div) and apploications,
Math. Comp., 66 (1997).
[4] M. Avellaneda and F.-H. Lin, Compactness methods in the theory of homogeniza-
tion, Comm. Pure Appl. Math., 40 (1987), pp. 803–847.
[5] I. Babuška and A. Miller, A feedback finite element method with a posteriori er-
ror estimation: Part i. the finite element method and some basic properties of the a
posteriori error estimator, Comput. Meth. Appl. Mech. Engrg., 61 (1987), pp. 1–40.
[6] I. Babuška and C. Rheinboldt, Error estimates for adaptive finite element compu-
tations, SIAM J. Numer. Anal., 15 (1978), pp. 736–754.
[7] E. Bänsch, Local mesh refinement in 2 and 3 dimensions, Impact of Computing in
Science and Engineering, 3 (1991), pp. 181–191.
[8] R. Beck, R. Hiptmair, R. Hoppe, and B. Wohlmuth, Residual based a posteriori
error estimators for eddy current computation, M2AN, 34 (2000), pp. 159–182.
[9] A. Bensoussan, J. Lions, and G. Papanicolaou, Asymptotic Analysis for Periodic
Structures, North-Holland, Amsterdam, 1978.
[10] M. Birman and M. Solomyak, L2 -theory of the maxwell operator in arbitary do-
mains, Russian Math. Surveys, 43 (1987), pp. 75–96.
[11] D. Braess, Finite Elements, Cambridge University Press, Cambridge, 1997.
[12] J. Bramble, Multigrid Methods, no. 294 in Pitman Research Notes in Mathematical
Sciences, Longman, Essex, 1993.
[13] J. Bramble and S. Hilbert, Estimation of linear functionals on sobolev spaces with
application to fourier transforms and spline inerpolation, SIAM J. Numer. Anal., 7
(1970), pp. 112–124.
[14] A. Brandt, Multi-level adaptive solutions to boundary-value problems, Math. Comp.,
31 (1977), pp. 333–390.
[15] , Multigrid Techniques: 1984 Guide, with applications to uid dynamics, Weiz-
mann Institute of Science, Rehovot, Israel, 1984.
[16] F. Brezzi and M. Fortin, Mixed and Hybrid Finite Element Methods, Springer-
Verlag, New York, 1991.
[17] A. Buffa, M. Costabel, and S. D., On traces for h(curl; Ω) in Lipschitz domains,
J. Math. Anal. Appl., 276 (2002), pp. 845–867.

173
174 BIBLIOGRAPHY

[18] J. M. Cascon, C. Kreuzer, R. Nochetto, and K. Siebert, Quasi-optimal con-


vergence rate for an adaptive finite element method, SIAM J. Numer. Anal., 46 (2008),
pp. 2524–2550.
[19] Z. Chen and T. Hou, A mixed multiscale finite element method for elliptic problems
with oscillating coefficients, Math. Comp., 72 (2003), pp. 541–576.
[20] Z. Chen and F. Jia, An adaptive finite element method with reliable and efficient
error control for linear parabolic problems, Math. Comp., 73 (2004), pp. 1163–1197.
[21] Z. Chen, L. Wang, and W. Zheng, An adaptive multilevel method for time-harmonic
maxwell equations with singularities, SIAM J. Sci. Comput., 29 (2007), pp. 118–138.
[22] Z. Chen and X. Yue, Numerical homogenization of well singularities in the flow
transport through heterogeneous porous media, Multiscale Modeling and Simulation, 1
(2003), pp. 260–303.
[23] P. Ciarlet, The Finite Element Method for Elliptic Problems, vol. 4 of Studies in
Mathematics and its Applications, North-Holland, New York, 1978.
[24] P. Clément, Approximation by finite element functions using local regularization,
RARIO Numer. Anal., 2 (1975), pp. 77–84.
[25] M. Dauge, Elliptic Bounary Value Problems on Corner Domains, vol. 1341 of Lecture
Notes in Mathematics, Springer, Berlin, 1988.
[26] J. Deny and J.-L. Lions, Les espaces du type de deppo levi, Ann. Inst. Fourier,
Grenoble, 5 (1955), pp. 305–370.
[27] W. Dörfler, A convergent adaptive algorithm for possion’s equations, SIAM J. Nu-
mer. Anal., 33 (1996), pp. 1106–1124.
[28] G. Duvaut and J.-L. Lions, Les Inéquations en Mécanique et en Physique, Dunod,
1972.
[29] Y. Efendiev, T. Hou, and X. Wu, The convergence of non-conforming multiscale
finite element methods, SIAM J. Numer. Anal., 37 (2000), pp. 888–910.
[30] K. Eriksson and C. Johnson, Adaptive finite element methods for parabolic problems
i: A linear model problem, SIAM J. Numer. Anal., 28 (1991), pp. 43–77.
[31] , Adaptive finite element methods for parabolic problems iv: Nonlinear problems,
SIAM J. Numer. Anal., 32 (1995), pp. 1729–1749.
[32] L. Evans, Partial Differential Equations, vol. 19 of Graduate Studies in Mathematics,
American Mathematical Society, Providence, 1998.
[33] D. Gilbarg and N. Trudinger, Elliptic Partial Differential Equations of Second
Order, Springer, Berlin, 2001.
[34] V. Girault and A. Raviart, P, Finite Element Methods for Navier-Stokes Equa-
tions. Theory and Algorithms, vol. 5 of Springer Series in Computational Mathematics,
Springer-Verlag, Berlin, 1986.
[35] P. Grisvard, Elliptic Problems in Nonsmooth Domains, Pitman, London, 1985.
[36] R. Hiptmair, Finite elements in computational electromagnetism, Acta Numerica, 11
(2002), pp. 237–339.
[37] T. Hou and X. Wu, A multiscale finite element method for elliptic problems in com-
posite materials and porous media, J. Comput. Phys., 134 (1997), pp. 169–189.
[38] T. Hou, X. Wu, and Z. Cai, Convergence of a multiscale finite element method for
elliptic problems with rapidly oscillating coefficients, Math. Comp., 68 (1999), pp. 913–
943.
BIBLIOGRAPHY 175

[39] V. Jikov, S. Kozlov, and O. Oleinik, Homogenization of Differential Operators


and Integral Functionals, Springer, Berlin, 1994.
[40] O. Ladyzhenskaya, V. Solonnikov, and N. Uraltseva, Linear and Quasilinear
Equations of Parabolic Type, Americal Mathematical Society, Providence, 1968.
[41] W. Mitchell, Optimal multilevel iterative methods for adaptive grids, SIAM J. Sci.
Stat. Comput., 13 (1992), pp. 146–167.
[42] P. Monk, Finite Element Methods for Maxwell’s Equations, Clarendon Press, Oxford,
2003.
[43] J. Nédélec, Mixed finite lements in R3 , Numer. Math., 35 (1980), pp. 315–341.
[44] , A new family of mixed finite elements in R3 , Numer. Math., 50 (1986), pp. 57–
81.
[45] J. Nečas, Sur une méthode pour résoudre les équations aux dérivées partielles du type
elliptique, voisine de la variationnelle, Ann. Sc. Norm. Sup. Pisa Sér. 3, 16 (1962),
pp. 305–326.
[46] , Equations aux Dérivées Partielles, Presses de l’Université de Montréal, 1965.
[47] M. Picasso, Adaptive finite elements for a linear parabolic problem, Comput. Method
Appl. Mech. Engrg., 167 (1998), pp. 223–237.
[48] A. Schmidt and K. Siebert, Albert: An adaptive hierarchical finite ele-
ment toolbox. IAM, University of Freiburg, http://www.mathematik.uni-freiburg.de
/IAM/Research/projectsdz/albert, 2000.
[49] V. Thomée, Galerkin Finite Element Methods for Parabolic Problems, no. 25,
Springer-Verlag, New York, 1997.
[50] R. Verfürth, A posteriori error estimates for the stokes equations, Numer. Math.,
55 (1989), pp. 309–325.
[51] , A Review of A Posteriori Error Estimation and adaptive Mesh Refinement
Techniques, Teubner, 1996.
[52] H. Wu and Z. Chen, Uniform convergence of multigrid v-cycle on adaptively refined
meshes for second order elliptic problems, Science on China, (Series A), 49 (2006),
pp. 1405–1429.
[53] J. Xu, Iterative methods by space decomposition and subspace correction, SIAM Rev,
34 (1992), pp. 581–613.
Index

A posteriori error estimate element stiffness matrix, 21


lower bound, 43
upper bound, 42 finite element, 15
adaptive finite element algorithm, 45 Mini element, 78
affine family, 22 Argyris element, 17
affine-interpolation equivalent, 31 Crouzeix-Raviart element, 20
Aubin-Nitsche trick, 35 linear element, 16, 20
multiscale, 135
backward Euler method, 89 Nédélec edge element, 115
barycentric coordinates, 16 over-sampling multiscale, 140
boundary corrector, 133 Raviart-Thomas element, 73
Bramble-Hilbert lemma, 28 finite element methods, 15
mixed, 67
Céa Lemma, 14 parabolic problems, 81
Clément interpolation operator, 40 fractional Sobolev space, 6
code
H 1 error, 155 Galerkin method, 13, 15
Assemble the Poission equation, 151 Galerkin orthogonality, 14
FMG, 160 Gaussian quadrature formula, 24, 156
Gauss-Seidel smoother, 162
L-shaped domain problem – uniform hanging nodes, 163
meshes, 154 homogenized coefficient, 133
L-shaped domain problem — adaptive homogenized equation, 133
meshes, 157
Newest vertex bisection algorithm, inf-sup condition, 10
164 interpolant
Seven-point Gauss quadrature rule, global, 32
156 local, 18
V-cycle, 161 interpolation error bounds, 31, 32
V-cycle iterator, 161 inverse estimates, 32, 33
conforming, 20
Crank-Nicolson method, 92 Lax-Milgram lemma, 9
Lax-Milgram lemma (generalized), 10
domain, 4 lifting, 8

177
178 INDEX

Lipschitz boundary, 5 test space, 15


trial space, 15
mesh, 18 triangulation, 18
quasi-uniform, 32
regular, 31 weak partial derivative, 1
mollifier, 3 weak solution, 9
Multigrid methods
adaptive, 64
convergence, 56, 61
full multigrid, 62, 160
implementation, 159
prolongation matrix, 159
smoothers, 54
V-cycle iterator, 55, 159
work estimate, 63

newest vertex bisection algorithm, 163


nodal basis, 16
nonconforming, 20

partition of unity, 12
Petrov-Galerkin method, 15
Poincaré inequality, 6

Rayleigh-Ritz method, 14
reference finite element, 22
Ritz projection, 87
Ritz-Galerkin method, 15

semidiscrete problem, 85
Sobolev imbedding, 5
Sobolev spaces, 2
space
C0∞ (Ω), 1
H k (Ω), 2
H0k (Ω), 2
H s (Ω), 7
H0s (Ω), 7
L1loc (Ω), 1
W k,p (Ω), 2
W0k,p (Ω), 2
W s,p (Ω), 6
W0s,p (Ω), 7
D(Ω̄), 5
stiffness matrix, 14

You might also like