On the reservoir technique convergence for nonlinear hyperbolic conservation laws – Part I

31
On the reservoir technique convergence - Part I St´ ephane Labb´ e * , Emmanuel Lorin September 8, 2006 Abstract This paper is devoted to the convergence of the Colella-Glaz scheme coupled with the reservoir technique for hyperbolic equations and linear hyperbolic systems of con- servation laws [2],[1]. In order to prove the convergence we use in particular, the formalism introduced by Labb´ e in [13]. 1 Introduction This paper is devoted to the convergence of the reservoir technique introduced in [2]. The reservoir technique allows to avoid or to reduce drastically the numerical diffusion for hy- perbolic systems of conservation laws. This technique is based on the fact that for a scalar linear advection equation a flux scheme [8] is stable and non-diffusive at CFL (Courant- Friedrich-Lewy ondition) equal to 1. Let us indeed consider the advection problem, with a> 0: t u + a∂ x u =0,x R, t 0, and a conservative explicit upwind scheme n 0, j Z,u n+1 j = u n j - aΔt/Δx(u n j - u n j -1 ) approaching this equation. It is well known that this scheme is stable under the CFL criterion: λ = a Δt Δx ]0, 1], and that tak- ing Δt x/a (λ = 1) leads to u n+1 j = u n j -1 which describes the exact propagation of the solution. However taking Δt x/a is very restrictive (if Δx or a is not constant in space for example) and we must constraint our scheme to behave as if λ = 1 although the time step is smaller than Δt * x/a in general. This is precisely the goal of the reser- voir scheme. To understand the principle we consider the case where Δt t * /k. The idea consists in waiting k time steps before updating the solution. More generally, let us take several different time steps Δt i (not necessarely equal), we introduce R j the reservoir associated to the j th cell (initialized to 0) and c j a positive real CFL counter (also initial- ized to 0). At each time step, we fill up R j with the local current numerical flux difference R j R j - aΔt i /Δx(u j - u j -1 ) and increment the CFL counter c j c j + aΔt i /Δx. Once c j reaches 1, we update the solution and reinitialize both the reservoir and the counter. u j u j + R j ,c j 0,R j 0. * epartement de Math´ ematiques, Universit´ e d’Orsay, 91405 Orsay (France) Centre de Recherche en Math´ ematiques, Montr´ eal (Canada)

Transcript of On the reservoir technique convergence for nonlinear hyperbolic conservation laws – Part I

On the reservoir technique convergence - Part I

Stephane Labbe !, Emmanuel Lorin †

September 8, 2006

Abstract

This paper is devoted to the convergence of the Colella-Glaz scheme coupled withthe reservoir technique for hyperbolic equations and linear hyperbolic systems of con-servation laws [2],[1]. In order to prove the convergence we use in particular, theformalism introduced by Labbe in [13].

1 Introduction

This paper is devoted to the convergence of the reservoir technique introduced in [2]. Thereservoir technique allows to avoid or to reduce drastically the numerical di!usion for hy-perbolic systems of conservation laws. This technique is based on the fact that for a scalarlinear advection equation a flux scheme [8] is stable and non-di!usive at CFL (Courant-Friedrich-Lewy ondition) equal to 1. Let us indeed consider the advection problem, witha > 0: ∂tu + a∂xu = 0, x " R, t ! 0, and a conservative explicit upwind scheme#n ! 0, #j " Z, un+1

j = unj $ a"t/"x(un

j $ unj!1) approaching this equation. It is well

known that this scheme is stable under the CFL criterion: λ = a !t!x "]0, 1], and that tak-

ing "t = "x/a (λ = 1) leads to un+1j = un

