This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

The jump filter in the discontinuous Galerkin method for hyperbolic conservation laws

Lei Wei ,   Lingling Zhou ,  and  Yinhua Xia School of Mathematical Sciences, University of Science and Technology of China, Hefei, Anhui 230026, P.R. China. E-mail: [email protected] of Mathematics and Information Science, Henan Polytechnic University, Jiaozuo, Henan 454000, P.R. China. E-mail: [email protected]. The research was partially supported by NSFC grant No. 12001171.Corresponding author. School of Mathematical Sciences, University of Science and Technology of China, Hefei, Anhui 230026, P.R. China. E-mail: [email protected]. The research was partially supported by National Key R&D Program of China No. 2022YFA1005202/ 2022YFA1005200 and NSFC grant No. 12271498.
Abstract

When simulating hyperbolic conservation laws with discontinuous solutions, high-order linear numerical schemes often produce undesirable spurious oscillations. In this paper, we propose a jump filter within the discontinuous Galerkin (DG) method to mitigate these oscillations. This filter operates locally based on jump information at cell interfaces, targeting high-order polynomial modes within each cell. Besides its localized nature, our proposed filter preserves key attributes of the DG method, including conservation, L2L^{2} stability, and high-order accuracy. We also explore its compatibility with other damping techniques, and demonstrate its seamless integration into a hybrid limiter. In scenarios featuring strong shock waves, this hybrid approach, incorporating this jump filter as the low-order limiter, effectively suppresses numerical oscillations while exhibiting low numerical dissipation. Additionally, the proposed jump filter maintains the compactness of the DG scheme, which greatly aids in efficient parallel computing. Moreover, it boasts an impressively low computational cost, given that no characteristic decomposition is required and all computations are confined to physical space. Numerical experiments validate the effectiveness and performance of our proposed scheme, confirming its accuracy and shock-capturing capabilities.


Key words: hyperbolic conservation laws; discontinuous Galerkin method; viscosity; jump filter; shock capture; steady-state.

1 Introduction

Developing robust, accurate, and efficient high-order schemes for numerically solving hyperbolic nonlinear systems of conservation laws is crucial. Hyperbolic conservation laws are fundamental partial differential equations (PDEs) that bridge mathematics and mechanics, reflecting natural wave phenomena and finding wide applications in fluid dynamics, magnetohydrodynamics, multiphase flow, population dynamics, traffic flow, etc. Despite smooth initial and boundary conditions, nonlinear hyperbolic systems may exhibit flow-field discontinuities, such as shocks and contact discontinuities. The lack of robustness, especially concerning nonlinear instabilities, presents a significant challenge in applying high-order numerical schemes to technical problems. High-order approximations of these discontinuities may result in unbounded oscillations, leading to solver divergence. Hence, the development of shock-capturing techniques has received considerable attention in recent years to tackle this issue.

There has been an abundance of work on the extension of classical shock-capturing methodologies to higher-order methods over the past three decades. Some popular higher-order shock-capturing methods include essentially non-oscillatory (ENO) schemes [24], weighted ENO (WENO) methods [48, 39], subcell finite volume shock-capturing methods [68, 56], and Runge-Kutta discontinuous Galerkin (RKDG) methods, just to name a few. Unlike WENO-type methods, DG methods do not require any reconstruction procedure since the numerical solution in each cell is already a polynomial of suitable degree. Since complete discontinuous basis functions are used, DG methods also have some advantages different from classical finite element methods, such as the allowance of arbitrary unstructured meshes with hanging nodes, and easy hh-pp adaptivity. It’s worth noting that DG methods exhibit extremely local data communications which demonstrate excellent parallel efficiency. The DG method is also very friendly to the GPU environment [42]. For the history and development of the DG method, we refer to the survey paper [67]. Even though the DG method satisfies a cell-entropy inequality which implies an L2L^{2} or energy stability [33], this stability is not strong enough to prevent spurious oscillations or even blow-ups of the numerical solution in the presence of strong discontinuities. Therefore, nonlinear limiters are often needed to control such spurious oscillations. The classic limiters mainly include minmod type total variation bounded (TVB) slope limiters [12, 11, 13], moment limiters [5, 43], and many improved version [6]. In recent years, another class of limiters that have been actively researched are the WENO-type limiters [65], including Hermite WENO limiters [85, 53], simple WENO limiters [83] and multi-resolution WENO limiters [84]. Additionally, a widely used limiter introduced by Kuzmin for DG methods is the vertex-based limiter [44, 45, 46]. These limiters excel in controlling numerical oscillations; however, they can be computationally expensive and challenging to implement on unstructured or curved meshes, especially in three-dimensional scenarios.

A different approach to shock capturing, dating back to the work of Von Neumann and Richtmeyer [75] in the 1950s, is the use of artificial viscosity (AV). Jameson et al. [37, 35, 36] proposed a combination of a finite volume discretization method with dissipative terms and a Runge-Kutta time stepping method to yield an effective method for solving the Euler equations in arbitrary geometric domains. The historical drawback of the artificial viscosity approach is that the added terms are frequently too dissipative in certain regions of the flow. To minimize undesirable dissipation, Tadmor applied spectral viscosity (SV) [69, 70, 55] with spectral methods to stabilize the calculation, introducing diffusion-like terms that depend on the spatial resolution and distinguish different frequencies of the numerical solution. This concept has successfully been applied to large-eddy simulations of high Reynolds number flows in [40]. For higher order finite difference methods, Cook and Cabot [14, 15] incorporated artificial viscosity by scaling the physical viscosity terms such as dynamic viscosity, bulk viscosity, and shear viscosity. By adjusting the order of the polyharmonic operator, the viscosities can be strongly weighted toward high wavenumbers, thus imparting spectral-like behavior the dissipation. Subsequently, Fiorina and Lele [19] further developed this approach to address entropy gradients arising from temperature and species discontinuities. They introduced a nonlinear artificial diffusivity to mitigate these effects. Moreover, Kawai and Lele [41] extended the method to accommodate non-uniform and curvilinear meshes, enhancing its applicability. This approach was later adopted by other authors in the context of compressible turbulence simulations, and by Premasuthan et al. [63, 64] for spectral difference method [50] using only the dilation part of the shock sensor proposed by Bhagatwala and Lele [4]. The development of this type of method has seen numerous advancements. References [18, 51, 58, 59, 1] provide a wealth of new developments in this field. As an application of the artificial viscosity and hyperviscosity methods for stabilizing radial basis function based algorithms refer to [66, 71].

Artificial viscosity has also been employed with DG methods to capture shocks. Persson and Peraire [62] introduced a sub-cell shock-capturing artificial viscosity approach for high-order DG methods which combines a highly selective spectral sensor, based on orthogonal polynomials, with a consistently discretized element-wise constant artificial viscosity added to the equations. Building on work by Persson and Peraire, Klockner et al. [42] thoroughly justified the detector’s design and further explained the scaling and smoothing steps necessary to turn the output of the detector into a local, artificial viscosity. Later, Persson [61] studied the application of sensor-based artificial viscosity to transient flow problems, and showed how different levels of smoothness in the sensor affect the solution. Barter and Darmofal [2] proposed a PDE-based artificial viscosity model appended to the system of governing equations to obtain a smoother artificial viscosity coefficient at the expense of solving an additional PDE. Besides, Lv et al. [54] proposed an artificial viscosity scheme that is based on the eigen-spectrum of the discretization operator to minimize the stiffness addition caused by explicit calculations. The advantage of the formulation presented in [54] is that it provides a rigorous expression for different orders of bases, rather than relying solely on a simple scaling argument as in [62]. Another approach is the entropy-based viscosity method [7, 22] which was proposed in the DG framework in [86] and developed for other methods in [32, 9, 72]. The underlying heuristics is that in regions where the entropy production is large, the entropy viscosity is large as well and the effective viscosity is limited to be first-order, thus making the method monotone in these regions. There are also approaches which base the shock sensor on the element residuals [28, 26, 27, 3]. However, these residual-based methods tend to present some robustness issues when used with high-order methods and strong shocks. Other models can refer [57, 59]. In addition, the computational efficacy of applying the aforementioned models within the framework of DG was evaluated in [81].

In this paper, we present a novel local viscosity in the DG method, utilizing the jump information at cell interfaces. The concept of jump is of paramount importance as it allows for an adaptive determination of viscosity levels in each cell based on its smoothness characteristics. In regions of smooth flow, where minimal jumps occur between adjacent computational cells, the added viscosity is commensurately small, thereby significantly preserving the accuracy of the DG scheme. Conversely, in areas adjacent to shock waves, where discontinuities are more prominent, a larger viscosity is imparted to these cells, effectively mitigating numerical oscillations. Theoretical analysis confirms that the proposed DG scheme preserves several desirable properties, including conservation, L2L^{2} stability, and optimal convergence rate. However, a direct implementation of this scheme may entail significant computational expenses and introduce additional stiffness, which can restrict the time step size for stability. To overcome this challenge, the introduction of SV can be seamlessly integrated within the spectral filtering framework, as demonstrated in [20, 31, 57, 29], resulting in a highly efficient computational implementation. The approximation properties of spectrally filtered Fourier and Legendre expansions have been rigorously analyzed in [74, 30], while spectral filtering has emerged as a widely applicable stabilization technique, as documented in [17, 16]. Using this time-splitting method, the jump filter only needs to be applied after the standard DG schemes for each time step, and only the multiplication of the coefficients of the polynomials expanded from the numerical solution by a precomputed factor is necessary. This approach showcases an exceptional ability to automatically discern the magnitude of discontinuities and effectively mitigate numerical oscillations in their vicinity, without relying on problem-specific parameters. Besides, the jump filter is seamlessly integrated into the hybrid limiter framework [77], resulting in a significant reduction of numerical dissipation while effectively suppressing numerical oscillations. Unlike traditional limiters such as minmod type slope limiters [12, 13] or WENO limiters [65, 84], the jump filter is computed directly in physical space, leading to substantial computational cost reductions. Additionally, the proposed viscosity is exclusively dependent on local cells, preserving the compactness of the DG scheme and facilitating parallel computations. The accuracy and robustness of our algorithm are demonstrated through a comprehensive set of numerical examples.

This paper is structured as follows: In Section 2, we introduce the concept of local viscosity and the corresponding jump filter in the DG method for one- and two-dimensional hyperbolic conservation laws. We demonstrate the conservative, stable, and accurate nature of the DG scheme with this jump filter. Section 3 presents a comprehensive array of numerical examples, encompassing one-dimensional and two-dimensional cases, with a primary focus on the Euler equations. These examples cover various scenarios, including strong shock waves, shock reflection, interactions between shock waves and vortices, interactions with bubbles, and Kelvin-Helmholtz instability. Finally, Section 4 provides concluding remarks.

2 Scheme formulation

2.1 One-dimensional scalar conservation laws

Consider the scalar conservation laws in one-dimensional form

