Elsevier

Computers & Fluids

Volume 213, 15 December 2020, 104727
Computers & Fluids

Enhancing accuracy with a convolution filter: What works and why!

https://doi.org/10.1016/j.compfluid.2020.104727Get rights and content

Highlights

  • To make SIAC filtering accessible and understandable to a broader audience.

  • To illustrate the importance of data initialization in extracting extra information out of data.

  • A simplified algorithm for implementation purposes.

  • The connection to accurate wave propagation properties.

Abstract

In this paper we present a simplified discussion of the Smoothness-Increasing Accuracy-Conserving (SIAC) filter. We demonstrate the importance of appropriately initializing the data in order to be able to extract higher orders of accuracy by comparing the nodal and modal forms of a discontinuous Galerkin approximation applied to a simplified cubic polynomial. Using the modal form, we are able to exactly reproduce the cubic polynomial, whereas this reconstruction does not occur using the nodal form. Furthermore, we tie the ability of the filter to extract extra accuracy to its accurate wave propagation properties.

Introduction

Numerical filtering can be exploited for use in imaging, data extraction, detection of discontinuous phenomenon, visualization of fluids, and more. Typically, it serves to remove noise from signals and/or to remove unwanted scales from a multi-scale problem. Other applications include stabilization of numerical methods, general regularization, and data-encryption or decryption.While the concept is straightforward and simple filters can be intuitively developed, designing a computationally viable and effective filter for general applications requires the use and understanding of complex mathematical properties.

The Smoothness-Increasing Accuracy-Conserving (SIAC) filter [1], [2], [3] was developed as a post-processor for accuracy extraction. SIAC filtering exploits the idea of superconvergence in the underlying numerical method to reduce oscillations in the errors, reduce errors and increase convergence rates. The filter has its basis in work by Bramble and Schatz [4] and Cockburn et al. [5]. It has been extended to include boundary filtering and nonuniform meshes [1], [6], [7], [8], [9] as well as to increase computational efficiency [10], [11], [12], [13]. It has proven effective for applications in visualisation [14], [15] and more recently in the application of shock capturing [16], [17].

Filters take a quantity of interest u (data, numerical solutions, etc.) and convolve it against a kernel function K, carefully designed to modify its behavior in a desired way. The convolution is written as:u(x)=RK(yx)u(y)dy.The convolution operation can be illustrated graphically for each location x as the area under the quantity u multiplied by the kernel function. Fig. 1 shows such a graphical illustration for a top hat kernel convolved with a constant function with a linear change, u, resulting in a smoother function, u.

The SIAC kernel is designed to satisfy first and foremost the classic filter property: the removal of high-frequency noise from the given data. If the kernel width is greater than the wavelength of a given function, then this wavelength is removed via convolution. This is demonstrated in Fig. 2 (left) with a high frequency wave superposed to a low frequency (filtered) sine wave. The standard SIAC kernel consists of a combination of B-spline functions and recently, [16], [17], [18], [38], [39] showed that polynomial distribution functions developed in the context of a Dirac Delta approximation also have SIAC properties.

Filtering naturally produces smoother functions from integrating. This is shown in Fig. 2 (right) for a sine wave consisting of piece-wise linear segments. In general, smoothness does not lead to increased accuracy and this is what makes SIAC filters attractive: they have the counter intuitive property of enhancing accuracy by several orders, known as superconvergence. The theory behind numerical superconvergence is complex. Although the final result is measured in the classic L2 norm, the proofs combine distribution theory and rely on functional analysis to switch to a less restrictive normed space where the extra accuracy is found. For the interested reader, we refer to [5], [19] for detailed information.

Most of the developments in SIAC filtering have concentrated on numerical approximations obtained via discontinuous Galerkin (DG) methods. DG methods are a subset of the general class of discontinuous spectral element methods (DSEM), which are now textbook (for example [20], [21]). There are many flavors of DG and DSEM methods depending on the type of approximation of the solution, i.e. the basis, and the method of minimization, such as Galerkin, least squares and collocation. In a Galerkin minimization the test function is the same as the basis function. One way to categorize a basis is to differentiate between a modal polynomial form or a nodal polynomial form. In the modal form, the solution is approximated with a weighted linear combination of increasing order modes. In the nodal approximation, a weighted combination of Lagrangian polynomials that use support nodes approximates the solution. Both modal and nodal forms have a number of advantages and disadvantages. To describe all of these is beyond the scope of the current paper. Suffice it to say that both forms have found application in a range of fields of DSEM methods, whose description can be found in the textbooks referenced above.

