SmoothnessIncreasing AccuracyConserving (SIAC) Filtering for Discontinuous Galerkin Solutions over Nonuniform Meshes: Superconvergence and Optimal Accuracy
Abstract
Smoothnessincreasing accuracyconserving (SIAC) filtering is an area of increasing interest because it can extract the “hidden accuracy” in discontinuous Galerkin (DG) solutions. It has been shown that by applying a SIAC filter to a DG solution, the accuracy order of the DG solution improves from order \(k+1\) to order \(2k+1\) for linear hyperbolic equations over uniform meshes. However, applying a SIAC filter over nonuniform meshes is difficult, and the quality of filtered solutions is usually unsatisfactory applied to approximations defined on nonuniform meshes. The applicability to such approximations over nonuniform meshes is the biggest obstacle to the development of a SIAC filter. The purpose of this paper is twofold: to study the connection between the error of the filtered solution and the nonuniform mesh and to develop a filter scaling that approximates the optimal error reduction. First, through analyzing the error estimates for SIAC filtering, we computationally establish for the first time a relation between the filtered solutions and the unstructuredness of nonuniform meshes. Further, we demonstrate that there exists an optimal accuracy of the filtered solution for a given nonuniform mesh and that it is possible to obtain this optimal accuracy by the method we propose, an optimal filter scaling. By applying the newly designed filter scaling over nonuniform meshes, the filtered solution has demonstrated improvement in accuracy order as well as reducing the error compared to the original DG solution. Finally, we apply the proposed methods over a large number of nonuniform meshes and compare the performance with existing methods to demonstrate the superiority of our method.
Keywords
Discontinuous Galerkin method Postprocessing SIAC filtering Superconvergence Nonuniform meshes Unstructuredness1 Introduction
In practical applications, there are strong motivators for the adoption of unstructured meshes for handling complex geometries and using adaptive mesh refinement techniques. Based on this practical necessity, it is widely believed that discontinuous Galerkin methods, which provide highorder accuracy on unstructured meshes, will become one of the standard numerical methods for future generations. Along with the rapid growth of the DG method, the superconvergence of the DG method has become an area of increasing interest because of the ease with which higher order information can be extracted from DG solutions by applying smoothnessincreasing and accuracyconserving (SIAC) filtering. However, SIAC filters are still limited primarily to structured meshes. For general nonuniform meshes, the quality of the filtered solution is usually unsatisfactory. The ability to effectively handle nonuniform meshes is an obstacle to the further development of a SIAC filter.
This paper focuses on applying a SIAC filter for DG solutions over nonuniform meshes. Specifically, this study focuses on the barrier to applying SIAC filters over nonuniform meshes—the scaling. This problem was noted in [3], which extends a postprocessing technique for enhancing the accuracy of solutions [1] to linear hyperbolic equations. The postprocessing technique was renamed the SmoothnessIncreasing AccuracyConserving filter in [5]. A series of studies of different aspects of SIAC filters are presented in [5, 11, 20]. For uniform meshes, it was shown that by applying a SIAC filter to a DG approximation at the final time, the accuracy order improves from \(k+1\) to \(2k+1\) for linear hyperbolic equations with periodic boundary conditions [3]. This superconvergence of order \(2k+1\) is promising; however it is limited to uniform meshes. Only for a particular family of nonuniform meshes, smoothlyvarying meshes, have the filtered solutions been proven to have a superconvergence order of \(2k+1\) [20]. As for general nonuniform meshes, the preliminary theorem in [3] provides a solution, but it is not very useful in practice. The filtered solutions can still be improved. Further, the computational results for relatively unstructured triangular meshes [12] suggest that it is possible to reduce the errors of the DG solutions through a suitable choice of filter scalings for approximations defined over unstructured meshes. However, in [12] there is no clear accuracy order improvement and no guarantee of error reduction. Also, the lack of theoretical analysis makes it difficult to evaluate the quality of the filtered solutions. There has been some work related this topic, such as the nonuniform filter proposed in [15, 16].
The primary goal of this paper is to address these challenges and try to improve the quality of the DG solutions over general nonuniform meshes. Our main contributions are:
Optimal accuracy First, we study the error estimates of the SIAC filter for uniform and nonuniform meshes and point out the difficulties for the filter over nonuniform meshes. Then, we computationally establish for the first time a relation between the filtered solutions and the unstructuredness of nonuniform meshes. Further, we demonstrate that for a given nonuniform mesh, there exists an optimal accuracy (optimal error reduction) of the filtered solution.
Optimal scaling To approximate this optimal accuracy, we first analyze the relation between the filter scaling and the error of filtered solutions for different nonuniform meshes. Then, we introduce a measure of the unstructuredness of nonuniform meshes and propose a procedure that adjusts the scaling of a SIAC filter according to the unstructuredness of the given nonuniform mesh. Also, we demonstrate that with the newly designed optimal scaling, the filtered solution has a higher accuracy order, and the errors are reduced compared to the original DG solutions even for the worst nonuniform meshes.
Scaling performance validation Finally, to ensure the proposed scaling is a robust algorithm that can be used in practice, we validated the performance of the proposed scaling over a large number of nonuniform meshes and compared with other commonly used scalings to illustrate that the accuracy of the DG solution is improved by using the proposed scaling and its superiority compared to existing methods.
This paper is organized as follows. In Sect. 2, we review the DG method and SIAC filters as well as the relevant properties. In Sect. 3, we investigate the effects of the filter scaling on the accuracy of the filtered solution. We then introduce a measure of the unstructuredness of nonuniform meshes and provide an algorithm to approach the optimal accuracy in Sect. 4. Also, in Sect. 4, we provide a scaling performance validation for the proposed scaling along with other commonly used scalings. Numerical results for different one and twodimensional nonuniform meshes are given in Sect. 5. The conclusions are presented in Sect. 6.
2 Background
In this section, we review the necessary properties of discontinuous Galerkin methods, the definition of nonuniform meshes for the purposes of this article, and the SmoothnessIncreasing AccuracyConserving (SIAC) filter.
2.1 Construction of Nonuniform Meshes
Before introducing the discontinuous Galerkin method, we introduce the structure of the nonuniform meshes that will be used in this paper. The main construction of the nonuniform meshes are similar to those meshes used in [11]:
Mesh 2.1
Mesh 2.2
Remark 2.3
Mesh 2.1 is a quasiuniform mesh since \(\frac{\Delta x_{\max }}{\Delta x_{\min }} \le \frac{1+2b}{12b}\). Mesh 2.2 is more unstructured than Mesh 2.1 since in the worst case \(\frac{\Delta x_{\max }}{\Delta x_{\min }} \approx \frac{1b}{b}N\) which is unbounded as \(N \rightarrow \infty \). It is expected that the DG approximation and the filtered solution are of better quality for Mesh 2.1 than for Mesh 2.2. Illustrations of these meshes are given in Fig. 1.
We will analyze the applicability of the SIAC filter scaling factor utilizing these meshes.
2.2 Discontinuous Galerkin Methods
2.3 Superconvergence in the Negative Order Norm
Theorem 2.1
This theorem is valid assuming that the exact solution has sufficient regularity (belongs to a Hilbert space of order \(2k+2\)). Unfortunately, the error estimates of the DG approximation and its divided differences for nonuniform meshes become much more challenging, and for this case the estimates (2.3) and (2.4) are valid only for the DG approximation itself, that is,
Lemma 2.2
For the divided differences, \(\partial _h^\alpha u_h\), for nonuniform meshes, instead of (2.4), we have only the following lemma:
Lemma 2.3
Remark 2.4
Lemma2.3 was first introduced as a conjecture in [3], and presented as a lemma with proof in [11]. In this paper, h is defined during the construction of Meshs 2.1 and 2.2, \(h = \frac{x_{N+\frac{1}{2}}  x_{\frac{1}{2}}}{N}\) is a function of the element N. Here, we note that Lemma 2.3 is valid for arbitrary constant H, but we will discuss how to choose the optimal scaling H in the following sections.
The relation between the \(L^2\) norm and the negative order norms are introduced in the following lemma:
Lemma 2.4
In Table 1, we provide a basic example of the divided difference operation over a nonuniform mesh (randomly chosen among Meshes 2.2). In this table, \({\mathcal {P}}u\) is the \(L^2\) projection of \(u(x,0)=\sin (x)\) over a randomly generated nonuniform mesh. From Table 1, we can see that for \(\alpha \ge 1\), the divided differences \(\partial ^\alpha _h {\mathcal {P}}u\) only have accuracy order of \(k+1\alpha \). This example clearly suggests that the nonuniform mesh estimate (2.5) no longer holds, and the estimates in Lemma 2.3 can not be improved without further assumptions on the nonuniformity of the mesh.
Remark 2.5
In this paper, the main results are based on the \(L^2\) norm. However, we also included the numerical results in the \(L^\infty \) norm for consistency with existing literature.
\(L^2\) and \(L^{\infty }\)errors for the \(L^2\) projection of \(u(x,0) = \sin (x)\) and its divided differences over a randomly generated nonuniform mesh
\({\mathcal {P}}u\)  \(\partial _h {\mathcal {P}}u\)  \(\partial _h^{2} {\mathcal {P}}u\)  

