Discretisation Solution of the system Numerical experiments Further applications
A Finite Element Method for NonvariationalElliptic Problems
Tristan Pryerjoint work with Omar Lakkis
May 20, 2010
Discretisation Solution of the system Numerical experiments Further applications
Outline
1 Discretisation
2 Solution of the system
3 Numerical experiments
4 Further applications
Discretisation Solution of the system Numerical experiments Further applications
Model problem in nonvariational form
Model problem
Given f ∈ L2(Ω), find u ∈ H2(Ω) ∩ H10(Ω) such that⟨
A:D2u |φ⟩
= 〈f , φ〉 ∀ φ ∈ H10(Ω),
X:Y := trace (XᵀY) is the Frobenius inner product of two matrices.
Discretisation Solution of the system Numerical experiments Further applications
Model problem in nonvariational form
Model problem
Given f ∈ L2(Ω), find u ∈ H2(Ω) ∩ H10(Ω) such that⟨
A:D2u |φ⟩
= 〈f , φ〉 ∀ φ ∈ H10(Ω),
X:Y := trace (XᵀY) is the Frobenius inner product of two matrices.
Don’t want to rewrite in divergence form!⟨A:D2u |φ
⟩= 〈div (A∇u) |φ〉 − 〈div (A)∇u, φ〉 .
Discretisation Solution of the system Numerical experiments Further applications
Model problem in nonvariational form
Model problem
Given f ∈ L2(Ω), find u ∈ H2(Ω) ∩ H10(Ω) such that⟨
A:D2u |φ⟩
= 〈f , φ〉 ∀ φ ∈ H10(Ω),
X:Y := trace (XᵀY) is the Frobenius inner product of two matrices.
Don’t want to rewrite in divergence form!⟨A:D2u |φ
⟩= 〈div (A∇u) |φ〉 − 〈div (A)∇u, φ〉 .
Discretisation Solution of the system Numerical experiments Further applications
What should we do?
Main idea
Define appropriately the Hessian of a function who’s not twicedifferentiable, i.e., as a distribution.
Construct a finite element approximation of this distribution. Whatis meant by the Hessian of a finite element function?[Aguilera and Morin, 2008]
Discretise the strong form of the PDE directly.
Discretisation Solution of the system Numerical experiments Further applications
What should we do?
Main idea
Define appropriately the Hessian of a function who’s not twicedifferentiable, i.e., as a distribution.
Construct a finite element approximation of this distribution. Whatis meant by the Hessian of a finite element function?[Aguilera and Morin, 2008]
Discretise the strong form of the PDE directly.
Discretisation Solution of the system Numerical experiments Further applications
What should we do?
Main idea
Define appropriately the Hessian of a function who’s not twicedifferentiable, i.e., as a distribution.
Construct a finite element approximation of this distribution. Whatis meant by the Hessian of a finite element function?[Aguilera and Morin, 2008]
Discretise the strong form of the PDE directly.
Discretisation Solution of the system Numerical experiments Further applications
Hessians as distributions
generalised Hessian
Given v ∈ H1(Ω) it’s generalised Hessian is given by⟨D2v |φ
⟩= −〈∇v ⊗∇φ〉+ 〈∇u ⊗ n φ〉∂Ω ∀ φ ∈ H1(Ω),
x⊗ y := xyᵀ is the tensor product between two vectors.
finite element space notation
V :=Φ ∈ H1(Ω) : Φ|K ∈ Pp ∀ K ∈ T
,
V := V ∩ H10(Ω),
finite element Hessian
For each V ∈ V there exists a unique H[V ] ∈ Vd×d such that
〈H[V ],Φ〉 =⟨D2V |Φ
⟩∀ Φ ∈ V.
Discretisation Solution of the system Numerical experiments Further applications
Hessians as distributions
generalised Hessian
Given v ∈ H1(Ω) it’s generalised Hessian is given by⟨D2v |φ
⟩= −〈∇v ⊗∇φ〉+ 〈∇u ⊗ n φ〉∂Ω ∀ φ ∈ H1(Ω),
x⊗ y := xyᵀ is the tensor product between two vectors.
finite element space notation
V :=Φ ∈ H1(Ω) : Φ|K ∈ Pp ∀ K ∈ T
,
V := V ∩ H10(Ω),
finite element Hessian
For each V ∈ V there exists a unique H[V ] ∈ Vd×d such that
〈H[V ],Φ〉 =⟨D2V |Φ
⟩∀ Φ ∈ V.
Discretisation Solution of the system Numerical experiments Further applications
Hessians as distributions
generalised Hessian
Given v ∈ H1(Ω) it’s generalised Hessian is given by⟨D2v |φ
⟩= −〈∇v ⊗∇φ〉+ 〈∇u ⊗ n φ〉∂Ω ∀ φ ∈ H1(Ω),
x⊗ y := xyᵀ is the tensor product between two vectors.
finite element space notation
V :=Φ ∈ H1(Ω) : Φ|K ∈ Pp ∀ K ∈ T
,
V := V ∩ H10(Ω),
finite element Hessian
For each V ∈ V there exists a unique H[V ] ∈ Vd×d such that
〈H[V ],Φ〉 =⟨D2V |Φ
⟩∀ Φ ∈ V.
Discretisation Solution of the system Numerical experiments Further applications
Nonvariational finite element method
Substitute the finite element Hessian directly into the model problem.We seek U ∈ V such that⟨
A:H[U], Φ⟩
=⟨f , Φ
⟩∀ Φ ∈ V.
Discretisation
⟨f , Φ
⟩=
d∑α=1
d∑β=1
⟨Aα,βHα,β[U], Φ
⟩
=d∑
α=1
d∑β=1
⟨Φ,Aα,βΦᵀ
⟩hα,β .
Discretisation Solution of the system Numerical experiments Further applications
Nonvariational finite element method
Substitute the finite element Hessian directly into the model problem.We seek U ∈ V such that⟨
A:H[U], Φ⟩
=⟨f , Φ
⟩∀ Φ ∈ V.
Discretisation
⟨f , Φ
⟩=
d∑α=1
d∑β=1
⟨Aα,βHα,β[U], Φ
⟩
=d∑
α=1
d∑β=1
⟨Φ,Aα,βΦᵀ
⟩hα,β .
Discretisation Solution of the system Numerical experiments Further applications
Nonvariational finite element method
Substitute the finite element Hessian directly into the model problem.We seek U ∈ V such that⟨
A:H[U], Φ⟩
=⟨f , Φ
⟩∀ Φ ∈ V.
Discretisation
⟨f , Φ
⟩=
d∑α=1
d∑β=1
⟨Aα,βHα,β[U], Φ
⟩
=d∑
α=1
d∑β=1
⟨Φ,Aα,βΦᵀ
⟩hα,β .
Discretisation Solution of the system Numerical experiments Further applications
Nonvariational finite element method
Substitute the finite element Hessian directly into the model problem.We seek U ∈ V such that⟨
A:H[U], Φ⟩
=⟨f , Φ
⟩∀ Φ ∈ V.
Discretisation
⟨f , Φ
⟩=
d∑α=1
d∑β=1
⟨Aα,βHα,β[U], Φ
⟩
=d∑
α=1
d∑β=1
⟨Φ,Aα,βΦᵀ
⟩hα,β .
〈Φ,Φᵀ〉hα,β = 〈Φ,Hα,β[U]〉
=(−
⟨∂βΦ, ∂αΦ
ᵀ⟩
+⟨Φnβ , ∂αΦ
ᵀ⟩
∂Ω
)u.
Discretisation Solution of the system Numerical experiments Further applications
Nonvariational finite element method
Substitute the finite element Hessian directly into the model problem.We seek U ∈ V such that⟨
A:H[U], Φ⟩
=⟨f , Φ
⟩∀ Φ ∈ V.
Discretisation
⟨f , Φ
⟩=
d∑α=1
d∑β=1
⟨Aα,βHα,β[U], Φ
⟩
=d∑
α=1
d∑β=1
⟨Φ,Aα,βΦᵀ
⟩hα,β .
〈Φ,Φᵀ〉hα,β = 〈Φ,Hα,β[U]〉
=(−
⟨∂βΦ, ∂αΦ
ᵀ⟩
+⟨Φnβ , ∂αΦ
ᵀ⟩
∂Ω
)u.
Discretisation Solution of the system Numerical experiments Further applications
Linear system
U = Φᵀu, where u ∈ RN is the solution to the following linear system
Du :=d∑
α=1
d∑β=1
Bα,βM−1Cα,βu = f.
Components of the linear system
Bα,β :=⟨Φ,Aα,βΦᵀ
⟩∈ RN×N ,
M := 〈Φ,Φᵀ〉 ∈ RN×N ,
Cα,β := −⟨∂βΦ, ∂αΦ
ᵀ⟩
+⟨Φnβ , ∂αΦ
ᵀ⟩
∂Ω∈ RN×N ,
f :=⟨f , Φ
⟩∈ RN .
Discretisation Solution of the system Numerical experiments Further applications
Linear system
U = Φᵀu, where u ∈ RN is the solution to the following linear system
Du :=d∑
α=1
d∑β=1
Bα,βM−1Cα,βu = f.
Components of the linear system
Bα,β :=⟨Φ,Aα,βΦᵀ
⟩∈ RN×N ,
M := 〈Φ,Φᵀ〉 ∈ RN×N ,
Cα,β := −⟨∂βΦ, ∂αΦ
ᵀ⟩
+⟨Φnβ , ∂αΦ
ᵀ⟩
∂Ω∈ RN×N ,
f :=⟨f , Φ
⟩∈ RN .
Discretisation Solution of the system Numerical experiments Further applications
The system is hard to solve
Linear system
U = Φᵀu, where u ∈ RN is the solution to the following linear system
Du :=d∑
α=1
d∑β=1
Bα,βM−1Cα,βu = f.
Remarks
The matrix D is not sparse
Mass lumping only works for P1 elements AND in this case onlygives a reasonable solution U for very simple A
Notice D is the sum of Schur complements
We can create a block matrix to exploit this
Discretisation Solution of the system Numerical experiments Further applications
The system is hard to solve
Linear system
U = Φᵀu, where u ∈ RN is the solution to the following linear system
Du :=d∑
α=1
d∑β=1
Bα,βM−1Cα,βu = f.
Remarks
The matrix D is not sparse
Mass lumping only works for P1 elements AND in this case onlygives a reasonable solution U for very simple A
Notice D is the sum of Schur complements
We can create a block matrix to exploit this
Discretisation Solution of the system Numerical experiments Further applications
The system is hard to solve
Linear system
U = Φᵀu, where u ∈ RN is the solution to the following linear system
Du :=d∑
α=1
d∑β=1
Bα,βM−1Cα,βu = f.
Remarks
The matrix D is not sparse
Mass lumping only works for P1 elements AND in this case onlygives a reasonable solution U for very simple A
Notice D is the sum of Schur complements
We can create a block matrix to exploit this
Discretisation Solution of the system Numerical experiments Further applications
The system is hard to solve
Linear system
U = Φᵀu, where u ∈ RN is the solution to the following linear system
Du :=d∑
α=1
d∑β=1
Bα,βM−1Cα,βu = f.
Remarks
The matrix D is not sparse
Mass lumping only works for P1 elements AND in this case onlygives a reasonable solution U for very simple A
Notice D is the sum of Schur complements
We can create a block matrix to exploit this
Discretisation Solution of the system Numerical experiments Further applications
Block system
E =
M 0 · · · 0 0 −C1,1
0 M · · · 0 0 −C1,2
......
. . ....
......
0 0 · · · M 0 −Cd,d−1
0 0 . . . 0 M −Cd,d
B1,1 B1,2 . . . Bd,d−1 Bd,d 0
,
v = (h1,1,h1,2, . . . ,hd,d−1,hd,d ,u)ᵀ,
h = (0, 0 . . . , 0, 0, f)ᵀ.
Equivalence of systems
Then solving the system Du = f is equivalent to solving
Ev = h.
for u.
Discretisation Solution of the system Numerical experiments Further applications
Block system
E =
M 0 · · · 0 0 −C1,1
0 M · · · 0 0 −C1,2
......
. . ....
......
0 0 · · · M 0 −Cd,d−1
0 0 . . . 0 M −Cd,d
B1,1 B1,2 . . . Bd,d−1 Bd,d 0
,
v = (h1,1,h1,2, . . . ,hd,d−1,hd,d ,u)ᵀ,
h = (0, 0 . . . , 0, 0, f)ᵀ.
Equivalence of systems
Then solving the system Du = f is equivalent to solving
Ev = h.
for u.
Discretisation Solution of the system Numerical experiments Further applications
structure of the block matrix
the discretisation presented nothing but:
Find U ∈ V such that
〈H[U],Φ〉 = −〈∇U ⊗∇Φ〉+ 〈∇U ⊗ n Φ〉∂Ω
∀ Φ ∈ V
⟨A:H[U], Φ
⟩=
⟨f , Φ
⟩∀ Φ ∈ V.
M 0 · · · 0 0 −C1,1
0 M · · · 0 0 −C1,2
......
. . ....
......
0 0 · · · M 0 −Cd,d−1
0 0 . . . 0 M −Cd,d
B1,1 B1,2 . . . Bd,d−1 Bd,d 0
h1,1
h1,2
...hd,d−1
hd,d
u
=
00...00f
.
Discretisation Solution of the system Numerical experiments Further applications
structure of the block matrix
the discretisation presented nothing but:
Find U ∈ V such that
〈H[U],Φ〉 = −〈∇U ⊗∇Φ〉+ 〈∇U ⊗ n Φ〉∂Ω
∀ Φ ∈ V
⟨A:H[U], Φ
⟩=
⟨f , Φ
⟩∀ Φ ∈ V.
M 0 · · · 0 0 −C1,1
0 M · · · 0 0 −C1,2
......
. . ....
......
0 0 · · · M 0 −Cd,d−1
0 0 . . . 0 M −Cd,d
B1,1 B1,2 . . . Bd,d−1 Bd,d 0
h1,1
h1,2
...hd,d−1
hd,d
u
=
00...00f
.
Discretisation Solution of the system Numerical experiments Further applications
A Linear PDE in NDform
Operator choice - heavily oscillating
A =
[1 00 a(x)
]
a(x) = sin
(1
|x1|+ |x2|+ 10−15
)
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
Discretisation Solution of the system Numerical experiments Further applications
A Linear PDE in NDform
Operator choice - heavily oscillating
A =
[1 00 a(x)
]
a(x) = sin
(1
|x1|+ |x2|+ 10−15
)
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
Discretisation Solution of the system Numerical experiments Further applications
Figure: Choosing f appropriately such that u(x) = exp (−10 |x|2).
102 103 10410−5
10−4
10−3
10−2
10−1
100
101
dim V
||u−u
h|| X
EOC = 1.6815
EOC = 0.94816
EOC = 2.0751
EOC = 0.96833
EOC = 2.0465
EOC = 1.0129
EOC = 2.0345
EOC = 1.0149
EOC = 2.02
EOC = 1.0094
EOC = 2.0107
EOC = 1.0052
X = L2
X = H1
Discretisation Solution of the system Numerical experiments Further applications
Another Linear PDE in NDform
Operator choice
A =
[1 00 a(x)
]
a(x) :=(arctan
(5000(|x|2 − 1)
)+ 2
).
Discretisation Solution of the system Numerical experiments Further applications
Another Linear PDE in NDform
Operator choice
A =
[1 00 a(x)
]a(x) :=
(arctan
(5000(|x|2 − 1)
)+ 2
).
Discretisation Solution of the system Numerical experiments Further applications
Figure: Choosing f appropriately such that u(x) = sin (πx1) sin (πx2).
102 103 10410−4
10−3
10−2
10−1
100
101
dim V
||u−u
h|| X
EOC = 1.8547
EOC = 0.91495
EOC = 2.0811
EOC = 1.0384
EOC = 2.069
EOC = 1.0339
EOC = 2.0402
EOC = 1.02
EOC = 2.0214
EOC = 1.0107
EOC = 2.011
EOC = 1.0055
X = L2
X = H1
Discretisation Solution of the system Numerical experiments Further applications
The same Linear PDE in NDform
Figure: On the left we present the maximum error of the standard FE-solution.Notice the oscillations apparant on the unit circle. On the right we show themaximum error of the NDFE-solution
Discretisation Solution of the system Numerical experiments Further applications
Fully nonlinear PDEs
Model problem
Given f ∈ L2(Ω), find u ∈ H2(Ω) ∩ H10(Ω) such that
N [u] = F (D2u)− f = 0
Newton’s method
Given u0 for each n ∈ N find un+1 such that⟨N ′ [un] | un+1 − un
⟩= −N [un]
〈N ′ [u] | v〉 = limε→0
N [u + εv ]−N [u]
ε
= limε→0
F (D2u + εD2v)−F (D2u)
ε
= limε→0
F ′(D2u) : D2v + O(ε).
Discretisation Solution of the system Numerical experiments Further applications
Fully nonlinear PDEs
Model problem
Given f ∈ L2(Ω), find u ∈ H2(Ω) ∩ H10(Ω) such that
N [u] = F (D2u)− f = 0
Newton’s method
Given u0 for each n ∈ N find un+1 such that⟨N ′ [un] | un+1 − un
⟩= −N [un]
〈N ′ [u] | v〉 = limε→0
N [u + εv ]−N [u]
ε
= limε→0
F (D2u + εD2v)−F (D2u)
ε
= limε→0
F ′(D2u) : D2v + O(ε).
Discretisation Solution of the system Numerical experiments Further applications
Fully nonlinear PDEs
Model problem
Given f ∈ L2(Ω), find u ∈ H2(Ω) ∩ H10(Ω) such that
N [u] = F (D2u)− f = 0
Newton’s method
Given u0 for each n ∈ N find un+1 such that⟨N ′ [un] | un+1 − un
⟩= −N [un]
〈N ′ [u] | v〉 = limε→0
N [u + εv ]−N [u]
ε
= limε→0
F (D2u + εD2v)−F (D2u)
ε
= limε→0
F ′(D2u) : D2v + O(ε).
Discretisation Solution of the system Numerical experiments Further applications
Fully nonlinear PDEs
Model problem
Given f ∈ L2(Ω), find u ∈ H2(Ω) ∩ H10(Ω) such that
N [u] = F (D2u)− f = 0
Newton’s method
Given u0 for each n ∈ N find un+1 such that⟨N ′ [un] | un+1 − un
⟩= −N [un]
〈N ′ [u] | v〉 = limε→0
N [u + εv ]−N [u]
ε
= limε→0
F (D2u + εD2v)−F (D2u)
ε
= limε→0
F ′(D2u) : D2v + O(ε).
Discretisation Solution of the system Numerical experiments Further applications
Discretisation
VERY roughly
Given U0 = Λu0 find Un+1 such that
F ′(H[Un]):H[Un+1 − Un] = f −F (H[Un])
H[Un] is given in the solution of the previous iterate!
M 0 · · · 0 0 −C1,1
0 M · · · 0 0 −C1,2
......
. . ....
......
0 0 · · · M 0 −Cd,d−1
0 0 . . . 0 M −Cd,d
B1,1n−1 B1,2
n−1 . . . Bd,d−1n−1 Bd,d
n−1 0
hn1,1
hn1,2...
hnd,d−1
hnd,d
un
=
00...00f
.
Discretisation Solution of the system Numerical experiments Further applications
Discretisation
VERY roughly
Given U0 = Λu0 find Un+1 such that
F ′(H[Un]):H[Un+1 − Un] = f −F (H[Un])
H[Un] is given in the solution of the previous iterate!
M 0 · · · 0 0 −C1,1
0 M · · · 0 0 −C1,2
......
. . ....
......
0 0 · · · M 0 −Cd,d−1
0 0 . . . 0 M −Cd,d
B1,1n−1 B1,2
n−1 . . . Bd,d−1n−1 Bd,d
n−1 0
hn1,1
hn1,2...
hnd,d−1
hnd,d
un
=
00...00f
.
Discretisation Solution of the system Numerical experiments Further applications
Discretisation
VERY roughly
Given U0 = Λu0 find Un+1 such that
F ′(H[Un]):H[Un+1 − Un] = f −F (H[Un])
H[Un] is given in the solution of the previous iterate!
M 0 · · · 0 0 −C1,1
0 M · · · 0 0 −C1,2
......
. . ....
......
0 0 · · · M 0 −Cd,d−1
0 0 . . . 0 M −Cd,d
B1,1n−1 B1,2
n−1 . . . Bd,d−1n−1 Bd,d
n−1 0
hn1,1
hn1,2...
hnd,d−1
hnd,d
un
=
00...00f
.
Saves us postprocessing another one! [Vallet et al., 2007][Ovall, 2007]
Discretisation Solution of the system Numerical experiments Further applications
Discretisation
VERY roughly
Given U0 = Λu0 find Un+1 such that
F ′(H[Un]):H[Un+1 − Un] = f −F (H[Un])
H[Un] is given in the solution of the previous iterate!
M 0 · · · 0 0 −C1,1
0 M · · · 0 0 −C1,2
......
. . ....
......
0 0 · · · M 0 −Cd,d−1
0 0 . . . 0 M −Cd,d
B1,1n−1 B1,2
n−1 . . . Bd,d−1n−1 Bd,d
n−1 0
hn1,1
hn1,2...
hnd,d−1
hnd,d
un
=
00...00f
.
Saves us postprocessing another one! [Vallet et al., 2007][Ovall, 2007]
Discretisation Solution of the system Numerical experiments Further applications
Bibliography I
Aguilera, N. E. and Morin, P. (2008).On convex functions and the finite element method.online preprint arXiv:0804.1780v1, arXiv.org.
Ovall, J. (2007).Function, gradient and hessian recovery using quadratic edge-bumpfunctions.J. Sci. Comput., 45(3):1064–1080.
Vallet, M.-G., Manole, C.-M., Dompierre, J., Dufour, S., andGuibault, F. (2007).Numerical comparison of some Hessian recovery techniques.Internat. J. Numer. Methods Engrg., 72(8):987–1007.