Naturally, convolution with the SIAC filter has to be defined consistently with the modal and nodal basis as well as the minimization method. SIAC works well for both modal and nodal approximations, but one must be careful about how the filter is applied. In terms of consistency with the kernel function itself, a number of SIAC properties have been proven and tested. Primarily, the filter accuracy is directly connected to the number of zero moments (interpreted as a distribution function) and must be consistent with the polynomial degree of the basis [17]. That is, for an mth degree approximation, we require the kernel to reproduce polynomials (at least) up to the same degree:RK(ξ)dξ=1,andRξiK(ξ)dξ=0fori=1,,m.To extract the 2m+1 superconvergence that is characteristic of DG, the kernel should reproduce the first 2m polynomials. This is equivalent to the moment conditions on a general distribution function. That is, kernels composed of cardinal B-splines, combinations thereof, or carefully designed polynomials have this property. Interestingly, the design of the kernel only depends on the number of basis functions and not on the form of those basis functions, i.e., Spline based kernels or polynomial based kernels are not of particular importance with regard to achieving this accuracy.

The key to extracting extra accuracy is therefore the interaction of the kernel basis functions with the discretization. For discontinuous Galerkin methods, it is essential that we are able to take advantage of the (p+1)th order accuracy of the divided differences of the DG solution. In order to do so, we require: 1) for both the collocation or modal based method, the approximation should be initialized utilizing a Galerkin projection onto the basis in order to recover superconvergence [5] (Section 3); and, 2) The derivatives of the kernel basis can be expressed as divided differences (Section 3.3). The impact of the filter form on the SIAC filtered DG operator has been mostly unexplored.

In this paper, we review the properties of SIAC kernels using simple interpolation problems and solving the 1D linear advection equation with a DG method. We seek to show the workings of these filters and discuss its practical applications without going into details requiring a deep mathematical knowledge. The purpose of this paper is to make SIAC accessible and understandable to a broader audience beyond the mathematics community. We illustrate the significance of the requirements on the approximation through a simple linear approximation and show how SIAC post-processing can recover the accuracy of a cubic function and discuss the difference between the nodal and modal forms of the approximation (Section 3). These results naturally extend to higher order polynomial functions. Moreover, we show that only Galerkin minimization allows for recovering this function exactly. Secondly, we illustrate the importance of the filter scaling. The filter is a local operator and uses a scaling to relate the support width to the actual DG elements. To recover superconvergence, the scaling must be selected equal to the element size or a constant integer multiple thereof. Effectively, this means that the piecewise approximation must be considered on an equidistant elemental grid (or with grids that are a multiple of some constant length). We use the cubic function case to show that only such scalings allow recovering the function. Thirdly, to understand the basic workings of SIAC in the context of a DG solution, we consider the moving sinusoidal solution of an advection equation. While an increased accuracy is achieved for each order, p, separately, superconvergence per p does not lead to exponential superconvergence (Section 5).

Utilizing the modal form, SIAC has been effective in increasing accuracy for linear hyperbolic systems [1], linear convection-diffusion equations [5], [22], and nonlinear hyperbolic equations and systems with source terms [23], [24], [25], and for mesh adaptivity [26]. Recent work has concentrated on the application for shock regularization [16]. Some of these applications will be discussed in Section 6. We begin by reviewing Spline based SIAC kernels and the general concept of convolution filtering (Section 2). Then, we illustrate the pitfalls of naively applying a filter to the nodal versus modal solution in Section 3. We then tie the ability to extract superconvergence to high order wave propagation properties in the DG approximation (Section 4). In Section 5, we further emphasize the points illustrated earlier in the article, especially this initialization using nodal versus modal approximation. We discuss the current application of the multi-dimensional kernel in Section 6. In Appendix A, we discuss the filter implementation including an algorithm for uniform meshes and show how the filter scaling affects the quality of the solution.

Section snippets

The filter kernel and convolution operation

We begin by describing the major components of SIAC filtering: the kernel building functions, the filter scaling and the convolution operation. A detailed computational implementation of this post-processor including algorithms for uniform meshes is given in Appendix A.

The SIAC kernel is built on B-spline function translates given by the formula:K(m+1,n+1)(t)=γ=0mcγ·Bn+1(t+m2γ),where the superindeces (m+1,n+1) denote the number of B-splines and B-spline order (degree = order 1),

Nodal vs. modal

The Discontinuous Galerkin (DG) method has two general approaches for representing approximations: modal and nodal forms. In this section, we discuss the difference between the modal and nodal forms and the effect of SIAC filtering on these different representations. We wish to emphasize that the filter will work for both types approximations, but requires a Galerkin projection as an initialization step.