Mesh  \(L^2 \) error  Order  \( L^\infty \) error  Order  \(L^2 \) error  Order  \( L^\infty \) error  Order  \(L^2 \) error  Order  \( L^\infty \) error  Order 
\({\mathbb {P}}^2\)  
20  8.43E−05  –  2.76E−04  –  1.29E−03  –  4.12E−03  –  3.63E−02  –  9.20E−02  – 
40  1.02E−05  3.05  3.10E−05  3.16  3.61E−04  1.84  1.54E−03  1.41  1.79E−02  1.02  4.76E−02  0.95 
60  2.92E−06  3.09  1.03E−05  2.71  1.44E−04  2.27  4.78E−04  2.89  1.08E−02  1.26  3.22E−02  0.97 
80  1.19E−06  3.13  3.89E−06  3.39  8.46E−05  1.84  2.89E−04  1.75  8.33E−03  0.89  2.41E−02  1.01 
\({\mathbb {P}}^3\)  
20  1.78E−06  –  4.76E−06  –  2.99E−05  –  9.77E−05  –  7.01E−04  –  2.10E−03  – 
40  1.17E−07  3.93  3.04E−07  3.97  4.39E−06  2.77  1.66E−05  2.56  1.75E−04  2.01  6.25E−04  1.75 
60  2.03E−08  4.32  6.11E−08  3.96  1.10E−06  3.42  3.99E−06  3.52  6.86E−05  2.30  2.38E−04  2.38 
80  6.50E−09  3.96  1.87E−08  4.11  4.57E−07  3.05  1.35E−06  3.76  3.83E−05  2.03  1.26E−04  2.22 
2.4 SIAC Filter
We use the classical SIAC filter that stems from the work of Bramble and Schatz [1], Thomée [22] and Mock and Lax [14]. An extension of this technique to discontinuous Galerkin methods was introduced in [3]. Motivated by [3], a series of publications have studied SIAC filtering for DG methods from various aspects, such as [5, 12, 18, 19, 21].
Lemma 2.5
Proof
c.f. [23]. \(\square \)
3 SIAC Filter for Nonuniform Meshes
In order to design a more accurate SIAC filter for nonuniform meshes, we have to investigate the relations between the DG approximation and SIAC filters for nonuniform meshes.
3.1 Existing Results
As mentioned in [3, 10], for uniform meshes, SIAC filtering can improve the accuracy order of DG solutions for linear hyperbolic equations from \(k+1\) to \(2k+1\) when a sufficient number of Bsplines are chosen. This accuracy order, \(2k+1\), and various studies of SIAC filters, such as positiondependent filters [19, 24], the derivative filter [18], etc., are limited to uniform meshes. For nonuniform meshes, the aims of improving the accuracy order and reducing the errors of the DG solution remains an ongoing challenge for SIAC filtering. Most preliminary results consider only a particular family of meshes, smoothly varying meshes [5, 17, 20]. It was proven in [20] that the filtered solutions also have an accuracy order of \(2k+1\) for smoothly varying meshes. However, for general nonuniform meshes, there are only a few computational results [12], and the only theoretical estimates were given in [3, 11].
Theorem 3.1
For convenience, in this paper we refer to \(\mu \) as the scaling order and \(\mu _0 = \frac{2k+1}{3k+2}\). Theorem 3.1 gives a useful scaling that allows us to enhance the accuracy of the DG solution, especially the derivatives of the DG solution [11], but may not be optimal.
More importantly, instead of increasing the accuracy order, practical applications are more concerned with reducing the error. Although using the scaling \(H = h^{\mu _0}\) improves the accuracy order, many practical examples suggest that using a scaling order of \(\mu _0\) usually increases the errors. For example, for the numerical experiments given in this paper (Sect. 5), the filtered solutions that use a scaling order of \(\mu _0\) have a qualitatively worse error in the \(L^2\) norm compared to the original DG solutions.
3.2 The Optimal Accuracy
The estimate for \(\Theta _1\) is clear. The error is given by the polynomial reproduction property (2.9) and the exact solution u. It is obvious from (3.3) that \(\Theta _1\), only depends on the filter scaling and is bounded by \(C_1 H^{2k+2}u_{H^{2k+2}}\). This bound increases with the scaling H.
In this paper, we seek to obtain the minimized error of the filtered solution with respect to the scaling order \(\mu \). To do this, we need to find a proper scaling order \(\mu \) (assuming \(H = h^\mu \)) such that \(\Theta _1 = \Theta _2\). As mentioned in [3], in the worst case the scaling order \(\mu = \mu _0 = \frac{2k+1}{3k+2} \ge 0.6\) , and in the best case \(\mu \approx 1\). We examine the \(L^2\) and \(L^\infty \) errors with scaling order \(\mu \) in the range of [0.6, 1] for two nonuniform meshes: Meshs 2.1 and 2.2. Figure 2 shows the variations when \(\mu \) increases from 0.6: the error is first reduced until a minimum error is achieved and then the error starts to rise again. We can see that the minimized error in the \(L^2\) and \(L^\infty \) norms correspond to the different scaling orders \(\mu \); see also Table 2. Since the theoretical estimates are based on the \(L^2\) norm, in the following we define the concept of the optimal accuracy based on the \(L^2\) norm.
Definition 3.1
 When \(H = 0\), the filter \(K_H^{(2k+1,k+1)}\) degenerates to the delta function and we haveIn this sense, the optimal accuracy is at least as good as the original DG accuracy.$$\begin{aligned} \Vert u  K_H^{(2k+1,k+1)} \star u_h\Vert _0 = \Vert u  \delta \star u_h\Vert _0 = \Vert u  u_h\Vert _0. \end{aligned}$$

