Car Act A Bat A
Car Act A Bat A
Car Act A Bat A
requiring no quadrature
Olivier Pironneau
LJLL, Universite Pierre et Marie Curie, Place Jussieu, Paris F-75005
E-mail: pironneau@ann.jussieu.fr
in honor of M. Tabata for his sixtieth birthday
Abstract
The characteristic methods are known to be very ecient for
convection-diusion problems including the Navier-Stokes equations.
Convergence is established when the integrals are evaluated exactly,
otherwise there are even cases where divergence has been shown to
happen. The family of methods studied here applies Lagrangian con-
vection to the gradients and the function as in Yabe[?]; the method
does not require an explicit knowledge of the equation of the gra-
dients and can be applied whenever the gradients of the convection
velocity are known numerically. We show that converge can be sec-
ond order in space or more. Applications are given for the rotating
bell problem.
Keywords Finite Element Method, Characteristic-Galerkin, convection-
diusion equation.
1 Introduction
Let u be solution of the convection-diusion-dissipation equation in a bounded
open set over a time interval (0, T)
t
u +a u (u) +bu = f, u(0) = u
0
in , t < T (1)
with a smooth positive diusion , smooth convection velocity a, dissipa-
tion coecient b and source f. For simplicity we assume a, b independ of t,
constant, and with homogenous Neumann boundary conditions,
n
u = 0
on (0, T).
1
To obtain a second order method in time when f = 0 one may use Strangs
operator splitting as in Beale-Majda[1] and compute
u
m+1
= D
t/2
oC
t
oD
t/2
u
m
where D
u
0
is the solutions at time of
t
u (u) +bu = 0, u(0) = u
0
, (2)
and C
u
0
is the solution of
t
u +a u = 0, u(0) = u
0
(3)
As this last equation says also that the total derivative of u((t), t) along
the characteristic curve (t) is zero, a discretization is u
m+1
(x) = u
m
(X(x))
where X(x) is (t
m
) when (t
m+1
) = x.
Alternatively one may use
1
t
(u
m+1
u
m+1
) (u
m+1
) +bu
m+1
= 0, u(0) = u
0
,
with u
m+1
(x) = u
m
(X(x)) where X(x) = x ta(x
t
2
a(x)) (4)
The scheme is O(t
2
) + O(Ct) but C tends to zero with + b. In a
large class of applications and b are small and so in practice it might be
enough. Still, the diculty then is to nd a second order nite element
approximation of this scheme, stable even if = 0.
Many research papers deal with this problem (see [5] and the references
therein and more recently [3] [2] [6]) . The usual approach is to write the
scheme in weak form and discretise by the nite element method. However
all proofs require exact quadrature for the term containing u
m+1
which
in turn implies that the nite element mesh and the convected mesh are
intersected. Since this is too costly, we propose here an alternative based
on an idea due to Yabe[?] which has been shown very accurate numerically
but which has not yet been proven to work theoretically.
Consider (3) in (0, T) with a, u
0
smooth a = 0 and a n = 0 on the
boundary. The semi-analytical solution of this problem can be written in
terms of the Lagrangian coordinate (t), solution of
(t) = a((t)), (t
0
) = x
0
(5)
where t
0
and x
0
are arbitrary time and point. The solution is
u((t), t) = u(x
0
, t
0
),
a formula which is based on the observation that d
t
u((t), t) = 0. Thus
with a nite dierence of the time derivatives and by choosing t
0
= t
m+1
and x
0
= x we build the following second order scheme:
u
m+1
(x) = u
m
(X(x)) with X(x) = x a(x a(x)
t
2
)t (6)
We recall the denition of an m
th
order scheme:
2
Denition If u(, ) denotes the exact solution of the partial dierential
equation and if u
m
() denotes the numerical solution at time t
m
by some
numerical scheme, if there exists C such that
|u
m
u(, t
m
)|
Ct
p
then the scheme is said to O(t
p
), or p-order accurate.
Lemma 1.1 Scheme (6) is second order accurate
Proof
To check the consistency one replaces u
m
in (6) by u(x, t
m
), the exact
solution at time t
m
and performs a Taylor expansion of the right hand
side. This shows that the scheme is second order consistent; since stability
is obvious from (6), by the von Neumann lemma the scheme is second order
accurate.
1.1 Standard nite element discretization
The simplest discretization in space is to appy the scheme at the center of
gravity q
k
c
of each triangle T
k
:
u
m+1
h
(x) = u
m
h
(X(q
k
c
)) x T
k
k (7)
Proposition 1.2 Scheme (7) is O(
h
t
+ t
2
) and best at t = h
1/3
in the
sense that for some constant C independent of h and t
|u
m
h
u(, t
m
)|
|u
m
h
u
m
|
+ |u
m
u(, t
m
)| C(
h
t
+t
2
) (8)
Proof
Applying a Taylor expansion to u
m+1
gives
[u
m+1
h
(x) u
m+1
(x)[ = [u
m
h
(X(q
k
c
)) u
m
(X(q
k
c
)) + u
m+1
()(x q
k
c
)[
|u
m
h
u
m
|
+ |u|
h |u
0
h
u
0
|
+ |u|
hT
t
(9)
Hence (8) holds
The same argument works for a P
1
approximation and convection at
the vertices
Proposition 1.3 Let
i
3
1
be the barycentric coordinates of x T
k
(see
(22)). The scheme
u
m+1
h
(x) =
i=1,2,3
i
u
m
h
(X(q
i
)) x T
k
k (10)
3
is O(
h
2
t
+t
2
) and best at t = h
2/3
The proof is also given in Lemma 4.1. The fundamental remark for this
paper is that the argument does not work for P
2
element, however by
applying it to the gradients we gain on order of convergence in space.
2 Convection of the gradients
To obtain a second order scheme in space for (3) we intend to convect the
function u and its gradients v(x, t) =
x
u(x, t). For clarity we consider
only the case b = f = 0. Notice that v satises a vector equation like (30)
with = 0 and b = a:
t
v +av + (a)v = 0, v(0) = u
0
(11)
So in principle a characteristic nite element scheme based on an analytic
formula for (11) could be used; however our numerical tests indicate that
it is better to dierentiate (6) rather than to use (11). This leads to:
v
m+1
(x) = X(x)v
m
(X(x)) (12)
Lemma 2.1 The solution of (11) satises
v(x, t
m+1
) := u(x, t
m+1
) = X(x)v(X(x), t
m
) +O(t
3
) (13)
so Scheme (12) is second order accurate because
|v
m+1
v(, t
m+1
)|
(1 +ct)|v
m
v(, t
m
)|
+Ct
3
(14)
Proof
v(X(x), t
m
) = [v ta(x a
t
2
)v +
t
2
2
v
aa][
x,t
m +O(t
3
)
and
X(x) = I a(x)t +
t
2
2
((a
)a + (a)
2
)(x) +O(t
3
) (15)
Therefore placing the exact solution into the scheme gives
v(x, t
m+1
) = (I at +
t
2
2
((a
)a + (a)
2
))
v tav +
t
2
2
aav +
t
2
2
v
aa
[
x,t
m +O(t
3
)
= v(x, t
m
) t(av +av)[
x,t
m
4
+
t
2
2
(a
av + (a)
2
v + 2aav
+aav +v
aa)[
x,t
m +O(t
3
)
= [v +t
t
v +
t
2
2
tt
v][
x,t
m +O(t
3
)
which is correct because by (3) for v:
tt
v = a(av) +v
aa +aa
v + a(av) + (a)
2
v
Finally (14) is found by subtracting (13) from (12).
3 Discretisation with P1 discontinuous ele-
ments
To solve numerically (3) in (0, T) we use u
m
, X dened in (6). As
mentionned earlier this time scheme is O(t
2
) .
Scheme (6) is discretized in space by a discontinuous piecewise linear
approximation on a triangulation T :
u
m+1
h
(x) = X(q
c
)u
m
h
(X(q
c
))(x q
c
) +u
m
h
(X(q
c
)) (16)
for all x T the triangles of the triangulation; q
c
denotes the center of
gravity of T. Notice that this is equivalent to saying that u
m+1
is recon-
structed from its gradient and its value at q
c
and that these are obtained
by the method of characteristics from the values at the previous time step.
Proposition 3.1 When h Ct, the method is L
C
h
t
+ |u
0
h
|
.
Proof
By construction u
m+1
h
(x) = X(q
c
)u
m
h
(X(q
c
)) for all x T with center
q
c
; hence by (15)
|u
m+1
h
|
(1 +ct)|u
m
h
|
(1 +ct)
T
t
|u
0
h
|
.
Similarly [u
m+1
h
(x)[ |u
m
h
|
[x q
c
[ + |u
m
h
|
so
[u
m+1
h
[
h(1 +ct)
T
t
|u
0
h
|
+ |u
m
h
|
C(
h
2
t
2
+t
2
)
hence optimal at t = O(h
1
2
).
Proof
Let v
m
= u
m
and v
m
h
= u
m
h
; then for some between x and q
c
[v
m+1
h
v
m+1
[(x) = [v
m+1
h
(q
c
) v
m+1
(q
c
) u
m+1
()(x q
c
)[
= [X(q
c
)(v
m
h
v
m
)(X(q
c
)) +O(|u
h)
(1 +ct)|v
m
h
v
m
|
+C|u
h (17)
Hence
|u
m
h
u
m
|
< C(h +
h
t
) (18)
Similarly, using the following Taylor expansion (which relies on the fact
that x and q
c
are in the same triangle)
u
m+1
(x) = u
m+1
(q
c
) + u
m+1
(q
c
)(x q
c
)
+
1
2
u
m+1
)(x q
c
)(x q
c
) (19)
leads to
[ u
m+1
h
u
m+1
[(x) = [u
m+1
h
(q
c
) u
m+1
(q
c
)
+(u
m+1
h
(q
c
) u
m+1
(q
c
))(x q
c
) +
1
2
[u
m+1
(
)(x q
c
)(x q
c
)[
|u
m
h
u
m
|
+ |u
m+1
h
u
m+1
|
h + |u
h
2
2
C
h
2
t
2
(20)
4 Discretisation with P2 discontinuous ele-
ments
Convection of the gradients The scheme (12) for v is discretized in
space by continuous nite elements of degree one on triangles:
v
m+1
h
(x) =
i=1,2,3
i
X(q
i
)v
m
h
(X(q
i
)) (21)
where q
i
are the vertices of the triangulation and
i
i=1,2,3
the barycen-
tric coordinates of x, i.e.
x =
i=1,2,3
i
q
i
i=1,2,3
i
= 1 (22)
6
Lemma 4.1 Let v
m
h
m
be given by scheme (21) and let u
m
m
be dened
by the time scheme (6), for (11). Then
|v
m+1
h
u
m+1
|
(1 +ct)(|v
m
h
u
m
|
+Ch
2
Proof
Dene the space error = v
m
h
v
m
, then
m+1
(x) = v
m+1
h
(x) v
m+1
(x) =
i=1,2,3
i
w
m
h
(q
i
) w
m
(x)
where w
m
(x) = X(x)v
m
(X(x)), w
m
h
(q
i
) = X(q
i
)v
m
h
(X(q
i
)).
Again using the fact that x, q
i
are in the same triangle, a Taylor expan-
sion gives
w
m
(q
i
) = w
m
(x) + (q
i
x) w
m
(x) +
1
2
(q
i
x)
T
w
m
(
i
)(q
i
x)
for some
i
. Hence
i=1,2,3
i
w
m
(q
i
) = w
m
(x) +
i=1,2,3
i
2
(q
i
x)
T
w
m
(
i
)(q
i
x)
Therefore, we have
|
m+1
|
max
k
[
i=1,2,3
i
(w
m
h
(q
i
) w
m
(q
i
))[
T
k
+sup
x,k
[
i=1,2,3
i
2
(q
i
x)
T
w
m
(
i
(x))(q
i
x)[
T
k
max
k
max
i,q
i
T
k
[X(q
i
)(v
m
(X(q
i
)) v
m
h
(X(q
i
)))[
T
k
+sup
x,k
[
i=1,2,3
i
2
(q
i
x)
T
w
m
(
i
(x))(q
i
x)[
T
k
(1 +ct)|
m
|
+C|v
h
2
2
(23)
where c and C are functions of |a|
and of |a
.
Remark 1 Note that we use explicitly the fact that the hat function
i
is
positive, and this is why this proof does not work for nite elements with
non-positive hat functions such as the P
2
element.
7
Convection of the function The approximate gradients v
m
h
, can be
computed on (0, T) independently of u but we need to be able to construct
at any time t
m
= mt an approximate value, u
m
h
of u(, t
m
), with the best
accuracy.
On each triangle the function u
h
which approximates the solution of (3)
is reconstructed from its approximate gradient v
m
h
and a value at one point,
say
k
, for instance the center of gravity, of each triangle T
k
. Hence at each
time step u
m
h
is a second order polynomial on each triangle, discontinuous
at the edges.
More precisely, v
m
h
is computed by (21) and being linear in x there
exists A R
22
such that, for all x T
k
v
m
h
(x) = A(x
k
) +v
m
h
(
k
) (24)
Then we compute u
m
h
by
u
m
h
=
1
4
(x
k
)
T
(A
m
k
+(A
m
k
)
T
)(x
k
) +v
m
h
(
k
)(x
k
)
+u
m1
h
(X(
k
)) (25)
Note that u
m
h
is never used and that v
m
h
,= u
m
h
.
Lemma 4.2 Equation (26) written at the 3 vertices has one and only one
solution A.
Proof
Let us choose a coordinate system where q
1
= (h
1
, h
2
)
T
, q
2
= (0, h
3
)
T
,
(q
3
= (0, 0)
T
; let b
i
j
= v
m
h
(q
i
)
j
v
m
h
(q
3
)
j
. Then the linear system for A is
a
11
h
1
+a
12
h
2
= b
1
1
a
21
h
1
+a
22
h
2
= b
1
2
a
12
h
3
= b
2
1
a
22
h
3
= b
2
2
(26)
The solution exists and is unique for all non degenerate triangles.
Lemma 4.3
|u
m
h
u
m
|
C
h
2
t
Proof
|u
m
h
u
m
| |u
m
h
v
m
h
| + |v
m
h
u
m
| (27)
Lemma 4.1 gives a bound for the last term on the right, so let us focus on
the rst term on the right. By construction
v
m
h
(x) = A
m
k
(x
k
) +v
m
h
(
k
)
8
=
1
2
(A
m
k
+ (A
m
k
)
T
)(x
k
) +v
m
h
(
k
) +
1
2
(A
m
k
(A
m
k
)
T
)(x
k
)
= u
m
h
(x) +
1
2
(A
m
k
(A
m
k
)
T
)(x
k
) (28)
Let u
m
h
be the P
2
interpolate of u
m
. Then [u
m
u
m
h
[ ch
2
and
u
m
h
(x) = B(x
k
) + u
m
h
(
k
)
for some 2 by 2 symmetric matrix B. Therefore
1
2
(A
m
k
(A
m
k
)
T
)(x
k
) =
1
2
((A
m
k
B) (A
m
k
B)
T
)(x
k
)
This is an expression which involves only the values of w(x) := v
m
h
(x)
u
m
h
(x) at the vertices.
By inspection of (26), there exists a constant C such that [A
m
k
B[
C|w|
C|v
m
h
u
m
h
|
Finally, replace u
m
h
by u
m
at the cost of a ch
2
to obtain in (27)
|u
m
h
u
m
|
(1 +C)|v
m
h
u
m
|
+Cch
2
which, by Lemma 4.1, is less than C
h
2
t
.
Theorem 4.4 The absolute error between the exact solution of (3) and
the one computed by convecting the gradients at the vertices and function
at the center of each triangle, i.e. (21,25), is of order 3/2 in the sense that
whenever u and a are twice continuously dierentiable in space and time.
|u
m
h
u(, t
m
)|
C(
h
3
t
2
+t
2
)
which is optimal at t = h
3/4
.
Proof
Let u
m
be the solution of the scheme in time (6). A Taylor expansion shows
that, for some T
k
,
(u
m+1
h
u
m+1
)(x) = (u
m+1
h
u
m+1
)(
k
)
+ (u
m+1
h
u
m+1
)() (x
k
)
= (u
m
h
u
m
)(X(
k
)) + (u
m+1
h
u
m+1
)() (x
k
)(29)
9
The rst term on the right is bounded by |u
m
h
u
m
|
(1 +ct)|u
m
h
u
m
|
+C
h
3
t
and the nal result stems from the bound |u
m
u(, t
m
)|
Ct
2
.
Remark 2 When f ,= 0 it suces to add on the right hand side (f(q
i
) +
f(X(q
i
))/2. When b ,= 0 v and u are coupled so it needs some eort to
adapt the proof but it can be done. Notice also that there are elds for im-
provement, for instance by choosing
k
to be the points which convects into
the local max or min of u on each T
k
the method becomes non-oscillatory.
Notice also that it would have made more sense to replace v
m
h
by u
m
h
once
u
m
h
is computed, but the proof of convergence with such change is open.
By convecting u and u and each component of u
2x
1
y
1
y
2
1
2x
1
0 1 0
x
2
1
2x
1
y
1
0 2y
1
0 1
2x
2
y
2
y
2
2
2x
2
0 1 0
x
2
2
2x
2
y
2
0 2y
2
0 1
2x
3
y
3
y
2
3
2x
3
0 1 0
x
2
3
2x
3
y
3
0 2y
3
0 1
2x
4
y
4
y
2
4
2x
4
0 1 0
x
2
4
2x
4
y
4
0 2y
4
0 1
a
b
c
d
f
g
u
h
(q
1
)
u
h
(q
2
)
u
h
(q
3
)
u
h
(q
4
)
(30)
We conjecture that a similar proof as for the triangular elements may be
contructed to show that the method is O(t
2
+
h
3
t
2
). If such is the case
then the method is optimal at t = h
3/4
.
10
6 The convection-diusion equation
When f = b = 0 the fully discretized scheme is
1
t
(u
m+1
h
u
m+1
h
, w
h
) +(u
m+1
, w
h
) = 0 (31)
for all w
h
V
2
h
, the space of P
2
piecewise quadratic functions. Here to
avoid quadrature on the term (u
m
h
oX, w
h
) (the usual characteristic nite
element method) we replaced u
m
h
oX by u
m+1
h
computed by one time step
of the algorithm of the previous section with u
m
h
as initial condition.
Proposition 6.1 Let t
M
1
is the solution of
u
m+1
u
m
oX tu
m+1
= 0,
u
m+1
n
[
= 0 (33)
(this corresponds to (23) with L
2
norms instead of L
t). Let
h
be the projection operator on V
2
h
with the scalar product (, )+t(, ). Then with w
h
= u
m+1
h
h
u
m+1
in (31):
|u
m+1
h
h
u
m+1
|
2
= ( u
m+1
h
u
m
oX, u
m+1
h
h
u
m+1
)
| u
m+1
h
u
m
oX||u
m+1
h
h
u
m+1
|
where | |
| |
2
+t| |
2
. Furthermore
|u
m
h
u
m
| +Ch|u
m
h
u
m
| (1 +
C
2
h
2
t
)
1
2
|u
m
h
u
m
|
C(h
3
+
th
2
), so the
result follows.
7 Numerical Tests
In all cases here f = 0. The rotating bell test case [5] has a = (x
2
, x
1
)
T
and u
0
= e
r|xx0|
2
. Here the domain is truncated to the unit disk
(the unit square when quadrilateral elements are used) and r = 20, x
0
=
11
(0.35, 0.35)
T
. At t = 2, u = u
0
so the analytical solution is known when
= 0.
To test the case ,= 0 we chose a problem with an analytical solution
u
a
= exp(
r
t+1
[x
[
2
) with x
= x x
0
(t), where x
0
(t) rotates as in the no
diusion case; it corresponds to = 0.08 and a time dependent dissipation
term b = 1/(t + 1); the wrong sign is not a problem because the bilinear
form is still coercive; boundary conditions are needed in this case and we
chose u = u
a
on .
Numerical tests with discontinuous P1 elements Resuts for both
problems, = 0 and ,= 0, are on gure 1. The triangulation has 5300
vertices and 50 time steps are used to cover the full turn. To study the
error decay as a function of h we use the automatic mesh generator of
freefem++ where the number of vertices is controlled by the number M of
boundary points. By taking t = c/
h).
Scheme (16) ( = 0) is somewhat disappointing: to observe an error
decay in O(h) we need to take c very small, leading to 300 time steps for
the triangulation with 5300 vertices ; for larger time steps the results are
more like O(