Wave number and dispersion relation

The ability to obtain a higher convergence rate is intertwined with the accurate wave propagation properties of the discontinuous Galerkin methods. The filter is essentially extracting this information from the Fourier space so that it is accessible in the physical space. In this section, we outline the wave propagation properties of the DG method that can be found in [29], [30], [31], [32], [33], [34]. We do this by examining the linear advection equation:ut+aux=0,x[0,1],a=constantu(x,0)=ei2πk

Illustrative numerical examples

Here we illustrate the capabilities of the filter through numerical examples. We start with the one dimensional advection equation:ut+ux=0,x[0,1],t1u(x,0)=sin(2πx),and compute a p=2 Discontinuous Galerkin (DG) solution using a modal basis. In Fig. 7 we show the error plots before and after applying the superconvergent SIAC filter (K(5,3)). Notice how the filter recovers smoothness in the approximation as well as reduces the error. In the following section, we demonstrate how these

Multi-dimensional applications of the filter

Here we describe some of the applications of the SIAC filter and start by introducing the kernel for multiple dimensions.

Discussion and future work

In this paper we have presented a simplified discussion of the Smoothness-Increasing Accuracy-Conserving (SIAC) filter and the importance of appropriately initializing the data in order to be able to extract higher orders of accuracy. We demonstrated through numerically approximating a cubic polynomial using both the nodal and modal forms of the discontinuous Galerkin approximation and filtering the result. Using the modal form, we are able to exactly reproduce the cubic polynomial whereas we

CRediT authorship contribution statement

J. Docampo-Sánchez: Validation, Visualization, Writing - original draft, Writing - review & editing. G.B. Jacobs: Conceptualization, Methodology, Software, Writing - original draft, Writing - review & editing. X. Li: Software, Formal analysis, Writing - original draft, Writing - review & editing. J.K. Ryan: Conceptualization, Formal analysis, Writing - original draft, Writing - review & editing.

Declaration of Competing Interest

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

Acknowledgements

This material is based upon work supported by the National Science Foundation under Grant No. DMS-1439786 while the authors were in residence at the Institute for Computational and Experimental Research in Mathematics in Providence, RI, for a small group collaboration. The authors would like to thank Bob Haimes (MIT) for his useful suggestions. The second author acknowledges funding of the  AFOSR under grant number FA9550-19-1-0387  and of the NSF under grant NSF-DMS 1115705.  The third author

References (39)

  • J.K. Ryan et al.

    One-sided position-dependent smoothness-increasing accuracy-conserving (SIAC) filtering over uniform and non-uniform meshes

    J Sci Comput

    (2015)
  • H. Mirzaee et al.

    Smoothness-increasing accuracy-conserving (SIAC) post-processing for discontinuous Galerkin solutions over structured triangular meshes

    SIAM J Numer Anal

    (2011)
  • H. Mirzaee et al.

    Quantification of errors introduced in the numerical approximation and implementation of smoothness-increasing accuracy-conserving (SIAC) filtering of discontinuous Galerkin (DG) fields

    J Sci Comput

    (2010)
  • H. Mirzaee et al.

    Efficient implementation of smoothness-increasing accuracy-conserving (SIAC) filters for discontinuous Galerkin solutions

    J Sci Comput

    (2012)
  • J. Docampo-Sánchez et al.

    Multi-dimensional filtering: reducing the dimension through rotation

    SIAM J Sci Comput

    (2017)
  • A. Jallepalli et al.

    On the treatment of field quantities and elemental continuity in FEM solutions

    IEEE Trans Vis ComputGraph (TVCG)

    (2017)
  • M. Steffan et al.

    Investigation of smoothness enhancing accuracy-conserving filters for improving streamline integration through discontinuous fields

    IEEE-TVCG

    (2008)
  • D. Walfisch et al.

    One-sided smoothness-increasing accuracy-conserving filtering for enhanced streamline integration through discontinuous fields

    J Sci Comput

    (2009)
  • B. Wissink et al.

    Shock regularization with smoothness-increasing accuracy-conserving dirac-delta polynomial kernels

    J Sci Comput

    (2018)
  • Cited by (9)

    • Multiscale extensions for enhancing coarse grid computations

      2023, Journal of Computational and Applied Mathematics
    • Magic SIAC Toolbox: A Codebase of Effective, Efficient, and Flexible Filters

      2023, Springer Proceedings in Mathematics and Statistics
    View all citing articles on Scopus
    View full text