Since \(H \in [0, 1]\) and \(\Vert u  K_H^{(2k+1,k+1)}\star u_h\Vert _0\) is continuous respect to H, the minimum of (3.6) must exist.
Remark 3.1
We can also define the optimal accuracy based on different norms, such as the \(L^\infty \)norm, or even different filters, but it will lead to different optimal scaling order \(\mu ^\star \).
Mesh  Mesh 2.1  Mesh 2.2  

\(u_h\)  \({{\varvec{u}}}_h^\star \)  \(u_h\)  \({{\varvec{u}}}_h^\star \)  
N  \(L^2 \) error  Order  \(\mu ^\star \)  \(L^2 \) error  Order  \(L^2 \) error  Order  \(\mu ^\star \)  \( L^2\) error  Order 
\({\mathbb {P}}^2\)  
20  2.62E−04  –  0.90  2.69E−05  –  8.01E−04  –  0.82  1.21E−04  – 
40  3.26E−05  3.00  0.85  1.58E−06  4.08  6.30E−05  3.67  0.81  4.16E−06  4.87 
80  3.23E−06  3.34  0.84  6.50E−08  4.61  3.86E−06  4.03  0.82  1.10E−07  5.24 
160  4.03E−07  3.00  0.81  4.25E−09  3.94  1.43E−06  1.44  0.75  2.84E−08  1.96 
\({\mathbb {P}}^3\)  
20  7.31E−06  –  0.97  2.25E−07  –  2.07E−05  –  0.90  1.39E−06  – 
40  5.23E−07  3.80  0.91  5.69E−09  5.31  9.49E−07  4.45  0.87  1.95E−08  6.16 
80  2.64E−08  4.31  0.88  9.46E−11  5.91  7.12E−08  3.74  0.85  3.31E−10  5.88 
160  1.58E−09  4.07  0.86  2.65E−12  5.16  5.77E−09  3.63  0.80  2.56E−11  3.69 
3.2.1 The Convergence Rate
4 The Unstructuredness of Nonuniform Meshes
In Sect. 3, we proposed the concept of the optimal accuracy and numerically demonstrated that there exists an optimal scaling order \(\mu ^\star \) such that using the optimal scaling, \(H^\star = h^{\mu ^\star },\) minimizes the error of the filtered solutions in the \(L^2\) norm. Then, the remaining question is how to find \(\mu ^\star \) for a given nonuniform mesh. Table 2 provides \(\mu ^\star \) by testing different values of the scaling, which is certainly impractical. Theoretically, even for uniform meshes whose optimal scaling order is \(\mu ^\star \approx 1\), it is impossible to find the exact value of \(\mu ^\star \). However, in this section, we propose an approximation \(\mu _h\) that is sufficiently close to \(\mu ^\star \) and leads to filtered solutions with improved quality.
An important observation from Fig. 2 for determining \(\mu ^\star \) is that the optimal scaling order depends on the structure of the nonuniform meshes, and hence the optimal scaling order is different. The rule of thumb is that the more unstructured the mesh, the smaller the value of \(\mu ^\star \). In order to approximate the value of \(\mu ^\star \), it is important to define a measure of the unstructuredness of nonuniform meshes.
4.1 The Measure of Unstructuredness of Nonuniform Meshes
Before discussing the unstructuredness, we first provide a definition of structured meshes.
Definition 4.1
According to [20], filtered solutions for structured meshes have the same accuracy order (\(2k+1\) for linear hyperbolic equations) as for uniform meshes.
Now we introduce a new parameter \(\sigma \), the unstructuredness of the nonuniform mesh, to measure the difference between the given nonuniform mesh and a structured mesh with the same number of elements.
Definition 4.2
Remark 4.1
The definition of unstructuredness is designed by considering the discrete \(L^2\) norm formula. It is a natural choice since the focus is on the error in the \(L^2\) norm. Furthermore, it establishes a connection between general nonuniform meshes and the wellstudied structured meshes. Besides formula (4.2), there are different ways to identify the unstructuredness of the mesh, such as through the variation of mesh elements [8], utilizing different norms, or the methods mentioned in Appendix.
4.2 SIAC Filtering Based on Unstructuredness
Remark 4.2
The above analysis is the motivation for using formula (4.2) to define the unstructuredness. Also, we point out that assumption (4.3) is an empirical rather than a rigorous estimate. Furthermore, the assumption that \(\left\ \partial _H(uu_h)\right\ _{0, \text {diff}}\) dominates \(\left\ \partial _H(uu_h)\right\ _{0}\) is reasonable only when the nonuniform mesh is not so close to the respective structured mesh (\(\sigma \gg 0\)).