{ut+f(u)x=0,xΩ=[a,b],u(x,0)=u0(x),\displaystyle\begin{cases}u_{t}+f(u)_{x}=0,\;x\in\Omega=[a,b],\\ u(x,0)=u_{0}(x),\end{cases} (2.1)

with periodic or compactly supported boundary conditions. Let 𝒯h\mathcal{T}_{h} denote the partition of Ω\Omega with the mesh denoted by Kj=[xj12,xj+12]K_{j}=[x_{j-\frac{1}{2}},x_{j+\frac{1}{2}}] for j=1,,Nj=1,\cdots,N. The center of the cell is xj=12(xj12+xj+12)x_{j}=\frac{1}{2}(x_{j-\frac{1}{2}}+x_{j+\frac{1}{2}}) and the mesh size is denoted by hj=xj+12xj12h_{j}=x_{j+\frac{1}{2}}-x_{j-\frac{1}{2}} with h=max1jNhjh=\max\limits_{1\leq j\leq N}h_{j} being the maximum cell size. The mesh is assumed to be regular, which means the ratio between the maximum and minimum mesh sizes keeps bounded in the mesh refinements.

The DG approximation space VhkV_{h}^{k} is the space of all piecewise polynomial functions defined on Ω\Omega:

Vhk={vL2([a,b]):v|KjPk(Kj),j=1,,N}.\displaystyle V_{h}^{k}=\{v\in L^{2}([a,b]):\;v|_{K_{j}}\in P^{k}(K_{j}),\;j=1,\cdots,N\}. (2.2)

We also denote the inner product over the interval KjK_{j} and the associated norm by

(w,r)Kj=Kjwrdx,wKj=(w,w)Kj.\displaystyle(w,r)_{K_{j}}=\int_{K_{j}}\,w\,r\,\mathrm{d}x,\quad\left\|w\right\|_{K_{j}}=\sqrt{(w,w)_{K_{j}}}. (2.3)

It results in the semi-discrete DG scheme as follows: Find uhVhku_{h}\in V_{h}^{k}, such that

(tuh,v)Kj+<f(uh)^,v>Kj(f(uh),vx)Kj=0,vVhk and j=1,,N,\displaystyle(\partial_{t}u_{h},v)_{K_{j}}+<\widehat{f(u_{h})},v>_{\partial K_{j}}-(f(u_{h}),v_{x})_{K_{j}}=0,\;\forall v\in V_{h}^{k}\mbox{ and }j=1,\cdots,N, (2.4)

where <f(uh)^,v>Kj=f^j+12v(xj+12)f^j12v(xj12+)<\widehat{f(u_{h})},v>_{\partial K_{j}}=\hat{f}_{j+\frac{1}{2}}v(x_{j+\frac{1}{2}}^{-})-\hat{f}_{j-\frac{1}{2}}v(x_{j-\frac{1}{2}}^{+}). Here, f^j+12\hat{f}_{j+\frac{1}{2}} is the numerical flux defined on the cell interface Kj\partial K_{j} and in general depends on the values of uhu_{h} from both sides of the interface f^j+12=f^(uh(xj+12),uh(xj+12+))\hat{f}_{j+\frac{1}{2}}=\hat{f}(u_{h}(x_{j+\frac{1}{2}}^{-}),u_{h}(x_{j+\frac{1}{2}}^{+})). The Godunov flux or the Lax-Friedrichs flux is often employed when solving scalar equations.

In the linear case of Eqn. (2.1), the smoothness of the solution depends only on the initial conditions. However, for general nonlinear cases, the discontinuous solutions, known as shocks, may develop even if the initial data are smooth. The high order DG scheme would generate spurious oscillations when the solution contains shocks, so-called the Gibbs phenomenon. These spurious oscillations may not only generate some artificial structures, but also cause many overshoots and undershoots that make the numerical scheme less robust. To overcome this issue, the limiter approach was proposed, such as the TVB limiters [12, 11, 13], the WENO limiters [65, 85], and the vertex-based limiters [44, 45, 46], which is processed after each time stage. Another strategy, known as the entropy viscosity approach, is a predominant approach in the continuous Galerkin (CG) community for solving hyperbolic conservation laws [34, 23, 60, 22], which is based on the viscosity solution [47]. The viscosity solution of the Eqn. (2.1) is defined as the solution to the equation

utε+f(uε)x=ϵuxxε,\displaystyle u^{\varepsilon}_{t}+f(u^{\varepsilon})_{x}=\epsilon u^{\varepsilon}_{xx}, (2.5)

with uε(x,0)=u(x,0)u^{\varepsilon}(x,0)=u(x,0). The physical solution u(x,t)u(x,t) is obtained as the limit viscosity solution u(x,t)=limε0+uε(x,t)u(x,t)=\lim\limits_{\varepsilon\rightarrow 0^{+}}u^{\varepsilon}(x,t).

We propose the following DG scheme with local viscosity: Find uhVhku_{h}\in V_{h}^{k}, such that

(tuh,v)Kj+<f(uh)^,v>Kj(f(uh),vx)Kj+(νj(uh)x,vx)Kj=0,vVhk,\displaystyle(\partial_{t}u_{h},v)_{K_{j}}+<\widehat{f(u_{h})},v>_{\partial K_{j}}-(f(u_{h}),v_{x})_{K_{j}}+(\nu_{j}(u_{h})_{x},v_{x})_{K_{j}}=0,\;\forall v\in V_{h}^{k}, (2.6)

where νj\nu_{j} is the local viscosity coefficient and will be determined later. In the DG scheme (2.6), the introduction of this local viscosity term aims to mitigate spurious oscillations in shock solutions without compromising the high-order accuracy of smooth solutions. To achieve this, we define the local viscosity function as follows:

νj=σj(1ξ2),\displaystyle\nu_{j}=\sigma_{j}(1-\xi^{2}), (2.7)

where ξ=2(xxj)hj\xi=\frac{2(x-x_{j})}{h_{j}} and the jump viscosity coefficient σj\sigma_{j} is given by

σj=cf(hj[[uh]]Kj+l=1kl(l+1)hjl+1[[xluh]]Kj),\displaystyle\sigma_{j}=c_{f}(h_{j}\left\|[\mspace{-2.5mu}[u_{h}]\mspace{-2.5mu}]\right\|_{\partial K_{j}}+\sum\limits_{l=1}^{k}l(l+1)h_{j}^{l+1}\lVert[\mspace{-2.5mu}[\partial_{x}^{l}u_{h}]\mspace{-2.5mu}]\rVert_{\partial K_{j}}), (2.8)

with cf0c_{f}\geq 0 as a carefully designed free parameter. Here, [[w]]Kj=|w(xj12+)w(xj12)|+|w(xj+12+)w(xj+12)|\left\|[\mspace{-2.5mu}[w]\mspace{-2.5mu}]\right\|_{\partial K_{j}}=|w(x_{j-\frac{1}{2}}^{+})-w(x_{j-\frac{1}{2}}^{-})|+|w(x_{j+\frac{1}{2}}^{+})-w(x_{j+\frac{1}{2}}^{-})| denotes the jump of ww at cell interface Kj\partial K_{j}, and xluh\partial^{l}_{x}u_{h} represents the ll-th derivative of uhu_{h} with respect to xx.

Assuming σj\sigma_{j} is constant in KjK_{j}, which can be estimated by the numerical solution at the current time stage and then through integration by parts, the local viscosity term is equivalent to:

(νj(uh)x,vx)Kj\displaystyle(\nu_{j}(u_{h})_{x},v_{x})_{K_{j}} =σj(x((1ξ2)xuh),v)Kj,\displaystyle=-\sigma_{j}(\partial_{x}((1-\xi^{2})\partial_{x}u_{h}),v)_{K_{j}}, (2.9)
=σj2hj(ξ((1ξ2)ξu~h),v~)K^,\displaystyle=-\sigma_{j}\frac{2}{h_{j}}(\partial_{\xi}((1-\xi^{2})\partial_{\xi}\tilde{u}_{h}),\tilde{v})_{\widehat{K}}, (2.10)

where the reference cell K^=[1,1]\widehat{K}=[-1,1]. The numerical solution on KjK_{j} can be expressed by the Gauss-Legendre basis

uh|Kj=l=0kujl(t)Pl(x)=l=0kujl(t)P~l(ξ).\displaystyle u_{h}|_{K_{j}}=\sum\limits_{l=0}^{k}u_{j}^{l}(t)P_{l}(x)=\sum\limits_{l=0}^{k}u_{j}^{l}(t)\tilde{P}_{l}(\xi). (2.11)

Since P~l(ξ)\tilde{P}_{l}(\xi) satisfies the Sturm-Liouville equation

ddξ((1ξ2)ddξP~l(ξ))+l(l+1)P~l(ξ)=0,\displaystyle\frac{d}{d\xi}((1-\xi^{2})\frac{d}{d\xi}\tilde{P}_{l}(\xi))+l(l+1)\tilde{P}_{l}(\xi)=0, (2.12)

we obtain

(νj(uh)x,vx)Kj\displaystyle(\nu_{j}(u_{h})_{x},v_{x})_{K_{j}} =σj2hjl=0kujl(l(l+1)P~l(ξ),v~)K^.\displaystyle=\sigma_{j}\frac{2}{h_{j}}\sum\limits_{l=0}^{k}u_{j}^{l}(l(l+1)\tilde{P}_{l}(\xi),\tilde{v})_{\widehat{K}}. (2.13)

If we were to directly implement this term in (2.6), it would affect the maximum allowable time step when using an explicit time discretization. Alternatively, this term can be included in a time-splitting fashion [20, 31]. In this approach, we first advance the original DG scheme (2.4) by one time stage, followed by incorporating the diffusion term

(tuh,v)Kj+(νj(uh)x,vx)Kj=0,\displaystyle(\partial_{t}u_{h},v)_{K_{j}}+(\nu_{j}(u_{h})_{x},v_{x})_{K_{j}}=0, (2.14)

which is equivalent to

(tu~h,v~)K^+σj(2hj)2l=0kujl(l(l+1)P~l(ξ),v~)K^=0.\displaystyle(\partial_{t}\tilde{u}_{h},\tilde{v})_{\widehat{K}}+\sigma_{j}(\frac{2}{h_{j}})^{2}\sum\limits_{l=0}^{k}u_{j}^{l}(l(l+1)\tilde{P}_{l}(\xi),\tilde{v})_{\widehat{K}}=0. (2.15)

By taking v~=P~l(ξ)\tilde{v}=\tilde{P}_{l}(\xi), it results that

ddtujl+σjlujl=0,l=0,,k,\displaystyle\frac{d}{dt}u_{j}^{l}+\sigma_{j}^{l}u_{j}^{l}=0,\;l=0,\cdots,k, (2.16)

where

σjl=σj(2hj)2l(l+1).\displaystyle\sigma_{j}^{l}=\sigma_{j}(\frac{2}{h_{j}})^{2}l(l+1). (2.17)

For one time step with size Δt\Delta t, this ODE system can be solved as follows:

ujl(t+Δt)=exp(σjlΔt)ujl(t),l=0,,k.\displaystyle u_{j}^{l}(t+\Delta t)=\exp(-\sigma_{j}^{l}\Delta t)u_{j}^{l}(t),\;l=0,\cdots,k. (2.18)

Notice that for l=0l=0, uj0u_{j}^{0} is the cell average and σj0=0\sigma_{j}^{0}=0, thus the local cell conservation of the DG scheme is preserved.

In (2.17), to further minimize numerical dissipation, we opt for a smaller mode damping parameter σjl\sigma_{j}^{l} defined as follows:

σjl=σj,l(2hj)2l(l+1),\displaystyle\sigma_{j}^{l}=\sigma_{j,l}(\frac{2}{h_{j}})^{2}l(l+1), (2.19)
σj,l=cfl(hj[[uh]]Kj+m=1lm(m+1)hjm+1[[xmuh]]Kj).\displaystyle\sigma_{j,l}=c_{f}^{l}(h_{j}\left\|[\mspace{-2.5mu}[u_{h}]\mspace{-2.5mu}]\right\|_{\partial K_{j}}+\sum\limits_{m=1}^{l}m(m+1)h_{j}^{m+1}\lVert[\mspace{-2.5mu}[\partial_{x}^{m}u_{h}]\mspace{-2.5mu}]\rVert_{\partial K_{j}}). (2.20)

Here, σj,l\sigma_{j,l} replaces σj\sigma_{j} in equation (2.17), focusing solely on jumps within the mode number ll. Compared to equation (2.17), this damping technique eliminates the need to consider jump information from higher-order derivatives when filtering low-level moments. Consequently, it enhances the preservation of original polynomial data, thereby maintaining the accuracy of the standard DG scheme more effectively.

Similar ideas are explored in [52, 49], wherein an additional damping source term is introduced into the DG scheme:

(tuh,v)Kj+<f(uh)^,v>Kj(f(uh),vx)Kjl=0kσ~jlhj(uhPhl1uh,v)Kj=0,\displaystyle(\partial_{t}u_{h},v)_{K_{j}}+<\widehat{f(u_{h})},v>_{\partial K_{j}}-(f(u_{h}),v_{x})_{K_{j}}-\sum\limits_{l=0}^{k}\frac{\tilde{\sigma}_{j}^{l}}{h_{j}}(u_{h}-P_{h}^{l-1}u_{h},v)_{K_{j}}=0, (2.21)

where

σ~j=2(2l+1)2k1(hj)ll!([[xuh]]j+122+[[xuh]]j122)12,\displaystyle\tilde{\sigma}_{j}^{\ell}=\frac{2(2l+1)}{2k-1}\frac{(h_{j})^{l}}{l!}\left([\mspace{-2.5mu}[\partial_{x}^{\ell}u_{h}]\mspace{-2.5mu}]_{j+\frac{1}{2}}^{2}+[\mspace{-2.5mu}[\partial_{x}^{\ell}u_{h}]\mspace{-2.5mu}]_{j-\frac{1}{2}}^{2}\right)^{\frac{1}{2}}, (2.22)

and PhlP_{h}^{l} denotes the standard L2L^{2} projection into PlP^{l} polynomial space and Ph1=Ph0P_{h}^{-1}=P_{h}^{0}. Here, [[w]]j+12=w(xj+12+)w(xj+12)[\mspace{-2.5mu}[w]\mspace{-2.5mu}]_{j+\frac{1}{2}}=w(x_{j+\frac{1}{2}}^{+})-w(x_{j+\frac{1}{2}}^{-}).

2.2 Stability and error estimates

The conservation property of the scheme can be readily obtained by setting v=1v=1 in (2.6), leading to

ddtKjuhdx=f^j+12+f^j12.\displaystyle\dfrac{\mathrm{d}}{\mathrm{d}t}\int_{K_{j}}u_{h}\mathrm{d}x=-\hat{f}_{j+\frac{1}{2}}+\hat{f}_{j-\frac{1}{2}}. (2.23)

Summing over jj, with either periodic or compactly supported boundary conditions, we achieve global conservation. The L2L^{2} stability of the semi-discrete scheme is achieved by taking v=uhv=u_{h} in (2.6). Summing it over jj, we obtain

12ddtuh2=jΘj+12jνjuhKj2,\displaystyle\dfrac{1}{2}\dfrac{\mathrm{d}}{\mathrm{d}t}\left\|u_{h}\right\|^{2}=-\sum_{j}\Theta_{j+\frac{1}{2}}-\sum_{j}\left\|\sqrt{\nu_{j}}u_{h}\right\|^{2}_{K_{j}}, (2.24)

where Θj+12=uh(xj+12)uh(xj+12+)(f(y)f^(uh(xj+12),uh(xj+12+)))dy0\Theta_{j+\frac{1}{2}}=\int_{u_{h}(x_{j+\frac{1}{2}}^{-})}^{u_{h}(x_{j+\frac{1}{2}}^{+})}\left(f(y)-\hat{f}(u_{h}(x_{j+\frac{1}{2}}^{-}),u_{h}(x_{j+\frac{1}{2}}^{+}))\right)\,\mathrm{d}y\geq 0 as for the cell entropy inequality for (2.4) in [38], and uh(,t)\left\|u_{h}(\cdot,t)\right\| denotes the global L2L^{2} norm. Consequently, we have the L2L^{2} stability uh(,t)uh(,0)\left\|u_{h}(\cdot,t)\right\|\leq\left\|u_{h}(\cdot,0)\right\|.

2.2.1 Error estimates

In the following, we will present the optimal error estimate of the fully discrete DG scheme with the jump filter for the linear hyperbolic conservation laws, i.e., f(u)=cuf(u)=cu. Without loss of generality, we assume c=1c=1. Take the upwind numerical flux f(uh)^=(uh)\widehat{f(u_{h})}=(u_{h})^{-} in (2.4) and the DG scheme is rewritten as

(tuh,v)=𝒟(uh,v),\displaystyle(\partial_{t}u_{h},v)=\mathcal{D}(u_{h},v), (2.25)

where (w,r)=j=1N(w,r)Kj(w,r)=\sum_{j=1}^{N}(w,r)_{K_{j}}, 𝒟(w,r)=j=1N𝒟j(w,r)\mathcal{D}(w,r)=\sum_{j=1}^{N}\mathcal{D}_{j}(w,r) and

𝒟j(w,r)=(w,rx)Kjwj+12rj+12+wj12rj12+.\displaystyle\mathcal{D}_{j}(w,r)=(w,r_{x})_{K_{j}}-w^{-}_{j+\frac{1}{2}}r_{j+\frac{1}{2}}^{-}+w^{-}_{j-\frac{1}{2}}r_{j-\frac{1}{2}}^{+}. (2.26)

Applying the rrth-order ss-stage RK method with Shu-Osher representation in the semi-discrete DG scheme (2.25), we obtain the fully discrete RKDG scheme

uhn,0\displaystyle u_{h}^{n,0} =uhn,\displaystyle=u_{h}^{n},
(uhn,l+1,v)\displaystyle(u_{h}^{n,l+1},v) =0ml{clm(uhn,m,v)+τdlm𝒟(uhn,m,v)},l=0,1,,s1,\displaystyle=\sum_{0\leq m\leq l}\biggl{\{}c_{lm}(u_{h}^{n,m},v)+\tau d_{lm}\mathcal{D}(u_{h}^{n,m},v)\biggr{\}},\,\,l=0,1,\ldots,s-1,
uhn+1\displaystyle u_{h}^{n+1} =uhn,s,\displaystyle=u_{h}^{n,s},

where uhnu_{h}^{n} is the numerical solution at nnth time level, τ\tau is the time step and tn=nτt_{n}=n\tau. Define uσ0=uh0u_{\sigma}^{0}=u_{h}^{0} and uσn,0=uσnu_{\sigma}^{n,0}=u_{\sigma}^{n}. Then we present the RKDG scheme with a jump filter after each RK stage:

(uhn,l+1,v)=0ml{clm(uσn,m,v)+τdlm𝒟(uσn,m,v)},l=0,1,,s1,\displaystyle(u_{h}^{n,l+1},v)=\sum_{0\leq m\leq l}\biggl{\{}c_{lm}(u_{\sigma}^{n,m},v)+\tau d_{lm}\mathcal{D}(u_{\sigma}^{n,m},v)\biggr{\}},\,\,l=0,1,\ldots,s-1, (2.27)

and uσn,l+1u_{\sigma}^{n,l+1} is the solution of the following initial value problem

ddt(uσ,v)Kj+(νj(uhn,l+1)xuσ,vx)Kj=0,vVhk,uσ(x,0)=uhn,l+1,\displaystyle\begin{split}&\frac{d}{dt}(u_{\sigma},v)_{K_{j}}+(\nu_{j}(u_{h}^{n,l+1})\partial_{x}u_{\sigma},v_{x})_{K_{j}}=0,\,\,\forall v\in V_{h}^{k},\\ &u_{\sigma}(x,0)=u_{h}^{n,l+1},\end{split} (2.28)

where uσ(x,t)Vhku_{\sigma}(x,t)\in V_{h}^{k} and νj(uhn,l+1)\nu_{j}(u_{h}^{n,l+1}) is defined by (2.7) or equivalently (2.18). Finally, uσn+1=uσn,su_{\sigma}^{n+1}=u_{\sigma}^{n,s}.

For simplicity, we will only give the error estimates of the first order RKDG scheme with the jump filter as an example. With the general stability result of an arbitrary RKDG method in [78, 79, 80] and by induction, it is straightforward to obtain error estimates for the rrth-order ss-stage fully discrete scheme (2.27)-(2.28). Our main results are as follows.

Theorem 2.1.

Suppose that without the jump filter, the first order fully discrete RKDG scheme is stable under the CFL condition τγh2\tau\leq\gamma h^{2} for k1k\geq 1, where γ>0\gamma>0 is a suitable constant. If the exact solution u(x,t)u(x,t) is sufficiently smooth, uσnu_{\sigma}^{n} is the solution of the first order fully discrete RKDG scheme with the jump filter (2.27)-(2.28) and uσ0u(,0)Chk+1\left\|u_{\sigma}^{0}-u(\cdot,0)\right\|\leq Ch^{k+1}, then we have the optimal error estimate

uσnu(,tn)C(hk+1+τ).\displaystyle\left\|u_{\sigma}^{n}-u(\cdot,t_{n})\right\|\leq C(h^{k+1}+\tau).

We include the proof of this theorem in Appendix.

2.3 Two-dimensional scalar conservation laws

In the two-dimensional case, the situation is similar. Consider the two-dimensional scalar conservation laws

{ut+𝑭(u)=0,u(𝒙,0)=u0(𝒙),\displaystyle\begin{cases}u_{t}+\nabla\cdot\boldsymbol{F}(u)=0,\;\\ u(\boldsymbol{x},0)=u_{0}(\boldsymbol{x}),\end{cases} (2.29)

with suitable boundary conditions on the rectangular domain Ω\Omega. After we have the regular Cartesian grid 𝒯h\mathcal{T}_{h} of Ω\Omega, the cell Ki,j𝒯hK_{i,j}\in\mathcal{T}_{h} is denoted by Ki,j=[xi12,xi+12]×[yj12,yj+12]K_{i,j}=[x_{i-\frac{1}{2}},x_{i+\frac{1}{2}}]\times[y_{j-\frac{1}{2}},y_{j+\frac{1}{2}}] for i=1,,Nxi=1,\cdots,N_{x}; j=1,,Nyj=1,\cdots,N_{y}. The center of the cell Ki,jK_{i,j} is (xi,yj)=(12(xi12+xi+12),12(yj12+yj+12))(x_{i},y_{j})=(\frac{1}{2}(x_{i-\frac{1}{2}}+x_{i+\frac{1}{2}}),\frac{1}{2}(y_{j-\frac{1}{2}}+y_{j+\frac{1}{2}})) and the mesh size is denoted by hxi=xi+12xi12h_{x_{i}}=x_{i+\frac{1}{2}}-x_{i-\frac{1}{2}}, hyj=yj+12yj12h_{y_{j}}=y_{j+\frac{1}{2}}-y_{j-\frac{1}{2}}.

The DG scheme with local viscosity on the rectangular mesh is: Find uhVhk={vL2(Ω):v|Ki,jPk(Ki,j),i=1,,Nx;j=1,,Ny}u_{h}\in V_{h}^{k}=\{v\in L^{2}(\Omega):\;v|_{K_{i,j}}\in P^{k}(K_{i,j}),\;i=1,\cdots,N_{x};\;j=1,\cdots,N_{y}\}, such that for any vVhkv\in V_{h}^{k}, we have

(tuh,v)Ki,j(𝑭(uh),v)Ki,j+<𝑭^h𝒏,v>Ki,j+(𝝂i,juh,v)Ki,j=0,(\partial_{t}u_{h},v)_{{K_{i,j}}}-(\boldsymbol{F}(u_{h}),\nabla v)_{{K_{i,j}}}+<\hat{\boldsymbol{F}}_{h}^{\boldsymbol{n}},v>_{\partial K_{i,j}}+(\boldsymbol{\nu}_{i,j}\odot\nabla u_{h},\nabla v)_{K_{i,j}}=0,\; (2.30)

where <𝑭^h𝒏,v>Ki,j=Ki,j𝑭^h𝒏vds<\hat{\boldsymbol{F}}_{h}^{\boldsymbol{n}},v>_{\partial K_{i,j}}=\int_{\partial K_{i,j}}\hat{\boldsymbol{F}}_{h}\cdot\boldsymbol{n}v\mathrm{d}s and \odot denotes Hadamard product. Here, 𝒏=(nx,ny)T\boldsymbol{n}=(n_{x},n_{y})^{T} is the outward unit normal of the cell boundary Ki,j\partial_{K_{i,j}} and 𝑭^h\hat{\boldsymbol{F}}_{h} is a two point numerical flux. Following the one-dimensional case, we can choose the local viscosity function as

𝝂i,j=(𝝂i,j(1),𝝂i,j(2))=σi,j((1ξ2),(1η2)),\displaystyle\boldsymbol{\nu}_{i,j}=(\boldsymbol{\nu}_{i,j}^{(1)},\boldsymbol{\nu}_{i,j}^{(2)})=\sigma_{i,j}((1-\xi^{2}),(1-\eta^{2})), (2.31)

where ξ=2(xxi)hxi\xi=\frac{2(x-x_{i})}{h_{x_{i}}}, η=2(yyj)hyj\eta=\frac{2(y-y_{j})}{h_{y_{j}}}.

By integration by parts, the local viscosity term is equivalent to

(𝝂i,juh,v)Ki,j=σi,j(ξ((1ξ2)ξu~h)+η((1η2)ηu~h),v~)K^,(\boldsymbol{\nu}_{i,j}\odot\nabla u_{h},\nabla v)_{K_{i,j}}=-\sigma_{i,j}(\partial_{\xi}((1-\xi^{2})\partial_{\xi}\tilde{u}_{h})+\partial_{\eta}((1-\eta^{2})\partial_{\eta}\tilde{u}_{h}),\tilde{v})_{\widehat{K}}, (2.32)

where the reference cell K^=[1,1]2\widehat{K}=[-1,1]^{2}.

The numerical solution on Ki,jK_{i,j} can be expressed by the Gauss-Legendre basis

uh|Ki,j=l=0kp+q=lui,jp,q(t)Pp,q(x,y)=l=0kp+q=lui,jp,q(t)P~p,q(ξ,η).\displaystyle u_{h}|_{K_{i,j}}=\sum\limits_{l=0}^{k}\sum\limits_{p+q=l}u_{i,j}^{p,q}(t)P_{p,q}(x,y)=\sum\limits_{l=0}^{k}\sum\limits_{p+q=l}u_{i,j}^{p,q}(t)\tilde{P}_{p,q}(\xi,\eta). (2.33)

Since P~p,q(ξ,η)\tilde{P}_{p,q}(\xi,\eta) satisfies the Sturm-Liouville equation

ξ((1ξ2)ξP~p,q(ξ,η))+η((1η2)ηP~p,q(ξ,η))+λp,qP~p,q(ξ,η)=0,\displaystyle\frac{\partial}{\partial\xi}((1-\xi^{2})\frac{\partial}{\partial\xi}\tilde{P}_{p,q}(\xi,\eta))+\frac{\partial}{\partial\eta}((1-\eta^{2})\frac{\partial}{\partial\eta}\tilde{P}_{p,q}(\xi,\eta))+\lambda_{p,q}\tilde{P}_{p,q}(\xi,\eta)=0, (2.34)

where

λp,q=p(p+1)+q(q+1).\displaystyle\lambda_{p,q}=p(p+1)+q(q+1). (2.35)

Then we have

(𝝂i,juh,v)Ki,j=σi,jl=0kp+q=lui,jp,q(t)(λp,qP~p,q,v~)K^.\displaystyle(\boldsymbol{\nu}_{i,j}\odot\nabla u_{h},\nabla v)_{K_{i,j}}=\sigma_{i,j}\sum\limits_{l=0}^{k}\sum\limits_{p+q=l}u_{i,j}^{p,q}(t)(\lambda_{p,q}\tilde{P}_{p,q},\tilde{v})_{\widehat{K}}. (2.36)

We also use the time splitting fashion to deal with this term as in the one-dimensional case. By taking v~=P~p,q(ξ,η)\tilde{v}=\tilde{P}_{p,q}(\xi,\eta), we obtain the following ODE system

ddtui,jp,q+σi,jlui,jp,q=0,p+q=l=0,,k,\displaystyle\frac{d}{dt}u_{i,j}^{p,q}+\sigma_{i,j}^{l}u_{i,j}^{p,q}=0,\;p+q=l=0,\cdots,k, (2.37)

where

σi,jl=σi,j2hxi2hyjλp,q.\displaystyle\sigma_{i,j}^{l}=\sigma_{i,j}\frac{2}{h_{x_{i}}}\frac{2}{h_{y_{j}}}\lambda_{p,q}. (2.38)

For one time step Δt\Delta t, it can be solved as follows:

ui,jp,q(t+Δt)=exp(σi,jlΔt)ui,jp,q(t),p+q=l=0,,k.\displaystyle u_{i,j}^{p,q}(t+\Delta t)=\exp(-\sigma_{i,j}^{l}\Delta t)u_{i,j}^{p,q}(t),\;p+q=l=0,\cdots,k. (2.39)

The jump viscosity coefficient σi,j\sigma_{i,j} is given by

σi,j=cf,xp,q(hyj[[uh]]Ki,jvertical+l=1kl(l+1)hyjl+1|𝜶|=l[[𝜶uh]]Ki,jvertical)\displaystyle\sigma_{i,j}=c_{f,x}^{p,q}(h_{y_{j}}\left\|[\mspace{-2.5mu}[u_{h}]\mspace{-2.5mu}]\right\|_{\partial K_{i,j}^{\text{vertical}}}+\sum\limits_{l=1}^{k}l(l+1)h_{y_{j}}^{l+1}\sum_{|\boldsymbol{\alpha}|=l}\left\|[\mspace{-2.5mu}[\partial^{\boldsymbol{\alpha}}u_{h}]\mspace{-2.5mu}]\right\|_{\partial K_{i,j}^{\text{vertical}}})
+cf,yp,q(hxi[[uh]]Ki,jhorizontal+l=1kl(l+1)hxil+1|𝜶|=l[[𝜶uh]]Ki,jhorizontal),\displaystyle+c_{f,y}^{p,q}(h_{x_{i}}\left\|[\mspace{-2.5mu}[u_{h}]\mspace{-2.5mu}]\right\|_{\partial K_{i,j}^{\text{horizontal}}}+\sum\limits_{l=1}^{k}l(l+1)h_{x_{i}}^{l+1}\sum_{|\boldsymbol{\alpha}|=l}\left\|[\mspace{-2.5mu}[\partial^{\boldsymbol{\alpha}}u_{h}]\mspace{-2.5mu}]\right\|_{\partial K_{i,j}^{\text{horizontal}}}), (2.40)

where cf,xp,qc_{f,x}^{p,q} and cf,yp,qc_{f,y}^{p,q} are a free parameter. Here, the vector 𝜶=(α1,α2)\boldsymbol{\alpha}=(\alpha_{1},\alpha_{2}) is the multi-index with |𝜶|=α1+α2|\boldsymbol{\alpha}|=\alpha_{1}+\alpha_{2}, and 𝜶w\partial^{\boldsymbol{\alpha}}w is defined as 𝜶w=xα1yα2w\partial^{\boldsymbol{\alpha}}{w}=\partial^{\alpha_{1}}_{x}\partial^{\alpha_{2}}_{y}{w}. Besides, [[w]]Ki,jvertical=1hyjyj12yj+12[[w]]i+12,j+[[w]]i12,jds\left\|[\mspace{-2.5mu}[w]\mspace{-2.5mu}]\right\|_{\partial K_{i,j}^{\text{vertical}}}=\frac{1}{h_{y_{j}}}\int_{y_{j-\frac{1}{2}}}^{y_{j+\frac{1}{2}}}\lVert[\mspace{-2.5mu}[w]\mspace{-2.5mu}]_{i+\frac{1}{2},j}\rVert+\lVert[\mspace{-2.5mu}[w]\mspace{-2.5mu}]_{i-\frac{1}{2},j}\rVert\mathrm{d}s, where [[w]]i+12,j=|w(xi+12,j,y)w(xi+12,j+,y)|\lVert[\mspace{-2.5mu}[w]\mspace{-2.5mu}]_{i+\frac{1}{2},j}\rVert=|w(x_{i+\frac{1}{2},j}^{-},y)-w(x_{i+\frac{1}{2},j}^{+},y)| represents the absolute value of the jump of ww across the right interface of an element Ki,jK_{i,j}. A similar formula can be used to express [[𝜶uh]]Ki,jhorizontal\left\|[\mspace{-2.5mu}[\partial^{\boldsymbol{\alpha}}u_{h}]\mspace{-2.5mu}]\right\|_{\partial K_{i,j}^{\text{horizontal}}}. The trapezoidal rule is employed to approximate this damping term along each edge of Ki,jK_{i,j} in all our two-dimensional tests. Just as in the one-dimensional case, to further minimize numerical dissipation, we can also adjust the mode damping parameter σi,jl\sigma_{i,j}^{l} as follows:

σi,jl=σi,j,l(2hxi)(2hyj)λp,q,\displaystyle\sigma_{i,j}^{l}=\sigma_{i,j,l}(\frac{2}{h_{x_{i}}})(\frac{2}{h_{y_{j}}})\lambda_{p,q}, (2.41)
σi,j,l=cf,xp,q(hyj[[uh]]Ki,jvertical+m=1lm(m+1)hyjm+1|𝜶|=m[[𝜶uh]]Ki,jvertical)\displaystyle\sigma_{i,j,l}=c_{f,x}^{p,q}(h_{y_{j}}\left\|[\mspace{-2.5mu}[u_{h}]\mspace{-2.5mu}]\right\|_{\partial K_{i,j}^{\text{vertical}}}+\sum\limits_{m=1}^{l}m(m+1)h_{y_{j}}^{m+1}\sum_{|\boldsymbol{\alpha}|=m}\left\|[\mspace{-2.5mu}[\partial^{\boldsymbol{\alpha}}u_{h}]\mspace{-2.5mu}]\right\|_{\partial K_{i,j}^{\text{vertical}}})
+cf,yp,q(hxi[[uh]]Ki,jhorizontal+m=1lm(m+1)hxim+1|𝜶|=m[[𝜶uh]]Ki,jhorizontal).\displaystyle+c_{f,y}^{p,q}(h_{x_{i}}\left\|[\mspace{-2.5mu}[u_{h}]\mspace{-2.5mu}]\right\|_{\partial K_{i,j}^{\text{horizontal}}}+\sum\limits_{m=1}^{l}m(m+1)h_{x_{i}}^{m+1}\sum_{|\boldsymbol{\alpha}|=m}\left\|[\mspace{-2.5mu}[\partial^{\boldsymbol{\alpha}}u_{h}]\mspace{-2.5mu}]\right\|_{\partial K_{i,j}^{\text{horizontal}}}). (2.42)

We replace σi,j\sigma_{i,j} by σi,j,l\sigma_{i,j,l} in (2.38), which considers jumps only within the mode number ll. Additionally, this damping term (2.41) serves to determine the magnitude of the viscosity term throughout this paper, allowing for adaptive damping of various moments based on the jump size. Again, it leads to reduced numerical dissipation compared with (2.40).

Finally, it’s worth noting that there are no fundamental obstacles to extending the jump filter to Cartesian meshes in higher dimensions.

2.4 Systems of conservation laws

Since the system of conservation laws can be regarded as multiple scalar equations coupled together, extending the jump filter to systems does not pose any fundamental difficulty. Considering one-dimensional system 𝒖t+𝒇(𝒖)x=𝟎\boldsymbol{u}_{t}+\boldsymbol{f}(\boldsymbol{u})_{x}=\boldsymbol{0} with suitable boundary conditions, following the analogous approach as in the one-dimensional scalar case, we introduce appropriate viscous terms on each component. By employing the time-splitting method, we derive the following system of ODEs:

ddt𝒖jl+σjl𝒖jl=𝟎,l=0,,k,\displaystyle\frac{d}{dt}\boldsymbol{u}_{j}^{l}+\sigma_{j}^{l}\boldsymbol{u}_{j}^{l}=\boldsymbol{0},\;l=0,\cdots,k, (2.43)

where

σjl=max1s𝒩σjs(2hj)2l(l+1),\displaystyle\sigma_{j}^{l}=\max\limits_{1\leq s\leq\mathcal{N}}\sigma_{j}^{s}(\frac{2}{h_{j}})^{2}l(l+1), (2.44)

where 𝒩\mathcal{N} represents the number of equations in the system, and σjs\sigma_{j}^{s} denotes the jump viscosity coefficient based on the ss-th variable. For the one time step size Δt\Delta t, this ODE system can be solved as follows:

𝒖jl(t+Δt)=exp(σjlΔt)𝒖jl(t),l=0,,k.\displaystyle\boldsymbol{u}_{j}^{l}(t+\Delta t)=\exp(-\sigma_{j}^{l}\Delta t)\boldsymbol{u}_{j}^{l}(t),\;l=0,\cdots,k. (2.45)

When dealing with the system of conservation laws, it suffices to compute the jump viscosity coefficient for each component of the system and select the maximum one which is aimed to ensure stability of the scheme when solving problems involving strong shock waves.

We are aware that classical limiters like the TVB limiter or the WENO-type limiter often yield satisfactory outcomes when applied in the characteristic space. In our case, we compute the jump and then apply damping to various moments based on the jump magnitude. However, it’s worth noting that the eigenvectors of a matrix are not unique, and selecting different eigenvectors can result in different damping values if we calculate jump in characteristic space, potentially resulting in varying computed results. To address this challenge, we directly compute the jumps in the conservative space and select an appropriate cflc_{f}^{l} in (2.20), or cf,xp,qc_{f,x}^{p,q} and cf,yp,qc_{f,y}^{p,q} in (2.42). Through numerical experiments, we have demonstrated that this approach effectively mitigates spurious oscillations even in the presence of strong shocks.

3 Numerical experiments

This section presents several numerical examples, encompassing both one-dimensional and two-dimensional benchmark cases, with a primary focus on the compressible Euler equations. The aim is to showcase the effectiveness of the DG scheme equipped with a jump filter in maintaining the accuracy of the standard DG scheme. Particularly in scenarios featuring strong shock waves, we observe that the jump filter efficiently controls numerical oscillations, yielding results comparable to those achieved with the TVB limiter.

To further reduce numerical dissipation, we adopt a hybrid limiter detailed in Remark 2 of [77]. This hybrid approach incorporates the jump filter as the lower-order limiter. Specifically, we employ the jump indicator introduced in [77] to identify “troubled” cells. Then, exclusively on these cells, we use the jump filter to compute lower-order polynomials capable of controlling numerical oscillations. Finally, we combine these lower-order polynomials with the higher-order DG polynomials, weighting them appropriately to obtain the mixed polynomials.

Numerical experiments will demonstrate that employing this hybrid approach, with the lower-order polynomials computed using the jump filter, yields results comparable to those obtained by using the TVB limiter for the lower-order polynomials. However, the key advantage of the jump filter lies in its avoidance of characteristic decomposition, resulting in relatively lower computational costs.

In the following tests, we employ the local Lax-Friedrichs (LLF) numerical flux. However, it’s worth noting that other numerical fluxes, such as the HLL (Harten-Lax-van Leer) [25] and HLLC (Harten-Lax-van Leer-Contact) numerical fluxes [73], can also be effectively employed in this context. For time discretization, we utilize the third-order explicit strong-stability-preserving Runge-Kutta (SSP-RK) method [21]. Furthermore, our jump filter or hybrid limiter, in conjunction with the jump filter, is applied in a post-processing step after each Runge-Kutta substage.

3.1 One dimensional tests

We perform the limiting procedure with (2.19) with the parameter cfl=βj4l(l+1)c_{f}^{l}=\frac{\beta_{j}}{4l(l+1)} in (2.20) where βj\beta_{j} is the spectral radius of the Jacobian matrix 𝒇𝒖(𝒖¯j)\frac{\partial\boldsymbol{f}}{\partial\boldsymbol{u}}(\bar{\boldsymbol{u}}_{j}) which contains the information of wave speed and 𝒖¯j\bar{\boldsymbol{u}}_{j} denotes the averages of the conservative variables of cell KjK_{j}.

Example 3.1 (Burgers equation).

Consider the inviscid Burgers equation

ut+(u22)x=0,x(π,π),\displaystyle u_{t}+(\frac{u^{2}}{2})_{x}=0,\;x\in(-\pi,\pi), (3.46)

with the initial condition u(x,0)=12+sin(x)u(x,0)=\frac{1}{2}+\sin(x). Table 3.1 presents the errors and orders of numerical solutions with and without the jump filter, at time T=0.5T=0.5 when the solution is still smooth. It is evident that the DG scheme equipped with the jump filter achieves the desired accuracy. Moreover, as the mesh is refined, the error between the scheme with and without the jump filter diminishes significantly.

Additionally, in Figs. 3.1, numerical solutions and errors after shock formation at time T=1.5T=1.5 are depicted. Pointwise errors reveal controlled spurious oscillations around the shock, with a very small pollution region. Furthermore, both the cell average and the entire polynomial of numerical solutions remain oscillation-free.

Throughout all cases illustrated in Figs. 3.1, the local jump viscosity coefficient correlates closely with the numerical errors. This suggests that it can serve as a reliable shock indicator, facilitating adaptive filtering.

Table 3.1: Numerical errors and orders in Example 3.1.
results with filter results without filter
NN L2L^{2} error order LL^{\infty} error order L2L^{2} error order LL^{\infty} error order
P1P^{1} 20 2.60e-02 3.74e-02 1.01e-02 9.92e-03
40 3.96e-03 2.71 5.66e-03 2.72 2.85e-03 1.83 3.00e-03 1.72
80 7.52e-04 2.40 9.76e-04 2.54 7.73e-04 1.88 7.94e-04 1.92
160 1.90e-04 1.98 2.02e-04 2.27 2.04e-04 1.92 2.03e-04 1.96
320 5.07e-05 1.91 4.75e-05 2.09 5.29e-05 1.95 5.13e-05 1.99
640 1.32e-05 1.94 1.23e-05 1.94 1.35e-05 1.97 1.29e-05 1.99
P2P^{2} 20 1.10e-01 2.37e-01 6.70e-04 1.39e-03
40 1.41e-02 2.97 3.32e-02 2.83 9.42e-05 2.83 2.13e-04 2.70
80 6.03e-05 7.87 1.50e-04 7.79 2.13E-05 3.21 6.54E-05 3.09
160 2.94e-06 4.36 6.75e-06 4.47 1.81e-06 2.89 3.62e-06 2.92
320 2.84e-07 3.37 5.66e-07 3.58 2.37e-07 2.94 4.83e-07 2.91
640 3.26e-08 3.12 6.52e-08 3.12 3.02e-08 2.97 6.20e-08 2.96
P3P^{3} 20 8.70e-03 1.90e-02 3.76e-05 6.42e-05
40 1.02e-04 6.42 3.65e-04 5.71 3.88e-06 3.27 9.45e-06 2.76
80 1.50e-06 6.08 5.34e-06 6.09 2.87e-07 3.76 5.86e-07 4.01
160 4.15e-08 5.18 1.14e-07 5.55 1.99e-08 3.85 3.85e-08 3.93
320 1.70e-09 4.61 4.46e-09 4.67 1.33e-09 3.90 2.46e-09 3.97
640 9.22e-11 4.20 1.94e-10 4.53 8.69e-11 3.94 1.55e-10 3.99
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Figure 3.1: Numerical results of DG scheme with the jump filter for Example 3.1, with N=120N=120 and PkP^{k}, k=1,2,3k=1,2,3, at time T=1.5T=1.5. Top: numerical solutions of full polynomials and cell averages. Bottom: pointwise errors and σj,l\sigma_{j,l} where l=kl=k.

Next, we delve into the Euler equations:

𝑼t+𝑭(𝑼)x=0,\boldsymbol{U}_{t}+\boldsymbol{F}(\boldsymbol{U})_{x}=0, (3.47)

with 𝑼=(ρ,m,E)T\boldsymbol{U}=(\rho,m,E)^{T}, 𝑭(𝑼)=(m,m2ρ+p,mρ(E+p))T\boldsymbol{F}(\boldsymbol{U})=(m,\frac{m^{2}}{\rho}+p,\frac{m}{\rho}(E+p))^{T}, where m=ρum=\rho u, E=12ρu2+ρeE=\frac{1}{2}\rho u^{2}+\rho e, and p=(γ1)ρep=(\gamma-1)\rho e. Here, ρ\rho denotes density, and uu and mm represent velocity and momentum, respectively. EE stands for the total energy, pp denotes pressure, and ee signifies internal energy. γ\gamma represents the ratio of specific heats, and H=(E+p)/ρH=(E+p)/\rho is the enthalpy. For the Euler equations in 1D, we set cfl=βj4l(l+1)1Hc_{f}^{l}=\frac{\beta_{j}}{4l(l+1)}\frac{1}{H} in (2.20). Notably, in Euler equations, we observed that the factor 1H\frac{1}{H} enhances the scheme’s capability to capture strong shock waves. In this section, we present plots of the full polynomials of DG solutions.

Example 3.2 (Lax problem).

We consider the Lax problem for the Euler equations with the initial condition

(ρ,u,p,γ)T={(0.445,0.698,3.528,1.4)T,x[1,0)(0.5,0,0.571,1.4)T,x[0,1].\left(\rho,u,p,\gamma\right)^{T}=\begin{cases}\left(0.445,0.698,3.528,1.4\right)^{T},&x\in\left[-1,0\right)\\ \left(0.5,0,0.571,1.4\right)^{T},&x\in\left[0,1\right].\end{cases} (3.48)

The density ρ\rho computed using the DG scheme with the jump filter and the associated hybrid limiter, is plotted against the exact solution in Figs. 3.2. It’s evident that the DG scheme with the jump filter maintains sharp, oscillation-free resolution near shocks. Moreover, employing the hybrid limiter associated with the jump filter as the lower-order limiting strategy for this problem also yields oscillation-free results. Notably, this hybrid approach can further reduce computational costs, as discussed in [77].

Example 3.3 (Blast waves).

We then consider the interaction of two blast waves with the initial condition:

(ρ,u,p,γ)T={(1,0,103,1.4)T,x[0,0.1),(1,0,102,1.4)T,x[0.1,0.9],(1,0,102,1.4)T,x[0.9,1].\left(\rho,u,p,\gamma\right)^{T}=\begin{cases}\left(1,0,10^{3},1.4\right)^{T},&x\in\left[0,0.1\right),\\ \left(1,0,10^{-2},1.4\right)^{T},&x\in\left[0.1,0.9\right],\\ \left(1,0,10^{2},1.4\right)^{T},&x\in\left[0.9,1\right].\end{cases} (3.49)

Reflecting boundary conditions are applied at both endpoints, and the numerical solutions are depicted in Figs. 3.2. Here, the “exact” solution refers to the numerical solution computed by the fifth-order finite difference WENOZ-H scheme [76] with 2000020000 grid points. Initially, it’s evident that the DG scheme with the jump filter maintains sharp, oscillation-free resolution near shocks. To further minimize numerical dissipation, we employ the hybrid limiter associated with the jump filter for this problem. Comparing the results, we observe that the hybrid limiter exhibits superior resolution compared to the DG scheme with the jump filter alone.

Refer to caption
Refer to caption
Figure 3.2: Numerical results of DG scheme with the jump filter and hybrid limiters. Left: Example 3.2 , with N=200N=200 and P2P^{2}, at time T=0.13T=0.13. Right: Example 3.3 , with N=600N=600 and P2P^{2}, at time T=0.038T=0.038.
Example 3.4 (Shu-Osher shock tube problem).

Next, we consider the shock density wave interaction problem with a moving Mach 3 shock interacting with sine waves in the density:

(ρ,u,p,γ)T={(3.857143,2.629369,10.333333,1.4)T,x[5,4)(1+0.2sin(5x),0,1,1.4)T,x[4,5].\left(\rho,u,p,\gamma\right)^{T}=\begin{cases}\left(3.857143,2.629369,10.333333,1.4\right)^{T},&x\in\left[-5,-4\right)\\ \left(1+0.2\sin(5x),0,1,1.4\right)^{T},&x\in\left[-4,5\right].\end{cases} (3.50)

Given that this solution exhibits both shocks and a complex smooth region structure, a higher-order scheme is expected to showcase its advantages. For reference, the “exact” solution is computed using the fifth-order finite difference WENO scheme [39] with 2000 grid points. In Figs. 3.3, the density is plotted using the DG method with the jump filter and the hybrid limiter associated with it. Both schemes effectively capture high-frequency waves, and the hybrid limiter demonstrates its ability to efficiently reduce numerical dissipation. Additionally, higher-order DG methods with the jump filter or the hybrid limiter outperform their lower-order counterparts.

Refer to caption
Refer to caption
Refer to caption
Refer to caption
Figure 3.3: Numerical results of DG scheme with the jump filter and hybrid limiters for Example 3.4 with N=400N=400 at time T=1.8T=1.8. From left to right: P1P^{1}; P2P^{2}; P1P^{1} (Zoomed-in); P2P^{2} (Zoomed-in).

3.2 Two dimensional tests

The 2D Euler equation can be written as:

𝑼t+𝑭(𝑼)=0, in Ω2,\boldsymbol{U}_{t}+\nabla\cdot\boldsymbol{F}(\boldsymbol{U})=0,\mbox{ in }\Omega\subset\mathbb{R}^{2}, (3.51)

with 𝑼=(ρ,𝒎,E)T\boldsymbol{U}=(\rho,\boldsymbol{m},E)^{T}, 𝑭(𝑼)=(𝒎T,ρ𝒖𝒖T+p𝑰,(E+p)𝒖T)T\boldsymbol{F}(\boldsymbol{U})=(\boldsymbol{m}^{T},\rho\boldsymbol{u}\boldsymbol{u}^{T}+p\boldsymbol{I},(E+p)\ \boldsymbol{u}^{T})^{T}, where 𝒎=ρ𝒖\boldsymbol{m}=\rho\boldsymbol{u}, E=12ρ𝒖2+ρeE=\frac{1}{2}\rho\boldsymbol{u}^{2}+\rho e, and p=(γ1)ρep=(\gamma-1)\rho e. Here, ρ\rho represents density, and 𝒖=(u,v)T\boldsymbol{u}=(u,v)^{T} and 𝒎\boldsymbol{m} are velocities and momenta. EE is the total energy, p(𝑼)p(\boldsymbol{U}) is pressure, and ee is the internal energy. And γ\gamma is the ratio of specific heats. Unless otherwise specified, we always take γ=1.4\gamma=1.4. For Euler equations in 2D, the damping term (2.41) serves to determine the magnitude of the viscosity term with (cf,xp,q,cf,yp,q)=14λp,q1H(hyjβi,jx,hxiβi,jy)(c_{f,x}^{p,q},c_{f,y}^{p,q})=\frac{1}{4\lambda_{p,q}}\frac{1}{H}(h_{y_{j}}\beta_{i,j}^{x},h_{x_{i}}\beta_{i,j}^{y}) in (2.42), where βi,jx\beta_{i,j}^{x} and βi,jy\beta_{i,j}^{y} are the estimates of the local maximum wave speeds in the xx- and yy-directions, respectively.

Example 3.5 (Vortex evolution problems).

We now consider the problem of vortex evolution. An isentropic vortex perturbation centered at (xc,yc)(x_{c},y_{c}) is added to the velocity (u,v)(u,v), temperature (T=p/ρT=p/\rho), and entropy (S=ln(p/ργ)S=\ln\left(p/\rho^{\gamma}\right)) of the flow, given in the following:

(δu,δv)=ϵrceα(1r2)(y¯,x¯),δT=(γ1)ϵ24αγe2α(1τ2),δS=0,(\delta u,\delta v)=\frac{\epsilon}{r_{c}}e^{\alpha(1-r^{2})}(\overline{y},-\overline{x}),\quad\delta T=-\frac{(\gamma-1)\epsilon^{2}}{4\alpha\gamma}e^{2\alpha(1-\tau^{2})},\quad\delta S=0,

where (x¯,y¯)=(xxc,yyc)(\overline{x},\overline{y})=(x-x_{c},y-y_{c}), r2=x¯2+y¯2r^{2}=\overline{x}^{2}+\overline{y}^{2}, and the τ=r/rc\tau=r/r_{c}. Here ϵ\epsilon is the strength of the vortex, α\alpha controls the decay rate of the vortex, and rcr_{c} is the critical radius at which the vortex has the maximum strength. We test the following two cases:

  • (a)

    (accuracy test) The state of the mean flow is given by (ρ,u,v,p)T=(1,1,1,1)T(\rho,u,v,p)^{T}=(1,1,1,1)^{T}. The parameters are taken as ϵ=5/(2π)\epsilon=5/(2\pi), rc=1r_{c}=1, α=1/2\alpha=1/2, (xc,yc)=(5,5)(x_{c},y_{c})=(5,5). The exact solution represents the convection motion of the vortex with the mean flow velocity. We compute the numerical solution at time T=10T=10 in the region [0,10]2[0,10]^{2} under periodic boundary conditions. Table 3.2 presents the accuracy and convergence rates. It is observed that the DG scheme with the jump filter achieves the expected convergence rate, surpassing k+1k+1. This deviation is attributed to the dominance of the viscous term on coarse meshes. However, with mesh refinement, the convergence rate rapidly approaches the theoretically expected k+1k+1 order of accuracy. Moreover, comparison with the standard DG scheme reveals negligible differences in errors on fine meshes, suggesting a minimal impact of our jump filter as expected. As the mesh is refined, the jumps between adjacent cells diminish significantly.

  • (b)

    (shock-vortex interaction) The model problem characterizes the mutual interference effects of a stationary shock wave and a moving vortex. The computational domain is given by [0,2]×[0,1][0,2]\times[0,1]. A stationary shock wave is located at x=0.5x=0.5 and is perpendicular to the xx-axis. The left state of the shock wave is (ρ,u,v,p)T=(1,1.1γ,0,1)T(\rho,u,v,p)^{T}=(1,1.1\sqrt{\gamma},0,1)^{T}. A small vortex is imposed on the fluid to the left of the shock wave, with its center at (xc,yc)=(0.25,0.5)(x_{c},y_{c})=(0.25,0.5). We take the same values of these parameters as in [39] that ϵ=0.3\epsilon=0.3, rc=0.05r_{c}=0.05, and α=0.204\alpha=0.204. The upper and lower boundaries are subjected to reflective boundary conditions. Figure 3.4 displays contour plots of pressure at six distinct times, illustrating the shock-vortex interaction dynamics. Employing DG schemes with the jump filter effectively captures these dynamics and accurately depicts intricate wave structures. The obtained results are comparable to those reported in [39].

Table 3.2: Numerical errors and orders in Example 3.5.
results with filter results without filter
Nx×NyN_{x}\times N_{y} L2L^{2} error order LL^{\infty} error order L2L^{2} error order LL^{\infty} error order
P1P^{1} 80×8080\times 80 6.26e-03 6.79e-02 1.30e-03 1.60e-02
160×160160\times 160 5.52e-04 3.50 4.97e-03 3.77 1.93e-04 2.75 2.25e-03 2.83
320×320320\times 320 4.70e-05 3.55 4.90e-04 3.33 2.84e-05 2.76 3.74e-04 2.58
640×640640\times 640 5.70e-06 3.04 7.48e-05 2.71 4.96e-06 2.52 8.37e-05 2.16
1280×12801280\times 1280 1.08e-06 2.39 1.85e-05 2.01 1.06e-06 2.22 1.97e-05 2.08
P2P^{2} 80×8080\times 80 1.23e-03 1.32e-02 2.06e-05 5.76e-04
160×160160\times 160 3.13e-05 5.29 3.55e-04 5.21 2.77e-06 2.89 7.24e-05 2.99
320×320320\times 320 1.01e-06 4.94 1.49e-05 4.57 3.88e-07 2.83 9.64e-06 2.90
640×640640\times 640 6.21e-08 4.03 1.21e-06 3.61 5.36e-08 2.85 1.33e-06 2.85
1280×12801280\times 1280 7.46e-09 3.05 1.92e-07 2.70 7.37e-09 2.86 1.97e-07 2.75
P3P^{3} 80×8080\times 80 1.65e-03 1.83e-02 6.47e-07 1.38e-05
160×160160\times 160 1.72e-06 9.90 3.48e-05 9.04 3.33e-08 4.28 9.25e-07 3.90
320×320320\times 320 2.13e-08 6.33 3.42e-07 6.66 1.86e-09 4.16 5.45e-08 4.08
640×640640\times 640 3.49e-10 5.93 7.18e-09 5.57 1.10e-10 4.08 3.18e-09 4.10
1280×12801280\times 1280 8.66e-12 5.33 2.37e-10 4.92 6.82e-12 4.01 1.85e-10 4.10
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Figure 3.4: Numerical results of DG scheme with the jump filter for Example 3.5 case (b). From left to right, and top to bottom: T=0.068T=0.068; T=0.203T=0.203; T=0.330T=0.330; T=0.529T=0.529; T=0.662T=0.662; T=0.8T=0.8. 30 equally spaced pressure contours from 0.68 to 1.30 at T=0.068T=0.068 and T=0.203T=0.203; T=0.330T=0.330. 90 equally spaced pressure contours from 1.19 to 1.37 at T=0.529T=0.529; T=0.662T=0.662; and T=0.8T=0.8. P3P^{3} basis. 400×200400\times 200 cells.
Example 3.6 (Double Mach reflection problem).

This is a benchmark test for the two-dimensional Euler equations for high-resolution schemes. The computation domain is [0,4]\left[0,4\right] ×\times [0,1]\left[0,1\right]. A right-moving Mach 1010 shock is located at x=1/6x=1/6, y=0y=0, making a 6060^{\circ} angle with the horizontal wall. At the top boundary, the flow values are set to describe the exact motion of the Mach 10 shock. The boundary conditions at the left and the right are inflow and outflow respectively.

The contour plots of density in DG solutions with the jump filter and the hybrid limiter at time T=0.2T=0.2 are presented in Figs. 3.5, with zoomed-in views in Figs. 3.6. Firstly, it’s evident that the DG scheme with the jump filter effectively captures shock waves, with resolution improving as accuracy increases. These results mirror the effect of TVB limiters in achieving total variation boundedness in standard DG schemes [13], as further explored in [77].

On the other hand, when utilizing the hybrid limiter associated with the jump filter as lower-order limiters, the scheme adeptly captures shock waves and showcases the advantages of higher-order schemes more comprehensively. Higher-order schemes exhibit superior resolution, particularly below the Mach stem, as illustrated in Figs. 3.6. This underscores that employing the jump filter as lower-order polynomials in the hybrid limiter not only facilitates efficient capture of shock waves but also minimizes numerical dissipation.

Refer to caption
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Figure 3.5: Numerical results for Example 3.6. DG solutions of k=1,2,3,4k=1,2,3,4 from top to bottom. Left: the jump filter; Right: the hybrid limiter associated with the jump filter. 30 equally spaced density contours from 1.51.5 to 21.521.5. 960×240960\times 240 cells.
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Figure 3.6: Numerical results for Example 3.6. Zoom-in DG solutions of k=1,2,3,4k=1,2,3,4 from left to right. Top: the jump filter; Bottom: the hybrid limiter associated with the jump filter. 30 equally spaced density contours from 1.51.5 to 21.521.5. 960×240960\times 240 cells.
Example 3.7 (Forward facing step problem).

The wind tunnel is 33 units in length and 11 unit in width, and the step is 0.20.2 units high, located 0.60.6 units from the left end of the tunnel. The initial condition is a uniform flow given by (ρ,u,v,p)T=(γ,3,0,1)T(\rho,u,v,p)^{T}=(\gamma,3,0,1)^{T}. Reflective boundary conditions are applied along the wall boundaries, and inflow and outflow boundary conditions are imposed along the left and right boundaries.

The DG solutions with the jump filter and the associated hybrid limiter are depicted in Figs. 3.7 at time T=4T=4. Notably, all schemes exhibit essential oscillation-free behavior. Additionally, a discernible difference emerges between higher and lower-order schemes: the former more effectively captures slip lines, showcasing the superiority of higher-order schemes. Moreover, employing the hybrid approach yields even lower dissipation. This can be attributed to its ability to effectively capture the intricate flow structure and resolve slip lines better than the jump filter alone.

Refer to caption
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Refer to caption
Figure 3.7: Numerical results for Example 3.7. DG solutions of k=1,2,3,4k=1,2,3,4 from top to bottom. Left: the jump filter; Right: the associated hybrid limiter. 30 equally spaced density contours from 0.320.32 to 6.156.15. 480×160480\times 160 cells.
Example 3.8 (Shock passing a backward facing corner).

Shock diffraction is a very common phenomenon. The computational domain for this problem is [0,1]×[6,11]\left[0,1\right]\times\left[6,11\right] and [1,13]×[0,11]\left[1,13\right]\times\left[0,11\right]. The initial condition is a pure right-moving shock of Mach =5.09=5.09, initially located at x=0.5x=0.5 and 6y116\leq y\leq 11, moving into undisturbed air ahead of the shock with (ρ,u,v,p)T=(1.4,0,0,1)T(\rho,u,v,p)^{T}=(1.4,0,0,1)^{T}. We use the inflow boundary condition at {x=0,y[6,11]}\{x=0,y\in[6,11]\}, reflective boundary condition at {x[0,1],y=6}\{x\in[0,1],y=6\} and {x=1,y[0,6]}\{x=1,y\in[0,6]\}, and outflow boundary condition elsewhere. To ensure the positivity of the density and pressure of the DG solutions, we first apply the jump filter, and then we utilize the positivity-preserving (PP) limiter introduced by Zhang and Shu [82] in Examples 3.8 and 3.9. Due to the conservation nature of our scheme, integrating the PP limiter is straightforward. Based on our numerical tests, we’ve found that the DG scheme with the jump filter can maintain positivity even without PP limiters for certain grid configurations. However, this isn’t universally true. Figures 3.8 depict density contour plots at time T=2.3T=2.3. Evidently, all schemes successfully exhibit the essential property of non-oscillation in the numerical solution. Furthermore, the higher-order scheme consistently outperforms the lower-order scheme in accurately capturing the slip line.

Refer to caption
Refer to caption
Figure 3.8: Numerical results of DG scheme with the jump filter for Example 3.8. Left: P1P^{1}. Right: P3P^{3}. 20 equally spaced density contours from 0.0662270.066227 to 7.06687.0668. 260×220260\times 220 cells.
Refer to caption
Refer to caption
Figure 3.9: Numerical results of DG scheme with the jump filter for Example 3.8. Left: k=1k=1. Right: k=3k=3. 40 equally spaced pressure contours from 1.11.1 to 111111. 260×220260\times 220 cells.
Example 3.9 (High Mach number astrophysical jets).

We consider the high Mach number astrophysical jets without the radiative cooling [82]. A Mach 20002000 problem is considered to show the robustness of the scheme with the PP limiter [82]. The computational domain is taken as [0,1]×[0.25,0.25][0,1]\times[-0.25,0.25], initially full of the ambient gas with (ρ,u,v,p,γ)T=(0.5,0,0,0.4127,5/3)T(\rho,u,v,p,\gamma)^{T}=(0.5,0,0,0.4127,5/3)^{T}. The right, top, and bottom boundary are outflows. For the left boundary, (ρ,u,v,p,γ)T=(5,800,0,0.4127,5/3)T(\rho,u,v,p,\gamma)^{T}=(5,800,0,0.4127,5/3)^{T} if y[0.05,0.05]y\in[-0.05,0.05] and (ρ,u,v,p,γ)T=(5,0,0,0.4127,5/3)T(\rho,u,v,p,\gamma)^{T}=(5,0,0,0.4127,5/3)^{T} otherwise. The numerical solution at a mesh of 320×160320\times 160 is shown in Figs. 3.10. We can observe that the numerical results closely resemble the corresponding outcomes in [82].

Refer to caption
Refer to caption
Refer to caption
Figure 3.10: Numerical results of DG scheme with the jump filter for Example 3.9. From left to right: density; pressure; temperature. Scales are logarithmic. P3P^{3} basis. 320×160320\times 160 cells.
Example 3.10 (Shock-bubble interaction).

In this experiment we simulate a strong rightwards moving shock wave over a low density gas bubble [8]. The computational domain is [0.1,1.6]×[0.5,0.5][-0.1,1.6]\times[-0.5,0.5]. At the initial time, the region exhibits three different states: (A) x<0x<0; (B) a circular disk centered at (0.3,0.0)(0.3,0.0) with a radius of 0.20.2; (C) other regions. In region (A), (ρ,u,v,p)T=(113,2.7136021011998722,0.0,10.0)T(\rho,u,v,p)^{T}=(\frac{11}{3},2.7136021011998722,0.0,10.0)^{T}. In region (B), (ρ,u,v,p)T=(0.1,0.0,0.0,1.0)T(\rho,u,v,p)^{T}=(0.1,0.0,0.0,1.0)^{T}. In region (C), (ρ,u,v,p)T=(1.0,0.0,0.0,1.0)T(\rho,u,v,p)^{T}=(1.0,0.0,0.0,1.0)^{T}. The left boundary has the Dirichlet boundary condition, the right has the outflow boundary condition, and the top and bottom boundaries have the solid wall boundary condition. In this example, a moving shockwave propagates to the right and compresses the bubble in the region (B). In the left of Figs. 3.11, we present numerical results obtained with different schemes at T=0.4T=0.4, and in the right Figs. 3.11, we display the density distribution around the bubble. It can be observed that the higher-order schemes with the jump filter capture more unstable and intricate structures, providing a more detailed representation of the flow field.

Refer to caption
Refer to caption
Refer to caption
Refer to caption
Figure 3.11: Numerical results of DG scheme with the jump filter for Example 3.10. 30 equally spaced density contours from 0.192 to 5.618. From left to right and top to bottom: P1P^{1}; P3P^{3}; P1P^{1} (Zoomed-in); P3P^{3} (Zoomed-in). 680×400680\times 400 cells.
Example 3.11 (Kelvin-Helmholtz (KH) instability).

The KH instability problem is considered in a computational domain of [0.5,0.5]2[-0.5,0.5]^{2}. The initial values within this domain are set as follows:

(ρ,u,v,p)T={(1,0.5+0.5e(y+0.25)/L,0.01sin(4πx),1.5)T,for y[0.5,0.25),(2,0.50.5e(y0.25)/L,0.01sin(4πx),1.5)T,for y[0.25,0),(2,0.50.5e(y0.25)/L,0.01sin(4πx),1.5)T,for y[0,0.25),(1,0.5+0.5e(0.25y)/L,0.01sin(4πx),1.5)T,for y[0.25,0.5],(\rho,u,v,p)^{T}=\begin{cases}(1,-0.5+0.5e^{(y+0.25)/L},0.01\sin(4\pi x),1.5)^{T},&\text{for }y\in[-0.5,-0.25),\\ (2,0.5-0.5e^{(-y-0.25)/L},0.01\sin(4\pi x),1.5)^{T},&\text{for }y\in[-0.25,0),\\ (2,0.5-0.5e^{(y-0.25)/L},0.01\sin(4\pi x),1.5)^{T},&\text{for }y\in[0,0.25),\\ (1,-0.5+0.5e^{(0.25-y)/L},0.01\sin(4\pi x),1.5)^{T},&\text{for }y\in[0.25,0.5],\end{cases}

where L=0.00625L=0.00625. Periodic boundary conditions are applied and the simulation concludes at T=4T=4. Figures 3.12 depict the density distribution obtained using the jump filter with P1P^{1} and P3P^{3} basis functions. Noticeably, the higher-order schemes generate more intricate vortex structures and turbulent mixing layers.

Refer to caption
Refer to caption
Figure 3.12: Numerical results of DG scheme with the jump filter for Example 3.11. 30 equally spaced density contours from 0.7 to 2.3. Left: P1P^{1}. Right: P3P^{3}. 240×240240\times 240 cells.

4 Conclusions

By incorporating a local viscosity term based solely on cell interface jumps, this paper introduces a novel shock capturing approach to the DG scheme. This scheme is efficiently implemented through a splitting fashion without impacting the chosen time step. Its favorable properties are ensured by rigorous mathematical theory, guaranteeing conservation, L2L^{2} stability, and optimal error estimation. Extensive numerical experiments, primarily focusing on various test cases of the Euler equations, validate the proposed method, showcasing its efficacy in controlling numerical spurious oscillations, particularly in scenarios involving strong shock waves. Furthermore, by integrating the novel jump filter into a hybrid limiter framework, the scheme effectively suppresses numerical spurious oscillations while further reducing dissipation. The jump filter maintains the compactness of the DG scheme, facilitating easy implementation and enabling efficient parallel computations. An important advantage of this approach is its simplicity and computational efficiency. For each time step, only the multiplication of the coefficients by a precomputed factor is necessary. This factor is calculated in physical space without the need for characteristic decomposition. It appears that the jump filter can be seamlessly implemented on unstructured meshes, and we plan to explore this capability and its application in steady-state problems in our future work to enhance its versatility and applicability.

5 Appendix

In this section, we provide the proof of Theorem 2.1. Before presenting the proof, we provide some preliminary knowledge. The Gauss-Radau projection PhP_{h}^{-} provides great help in obtaining the optimal error estimates. For any function uu, the projection PhuP_{h}^{-}u is defined as the unique element in VhkV_{h}^{k} such that

(Phuu,v)Kj=0,vPk1(Kj),(Phu)j+12=uj+12.\displaystyle(P_{h}^{-}u-u,v)_{K_{j}}=0,\,\,\forall v\in P^{k-1}(K_{j}),\,\,(P_{h}^{-}u)_{j+\frac{1}{2}}^{-}=u_{j+\frac{1}{2}}^{-}.

By a standard scaling argument [10], it is easy to obtain the following approximation property:

hlxl(Phuu)Kj+hl+12xl(Phuu)KjChk+1,\displaystyle h^{l}\left\|\partial_{x}^{l}(P_{h}^{-}u-u)\right\|_{K_{j}}+h^{l+\frac{1}{2}}\left\|\partial_{x}^{l}(P_{h}^{-}u-u)\right\|_{\partial K_{j}}\leq Ch^{k+1}, (5.52)

here the constant C>0C>0 is independent of hh and jj and wKj=((wj12+)2+(wj+12))12\left\|w\right\|_{\partial K_{j}}=((w_{j-\frac{1}{2}}^{+})^{2}+(w_{j+\frac{1}{2}}^{-}))^{\frac{1}{2}}. In addition, the following inverse property with respect to the finite element space VhkV_{h}^{k} will be used in our analysis.

vL(Kj)Ch12vKj,vKjCh12vKj,vH1(Kj)Ch1vKj.\displaystyle\begin{split}\left\|v\right\|_{L^{\infty}(K_{j})}\leq Ch^{-\frac{1}{2}}\left\|v\right\|_{K_{j}},\\ \left\|v\right\|_{\partial K_{j}}\leq Ch^{-\frac{1}{2}}\left\|v\right\|_{K_{j}},\\ \left\|v\right\|_{H^{1}(K_{j})}\leq Ch^{-1}\left\|v\right\|_{K_{j}}.\end{split} (5.53)

Now we present several properties of the DG operator defined by (2.26). The proofs are routine, so we omit them to save space.

𝒟(v,v)=12[[v]]2,𝒟(v,r)Ch1vr,v,rVhk,\displaystyle\mathcal{D}(v,v)=-\frac{1}{2}[\mspace{-2.5mu}[v]\mspace{-2.5mu}]^{2},\quad\left\|\mathcal{D}(v,r)\right\|\leq Ch^{-1}\left\|v\right\|\left\|r\right\|,\,\,\forall v,r\in V_{h}^{k}, (5.54)
𝒟(uPhu,r)=0,uH1(𝒯h),rVhk,\displaystyle\mathcal{D}(u-P_{h}^{-}u,r)=0,\,\,\forall u\in H^{1}(\mathcal{T}_{h}),\,\,r\in V_{h}^{k}, (5.55)

where H1(𝒯h)={vL2([a,b]):v|KjH1(Kj),j=1,,N}H^{1}(\mathcal{T}_{h})=\{v\in L^{2}([a,b]):v|_{K_{j}}\in H^{1}(K_{j}),\;j=1,\cdots,N\} and [[v]]2=j=1N[[v]]j+122[\mspace{-2.5mu}[v]\mspace{-2.5mu}]^{2}=\sum\limits_{j=1}^{N}[\mspace{-2.5mu}[v]\mspace{-2.5mu}]_{j+\frac{1}{2}}^{2}.

To obtain the error equation, we first present the local truncation error in time for the exact functions. Suppose the exact solution u(x,t)u(x,t) is smooth enough, then we have

u(x,t+τ)=u(x,t)τux(x,t)+ρ(x,t)\displaystyle u(x,t+\tau)=u(x,t)-\tau u_{x}(x,t)+\rho(x,t) (5.56)

and ρ(x,t)=O(τ2)\left\|\rho(x,t)\right\|=O(\tau^{2}). Let t=tnt=t_{n} and denote un=u(x,tn)u^{n}=u(x,t_{n}), ρn=ρ(x,tn)\rho^{n}=\rho(x,t^{n}). Multiplying the test function vVhkv\in V_{h}^{k} on both sides of (5.56) and integrating by parts yields the following equality

(un+1,v)=(un+1,v)+τ𝒟(un,v)+(ρn,v).\displaystyle(u^{n+1},v)=(u^{n+1},v)+\tau\mathcal{D}(u^{n},v)+(\rho^{n},v). (5.57)

As the usual treatment, define

ζσn=uσnPhun,ζn=uhnPhun,ηn=unPhun.\displaystyle\zeta_{\sigma}^{n}=u_{\sigma}^{n}-P_{h}^{-}u^{n},\,\,\zeta^{n}=u_{h}^{n}-P_{h}^{-}u^{n},\,\,\eta^{n}=u^{n}-P_{h}^{-}u^{n}.

Subtracting (5.57) from the scheme (2.27) with r=s=1r=s=1 gives the error equation

(ζn+1,v)=(ζσn,v)+τ𝒟(ζσn,v)+(ηn+1ηn,v)(ρn,v),\displaystyle(\zeta^{n+1},v)=(\zeta^{n}_{\sigma},v)+\tau\mathcal{D}(\zeta^{n}_{\sigma},v)+(\eta^{n+1}-\eta^{n},v)-(\rho^{n},v), (5.58)

here we have used the property (5.55). Obviously, we have the following equivalent form

(ζσn+1,v)=(ζσn,v)+τ𝒟(ζσn,v)+(ηn+1ηn,v)(ρn,v)+(uσn+1uhn+1).\displaystyle(\zeta^{n+1}_{\sigma},v)=(\zeta^{n}_{\sigma},v)+\tau\mathcal{D}(\zeta^{n}_{\sigma},v)+(\eta^{n+1}-\eta^{n},v)-(\rho^{n},v)+(u^{n+1}_{\sigma}-u^{n+1}_{h}). (5.59)

To obtain the final error estimate for the scheme (2.27)-(2.28), we would like to give the following lemmas. In what follows, we use CC to represent a generic positive constant that is independent of nn, hh, and τ\tau. It may have a different value in each occurrence.

Lemma 5.1.

|(ηn+1ηn,v)(ρn,v)|Cτ(hk+1+τ)v.|(\eta^{n+1}-\eta^{n},v)-(\rho^{n},v)|\leq C\tau(h^{k+1}+\tau)\left\|v\right\|.

Proof.

By the smoothness of the exact solution and the linearity of the projection PhuP_{h}^{-}u, it follows from (5.52) that the projection error and its evolution satisfies

ηnChk+1,ηn+1ηnCτhk+1.\displaystyle\left\|\eta^{n}\right\|\leq Ch^{k+1},\;\;\left\|\eta^{n+1}-\eta^{n}\right\|\leq C\tau h^{k+1}. (5.60)

The proposition can be proven by noting that ρ(x,t)=O(τ2)\left\|\rho(x,t)\right\|=O(\tau^{2}). ∎

Lemma 5.2.

Under the CFL condition τγh2\tau\leq\gamma h^{2}, we have

ζn+1Cζσn+Cτ(hk+1+τ).\displaystyle\left\|\zeta^{n+1}\right\|\leq C\left\|\zeta_{\sigma}^{n}\right\|+C\tau(h^{k+1}+\tau).
Proof.

Combining the error equation (5.58) and the property (5.54), we have

(ζn+1,v)(ζσn+Cτh1ζσn+Cτ(hk+1+τ))v.\displaystyle(\zeta^{n+1},v)\leq\biggl{(}\left\|\zeta^{n}_{\sigma}\right\|+C\tau h^{-1}\left\|\zeta^{n}_{\sigma}\right\|+C\tau(h^{k+1}+\tau)\biggr{)}\left\|v\right\|.

Here we use the property in Lemma 5.1. With the time step constraint and taking v=ζn+1v=\zeta^{n+1}, we complete the proof. ∎

Lemma 5.3.

Suppose νj(uhn)\nu_{j}(u_{h}^{n}) is defined by (2.7), then we have

νj(uhn)Kj2Ch2(ζnKj2+ηnKj2).\displaystyle\left\|\nu_{j}(u_{h}^{n})\right\|_{K_{j}}^{2}\leq Ch^{2}(\left\|\zeta^{n}\right\|_{K_{j}}^{2}+\left\|\eta^{n}\right\|_{K_{j}}^{2}).
Proof.

By the jump viscosity coefficient and the smoothness of the exact solution, we get

σj\displaystyle\sigma_{j} =cf(hj[[uhnun]]Kj+l=1kl(l+1)hjl+1[[xl(uhnun)]]Kj)\displaystyle=c_{f}(h_{j}\left\|[\mspace{-2.5mu}[u_{h}^{n}-u^{n}]\mspace{-2.5mu}]\right\|_{\partial K_{j}}+\sum\limits_{l=1}^{k}l(l+1)h_{j}^{l+1}\left\|[\mspace{-2.5mu}[\partial_{x}^{l}(u_{h}^{n}-u^{n})]\mspace{-2.5mu}]\right\|_{\partial K_{j}})
cfhj([[ζn]]Kj+[[ηn]]Kj+l=1kl(l+1)hjl([[(xlζn)]]Kj+[[(xlηn)]]Kj))\displaystyle\leq c_{f}h_{j}(\left\|[\mspace{-2.5mu}[\zeta^{n}]\mspace{-2.5mu}]\right\|_{\partial K_{j}}+\left\|[\mspace{-2.5mu}[\eta^{n}]\mspace{-2.5mu}]\right\|_{\partial K_{j}}+\sum\limits_{l=1}^{k}l(l+1)h_{j}^{l}(\left\|[\mspace{-2.5mu}[(\partial_{x}^{l}\zeta^{n})]\mspace{-2.5mu}]\right\|_{\partial K_{j}}+\left\|[\mspace{-2.5mu}[(\partial_{x}^{l}\eta^{n})]\mspace{-2.5mu}]\right\|_{\partial K_{j}}))
Ch12(ζnKj+ηnKj),\displaystyle\leq Ch^{\frac{1}{2}}(\left\|\zeta^{n}\right\|_{K_{j}}+\left\|\eta^{n}\right\|_{K_{j}}),

here we have used the inverse inequalities (5.53). Thus we have

νj(uhn)Kj2\displaystyle\left\|\nu_{j}(u_{h}^{n})\right\|_{K_{j}}^{2} νj(uhn)L(Kj)2hj\displaystyle\leq\left\|\nu_{j}(u_{h}^{n})\right\|_{L^{\infty}(K_{j})}^{2}h_{j}
Ch2(ζnKj2+ηnKj2).\displaystyle\leq Ch^{2}(\left\|\zeta^{n}\right\|_{K_{j}}^{2}+\left\|\eta^{n}\right\|_{K_{j}}^{2}).

We make an a priori assumption for all n0n\geq 0

xζnL(Ω)C\displaystyle\left\|\partial_{x}\zeta^{n}\right\|_{L^{\infty}(\Omega)}\leq C (5.61)

and it will be verified in the end. Now we can obtain the following the error estimates.

Lemma 5.4.

If xζnL(Ω)C\left\|\partial_{x}\zeta^{n}\right\|_{L^{\infty}(\Omega)}\leq C, then we have

uσn+1uhn+1\displaystyle\left\|u^{n+1}_{\sigma}-u^{n+1}_{h}\right\| Cτ(ζn+1+hk+1),\displaystyle\leq C\tau(\left\|\zeta^{n+1}\right\|+h^{k+1}),
uσn+1uhn+1\displaystyle\left\|u^{n+1}_{\sigma}-u^{n+1}_{h}\right\| Cτ(ζσn+hk+1+τ).\displaystyle\leq C\tau(\left\|\zeta_{\sigma}^{n}\right\|+h^{k+1}+\tau).
Proof.

If xζnL(Ω)C\left\|\partial_{x}\zeta^{n}\right\|_{L^{\infty}(\Omega)}\leq C, then xuhnL(Ω)C\left\|\partial_{x}u_{h}^{n}\right\|_{L^{\infty}(\Omega)}\leq C holds for any nn. Note that uhn+1u_{h}^{n+1} is independent of tt and uσn+1u_{\sigma}^{n+1} satisfies (2.28). The following error equation holds

(t(uσuhn+1),v)Kj+(νj(uhn+1)x(uσuhn+1),vx)Kj=(νj(uhn+1)x(uhn+1),vx)Kj.\displaystyle(\partial_{t}(u_{\sigma}-u_{h}^{n+1}),v)_{K_{j}}+(\nu_{j}(u_{h}^{n+1})\partial_{x}(u_{\sigma}-u_{h}^{n+1}),v_{x})_{K_{j}}=-(\nu_{j}(u_{h}^{n+1})\partial_{x}(u_{h}^{n+1}),v_{x})_{K_{j}}.

Taking v=uσuhn+1v=u_{\sigma}-u_{h}^{n+1} yields

12ddtuσuhn+12+j=1N(νj(uhn+1)x(uσuhn+1),x(uσuhn+1))Kj\displaystyle\frac{1}{2}\frac{d}{dt}\left\|u_{\sigma}-u_{h}^{n+1}\right\|^{2}+\sum_{j=1}^{N}(\nu_{j}(u_{h}^{n+1})\partial_{x}(u_{\sigma}-u_{h}^{n+1}),\partial_{x}(u_{\sigma}-u_{h}^{n+1}))_{K_{j}}
=j=1N(νj(uhn+1)x(uhn+1),x(uσuhn+1))Kj.\displaystyle=-\sum_{j=1}^{N}(\nu_{j}(u_{h}^{n+1})\partial_{x}(u_{h}^{n+1}),\partial_{x}(u_{\sigma}-u_{h}^{n+1}))_{K_{j}}.

Since the second term on the left is nonnegative, we have

12ddtuσuhn+12\displaystyle\frac{1}{2}\frac{d}{dt}\left\|u_{\sigma}-u_{h}^{n+1}\right\|^{2} (j=1Nνj(uhn+1)xuhn+1Kj2)12(j=1Nx(uσuhn+1)Kj2)12\displaystyle\leq\biggl{(}\sum_{j=1}^{N}\left\|\nu_{j}(u_{h}^{n+1})\partial_{x}u_{h}^{n+1}\right\|_{K_{j}}^{2}\biggr{)}^{\frac{1}{2}}\biggl{(}\sum_{j=1}^{N}\left\|\partial_{x}(u_{\sigma}-u_{h}^{n+1})\right\|_{K_{j}}^{2}\biggr{)}^{\frac{1}{2}}
C(ζn+1+ηn+1)uσuhn+1.\displaystyle\leq C(\left\|\zeta^{n+1}\right\|+\left\|\eta^{n+1}\right\|)\left\|u_{\sigma}-u_{h}^{n+1}\right\|.

Here we have used Lemma 5.3, xuhn+1L(Ω)C\left\|\partial_{x}u_{h}^{n+1}\right\|_{L^{\infty}(\Omega)}\leq C and the inverse estimate (5.53). Applying the property (5.60), we get

ddtuσuhn+1C(ζn+1+hk+1).\displaystyle\frac{d}{dt}\left\|u_{\sigma}-u_{h}^{n+1}\right\|\leq C(\left\|\zeta^{n+1}\right\|+h^{k+1}).

Integrating the inequality from t=0t=0 to t=τt=\tau and using uσ(,0)=uhn+1()u_{\sigma}(\cdot,0)=u_{h}^{n+1}(\cdot), uσ(,τ)=uσn+1()u_{\sigma}(\cdot,\tau)=u_{\sigma}^{n+1}(\cdot), we derive

uσn+1uhn+1Cτ(ζn+1+hk+1).\displaystyle\left\|u^{n+1}_{\sigma}-u^{n+1}_{h}\right\|\leq C\tau(\left\|\zeta^{n+1}\right\|+h^{k+1}).

The proof is completed by using the estimate of ζn+1\zeta^{n+1} in Lemma 5.2. ∎

Now we can give the proof of Theorem 2.1.

Proof of 2.1.

Along the same lines to prove the stability of the RKDG scheme [80], taking v=ζσnv=\zeta_{\sigma}^{n} in the error equation (5.59) and using the property (5.54), we have

ζσn+12\displaystyle\left\|\zeta_{\sigma}^{n+1}\right\|^{2} ζσn2+Cτ(hk+1+τ)ζσn+uσn+1uhn+1ζσn\displaystyle\leq\left\|\zeta_{\sigma}^{n}\right\|^{2}+C\tau(h^{k+1}+\tau)\left\|\zeta_{\sigma}^{n}\right\|+\left\|u^{n+1}_{\sigma}-u^{n+1}_{h}\right\|\left\|\zeta_{\sigma}^{n}\right\|
(1+Cτ)ζσn2+Cτ(h2k+2+τ2).\displaystyle\leq(1+C\tau)\left\|\zeta_{\sigma}^{n}\right\|^{2}+C\tau(h^{2k+2}+\tau^{2}). (5.62)

here we have used the estimates in Lemma 5.1 and 5.4. Then apply the discrete Gronwall inequality to get

ζσn+12ζσ02+C(h2k+2+τ2).\displaystyle\left\|\zeta_{\sigma}^{n+1}\right\|^{2}\leq\left\|\zeta_{\sigma}^{0}\right\|^{2}+C(h^{2k+2}+\tau^{2}).

A simple use of the triangle inequality, the approximation property of PhuP_{h}^{-}u and the fact that uσ0u(,0)Chk+1\left\|u_{\sigma}^{0}-u(\cdot,0)\right\|\leq Ch^{k+1}, we have ζσ0Chk+1\left\|\zeta_{\sigma}^{0}\right\|\leq Ch^{k+1}. Thus

ζσn+12C(h2k+2+τ2).\displaystyle\left\|\zeta_{\sigma}^{n+1}\right\|^{2}\leq C(h^{2k+2}+\tau^{2}).

The proof is completed by the triangle inequality and the approximation property of PhuP_{h}^{-}u. ∎

In the end, we will verify the a prior assumption (5.61). Note that uσ0=uh0u_{\sigma}^{0}=u_{h}^{0} and uσ0u(,0)Chk+1\left\|u_{\sigma}^{0}-u(\cdot,0)\right\|\leq Ch^{k+1}. Then ζ0Ch2\left\|\zeta^{0}\right\|\leq Ch^{2}, ζσ0Ch2\left\|\zeta_{\sigma}^{0}\right\|\leq Ch^{2} hold for n=0n=0 with k1k\geq 1 and a priori assumption holds for n=0n=0. By Lemma 5.2 and the CFL condition τγh2\tau\leq\gamma h^{2} with k1k\geq 1, we have ζ1Ch2\left\|\zeta^{1}\right\|\leq Ch^{2}. Thus a priori assumption holds for n=1n=1. By Lemma 5.4 and (5.62), we have ζσ1Ch2\left\|\zeta_{\sigma}^{1}\right\|\leq Ch^{2}. This argument can be further continued and formalized by induction to show that ζnCh2\left\|\zeta^{n}\right\|\leq Ch^{2} and ζσnCh2\left\|\zeta_{\sigma}^{n}\right\|\leq Ch^{2} for any n0n\geq 0. This validates the a priori assumption (5.61).

References

  • [1] H. Abbassi, F. Mashayek, and G.B. Jacobs. Shock capturing with entropy-based artificial viscosity for staggered grid discontinuous spectral element method. Comput. & Fluids, 98:152–163, 2014.
  • [2] G. Barter and D. Darmofal. Shock capturing with higher-order, PDE-based artificial viscosity. In 18th AIAA Computational Fluid Dynamics Conference, page 3823, 2007.
  • [3] F. Bassi, A. Crivellini, A. Ghidoni, and S. Rebay. High-order discontinuous Galerkin discretization of transonic turbulent flows. In 47th AIAA aerospace sciences meeting including the new horizons forum and aerospace exposition, page 180, 2009.
  • [4] A. Bhagatwala and S.K. Lele. A modified artificial viscosity approach for compressible turbulence simulations. J. Comput. Phys., 228(14):4965–4969, 2009.
  • [5] R. Biswas, K.D. Devine, and J. Flaherty. Parallel, adaptive finite element methods for conservation laws. Appl. Numer. Math., 14(1-3):255–283, 1994.
  • [6] A. Burbeau, P. Sagaut, and Ch.-H. Bruneau. A problem-independent limiter for high-order Runge-Kutta discontinuous Galerkin methods. J. Comput. Phys., 169(1):111–150, 2001.
  • [7] E. Burman. On nonlinear artificial viscosity, discrete maximum principle and hyperbolic conservation laws. BIT Numerical Mathematics, 47:715–733, 2007.
  • [8] M. Cada and M. Torrilhon. Compact third-order limiter functions for finite volume methods. J. Comput. Phys., 228(11):4118–4145, 2009.
  • [9] A. Chaudhuri, G.B. Jacobs, W.-S. Don, H Abbassi, and F. Mashayek. Explicit discontinuous spectral element method with entropy generation based artificial viscosity for shocked viscous flows. J. Comput. Phys., 332:99–117, 2017.
  • [10] P.G. Ciarlet. The finite element method for elliptic problems, volume 40 of Classics in Applied Mathematics. Society for Industrial and Applied Mathematics (SIAM), Philadelphia, PA.
  • [11] B. Cockburn, S.-Y. Lin, and C.-W. Shu. TVB Runge-Kutta local projection discontinuous Galerkin finite element method for conservation laws III: one-dimensional systems. J. Comput. Phys., 84(1):90–113, 1989.
  • [12] B. Cockburn and C.-W. Shu. TVB Runge-Kutta local projection discontinuous Galerkin finite element method for conservation laws. II. General framework. Math. Comput., 52(186):411–435, 1989.
  • [13] B. Cockburn and C.-W. Shu. The Runge-Kutta discontinuous Galerkin method for conservation laws V: multidimensional systems. J. Comput. Phys., 141(2):199–224, 1998.
  • [14] A.W. Cook and W.H. Cabot. A high-wavenumber viscosity for high-resolution numerical methods. J. Comput. Phys., 195(2):594–601, 2004.
  • [15] A.W. Cook and W.H. Cabot. Hyperviscosity for shock-turbulence interactions. J. Comput. Phys., 203(2):379–385, 2005.
  • [16] W.-S. Don, D. Gottlieb, and J.-H. Jung. A multidomain spectral method for supersonic reactive flows. J. Comput. Phys., 192(1):325–354, 2003.
  • [17] W.S. Don. Numerical study of pseudospectral methods in shock wave applications. J. Comput. Phys., 110(1):103–111, 1994.
  • [18] P. Fernandez, C. Nguyen, and J. Peraire. A physics-based shock capturing method for unsteady laminar and turbulent flows. In 2018 AIAA Aerospace Sciences Meeting, page 0062, 2018.
  • [19] B. Fiorina and S.K. Lele. An artificial nonlinear diffusivity method for supersonic reacting flows with shocks. J. Comput. Phys., 222(1):246–264, 2007.
  • [20] D. Gottlieb and J.S. Hesthaven. Spectral methods for hyperbolic problems. J. Comput. Appl. Math., 128(1-2):83–131, 2001.
  • [21] S. Gottlieb, C.-W. Shu, and E. Tadmor. Strong stability-preserving high-order time discretization methods. SIAM Rev., 43:89–112, 2001.
  • [22] J.-L. Guermond and R. Pasquetti. Entropy-based nonlinear viscosity for Fourier approximations of conservation laws. C. R. Math. Acad. Sci. Paris, 346(13-14):801–806, 2008.
  • [23] J.-L. Guermond, R. Pasquetti, and B. Popov. Entropy viscosity method for nonlinear conservation laws. J. Comput. Phys., 230(11):4248–4267, 2011.
  • [24] A. Harten, B. Engquist, S. Osher, and S. Chakravarthy. Uniformly high order accurate essentially non-oscillatory schemes, iii. J. Comput. Phys., 131(1):3–47, 1987.
  • [25] A. Harten, P.D. Lax, and B. Van Leer. On upstream differencing and godunov-type schemes for hyperbolic conservation laws. SIAM Rev, 25(1):35–61, 1983.
  • [26] R. Hartmann. Adaptive discontinuous Galerkin methods with shock-capturing for the compressible Navier-Stokes equations. Internat. J. Numer. Methods Fluids, 51(9-10):1131–1156, 2006.
  • [27] R. Hartmann. Higher-order and adaptive discontinuous Galerkin methods with shock-capturing applied to transonic turbulent delta wing flow. Internat. J. Numer. Methods Fluids, 72(8):883–894, 2013.
  • [28] R. Hartmann and P. Houston. Adaptive discontinuous Galerkin finite element methods for the compressible Euler equations. J. Comput. Phys., 183(2):508–532, 2002.
  • [29] J.S. Hesthaven. Numerical methods for conservation laws: From analysis to algorithms. SIAM, 2017.
  • [30] J.S. Hesthaven and R. Kirby. Filtering in Legendre spectral methods. Math. Comput., 77(263):1425–1452, 2008.
  • [31] J.S. Hesthaven and T. Warburton. Nodal discontinuous Galerkin methods: algorithms, analysis, and applications. Springer Science & Business Media, 2007.
  • [32] A. Hiltebrand and S. Mishra. Entropy stable shock capturing space–time discontinuous galerkin schemes for systems of conservation laws. Numerische Mathematik, 126:103–151, 2014.
  • [33] S. Hou and X.D. Liu. Solutions of multi-dimensional hyperbolic systems of conservation laws by square entropy condition satisfying discontinuous Galerkin method. J. Sci. Comput., 31:127–151, 2007.
  • [34] T. J. R. Hughes and T. E. Tezduyar. Finite element methods for first-order hyperbolic systems with particular emphasis on the compressible Euler equations. Comput. Methods Appl. Mech. Engrg., 45(1-3):217–284, 1984.
  • [35] A. Jameson. Artificial diffusion, upwind biasing, limiters and their effect on accuracy and multigrid convergence in transonic and hypersonic flows. In 11th Computational Fluid Dynamics Conference, page 3359, 1993.
  • [36] A. Jameson. A perspective on computational algorithms for aerodynamic analysis and design. Progress in Aerospace Sciences, 37(2):197–243, 2001.
  • [37] A. Jameson, W. Schmidt, and E. Turkel. Numerical solution of the Euler equations by finite volume methods using Runge Kutta time stepping schemes. In 14th fluid and plasma dynamics conference, page 1259, 1981.
  • [38] G.-S. Jiang and C.-W. Shu. On a cell entropy inequality for discontinuous Galerkin methods. Math. Comput., 62(206):531–538, 1994.
  • [39] G.-S. Jiang and C.-W. Shu. Efficient implementation of weighted ENO schemes. J. Comput. Phys., 126(1):202–228, 1996.
  • [40] G-S. Karamanos and G.E. Karniadakis. A spectral vanishing viscosity method for large-eddy simulations. J. Comput. Phys., 163(1):22–50, 2000.
  • [41] S. Kawai and S.K. Lele. Localized artificial diffusivity scheme for discontinuity capturing on curvilinear meshes. J. Comput. Phys., 227(22):9498–9526, 2008.
  • [42] A. Klöckner, T. Warburton, J. Bridge, and J.S. Hesthaven. Nodal discontinuous galerkin methods on graphics processors. J. Comput. Phys., 228(21):7863–7882, 2009.
  • [43] L. Krivodonova. Limiters for high-order discontinuous Galerkin methods. J. Comput. Phys., 226(1):879–896, 2007.
  • [44] D. Kuzmin. A vertex-based hierarchical slope limiter for p-adaptive discontinuous Galerkin methods. J. Comput. Appl. Math., 233(12):3077–3085, 2010.
  • [45] D. Kuzmin. Slope limiting for discontinuous Galerkin approximations with a possibly non-orthogonal Taylor basis. Internat. J. Numer. Methods Fluids, 71(9):1178–1190, 2013.
  • [46] D. Kuzmin. Hierarchical slope limiting in explicit and implicit discontinuous Galerkin methods. J. Comput. Phys., 257:1140–1162, 2014.
  • [47] Randall J. LeVeque. Numerical methods for conservation laws. Lectures in Mathematics ETH Zürich. Birkhäuser Verlag, Basel, second edition, 1992.
  • [48] X.-D. Liu, S. Osher, and T. Chan. Weighted essentially non-oscillatory schemes. J. Comput. Phys., 115(1):200–212, 1994.
  • [49] Y. Liu, J. Lu, and C.-W. Shu. An essentially oscillation-free discontinuous Galerkin method for hyperbolic systems. SIAM J. Sci. Comput., 44(1):A230–A259, 2022.
  • [50] Y. Liu, M. Vinokur, and Z. Wang. Spectral difference method for unstructured grids I: Basic formulation. J. Comput. Phys., 216(2):780–801, 2006.
  • [51] G. Lodato. Characteristic modal shock detection for discontinuous finite element methods. Comput. & Fluids, 179:309–333, 2019.
  • [52] J. Lu, Y. Liu, and C.-W. Shu. An oscillation-free discontinuous Galerkin method for scalar hyperbolic conservation laws. SIAM J. Numer. Anal., 59(3):1299–1324, 2021.
  • [53] H. Luo, J.D. Baum, and R. Löhner. A Hermite WENO-based limiter for discontinuous Galerkin method on unstructured grids. J. Comput. Phys., 225(1):686–713, 2007.
  • [54] Y. Lv, Y. See, and M. Ihme. An entropy-residual shock detector for solving conservation laws using high-order discontinuous Galerkin methods. J. Comput. Phys., 322:448–472, 2016.
  • [55] Y. Maday, S.M.O. Kaber, and E. Tadmor. Legendre pseudospectral viscosity method for nonlinear conservation laws. SIAM J. Numer. Anal., 30(2):321–342, 1993.
  • [56] J. Markert, G. Gassner, and S. Walch. A sub-element adaptive shock capturing approach for discontinuous Galerkin methods. Commun. Appl. Math. Comput., 5(2):679–721, 2023.
  • [57] A. Meister, S. Ortleb, and Th. Sonar. Application of spectral filtering to discontinuous Galerkin methods on triangulations. Numer. Methods Partial Differential Equations, 28(6):1840–1868, 2012.
  • [58] N.-A. Messaï, G. Daviller, and J.-F. Boussuge. Artificial viscosity-based shock capturing scheme for the Spectral Difference method on simplicial elements. J. Comput. Phys., 504:Paper No. 112864, 31, 2024.
  • [59] David Moro, Ngoc Cuong Nguyen, and Jaime Peraire. Dilation-based shock capturing for high-order methods. Internat. J. Numer. Methods Fluids, 82(7):398–416, 2016.
  • [60] M. Nazarov and J. Hoffman. Residual-based artificial viscosity for simulation of turbulent compressible flow using adaptive finite element methods. Internat. J. Numer. Methods Fluids, 71(3):339–357, 2013.
  • [61] P.O. Persson. Shock capturing for high-order discontinuous Galerkin simulation of transient flow problems. In 21st AIAA computational fluid dynamics conference, page 3061, 2013.
  • [62] P.O. Persson and J. Peraire. Sub-cell shock capturing for discontinuous Galerkin methods. In 44th AIAA aerospace sciences meeting and exhibit, page 112, 2006.
  • [63] S. Premasuthan, C. Liang, and A. Jameson. Computation of flows with shocks using the spectral difference method with artificial viscosity, I: basic formulation and application. Comput. & Fluids, 98:111–121, 2014.
  • [64] S. Premasuthan, C. Liang, and A. Jameson. Computation of flows with shocks using the spectral difference method with artificial viscosity, II: modified formulation with local mesh refinement. Comput. & Fluids, 98:122–133, 2014.
  • [65] J. Qiu and C.-W. Shu. Runge-Kutta discontinuous Galerkin method using WENO limiters. SIAM J. Sci. Comput., 26(3):907–929, 2005.
  • [66] V. Shankar, G.B. Wright, and A. Narayan. A robust hyperviscosity formulation for stable RBF-FD discretizations of advection-diffusion-reaction equations on manifolds. SIAM J. Sci. Comput., 42(4):A2371–A2401, 2020.
  • [67] C.-W. Shu. Discontinuous Galerkin method for time-dependent problems: survey and recent developments. Recent developments in discontinuous Galerkin finite element methods for partial differential equations, pages 25–62, 2014.
  • [68] M. Sonntag and C. Munz. Efficient parallelization of a shock capturing for discontinuous Galerkin methods using finite volume sub-cells. J. Sci. Comput., 70(3):1262–1289, 2017.
  • [69] E. Tadmor. Convergence of spectral methods for nonlinear conservation laws. SIAM J. Numer. Anal., 26(1):30–44, 1989.
  • [70] E. Tadmor. Super-viscosity and spectral approximations of nonlinear conservation laws. In Numerical methods for fluid dynamics, 4 (Reading, 1992), pages 69–81. Oxford Univ. Press, New York, 1993.
  • [71] I. Tominec and M. Nazarov. Residual viscosity stabilized RBF-FD methods for solving nonlinear conservation laws. J. Sci. Comput., 94(1):Paper No. 14, 31, 2023.
  • [72] N. Tonicello, G. Lodato, and L. Vervisch. Entropy preserving low dissipative shock capturing with wave-characteristic based sensor for high-order methods. Comput. & Fluids, 197:104357, 17, 2020.
  • [73] E.F. Toro. Riemann solvers and numerical methods for fluid dynamics: a practical introduction. Springer Science & Business Media, 2013.
  • [74] H. Vandeven. Family of spectral filters for discontinuous problems. J. Sci. Comput., 6(2):159–192, 1991.
  • [75] J. Von Neumann and R. D. Richtmyer. A method for the numerical calculation of hydrodynamic shocks. J. Appl. Phys., 21:232–237, 1950.
  • [76] Y. Wan and Y. Xia. A new hybrid WENO scheme with the high-frequency region for hyperbolic conservation laws. Commun. Appl. Math. Comput., 5(1):199–234, 2023.
  • [77] L. Wei and Y. Xia. An indicator-based hybrid limiter in discontinuous Galerkin methods for hyperbolic conservation laws. J. Comput. Phys., 498:Paper No. 112676, 25, 2024.
  • [78] Y. Xu, X. Meng, C.-W. Shu, and Q. Zhang. Superconvergence analysis of the Runge-Kutta discontinuous Galerkin methods for a linear hyperbolic equation. J. Sci. Comput., 84(1):Paper No. 23, 40, 2020.
  • [79] Y. Xu, C.-W. Shu, and Q. Zhang. Error estimate of the fourth-order Runge-Kutta discontinuous Galerkin methods for linear hyperbolic equations. SIAM J. Numer. Anal., 58(5):2885–2914, 2020.
  • [80] Y. Xu, Q. Zhang, C.-W. Shu, and H. Wang. The L2\rm L^{2}-norm stability analysis of Runge-Kutta discontinuous Galerkin methods for linear hyperbolic equations. SIAM J. Numer. Anal., 57(4):1574–1601, 2019.
  • [81] J. Yu and J.S. Hesthaven. A study of several artificial viscosity models within the discontinuous Galerkin framework. Commun. Comput. Phys., 27(5):1309–1343, 2020.
  • [82] X. Zhang and C.-W. Shu. On positivity-preserving high order discontinuous Galerkin schemes for compressible Euler equations on rectangular meshes. J. Comput. Phys., 229(23):8918–8934, 2010.
  • [83] X. Zhong and C.-W. Shu. A simple weighted essentially nonoscillatory limiter for Runge-Kutta discontinuous Galerkin methods. J. Comput. Phys., 232(1):397–415, 2013.
  • [84] J. Zhu, J. Qiu, and C.-W. Shu. High-order Runge-Kutta discontinuous Galerkin methods with a new type of multi-resolution WENO limiters. J. Comput. Phys., 404:109105, 18, 2020.
  • [85] J. Zhu, J. Qiu, C.-W. Shu, and M. Dumbser. Runge–Kutta discontinuous Galerkin method using WENO limiters II: unstructured meshes. J. Comput. Phys., 227(9):4330–4353, 2008.
  • [86] V. Zingan, J.-L. Guermond, J. Morel, and B. Popov. Implementation of the entropy viscosity method with the discontinuous Galerkin method. Comput. Methods Appl. Mech. Engrg., 253:479–490, 2013.