j!1 which describes the exact propagation ofthe solution. However taking "t = "x/a is very restrictive (if "x or a is not constant inspace for example) and we must constraint our scheme to behave as if λ = 1 although thetime step is smaller than "t" = "x/a in general. This is precisely the goal of the reser-voir scheme. To understand the principle we consider the case where "t = "t"/k. Theidea consists in waiting k time steps before updating the solution. More generally, let ustake several di!erent time steps "ti (not necessarely equal), we introduce Rj the reservoir

associated to the jth cell (initialized to 0) and cj a positive real CFL counter (also initial-ized to 0). At each time step, we fill up Rj with the local current numerical flux di!erenceRj % Rj $ a"ti/"x(uj $ uj!1) and increment the CFL counter cj % cj + a"ti/"x. Oncecj reaches 1, we update the solution and reinitialize both the reservoir and the counter.

uj % uj + Rj , cj % 0, Rj % 0.

!Departement de Mathematiques, Universite d’Orsay, 91405 Orsay (France)†Centre de Recherche en Mathematiques, Montreal (Canada)

In that advection case we recover the CFL= 1. Indeed the reservoir technique for one-dimensional linear equation behaves as :

un+1j = un

j $ am!

i=1

"ti"x

(unj $ un

j!1) = unj!1.

In this formula n denotes the real time step and i denotes the local iteration between twotime steps such that: a

"i=mi=1 "ti/"x = 1.

Extending this idea to hyperbolic systems of conservation laws we only update the numericalsolution for each discretization point when the local CFL counter reaches 1. More precisely,at each space point and for each characteristic field we attach a counter that measures thelocal CFL number and a vectorial reservoir that stores the numerical flux. This techniquehas been succesfully applied to nonlinear hyperbolic systems of conservation laws [2], [3] andis currently developped for multidimensional equations, see [4]. The reservoir technique isnot linked to a particular scheme but is applicable to many kind of flux schemes [8] withapproximate Riemann solvers as Roe [15], VFFC [9], Colella-Glaz [6] or with exact Riemannsolvers as Godunov [12]. Nevertheless, it is coupled with the Colella-Glaz scheme [6] that thereservoir technique gives the most impressive results [3]. Indeed, the results obtained withthe Colella-Glaz scheme are excellent compared with higher order classical schemes as ENO[16], WAF [5] for example, as we can see in [14]. The Colella-Glaz scheme has been introducedby C. Colella and G. Glaz in 1983 [6]. This scheme is an Euler equations solver, but can beextended to many other nonlinear hyperbolic systems. For one-dimensional hyperbolic sys-tems it is well known that solving a Riemann problem only three kinds of waves can appear:rarefaction waves, shock waves and contact discontinuities. Considering a one-dimensionalsystem of conservation laws in Rm, the Colella-Glaz scheme will first build m shock wavesconsidering that each wave is a shock wave. Even if some of these shocks are non-entropicthe idea is to create these waves without any numerical di!usion. It is indeed well knownthat the maximum amount of numerical di!usion appears at the creation of shock waves. Inorder to create these waves Colella-Glaz scheme consists first in solving m Rankine-Hugoniotequations. After these waves creation Colella-Glaz scheme precises if these waves are shockwaves or rarefaction waves. In order to do this it is su#cient to compute the speed beforeand after the shock wave applying the Lax-shock entropy conditions. If the speed before isfaster than the speed after the shock, the entropy wave is e!ectivelly a shock wave and welet it be. In opposite, if the speed is faster after than before the shock Colella-Glaz give alittle amount of numerical di!usion in order to destabilize the non-entropic shock wave intoan entropic rarefaction wave. Even if this idea is very general it has been especially appliedto Euler equations where this problem has been rigorously solved. The main advantage ofthe reservoir technique coupled with Colella-Glaz is to then compute accurate evaluation ofthe solutions without adding any reconstructed gradients and slope limiters [11].In this paper we propose to prove the convergence of the reservoir technique coupled withthe Colella and Glaz scheme and with flux schemes [8]. In fact, we also extend some partsof this proof to multidimensional flux schemes coupled with the reservoir techniques. Thewhole di#culty for multidimensional schemes is reported to the convergence of a perturba-tion operator will not be discussed in details.

2

In order to prove the convergence of the reservoir technique we will introduce the formalismintroduced by Labbe in [13]. It gives a rigorous and a clear framework to define the consis-tency, the stability and the convergence of numerical methods. Indeed this formalism basedon categories, consider very large classes of numerical methods as finite volumes, finite dif-ferences, finite elements or spectral methods. The idea is to use precisely su#ciently generalobjects and spaces in order to bring the convergence of any numerical method to the proofof relatively simple properties. The main di#culty is then to introduce the correct discreteoperators and discrete spaces.The paper is organized as follows. In section 2. we give some generalities on the convergenceof finite volume schemes and give an abstract framework in order to simplify the proofs ofconvergence. Then in section 3. we prove the convergence of the reservoir technique cou-pled with flux schemes for nonlinear hyperbolic equations of conservation laws for particularinitial data and its TVD behavior. The case of linear systems is then studied in section 4.Finally in the last concluding section we briefly present the reservoir technique for hyper-bolic systems of conservation laws. The proof of convergence for this kind of systems will bepresented in a forthcoming paper.

2 On the convergence of a finite volume scheme cou-

pled with the reservoir technique

In this part we consider finite volume schemes approximating multi-dimensional hyperbolicsystems of conservation laws. We introduce some general concepts allowing to simplify thestudy of convergence of discrete operators. To this end we propose to follow the mainprinciples of [13]

2.1 Notations and assumptions

In this section we will present all the elements and framework necessary the prove theconvergence of the scheme. The building of this elements is fully explained in [13].Let us consider, the semi-group (S(t))t#(R)+ of domain W . In the following we focus on thecase W = SBV ($) where $ is an open subset of R. Let us consider Wh a family of finitedimensional vector spaces indexed by h, where h denotes a decreasing and vanishing sequelof strictly positive real numbers. Objects Ah will designates sequels indexed by the elementsof the sequel h. We suppose that, for all n, p in N such that n < p one has Whn & Whp;furthermore, we set for all n in N, the applications Phn and P !

hnsuch that

(i) #u " Whn, Phn(u) " L(W, Whn), P !hn

(u) " L(Whn , W ), where L(A, B) designates thelinear continuous applications from A onto B.

(ii) Ph and P !h are uniformly bounded families of operators.

(iii) Phn ' P !hn

= IdWhn.

3

(iv) #u " W , limn$%

(u $ P !hn

' Phn(u)(W = 0.

We will denote by M(W, Wh) a cell of discretization built on sequels Ph and P !h . Then, for

every T in R+, we set k = (ki)i#{0,...,N} a sequel of strictly positive real numbers whose sum isequal to T . Hence, we set, for every i in {0, ..., N} and every n in N: Si,hn = Phn 'S(ki)'P !

hn.

A discretization of S(T ) will be Shn(T ) defined by:

Shn(T ) = )i#{0,...,N}Si,hn.

Eventually, we will introduce approximations of this discretization in order take into accountthat an exact computation of S(ki) is not always possible.

With the assumptions done above on the behavior of the cell of discretization M(W, Wh),the convergence of the operator Shn(T ) to S(T ) when n goes to infinity is guaranteed by thecontinuity of the elements of the family (S(t))t>0.

In the remainder of the section, we will consider W = SBV ($). For every n in N, we set$hn = (ωi)i#In, family of connected open subsets of $ such that:

#(i, j) " In, i *= j, ωi + ωj = ,,

and$ =

#

i#In

ωi.

Then we choose particular families Ph and P !h defined for every n in N, by:

#u " W, Phn(u) =!

i#In

1

|ωi|

$

"i

u(x)dx,

and P !hn

in the canonic injection of Whn into L2($).

For the discretization class C there is consistency, with the equation if and only if for allu " L2($) :

limn$+%

(P "N,hn

' Phn ' P0,hn(u) $ P(u)(0," = 0,

with

Phn = )l=Nl=1 Skl,hn = PN,hn ' ()l=N

l=1 (Skl' idkl!1,hn)) ' P "

0,hn, P = ST = )l=N

l=1 Skl.

with

Pl,hn(u)(x, t) =!

l

1

kl

$ tl+1

tl

%

!

i#I

%

1

|hn|

$

"i

u(x&, t&)dx&

&

ξ"i(x)

&

dt&ζ[tl,tl+1](t) = (uij)j#I,i#[1,N ].

4

with

ξi(x) =

'

1, if x " ωi,0, else.

and

ζl(t) =

'

1, if t " [tl, tl+1],0, else.

The relevement in space is simply defined at time t = ti by :

P "l,hn

(v) = v, #v " Wl,hn := {w " W xl,hn

, w#[tl,tl+1](t) " P 0(R)}.

With the previous definitions :

limh$0

(idhu0 $ u0(L2(") = 0.

and for all i " [1, N ] there exists Cki> 0 such that :

(Skiu(L2(") " (1 + Cki

ki)(u(L2(").

#(u, v) " L2($), -C &ki

/(Skiu $ Ski

v(L2(")

2.2 Generalities on convergence for multi-dimensional finite vol-

ume schemes

We denote by ST the composition )Ni=1Ph ' Ski

' P "h with (Ski

)i#{1,...,N} the exact Riemannsolvers. Similarly, we denote by ST,h = )N

i=1Ph ' Ski'P "

h with (Ski)i#{1,...,N} the approximate

Riemann solvers. The first point to solve is the convergence to zero of:

limh$0

(P "h '

(

)i=Ni=1 Ski

' idh

)

' Phu0 $)i=Ni=1 Ski

u0(L2(") = 0, #u0. (1)

The convergence is given by the following equation :

limh$0

(P "h '

*

)i=Ni=1 Ski

' idh

+

' Phu0 $)i=Ni=1 Ski

u0(L2(") = 0, #u0. (2)

We introduce the projection error rh, defined by

rhu := idhu $ u

with (rhu(L2(") " ε(h)(u(L2("), for all u " Whwith ε(h) . 0 when h . 0.We then have :

idh ' Sk1 ' idhu0 = idh ' Sk1(u0 + idhu0 $ u0)= idh ' Sk1(u0 + rhu0).

5

Then

idh ' Sk1 ' idhu0 $ Sk1u0 = Sk1(u0 + rhu0) + rh ' Sk1(u0 + rhu0) $ Sk1u0

= Sk1(u0 + rhu0) $ Sk1u0 + rh ' Sk1(u0 + rhu0).

But as there exists a non-negative real C such that

(rh ' Sk1(u0 + rhu0)(L2(") " ε(h)(1 + Ck1)(1 + ε(h))(u0(L2(").

Then there exists a non-negative real C & such that

(Sk1 ' idhu0 $ Sk1u0(L2(") " C &ki(idhu0 $ u0(L2(") " ε(h)C &

ki(u0(L2($).

We introduce δN defined by

δNu0 := idh ' SkN'(

)Ni=1(idh ' Ski

))

' idhu0 $ SkN')N!1

i=1 Skiu0

Then

δNu0 = SKN')N!1

i=1 δkiu0 + rh ' SkN

'(

)Ni=1idh ' Ski

u0

)

' idhu0 $ SKN)N!1

i=1 u0

= SKN' [)N!1

i=1 u0 + δN!1u0] + rh ' SkN'(

)Ni=1idh ' Ski

)

u0 + rh ' SKN)N!1

i=1 Ski' idhu0.

That then gives :

(δNu0(L2(") " C &(δN!1u0(L2(") + ε(h)(1 + CkN)(()N!1i=1 idh ' Ski

) ' idhu0(

" C &(

C &δN!2u0(L2(") + ε(h)%N!1i=1 (1 + Cki)(1 + ε(h))N!1(u0(L2(")

)

+ε(h)%Ni=1(1 + Cki)(1 + ε(h))N(u0(L2(").

" (C &)N!1|δ1u0(L2(") +*

"N!2j=0 ε(h)%N!j

i=1 (1 + Cki)(1 + ε(h))N!j+

(u0(L2(")

By induction we finally find :

(δNu0(L2(") " ε(h)

%

N!

j=0

(C &)j%N!jk=1 (1 + Cki)(1 + ε(h))N!j

&

(u0(L2(").

We now set k" := infi ki and k" = supi ki so that

(δNu0(L2(") " ε(h)

%

N!

j=0

(C &)j%N!jk=1 (1 + Ck")(1 + ε(h))N!j

&

(u0(L2(").

And as Nk" " T " Nk" we have :

(δNu0(L2(") " ε(h)[(

N(sup(1, C &)N(1 + Ck")N(1 + ε(h))N + (C &)N,

(u0(L2(").

6

That is

(δNu0(L2(") " ε(h)eT log C""

/k#

-

.

/1 +

T

k"e

T

k"log((1+Ck#)(1+$(h)))

0

1

2(u0(L2(").

That induces (1). So that we can enounce :

Theorem 2.1 Let S be the exact semi-group of hyperbolic system of conservation laws, Ph

and P "h the projection and relevement on Wh defined above. Denoting by (kn)n#{1,...,N} with

T ="N

i=1 ki and if for all i " {1, ..., N} and all u " D(ST ), if (Skiu( " (1 + Cki)(u( then

limh$0

(P "h '

(

)i=Ni=1 Ski

' idh

)

' Ph $)i=Ni=1 Ski

(L2(") = 0.

Recall that in the previous theorem S denotes the exact operator. We now have to provethe second step towards convergence that is :

(Skiu0 $ Ski

u0(L2(") " Ckih(u0(L2(").

With

Ski:= Ski

+ σki

where σkidenotes a perturbation of the exact semi-group Riemann solver Ski

. That is Skiis

a continuous operator based on the approximate Riemann solver used to solve the hyperbolicsystem of consevation laws. And we have

Ph ' Sh,T ' Ph,T = )Ni=1(idh ' Ski

) ' idh = )Ni=1idh ' (Ski

+ σki) ' idh.

We suppose

(σkiu(L2(") " C(ki, h)(u(L2(").

The convergence is then obtained provided that (σkiu(L2(") " Cki

h(u0(L2("). To obtain thiskind of estimation it is necessary to study precisely the perturbation semi-group. Indeedusing theorem 2.1, the convergence study is reported on a non-discrete operator.This approach is then valid in very general situations (multiD, systems), however in the one-dimensional case we are able to describe more precisely the behavior (convergence, precision,etc) of the reservoir technique, due to the good knwoledge of one-dimensional hyperbolicsystems of conservation laws. In the following, we will then propose a more ad hoc approachto complete the proof.

7

2.3 Flux schemes and reservoir technique

We consider first order finite volume schemes based on Riemann solvers [8]:

Definition 2.1 An explicit conservative three-points finite volume scheme with Riemannsolver writes :

un+1j = un

j $"tn

"xj

(

g(unj , u

nj+1) $ g(un

j!1, unj ))

, j " Z, n ! 0, (3)

where the interfacial numerical flux is denoted by g(u, v) and is obtained from an exact orapproximate Riemann solver.

Among these finite volume schemes we will consider in this paper, flux schemes:

Definition 2.2 A flux scheme is a finite volume scheme that writes:

un+1j = un

j $"tn

"xj(g(un

j , unj+1) $ g(un

j!1, unj ))

where g is the numerical flux given by:

g(s, t) =1

2(f(s) + f(t)) $

1

2&(s, t)(f(t) $ f(s)), (4)

and & is a sign matrix [8], [9].

Recall that flux schemes are first order convergent schemes under a classical CFL stabilitycondition [8]. In the reservoir framework we consider two kinds of flux schemes: thosewith a numerical flux computed using the Colella-Glaz Riemann solver and those using alinearized Riemann solver (VFFC or Roe for instance). The main di!erence between thesetwo approaches comes from the fact that, the Colella-Glaz approach consists in solvingRiemann problems at the interfaces using a nonlinear solver and an original flux di!erencedecomposition, in opposite with linear flux schemes that use linearized Riemann solvers.Note that in the sequel the space step will be supposed to be constant, "xj = "x for allj " Z. In the paper we will denote by "t the maximum of all "ti, where "ti is the timestep at iteration i:

"t = max0!i!0"ti. (5)

Main goal: consider an initial data u0 " L%(R) + L1(R) + BV (R). As usual we willconsider weak discontinuities. As the time and space steps are related by a stability condition(typically with a positive constant c, "t/"x " c), we expect to prove that there exists C > 0such that

(v(·, tn) $ un(L1 " (v(·, 0) $ u0(L1 + Ctn"t, #n " N.

8

In fact we can even prove the existence of two constants C1 > 0 and C2 independant of tn

such that:

(v(·, tn) $ un(L1 " (v(·, 0)$ u0(L1 + C1"t + C2tn"t2, #n " N,

where v denotes the exact solution of the continuous problem and un its reservoir approx-imation. Note that this property is very close to Lagoutiere and Despres estimation fortheir antidi!usive numerical scheme presented in [7]. This allows us in particular to prove along-time convergence.

Suppose that at time t = 0 the initial data is given by u0. Then by definition of thereservoir technique, for all j " Z there exists pj in N such that c

pj!1j < 1 and c

pj

j = 1 with:3

4

4

5

4

4

6

ulj = u0

j , 0 " l < pj ,

upj

j = u0j $

"pj!1l=0

"tl

"x

(

g(ulj, u

lj+1) $ g(ul

j!1, ulj))

, j " Z.

That involves that the reservoir technique combined with a flux scheme based on exactor approximate Riemann solvers consists in choosing a particular local time step equals to"pj!1

l=1 "tl.For a classical flux scheme the solution w after pj iterations in the cell j " Z from 0 to tpj

is given by:3

4

4

4

5

4

4

4

6

w1j = u0

j $"t0

"x

(

g(u0j , u

0j+1) $ g(u0

j!1, u0j))

,

wlj = wl!1

j $"tl!1

"x

(

g(wl!1j , wl!1

j+1) $ g(wl!1j!1, w

l!1j )

)

, #l " pj .

That is:

wpj

j = u0j $

pj!1!

l=0

"tl

"x

(

g(wlj, w

lj+1) $ g(wl

j!1, wlj))

, j " Z.

With (wn)n the finite volume solution approximating a system of conservation laws let usrecall that there exists C > 0 such that:

(v(·, tn) $ wn(L1 " (v(·, 0) $ w0(L1 + Ctn"t, #n " N.

Error estimates for the reservoir technique combined with a flux scheme can unfortunatelynot be deduced easily from the error estimate for the considered flux scheme. Indeed usingthe same notations than above we have after pj iterations:

(wpj

j $ upj

j (L1 =7

7

pj!1!

k=0

"tk

"x

(

g(ukj , u

kj+1) $ g(uk

j!1, ukj ))7

7

L1 . (6)

We can deduce that there exists a positive constant D such that the error (wlj $ ul

j(L1 isalways strictly less the D"t (recall that "t and "x are linked by a stability condition). Thisis however not su#cient to deduce the convergence.

9

3 Scalar equation

3.1 Scheme description

We consider a nonlinear scalar conservation law'

ut + f(u)x = 0, x " R, t ! 0,u(x, 0) = u0(x) " BV (R) + L1(R) + L%(R), x " R,

with f a regular strictly convex1 function such that f(0) = 0. We discretize the solutionon an uniform mesh with a space step "x. As usual we search for an approximation un

j ofthe solution u(tn, j"x). The initial data is given by: u0 =

8

u0(x)dx/"x. In this case, theclassical upwind scheme writes:

un+1j = un

j $"tn"x

*

fnj+ 1

2$ fn

j! 12

+

, j " Z, n ! 1,

where fnj+ 1

2is the interfacial upwinded flux :

fnj+ 1

2=

f(unj ) + f(un

j+1)

2$

1

2sgn(f &(un

j+1/2)) (f(unj+1) $ f(un

j )),

with "tn = tn+1 $ tn and unj+1/2 is an approximate value of the solution at the interface. In

the framework of one-dimensional nonlinear scalar equations two kinds of waves can appear:rarefaction and shock waves. At each interface j $ 1/2 between cells j $ 1 and j the Laxentropy condition states that f &(un

j!1) > f &(unj ) generates an entropy shock wave whereas

f &(unj ) > f &(un

j!1) generates a rarefaction wave. Let us also recall that from the Rankine-Hugoniot condition, a shock wave at the interface j $ 1/2 has a speed equal to:

σnj!1/2 =

f(unj ) $ f(un

j!1)

unj $ un

j!1

.

Using this interfacial speed, we propose a method to update reservoirs and counters, upwind-ing the interfacial numerical flux. Let us denote by λn

! = f &(unj!1) and by λn

+ = f &(unj ) the

left and right characteristic speeds. The idea is to constrain the time step according to thelargest speed in the wave. For shock waves, it is given by the Rankine-Hugoniot conditionswhereas for rarefaction fans it is given by the largest speed λn

! or λn+. Moreover, in the case

of sonic points (λn! " 0 " λn

+), we must split the wave in two parts, one going to the leftand the other one going to the right.-Right shock wave (λn

+ " λn! and σn

j!1/2 > 0)

9

:

un+1j

cn+1j

Rn+1j

;

< =

3

4

4

4

4

5

4

4

4

4

6

%

unj , c

nj +

|σnj!1/2|"tn

"x, Rn

j $"tn"x

(

f(unj ) $ f(un

j!1))

&T

, if cnj +

|σnj!1/2|"tn

"x< 1,

%

unj + Rn

j $"tn"x

(

f(unj ) $ f(un

j!1))

, 0, 0

&T

, if cnj +

|σnj!1/2|"tn

"x= 1.

1It is well known that non convex fluxes lead to much more complex Riemann problems.

10

-Left shock wave (λn+ " λn

! and σnj!1/2 < 0)

9

:

un+1j

cn+1j

Rn+1j

;

< =

3

4

4

4

4

5

4

4

4

4

6

%

unj , c

nj +

|σnj!1/2|"tn

"x, Rn

j $"tn"x

(

f(unj+1) $ f(un

j ))

&T

, if cnj +

|σnj!1/2|"tn

"x< 1,

%

unj + Rn

j $"tn"x

(

f(unj+1) $ f(un

j ))

, 0, 0

&T

, if cnj +

|σnj!1/2|"tn

"x= 1.

-Right rarefaction wave (λn+ ! λn

! ! 0)

9

:

un+1j

cn+1j

Rn+1j

;

< =

3

4

4

4

4

5

4

4

4

4

6

%

unj , c

nj +

|λn+|"tn"x

, Rnj $

"tn"x

(

f(unj ) $ f(un

j!1))

&T

, if cnj +

|λn+|"tn"x

< 1,

%

unj + Rn

j $"tn"x

(

f(unj ) $ f(un

j!1))

, 0, 0

&T

, if cnj +

|λn+|"tn"x

= 1.

-Left rarefaction wave (0 ! λn+ ! λn

!)

9

:

un+1j

cn+1j

Rn+1j

;

< =

3

4

4

4

4

5

4

4

4

4

6

%

unj , c

nj +

|λn!|"tn"x

, Rnj $

"tn"x

(

f(unj+1) $ f(un

j ))

&T

, if cnj +

|λn!|"tn"x

< 1,

%

unj + Rn

j $"tn"x

(

f(unj+1) $ f(un

j ))

, 0, 0

&T

, if cnj +

|λn!|"tn"x

= 1.

For sonic points the scheme is described in [3].

3.2 Numerical analysis

In this section, we then study the convergence of the reservoir technique for nonlinear scalarequations:

ut + f(u)x = 0, f " C2(R / R+, R) strictly convex, u0 " L1(R) + L%(R) + BV (R). (7)

We consider solutions without wave interactions. This “non-interaction” assumption is rea-sonable for a large class of initial data at least for a finite time T . Let us first precise theproduced error during the reservoir technique computation. The following analysis is validfor all discrete initial data (u0

j)j#Z defined as:

u0 =!

j#Z

u0j1"j

,

but in practice because we consider non-interacting waves we can also consider in this paperstep-like initial data, such that for j0 " Z:

u0 =!

j!j0

ul1"j+

!

j>j0

ur1"j.

11

Theorem 3.1 The reservoir scheme for 1D scalar hyperbolic equation of conservation lawswith a strictly convex flux, converges to the entropy solution. More precisely, there existC > 0 and D > 0 such that:

(un $ v(·, tn)(L1 " (u0 $ v(·, 0)(L1 + CTV (u0)"t + DTV (u0)tn("t)2.

Proof. As there exist two kinds of non-trivial waves for such equations, shock and rarefac-tion waves, we propose to study the two situations and we decompose the proof in two parts.

Step 1. Shock waves.

Consider a time iteration n0 such that all the counters are equal to zero (ex: n0 = 0). Thenfor all n " N" and j " Z, while cn0+n

j < 1, we freeze the physical flux associated to the cell jat time tn0 . We will in particular study the case of a right-entropy shock with discontinuitylocated in xj0!1/2 at time tn0 and of velocity σn0

j0!1/2. Now as sgn(f &) is positive, we updatethe solution as follows (for n = 1):

un0+1j = un0

j $"tn0

"x

(

f(un0j ) $ f(un0

j!1))

1cn0+1j =1

.

More generally, for every n and j in Z such that cn0+nj < 1 one has

un0+nj = un0+n!1

j $"tn0+n!1

"x

(

f(un0j ) $ f(un0

j!1))

1cn0+n!1j =1

= un0j $

"n!1i=1

"tn0+i

"x

(

f(un0j ) $ f(un0

j!1))

1cn0+i!1j =1

.

(8)

Recall that in this case the time step is chosen such that:

"tn = minj

*

(1 $ cnj )

"x

|σn0j!1/2|

+

.

We can then prove:

Lemma 3.1 Let us suppose that the exact solution v is a shock wave with a front located inj0"x at time tn0. Then it exists j& " Z and n& > n0 such that

|v(xj", tn"

) $ un"

j" | = |v(xj0, tn0) $ un0

j0 |,

with

|v(xj", tk) $ uk

j"| = |v(xj, tn0) $ un0

j | + O("t), #k, n0 " k < n&.

We can add that j& = j0 + sign(σn0j0!1/2)

12

Proof of the lemma. The shock is then supposed to be a right-entropy shock. An im-portant point in (8) is the fact that as f & is increasing; then while cn0+n

j0 < 1 one hascn0+nj0!1 < 1. So that the corresponding physical flux f(un0

j0!1) is not updated. Remark alsothat f(un0

j0 ) $ f(un0j0!1) = σn0

j0!1/2

(

un0j0 $ un0

j0!1

)

by the Rankine-Hugoniot jump condition.

Let us now denote by kj0 the index such that: cn0+kj0j0 = 1, that is

"kj0l=1

"tn0+kj0

"xσn0

j0!1/2 = 1.

Then

un0+kj0j0 = un0

j0 $

kj0!

l=1

"tn0+kj0

"xσn0

j0!1/2

(

un0j0 $ un0

j0!1

)

= un0j0!1.

At time tn0+kj0 the exact solution is obviously given by:

v(xj0, tn0+kj0 ) = v(xj0!1, t

n0).

Then:!

j#Z

|v(xj, tn0+kj0 ) $ u

n0+kj0j | =

!

j#Z

|v(xj , tn0) $ un0

j |.

That is in the current cell and for the time tn0+kj0 the reservoir-technique combined withthe flux scheme has captured the exact solution. By induction we deduce the lemma and bysymmetry the result is valid for left entropy-shock. #

Now, for all j " Z and for all time (tn0;ji )i#N such that cn0;ji

j = 1 the numerical solution willbe exact in the cell j. That is:

|v(xj , tn0;ji ) $ u

n0;ji

j | = |v(xj , tn0) $ u0

j |.

However, between times tn0;ji and tn0;ji+1 because of (6), we have the following estimate:

|v(xj, tk) $ uk

j | = |v(xj , 0) $ u0j | + O("t), #k " {n0;ji

+ 1, · · · , n0;ji+1 $ 1},

as the solution in the cell j has been frozen until the local CFL number is equal to 1. Howeverthe error is not cumulated at each iteration. This results allows to prove that the globalerror stays at order 1 but in each cell there exists some times such that the error is zero:then using that u0 belongs to BV and the previous lemma, for shock waves, there exists areal constant C1 > 0 such that:

(v(·, tn) $ un(L1 " (v(·, 0) $ u0(L1 + C1TV (u0)"t #n " N.

That is Sh(tNi)u0 = S(tNi)u0 + O("t).

Step 2. Rarefaction waves.

We suppose now that the exact solution of the continuous problem is a right-rarefaction

13

wave. We again suppose for the sake of simplicity that f & > 0.Then for all n " N, and j " Z, λn

j " λnj+1 (entropy condition), where λn

j = f &(unj ).

Consider n0 such that the jth counter is equal to zero (ex: n0 = 0). Then for n " N, whilecn0+nj < 1 and by definition of the reservoir scheme:

un0+nj = un0

j and Rn0+nj = Rn0+n!1

j $"tn0+n

"x

(

f(un0+n!1j ) $ f(un0+n!1

j!1 ))

.

But as cn0+n!1j < 1 then un0+n!1

j = un0j and there exists kj such that

un0+kj

j = un0j $

kj!1!

l=0

"tn0+l

"x

*

f(un0j ) $ f(un0+l

j!1 )+

.

It has to be noticed that even if λnj!1 " λn

j between tn0 and tn0+kj the solution in the cellj $ 1 can have been updated (except if cn0

j!1 = 0.). However λnj!1 " λn

j implies necessarelythat the solution in the cell j $ 1 has been updated at most one time. Then:

un0+kj

j = un0j $

kj!1!

l=0

"tn0+l

"x

*

f(un0j ) $ f(un0+l

j!1 )+

.

with

un0+kj!1j!1 =

3

5

6

un0j!1, if cn0+k

j!1 < 1, #k " {1, · · · , kj $ 1},

un0j!1 + O("t), if -k " {1, · · · , kj $ 1} / cn0+k

j!1 = 1.

For weak enough initial data |u0j $ u0

j!1| = O("x), for all j in Z, and by regularity of f wethen have:

un0+kj

j = un0j $

"kj

l=1

"tn0+l

"x

*

λn0j (un0

j $ un0j!1) +

f""

(un0j )

2(un0

j $ un0j!1)

2+

O(

(un0j $ un0

j!1)"t)

+ O(

(un0j $ un0

j!1)3)

+

.

(9)

That is, using that cn0+kj

j = 1,

un0+kj

j = un0j!1 + αn0

j

f""

(un0j )

2

(

un0j!1 $ un0

j

)2+ O

(

(un0j $ un0

j!1)"t)

+ O(

(un0j $ un0

j!1)3)

,

with

αn0j :=

kj!

l=1

"tn0+l

"x.

Remark. Note that a rarefaction wave φ(x/t) solution of the scalar equation is such thatf &(φ(x/t)) $ x/t = 0, that is in the discrete case, f &(un0

j )"t/"x = 1. This corresponds to

cn0+kj

j ="kj

l=1

"tn0+l

"xλn0

j = 1.

The following lemma will be useful to prove the convergence.

14

Lemma 3.2 Suppose that the exact solution is a rarefaction wave then for all j " Z and forall n, it exists n& > n,

|v(xj, tn"

) $ un"

j | = |v(xj, 0) $ u0j | + O

(

("t)2)

,

with

|v(xj, tk) $ uk

j | = |v(xj , 0) $ u0j | + O("t), #k, n " k < n&.

Proof of the lemma. By Taylor expansion at time tn0+kj we have

u(j"x, tn0+kj) = u(j"x, tn0) +

kj!

l=1

"tn0+lut(j"x, tn0) + O(

(

kj!

l=1

"tn0+l)2)

.

Using the conservation law ut = $f(u)x = $uxf &(u) we get

u(j"x, tn0+kj ) = u(j"x, tn0) $

kj!

l=1

∂xu(j"x, tn0)f &(

u(j"x, tn0))

+ O(

(

kj!

l=1

"tn0+l)2)

.

We can rewrite the previous equation:

u(j"x, tn0+kj) = u(j"x, tn0) +"kj

l=1"tn0+lu(j"x, tn0) $ u((j $ 1)"x, tn0)

"xf &(

u(j"x, tn0))

+

O(

("kj

l=1"tn0+l)2)

+ O(

"x"kj

l=1"tn0+l)

.

If we denote by φ(x/t) the exact self-similar continuous rarefaction wave, we have then

u(j"x, tn0+kj) = φ( j"x

tn0+kj

)

and then

φ( j"x

tn0+kj

)

= φ(j"x

tn0

)

+"kj

l=1

"tn0+l

"xf &*

φ(j"x

tn0

)

+=

φ(j"x

tn0

)

$ φ((j $ 1)"x

tn0

)

>

+

O(

("kj

l=1"tn0+l)2)

+ O(

"x"kj

l=1"tn0+l)

.

Then we recover the expression (9) at order 2:

|v(xj, tn0+kj ) $ u

n0+kj

j | = |v(xj, tn0) $ un0

j | + O(

("t)2)

.

That means that for the cell j, there exists a time such that the error in this cell is reducedto the order 2. This result has been proved for a particular time tn0 and can be obviouslyextended to any positive time, by induction. This concludes on the lemma proof. #

15

Again for all j " Z and for all time (tn0;ji )i#N such that cn0;ji

j = 1, the numerical solutionwill be exact at order 2. That is:

|v(xj, tn0;ji ) $ u

n0;ji

j | = |v(xj, 0) $ u0j | + O

(

("t)2)

.

However, between tn0;ji and tn0;ji+1 because of (6), we have the following estimate:

|v(xj, tk) $ uk

j | = |v(xj , 0) $ u0j | + O("t), #k " {n0;ji

+ 1, · · · , n0;ji+1 $ 1},

There is then no order one error accumulations during the time process. So that for u0 " BVsuch that the solution is a rarefaction wave there exists two real constants C2 and C3 suchthat:

(un $ v(·, tn)(L1 " (u0 $ v(·, 0)(L1 + C2TV (u0)"t + C3TV (u0)tn("t)2.

Step 3. Conclusion.

As the solution of a hyperbolic equation of conservation law is a combination of shock andrarefaction waves and as we consider non-interacting waves we can deduce that there existC &

1 > 0 and C &2 > 0 such that:

(un $ v(·, tn)(L1 " (u0 $ v(·, 0)(L1 + C &1TV (u0)"t + C &

2TV (u0)tn("t)2.

i.e.

Sh(tn)un = S(tn)un + C &1TV (u0)"t + C &

2TV (u0)tn("t)2.

That is, for step-like initial data the reservoir scheme convergences to the entropy solution. #

We now prove that for scalar equations the combination of flux schemes and reservoirs istotal variation diminushing (TVD).

Theorem 3.2 The reservoir technique for scalar hyperbolic equations of conservation lawswithout wave interaction, and strictly convex flux is TVD:

TV (un+1) =!

j#Z

|un+1j $ un+1

j!1 | "!

j#Z

|unj $ un

j!1| = TV (un), #n " N.

Proof. Recall first that under CFL condition flux schemes are TVD [10]. If we denote bywn a flux scheme solution and we suppose that at each iteration the time step is chosen suchthat the CFL number is equal to 1, we then have:

TV (un+1) " TV (un), #n " N.

Now denoting by (n0;j)j some indices such that cn0;j

j = 1, the reservoir scheme is defined inthe cell j and for n greater than n0;j, by:

un+1j =

3

4

4

5

4

4

6

un0;j

j , if cn+1j < 1,

un0;j

j $"n!n0;j

l=0

"tn0;j+l

"x

(

g(un0;j

j , un+lj+1) $ g(un+l

j!1, un0;j

j ))

, if cn+1j = 1.

16

Then if we sum over j

"

j#Z|un+1

j $ un+1j!1 | =

"

j#Z

?

?

?u

n0;j

j $"n!n0;j

l=0

"tn0;j+l

"x

(

· · ·)

1cn+1j =1

$un0;j!1

j!1 +"n!n0;j!1

l=0

"tn0;j!1+l

"x

(

· · ·)

1cn+1j!1 =1

?

?

?.

As we again do not consider wave interactions only three situtations can occur:

Step 1. Shock waves

We have seen that the solution is updated only when the local CFL number reaches 1; thiscorresponds to an exact shock propagation. Then the total variation is then exactly con-served in this case.

Step 2. Constant states

Trivially the total variation is zero.

Step 3. Rarefaction waves

This situation is more complicated. We will prove for right-rarefaction waves (by symmetrythe result will be valid for left rarefaction waves), that the total variation diminushing usingan inductive argument and the reservoirs and counters features.From time t = 0 to t1 we have:

u1j =

3

4

4

5

4

4

6

u0j , if c1

j < 1,

u0j $

"t0

"x

(

f(u0j) $ f(u0

j!1))

, if c1j = 1.

and

u1j!1 =

3

4

4

5

4

4

6

u0j!1, if c1

j!1 < 1,

u0j!1 $

"t0

"x

(

f(u0j!1) $ f(u0

j!2))

, if c1j!1 = 1.

Then, as f is increasing (recall that we consider right-rarefaction waves) and using the factthat the time step is supposed to be chosen such that the local CFL number is less or equalto 1, we check easily that for right-rarefaction waves:

|u1j $ u1

j!1| " |u0j $ u0

j!1|,

so that:

TV (u1) =!

j#Z

|u1j $ u1

j!1| "!

j#Z

|u0j $ u0

j!1| = TV (u0).

17

Suppose now that at time tn:

TV (uk) " TV (uk!1), 1 " k " n.

At time tn+1 we have the following equations:

3

4

4

4

5

4

4

4

6

un+1j = un

j $"n!n0;j

l=0

"tn0;j+l

"x

(

f(un0;j

j ) $ f(un0;j+lj!1 )

)

1cn+1j =1,

un+1j!1 = un

j!1 $"n!n0;j!1

l=0

"tn0;j!1+l

"x

(

f(un0;j!1

j!1 ) $ f(un0;j!1+lj!2 )

)

1cn+1j!1 =1.

Then

|un+1j $ un+1

j!1 | =?

?

?un

j $ unj!1 $

"n!n0;j

l=0

"tn0;j+l

"x

(

f(un0;j

j ) $ f(un0;j+lj!1 )

)

1cn+1j =1+

"n!n0;j!1

l=0

"tn0;j!1+l

"x

(

f(un0;j!1

j!1 ) $ f(un0;j!1+lj!2 )

)

1cn+1j!1 =1

?

?

?.

Four situations can occur (corresponding to four kinds of cells):

• If cn+1j < 1, cn+1

j!1 < 1 then

un+1j = un

j = un0;j

j , un+1j!1 = un

j!1 = un0;j!1

j!1 .

In such cells j we have:

|un+1j $ un+1

j!1 | = |unj $ un

j!1|.

For such cells there is no variation increasing.

• If cn+1j = 1, cn+1

j!1 < 1 then

|un+1j $ un+1

j!1 | =?

?

?un

j $ unj!1 $

"n!n0;j

l=0

"tn0;j+l

"x

(

f(un0;j

j ) $ f(un0;j+lj!1 )

)

?

?

?.

Then as f is increasing (right-rarefaction waves are considered) and by entropy condi-tion the term inside the sum is positive and then:

$

n!n0;j!

l=0

"tn0;j+l

"x

(

f(un0;j

j ) $ f(un0;j+lj!1 )

)

" 0.

We have (under CFL condition):

|un+1j $ un+1

j!1 | " |unj $ un

j!1|.

18

• If now cn+1j < 1, cn+1

j!1 = 1, then

|un+1j $ un+1

j!1 | =?

?

?un

j $ unj!1 +

"n!n0;j!1

l=0

"tn0;j!1+l

"x

(

f(un0;j!1

j!1 ) $ f(un0;j!1+lj!2 )

)

?

?

?.

And again the term inside the sum is positive, so that:

|un+1j $ un+1

j!1 | =?

?unj $ un

j!1 +"n!n0;j!1

l=0

"tn0;j!1+l

"x

(

f(un0;j!1

j!1 ) $ f(un0;j!1+lj!2 )

)?

?.

! |unj $ un

j!1|.

We can then not conclude directly on the total variation. However in the cell j $ 2:

un+1j!2 = un

j!2 $

n!n0;j!2!

l=0

"tn0;j!2+l

"x

(

f(un0;j!2

j!2 ) $ f(un0;j!2+lj!3 )

)

1cn+1j!2 =1.

Now let denote by k, with k ! 2 the first cell such that cn+1j!k" < 1 with cn+1

j!k = 1 fork& " {1, · · · , k $ 1}. To simplify the presentation let us suppose that k = 2. Then ifcn+1j!2 < 1:

|un+1j!1 $ un+1

j!2 | =?

?unj!1 $ un

j!2 $"n!n0;j!1

l=0

"tn0;j!1+l

"x

(

f(un0;j!1

j!1 ) $ f(un0;j!1+lj!2 )

)?

?

" |unj!1 $ un

j!2|.

Defining A by:

A = unj!1 $ un

j!2 $

n!n0;j!1!

l=0

"tn0;j!1+l

"x

(

f(un0;j!1

j!1 ) $ f(un0;j!1+lj!2 )

)

,

we obtain by Taylor expansion:

A = unj!1 $ un

j!2 $"n!n0;j!1

l=0

"tn0;j!1+l

"x

*

f(un0;j!1

j!1 ) $ f(un0;j!1+lj!1 )$

f &(un0;j!1+lj!1 )(u

n0;j!1+lj!2 $ u

n0;j!1+lj!1 ) $ f (2)(u

n0;j!1+lj!1 )(u

n0;j!1+lj!2 $ u

n0;j!1+lj!1 )2/2+

O(

(un0;j!1+lj!2 $ u

n0;j!1+lj!1 )3

)

+

.

So using the fact that

n!n0;j!1!

l=0

λn0;j!1+lj!1

"tn0;j!1+l

"x= 1,

19

we deduce that

A =1

2f (2)(u

n0;j!1+lj!1 )(u

n0;j!1+lj!2 $ u

n0;j!1+lj!1 )2 + O

(

(un0;j!1+lj!2 $ u

n0;j!1+lj!1 )3

)

! 0.

Then we can deduce that:

|un+1j!1 $ un+1

j!2 | + |un+1j $ un+1

j!1 | " |unj!1 $ un

j!2| + |unj $ un

j!1|.

As:

|un+1j $ un+1

j!1 | =?

?unj $ un

j!1 +"n!n0;j!1

l=0

"tn0;j!1+l

"x

(

f(un0;j!1

j!1 ) $ f(un0;j!1+lj!2 )

)?

?,

|un+1j!1 $ un+1

j!2 | =?

?unj!1 $ un

j!2 $"n!n0;j!1

l=0

"tn0;j!1+l

"x

(

f(un0;j!1

j!1 ) $ f(un0;j!1+lj!2 )

)?

?.

In the situation k ! 3 with cn+1j!k < 1 with cn+1

j!k" = 1 for k& " {1, · · · , k $ 1} we wouldhave:

k!

l=0

|un+1j!l $ un+1

j!l!1| "

k!

l=0

|unj!l $ un

j!l!1|.

• The last case corresponds to cn+1j = 1, cn+1

j!1 = 1. That is:

3

4

4

4

5

4

4

4

6

un+1j = un

j $"n!n0;j

l=0

"tn0;j+l

"x

(

f(un0;j

j ) $ f(un0;j+lj!1 )

)

,

un+1j!1 = un

j!1 $"n!n0;j!1

l=0

"tn0;j!1+l

"x

(

f(un0;j!1

j!1 ) $ f(un0;j!1+lj!2 )

)

.

But as f & is strictly positive that necessarely involves that n0;j!1 < n0;j and we canexpect that:

|un+1j $ un+1

j!1 | ! |unj $ un

j!1|.

But as above (third points) we prove that there exists a k such that:

k!

l=0

|un+1j!l $ un+1

j!l!1| "

k!

l=0

|unj!l $ un

j!l!1|, #k " n.

So finally globally for rarefaction waves we have:

TV (un+1) =!

j#Z

|un+1j $ un+1

j!1 | "!

j#Z

|unj $ un

j!1| = TV (un).

#

20

4 Linear systems

4.1 Reservoir scheme for linear systems

Consider the linear hyperbolic system with m equations:'

∂tV + ∂x(AV ) = 0, x " R, t ! 0,V (x, 0) = V0(x),

(10)

with V = (v1, · · ·, vm), A " Mm(R) diagonalizable in R with eigenvalues (λ1, λ2,· · ·, λm),and corresponding right eigenvectors R = col(r1, · · ·, rm), associated to the initial dataV0 " BV (R). Note that the change of variables W = R!1V = (w1, · · ·, wm), satisfies thefollowing diagonal system of m independent advection equations:

-

.

/

∂tw1 + λ1∂xw1 = 0,...∂twm + λm∂xwm = 0.

Let us introduce the flux F (V ) = AV . We are looking for an approximation V nj of V (tn, j"x)

in (10). The initial data is given by: V 0j = V0(j"x), j " Z. Then the classical upwind scheme

may be written in this case:

V n+1j = V n

j $"tn"x

*

'nj+ 1

2$ 'n

j! 12

+

, j " Z, n ! 1,

where "tn = tn+1 $ tn and 'nj+ 1

2is the interfacial upwinded flux :

'nj+ 1

2=

F (V nj ) + F (V n

j+1)

2$

1

2sgn(A) (F (V n

j+1) $ F (V nj )).

Here, sgn(·) is the sign matrix given by sgn(A) = R diagi=1,···,p(sgn(λi))R!1. We easily seethat the scheme can also be written as:

W n+1j = W n

j $"tn"x

R!1*

'nj+ 1

2$ 'n

j! 12

+

,

with W nj = R!1V n

j or componentwise,

@

wn+1k,j = wn

k,j $ αk

(

wnk,j+1 $ wn

k,j

)

, αk " 0,wn+1

k,j = wnk,j $ αk

(

wnk,j $ wn

k,j!1

)

, αk > 0,

with αk = λk"tn/"x, k = 1, · · · , m. It is well-known that this scheme is +2-stable underthe CFL condition:

αdef:=

"tn"x

max(|λ1|, · · ·, |λm|), satisfies α " 1. (11)

21

If "tn is chosen such that α = 1, the propagation is perfectly solved on the components wk

for which αk = 1 and from the analysis done in the introduction, some numerical di!usionwill be produced on the components wj for which αj < 1. To obtain a CFL equal to one oneach characteristic field, let us consider di!erent time steps "tn (not necessarely equal). Weintroduce m vectorial reservoirs R1;j, ···, Rm;j " Rm associated to the cell j and CFL countersck;j " [0, 1], k = 1, · · ·, m, initialized to zero2. We denote by V k

R(V, W ) the solution of the

Riemann problem with left state V and right state W which lies between the kth and the

(k + 1)th wave with V 0R(V, W ) := V , and V m

R (V, W ) := W by convention. For conveniencewe set in the following

Cnk;j = cn

k;j + |λk|"tn"x

.

At each time step we fill up the reservoirs Rk;j with the current numerical flux di!erenceupwinding with respect to the sign of λk. More precisely, we take for λk < 0

9

:

V n+1k;j

cn+1k;j

Rn+1k;j

;

< =

3

4

4

4

4

4

4

4

4

4

4

4

4

4

5

4

4

4

4

4

4

4

4

4

4

4

4

4

6

9

A

A

A

:

0

cnk;j + |λk|

"tn"x

Rnk;j $

"tn"x

(

F (V kR(V n

j , V nj+1)) $ F (V k!1

R (V nj , V n

j+1)))

;

B

B

B

<

, if Cnk;j < 1,

9

A

A

:

Rnk;j $

"tn"x

(

F (V kR(V n

j , V nj+1)) $ F (V k!1

R (V nj , V n

j+1)))

00

;

B

B

<

, if Cnk;j = 1.

(12)

whereas, for λk > 0, we upwind on the right side

9

:

V n+1k;j

cn+1k;j

Rn+1k;j

;

< =

3

4

4

4

4

4

4

4

4

4

4

4

4

4

5

4

4

4

4

4

4

4

4

4

4

4

4

4

6

9

A

A

A

:

0

cnk;j + |λk|

"tn"x

Rnk;j $

"tn"x

(

F (V kR(V n

j!1, Vnj )) $ F (V k!1

R (V nj!1, V

nj ))

)

;

B

B

B

<

, if Cnk;j < 1,

9

A

A

:

Rnk;j $

"tn"x

(

F (V kR(V n

j!1, Vnj )) $ F (V k!1

R (V nj!1, V

nj ))

)

00

;

B

B

<

, if Cnk;j = 1.

(13)

Eventually, we update the solution by taking

V n+1j = V n

j +m!

k=1

V n+1k;j .

2Note that for each characteristic field these quantities are constant in space and the index j is then notnecessary, but we keep this notation for the forthcoming sections.

22

As before, the timestep "tn must be chosen according to the classical stability condition andas big as possible. This leads to the natural choice

"tn = minj,k

(

(1 $ cnk;j)

"x

|λk|

)

. (14)

4.2 Numerical analysis

We then consider

Vt + AVx = 0, V (x, 0) = V0(x), V0 " L1 + L% + BV. (15)

with A " Mm(R) diagonalizable in R such that λ1 < λ2 < · · · < λm. The initial data isgiven by:

V 0j =

3

5

6

Vl :="m

i=1 αiri, if j " j0,

Vr :="m

i=1 βiri, if j > j0.

Recall that an explicit flux scheme approximating a linear system of conservation law, isconvergent (in particular stable under a CFL condition maxi#{1,··· ,m} |λi|"t/"x " 1). Againwe will use the fact that the reservoir technique combined with a flux scheme is equivalentto choose particular time steps.

Theorem 4.1 A flux scheme combined with the reservoir technique approaching a linearhyperbolic system of conservation laws is convergent and there exists C > 0 such that, at alltime tn:

Sh(tn)V0 = S(tn)V0 + C"t, (V (·, tn) $ V n(L1 " (V (·, 0) $ V 0(L1 + C"t,

where Sh denotes the associated discrete semi-group and S the exact on.Moreover for rational eigenvalues and for all time tn there exists a time tn

"

! tn such thatthe discrete solution is exact at the discrete level, that is:

Sh(tn"

)V0 = S(tn"

)V0, (V (·, tn"

) $ V n"

(L1 = (V (·, 0) $ V 0(L1 .

Proof. We first enounce an important lemma:

Lemma 4.1 #j " Z, #l " {1, · · · , m}, #n > 0, -n& > n,

!

j

|Vl(xj , tn"

) $ V n"

j;l | =!

j

|Vl(xj, 0) $ V 0j;l|,

with!

j

|Vl(xj , tk) $ V k

j;l| =!

j

|Vl(xj , 0) $ V 0j;l| + O("t), #k, n " k < n&.

23

or speaking di!erently #j " Z, #l " {1, · · · , m}, #n0;j / cn0;j

j = 0, -kj > 0, / cn0;j+kj

j = 1,and

!

j

|Vl(xj, tn0;j+kj) $ V

n0;j+kj

l;j | =!

j

|Vl(xj , 0) $ V 0j;l|,

with!

j

|Vl(xj, tn0;j+k) $ V

n0;j+kj;l | =

!

j

|Vl(xj , 0) $ V 0j;l| + O("t), #k, n " k < kj.

Proof of lemma 4.1. In the proof, we suppose that λi ! 0, for all 1 " i " m andthat λm/λ1 " 2. These assumptions do not delete any theoritical di#culty, but allows usto simplify the notations. In particular the second one ensures us that for all N in N, fromthe time iteration N / m to (N + 1) / m each counter (recall that there are m counters) isupdated one and only one time, what then simplifies the indexations.Suppose that the current time step index is equal to n with3 cn

k;j = 0 for all k in {1, · · ·m}and all j in Z (such a n exists, for instance n = 0). We consider an initial data given by(4.2). Then at each time step we update the solution in each cell the following way:

V n+1j+1 = V n

j+1 $"tn

"xA*

V m+1

R (V nj , V n

j+1) $ V mR(V n

j , V nj+1)

+

= V nj+1 $

"tn

"xA*

V nj+1 $ V m

R(V nj , V n

j+1)+

.

Diagonalizing A it is always possible to suppose that A is diagonal and given by A =diag(λ1, · · · ,λm). First, "tn is chosen such that cn+1

m;j+1 = λm"tn/"x = 1 and as

V nj+1 $ V m

R(V nj , V n

j+1) =(

βm $ αm

)

rm,

then

V n+1j+1 = V n

j+1 $(

βm $ αm

)

rm =m!1!

i=1

βiri + αmrm.

This corresponds to an exact propagation at the discrete level for the mth wave that iswithout numerical di!usion.Now, for the (m $ p)th characteristic, with p " m $ 1:

V n+p+1j+1 = V n+p

j+1 $"p

i=0

"tn+i

"xA*

V m!p+1

R (V n+pj , V n+p

j+1 ) $ V m!p

R (V n+pj , V n+p

j+1 )+

,

with

V m!p+1

R (V n+pj , V n+p

j+1 ) $ V m!p

R (V n+pj , V n+p

j+1 ) =(

βm!p+1 $ αm!p+1

)

rm!p+1.

3for example n = 0.

24

This time cn+pm!p;j+1 = λm!p

"pi=0"tn+i/"x = 1. Now, as (ri)i#{1,··· ,m} are the eigenvectors of

A:

V n+p+1j+1 = V n+p

j+1 $p

!

i=0

"tn+i

"xλm!p

(

βm!i+1 $ αm!i+1

)

rm!i+1 =m!

i=p

αiri +p!1!

i=1

βiri.

That then proves that for each component p " m the propagation of the pth wave is exact.Finally by induction, we can sum-up the process by:

V n+mj+1 = V n

j+1 $m!

i=1

"tn+i

"xλm!i+1

(

βm!i+1 $ αm!i+1

)

rm!i+1 = V nj .

This process can then easily be extended to all time allowing to deduce the lemma, where

V nj;l denotes the lth solution component in cell j at time tn. #

This lemma ensures us that at time t, for each characteristic wave there exists a time t& ! tsuch that the propagation is exact at time t&. However this does not allow us to concludethat: at all time t there exists a time t& ! t such that at time t& the discrete solution is exact(without numerical di!usion), that is the propagation is exact for all characteristic waves alltogether.

Remark If for all i " {1, · · · , m$ 1} λi+1 = 2iλ1, then the discrete solution of the reservoir

scheme is exact every 2m iterations. More precisely the propagation of the lth characteristicwave, l " {1, · · · , m}, of the discrete solution is exact every 2i iterations.

To generalize this idea let us enounce the following lemma:

Lemma 4.2 Suppose that λi " Z", for all i " {1, · · · , m} and denote by P1,··· ,m:

P1,··· ,m = lcm(|λ1|, · · · , |λm|).

Then the discrete solution is exact every P1,··· ,m iterations.

Proof. Let us denote by tn the current time, such that all counters are zero (for examplen = 0). We then define (ri)i{1,··· ,m}:

ri =?

?

λi+1

λi

?

? " Q", #i " {1, · · · , m},

and by δti (CFL=1 for component i):

δti ="x

|λi|, #i " {1, · · · , m}.

Note that δti = riδti+1 and recall that at times tn +Nδti, N " N, the propagation of the ith

wave is exact.As λm is the fastest velocity "tn+1 = δtm = "x/|λm|.

25

• If rm!1 " N" at iterations [n, n+rm!1[ the mth reservoir is the only one to be updated,with zero di!usion on the associated characteristic wave. Then by definition of the

scheme at time tn+rm!1 the mth and (m$1)th reservoirs are updated and the di!usionfor the corresponding characteristic waves is zero.

• If now rm!1 " Q" $ N and denoting by Pm,m!1 = lcm(|λm|, |λm!1|) then we canassert that at times tn + NPm,m!1δtm, N " N" the propagation is exact for these twocharacteristic waves.

Using similar arguments, for all k and l with 1 " k < l < m, the propagation of the discrete

kth and lth characteristic waves are exact at times tn+NPl,kδtl with Pk,l = lcm(|λk|, |λl|) andN " N". By induction on the wave indices, we easily deduce that at times tn + NP1,··· ,mδtm,N " N" so that the propagation is exact for all characteristic waves and the discrete solutionis exact at the discrete level.#

In fact we can even easily extend this results to rational eigenvalues.

Lemma 4.3 Supposing the eigenvalues rational, then for all time iteration n there existsn& ! n such that the discrete solution is exact at time tn

"

.

Proof. Let us write λi as

λi = pi/qi, i " {1, · · · , m}, pi, qi relatively prime,

and denote by R1,··· ,m the following least common multiple:

R1,··· ,m = lcm(|p1|, · · · , |pm|).

With the same arguments than above we prove that the discrete solution is exact at thediscrete level at least every R1,··· ,m iterations. For all n, it is su#cient to define n& as amultiple of R1,··· ,m greater than n. #

We can then deduce from lemma 4.1 that for all n " N there exists C > 0 such that:

Sh(tn)V0 = S(tn)V0 + C"t, (V (·, tn) $ V n(L1 " (V (·, 0) $ V 0(L1 + C"t.

And from lemma 4.3 we can add that for rational eigenvalues, there exist particular n suchthat cn

k;j = 1 for all k in {1, · · · , m} and:

Sh(tn)V0 = S(tn)V0, (V (·, tn) $ V n(L1 = (V (·, 0) $ V 0(L1.

#

26

5 Conclusion - Nonlinear systems

We have proved the convergence and some important features of the reservoir techniquefor hyperbolic equations and linear system of conservation laws. In conclusion, we brieflypresent in this section the reservoir technique for hyperbolic systems of conservation laws.Its convergence, more technical, will be proved in a forthcoming paper. Let $ be an opensubset of Rm and f : $ . Rm be a su#ciently smooth Lipschitz function. We consider thefollowing nonlinear system of conservation laws:

∂tV + ∂xf(V ) = 0, x " R, t > 0, (16)

where V = (V1, · · · , Vm)T and f(V ) = (f1(V ), · · · , fm(V ))T and we set

A(V ) =

%

∂fi

∂xj(V )

&

1!i,j!m

the jacobian matrix of f . We assume the system to be hyperbolic, that is A(V ) is diagonal-izable in R. We call

λ1(V ) " λ2(V ) " · · · " λm(V )

the m eigenvalues of A(V ) and rk(V ) (resp. lk(V )) the right (resp. left) eigenvectors of A(V )associated to λk(V ).

For such equations we need to define characteristics velocities for each interface j $ 1/2and each characteristic field k, by αn

k;j!1/2. This quantity denotes the velocity of the currentwave. Typically, αn

k;j!1/2 will be given by a Riemann solver. We again set

Cn+1k;j = Cn

k;j + |αnk;j!1/2|

"tn

"x.

Namely, we assume that a Riemann solver (exact or approximate) gives us m waves with

related speeds, αk(V, W ) and m + 1 states*

V kR(V, W )

+

kfor any left (resp. right) state V

(resp. W ). More precisely, for αnk;j!1/2 < 0

9

:

V n+1k;j

cn+1k;j

Rn+1k;j

;

< =

3

4

4

4

4

4

4

4

4

4

4

4

4

4

5

4

4

4

4

4

4

4

4

4

4

4

4

4

6

9

A

A

A

:

0

cnk;j + |αn

k;j!1/2|"tn

"x

Rnk;j $

"tn

"x

(

F (V kR(V n

j , V nj+1)) $ F (V k!1

R (V nj , V n

j+1)))

;

B

B

B

<

, if Cn+1k;j < 1,

9

A

A

:

Rnk;j $

"tn

"x

(

F (V kR(V n

j , V nj+1)) $ F (V k!1

R (V nj , V n

j+1)))

00

;

B

B

<

, if Cn+1k;j = 1,

(17)

27

whereas, for αnk;j!1/2 > 0, we upwind on the right side

9

:

V n+1k;j

cn+1k;j

Rn+1k;j

;

< =

3

4

4

4

4

4

4

4

4

4

4

4

4

4

5

4

4

4

4

4

4

4

4

4

4

4

4

4

6

9

A

A

A

:

0

cnk;j + |αn

k;j!1/2|"tn

"x

Rnk;j $

"tn

"x

(

F (V kR(V n

j!1, Vnj )) $ F (V k!1

R (V nj!1, V

nj ))

)

;

B

B

B

<

, if Cn+1k;j < 1,

9

A

A

:

Rnk;j $

"tn

"x(F (V k

R(V nj!1, V

nj )) $ F (V k!1

R (V nj!1, V

nj ))

00

;

B

B

<

, if Cn+1k;j = 1.

(18)

The reservoir method just consists in computing the values αnl;j!1/2 according to the corre-

ponding wave speed given by the Riemann solver and the corresponding eigenvalue of theJacobian matrix of the physical flux on left and right states. We do that in the spirit givenin section 3 for each wave separately. Namely, denoting by λn

l;j = λl(V nj ), we define αn

l;j!1/2

as

#l " {1, · · · , m}, #j " Z

3

4

4

4

4

4

4

4

4

5

4

4

4

4

4

4

4

4

6

αnl;j!1/2 = λn

l;j!1 if 0 " λnl;j!1 " λn

l;j, for right-rarefaction waves,

αnl;j!1/2 = λn

l;j if λnl;j!1 " λn

l;j " 0, for left-rarefaction waves,

αnl;j!1/2 = σn

l;j!1/2, for shock waves, (λnl;j!1 > σn

l;j!1/2 > λnl;j).

For sonic points, see the remark.

(19)

Again, the solution is updated the following manner

V n+1j = V n

j +m!

k=1

V n+1k;j .

To justify the interest of such a method we give some numerical results obtained with it onclassical benchmarks on Euler equations [14]. Details can be found in [3].We will finally prove in part II:

Theorem 5.1 The reservoir-Colella-Glaz scheme for hyperbolic systems of conservationlaws is a convergent entropy scheme and is exact at the discrete level for some special con-figurations.

References

[1] Francois Alouges, Florian De Vuyst, Gerard Le Coq, and Emmanuel Lorin. The reservoirscheme for systems of conservation laws. In Finite volumes for complex applications,III (Porquerolles, 2002), pages 247–254 (electronic). Lab. Anal. Topol. Probab. CNRS,Marseille, 2002.

28

0 0.5 12

3

4

5

6

7

8

0 0.5 1−2

−1

0

1

2ρ U

0 0.5 11

1.5

2

2.5

3

3.5

4

4.5ρ E

0 0.5 1−1

−0.5

0

0.5

1U

0 0.5 1−0.5

0

0.5

1

1.5E

0 0.5 10

0.5

1

1.5

2

2.5

3P

Figure 1: Noh benchmark with Collela-Glaz reservoir at final time

0 0.5 10

0.5

1

1.5

0 0.5 10

0.5

1

1.5

2ρ U

0 0.5 10

1

2

3

4

5

6ρ E

0 0.5 10

0.2

0.4

0.6

0.8

1

1.2

1.4U

0 0.5 12

2.5

3

3.5

4

4.5E

0 0.5 10

0.5

1

1.5

2P

Figure 2: Sod Wendro! tube with Collela-Glaz reservoir

[2] Francois Alouges, Florian De Vuyst, Gerard Le Coq, and Emmanuel Lorin. Un procedede reduction de la di!usion numerique des schemas a di!erence de flux d’ordre un pourles systemes hyperboliques non lineaires. C. R. Math. Acad. Sci. Paris, 335(7):627–632,2002.

[3] Francois Alouges, Florian De Vuyst, Gerard Le Coq, and Emmanuel Lorin. The reservoir

29

0 1 20

0.5

1

1.5

0 1 20

0.2

0.4

0.6

0.8

1ρ U

0 1 20

1

2

3

4

5

6ρ E

0 1 20

0.2

0.4

0.6

0.8

1U

0 1 22

2.2

2.4

2.6

2.8

3

3.2

3.4E

0 1 20

0.5

1

1.5

2P

Figure 3: Sod tube with Collela-Glaz reservoir

technique: a way to make godunov-type schemes zero or very low di!usive. applicationto colella-glaz. Submitted, 2006.

[4] Le Coq Gerard Alouges, Francois and Emmanuel Lorin. Two-dimensional extensionof the reservoir technique for some linear advection equations. To appear in J. of Sci.Comput., 2006.

[5] S. J. Billett and E. F. Toro. On WAF-type schemes for multidimensional hyperbolicconservation laws. J. Comput. Phys., 130(1):1–24, 1997.

[6] Phillip Colella and Harland M. Glaz. E#cient solution algorithms for the Riemannproblem for real gases. J. Comput. Phys., 59(2):264–289, 1985.

[7] Bruno Despres and Frederic Lagoutiere. Contact discontinuity capturing schemes forlinear advection and compressible gas dynamics. J. Sci. Comput., 16(4):479–524 (2002),2001.

[8] J.-M. Ghidaglia. Numerical computation of 3D two phase flow by finite volumes methodsusing flux schemes. In Finite volumes for complex applications II, pages 69–94. HermesSci. Publ., Paris, 1999.

[9] Jean-Michel Ghidaglia, Anela Kumbaro, and Gerard Le Coq. Une methode “volumesfinis” a flux caracteristiques pour la resolution numerique des systemes hyperboliquesde lois de conservation. C. R. Acad. Sci. Paris Ser. I Math., 322(10):981–988, 1996.

30

[10] Edwige Godlewski and Pierre-Arnaud Raviart. Hyperbolic systems of conservation laws,volume 3/4 of Mathematiques & Applications (Paris) [Mathematics and Applications].Ellipses, Paris, 1991.

[11] Edwige Godlewski and Pierre-Arnaud Raviart. Numerical approximation of hyperbolicsystems of conservation laws, volume 118 of Applied Mathematical Sciences. Springer-Verlag, New York, 1996.

[12] S. K. Godunov. A di!erence method for numerical calculation of discontinuous solutionsof the equations of hydrodynamics. Mat. Sb. (N.S.), 47 (89):271–306, 1959.

[13] S. Labbe. Preprint, Orsay University: www.math.u-psud.fr, 2006.

[14] R. J. LeVeque and H. C. Yee. A study of numerical methods for hyperbolic conservationlaws with sti! source terms. J. Comput. Phys., 86(1):187–210, 1990.

[15] P. L. Roe. Approximate Riemann solvers, parameter vectors, and di!erence schemes.J. Comput. Phys., 43(2):357–372, 1981.

[16] Chi-Wang Shu and Stanley Osher. E#cient implementation of essentially nonoscillatoryshock-capturing schemes. J. Comput. Phys., 77(2):439–471, 1988.

31