Nearly structured meshes\(\log _h \sigma \ge 2\).
This definition is based on estimate (4.5), whenThen, the nonuniform mesh is almost a structured mesh, and the effect of the difference is negligible. In other words, we can treat these nearly structured meshes as structured meshes and use the conclusions in [20]. Also, we note that the definition is not strict; when \(\log _h \sigma \approx 2\) we can also treat these nonuniform meshes as structured meshes.$$\begin{aligned} \frac{\sqrt{\sigma }}{h} \ge \frac{\sqrt{\sigma }}{H} \ge 1,\quad \Rightarrow \quad \sigma \ge h^2 \quad \Rightarrow \quad \log _h\sigma \ge 2. \end{aligned}$$ 
Unstructured meshes\(\log _h\sigma < 2\).
This is a more challenging case and the aim of this paper. Under the same conditions as in Lemma 2.2, we assume that for a nonuniform mesh with the unstructuredness parameter \(\sigma \) as defined in Eq. (4.2) and based on the results in [22], the divided differences of DG solution satisfieswhen \(H \le h^{\frac{1}{2}\log _h\sigma }\). Moreover, the divided differences of the approximation satisfy$$\begin{aligned} \Vert \partial ^\alpha _H(u  u_h)\Vert _{(k+1),\Omega _0} \le C h^{2k+1} \left( \frac{h^{\frac{1}{2}\log _h\sigma }}{H}\right) ^\alpha , \end{aligned}$$(4.6)and according using the estimates for the filter design and and approximation (Eqs. (3.2)–(3.4)), we can enforce$$\begin{aligned} \sum \limits _{\alpha = 0}^{k+1}\Vert \partial _H^\alpha (u  u_h)\Vert _{(k+1)} \le C \left( \frac{h^{\frac{1}{2}\log _h\sigma }}{H}\right) ^{k+1}h^{2k+1}, \end{aligned}$$Using \(H=h^{\mu _h},\) we then have for \(\mu _h\) that$$\begin{aligned} H^{2k+2} = \left( \frac{h^{\frac{1}{2}\log _h\sigma }}{H}\right) ^{k+1}h^{2k+1}. \end{aligned}$$which is much more reasonable to compute as \(H = h^{\mu _h} \le h^{\frac{1}{2}\log _h\sigma }\).$$\begin{aligned} \mu _h = \frac{2k+1}{3(k+1)}+\frac{1}{6}\log _h\sigma \approx \frac{2}{3} + \frac{1}{6}\log _h\sigma > \frac{1}{2}\log _h\sigma , \end{aligned}$$(4.7)
4.3 Scaling Performance Validation
Four types of scaling order used in the performance validation
Scaling order  Definition 

\(\mu _0\)  \(\mu _0 = \frac{2k+1}{3k+2}\), see Theorem 3.1 
\(\mu _{\max }\)  \(h^{\mu _{\max }} = \max \Delta x_j, j = 1,\ldots , N\) 
\(\mu _h\)  \(\mu _h = \frac{2k+1}{3(k+1)}+\frac{1}{6}\log _h\sigma \approx \frac{2}{3} + \frac{1}{6}\log _h\sigma \), see (4.7) 
\(\mu ^\star \)  \(H = h^{\mu ^\star }\) minimizes \(\Vert u  K_H^{(2k+1,k+1)}\star u_h\Vert _0\) 

the accuracy order improvement requires \(k \ge 2\);

the errors in the DG solution are not always reduced.
4.3.1 Test Setup

We adopt Mesh 2.2 with \(b = 0.3\). The value of b is chosen not only for allowing sufficient generality of the mesh structure, but also in order to avoid the possibility of roundoff error caused by tiny elements.

In this test, we have considered the number of elements \(N = 20, 40, 80\), using 1700 different samples (5100 meshes in total).

The finer meshes (\(N = 40, 80\)) are generated using rules similar to the coarse mesh (\(N = 20\)), which preserves the nonuniform property. A trivial way to generating the finer mesh is by uniformly refining the coarse mesh, which leads to piecewise uniform meshes when N is large.
4.3.2 Optimal Scaling Order \(\mu \) Versus Errors

Trend 1: A larger \(\mu ^{\star },\) corresponds to a smaller filtering region and lower errors for filtered solution. The lower errors clearly displayed for \(k=3\) than \(k=2\). It also corresponds to a more structured mesh as well.

Trend 2: Also demonstrated is that when the errors are lower for the DG solution, the optimal filtered solution has better error. This fact is supported by the theory.

Trend 3: Notice that \(\mu _0 = \frac{2k+1}{3k+2}\) is approximately 0.63 and 0.64 for \(k = 2, 3\). However, we can see that in most cases, this value is far away from \(\mu ^\star .\)
4.3.3 Optimal Scaling versus Existing Scalings

Theoretical Scaling, \(\mu _0\)(yellow): For more than half of the mesh samples, the ratio between the DG error and filtered error remains relatively small and the probability of achieving this scaling is higher than for other scalings.

Maximum Scaling, \(\mu _{max}\)(green): This scaling produces a reasonable ratio for most situations.

proposed Scaling, \(\mu _h\)(purple): The performance is closer to the optimal results compared to the other two scaling.
Remark 4.3
We note that the value of \(\mu ^\star \) is also affected by the exact solution u, more precisely \(\frac{u_{H^{2k+2}}}{u_{H^{k+1}}}\). Since the exact solution is usually unknown in practice, this is difficult to determine. However, this leads us to choose \(\mu _h\) to be slight smaller than \(\mu ^{*}\).
4.3.4 Comparisons
From Fig. 4, We can clearly see that the new proposed scaling order \(\mu _h\) has the best performance. Now, we use the statistical data of results to give a more clear view of the performance.
Percent of results which are at least accuracyconserving (\(\Vert u  u_h^\star \Vert _0 \le \Vert u  u_h\Vert _0\))
Degree  N  \(\mu _0\) (%)  \(\mu _{max}\) (%)  \(\mu _h\) (%)  \(\mu ^{\star }\) (%) 

