Ab FLM Revisedv3
Ab FLM Revisedv3
Ab FLM Revisedv3
January 8, 2013
Abstract
We propose a 1D adaptive numerical scheme for hyperbolic conservation laws based on the numerical
density of entropy production (the amount of violation of the theoretical entropy inequality). Thus it is
used as an a posteriori error which provides information on the need to refine the mesh in the regions
where discontinuities occur and to coarsen the mesh in the regions where the solution remains smooth.
Nevertheless, due to the CFL stability condition the time step is restricted and leads to time consuming
simulations. Therefore, we propose a local time stepping algorithm. We also use high order time exten-
sions using Adams-Bashforth time integration technique as well as a second order linear reconstruction
in space. We numerically investigate the efficiency of the scheme through several test cases: the Sod’s
shock tube problem, the Lax’s shock tube problem and the Shu-Osher test problem.
Keywords: Hyperbolic system, finite volume scheme, local mesh refinement, numerical density of entropy
production, local time stepping.
1 Introduction
In this paper, we are interested in numerical integration of one dimensional non linear hyperbolic systems of
conservation laws of the form
∂w ∂f (w)
(
+ = 0, (t, x) ∈ R+ × R (1)
∂t ∂x
w(0, x) = w0 (x), x ∈ R.
where w : R+ × R → Rd stands for the vector state and f : Rd → Rd the flux function.
Solving Equation (1) with high accuracy is a challenging problem since it is well-known that solutions
can and will breakdown at a finite time, even if the initial data are smooth, and develop complex structure
(shock wave interactions). In such a situation, the uniqueness of the (weak) solution is lost and is recovered
by completing the system (1) with an entropy inequality of the form:
∂s(w) ∂ψ(w)
+ ≤0, (2)
∂t ∂x
where (s, ψ) stands for a convex entropy-entropy flux pair. This inequality allows to select the physical
relevant solution. Moreover, the entropy satisfies a conservation equation only in regions where the solution
∗
[email protected]
†
[email protected]
‡
[email protected]
is smooth and an inequality when the solution develops shocks. In simple cases, it can be proved that the
term missing in (2) to make it an equality is a Dirac mass.
Numerical approximation of Equations (1) with (2) leads to the so-called numerical density of entropy
production which is a measure of the amount of violation of the entropy equation (as a measure of the
local residual as in [3, 12, 15, 14]). As a consequence, the numerical density of entropy production provides
information on the need to locally refine the mesh (e.g. if the solution develops discontinuities) or to coarsen
the mesh (e.g. if the solution is smooth and well-approximated) as already used by Puppo [18, 19, 20] and
Golay [9]. Even if the shocks are well-captured on coarse grid using finite volume scheme such indicator is
able (as shown in Puppo [20] and the reference therein) not only to provide an efficient a posteriori error,
but also to reproduce the qualitative structure of the solution and to pilot the adaptive scheme. Let us
also mention that this does not occur efficiently on contact discontinuities where only numerical diffusion
is active. Nonetheless, we mention the work by Guermond et al. [10] as a remarkable and simple way to
solve this problem by making the numerical diffusion to be proportional to the numerical density of entropy
production (i.e. adding a large numerical dissipation in the shock regions and almost no dissipation in the
regions where the solution remains smooth).
Explicit adaptive schemes are well-known to be time consuming due to a CFL stability condition. The
cpu-time increases rapidly as the mesh is refined since the CFL stability condition imposes an upper bound
δt
on where δt is the time step and h the finest mesh size. Nevertheless, the cpu-time can be significantly
h
reduced using the local time stepping algorithm (see e.g. [16, 25, 2]). In recent years, such numerical schemes
have been widely developed for equations which arise in many fluid flows: traffic flows, multi-phase flows,
multi-layer flows, etc. The local time stepping algorithm has been employed successfully for real two and
three dimensional steady and unsteady problems (see for instance [17, 24, 13, 26, 16, 20]).
The aim of this paper is to construct a 1D multi scale adaptive numerical scheme for hyperbolic conser-
vation laws. The paper is organized as follows. In Section 2, we recall the finite volume approximation, the
time integration methods and we fix notations. Thereafter, we explain how to adapt the space grid using the
numerical density of entropy production in Section 3. Combining both time integration and mesh refinement,
we show how to implement an efficient multi scale adaptive numerical scheme. The general algorithm and
two approaches to distribute the flux between two cells of different levels are compared in Section 4. Finally
in Section 5, the efficiency of the multi scale adaptive scheme is shown through Sod’s shock tube problem,
Lax’s shock tube problem and Shu-Osher test case.
2
where Fk±1/2 stands for the numerical flux at the interface xk±1/2 (see for instance [8, 27, 6]).
For the convenience of the reader, noting the flux difference
δFk (t) := Fk+1/2 (t) − Fk−1/2 (t)
between two interfaces of a cell Ck , Equation (4) is also written:
∂wk (t)
hk + δFk (t) = 0 . (5)
∂t
For practical purpose, in our case, F = f (R(0± , wL , wR )) is determined from the exact solution
R(0± , wL , wR ) of the Riemann problem associated with the left wL and the right wR state:
∂w ∂f (w)
+ =0,
∂t ∂x
(6)
wL if x < 0 ,
w0 (x) =
wR if x > 0 .
Then, the semidiscrete first order numerical scheme reads (see for instance [8, 27, 6]):
∂wk (t) ∂wk (t)
+ f R(0− , wk (t), wk+1 (t)) − f R(0+ , wk−1 (t), wk (t)) .
hk + δFk (t) := hk
∂t ∂t
Equation (3) is completed with an entropy inequality of the form:
∂s(w) ∂ψ(w)
+ ≤0, (7)
∂t ∂x
where (s, ψ) stands for a convex entropy-entropy flux pair. This inequality not only allows to select the
physical relevant solution but will be used to define a relevant mesh refinement criterion (the so-called
numerical density of entropy production, see Section 3). To this end, Equation (7) is discretized using the
same scheme as Equation (3). Thus, the semi discrete formulation for the entropy inequality reads:
∂s(wk ) ∂s(wk )
+ ψ R(0− , wk (t), wk+1 (t)) − ψ R(0+ , wk−1 (t), wk (t))
hk + δψk (t) := hk (8)
∂t ∂t
where
δψk (t) := ψk+1/2 (t) − ψk−1/2 (t)
and R is the solution of the Riemann problem (6).
To also achieve a second order approximation in space, the MUSCL reconstruction can be used that we
now recall for completeness’ sake (see for instance [8, 27]). It consists in solving a Riemann problem (6) with
a linearly extrapolated initial data
Mk Mk+1
wk + , wk+1 −
2 2
where Mk is an approximation to the slope obtained with the MinMod limiter :
m min ∆wk−1/2 , ∆wk , ∆wk+1/2 if m = sgn ∆wk−1/2 = sgn (∆wk ) = sgn ∆wk+1/2
Mk =
0 otherwise
and
∆wk−1/2 + ∆wk+1/2
∆wk−1/2 := wk − wk−1 , ∆wk+1/2 := wk+1 − wk , ∆wk := .
2
Thus as already described before, we define the numerical flux as
− Mk Mk+1
Fk+1/2 := f R 0 , wk + , wk+1 − ,
2 2
+ Mk−1 Mk
Fk−1/2 := f R 0 , wk−1 + , wk − .
2 2
3
2.2 Time integration
Now we focus on the numerical time integration of Equations (5) and (8). The well-known time integration
method of Runge-Kutta and Adams-Bashforth are recalled to fix notations.
where Lj (t) denotes the coefficients of the Lagrange polynomial. Let us note that this explicit approximation
is built with the fluxes previously computed and stored. If the polynomial coefficients are integrated (e.g.
by numerical Gauss integration):
Z tn+1
1
bj (δtn ) = Lj (t) dt ,
δtn tn
4
then the integration of equation (5) and (8) leads to:
m−1
X δtn
wk (tn+1 ) = wk (tn ) − bj (δtn ) δFk (tn−j ) .
j=0
hk
δtn δt2n
wk (tn+1 ) = wk (tn ) − δFk (tn ) − (δFk (tn ) − δFk (tn−1 )) .
hk 2δtn−1 hk
The first order method is exactly as Equations (9). The Adams-Bashforth methods of order 2 and 3 are
stable for Courant-Friedrich-Levy condition (CFL) less than one [1]. Practically, for stability purpose, we
limit our applications to the second order scheme.
We also perform the same discretization above for Equation (8). As done in the case of the Runge-Kutta
scheme, we define the numerical density of entropy production Skn by (10) for the first order scheme and
for the second order scheme. Finally, the total numerical entropy production is given by (11).
3 Mesh refinement
In order to compute with accuracy the solution of hyperbolic systems, a strategy can be to adapt automat-
ically the mesh following a local error indicator (defined later on).
5
graph, whose numbering (in basis 2) allows a quick computing scan to determine the adjacent cells. For
the convenience of the reader, we make use of the following notations: let kb be the index which makes
reference to the macro cell numbered k and b a binary number which contains the hierarchical information
of a sub-cell. In particular, the level of a sub-cell Ckb is defined as the length(b) − 1. For instance, a macro
cell Ck0 of level 0 will be split into two sub-cells Ck00 and Ck01 of level 1. A mesh refinement example is
proposed in Figure 1.
The mesh refinement procedure can be simply expressed as follows. We first set a mesh refinement
parameter S̄. For instance, it can be the mean value over the domain Ω at time tn :
1 X n
S̄ = Skb . (12)
|Ω|
kb
We then define two coefficients 0 6 αmin 6 αmax 6 1, which determine the ratio of numerical production of
entropy leading to mesh refinement or mesh coarsening.
Thus, for each cell Ckb :
• if Sknb > S̄αmax , the mesh is refined and split into two sub-cells Ckb0 and Ckb1 ,
• if Sknb0 < S̄αmin and Sknb1 < S̄αmin , the mesh is coarsened into a cell Ckb .
On one hand, if a cell Ckb is split into two sub-cells Ckb0 and Ckb1 , averaged values at time tn are projected
on each sub-cell (for the first order scheme):
and the numerical fluxes between the two sub-cells (see Figure 2(a)) are defined as:
n
Fkb0 −1/2 = Fknb −1/2 ,
Fknb0 +1/2 = Fknb1 −1/2 = f (wknb ) ,
n
Fkb1 +1/2 = Fknb +1/2 .
6
In the case of second order method, as the gradient is available, we also use:
hkb ∂wknb
n n
wkb0 = wkb − 4 ∂x ,
∂wknb
w = wn + hkb
n
.
kb1 kb
4 ∂x
On the other hand, if two sub-cells Ckb0 and Ckb1 are coarsened, we initialize the new cell Ckb as (see
Figure 2(b)):
1
wknb = wknb0 + wknb1
2
and n n
Fkb −1/2 = Fkb0 −1/2 ,
Remark 3.1 It is hard to define an optimal mesh refinement criterion since the less the threshold is small,
the more the mesh is refined unnecessarly and the more the threshold is large, the less the mesh is refined.
Therefore, a good compromise is to use the average value of the mesh refinement criterion (12). The others
threshold parameters αmin and αmax allow to set a percentage of mesh refinement and mesh coarsening with
respect to the quantity S̄. It is not surprising that these settings will deteriorate or improve the accuracy of
the numerical solution. For instance, the more αmin and αmax are small, the more accurate are the results
to the expense of the computational time.
7
where N stands for the maximum level
hmax
N = log2 + 1.
hmin
The coarsest cells are therefore of level 1, while the finest cells are of level N .
Remark 4.1 For any mesh, the previous inequality holds and in the particular case of a dyadic mesh, we
have:
hk = 2N −Lk hmin .
Let δtn be the minimum time step at time tn according to the CFL condition associated with the smallest
cell. The macro time step ∆tn is then defined by:
∆tn = 2N −1 δtn .
Assuming that the maximum level of refinement is N at the current time tn , following [2], the local time
stepping algorithm reads as follows:
foreach i ∈ {1, 2N −1 } do
Let j be the biggest integer such that 2j divides i
foreach interface xk+1/2 such that Lk+1/2 > N − j do
1. compute the integral of Fk+1/2 (t) on the time interval 2N −Lk+1/2 δtn ,
2. distribute Fk+1/2 (tn ) to the two adjacent cells,
3. update only the cells of level greater than N − j.
end
end
Remark 4.2 We can notice that according to this algorithm, the flow is computed more times in the small
cells than in the bigger ones.
Remark 4.3 The minimum time step is defined by the CFL condition associated with the smallest cell at
time tn , i.e
hmin
δtn <
max |ν|
where ν is an eigenvalue of the convection matrix Dw f (w).
Remark 4.4 This scheme uses the Osher and Sanders [17] projection. This point is developed in Section
4.2.
Let us illustrate for a global time advancement the local time stepping algorithm for a first order scheme
(the principle for a second order is essentially the same since we have to use the value of the flux stored in
the two previous local time steps). We consider a mesh composed of 4 cells of levels 1, 2 and 3 respectively,
n
i.e. here N = 3, as displayed on Figure 3. Let us note wm the state vector at time tn . At the first stage
(see Figure 3(a)), i = 1, only the small cells are advanced with a step δtn , i.e. w3n1 := w3 (tn + δtn ) and
w4n1 := w4 (tn + δtn ) are computed. While i = 2 (see Figure 3(b)) concerns the small cells of level LN and
the cells immediately larger at level LN −1 . The cells LN travel with a time step δtn , while the cells LN −1
travel with a time step 2δtn , etc.
8
(a) At time tn + δtn (b) At time tn + 2δtn .
9
(a) Osher and Sanders projection.
and
∆tn n n+1/2
∀k ∈ Z, wkn+1 = wkn − δFk + δFk . (13)
2hk
It was pointed out by Tang and Warnecke [26] that the present scheme loses the conservative property and
it is locally non consistent in the sense of the truncation error. Indeed, at the intermediate time step, one
has
X n+1/2 X ∆tn
wk = wkn + Fn (wn , wn )
2hk0 +1 k0 +1/2 k0 k0 +1
k∈Z k∈Z
which shows that this scheme is locally non conservative. At the next intermediate step, the conservativity
is preserved, i.e. X X n+1/2
wkn+1 = wk
k∈Z k∈Z
∂t w + c∂x w = 0
10
with a positive constant c. In that case, using the Godunov solver, the scheme (13) writes for k = k0 :
wkn+1
0 +1
− wkn0 +1 c n
n+1/2
− wk0 +1 − wkn0 + wk0 +1 − wkn0 =0.
∆tn 2hk0
Assuming w smooth enough, writing the Taylor expansion of w at point xk0 +1 at time tn+1 and tn+1/2 , we
deduce the following equation
c ∆t
∂t w + c∂x w = − ∂t w + O(h, ∆t).
4 h
∆t
Thus, if converge to a constant d > 0 then the previous equation does not converge to the initial transport
h
equation.
Although the scheme is not conservative, they claim that it is consistent in the sense of the truncation error.
Even if the Osher and Sanders projection leads to non conservative and non consistent scheme at the
space-time grid between two levels of refinement, it has the advantage to be less time consuming than the
second one. Let us also note that the apparent loss of consistency on the local truncation error seems not
to affect the actual error of the scheme (as we will see in Section 5.1.1 and see also for instance [4, 22]
for interesting issues). On the contrary, Puppo and Semplice [20] do not loose the consistency and the
conservativity because their procedure does not produce mass and the fluxes are well computed at the cell
interface between two levels of refinement. Nevertheless, their approach requires more evaluations of the flux
than the Osher and Sanders projection since they use updated neighbourhood state (non projected as done
in the Osher and Sanders approach) .
5 Numerical experiments
We now present some results using the adaptive multi scale scheme constructed in Section 3 and Section 4.
The discussion is limited on studying the robustness, accuracy and the gain of cpu-time of several schemes.
To this end, we compare results to those from the exact solution or a reference solution. These include the
Sod’s shock tube problem, the Lax’s shock tube problem, and the Shu-Osher test case.
For all test cases, numerical solutions are computed using the one-dimensional gas dynamics equations
for ideal gas:
∂ρ ∂ρu
+ =0 (14)
∂t ∂x
2
∂ρu ∂ ρu + p
+ =0 (15)
∂t ∂x
∂ρE ∂ (ρE + p) u
+ =0 (16)
∂t ∂x
p = (γ − 1)ρε (17)
11
where ρ, u, p, γ, E are respectively the density, the velocity, the pressure, the ratio of the specific heats (set
u2
to 1.4) and the total energy E = ε + (where ε is the internal specific energy). Using the conservative
2
T
variables w = (ρ, ρu, ρE) , we classically define the entropy by
p
s(w) = −ρ ln
ργ
• ρex will make reference to the exact solution of the Sod’s problem or the Lax’s problem.
It consists of two non linear waves (one right shock and one left rarefaction) connected through a contact
discontinuity. This basic test provides information on how well a scheme captures and resolves shocks and
12
contact discontinuities and how well the correct density of the rarefaction wave is reproduced and therefore
it is used as a first test.
The computational domain here is [−1, 1] with prescribed free boundary conditions. For each numerical
computation, the following parameters have been used:
CFL : 0.25,
Simulation time (s) : 0.4,
Initial number of cells : 200,
Maximum level of mesh refinement : Lmax .
As displayed on Figure 5 and cpu performance above, even if the results using the TW projection are more
accurate than the OS one: the TW projection is time consuming because it is necessary to update the fluxes
on large cells at small intermediate times if they border a smaller cell. As a consequence, we will use in
what follows the OS projection. Let us also note that such a problem appear when Lmax is large. In order
to avoid such oscillations, we will limit to Lmax 6 5 which is large enough for practical applications.
13
As we observe on Figure 6-Figure 7, the numerical density of entropy production for levels Lmax = 2 and
5 captures the contact discontinuity (see Figures 6(d)-7(d)) and the shock discontinuity (see Figures 6(e)-
7(e)). Moreover, the numerical density of entropy production reproduces the behavior of the error made on
ρ (as displayed on Figures 6(b)-7(b)) and the mesh is automatically refined in those areas. Far from such
regions, the mesh is coarsened since the exact solution and the adaptive one coincide with each other (precise
order and error will be provided in the sequel). The accuracy is of course improved when we increase the
value of Lmax as we can compare on Figure 6-Figure 7.
The total production of entropy P (11) corresponds to the discrete lt1 lx1 norm of the numerical density of
entropy production. Through several numerical tests, we observe that P decreases as we refine. For instance,
for Lmax = 2, one has P = 0.0098 while for Lmax = 5, one has P = 0.0073.
Numerical order.
We now perform several numerical tests to compute the rate of convergence of the first and second order
adaptive scheme. We use the discrete lt1 lx1 norm of the error on the density (see Figure 8) and the discrete
lx1 on the error on the density at time t = 0.4. As the number of cells is not fixed, we consider the average
number of cells NLmax for levels Lmax = 1, 2, 3, 4, 5 used as abscissa on Figures 8(a)–8(d).
As expected (see for instance [7, 20]), the convergence of second order methods are of first order on fixed
grid due to the presence of discontinuities in the solution (as displayed on Figures 8(b)-8(d)). Nevertheless,
the adaptive scheme improves the rate of convergence for the first as well as for the second order scheme
(see Figures 8(a)–8(d)). Moreover, using local time stepping or uniform time step, the numerical order are
similar (see Figures 8(a)–8(d) and Table 1).
The rate of convergence is considerably increased by the adaptive scheme and, in our experiences, it can
be improved by changing the threshold parameters αmin and αmax at the expense of the cpu-time.
Let us also emphasize that with the present threshold parameters, the order of the AB1M scheme is
approximately 2.
kρ − ρex kl1t l1x vs NLmax kρ − ρex kl1x vs NLmax kρ − ρex kl1t l1x vs cpu-time
AB1U 0.70 0.72 0.41
AB1 1.86 1.93 0.64
AB1M 2.15 2.16 0.77
AB2U 0.77 0.77 0.42
AB2 1.74 1.84 0.57
AB2M 2.21 2.18 0.76
RK2U 0.76 0.76 0.42
RK2 1.68 1.80 0.55
Table 1: Numerical order on the density error using lt1 lx1 norm and lx1 at time t = 0.4 with respect to the
averaged number of cells, and the lt1 lx1 norm on the density error with respect to the cpu-time (in log10 scale).
1
Intel(R) Core(TM) i5-2500 CPU @ 3.30GHz
14
5.2 The Lax’s shock tube problem
The Lax’s shock tube is similar to the Sod’s shock tube problem, except that the amplitude of the shock is
stronger and the initial condition has a discontinuity in the velocity:
(0.445, 0.698, 3.528), x 6 0,
x ∈ [−1, 1], (ρ, u, p)(0, x) = (19)
(0.5, 0, 0.571), x > 0 .
This second test is used in order to confirm similar conclusion obtained for the Sod’s shock tube problem.
As in the previous case, the exact solution is known and computed from the Riemann problem (14)–(17)
with Riemann data (19) using 5 000 uniform cells.
The computational domain here is [−1, 1] with prescribed free boundary conditions. For each numerical
computation, the following parameters have been used:
CFL : 0.5,
Simulation time (s) : 0.13,
Initial number of cells : 200,
Maximum level of mesh refinement : Lmax .
As done before, we first represent the numerical solution compared to the exact one for levels Lmax = 2
and 5. On Figures 9-10, we represent the density of the solution at time t = 0.13, plot its numerical density
of entropy production, the error made on the density and the level of refinement. We also perform as done
previously, the numerical order of first and second order schemes on Figures 11(a)–11(d) and compare the
accuracy versus cpu-time on Figures 11(e)–11(f) and Table 2.
Even if the Lax’s shock tube problem introduce a huge shock wave with respect to the Sod’s shock tube
problem the same conclusion holds, namely, the numerical density of entropy production reproduces the
behavior of the error done as we can observe on Figures 9-10 and thus the mesh is automatically refined
where it is necessary. Moreover, we observe again an improvement of the numerical approximation when the
adaptive scheme is used and exceptional convergence of first order adaptive scheme (see Figure 11(a) and
Table 2). Finally, the computational time is drastically reduced when the local time stepping algorithm is
used (see Figures 11(e)–11(f) and Table 2).
kρ − ρex kl1t l1x vs NLmax kρ − ρex kl1x vs NLmax kρ − ρex kl1t l1x vs cpu-time
AB1U 0.66 0.69 0.27
AB1 3.20 3.31 0.66
AB1M 3.55 3.56 0.82
AB2U 0.60 0.62 0.32
AB2 3.24 3.40 0.70
AB2M 3.31 3.11 0.78
RK2U 0.73 0.70 0.38
RK2 3.25 3.43 0.65
Table 2: Numerical order on the density error using lt1 lx1 norm and lx1 at time t = 0.13 with respect to the
averaged number of cells, and the lt1 lx1 norm on the density error with respect to the cpu-time (in log10 scale).
15
The Shu and Osher’s initial conditions are
(3.857143, 2.629369, 10.3333), x 6 0.1
(ρ, u, p)(0, x) =
(1 + 0.2 sin(50x), 0, 1), x > 0.1
and the computational domain is [0, 1] with prescribed free boundary conditions.
As a reference solution, we compute the solution on a uniform fixed grid (20 000 cells) with the RK2
scheme. The density of the reference solution at time t = 0.18 s and its numerical density of entropy
production are displayed on Figure 12(a). This solution being computed on a very fine fixed grid, as
predicted by the theory, the density of entropy production is almost concentrated at the shocks. Even if
small productions are present between 0.5 6 x 6 0.75, one can consider such a solution as an “exact” one.
For each numerical computation, we have used the following parameters:
CFL : 0.219,
Simulation time (s) : 0.18,
Initial number of cells : 500,
Maximum level of mesh refinement : Lmax = 4.
On Figure 12(b), we plot the density of the reference solution, the one by AB1, AB2 and RK2 schemes
and their numerical density of entropy production. Starting from 500 cells, the adaptive schemes lead to
very close solutions for each scheme and the numerical density of entropy production vanishes everywhere
where the solution is smooth and every solution fit to the reference solution. However, focusing closely on
the oscillating area between 0.5 6 x 6 0.7, one can observe that, as expected, RK2 is better than AB2 which
is better than AB1. Those results are also confirmed by the computation of the numerical order displayed
on Figure 12(d): it was not true in the two previous test cases (see Figures 8-11) as emphasized in Section
5.1 (for which the numerical order for AB1, for instance, was greater than second order methods).
Table 3 summarizes the computation of the total entropy production, the discrete lx1 norm of the error
on the density, the cpu-time, the average number of cells and the maximum number of cells at final time
t = 0.18 s for a level Lmax = 4.
As said before, the hierarchy in terms of accuracy is very well respected as we also see on Table 3 for
the error on the density or the total production of entropy. We see again a case where the total production
of entropy is an accuracy indicator.
It is well-known that the AB2 scheme is less stable and less accurate than the RK2 scheme. Nonetheless,
in the framework of the local time stepping, for almost the same accuracy the AB2M scheme computes 3
times faster than the RK2 which is a significant gain in time.
16
All numerical tests also show that the numerical density of entropy production combined with the pro-
posed mesh refinement parameter is a relevant local error indicator (everywhere where the solution remains
smooth) and discontinuity detector (large shocks and oscillating solutions are very well-captured). Moreover,
we have shown that the implementation of the local time stepping algorithm can significantly reduce the
computational time keeping the same order of accuracy.
We have recalled the Tang-Warnecke projection and the Osher-Sanders projection. In particular, even if
the Tang-Warnecke projection is consistent, the solution develops numerical instabilities for a large maximum
level of refinement. This statement has been numerically reproduced and we have proposed a numerical
smoothing grid technique which prevents two adjacent cells from having a level difference greater than
two. As a consequence the amplitude of such oscillation is minimized. Nevertheless, since both methods
lead to oscillating solutions, the Osher-Sanders projection offers a good compromise between accuracy and
computing cost reduction. Finally, we plan to improve the efficiency of the adaptive scheme to capture
accurately the contact discontinuities and to extend this work for 2D/3D numerical applications.
Acknowledgements
The authors wish to thank the referees for their careful reading of the previous version of the manuscript
and useful remarks.
This work is supported by the "Agence Nationale de la Recherche" through the COSINUS program (ANR
CARPEiNTER project n◦ ANR-08-COSI-002).
References
[1] Allahviranloo T., Ahmady N., Ahmady E., Numerical solution of fuzzy differential equations by
predictor–corrector method. Inform. Sci., 177(7):1633–1647, 2007.
[2] Altmann C., Belat T., Gutnic M., Helluy P., Mathis H., Sonnendrücker E., Angulo W., Hérard J.M.,
A local time-stepping discontinuous Galerkin algorithm for the MHD system. In CEMRACS 2008—
Modelling and numerical simulation of complex fluids, volume 28 of ESAIM Proc., pages 33–54. EDP
Sci., Les Ulis, 2009.
[3] Berger M.J., Oliger J., Adaptive mesh refinement for hyperbolic partial differential equations. J. Comp.
Phys., 53(3):484–512, 1984.
[4] Cockburn B., Gremaud P.A., A priori error estimates for numerical methods for scalar conservation laws.
Part II: Flux-splitting monotone schemes on irregular Cartesian grids. Math. Comp., 66(218):547–572,
1997.
[5] Croisille J.P., Contribution à l’étude théorique et à l’approximation par éléments finis du système
hyperbolique de la dynamique des gaz multidimensionnelle et multi-espèce. PhD thesis, Université de
Paris VI, 1990.
[6] Eymard R., Gallouët T., Herbin R., Finite volume methods. In Handbook of numerical analysis, Vol.
VII, Handb. Numer. Anal., VII, pages 713–1020. North-Holland, Amsterdam, 2000.
[7] Gallouët T., Hérard J.M., Seguin N., Some recent finite volume schemes to compute Euler equations
using real gas EOS. Internat. J. Numer. Methods Fluids, 39(12):1073–1138, 2002.
[8] Godlewski E., Raviart P.A., Numerical approximation of hyperbolic systems of conservation laws, volume
118 of Applied Mathematical Sciences. Springer-Verlag, New York, 1996.
[9] Golay F., Numerical entropy production and error indicator for compressible flows. C.R. Mécanique,
337:233–237, 2009.
17
[10] Guermond J.L., Pasquetti R., Popov B., Entropy viscosity method for nonlinear conservation laws. J.
Comp. Phys., 230(11):4248–4267, 2011.
[11] Hairer E., P. Nørsett S., Wanner G., Solving ordinary differential equations. I, volume 8 of Springer
Series in Computational Mathematics. Springer-Verlag, Berlin, second edition, 1993. Nonstiff problems.
[12] Houston P., Mackenzie J.A., Süli E., Warnecke G., A posteriori error analysis for numerical approxi-
mations of Friedrichs systems. Numer. Math., 82(3):433–470, 1999.
[13] Jenny P., Lee S.H., Tchelepi H.A., Adaptive multiscale finite-volume method for multiphase flow and
transport in porous media. Multiscale Model. Simul., 3(1):50–64, 2005.
[14] Karni S., Kurganov A., Local error analysis for approximate solutions of hyperbolic conservation laws.
Adv. Comput. Math., 22(1):79–99, 2005.
[15] Karni S., Kurganov A., Petrova G., A smoothness indicator for adaptive algorithms for hyperbolic
systems. J. Comp. Phys., 178(2):323–341, 2002.
[16] Müller S., Stiriba Y., Fully adaptive multiscale schemes for conservation laws employing locally varying
time stepping. SIAM J. Sci. Comput., 30(3):493–531, 2007.
[17] Osher S., Sanders R., Numerical approximations to nonlinear conservation laws with locally varying
time and space grids. Math. Comp., 41(164):321–336, 1983.
[18] Puppo G., Numerical entropy production on shocks and smooth transitions. In Proceedings of the Fifth
International Conference on Spectral and High Order Methods (ICOSAHOM-01) (Uppsala), volume
17(1-4), pages 263–271, 2002.
[19] Puppo G., Numerical entropy production for central schemes. SIAM J. Sci. Comput., 25(4):1382–1415
(electronic), 2003/04.
[20] Puppo G. , Semplice M., Numerical entropy and adaptivity for finite volume schemes. Commun.
Comput. Phys., 10(5):1132–1160, 2011.
[21] Shu C. W., Osher S., Efficient implementation of essentially nonoscillatory shock-capturing schemes. J.
Comput. Phys., 77(2):439–471, 1988.
[22] Simeoni C., Remarks on the consistency of upwind source at interface schemes on nonuniform grids.
SIAM J. Sci. Comput., 48(1):333–338, 2011.
[23] Sod G.A., A survey of several finite difference methods for systems of nonlinear hyperbolic conservation
laws. J. Comput. Phys., 27(1):1–31, 1978.
[24] Sonar T., Hannemann V., Hempel D. Dynamic adaptivity and residual control in unsteady compressible
flow computation. Math. Comput. Modelling, 20(10-11):201–213, 1994.
[25] Tan Z., Zhang Z., Huang Y., Tang T., Moving mesh methods with locally varying time steps. J. Comp.
Phys., 200(1):347–367, 2004.
[26] Tang H., Warnecke G., A class of high resolution difference schemes for nonlinear Hamilton-Jacobi
equations with varying time and space grids. SIAM J. Sci. Comput., 26(4):1415–1431, 2005.
[27] Toro E.F., Riemann solvers and numerical methods for fluid dynamics. Springer-Verlag, Berlin, second
edition, 1999. A practical introduction.
[28] Zhang X.D., Trépanier J.Y., Camarero R., A posteriori error estimation for finite-volume solutions of
hyperbolic conservation laws. Comp. Meth. App. Eng., 185:1–19, 2000.
18
1 1
0.8 0.8
0.6 0.6
Density
Density
0.4 0.4
0.2 0.2
0 0
-1 -0.5 0 0.5 1 -1 -0.5 0 0.5 1
x x
(a) Numerical solution using the OS projection. (b) Numerical solution using the TW projection.
0.429
TW projection
OS projection
0.428
0.427
Density
0.426
0.425
0.424
0.423
0.422
-0.05 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35
x
(c) Without smoothing effect.
0.429
TW projection
OS projection
0.428
0.427
Density
0.426
0.425
0.424
0.423
0.422
-0.05 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35
x
(d) With smoothing effect.
Figure 5: Sod’s shock tube problem: numerical oscillations with/without smoothing effect at time t = 0.4 s
with Lmax = 6. The Tang-Warnecke (TW) and the Osher-Sanders (OS) projections are used.
19
1.2 0.6 5 0.1
ρ on adaptive mesh with Lmax = 2 level
n
ρ on uniform fixed mesh N = 254 4.5 Sk
3
0.6
0.2
0.04
2.5
0.4 0.1
2
0.02
0 1.5
0.2
-0.1 1 0
-1 -0.5 0 0.5 1 -1 -0.5 0 0.5 1
x x
(a) Density and numerical density of entropy production. (b) Mesh refinement level, numerical density of entropy produc-
tion and local error.
1
ρ on adaptive mesh with Lmax = 2 0.45 ρ on adaptive mesh with Lmax = 2
ρ on uniform fixed mesh N = 254 ρ on uniform fixed mesh N = 254
0.9 ρex ρex
0.4
0.8
0.7
0.35
0.6
0.3
0.5
0.4
-0.6 -0.5 -0.4 -0.3 -0.2 -0.1 0.25 0.3 0.35 0.4 0.45 0.5
x x
(c) Zoom on the rarefaction. (d) Zoom on the contact discontinuity.
0.3
ρ on adaptive mesh with Lmax = 2
0.28 ρ on uniform fixed mesh N = 254
ρex
0.26
0.24
0.22
0.2
0.18
0.16
0.14
0.12
0.6 0.65 0.7 0.75 0.8
x
(e) Zoom on the shock.
Figure 6: Sod’s shock tube problem: solution at time t = 0.4 s using the AB1M scheme on a dynamic grid
with Lmax = 2 and the AB1 scheme on a uniform fixed grid of 254 cells.
20
1.2 1.4 5 0.1
ρ on adaptive mesh with Lmax = 5 level
n
ρ on uniform fixed mesh N = 681 4.5 Sk
0.6 3
0.6
0.04
0.4 2.5
0.4 0.2 2
0.02
0 1.5
0.2
-0.2 1 0
-1 -0.5 0 0.5 1 -1 -0.5 0 0.5 1
x x
(a) Density and numerical density of entropy production. (b) Mesh refinement level, numerical density of entropy produc-
tion and local error.
1
ρ on adaptive mesh with Lmax = 5 0.45 ρ on adaptive mesh with Lmax = 5
ρ on uniform fixed mesh N = 681 ρ on uniform fixed mesh N = 681
0.9 ρex ρex
0.4
0.8
Density
Density
0.7
0.35
0.6
0.3
0.5
0.4
-0.6 -0.5 -0.4 -0.3 -0.2 -0.1 0.25 0.3 0.35 0.4 0.45 0.5
x x
(c) Zoom on the rarefaction. (d) Zoom on the contact discontinuity.
0.3
ρ on adaptive mesh with Lmax = 5
0.28 ρ on uniform fixed mesh N = 681
ρex
0.26
0.24
Density
0.22
0.2
0.18
0.16
0.14
0.12
0.6 0.65 0.7 0.75 0.8
x
(e) Zoom on the shock.
Figure 7: Sod’s shock tube problem: solution at time t = 0.4 s using the AB1M scheme on a dynamic grid
with Lmax = 5 and the AB1 scheme on a uniform fixed grid of 681 cells.
21
-2 -2.2
AB1 uniform mesh: order = 0.69705 AB2 uniform mesh: order = 0.76835
AB1 adaptive mesh: order = 1.861 RK2 uniform mesh: order = 0.75971
AB1M adaptive mesh: order = 2.1539 AB2 adaptive mesh: order = 1.7421
-2.2 -2.4 AB2M adaptive mesh: order = 2.2141
RK2 adaptive mesh: order = 1.6808
-2.4 -2.6
log10(error)
log10(error)
-2.6 -2.8
-2.8 -3
-3 -3.2
-3.2 -3.4
-3.4 -3.6
2.3 2.4 2.5 2.6 2.7 2.8 2.9 3 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3
(a) kρex − ρkl1 l1 with respect to the averaged number of cells (b) kρex − ρkl1 l1 with respect to the averaged number of cells
t x t x
for the schemes of order 1. for the schemes of order 2.
-1.6 -1.8
AB1 uniform mesh: order = 0.72126 AB2 uniform mesh: order = 0.77005
AB1 adaptive mesh: order = 1.9355 RK2 uniform mesh: order = 0.7589
AB1M adaptive mesh: order = 2.1669 AB2 adaptive mesh: order = 1.8437
AB2M adaptive mesh: order = 2.1825
-1.8 -2
RK2 adaptive mesh: order = 1.7937
-2 -2.2
log10(error)
log10(error)
-2.2 -2.4
-2.4 -2.6
-2.6 -2.8
-2.8 -3
2.3 2.4 2.5 2.6 2.7 2.8 2.9 3 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3
(c) kρex − ρkl1 with respect to the averaged number of cells (d) kρex − ρkl1 with respect to the averaged number of cells
x x
for the schemes of order 1 at time t = 0.4 s. for the schemes of order 2 at time t = 0.4 s.
-2 -2.2
AB1 uniform mesh: order = 0.41231 AB2 uniform mesh: order = 0.42838
AB1 adaptive mesh: order = 0.64897 RK2 uniform mesh: order = 0.42592
AB1M adaptive mesh: order = 0.77387 AB2 adaptive mesh: order = 0.57266
-2.2 -2.4 AB2M adaptive mesh: order = 0.76005
RK2 adaptive mesh: order = 0.54871
-2.4 -2.6
log10(error)
log10(error)
-2.6 -2.8
-2.8 -3
-3 -3.2
-3.2 -3.4
-3.4 -3.6
log10(cpu-time) log10(cpu-time)
(e) cpu-time–kρex − ρkl1 l1 with respect to the cpu-time for (f) cpu-time–kρex − ρkl1 l1 with respect to the cpu-time for
t x t x
the schemes of order 1. the schemes of order 2.
22
9 5 0.4
ρ on adaptive mesh with Lmax = 2 level
1.4 ρ on uniform fixed mesh N = 227 8 Skn
5 3.5 0.25
1
Density
4 3 0.2
0.8 3
2.5 0.15
2
0.6 2 0.1
1
1.5 0.05
0.4 0
-1 1 0
-1 -0.5 0 0.5 1 -1 -0.5 0 0.5 1
x x
(a) Density and numerical density of entropy production. (b) Mesh refinement level and local error.
0.46
ρ on adaptive mesh with Lmax = 2
ρ on uniform fixed mesh N = 227
0.44 ρex
0.42
0.4
0.38
0.36
0.34
-0.5 -0.45 -0.4 -0.35 -0.3 -0.25 -0.2 -0.15 -0.1
x
(c) Zoom on the rarefaction.
0.8
0.6
0.4
Figure 9: Lax’s shock tube problem: solution at time t = 0.13 s using AB1M scheme with Lmax = 2.
23
12 5 0.4
ρ on adaptive mesh with Lmax = 5 level
1.4 ρ on uniform fixed mesh N = 398 Skn
3 0.2
0.8 4
2.5 0.15
2
0.6 2 0.1
0 1.5 0.05
0.4
-2 1 0
-1 -0.5 0 0.5 1 -1 -0.5 0 0.5 1
x x
(a) Density and numerical density of entropy production. (b) Mesh refinement level and local error.
0.46
ρ on adaptive mesh with Lmax = 5
ρ on uniform fixed mesh N = 398
0.44 ρex
0.42
Density
0.4
0.38
0.36
0.34
-0.5 -0.45 -0.4 -0.35 -0.3 -0.25 -0.2 -0.15 -0.1
x
(c) Zoom on the leg of the rarefaction.
1
Density
0.8
0.6
0.4
Figure 10: Lax’s shock tube problem: solution at time t = 0.13 s using AB1M scheme with Lmax = 5.
24
-2.2 -2.4
AB1 uniform mesh: order = 0.66364 AB2 uniform mesh: order = 0.59799
AB1 adaptive mesh: order = 3.1934 RK2 uniform mesh: order = 0.73059
AB1M adaptive mesh: order = 3.5482 AB2 adaptive mesh: order = 3.2496
-2.4 -2.6 AB2M adaptive mesh: order = 3.3174
RK2 adaptive mesh: order = 3.2519
-2.6 -2.8
log10(error)
log10(error)
-2.8 -3
-3 -3.2
-3.2 -3.4
-3.4 -3.6
-3.6 -3.8
2.3 2.35 2.4 2.45 2.5 2.55 2.6 2.65 2.7 2.3 2.35 2.4 2.45 2.5 2.55 2.6 2.65 2.7
(a) kρex − ρkl1 l1 with respect to the averaged number of cells (b) kρex − ρkl1 l1 with respect to the averaged number of cells
t x t x
for the schemes of order 1. for the schemes of order 2.
-1.2 -1.4
AB1 uniform mesh: order = 0.6914 AB2 uniform mesh: order = 0.62497
AB1 adaptive mesh: order = 3.3135 RK2 uniform mesh: order = 0.691
AB1M adaptive mesh: order = 3.5601 AB2 adaptive mesh: order = 3.4002
-1.4 -1.6 AB2M adaptive mesh: order = 3.11
RK2 adaptive mesh: order = 3.4305
-1.6 -1.8
log10(error)
log10(error)
-1.8 -2
-2 -2.2
-2.2 -2.4
-2.4 -2.6
-2.6 -2.8
2.3 2.35 2.4 2.45 2.5 2.55 2.6 2.65 2.7 2.3 2.35 2.4 2.45 2.5 2.55 2.6 2.65 2.7
(c) kρex − ρkl1 with respect to the averaged number of cells (d) kρex − ρkl1 with respect to the averaged number of cells
x x
for the schemes of order 1 at time t = 0.13 s. for the schemes of order 2 at time t = 0.13 s.
-2.2 -2.4
AB1 uniform mesh: order = 0.26793 AB2 uniform mesh: order = 0.31869
AB1 adaptive mesh: order = 0.66228 RK2 uniform mesh: order = 0.38241
AB1M adaptive mesh: order = 0.82009 AB2 adaptive mesh: order = 0.70323
-2.4 -2.6 AB2M adaptive mesh: order = 0.78705
RK2 adaptive mesh: order = 0.65517
-2.6 -2.8
log10(error)
log10(error)
-2.8 -3
-3 -3.2
-3.2 -3.4
-3.4 -3.6
-3.6 -3.8
log10(cpu-time) log10(cpu-time)
(e) cpu-time–kρex − ρkl1 l1 with respect to the cpu-time for (f) cpu-time–kρex − ρkl1 l1 with respect to the cpu-time for
t x t x
the schemes of order 1. the schemes of order 2.
25
5 10 7 12
Reference solution AB1
Skn Skn for AB1
4.5
Density
3
6
2.5 3
4
2 4
2
1.5 2
1 2
1
0.5 0 0 0
0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1
x x
(a) Reference solution. (b) Density and numerical density of entropy production.
4.6 AB1
AB2
RK2
4.4 Reference solution
4.2
4
Density
3.8
3.6
3.4
3.2
-0.6
AB1 adaptive mesh: order = 0.78839
AB1M adaptive mesh: order = 0.78557
AB2 adaptive mesh: order = 1.1846
AB2M adaptive mesh: order = 1.2063
-0.8
RK2 adaptive mesh: order = 1.3507
-1
log10(error)
-1.2
-1.4
-1.6
-1.8
(d) Numerical order: kρex − ρkl1 with respect to the averaged number of cells
x
for the schemes of order 1 and 2 at time t = 0.18 s.
26