An improved simple WENO limiter for discontinuousGalerkin methods solving hyperbolic systems on
unstructured meshes
Jie Du1, Chi-Wang Shu2 and Xinghui Zhong3
Abstract
In this paper, we improve the simple WENO limiter for the Runge-Kutta dis-continuous Galerkin (RKDG) method in [33] for solving two-dimensional hyperbolicsystems on unstructured meshes. The major improvement is reducing the numberof polynomials transformed to the characteristic fields for each direction. For thetriangular mesh, this new simple WENO limiter transforms only two polynomi-als to the characteristic fields for each direction, while the original simple WENOlimiter [33] uses four polynomials. Thus the improved simple WENO limiter re-duces the computational cost and improves the efficiency. It provides a simpler andmore practical and efficient way to the characteristic-wise limiting procedure, whilestill simultaneously maintaining uniform high-order accuracy in smooth regions andcontrolling spurious nonphysical oscillations near discontinuities. We also applythis improved simple WENO limiter to a high order method constructed for solv-ing hyperbolic conservation laws on arbitrarily distributed point clouds [9], wherepolygonal meshes are constructed based on the random points and the traditionalDG method was adopted on the constructed polygonal mesh. For such a complexpolygonal mesh, this limiter still transforms only two polynomials to the character-istic fields. Thus the simplicity and efficiency of this new limiter is more evident inthis case. Numerical results are provided to illustrate the accuracy and effectivenessof this procedure. For some examples, the improved limiter has less smearing andhigher resolution than the original one.
Keywords: discontinuous Galerkin method; unstructured mesh; arbitrarily distributed
point cloud; WENO limiter; hyperbolic conservation laws; hyperbolic system
1 Introduction
In this paper, we are interested in solving the following two-dimensional conservation law
ut(x, t) +∇ · F(u(x, t)) = 0, in Ω× (0, T ), (1.1)
1Yau Mathematical Sciences Center, Tsinghua University, Beijing 100084, P.R. China. YanqiLake Beijing Institute of Mathematical Sciences and Applications, Beijing 101408, P.R. [email protected]
2Division of Applied Mathematics, Brown University, Providence, RI 02912.chi-wang [email protected]
3School of Mathematical Sciences, Zhejiang University, Hangzhou, Zhejiang 310058, P.R. [email protected]
1
where x = (x, y) ∈ Ω ⊂ R2, ∇ = ( ∂∂x, ∂∂y
) and u = (u1, · · · , um), which is assumed to be
hyperbolic; that is, the flux vector F = (f(u), g(u)) is assumed to be such that any real
combination of the Jacobians ξ1∂f∂u
+ ξ2∂g∂u
has m real eigenvalues and a complete set of
eigenvectors. In this paper, we improve the simple WENO limiter [29, 33] for the Runge-
Kutta discontinuous Galerkin (RKDG) method for solving (1.1) on unstructured mesh,
while still simultaneously maintaining uniform high-order accuracy in smooth regions and
controlling spurious nonphysical oscillations near discontinuities. The idea provided in this
paper may generalize to other limiters with a characteristic-wise limiting procedure and
can provide useful guide for DG methods with limiters for multidimensional hyperbolic
systems.
The main challenge for solving (1.1) is that the exact solution may contain disconti-
nuities or sharp gradient regions, regardless of the smoothness of the initial or boundary
conditions [27, 17]. Discontinuous Galerkin (DG) methods [6, 5, 4, 3, 7], being one of the
popular choices for solving hyperbolic conservation laws, can compute the numerical solu-
tion of hyperbolic equations without further modification provided the solution either is
smooth or contains weak discontinuities. However, for problems containing strong shocks
or contact discontinuities, numerical solutions of DG methods may suffer from spurious
oscillations or even nonlinear instability. One possible way to remedy this is to apply a
nonlinear limiter, that is, to modify the DG solution in the so-called “troubled cell” to an-
other polynomial, which is less oscillatory. One type of such limiters is the so-called slope
limiters, which include but are not limited to the minmod type total variation bounded
(TVB) limiter [24], the moment based limiter [1] and an improved moment limiter [2].
These limiters control oscillations very well at the price of possibly degrading the accuracy
of the numerical solution at smooth extrema [8]. Another type of limiters is the WENO
type limiters, which are based on the WENO reconstruction [25] to achieve both high or-
der accuracy and non-oscillatory properties near discontinuities. Earlier WENO limiters
[22, 19, 21] used wider stencils than the original communication structure of DG meth-
ods (the DG methods only communicate with immediate neighboring cells via numerical
fluxes), hence they have problems in the original DG code structure, especially for parallel
implementations. Moreover, they have difficulty to be implemented for multi-dimensional
2
problems, especially on unstructured meshes. Later, more compact WENO limiters were
designed in [29, 33, 34, 35], which utilize fully the advantage of DG polynomials from the
target cell and its immediate neighbors and thus are simple to implement, in particular on
unstructured meshes. Recently, compact WENO limiters based on the multi-resolution
WENO procedure [31, 32] were developed in [30], which appear to be quite robust for
RKDG methods of various orders. We also refer readers to [12, 11] for a class of subcell
limiters for DG methods.
For hyperbolic systems, the limiting procedure is usually used with a local charac-
teristic decomposition in order to achieve better non-oscillatory qualities, see [26] for a
discussion on the rationale in adopting such a decomposition. Moreover, additional care
needs to be taken for the two-dimensional case, especially for unstructured meshes, when
transforming the solution (polynomial vectors) to the characteristic fields, since there
are two Jacobian matrices corresponding to fluxes in x and y directions. For the simple
WENO limiter on the triangular mesh in [33], the transforming procedure is taken as
follows: for each fixed edge of the target cell, the polynomial vectors from the target cell
and all its neighbors (sharing this edge as well as two other edges with the target cell)
are transformed to the characteristic fields of the Jacobian matrix associated with the
normal on this edge. In this paper, we propose a new transforming procedure for the
simple WENO limiter applied to hyperbolic systems on the triangular mesh. That is, for
each fixed edge of the target cell, only two polynomial vectors, i.e. one from the target
cell and the other one from its neighbor which shares this edge with the target cell, are
transformed to the characteristic fields of the associated Jacobian matrix. Our numerical
tests show that we still achieve both high-order accuracy and non-oscillatory properties
as in [33] even though we use less information for the limiting procedure in each direction.
Clearly the improved simple WENO limiter reduces the computational cost and thus is
more practical and efficient than the original one.
Besides the triangular mesh, we also apply our improved simple WENO limiter to a
complex polygonal mesh. In [9], a conservative, stable and high order accurate method
was constructed for solving hyperbolic conservation laws on arbitrarily distributed point
clouds. The initial condition is given on such a point cloud, and the algorithm solves
3
for point values of the solution at later time also on this point cloud. An algorithm of
building a suitable unstructured polygonal mesh based on the random points was given
and the traditional DG method was adopted on the constructed mesh. To control the
spurious numerical oscillations near discontinuities, the simple WENO limiter was fur-
ther adapted to this method on polygonal meshes in [10]. For the constructed polygonal
mesh, each polygon within the mesh can be in any shape (even non-convex). Different
polygonal cells may have different number of edges. Moreover, two neighboring polygonal
cells usually share more than one common edges. For the characteristic-wise limiting
procedure on such a complex mesh, the original simple WENO limiter transforms much
more polynomial vectors to the characteristic fields for each direction than the triangu-
lar mesh. However our new simple WENO limiter still transforms only two polynomial
vectors to the characteristic fields for each direction. Therefore, this limiter saves much
more computational cost on such a complex polygonal mesh. The more edges a cell in the
unstructured meshes has, the more computational cost can be saved. In addition, our nu-
merical results show that the improved simple WENO limiter has less smearing and higher
resolution due to less information being used for reconstruction in each direction, without
compromising the advantage of simultaneously maintaining uniform high-order accuracy
in smooth regions and controlling spurious nonphysical oscillations near discontinuities.
This paper is organized as follows. We first review the RKDG algorithm formulation
for (1.1) in Section 2. In Section 3, we present the details of our improved simple WENO
limiter. Numerical examples are provided in Section 4 to demonstrate the performance
of this new approach. Concluding remarks are given in Section 5.
2 The RKDG method
In this section, we present the algorithm formulation of the RKDG method for the hy-
perbolic system (1.1).
For time discretization, we use the most popular third order strong stability preserving
(SSP) RK method [26], which for solving
ut = L(u, t),
4
with L being a spatial discretization operator, is given by
u(1) = un + ∆tL(un, tn),
u(2) =3
4un +
1
4u(1) +
1
4∆tL(u(1), tn + ∆t), (2.1)
un+1 =1
3un +
2
3u(2) +
2
3∆tL(u(2), tn +
1
2∆t).
For spatial discretization, we apply the DG methods and we will briefly describe the
algorithm formulation of the scheme on unstructured triangular mesh in Section 2.1 and
on arbitrarily distributed point clouds in Section 2.2.
2.1 On unstructured triangular mesh
In this section, we lay out the algorithm formulation of the DG method for solving the
hyperbolic system (1.1) on unstructured triangular mesh.
Let Th be a regular and shape-regular triangulation of the domain Ω into non-overlapping
triangles K. We define the finite element space as
Vkh := v ∈ L∞(Ω) : v|K ∈ P k(K),∀K ∈ Th,
where P k(K) is the set of polynomials of total degree less than or equal to k on K. Notice
that the functions in Vkh can be discontinuous across the edges of the triangles in Th. For
scalar equations, the semi-discrete DG method is defined as follows: to find the unique
function uh : [0, T ]→ Vkh, such that
d
dt
∫K
uhvh dx +∑e∈∂K
∫e
∧F(uh) · ne,K
vhds−∫K
F(uh) · ∇vhdx = 0, (2.2)
holds for all test functions vh ∈ Vkh, where ne,K is the outward unit normal to the edge
e. Here∧F(uh) · ne,K
is the so-called numerical flux, usually taken as a monotone flux,
defined at the cell interface and depending on the values of uh taken from the interior
and exterior of K, since uh can be discontinuous across an edge e. For systems, (2.2) is
satisfied by each component of uh. The numerical flux∧F(uh) · ne,K
is replaced by an
exact or approximated Riemann solver. More details can be found in [7] and the review
paper [8].
5
2.2 On arbitrarily distributed point clouds
In this section, we present the numerical scheme for solving (1.1) on arbitrarily dis-
tributed point clouds. Unlike the traditional problem in which the explicit initial function
u(x, 0),x = (x, y) ∈ Ω is given, we assume that the initial values of u are given only at
some isolated, unstructured points xiNi=1. All these points are arbitrarily distributed
and form a point cloud. In practice, these points are places where measurements are being
made or locations of the observation posts. We need to predict the evolution values of u
on this point cloud and compare them with future measurements.
At the initial time, we are given a set of randomly distributed points xiNi=1 together
with the initial data on these points. We first need to cover the computational domain
Ω with an appropriate mesh based on the given point cloud. Each cell in the generated
mesh should contain several given points in the original point cloud. The purpose is to
represent the initial condition with piecewise polynomials defined on this mesh by using
the given discrete initial point values of u.
The mesh generation includes two steps. In the first step, we divide the domain Ω into
N small Voronoi regions. For each given point xi in the point cloud, the corresponding
Voronoi region Vi is the set of all locations in Ω closer to xi than to any other given point
in the cloud. It is easy to see that each Voronoi region is a polygon and contains only one
given point in the point cloud. All Voronoi regions form a tessellation of Ω. We call the
set ViNi=1 as a Voronoi diagram. For a comprehensive treatment, see [18].
In the second step, we group these small Voronoi regions into cells VjMj=1. Each cell
Vj consists of several adjacent Voronoi regions and hence contains several given discrete
points in the point cloud. Thus, we can interpolate or fit the given initial data on these
points and represent the initial condition within Vj with a polynomial u0j(x). We would
like to have u0j(x) ∈ P k(Vj). We denote the degree of freedom of P k(Vj) as kt = (k+1)(k+2)
2.
Then each cell Vj should contain at least kt adjacent Voronoi regions. We need to carefully
design the grouping algorithm since the locations of the given points in each cell is crucial.
For example, when k = 1, the three interpolation points can not be aligned along a straight
line. We refer readers to [9] for a more detailed cell generation algorithm.
In Figure 2.1, we show an example of the mesh generation with N = 400. The blue
6
points are the randomly given N points in the point cloud. We use red lines to show the
boundaries of Voronoi regions ViNi=1. Then the black lines show the final cells VjMj=1
with different values of k.
0 1 2 3 4 5 60
1
2
3
4
5
6
(a) point cloud
0 1 2 3 4 5 60
1
2
3
4
5
6
(b) Voronoi diagram
0 1 2 3 4 5 60
1
2
3
4
5
6
(c) cells with k = 1
0 1 2 3 4 5 60
1
2
3
4
5
6
(d) cells with k = 2
0 1 2 3 4 5 60
1
2
3
4
5
6
(e) cells with k = 3
Figure 2.1: Mesh generation based on N = 400 randomly given points.
After the mesh generation procedure, we obtain a polynomial u0j(x) in each cell Vj and
hence can approximate the initial condition with a piecewise polynomial function u0h(x)
defined on the polygonal mesh VjMj=1:
u0h(x)|Vj = u0
j(x), 1 6 j 6M.
Then we apply the DG method on the generated polygonal mesh as we did in the triangular
case, the only difference being that we work on a polygon. The initial condition u0h(x)
can march in time with the SSP RK method (2.1).
7
3 The improved simple WENO limiter
In this section, we present the details of the improved simple WENO limiter for the RKDG
method solving the two-dimensional hyperbolic systems (1.1). The general framework of
the WENO limiting procedure consists of the following two steps:
1. Identify the troubled cells, namely those cells which may need the limiting procedure.
2. Modify the DG solution in the troubled cell to another polynomial, obtained by the
WENO limiting technique, which maintains the cell average and high order accuracy
of the original DG solution polynomial, but is less oscillatory.
For the first step, there are numerous papers on the choice of troubled cell indicators,
e.g. the review paper [20] and a recent paper [13], however, none of them is bullet-proof
in selecting all and only shocked cells, especially for coarser meshes. Therefore, we must
assume that the troubled cell indicator could mistakenly identify a good, smooth cell as
a troubled cell. We remark here that our improved WENO limiter is as insensitive to the
troubled cells indicators as previous WENO limiters and we simply apply the KXRCF
shock detection technique in [16] to identify troubled cells. We mainly focus on the second
step of the WENO limiting procedure in this paper and we will present the details of the
limiting procedure on the triangular mesh in Section 3.1 and on the polygonal mesh in
Section 3.2.
3.1 The limiting procedure on the unstructured triangular mesh
In this section, we present the details of the improved simple WENO limiting procedure
for the RKDG method solving (1.1) on the unstructured triangular mesh.
Assume K0 is a troubled cell identified by the KXRCF shock detector [16], and
K1, K2, K3 are its neighboring cells, as shown in Figure 3.1. Denote the DG solu-
tion in the troubled cell K0 and its three neighboring cells as p0(x), p1(x), p2(x), p3(x).
Notice that pl(x), l = 0, 1, 2, 3 are vectors with m components and each component is a
polynomial of degree k. As the original simple WENO limiter did in [29, 33], this new
limiter also uses most fully the information of the DG solutions in the target cell and
its immediate neighboring cells, with suitable adjustments to make sure that the new
8
0
12
3
n1n2
n3
e1e2
e3
Figure 3.1: The stencil for the simple WENO reconstruction on a target cell K0.
reconstructed polynomial maintains the cell average of p0(x) in the target cell K0. The
modifications are made as follows:
pl(x) = pl(x)− 1
|K0|
∫K0
pl(x) dx +1
|K0|
∫K0
p0(x) dx, l = 1, 2, 3, (3.1)
where |K0| denotes the area of K0. Clearly, the modified polynomial vector pl has the
same cell average as the polynomial vector p0 in the troubled cell, for l = 1, 2, 3.
To achieve better non-oscillatory property, a local characteristic field decomposition is
applied to the limiting procedure for two-dimensional systems. Let nl = (nl,x, nl,y)T , l =
1, 2, 3 denote the outward unit normal on the edges of K0 as shown in Figure 3.1. In
each direction nl, we perform the characteristic-wise limiting procedure discussed in the
following to reconstruct a new polynomial vector, denoted as pnewl (x), and then combine
them to get the final new reconstructed polynomial pnew0 (x) in the target cell K0.
In the direction nl, denote the associated Jacobian matrix as Al, given by
Al = nl,x∂f
∂u
∣∣∣∣p0
+ nl,y∂g
∂u
∣∣∣∣p0
, (3.2)
where p0 is the average of the polynomial p0 in the target cell K0. Let Ll be the m×m
matrix with the left eigenvectors of Al as rows and Rl be the m×m matrix with the right
eigenvectors of Al as columns. The left and right eigenvectors are normalized such that
Ll = R−1l . To carry out the characteristic-wise limiting procedure, we first transform the
9
polynomial vectors needed for limiting, i.e., p0(x) and pl(x) to the characteristic fields
and denote the resulting polynomial vectors by ˜p0, ˜p1, respectively. This is achieved by
left-multiplying these two vectors by Ll:
˜p0(x) = Ll p0(x), ˜p1(x) = Ll pl(x). (3.3)
Notice that here we only transform two polynomial vectors to the characteristic fields for
each direction while the original simple WENO limiter [33] transforms all four polynomial
vectors p0, p1, p2, p3 to the characteristic fields for each direction. This step is the main
difference and improvement of this new limiter from the original one.
Then we apply the scalar WENO limiting procedure on each component of the trans-
formed polynomial vectors ˜p0(x) and ˜p1(x) to obtain the new reconstructed polynomial
vector pnewl (x). For j = 1, · · · ,m, denote the j-th component of ˜p0(x), ˜p1(x) and pnewl (x)
as ˜p0,j(x), ˜p1,j(x) and pnewl,j (x), respectively. Then pnewl,j (x) is defined as a convex combina-
tion of these transformed polynomials ˜p0,j(x) and ˜p1,j(x), j = 1, · · · ,m. For simplicity, we
omit the subscript j and lay out the details of the limiting procedure for one component
in the following:
pnewl (x) = ω0˜p0(x) + ω1
˜p1(x), (3.4)
where ω0 and ω1 are the nonlinear weights and are computed following the classical WENO
procedure [25]:
ωi =ωi
ω0 + ω1
, ωi =γi
(ε+ βi)2, i = 0, 1, (3.5)
where γ0, γ1 are linear weights, β0, β1 are the so-called smoothness indicators. Here ε is a
small positive number to avoid the denominator becoming 0 and is taken to be ε = 10−6
in all our numerical tests. For the smoothness indicators βi, we use the similar recipe in
[15, 25], defined by
βi =k∑|`|=1
|K0||`|−1
∫K0
(1
|`|!∂|`|
∂x`1∂y`2˜pi(x)
)2
dx, i = 0, 1, (3.6)
where ` = (`1, `2) and |`| = `1 + `2. The smoother the polynomial ˜pi(x) is, the smaller βi
is. Thus βi will be large if ˜pi(x) is not smooth, and hence ωi will be relevantly small. For
10
the linear weights, any choice of positive numbers which satisfy γ0 + γ1 = 1 is adequate
for accuracy, since ˜p0(x) and ˜p1(x) are both (k+ 1)-th order approximations to the exact
solution in smooth regions. Considering the balance between accuracy and ability to
achieve essentially non-oscillatory shock transition, we put a larger linear weight for γ0
and smaller weight for γ1, following the practice in [29, 33, 34, 35]. More discussion on
the choice of the linear weights for compact WENO limiters can be found in [29].
The new reconstructed polynomial vector pnewl (x) in the direction nl is obtained by
transforming pnewl (x) back to the original space:
pnewl (x) = Rl pnewl (x). (3.7)
After we have performed the above procedure in all directions, the final new reconstructed
polynomial vector on the target cell K0 is defined by
pnew0 (x) =
∑3l=1 p
newl (x)|Kl|∑3l=1 |Kl|
. (3.8)
We remark here that, by transforming only two polynomial vectors to the characteristic
fields for each direction, this new simple WENO limiter simplifies the characteristic-wise
limiting procedure and thus reduces the computational cost and improves the efficiency.
It is more practical and efficient for two-dimensional hyperbolic systems than the original
one devised in [29, 33], without compromising the advantages of compact stencil and
simplicity of linear weights.
We summarize the WENO limiting procedure with a local characteristic decomposition
for two-dimensional hyperbolic systems on unstructured triangular mesh as follows:
For each cell K ∈ Th,
1. Use the KXRCF shock detector to detect whether K is a troubled cell.
2. If K is a troubled cell, then proceed to limit the solution uh in the cellK as follows:
(a) Denote uh in the cell K and its three neighboring cells as p0(x), p1(x), p2(x),
p3(x), respectively and modify pl(x) to pl(x), l = 1, 2, 3 using (3.1).
(b) For each direction nl along ∂K, l = 1, 2, 3, reconstruct the polynomial vector
pnewl (x) in the direction nl as follows:
11
i. Find the matrix Ll whose rows are the the left eigenvectors of the associ-
ated Jacobian matrix Al defined in (3.2), and its inverse Rl.
ii. Transform the polynomial vectors p0, pl, to the characteristic fields using
(3.3), and denote the transformed polynomial vectors by ˜p0, ˜pl.
iii. Reconstruct the polynomial vector pnewl (x) by applying the scalar WENO
limiting procedure (3.4) to each of the components of the transformed
polynomial vectors ˜p0, ˜pl.
iv. pnewl (x) is obtained by transforming pnewl (x) back to the original space
using (3.7).
(c) The final reconstructed polynomial vector is given by (3.8), i.e.
unewh |K =
∑3l=1 p
newl (x)|Kl|∑3l=1 |Kl|
.
3.2 The limiting procedure on the polygonal mesh
In this section, we present the details of the improved simple WENO limiting procedure
on the polygonal mesh constructed based on arbitrarily distributed point cloud, discussed
in Section 2.2.
Figure 3.2: An example for the stencil of the WENO limiter.
As shown in Figure 2.1, the polygonal mesh is more complex than the triangular
mesh, since the shape of each cell can be arbitrary and different polygonal cells may have
12
different number of edges. For the polygonal cell Vj, denote Nj as the number of its
immediate neighboring cells and denote Vj(l) as its l-th neighboring cell, l = 1, · · · , Nj.
Notice that unlike the triangular mesh case, Nj is usually not equal to the the number of
edges of Vj since two neighboring cells usually share more than one common edges. Also,
Nj may be different for different j. We further denote nl = (nl,x, nl,y)T as the unit vector
pointing from the center of Vj to the center of the neighboring cell Vj(l), l = 1, · · · , Nj. We
remark here that the center of a polygonal cell is simply taken as the arithmetic mean of
the locations of all generator points in this cell. Figure 3.2 shows a sample of the stencil
with Nj = 6. For this complex polygonal mesh, the improved simple WENO limiter with
a local characteristic field decomposition for two-dimensional systems proceeds as follows:
For each polygonal cell Vj ∈ Ω, j = 1, · · · ,M ,
1. Use the KXRCF shock detector to detect whether Vj is a troubled cell.
2. If Vj is a troubled cell, then proceed to limit the solution uj in the cell Vj as follows:
(a) Denote the DG polynomial vectors in the cell Vj and its Nj neighboring cells as
p0(x), pl(x), l = 1, · · · , Nj, respectively. To maintain the original cell average
of p0(x) in cell Vj, which is essential to keep the conservativeness, we modify
pl(x) to pl(x) as follows:
pl(x) = pl(x)− 1
|Vj|
∫Vj
pl(x)dx +1
|Vj|
∫Vj
p0(x)dx, l = 1, 2, · · · , Nj,
where |Vj| is the area of Vj.
(b) For each direction nl = (nl,x, nl,y)T , using only two polynomial vectors, i.e. p0
in the cell Vj and pl(x) in the cell Vj(l), apply steps 2 (b) i-iv as we did in the
triangular mesh to reconstruct the polynomial vector pnewl (x).
(c) The final new reconstructed polynomial vector is defined as
unewj =
∑Njl=1 p
newl |Vj(l)|∑Nj
l=1 |Vj(l)|. (3.9)
For the characteristic-wise limiting procedure on the polygonal mesh, this new limiter
still transforms only two polynomial vectors to the characteristic fields for each direction,
13
while the original simple WENO limiter transforms Nj+1 polynomial vectors, i.e. the one
in the target cell Vj and those in the Nj neighboring cells, to the characteristic fields [10].
Notice that Nj may be large for the complex polygonal mesh as shown in Figure 2.1. In the
sense of saving computational cost, the advantage of this new limiter is more prominent
for the polygonal mesh. Moreover, our numerical tests show that this new limiter has
less smearing and higher resolution due to less information being used for reconstruction
in each direction, while still simultaneously maintaining uniform high-order accuracy in
smooth regions and controlling spurious nonphysical oscillations near discontinuities.
4 Numerical examples
In this section, we present numerical results to demonstrate the performance of the pro-
posed WENO limiter for the Euler system, which is a two-dimensional hyperbolic system,
given by
ut + f(u)x + g(u)y =∂
∂t
ρρµρνE
+∂
∂x
ρµ
ρµ2 + pρµν
µ(E + p)
+∂
∂y
ρνρµν
ρν2 + pν(E + p)
= 0,
(4.1)
where ρ is the density, µ, ν are the velocity components in the x and y directions, E is the
total energy, p = (γ − 1)(E − 12ρ(µ2 + ν2)) is the pressure and γ = 1.4 in our test cases.
For details of the Jacobian, its eigenvalues, eigenvectors, etc, see [14, 23].
Now we lay out the details of the KXRCF shock detector for the Euler system (4.1).
First for each cell K ∈ Ω (K can be a triangular cell or a polygonal cell), we divide the
boundary ∂K into two parts: ∂K− and ∂K+, where the flow is into ((µ, ν)T · n < 0) and
out of ((µ, ν)T · n > 0) K, respectively. Here n is the outward normal on ∂K, µ and ν
are the velocity in the x- and y-direction, respectively. Then we take both the density ρ
and the total energy E as the indicator variables, and the target cell K is identified as a
troubled cell when ∣∣∣∣ ∑e∈∂K−
∫e
(ρh|K − ρh|K′) ds∣∣∣∣
(hK)k+12 |∂K−| · ‖ρh|K‖
> Ck, (4.2)
14
or ∣∣∣∣ ∑e∈∂K−
∫e
(Eh|K − Eh|K′) ds∣∣∣∣
(hK)k+12 |∂K−| · ‖Eh|K‖
> Ck, (4.3)
where K ′ denotes the neighboring cell sharing the edge e with K. Here Ck is a constant
and ‖ · ‖ is the standard L2 norm in the cell K. If K is a triangular mesh, then hK is
taken as the radius of the circumscribed circle in triangle K; If K is a polygonal mesh,
then hK is taken as the maximum distance between two points in K.
4.1 Numerical examples on the triangular mesh
In this section, we provide numerical examples to demonstrate the performance of the
improved simple WENO limiter on the triangular mesh.
For all numerical experiments in this section, we apply a nonuniform triangulation and
the refinement is performed by breaking each triangle into four similar smaller triangles
for each level of refinement. The linear weights are taken as γ0 = 0.999, γ1 = 0.001.
For both accuracy tests (Examples 4.1 and 4.2), we test the second (P 1), third (P 2) and
fourth (P 3) order DG methods coupled with the third order SSP RK method, with ∆t is
further adjusted as ∆t ∼ h4/3 for the P 3 case. In order to magnify the possible effect of
the improved simple WENO limiter on the accuracy of the original DG scheme, we also
artificially adjust the parameter Ck in the KXRCF shock detector for different examples
so that this limiter is enacted in more cells. We list the percentage of troubled cells
among all the cells in each accuracy table. For the examples containing discontinuities,
the positivity-preserving limiter [28] is used for the third order DG schemes.
Example 4.1 Accuracy test for the Euler system
We consider the two-dimensional Euler system. The initial condition is set to be ρ(x, y, 0) =
1 + 0.2 sin(x+ y), µ(x, y, 0) = 0.7, ν(x, y, 0) = 0.3 and p(x, y, 0) = 1, 0 6 x, y 6 2π. The
boundary conditions are periodic. The exact solution is ρ(x, y, t) = 1 + 0.2 sin(x+ y − t),
µ(x, y, t) = 0.7, ν(x, y, t) = 0.3 and p(x, y, t) = 1.
We use unstructured triangular meshes. The cell length on the boundary of the compu-
tational domain is denoted as h. The coarsest mesh used in this example with h = 2π/10
15
Figure 4.1: Euler system with the initial condition ρ(x, y, t) = 1 + 0.2 sin(x + y − t),µ(x, y, t) = 0.7, ν(x, y, t) = 0.3 and p(x, y, t) = 1. The coarsest mesh with cell lengthh = 2π/10.
is shown in Figure 4.1. Table 4.1 shows the numerical errors and orders accuracy of the
density at t = 2π. The left part of the table shows the results of the original DG methods.
We can observe (k + 1)-th order of accuracy for the method with P k solution space. The
right part of the table shows the numerical results of the DG methods with the improved
simple WENO limiter. We adjust the value of Ck when using KXRCF technique so that a
large percentage of cells will be indicated as troubled cells. We can see that the improved
simple WENO limiter maintains both the designed order of accuracy and the magnitude
of the error of the original RKDG methods, even when a large percentage of good cells
are artificially identified as troubled cells.
Example 4.2 Vortex evolution problem
Consider the two-dimensional vortex evolution problem, which is an idealized problem for
the two-dimensional Euler equations. The setup of this problem is: The mean flow is
ρ = 1, p = 1 and (µ, ν) = (1, 1) (diagonal flow). We add, to this mean flow, an isentropic
vortex (perturbation in (µ, ν) and the temperature T = pρ, no perturbation in the entropy
S = pργ
):
(δµ, δν) =ε
2πe0.5(1−r2)(−y, x), δT = −(γ − 1)ε2
8γπ2e1−r2 , δS = 0,
16
Table 4.1: Euler system with the initial condition ρ(x, y, t) = 1 + 0.2sin(x + y − t),µ(x, y, t) = 0.7, ν(x, y, t) = 0.3 and p(x, y, t) = 1 at t = 2π.
without limiter with limiter
cell length L2 norm order L∞ norm order L2 norm order L∞ norm order percentage
P 1, Ck = 0.002
2π/10 5.64E-03 – 1.63E-02 – 2.68E-02 – 5.57E-02 – 75.87%2π/20 1.30E-03 2.12 4.74E-03 1.78 6.08E-03 2.14 1.53E-02 1.86 43.57%2π/40 3.18E-04 2.03 1.26E-03 1.91 6.94E-04 3.13 3.25E-03 2.24 20.23%2π/80 7.91E-05 2.01 3.23E-04 1.97 8.41E-05 3.05 3.77E-04 3.11 4.86%2π/160 1.97E-05 2.00 8.06E-05 2.00 1.97E-05 2.09 8.06E-05 2.23 2.16E-3%
P 2, Ck = 0.0001
2π/10 4.16E-04 – 1.44E-03 – 4.05E-04 – 1.36E-03 – 91.07%2π/20 5.80E-05 2.84 2.08E-04 2.80 5.75E-05 2.81 1.92E-04 2.82 84.23%2π/40 7.27E-06 3.00 2.84E-05 2.87 7.66E-06 2.91 2.52E-05 2.93 60.46%2π/80 8.94E-07 3.02 3.63E-06 2.97 8.98E-07 3.09 3.77E-06 2.74 2.68%2π/160 1.11E-07 3.01 4.58E-07 2.99 1.11E-07 3.02 4.58E-07 3.04 0.00%
P 3, Ck = 0.00001
2π/10 1.27E-05 – 6.40E-05 – 5.05E-05 – 1.69E-04 – 79.74%2π/20 7.40E-07 4.10 3.58E-06 4.16 4.54E-06 3.48 2.19E-05 2.95 35.74%2π/40 4.59E-08 4.01 2.38E-07 3.91 1.61E-07 4.81 1.73E-06 3.66 1.37%2π/80 2.83E-09 4.02 1.57E-08 3.92 2.83E-09 5.83 1.57E-08 6.78 0.00%2π/160 1.76E-10 4.01 9.91E-10 3.99 1.76E-10 4.01 9.91E-10 3.99 0.00%
17
where (x, y) = (x−7, y−7), r2 = x2+y2, and the vortex strength ε = 5. The computational
domain is taken as [0, 14]× [0, 14], extended periodically in both directions. It is clear that
the exact solution of the Euler equation with the above initial and boundary conditions is
just the passive convection of the vortex with the mean velocity.
Table 4.2 shows the errors and orders of accuracy of the density at t = 0.2. Again,
we can see that the improved simple WENO limiter maintains both the designed order of
accuracy and the magnitude of the error of the original RKDG methods.
Table 4.2: Euler system of the smooth vortex evolution problem at t = 0.2.
cell length without limiter with limiterL1 norm order L∞ norm order L1 norm order L∞ norm order percentage
P 1, Ck = 0.001
14/10 2.21E-03 – 4.80E-02 – 1.79E-03 – 5.43E-02 – 23.33%14/20 7.04E-04 1.65 3.04E-02 0.66 6.83E-04 1.39 3.08E-02 0.82 19.08%14/40 1.71E-04 2.04 7.26E-03 2.07 1.72E-04 1.98 7.32E-03 2.07 15.88%14/80 4.21E-05 2.03 1.80E-03 2.01 4.25E-05 2.02 2.05E-03 1.83 12.51%14/160 1.05E-05 2.01 4.57E-04 1.98 1.04E-05 2.03 5.08E-04 2.01 8.56%
P 2, Ck = 0.0001
14/10 4.47E-04 – 3.01E-02 – 6.19E-04 – 2.92E-02 – 35.14%14/20 7.11E-05 2.65 4.68E-03 2.69 7.36E-05 3.07 5.16E-03 2.50 25.13%14/40 1.13E-05 2.65 8.18E-04 2.52 1.06E-05 2.79 8.06E-04 2.68 19.48%14/80 1.74E-06 2.70 1.37E-04 2.57 1.57E-06 2.75 1.26E-04 2.68 13.15%14/160 2.78E-07 2.64 2.59E-05 2.41 2.45E-07 2.69 2.23E-05 2.50 6.74%
P 3, Ck = 0.0001
14/10 8.51E-05 – 3.01E-03 – 3.04E-04 – 1.72E-02 – 26.13%14/20 6.72E-06 3.66 3.88E-04 2.95 1.29E-05 4.56 1.04E-03 4.05 10.52%14/40 4.42E-07 3.93 3.10E-05 3.65 6.43E-07 4.33 7.42E-05 3.81 3.36%14/80 2.74E-08 4.01 2.12E-06 3.87 3.17E-08 4.34 5.72E-06 3.70 0.20%14/160 1.71E-09 4.00 1.37E-07 3.95 1.71E-09 4.21 1.37E-07 5.39 0.00%
Example 4.3 Double Mach refection problem
We consider the double Mach reflection problem. The computational domain is set to be
[0, 4]× [0, 1]. The reflection wall lies at the bottom of the computational domain starting
from x = 16. Initially a right-moving Mach 10 shock is positioned at x = 1
6, y = 0 and
makes a 60 angle with the x-axis. For the bottom boundary, the exact post-shock condition
is imposed for the part from x = 0 to x = 16, and a reflective boundary condition is used
18
for the rest. At the top boundary of the computational domain, the flow values are set to
describe the exact motion of the Mach 10 shock. The initial pre-shock condition is
(ρ, p, µ, ν) = (1.4, 1, 0, 0), (4.1)
and the post-shock condition is
(ρ, p, µ, ν) = (8, 116.5, 8.25 cos(30),−8.25 sin(30)). (4.2)
A sample unstructured triangular mesh with h = 1/20 is shown in Figure 4.2. In
real computations, we adopt h = 1/200. We take Ck = 0.01 in the KXRCF troubled
cell indicator and add the positivity preserving limiter [28] in the third order scheme.
The density contours at t = 0.2 for the second order scheme (P 1) and the third order
scheme (P 2) are plotted in Figure 4.3. Also, we show the zoom-in pictures around the
Mach stem in Figure 4.4 to show more details. In all the plots, we use 30 equally spaced
density contours from 1.1 to 22. We can see that the improved simple WENO limiter is
able to control numerical oscillations. Also, the resolution around the double Mach region
improves as the order of accuracy of the scheme increases.
Figure 4.2: Double Mach reflection problem. A sample triangular mesh with h = 1/20
Example 4.4 Shock diffraction problem
Let us consider the problem of a shock passing a backward facing corner (diffraction).
The setup is the following: the computational domain is the union of [0, 1] × [6, 11] and
[1, 13] × [0, 11]; the initial condition is a pure right-moving Mach 5.09 shock, initially
located at x = 0.5 and 6 6 y 6 11, moving into undisturbed air ahead of the shock
19
(a) P 1
(b) P 2
Figure 4.3: Double Mach refection problem with h = 1/200. Top: second order (P 1).Bottom: third order (P 2).
(a) P 1 (b) P 2
Figure 4.4: Double Mach refection problem with h = 1/200. Zoom-in pictures around theMach stem. Left: second order (P 1). Right: third order (P 2).
20
with a density of 1.4 and pressure of 1. The boundary conditions are inflow at x = 0,
6 6 y 6 11, outflow at x = 13, 0 6 y 6 11 and 1 6 x 6 13, y = 0, and reflective at the
walls 0 6 x 6 1, y = 6 and x = 1, 0 6 y 6 6. At the top boundary, we use the exact
solution of a free-moving Mach 5.09 shock.
We present a sample triangulation (h = 1/4) in Figure 4.5. In real computations, the
mesh points on the domain boundary are uniformly distributed with cell length h = 1/16.
We choose Ck = 0.01 in this example. The density and pressure at t = 2.3 for different
order of schemes are presented in Figure 4.6. For the density plots, we use 20 equally
spaced contour lines from 0.066227 to 7.0668. For the pressure, we adopt 40 equally
spaced contour lines from 0.091 to 37. We can see that the improved simple WENO
limiter is able to control numerical oscillations.
Figure 4.5: Shock diffraction problem. A sample triangular mesh with h = 1/4.
Example 4.5 A Mach 3 wind tunnel with a step
We consider a Mach 3 wind tunnel with a step. The setup of this problem is as follows.
The wind tunnel is 1 length unit wide and 3 length units long. The step is 0.2 length units
high and is located 0.6 length units from the left-hand end of the tunnel. The problem
is initialized by a right-moving Mach 3 flow. Reflective boundary conditions are applied
21
(a) density, P 1 (b) density, P 2
(c) pressure, P 1 (d) pressure, P 2
Figure 4.6: Shock diffraction problem with h = 1/16. Top: density. Bottom: pressure.Left: second order(P 1). Right: third order (P 2).
22
along the wall of the tunnel and inflow/outflow boundary conditions are applied at the
entrance/exit.
We present a sample triangulation with h = 1/25 in Figure 4.7. In real computations,
we adopt h = 1/100. At the corner of the step, there is a singularity. In order to test
the performance of our method for such singularity. we do not refine the mesh near the
corner or adopt special treatment at the corner. Ck = 0.01 is used in this example. We
show the density at t = 4 in Figure 4.8. In all the plots, we use 30 equally spaced density
contours from 0.32 to 6.15. We can see that the third order scheme gives better resolution
than the second order scheme.
Figure 4.7: Forward step problem. A sample triangular mesh with h = 1/25.
Example 4.6 NACA0012 airfoil
We consider the inviscid Euler transonic flow past a single NACA0012 airfoil configuration
with Mach number M = 0.8, angle of attack α = 1.25 and with M = 0.85, angle of attack
α = 1. The computational domain is [−15, 15]× [−15, 15].
The mesh used in the computation is shown in Figure 4.9, consisting of 5780 triangular
cells with the maximum diameter of the circumcircle being 0.8857 and the minimum
diameter being 0.00042 near the airfoil. The second order and third order DG schemes
with the improved WENO limiter are used in the numerical experiments. Mach number
distributions are shown in Figure 4.10. For the case with M∞ = 0.8 and the angle of
23
X
Y
0 0.5 1 1.5 2 2.5 30
0.2
0.4
0.6
0.8
1
X
Y
0 0.5 1 1.5 2 2.5 30
0.2
0.4
0.6
0.8
1
Figure 4.8: Forward step problem with h = 1/100. Top: second order (P 1); bottom:third order (P 2).
24
attack α = 1.25, we use 30 equally spaced Mach number contours from 0.172 to 1.325.
For the case with M∞ = 0.85 and the angle of attack α = 1, we use 30 equally spaced
Mach number contours from 0.158 to 1.357. We can see that there are no numerical
oscillations.
x
y
1 0.5 0 0.5 1 1.5 21.5
1
0.5
0
0.5
1
1.5
Figure 4.9: NACA0012 airfoil mesh zoom in.
4.2 Numerical examples on arbitrarily distributed point clouds
In this section, we provide numerical examples to demonstrate the performance of the im-
proved simple WENO limiter for solving the Euler system (4.1) on arbitrarily distributed
point clouds.
For all numerical experiments in this subsection, we use randomly generated point
clouds that satisfy a uniform distribution in the computational domain Ω and then con-
struct a polygonal mesh with the algorithm discussed in Section 2.2. The mesh refinement
is unstructured, that is, the generations of random points are independent with the re-
finement of the number of points. Since the initial values are only given on the point
cloud and we need to predict the values on these points for later time, we measure the
numerical error on the given point cloud in each error table. For the L1 norm, we multiply
the absolute value of the numerical error on each point with the area of the corresponding
25
Figure 4.10: NACA0012 airfoil. Mach number. Top: second order (P 1); bottom: thirdorder (P 2). Left: M∞ = 0.8, angle of attack α = 1.25; right: M∞ = 0.85, angle of attackα = 1.
26
Voronoi region, sum them together and divide the result by the area of Ω. For the L∞
norm, we compute the maximum absolute value of the numerical error on these points.
The linear weights are taken as γ0 = 0.9995, γ1 = 0.0005.
Example 4.7 Accuracy test for the Euler system
We still use Example 4.1 as an accuracy test except that the initial condition now is given
on arbitrarily distributed point cloud. To show that our improved simple WENO limiter is
insensitive to the troubled cells indicators, we adjust the value of Ck when using KXRCF
technique so that a large percentage of cells will be artificially indicated as troubled cells.
Tables 4.3 shows the L1 and L∞ errors and order of accuracy of the density at t = 2π.
Compared with the results on triangular meshes, we can see that the numerical error on
the polygonal mesh is larger due to the complexity of the mesh, but the improved simple
WENO limiter still keeps the designed order of accuracy.
Table 4.3: Accuracy test for the Euler system on point clouds.
number of without limiter with limiterpoints L1 norm order L∞ norm order L1 norm order L∞ norm order percentage
P 1, Ck = 0.01
400 2.78E-02 – 8.91E-02 – 3.46E-02 – 9.48E-02 – 12.61%1600 3.80E-03 2.87 1.91E-02 2.22 4.04E-03 3.10 2.13E-02 2.15 1.09%6400 6.45E-04 2.56 4.91E-03 1.96 6.46E-04 2.65 4.91E-03 2.12 0.00%25600 1.42E-04 2.19 1.61E-03 1.60 1.42E-04 2.19 1.61E-03 1.60 0.00%102400 3.34E-05 2.09 5.26E-04 1.62 3.34E-05 2.09 5.26E-04 1.62 0.00%
P 2, Ck = 0.0006
400 4.42E-03 – 2.74E-02 – 5.06E-03 – 3.44E-02 – 59.26%1600 4.30E-04 3.36 4.11E-03 2.74 4.24E-04 3.58 4.05E-03 3.09 21.37%6400 4.35E-05 3.30 5.81E-04 2.82 4.36E-05 3.28 5.36E-04 2.92 1.33%25600 5.24E-06 3.05 7.67E-05 2.92 5.24E-06 3.06 7.67E-05 2.81 0.00 %102400 6.63E-07 2.98 1.23E-05 2.64 6.63E-07 2.98 1.23E-05 2.64 0.00%
P 3, Ck = 0.0001
400 1.30E-03 – 6.86E-03 – 1.80E-03 – 6.65E-03 – 57.58%1600 6.45E-05 4.33 5.12E-04 3.74 7.12E-05 4.66 5.43E-04 3.61 8.33%6400 3.45E-06 4.23 4.41E-05 3.54 3.45E-06 4.37 4.41E-05 3.62 0.00%25600 2.14E-07 4.01 2.61E-06 4.08 2.14E-07 4.01 2.61E-06 4.08 0.00%102400 1.39E-08 3.95 2.97E-07 3.14 1.39E-08 3.95 2.97E-07 3.14 0.00%
Example 4.8 Vortex evolution problem
27
We consider the Vortex evolution problem in Example 4.2 on the point clouds. Table
4.4 shows the L1 and L∞ errors and numerical orders of accuracy of the density at t = 0.2.
Again, we can see that the improved simple WENO limiter maintains the designed order
of accuracy of the original DG method.
Table 4.4: The smooth vortex evolution problem on point clouds
number of without limiter with limiterpoints L1 norm order L∞ norm order L1 norm order L∞ norm order percentage
P 1, Ck = 0.01
400 4.15E-03 – 1.11E-01 – 5.24E-03 – 2.04E-01 – 11.50%1600 1.11E-03 1.91 4.38E-02 1.34 1.64E-03 1.68 8.54E-02 1.26 5.95%6400 4.20E-04 1.40 2.45E-02 0.84 4.37E-04 1.91 2.38E-02 1.84 2.84%25600 1.09E-04 1.94 6.24E-03 1.98 1.13E-04 1.95 6.86E-03 1.79 0.87%102400 3.07E-05 1.83 2.53E-03 1.30 3.07E-05 1.88 2.55E-03 1.43 0.20%
P 2, Ck = 0.001
400 3.76E-03 – 7.30E-02 – 6.45E-03 – 2.82E-01 – 30.91%1600 5.93E-04 2.66 1.90E-02 1.94 1.18E-03 2.45 6.14E-02 2.20 14.22%6400 9.29E-05 2.67 3.37E-03 2.50 1.06E-04 3.47 7.72E-03 2.99 6.84%25600 1.56E-05 2.57 1.05E-03 1.68 1.54E-05 2.78 9.93E-04 2.96 1.99%102400 2.37E-06 2.72 2.46E-04 2.09 2.37E-06 2.70 2.48E-04 2.00 0.32%
P 3, Ck = 0.001
400 4.29E-03 – 8.02E-02 – 8.71E-03 – 2.82E-01 – 31.43%1600 5.06E-04 3.08 1.44E-02 2.48 1.95E-03 2.16 1.10E-01 1.36 9.70%6400 4.38E-05 3.53 2.15E-03 2.74 4.43E-05 5.46 2.50E-03 5.46 1.31%25600 2.94E-06 3.90 1.99E-04 3.43 2.93E-06 3.92 2.01E-04 3.64 0.05%102400 2.38E-07 3.63 2.11E-05 3.24 2.37E-07 3.63 zai 2.06E-05 3.28 0.00%
Example 4.9 Double Mach refection problem
We consider the double Mach reflection problem in Example 4.3 on the point clouds.
We take Ck = 0.01 in the troubled cell indicator. We show a sample mesh with N = 1000
randomly generated points to illustrate our mesh subdivisions in Figure 4.11, which shows
the distribution of 1000 random points, the corresponding Voronoi diagram and the final
mesh subdivisions of these points for different orders of schemes. In real computations,
we use N = 400000 totally random points for the second order scheme (P 1), and use
N = 800000 random points for the third order schemes (P 2).
The density contours at t = 0.2 are plotted in Figure 4.12. The “zoomed-in” pictures
around the double Mach stem to show more details are given in Figure 4.13. In all the
28
0 0.5 1 1.5 2 2.5 3 3.5 40
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
(a) N = 1000 randomly distributed points
0 0.5 1 1.5 2 2.5 3 3.5 40
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
(b) the corresponding Voronoi diagram.
0 0.5 1 1.5 2 2.5 3 3.5 40
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
(c) mesh subdivision for the second order (P 1) scheme.
0 0.5 1 1.5 2 2.5 3 3.5 40
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
(d) mesh subdivision for the third order (P 2) scheme.
Figure 4.11: Double Mach reflection problem. A sample mesh on arbitrarily distributedpoint clouds.
29
plots, we use 29 contours equally distributed from ρ = 1.3 to 23. We can see that the
resolution around the double Mach region improves with an increasing k.
(a) P 1 with the improved simple WENO limiter
(b) P 2 with the improved simple WENO limiter
(c) P 2 with the original simple WENO limiter
Figure 4.12: Double Mach reflection problem on point clouds.
For comparison, we also apply the original simple WENO limiter for the DG method
30
(a) P 1 with the improved simple WENO limiter
(b) P 2 with the improved simple WENO limiter
(c) P 2 with the original simple WENO limiter
Figure 4.13: Double Mach reflection problem on point clouds. Zoomed-in figure.
31
with P 2 polynomials solving this example on point clouds [10] and compare the results
with those obtained by our improved simple WENO limiter. The running time for both
methods are shown in Table 4.5. We can see that the running time of our improved simple
WENO limiter is much less than the original one, which demonstrates the advantage
of our new limiter in reducing the computational cost. Contour plots of density are
shown in Figure 4.12 and Figure 4.13. We can see that both methods have almost the
same performance on controlling oscillation. However, if we focus on the double Mach
stem region, we can see that our improved simple WENO limiter has less smearing and
improves the resolution, comparing with the original one. Moreover, the original simple
WENO limiter needs N = 1664000 random points [10] (here the improved limiter uses
800000 points), in order to achieve the similar resolution, which will further increase the
computational cost.
Table 4.5: Running time for different WENO limiters
original simple WENO limiter improved simple WENO limiter
running time 15 hours 25 minutes 6 hours 57 minutes
Example 4.10 Shock diffraction problem
Let us consider the problem of a shock passing a backward facing corner (diffraction)
in Example 4.4 on the point clouds. N = 219200 random points are used in the second
order scheme (P 1) and N = 493200 random points are used in the third order scheme
(P 2). We take Ck = 0.01 in the troubled cell indicator. The density at t = 2.3 is presented
in Figure 4.14. We use 20 equally spaced contour lines from 0.066227 to 7.1.
5 Conclusion
In this paper, we propose an improved simple WENO limiter for the RKDG method
solving two-dimensional hyperbolic systems. This new simple WENO limiter enjoys the
advantages of the original one studied in [29, 33] such as compact stencil and simplicity
of linear weights, since it also uses the available information of DG solutions in the target
32
Figure 4.14: Shock diffraction problem on point clouds. Density plots. Left: secondorder (P 1). Right: third order (P 2).
cell and its immediate neighbors. The major improvement is in the step of transforma-
tion to the characteristic fields, when the limiting procedure is carried out with a local
characteristic field decomposition. In this step, for unstructured triangular meshes, only
two polynomial vectors need to be transformed for the new simple WENO limiter, while
four polynomial vectors were needed for the original simple WENO limiter. The simplic-
ity of this step is more evident for a complex polygonal mesh constructed by arbitrarily
distributed point clouds. Thus the improved limiter reduces the computational cost and
improves the efficiency. It also improves resolution for some of the examples. Numerical
results are provided to demonstrate the performance of this limiter for the Euler system
on the triangular mesh and the polygonal mesh. We remark here that although the im-
proved simple WENO limiter is based on the original one studied in [29, 33], the idea may
generalize to other limiters with a characteristic-wise limiting procedure. Even though
our focus in this paper is restricted on two-dimensional hyperbolic systems, the idea can
provide useful guide for higher dimensional systems.
Acknowledgements
J. Du was partially supported by National Natural Science Foundation of China (Grant
No. 11801302) and Tsinghua University Initiative Scientific Research Program. C.-W
Shu was partially supported by AFOSR grant FA9550-20-1-0055 and NSF grant DMS-
33
2010107. X. Zhong was partially supported by National Natural Science Foundation of
China (Grant No. 11871428).
References
[1] R. Biswas, K. Devine, and J. Flaherty. Parallel, adaptive finite element methods for
conservation laws. Applied Numerical Mathematics, 14:255–283, 1994.
[2] A. Burbeau, P. Sagaut, and C. Bruneau. A problem-independent limiter for high-
order Runge-Kutta discontinuous Galerkin methods. Journal of Computational
Physics, 169:111–150, 2001.
[3] B. Cockburn, S. Hou, and C.-W. Shu. The Runge-Kutta local projection discontin-
uous Galerkin finite element method for conservation laws IV: the multidimensional
case. Mathematics of Computation, 54(190):545–545, 1990.
[4] B. Cockburn, S.-Y. Lin, and C.-W. Shu. TVB Runge-Kutta local projection discon-
tinuous Galerkin finite element method for conservation laws III: One-dimensional
systems. Journal of Computational Physics, 84(1):90–113, 1989.
[5] B. Cockburn and C.-W. Shu. TVB Runge-Kutta local projection discontinuous
Galerkin finite element method for conservation laws II: General framework. Math-
ematics of Computation, 52(186):411–411, 1989.
[6] B. Cockburn and C.-W. Shu. The Runge-Kutta local projection Pˆ1-discontinuous-
Galerkin finite element method for scalar conservation laws. ESAIM: Mathematical
Modelling and Numerical Analysis, 25(3):337–361, 1991.
[7] B. Cockburn and C.-W. Shu. The RungeKutta discontinuous Galerkin method for
conservation laws V: multidimensional systems. Journal of Computational Physics,
141(2):199–224, 1998.
[8] B. Cockburn and C.-W. Shu. RungeKutta discontinuous Galerkin methods for
convection-dominated problems. Journal of Scientific Computing, 16(3):173–261,
2001.
34
[9] J. Du and C.-W. Shu. A high order stable conservative method for solving hyperbolic
conservation laws on arbitrarily distributed point clouds. SIAM Journal on Scientific
Computing, 38:A3094–A3128, 2016.
[10] J. Du and C.-W. Shu. Positivity-preserving high-order schemes for conservation laws
on arbitrarily distributed point clouds with a simple weno limiter. International
Journal of Numerical Analysis and Modeling, 15:1–25, 2018.
[11] M. Dumbser and R. Loubre. A simple robust and accurate a posteriori sub-cell
finite volume limiter for the discontinuous Galerkin method on unstructured meshes.
Journal of Computational Physics, 319:163–199, 2016.
[12] M. Dumbser, O. Zanotti, R. Loubre, and S. Diot. A posteriori subcell limiting of
the discontinuous Galerkin finite element method for hyperbolic conservation laws.
Journal of Computational Physics, 278:47–75, 2014.
[13] G. Fu and C.-W. Shu. A new troubled-cell indicator for discontinuous Galerkin meth-
ods for hyperbolic conservation laws. Journal of Computational Physics, 347:305–327,
2017.
[14] A. Harten, B. Engquist, S. Osher, and S. Chakravarthy. Uniformly high order ac-
curate essentially non-oscillatory schemes, III. Journal of Computational Physics,
71:231–303, 1987. Place: San Diego, CA, USA Publisher: Academic Press Profes-
sional, Inc.
[15] G.-S. Jiang and C.-W. Shu. Efficient implementation of weighted ENO schemes.
Journal of Computational Physics, 126(1):202–228, 1996.
[16] L. Krivodonova, J. Xin, J. F. Remacle, N. Chevaugeon, and J. E. Flaherty. Shock de-
tection and limiting with discontinuous Galerkin methods for hyperbolic conservation
laws. Applied Numerical Mathematics, 48(3):323–338, 2004.
[17] R. J. LeVeque. Numerical Methods for Conservation Laws. Birkhuser Verlag, Basel,
1990.
35
[18] A. Okabe, B. Boots, and K. Sugihara. Spatial tessellations: Concepts and applica-
tions of voronoi diagrams. Wiley, Chichester, UK, 1992.
[19] J. Qiu and C.-W. Shu. Hermite WENO schemes and their application as limiters
for RungeKutta discontinuous Galerkin method: one-dimensional case. Journal of
Computational Physics, 193(1):115–135, 2004.
[20] J. Qiu and C.-W. Shu. A comparison of troubled-cell indicators for Runge-Kutta
discontinuous Galerkin methods using weighted essentially nonoscillatory limiters.
SIAM Journal on Scientific Computing, 27(3):995–1013, 2005.
[21] J. Qiu and C.-W. Shu. Hermite WENO schemes and their application as limiters for
RungeKutta discontinuous Galerkin method II: Two dimensional case. Computers
& Fluids, 34(6):642–663, 2005.
[22] J. Qiu and C.-W. Shu. Runge-Kutta discontinuous Galerkin method using WENO
limiters. SIAM Journal on Scientific Computing, 26(3):907–929, 2005.
[23] P. L. Roe. Approximate Riemann solvers, parameter vectors, and difference schemes.
Journal of Computational Physics, 135(2):250–258, 1997. Place: San Diego, CA, USA
Publisher: Academic Press Professional, Inc.
[24] C.-W. Shu. TVB uniformly high-order schemes for conservation laws. Mathematics
of Computation, 49(179):105–121, 1987. Publisher: American Mathematical Society.
[25] C.-W. Shu. Essentially non-oscillatory and weighted essentially non-oscillatory
schemes. Acta Numerica, 29:701–762, 2020.
[26] C.-W. Shu and S. Osher. Efficient implementation of essentially non-oscillatory shock-
capturing schemes. Journal of Computational Physics, 77(2):439–471, 1988.
[27] J. Smoller. Shock Waves and Reaction-Diffusion Equations. Springer-Verlag, New
York, 1983.
36
[28] X. Zhang and C.-W. Shu. Maximum-principle-satisfying and positivity-preserving
high-order schemes for conservation laws: survey and new developments. Pro-
ceedings of the Royal Society A: Mathematical, Physical and Engineering Sciences,
467(2134):2752–2776, 2011.
[29] X. Zhong and C.-W. Shu. A simple weighted essentially nonoscillatory limiter for
RungeKutta discontinuous Galerkin methods. Journal of Computational Physics,
232(1):397–415, 2013.
[30] J. Zhu, J. Qiu, and C.-W. Shu. High-order Runge-Kutta discontinuous Galerkin
methods with a new type of multi-resolution WENO limiters. Journal of Computa-
tional Physics, 404:109105, 2020.
[31] J. Zhu and C.-W. Shu. A new type of multi-resolution WENO schemes with in-
creasingly higher order of accuracy. Journal of Computational Physics, 375:659–683,
2018.
[32] J. Zhu and C.-W. Shu. A new type of multi-resolution WENO schemes with in-
creasingly higher order of accuracy on triangular meshes. Journal of Computational
Physics, 392:19–33, 2019.
[33] J. Zhu, X. Zhong, C.-W. Shu, and J. Qiu. RungeKutta discontinuous Galerkin
method using a new type of WENO limiters on unstructured meshes. Journal of
Computational Physics, 248:200–220, 2013.
[34] J. Zhu, X. Zhong, C.-W. Shu, and J. Qiu. Runge-Kutta discontinuous Galerkin
method with a simple and compact Hermite WENO limiter. Communications in
Computational Physics, 19(4):944–969, 2016.
[35] J. Zhu, X. Zhong, C.-W. Shu, and J. Qiu. Runge-Kutta discontinuous Galerkin
method with a simple and compact Hermite WENO limiter on unstructured meshes.
Communications in Computational Physics, 21(3):623–649, 2017.
37