\({\mathbb {P}}^2\)  20  13.5  58.9  100  100 
40  41.8  96.6  100  100  
80  85.1  100  100  100  
\({\mathbb {P}}^3\)  20  3.9  5.8  100  100 
40  12.2  69.8  100  100  
80  45.6  99.6  100  100 
\(\mu _0\) versus \(\mu _h\)
\(\mu _0\)  \(\mu _h\)  

Degree  N  Better (%)  Similar (%)  Better (%) 
\(p = 2\)  20  0.0  6.1  93.9 
40  0.0  4.7  95.2  
80  0.8  3.9  95.3  
\(p = 3\)  20  0.0  0.8  99.2 
40  0.0  0.7  99.3  
80  0.0  1.2  98.8 
\(\mu _{max}\) versus \(\mu _h\)
\(\mu _{max}\)  \(\mu _h\)  

Degree  N  Better (%)  Similar (%)  Better (%) 
\(p = 2\)  20  0.4  16.7  82.9 
40  1.2  34.9  63.9  
80  0.4  94.5  5.1  
\(p = 3\)  20  0.0  2.2  97.8 
40  0.0  7.5  92.5  
80  0.4  17.9  81.7 
Through many performance tests, it is reasonable to claim that by using the proposed scaling \(\mu _h\), we can expect that there is an accuracy improvement for \(k \ge 1\) for the given nonuniform mesh (dependent on \(\sigma \)). In practice, strategy 4.7 provides a way to find the proper scaling for the SIAC filter, it can be used to reduce the errors of given DG solutions.
4.4 A Note on Computation
Aside from error reduction, the computational cost of using the filter is also an important factor in practical applications. As mentioned in previous sections, the scaling H used in Theorem 3.1 is usually larger than the scaling required for nonuniform meshes, which means that the computational cost is higher than the uniform mesh case [3, 11]. Based on Fig. 2, when \(\mu \in [\mu ^\star , 1]\), the final accuracy is directly related to the scaling order \(\mu \), which means one can sacrifice accuracy to improve computational efficiency. For example, if the mesh is closer to a structured mesh, a naive choice of scaling \(H = \max \limits _{j} \Delta x_j\) (or \(H = 1.5\max \limits _{j} \Delta x_j\), \(H = 2\max \limits _{j} \Delta x_j\)) can lead to acceptable results as obtained in [5, 12].
5 Numerical Results
In the previous section, we proposed using the scaling order \(\mu _h\) given by Eq. (4.7). Using the scaling order \(\mu _h\) can improve the accuracy order and reduce the error from the original discontinuous Galerkin approximation. Also, since \(\mu _h\) is designed to approximate the optimal scaling order \(\mu ^\star \), the filtered solutions are expected to have a reduction in error compared to the DG approximation. For numerical verification, we apply the newly designed scaling order \(\mu _h\) for various differential equations over nonuniform meshes—Meshs 2.1 and 2.2—and compare it with using scaling order \(\mu _0\) mentioned in Theorem 3.1. Also, we note that the initial approximation \(u_h(x,0)\) is the \(L^2\) projection of the initial function u(x, 0). The third order TVD Runge–Kutta scheme [7] is used for the time discretization.
5.1 Linear Equation
\(u_h\)  \(\mu = \mu _0\)  \(\mu = \mu _h\)  

Mesh  \(L^2 \) error  Order  \( L^\infty \) error  Order  \(L^2 \) error  Order  \( L^\infty \) error  Order  \(L^2 \) error  Order  \( L^\infty \) error  Order 
Mesh 2.1  
\({\mathbb {P}}^1\)  
20  7.59E03  –  3.00E02  –  2.91E02  –  4.12E02  –  4.95E03  –  8.26E03  – 
40  1.87E03  2.02  9.51E03  1.66  7.47E03  1.96  1.06E02  1.96  7.19E04  2.78  1.35E03  2.61 
80  4.17E04  2.16  2.23E03  2.10  1.88E03  1.99  2.66E03  1.99  9.10E05  2.98  1.86E04  2.87 
160  1.00E04  2.06  5.95E04  1.90  4.74E04  1.99  6.71E04  1.99  1.23E05  2.89  2.67E05  2.80 
\({\mathbb {P}}^2\)  
20  2.62E04  –  1.64E03  –  5.13E03  –  7.25E03  –  7.19E05  –  1.11E04  – 
40  3.26E05  3.00  2.36E04  2.80  5.86E04  3.13  8.29E04  3.13  3.97E06  4.18  6.03E06  4.21 
80  3.23E06  3.34  2.11E05  3.49  6.21E05  3.24  8.79E05  3.24  1.99E07  4.32  2.90E07  4.38 
160  4.03E07  3.00  4.01E06  2.39  6.36E06  3.29  8.99E06  3.29  9.23E09  4.43  1.40E08  4.37 
\({\mathbb {P}}^3\)  
20  7.31E06  –  4.16E05  –  1.08E03  –  1.52E03  –  3.17E06  –  4.50E06  – 
40  5.23E07  3.80  3.23E06  3.68  5.17E05  4.38  7.31E05  4.38  6.03E08  5.72  8.72E08  5.69 
80  2.64E08  4.31  1.60E07  4.33  2.22E06  4.54  3.14E06  4.54  9.97E10  5.92  1.49E09  5.87 
160  1.58E09  4.07  1.16E08  3.79  9.10E08  4.61  1.29E07  4.61  1.42E11  6.13  2.44E11  5.93 
Mesh 2.2  
\({\mathbb {P}}^1\)  
20  1.00E02  –  3.12E02  –  3.16E02  –  4.46E02  –  7.90E03  –  1.19E02  – 
40  1.99E03  2.34  1.03E02  1.60  7.60E03  2.06  1.07E02  2.05  9.35E04  3.08  1.58E03  2.91 
80  6.38E04  1.64  3.99E03  1.37  1.90E03  2.00  2.70E03  1.99  1.41E04  2.73  2.87E04  2.46 
160  1.43E04  2.15  1.06E03  1.92  4.79E04  1.99  6.80E04  1.99  2.38E05  2.56  5.00E05  2.52 
\({\mathbb {P}}^2\)  
20  8.01E04  –  5.52E03  –  5.15E03  –  7.28E03  –  1.25E04  –  2.98E04  – 
40  6.30E05  3.67  5.42E04  3.35  5.87E04  3.13  8.30E04  3.13  6.27E06  4.32  1.14E05  4.70 
80  3.86E06  4.03  2.67E05  4.35  6.22E05  3.24  8.79E05  3.24  4.35E07  3.85  6.50E07  4.14 
160  1.43E06  1.44  2.23E05  0.26  6.36E06  3.29  8.99E06  3.29  3.18E08  3.78  1.44E07  2.17 
\({\mathbb {P}}^3\)  
20  2.07E05  –  1.17E04  –  1.08E03  –  1.52E03  –  3.80E06  –  5.99E06  – 
40  9.49E07  4.45  7.44E06  3.97  5.17E05  4.38  7.31E05  4.38  1.03E07  5.20  1.47E07  5.35 
80  7.12E08  3.74  5.57E07  3.74  2.22E06  4.54  3.14E06  4.54  2.84E09  5.18  4.22E09  5.12 
160  5.77E09  3.63  6.75E08  3.04  9.10E08  4.61  1.29E07  4.61  5.98E11  5.57  1.07E10  5.30 
5.2 Variable Coefficient Equation
\(u_h\)  \(\mu = \mu _0\)  \(\mu = \mu _h\)  

Mesh  \(L^2 \) error  Order  \( L^\infty \) error  Order  \(L^2 \) error  Order  \( L^\infty \) error  Order  \(L^2 \) error  Order  \( L^\infty \) error  Order 
Mesh 2.1  
\(\mathbb {P}^1\)  
20  6.93E03  –  3.51E02  –  2.50E02  –  3.57E02  –  1.61E03  –  4.04E03  – 
40  1.83E03  1.92  1.05E02  1.74  6.83E03  1.87  9.71E03  1.88  2.32E04  2.79  5.47E04  2.89 
80  4.15E04  2.14  2.29E03  2.20  1.82E03  1.91  2.58E03  1.91  3.72E05  2.64  1.37E04  2.00 
160  1.00E04  2.05  6.10E04  1.91  4.66E04  1.96  6.60E04  1.97  6.00E06  2.63  2.09E05  2.71 
\(\mathbb {P}^2\)  
20  2.67E04  –  1.71E03  –  5.12E03  –  7.25E03  –  7.02E05  –  1.32E04  – 
40  3.26E05  3.03  2.25E04  2.93  5.86E04  3.13  8.29E04  3.13  3.81E06  4.20  6.82E06  4.27 
80  3.24E06  3.33  2.11E05  3.42  6.21E05  3.24  8.79E05  3.24  1.99E07  4.26  3.23E07  4.40 
160  4.05E07  3.00  4.01E06  2.39  6.36E06  3.29  8.99E06  3.29  1.03E08  4.27  2.78E08  3.54 
\(\mathbb {P}^3\)  
20  7.43E06  –  3.68E05  –  1.08E03  –  1.52E03  –  3.18E06  –  4.75E06  – 
40  5.25E07  3.82  3.14E06  3.55  5.17E05  4.38  7.31E05  4.38  6.07E08  5.71  1.05E07  5.50 
80  2.65E08  4.31  1.56E07  4.33  2.22E06  4.54  3.14E06  4.54  1.01E09  5.91  1.73E09  5.93 
160  1.58E09  4.07  1.14E08  3.78  9.10E08  4.61  1.29E07  4.61  1.53E11  6.04  3.58E11  5.59 
Mesh 2.2  
\(\mathbb {P}^1\)  
20  9.59E03  –  4.42E02  –  2.13E02  –  3.00E02  –  3.93E03  –  7.08E03  – 
40  1.95E03  2.30  1.14E02  1.96  6.77E03  1.65  9.62E03  1.64  3.86E04  3.35  1.09E03  2.70 
80  6.38E04  1.61  4.19E03  1.44  1.82E03  1.90  2.60E03  1.89  8.86E05  2.12  2.85E04  1.93 
160  1.43E04  2.15  1.09E03  1.94  4.64E04  1.97  6.60E04  1.98  1.65E05  2.42  5.72E05  2.32 
\(\mathbb {P}^2\)  
20  7.90E04  –  4.96E03  –  5.08E03  –  7.19E03  –  1.71E04  –  5.14E04  – 
40  6.33E05  3.64  5.08E04  3.29  5.86E04  3.12  8.29E04  3.12  8.54E06  4.32  2.74E05  4.23 
80  3.88E06  4.03  2.59E05  4.29  6.21E05  3.24  8.79E05  3.24  4.40E07  4.28  8.34E07  5.04 
160  1.44E06  1.42  2.15E05  0.27  6.36E06  3.29  8.99E06  3.29  1.28E07  1.78  5.14E07  0.70 
\(\mathbb {P}^3\)  
20  2.13E05  –  1.12E04  –  1.08E03  –  1.52E03  –  4.10E06  –  8.22E06  – 
40  9.62E07  4.47  6.98E06  4.01  5.17E05  4.38  7.31E05  4.38  1.08E07  5.24  2.02E07  5.35 
80  7.22E08  3.74  5.24E07  3.74  2.22E06  4.54  3.14E06  4.54  2.94E09  5.20  5.31E09  5.25 
160  5.79E09  3.64  6.05E08  3.11  9.10E08  4.61  1.29E07  4.61  1.89E10  3.96  9.78E10  2.44 
5.3 TwoDimensional Example
DG  \(\mu = \mu _0\)  \(\mu = \mu _h\)  

Mesh  \(L^2 \) error  Order  \( L^\infty \) error  Order  \(L^2 \) error  Order  \( L^\infty \) error  Order  \(L^2 \) error  Order  \( L^\infty \) error  Order 
\({\mathbb {P}}^1\)  
\( 20\times 20\)  1.28E02  –  6.09E02  –  5.76E02  –  8.20E02  –  1.08E02  –  1.86E02  – 
\( 40\times 40\)  2.57E03  2.31  1.86E02  1.71  1.48E02  1.96  2.11E02  1.96  1.39E03  2.96  2.55E03  2.87 
\( 80\times 80\)  5.79E04  2.15  4.94E03  1.91  3.76E03  1.98  5.33E03  1.98  1.80E04  2.94  3.62E04  2.81 
\(160\times 160\)  1.42E04  2.03  1.26E03  1.98  9.48E04  1.99  1.34E03  1.99  2.50E05  2.85  5.27E05  2.78 
\({\mathbb {P}}^2\)  
\( 20\times 20\)  3.92E04  –  3.19E03  –  1.02E02  –  1.45E02  –  1.59E04  –  2.37E04  – 
\( 40\times 40\)  4.46E05  3.13  4.85E04  2.72  1.17E03  3.12  1.66E03  3.12  7.81E06  4.34  1.19E05  4.32 
\( 80\times 80\)  5.09E06  3.13  5.29E05  3.20  1.24E04  3.24  1.76E04  3.24  3.76E07  4.38  5.69E07  4.38 
\(160\times 160\)  6.27E07  3.02  7.49E06  2.82  1.27E05  3.29  1.80E05  3.29  1.89E08  4.31  3.22E08  4.14 
\({\mathbb {P}}^3\)  
\( 20\times 20\)  1.18E05  –  8.74E05  –  2.15E03  –  3.04E03  –  7.21E06  –  1.03E05  – 
\( 40\times 40\)  6.63E07  4.16  6.65E06  3.72  1.03E04  4.38  1.46E04  4.38  1.19E07  5.92  1.74E07  5.89 
\( 80\times 80\)  3.67E08  4.17  4.03E07  4.04  4.44E06  4.54  6.28E06  4.54  1.83E09  6.02  2.82E09  5.94 
\(160\times 160\)  2.24E09  4.04  2.53E08  3.99  1.82E07  4.61  2.57E07  4.61  2.95E11  5.96  5.08E11  5.80 
DG  \(\mu = \mu _0\)  \(\mu = \mu _h\)  

Mesh  \(L^2 \) error  Order  \( L^\infty \) error  Order  \(L^2 \) error  Order  \( L^\infty \) error  Order  \(L^2 \) error  Order  \( L^\infty \) error  Order 
\(\mathbb {P}^1\)  
\( 20\times 20\)  2.11E02  –  1.72E01  –  6.29E02  –  9.05E02  –  1.72E02  –  3.69E02  – 
\( 40\times 40\)  5.44E03  1.96  6.98E02  1.30  1.60E02  1.97  2.32E02  1.97  3.04E03  2.50  9.63E03  1.94 
\( 80\times 80\)  1.18E03  2.21  1.42E02  2.29  3.90E03  2.04  5.59E03  2.05  4.00E04  2.93  1.17E03  3.04 
\(160\times 160\)  2.18E04  2.43  2.90E03  2.30  9.57E04  2.03  1.36E03  2.04  4.80E05  3.06  1.11E04  3.40 
\(\mathbb {P}^2\)  
\( 20\times 20\)  1.03E03  –  7.74E03  –  1.03E02  –  1.45E02  –  2.53E04  –  5.66E04  – 
\( 40\times 40\)  1.94E04  2.41  2.17E03  1.84  1.18E03  3.13  1.67E03  3.13  2.34E05  3.43  8.41E05  2.75 
\( 80\times 80\)  1.97E05  3.30  3.55E04  2.61  1.24E04  3.24  1.76E04  3.24  1.08E06  4.44  5.13E06  4.04 
\(160\times 160\)  1.47E06  3.74  2.77E05  3.68  1.27E05  3.29  1.80E05  3.29  6.07E08  4.15  1.26E07  5.35 
\(\mathbb {P}^3\)  
\( 20\times 20\)  5.18E05  –  6.23E04  –  2.15E03  –  3.04E03  –  8.67E06  –  1.63E05  – 
\( 40\times 40\)  6.16E06  3.07  9.20E05  2.76  1.03E04  4.38  1.46E04  4.38  2.75E07  4.98  1.01E06  4.02 
\( 80\times 80\)  2.83E07  4.44  3.84E06  4.58  4.44E06  4.54  6.28E06  4.54  5.50E09  5.64  1.57E08  6.01 
\(160\times 160\)  8.38E09  5.08  1.40E07  4.78  1.82E07  4.61  2.57E07  4.61  1.40E10  5.30  2.85E10  5.78 
Remark 5.1
In this paper, we only consider periodic boundary conditions. For other boundary conditions such as Dirichlet boundary conditions, a positiondependent filter [11, 20] has to be used near the boundaries. The results will be similar to the periodic boundary conditions. However, to obtain the optimal result, a positiondependent scaling has to be applied, we will leave it for the future work.
6 Conclusion
In this paper, we have demonstrated that for a given nonuniform mesh, the filtered solution is highly affected by the unstructuredness of the mesh. By adjusting the filter scaling one can minimize the error of the filtered solution. In addition, a scaling \(H = h^{\mu _h}\) (4.7) of the SIAC filter is proposed in order to approach the optimal accuracy of the filtered solution, where the scaling order \(\mu _h\) is chosen according to the unstructuredness of the given nonuniform meshes. Furthermore, we have numerically shown that by using the proposed scaling \(H = h^{\mu _h}\), the filtered solutions have an accuracy order of \(\mu _h(2k+2)\), which is higher than the accuracy order of the DG solutions. The numerical results are promising: compared to the original DG errors, the filtered error scaling order \(\mu _h\) has a significantly reduced error from the original DG solution as well as increased accuracy order. Also, a scaling performance validation based on a large number of nonuniform meshes has demonstrated the superiority of our proposed scaling compared to other existing methods. Future work will concentrate on extending this scaling order \(\mu _h\) to unstructured triangular meshes in two dimensions and tetrahedral meshes in three dimensions.
Notes
Acknowledgements
This work was performed while the first author was sponsored by the National Natural Science Foundation of China (NSFC) under Grants No. 11801062 and the Fundamental Research Funds for the Central Universities. The first and second authors were sponsored by the Air Force Office of Scientific Research (AFOSR), Air Force Material Command, USAF, under Grant Number FA86550913017. The third author was sponsored in part by the Air Force Office of Scientific Research (AFOSR), Computational Mathematics Program, under Grant Number FA95501210428. The U.S Government is authorized to reproduce and distribute reprints for Governmental purposes notwithstanding any copyright notation thereon.
References
 1.Bramble, J.H., Schatz, A.H.: Higher order local accuracy by averaging in the finite element method. Math. Comp. 31(137), 94–111 (1977)MathSciNetCrossRefzbMATHGoogle Scholar
 2.Cockburn, B.: An introduction to the discontinuous Galerkin method for convectiondominated problems. In: Quarteroni, A. (ed.) Advanced Numerical Approximation of Nonlinear Hyperbolic Equations. Lecture Notes in Mathematics, vol. 1697. Springer, Berlin, Heidelberg (1998)Google Scholar
 3.Cockburn, B., Luskin, M., Shu, C.W., Süli, E.: Enhanced accuracy by postprocessing for finite element methods for hyperbolic equations. Math. Comput. 72(242), 577–606 (2003)MathSciNetCrossRefzbMATHGoogle Scholar
 4.Cockburn, B., Shu, C.W.: RungeKutta discontinuous Galerkin methods for convectiondominated problems. J. Sci. Comput. 16(3), 173–261 (2001)MathSciNetCrossRefzbMATHGoogle Scholar
 5.Curtis, S., Kirby, R.M., Ryan, J.K., Shu, C.W.: Postprocessing for the discontinuous Galerkin method over nonuniform meshes. SIAM J. Sci. Comput. 30(1):272–289, (2007/08)Google Scholar
 6.DocampoSánchez, J., Ryan, J.K., Mirzargar, M., Kirby, R.M.: Multidimensional filtering: reducing the dimension through rotation. SIAM J. Sci. Comput. 39(5), A2179–A2200 (2017)MathSciNetCrossRefzbMATHGoogle Scholar
 7.Gottlieb, S., Shu, C.W.: Total variation diminishing Runge–Kutta schemes. Math. Comput. 67(221), 73–85 (1998)MathSciNetCrossRefzbMATHGoogle Scholar
 8.Hirsch, C.: Numerical Computation of Internal and External Flows: The Fundamentals of Computational Fluid Dynamics. ButterworthHeinemann, Oxford (2007)Google Scholar
 9.Jallepalli, A., DocampoSánchez, J., Ryan, J.K., Haimes, R., Kirby, R.M.: On the treatment of field quantities and elemental continuity in FEM solutions. IEEE Trans. Vis. Comput. Graph. 24(1), 903–912 (2018)CrossRefGoogle Scholar
 10.Ji, L., van Slingerland, P., Ryan, J.K., Vuik, K.: Superconvergent error estimates for positiondependent smoothnessincreasing accuracyconserving (SIAC) postprocessing of discontinuous Galerkin solutions. Math. Comput. 83(289), 2239–2262 (2014)MathSciNetCrossRefzbMATHGoogle Scholar
 11.Li, X., Ryan, J.K., Kirby, R.M., Vuik, C.: SmoothnessIncreasing AccuracyConserving (SIAC) filters for derivative approximations of discontinuous Galerking (DG) solutions over nonuniform meshes and near boundaries. J. Comput. Appl. Math. 294, 275–296 (2016)MathSciNetCrossRefzbMATHGoogle Scholar
 12.Mirzaee, H., King, J., Ryan, J.K., Kirby, R.M.: SmoothnessIncreasing AccuracyConserving filters for discontinuous Galerkin solutions over unstructured triangular meshes. SIAM J. Sci. Comput. 35(1), A212–A230 (2013)MathSciNetCrossRefzbMATHGoogle Scholar
 13.Mirzargar, M., Jallepalli, A., Ryan, J.K., Kirby, R.M.: Hexagonal SmoothnessIncreasing AccuracyConserving filtering. J. Sci. Comput. 73(2), 1072–1093 (2017)MathSciNetCrossRefzbMATHGoogle Scholar
 14.Mock, Michael S., Lax, Peter D.: The computation of discontinuous solutions of linear hyperbolic equations. Commun. Pure Appl. Math. 31(4), 423–430 (1978)MathSciNetCrossRefzbMATHGoogle Scholar
 15.Nguyen, D., Peters, J.: Nonuniform discontinuous Galerkin filters via shift and scale. SIAM J. Numer. Anal. 54(3), 1401–1422 (2016)MathSciNetCrossRefzbMATHGoogle Scholar
 16.Peters, J.: General spline filters for discontinuous Galerkin solutions. Comput. Math. Appl. 70(5), 1046–1050 (2015)MathSciNetCrossRefGoogle Scholar
 17.Ryan, J.K.: Local Derivative Postprocessing: Challenges for a Nonuniform Mesh. Delft University of Technology Report 10–18, (2013)Google Scholar
 18.Ryan, J.K., Cockburn, B.: Local derivative postprocessing for the discontinuous Galerkin method. J. Comput. Phys. 228(23), 8642–8664 (2009)MathSciNetCrossRefzbMATHGoogle Scholar
 19.Ryan, J.K., Shu, C.W.: On a onesided postprocessing technique for the discontinuous Galerkin methods. Methods Appl. Anal. 10(2), 295–307 (2003)MathSciNetzbMATHGoogle Scholar
 20.Ryan, J.K., Li, X., Kirby, R.M., Vuik, K.: Onesided positiondependent SmoothnessIncreasing AccuracyConserving (SIAC) over uniform and nonuniform meshes. J. Sci. Comput. 64(3), 773–817 (2015)MathSciNetCrossRefzbMATHGoogle Scholar
 21.Steffen, M., Curtis, S., Kirby, R.M., Ryan, J.K.: Investigation of SmoothnessIncreasing AccuracyConserving filters for improving streamline integration through discontinuous fields. IEEE Trans. Vis. Comput. Graph. 14(3), 680–692 (2008)CrossRefGoogle Scholar
 22.Thomée, V.: High order local approximations to derivatives in the finite element method. Math. Comput. 31(139), 652–660 (1977)MathSciNetCrossRefzbMATHGoogle Scholar
 23.van Slingerland P., Ryan, J.K., Vuik, K. SmoothnessIncreasing ConvergenceConserving Spline Filters Applied to Streamline Visualization of DG Approximations. Delft University of Technology Report 0906, (2009)Google Scholar
 24.van Slingerland, P., Ryan, J.K., Vuik, K.: Positiondependent smoothnessincreasing accuracyconserving (SIAC) filtering for improving discontinuous Galerkin solutions. SIAM J. Sci. Comput. 33(2), 802–825 (2011)MathSciNetCrossRefzbMATHGoogle Scholar
Copyright information
OpenAccessThis article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.