# Higher-order accurate space-time schemes for computational astrophysics—Part I: finite volume methods

- 2.3k Downloads
- 10 Citations

## Abstract

As computational astrophysics comes under pressure to become a precision science, there is an increasing need to move to high accuracy schemes for computational astrophysics. The algorithmic needs of computational astrophysics are indeed very special. The methods need to be robust and preserve the positivity of density and pressure. Relativistic flows should remain sub-luminal. These requirements place additional pressures on a computational astrophysics code, which are usually not felt by a traditional fluid dynamics code. Hence the need for a specialized review. The focus here is on weighted essentially non-oscillatory (WENO) schemes, discontinuous Galerkin (DG) schemes and PNPM schemes. WENO schemes are higher order extensions of traditional second order finite volume schemes. At third order, they are most similar to piecewise parabolic method schemes, which are also included. DG schemes evolve all the moments of the solution, with the result that they are more accurate than WENO schemes. PNPM schemes occupy a compromise position between WENO and DG schemes. They evolve an Nth order spatial polynomial, while reconstructing higher order terms up to Mth order. As a result, the timestep can be larger. Time-dependent astrophysical codes need to be accurate in space and time with the result that the spatial and temporal accuracies must be matched. This is realized with the help of strong stability preserving Runge–Kutta schemes and ADER (Arbitrary DERivative in space and time) schemes, both of which are also described. The emphasis of this review is on computer-implementable ideas, not necessarily on the underlying theory.

## Keywords

Computational astrophysics Numerical methods Higher order Godunov schemes PPM WENO ADER Discontinuous Galerkin## 1 Introduction

The first overarching goal of this review is to document several higher-order methods that can now be applied to simulations in computational astrophysics. In that sense, the review seeks to bring the computational astrophysics community and the higher-order numerical methods community closer together. Even this is a daunting task because computational astrophysics has its own inner requirements. For example, for some very good reasons, computational astrophysicists prefer to have mimetic schemes for non-relativistic magnetohydrodynamics (MHD) and relativistic MHD (RMHD). Likewise, astrophysical computations usually involve stiff source terms and non-ideal effects. For that reason, this review has been split into two parts. Part I, which is this review, introduces higher-order finite volume methods to the greater computational astrophysics community. Part II, which will be a subsequent review, with present many nuances in constraint preserving schemes along with treatment of stiff source terms to the computational astrophysics community.

The second overarching goal is to show the astrophysics community that astrophysics codes are easy to understand if they are studied from the inside out. In other words, all these computational astrophysical fluid dynamics codes are based on a common core of algorithms. Usually, young computational astrophysicists are taught about a code from the outside in. That is, they learn what the inputs are and what the outputs ought to be for a specific code; but the inner workings of the code remain a mystery. By understanding the common algorithmic core, the computational astrophysical fluid dynamics codes can be demystified.

The methods presented in this review have been developed in the literature over the last several years. However, this review differs from other reviews because astrophysicists like to minimize mathematical notation and they also like to make the numerical method operationally explicit. This review minimizes the mathematical notation and displays all formulae explicitly, as much as possible. In some instances, making the numerical methods more transparent for astrophysicists has also yielded important innovations and simplifications that are catalogued here. Each useful method is followed by a box that explicitly catalogues the major steps that go into implementing the method. A sequence of pedagogically designed lectures on this topic is also available on the author’s website (http://www.nd.edu/~dbalsara/Numerical-PDE-Course). Several illustrative codes are also available from that website. The interested reader may also want to see the author’s cotributions to the 2016 Les Houches lectures on Computational Astrophysics (http://comp-phys-2016.sciencesconf.org/), which also include illustrative codes.

Because of the scope of this review, we divide this introduction into four parts. The first part focuses on the partial differential equations (PDE) systems of interest in astrophysics, cosmology and relativity. The second part focuses on achieving spatially high order of accuracy for hyperbolic PDE systems. The third part focuses on achieving high order of temporal accuracy. The fourth part gives us some useful preliminaries on hyperbolic systems.

### 1.1 Focus on the PDE systems of interest to computational astrophysics

From its start in the 1970s, computational astrophysics has blossomed into a vibrant field that has been applied to many sub-disciplines of astrophysics, cosmology and numerical relativity. While it would be impossible to make a comprehensive list of all these sub-disciplines, these sub-disciplines include most types of origins questions. Thus, computational astrophysicists simulate the origins of the cosmos through cosmological simulations, the origin of stars and planetary systems around stars, the turbulent environments in molecular clouds and the interstellar medium, accretion processes around stars, compact objects and black holes, convection in stars, nova and supernova explosions and the interaction of neutron stars and black holes to produce gravitational radiation. In all these fields, simulating for the origin and evolution of an astrophysical system entails accurately evolving given initial conditions forward in time with spatial and temporal accuracy. The availability of PetaScale computers and the intended availability of ExaScale supercomputers in the next five years ensures that ever more detailed computations will be undertaken. Furthermore, the presence of ground-based and space-based observational facilities that can measure astrophysical processes with precision puts some pressure on computational astrophysics to move towards becoming a precision science. Astrophysicists have realized that turbulence regulates various astrophysical processes, like star formation, stellar convection and the physics of galactic interstellar medium. Accurately simulating turbulence also requires the use of highly accurate numerical methods.

There is an emerging interest amongst astrophysicists to carry out precise, high-accuracy simulations to support observational projects. Powerful, massively-parallel computers and GPU co-processors also make it possible to invest in computational methods that might be a little more computationally costly but provide a much more precise answer. The differential gain in accuracy per unit increase in computational cost is such as to favor the implementation of high accuracy schemes for computational astrophysics on modern computational architectures. Most astrophysical codes simulate a hyperbolic system with perhaps some additional contributions from an elliptic sector, parabolic terms or stiff source terms. For that reason too, the focus here is on hyperbolic systems. Most questions about origins in computational astrophysics entail simulating the time-evolution of astrophysical objects. For that reason, we are interested in time-dependent higher-order methods for the simulation of hyperbolic systems. It is worth pointing out that the methods that are used in computational astrophysics today were invented by astrophysicists, engineers, space physicists, mathematicians and computational scientists from all different research areas. Just as computational astrophysicists have been willing to assimilate good ideas from all these allied disciplines, they have also contributed to them. For that reason, many of the methods discussed in this review could be broadly useful to other computationalists in other STEM areas and the cross-fertilization of ideas between disciplines is always a good thing.

The hyperbolic systems of interest include, but are not restricted to, the Euler equations, the non-relativistic magnetohydrodynamic (MHD) equations, relativistic hydrodynamics (RHD) and relativistic MHD (RMHD). Initial interest focused on the Euler equations (Godunov 1959; van Leer 1974, 1977, 1979; Norman et al. 1980; Roe 1981; Harten 1983; Woodward and Colella 1984; Colella and Woodward 1984; Sweby 1984; Osher and Chakravarthy 1984; Tadmor 1988; Colella 1990; Berger and Colella 1989; Stone and Norman 1992a; Colella and Sekora 2008; McCorquodale and Colella 2011). However, it soon became apparent that the Euler equations were just one specific instance of a hyperbolic system. Appendix A gives useful information about the Euler equations viewed as a hyperbolic system.

Non-relativistic MHD next saw an initial spurt of interest where it was treated as a hyperbolic system (Brio and Wu 1988; Stone and Norman 1992b; Dai and Woodward 1994; Ryu and Jones 1995; Roe and Balsara 1996; Cargo and Gallice 1997; Balsara 1998a, b; Falle et al. 1998; Gurski 2004; Li 2005; Crockett et al. 2005; Miyoshi and Kusano 2005; Fuchs et al. 2011; Chadrashekar and Klingenberg 2016; Winters and Gassner 2016; Winters et al. 2017; Derigs et al. 2017). The realization that the magnetic field should be divergence-free (Brackbill and Barnes 1980; Brackbill 1985; Brecht et al. 1981; Evans and Hawley 1989; DeVore 1991) has prompted a lot of subsequent work in the field of constrained transport (CT) schemes for MHD (Ryu et al. 1998; Dai and Woodward 1998; Balsara and Spicer 1999a, b; Balsara 2001a, 2004, 2009; Londrillo and Del Zanna 2004; Gardiner and Stone 2005, 2008; Balsara et al. 2009, 2013; Dumbser et al. 2013; Balsara and Dumbser 2015a, b; Xu et al. 2016). Recently, the need to achieve multidimensional upwinding has led to the development of multidimensional Riemann solvers that are efficient and easy to implement (Balsara 2010, 2012a, 2014, 2015; Balsara et al. 2014; Vides et al. 2015; Balsara et al. 2016a; Balsara and Käppeli 2017). Appendix B gives useful information about the MHD equations viewed as a hyperbolic system.

Soon after the onset of interest in MHD, there was also a burst of interest in developing higher-order Godunov schemes for relativistic hydrodynamics (Martí et al. 1991; Marquina et al. 1992; Eulderink 1993; Balsara 1994; Font et al. 1994; Martí and Müller 1994; Marquina 1994; Eulderink and Mellema 1995; Falle and Komissarov 1996; Aloy et al. 1999; Pons et al. 2000; Rezzolla and Zanotti 2001; Font 2003; Martí and Müller 2003; Ryu et al. 2006). The interested reader can also see see the recent review by Martí and Müller (2015), and the textbook by Rezzolla and Zanotti (2013). That interest in relativistic hydrodynamics transitioned into a burgeoning interest in numerical relativistic MHD which continues to this day (Anile 1989; Komissarov 1999; Balsara 2001b; Koide et al. 2001; Gammie et al. 2003; Giacomazzo and Rezzolla 2006, 2007; Del Zanna et al. 2003, 2007; Noble et al. 2006; Komissarov 2006; Mignone and Bodo 2006; Tchekhovskoy et al. 2007; Mignone et al. 2009; Dumbser and Zanotti 2009; Anton et al. 2010; Beckwith and Stone 2011; McKinney et al. 2014; Kim and Balsara 2014; Radice et al. 2014; Zanotti and Dumbser 2016; White et al. 2016; Balsara and Kim 2016). Higher-order schemes and multidimensional Riemann solvers have also been developed for relativistic MHD (RMHD). Appendix C gives some useful pointers for the RHD and RMHD equations.

### 1.2 Numerical methods for higher-order spatial accuracy

The previous paragraphs have paid due attention to the most important PDE systems of interest in astrophysics. To be sure, there are many further systems of PDEs that will become interesting to astrophysicists in the future. Let us now turn our attention to the solution methodologies. Astrophysicists have been amongst the earliest developers of numerical methods for fluid dynamics (LeBlanc and Wilson 1970; Norman et al. 1980; Hawley et al. 1984). However, the distinction of being the most prescient developer of fluid dynamics methods falls to Bram van Leer, who started his intellectual life as an astronomer and subsequently left the field! In an intellectual tour de force, van Leer (1974, 1977, 1979) developed a second order accurate extension to a first order accurate method by Godunov (1959). This launched the field of higher-order Godunov schemes which have gone on to become the most successful class of methods for numerically treating all manner of hyperbolic systems of partial differential equations (PDEs). Van Leer’s (1979) paper has been cited over 5000 times at the time of this writing! Higher-order Godunov methods offer robust performance over a broad range of physical conditions and for a large number of hyperbolic PDE systems. They do have their pitfalls, but their pitfalls have been well-documented in the literature and suitable fixes that overcome those pitfalls have been devised. For that reason, this review focuses on higher-order Godunov schemes. Progress in this field came rapidly on the heels of van Leer’s seminal papers. Since Godunov methods rely on Riemann solvers to provide upwinding and entropy-enforcement at discontinuities, a large number of very efficient Riemann solvers have been devised (Rusanov 1961; van Leer 1979; Roe 1981; Harten 1983; Osher and Solomon 1982; Harten et al. 1983; Colella 1985; Einfeldt 1988; Einfeldt et al. 1991; Toro et al. 1994; Batten et al. 1997; Liou et al. 1990; Liou and Steffen 1993; Liou 1996, 1998, 2006; Zha and Bilgen 1993; Ismail and Roe 2009; Toro and Vázquez-Cendón 2012; Chandrashekar 2013; Dumbser and Balsara 2016). It was also soon realized that higher-order Godunov methods achieve their stability because they restrict the reconstructed profiles within each zone so as to avoid producing spurious extrema. This gave rise to the emergence of total variation diminishing (TVD) schemes (Harten 1983; Sweby 1984; Tadmor 1988) which used piecewise linear reconstructed profiles within each zone. Inclusion of parabolic reconstruction profiles, instead of linear ones, gave rise to the piecewise parabolic method (PPM) (Woodward and Colella 1984; Colella and Woodward 1984; Colella and Sekora 2008; McCorquodale and Colella 2011). PPM has proved to be very popular with astronomers because it gives reasonably good quality solutions at a modest computational cost.

The PPM method introduced the idea of “reconstruction by primitive” which subsequently formed an integral part of essentially non-oscillatory (ENO) schemes (Harten et al. 1986; Shu 1988; Shu and Osher 1989). ENO schemes provided a pathway to increasingly high orders of accuracy. However, the early ENO schemes had their own deficiencies owing to the sudden shifts in the reconstruction stencil (Rogerson and Meiburg 1990). With the advent of weighted essentially non-oscillatory (WENO) schemes a natural path was found for designing schemes of increasingly order accuracy (Liu et al. 1994; Jiang and Shu 1996; Friedrichs 1998; Balsara and Shu 2000; Levy et al. 2000; Deng and Zhang 2005; Käser and Iske 2005; Henrick et al. 2006; Dumbser and Käser 2007; Borges et al. 2008; Shu 2009; Gerolymos et al. 2009; Castro et al. 2011; Liu and Zhang 2013; Zhu and Qiu 2016; Balsara et al. 2016c; Cravero and Semplice 2016; Semplice et al. 2016). WENO schemes will form an important fraction of this review, partly because of their intrinsic interest and partly because of their role as limiters for the DG schemes that we will introduce very shortly. A WENO scheme spatially reconstructs all the moments (except the 0th moment) of an \(\hbox {M}\)th order polynomial so as to provide \((\hbox {M}+1)\)th order of spatial accuracy.

The observant reader may well ask whether all of these moments can be reasonably reconstructed? The quick answer is that indeed they can be reconstructed. However, one can still ask whether there is a way of evolving all these moments consistent with the dynamics? This is where discontinuous Galerkin (DG) schemes step in because they give us a logical way of evolving all the higher moments in a way that is consistent with the dynamics. Let us consider a simple example that enables us to compare and contrast WENO schemes with DG schemes. A fourth order CWENO (centered WENO) scheme would reconstruct the linear, parabolic and cubic moments at each timestep while evolving only the zone averaged value of the flow variable (i.e., the zeroth moment) at each timestep. On the other hand, a fourth order DG scheme would use a Galerkin projection procedure to develop evolutionary equations for the evolution of not just the zeroth moment, but also the first, second and third moments (i.e., the linear, parabolic and cubic terms in one dimension). These additional evolutionary equations can be designed consistent with the governing PDE (i.e., the underlying dynamics). The reader can now appreciate why a third order DG scheme would be more accurate than its WENO counterpart. This advantage persists at all orders.

Having obtained an intuitive background on DG schemes, let us now document the history of these schemes. DG methods occupy an intermediate place between full Galerkin/Spectral methods which assume that the solution is described by a basis set that extends over the whole domain (think of a Fourier method) and a finite volume TVD/PPM/WENO method which assumes that the solution is specified by slabs of fluid within each zone at the beginning of each timestep. In a DG method, the solution is specified as having a certain number of moments within each zone at the beginning of each timestep. DG schemes were initially invented for solving neutron transport problems (Reed and Hill 1973). Understanding how to incorporate many of the nicer features of finite volume methods in DG schemes took over a decade of development. Cockburn and Shu (1989) made the first breakthrough for scalar hyperbolic conservation laws with the following three advances. First, by endowing each element (zone) with an \(\hbox {M}\)th order polynomial, they were able to show that \((\hbox {M}+1)\)th order of spatial accuracy could be achieved. Second, to match the spatial accuracy, they proposed the use of an \((\hbox {M}+1)\)th order Runge–Kutta timestepping for the time evolution. Third, they generalized a slope limiter method to yield TVB (total variation bounded) limiting. Extension to systems and to multiple dimensions came in Cockburn et al. (1989) and Cockburn et al. (1990) and Cockburn and Shu (1998) where it was realized that fluxes from Riemann solvers could be used at zone boundaries in order to provide upwinding and to stabilize the scheme.

The DG methods have the following four significant advantages which make them attractive for computational astrophysics: (i) DG methods of arbitrarily high order can be formulated. (ii) DG methods are highly parallelizable. (iii) DG methods can handle complicated geometries. (iv) DG methods take very well to adaptive mesh refinement (AMR). Furthermore, the degree of the approximating polynomial can be easily changed from one element to the other. The former spatial refinement is often referred to as h-adaptivity, where “h” stands for the size of a cell. The adaptivity in the approximating polynomial is referred to as p-adaptivity, where “p” stands for order of the approximating polynomial. As a result, while simpler finite volume methods can undergo h-adaptivity on an AMR mesh, a DG scheme has the potential to undergo hp-adaptivity (Biswas et al. 1994). For other reviews of DG schemes, see Cockburn et al. (2000), Hesthaven and Warburton (2008). As of this writing, DG schemes have begun to make inroads in computational astrophysics, cosmology and general relativity (Mocz et al. 2014; Schaal et al. 2015; Zanotti et al. 2015; Teukolsky 2015; Kidder et al. 2017; Balsara and Käppeli 2017; Balsara and Nkonga 2017).

We will examine DG schemes in the course of this review. Like all numerical schemes for treating non-linear hyperbolic systems, DG schemes need some form of non-linear limiting. Indeed, the quality of a DG scheme depends strongly on the limiter that is being used. If the limiter is invoked too frequently, it damages the quality of the solution. If the limiter is invoked less than it needs to be invoked, the code develops spurious oscillations that have a negative effect on the solution. Several limiters have been presented over the years (Biswas et al. (1994); Burbeau et al. (2001); Qiu and Shu (2004, 2005); Balsara et al. (2007); Krivodonova (2007); Zhu et al. (2008); Xu et al. (2009a, b), c; Xu and Lin 2009; Xu et al. 2011; Zhu and Qiu 2011; Zhong and Shu 2013; Zhu et al. 2013; Dumbser et al. 2014). The problem is that there has been no coalescence of consensus around any one particular limiter. For that reason, we will present two viable strategies for limiting DG schemes. The first strategy is based on WENO limiting; it is simple to retrofit into any pre-existing DG code and seems to work well (Zhong and Shu 2013; Zhu et al. 2013). This WENO limiter acts in an a priori fashion in the sense that the limiter is applied to troubled zones that need limiting *before* (at the beginning of) taking a DG timestep. Since limiters are applied at the beginning of taking a timestep in all other schemes for solving hyperbolic PDEs, this is the traditional style of using limiters. That makes the WENO limiter for DG schemes easy to retrofit into pre-existing codes. The other approach consists of the MOOD (Multi-dimensional Optimal Order Detection) method (Clain et al. 2011; Diot et al. 2012, 2013; Dumbser et al. 2014). The MOOD limiter is an *a posteriori* limiter in the sense that one initially takes a timestep without invoking any limiter. As a result, some of the zones that should have been limited will indeed be corrupted by the end of a timestep. *After* the timestep has been taken one identifies the corrupted zones, i.e., the zones where a limiter should have been invoked (but wasn’t). Then one tries to backtrack and redo the timestep in those zones that got corrupted. This process of backtracking and redoing can indeed take place more than once. Needless to say, MOOD limiting results in a DG code that is recursive and difficult to implement. The one virtue of MOOD limiting for DG is, however, that one only invokes the limiter in those zones where it is absolutely needed. Unlike the WENO limiter, which may apply more limiting than the absolute minimum that is needed, MOOD limiting will usually apply just the minimum amount of limiting. Since the MOOD limiter is based on heuristics, one cannot however claim that it always applies the minimum amount of limiting. On idealized problems, MOOD limiting for DG schemes has produced charming results.

As the order of accuracy of a DG scheme is increased, the permissible CFL decreases (Zhang and Shu 2005; Liu et al. 2008). The previous two citations showed this for zone-centered DG methods that apply to conservation laws. An analogous reduction in permissible timestep occurs for face-centered DG schemes for constrained transport (CT) of the magnetic field (Yang and Li 2016; Balsara and Käppeli 2017). To give but one example, the permissible CFL number for a DG scheme that is fourth order accurate in space and time can be as small as 0.14! For this reason, we invented PNPM methods (Dumbser et al. 2008). The PNPM scheme evolves an \(\hbox {N}\)th order spatial polynomial, while reconstructing higher-order terms up to \(\hbox {M}\)th order. Let us consider fourth order methods as an example. A P0P3 method is fourth order accurate and is effectively a fourth order finite volume scheme with a maximum CFL number of 1.0 in one-dimension. A P1P3 method evolves the zone averaged value as well as the first moment, while reconstructing the second and third moments. It has a maximum CFL number that is comparable to a second order in space and time DG method of 0.33. A P2P3 scheme evolves the zone averaged value as well as the first and second moments, while reconstructing the third moments. It has a maximum CFL number that is comparable to a third order in space and time DG method of 0.17. A P3P3 method is basically a fourth order DG method with a CFL of 0.10 when spatial and temporal accuracies are matched. We see, therefore, that it might be beneficial to use PNPM schemes with \(\hbox {N<M}\). Experience has shown that P1PM or P2PM schemes often give most of the sought-after accuracy of a PMPM scheme. This has been borne out via numerical experiments in Dumbser et al. (2008) for conservation laws and in Balsara and Käppeli (2017) for DG schemes for constrained transport of magnetic fields. For this reason, PNPM schemes will also form part of our study.

At least for now, the mesh structures used in computational astrophysics are simple, though there is also an emerging interest in methods that use Voronoi tessellations and Delaunay triangulations in astrophysics (Springel 2010; Vogelsberger et al. 2012; Florinski et al. 2013; Balsara and Dumbser 2015a, b; Mocz et al. 2014; Xu et al. 2016). For that reason, we will focus this version of the Living Review on structured meshes.

### 1.3 Numerical methods for higher-order temporal accuracy

Unlike the plethora of numerical methods for achieving higher-order spatial accuracy, the methods for achieving high order of temporal accuracy are somewhat fewer. The most popular methods these days split into two dominant styles. There are the Runge–Kutta methods and the ADER (Arbitrary DERivative in space and time) methods. We briefly introduce them in the two succeeding paragraphs and we will describe them in detail later on in this review.

Runge–Kutta (RK) methods rely on discretizing the PDE in time in a fashion that is quite similar to the temporal discretization of an ordinary differential equation (ODE). The Runge–Kutta discretization of a time-dependent ODE splits the time evolution into a sequence of stages, each of which is only first order in time. The entire sequence of stages does indeed retain the desired order of temporal accuracy. In a similar fashion, the Runge–Kutta discretization of a time-dependent PDE also splits the time evolution into a sequence of stages. Each individual stage is high order accurate in space, but only first order accurate in time. As before, the entire sequence of stages does indeed retain the designed temporal accuracy. One almost always wants each stage to be non-oscillatory or even TVD. The strong-stability preserving (SSP) variant of RK methods guarantee that if each stage is TVD then the entire scheme will be TVD. As a result, these methods are known as RK-SSP methods. Such methods are available for treating hyperbolic systems without stiff source terms (Shu 1988; Shu and Osher 1989; Shu 1988; Gottlieb et al. 2001; Spiteri and Ruuth 2002, 2003; Gottlieb 2005; Gottlieb et al. 2011) and also hyperbolic systems with stiff source terms (Pareschi and Russo 2005; Hunsdorfer and Ruuth 2007; Kupka et al. 2012). These methods tend to be popular because each stage is practically identical to the previous stage, resulting in a simple implementation. For that reason, we will describe some of the most popular SSP-RK methods in this review.

While simplicity is the strong suit of RK-SSP methods, many of the steps in a multi-stage RK method are unnecessary. Consider the example of a three stage RK scheme, it requires the reconstruction to be done thrice and also the Riemann solvers to be invoked thrice. ADER schemes present a better alternative where the reconstruction is only done once and the Riemann solvers are invoked a fewer number of times. As a result, ADER schemes are computationally less expensive. Modern ADER schemes derive from two alternative antecedents. On the one hand, there is the generalized Riemann problem (GRP) (van Leer 1979; Ben-Artzi 1989; LeFloch and Raviart 1988; Bourgeade et al. 1989; Ben-Artzi and Birman 1990; Ben-Artzi and Falcovitz 1984, 2003; LeFloch and Raviart 1988; Qian et al. 2014; Goetz and Iske 2016 and Goetz and Dumbser 2016; Goetz et al. 2017) which seeks to understand the evolution of the Riemann problem when the flow variables on either side of it have linear or quadratic variation in space. One strain of ADER schemes derive from the development of the GRP (Titarev and Toro 2002, 2005; Toro and Titarev 2002; Montecinos et al. 2012; Montecinos and Toro 2014). Another strain of ADER schemes derive from the second order Lax-Wendroff procedure (Lax and Wendroff 1960; Colella 1985) and its higher-order extensions (Harten et al. 1987). Modern ADER schemes that stem from the Lax-Wendroff procedure rely on a very efficient Galerkin projection to iteratively solve the Cauchy problem within each zone (Dumbser et al. 2008; Balsara 2009; Balsara et al. 2013; Dumbser et al. 2013; Balsara and Kim 2016). In other words, given all the spatial moments of the reconstruction within a zone up to some level of spatial accuracy, the ADER predictor step tells us how the solution within that zone will evolve forward in time with a comparable accuracy in space and time. Modern ADER schemes of the latter type are easy to implement and converge very fast. Indeed, it can be proved that the ADER methods are convergent with or without stiff source terms (Jackson 2017). This makes them much more efficient in comparison to SSP-RK methods (Balsara et al. 2013). For that reason, we will focus on ADER methods in this review.

### 1.4 Brief background on hyperbolic systems

*M*-component conservation law

*M*” conserved variables and F(U) and G(U) are the corresponding fluxes in the

*x*and

*y*-directions. The conservation law is hyperbolic for

*x*-directional variations if we can write

*R*and

*L*are a complete set of right and left eigenvectors. For multidimensional problems, we want a similar set of real eigenvalues to exist regardless of the direction in which we analyze the hyperbolic nature of the conservation law. In practical terms, it implies that a similar characteristic decomposition can be made for the matrix \(\hbox {B }\equiv ~{\partial \hbox { G}\left( \hbox {U} \right) }/{\partial \hbox { U}}\). Equations (1) can be discretized in a finite volume fashion on a mesh. Let the mesh be uniform with zones of size \(\Delta x\) and \(\Delta y\) in the two directions. Let (

*i*,

*j*) denote the zone centers of the mesh and (\(i+1/2,j)\) and (\(i,j+1/2)\) denote the centers of the x and y-faces of the mesh as shown in Fig. 1. Numerically evolving Eq. (1) entails taking a time step of size \(\Delta t\) which takes us from a time \(t^{n}\) to a time \(t^{n+1}=t^{n}+\Delta t\) as

*M*-component linear hyperbolic system in one dimension is equivalent to the scalar advection of

*M*characteristic variables as follows

*m*th eigenvalue, \(l^{m}\) is the

*m*th eigenvector and \(w^m \) is the

*m*th characteristic variable. For non-linear hyperbolic systems, we are not quite so lucky. Equation (5) is not globally true, even in one dimension. However, we will see that the characteristic decomposition that is available within each zone can be used to make a local version of Eq. (5) which holds true for one time step within a zone. We will see that local characteristic decompositions can be used with good effect in numerical schemes. The monotonicity preserving reconstruction produces jumps at zone boundaries. A physically consistent way of resolving the jumps is through the Riemann problem. The Riemann problem simultaneously gives us an upwinded solution that also satisfies an entropy principle. The dissipation provided by the Riemann problem was seen to be essential for treating discontinuities in conservation laws. Extensive references to the Riemann problem were given in the Introduction, and more information is available in Chapters 4, 5 and 6 of the author’s website. A large compendium of Riemann solvers is also described in the book by Toro (2009). Monotonicity preserving reconstruction as well as the Riemann problem will be used as building blocks when constructing successful schemes for the numerical solution of hyperbolic conservation laws.

The present review follows a certain line of development for the solution of hyperbolic conservation laws. The schemes catalogued here are called *higher-order Godunov schemes* and are by far the most popular and well-developed solution methodology for this class of problem. Such schemes are robust and can handle shocks of almost any strength. They are relatively fast and work well in multi-dimensions, making them the workhorse of choice. In their essentials, they do not rely on any adjustable parameters, though various means for improving the solution quality are well known. Because these methods have seen extensive development and use, the instances where they have deficiencies are well-known (Quirk 1994) and good workarounds have been developed. There are, however, interesting alternatives that each have their selling points. *Flux corrected transport* schemes (Boris and Book 1976; Zalesak 1981; Oran and Boris 1987) are an interesting forerunner of higher-order Godunov schemes that have been used with success for reactive flow. *Central schemes* (Swanson and Turkel 1992; Levy et al. 2000; Kurganov and Tadmor 2000; Kurganov et al. 2001) use ideas on upwinding from Godunov schemes but bypass the use of the Riemann solver. While their use of a dual mesh increases the programming complexity, bypassing the Riemann problem may be desirable when the Riemann problem is computationally expensive. *Spectral schemes* (Canuto et al. 2007; Gottlieb and Orzag 1977) offer high accuracies for problems with simple geometries and boundary conditions in the smooth part of the flow. *Compact schemes* (Lele 1992) offer low dispersion error and have proved useful for turbulence research. *Wavelet-based schemes* for solving PDEs rely on the fast wavelet transform (Daubechies 1992). They have also reached a level of maturity where they can adaptively solve certain CFD problems to a desired level of accuracy (Rastigejev and Paolucci 2006; Zikoski 2011). Any such list of worthy numerical methods will always be incomplete, so we beg the reader’s indulgence for any omissions.

Many of the popular astrophysics codes have focused on second order of accuracy, though we have often alluded to the advantages of schemes with higher-order accuracy. Explaining and understanding a second order scheme is pedagogically simple. As a result, we will briefly open some of the sections in this review with a second order variant of a Godunov scheme. However, robust higher-order Godunov schemes that go well beyond second order accuracy are now commonplace. For that reason, we also present methods that go beyond second order. Conceptually, the design and implementation of any scheme that goes beyond second order requires one to pay careful attention to the same set of issues. For this reason, we will instantiate the schemes at third order. A student who understands the issues at third order will find it easy to go beyond third order if needed. The relevant literature base for schemes that go beyond second order is also cited in the text.

It is assumed that the reader is familiar with the eigenstructure of the hyperbolic systems being considered. However, Appendix A gives a thorough discussion of the eigenstructure for the Euler equations. Appendix B gives a similarly thorough discussion of the eigenstructure for the MHD equations and points out some of the nuances in understanding the eigenstructure of this much larger and more complicated hyperbolic system. Appendix C briefly mentions the RHD and RMHD equations and gives pointers to the literature. Usually, an exposure to the eigenstructure for one or two hyperbolic systems is sufficient to give the reader the gist of the idea; and the Euler and MHD equations are the two equations we discuss in Appendices A and B. It is also assumed that the reader has some working familiarity with Riemann solvers. However, Appendix D gives a quick introduction to the HLL Riemann solver. Appendix E gives a practical, implementation-oriented sketch of the HLLI Riemann solver (Dumbser and Balsara 2016), which can indeed be applied to any hyperbolic system with exceedingly good results. Because of its extreme simplicity and generality, as well as its ability to give superb results at a very low computational cost, it is hoped that the HLLI Riemann solver will become a workhorse in computational astrophysics. The author’s website also provides codes that encapsulate a wide array of Riemann solvers for Euler and MHD flow and the interested reader can use the codes to intercompare different Riemann solvers and assess their relative strengths and weaknesses.

This review can be read in different ways depending on the reader’s learning goals. If the learning goal is to become familiar with second order schemes, which tend to be simpler, then one can get by with the following sections: 2.1 on TVD reconstruction, 4.1 and 4.2 on second order Runge–Kutta timestepping, 5.1 on second order predictor–corrector schemes and 8 for numerical examples. Of course, one should also read the introductory parts of the sections that lead into the above-mentioned subsections. The reader who wants to make a quick, first pass through this review may well want to take in just the previously mentioned subsections. The rest of Sect. 2 as well as all of Sect. 3 make a thorough study of PPM and WENO reconstruction strategies. The rest of Sects. 4 and 5 give details on making efficient implementations of higher-order Runge–Kutta and ADER timestepping respectively. Discontinuous Galerkin schemes also see extensive use in several computational areas and are, therefore, discussed in Sect. 6. As the emphasis shifts to simulations with greater fidelity, the issues of positivity discussed in Sect. 7 assume greater importance and should be incorporated into codes. Sects. 8 and 9 provide accuracy analysis and the results of several stringent test problems that use the methods described here. Section 10 draws some conclusions.

## 2 Reconstructing the solution for conservation laws—Part I: TVD and PPM reconstruction

At the beginning of a time step, most higher-order Godunov schemes start with a mesh function that is made up of the zone-averaged conserved variables as prescribed on a mesh. The conserved variables are evolved for a timestep using Eq. (3). Taking several timesteps, each of which is bounded by the CFL number, enables us to evolve the conservation law in time. Some higher-order Godunov schemes retain and evolve higher-order moments of the mesh function within each zone (van Leer 1979; Cockburn and Shu 1989; Cockburn et al. 1989; Cockburn and Shu 1998; Lowrie et al. 1995; Cockburn et al. 2000; Qiu and Shu 2004, 2005; Schwartzkopff et al. 2004; Balsara et al. 2007; Dumbser et al. 2008; Xu et al. 2009a, b). For such schemes, known as *discontinuous Galerkin* schemes, the conserved variables, as well as all their higher moments, are evolved in time. However, in the interest of reducing the memory footprint, most schemes simply idealize the solution as a sequence of slabs of fluid within each zone. The process of endowing these slabs with a meaningful sub-structure is known as the *reconstruction* problem. By reconstructing the solution, we hope to resolve the often contradictory requirements of increasing the order of accuracy of the solution that is represented within each zone while simultaneously preventing the solution from developing spurious oscillations in the vicinity of strong discontinuities. Schemes that rely on reconstruction to endow the mesh function with sub-structure have been studied very extensively in the literature. The happy consequence is that they can be served up as a general-purpose building block for numerical treatment of hyperbolic conservation laws.

In this section, we focus on schemes which reconstruct the solution based on the TVD principles; for details, please see Chapter 3 of the author’s website. In the next section, we will focus on schemes that refrain from truncating local extrema when it is justified. The PPM scheme discussed in this section straddles these two design philosophies since the modern versions of PPM indeed do not truncate local extrema.

### 2.1 TVD reconstruction in conserved, primitive, or characteristic variables

*Piecewise linear (TVD) reconstruction*in the context of linear hyperbolic systems has been explained in detail in Chapter 3 of this author’s website. On a two dimensional mesh, like the one shown in Fig. 1, we want the solution vector in each zone (

*i*,

*j*) to have a piecewise linear variation in each direction. Consequently, at some time \(t^{n}\) in the zone (

*i*,

*j*) we start with a zone-averaged solution vector \({\overline{{\mathrm{U}}}}_{i,j}^n \), and such solution vectors are specified in all zones. Obtaining a piecewise linear reconstruction in each zone means that we want the mesh function \(\left\{ {{\overline{{\mathrm{U}}}}_{i,j}^n } \right\} \) to have linear variation as follows

*i*,

*j*) and \(\left( {\tilde{x},\tilde{y}} \right) \in \left[ {-1/2,1/2} \right] \times \left[ {-1/2,1/2} \right] \) are local coordinates that we define in the same zone. The vectors \(\Delta _x {\overline{\hbox {U}}}_{i,j} \) and \(\Delta _y {\overline{\hbox {U}}}_{i,j} \) hold the piecewise linear variation of the mesh function within the zone (

*i*,

*j*). The three ways to carry out this piecewise linear reconstruction that are explored in this section are, reconstruction in the conserved variables, reconstruction in the primitive variables and reconstruction in the characteristic variables. Each has its strengths and uses and we catalogue them below.

*m*th component of the vector \({\overline{\hbox {U}}}_{i,j}^n \). (The superscript “

*n*” from \({\overline{\hbox {U}}}_{i,j}^n \) is being dropped in \(\overline{{u}}_{i,j}^m \), because the components are only being considered at a given time.) Then piecewise linear

*reconstruction of the conserved variables*simply consists of specifying \(\Delta _x \overline{{u}}_{i,j}^m \) and \(\Delta _y \overline{{u}}_{i,j}^m \) in the ensuing formula

*Limiter*(a,b)” denote any slope limiter, where “a” and “b” are the left and right-biased slopes. (The box at the end of this subsection provides a smorgasbord of limiters!) The easiest way to achieve our goal is to limit the variation in each of the components of \({\overline{\hbox {U}}}_{i,j}^n \) as follows

In some problems, like fluid dynamics, a premium is placed on retaining positive densities and pressures in the reconstruction. In such situations, it helps to reconstruct the profile within a zone using the primitive variables. Let \(\hbox {V}_{i,j}^n \) denote the vector of primitive variables that is obtained from the vector of conserved variables \({\overline{\hbox {U}}}_{i,j}^n \). Let \(v_{i,j}^m \) denote the *m*th component of the vector \(\hbox {V}_{i,j}^n \). *Reconstruction of the primitive variables* is then trivially obtained by setting \(\overline{{u}}\rightarrow v\) in Eqs. (7) and (8).

For some problems it is very beneficial to resort to piecewise linear *reconstruction of the characteristic variables*. To see this, notice from Eq. (5) that the system decomposes into a set of scalar advection problems only when the problem is decomposed in characteristic variables. Thus limiting on the characteristic variables is conceptually well justified. The other two forms of limiting, i.e., componentwise limiting on the conserved or primitive variables, are not as well justified. Furthermore, different wave families may have different properties; some may be linearly degenerate (e.g., contact discontinuity in Euler flow) while others may be genuinely non-linear (shocks in Euler flow). In order to devise a good solution strategy, different families of waves may have to be limited slightly differently. For example, the profile of a discontinuity in a linearly degenerate wave family may need to be sharpened. This can be accomplished by using a compressive limiter. Because of their tendency to self-steepen, genuinely non-linear wave families do not need any such improvement; consequently, a less compressive limiter might be appropriate for such wave families. However, it is worth recalling that if the hyperbolic system is non-convex, as is the case for MHD and RMHD, the non-linear wave families might give rise to their own further pathologies (Ibanez et al. 2015).

Reconstructing the characteristic variables is a little more intricate. Notice from Eq. (5) that for a linear problem, the left and right eigenvectors as well as the eigenvalues are constant. As a result, the characteristic equation, \(w_t^m + \lambda ^{m}~w_x^m =0\), is valid at all points along the *x*-axis. For a nonlinear problem, the eigenvalues as well as the eigenvectors depend on the solution \({\overline{\hbox {U}}}_{i,j}^n \) within a zone, and they change as the solution changes in time. However, we can still make a local linearization around a given state, and for zone (*i*, *j*) that state is \({\overline{\hbox {U}}}_{i,j}^n \). Thus the *m*th eigenvalue can be written as \(\lambda ^{m}\left( {{\overline{\hbox {U}}}_{i,j}^n } \right) \) and the *m*th left and right eigenvectors are written as \(l^{m}\left( {{\overline{\hbox {U}}}_{i,j}^n } \right) \) and \(r^{m}\left( {{\overline{\hbox {U}}}_{i,j}^n } \right) \) respectively. The dependence of the eigenvectors on the solution \({\overline{\hbox {U}}}_{i,j}^n \), around which we linearize the problem, has been made explicit. Any solution vector, even the ones from the zones that are to the right or left of the zone (*i*, *j*), can now be projected into the eigenspace that has been formed by the eigenvectors that are defined at the zone of interest. To make it explicit, please realize that the set of left eigenvectors in zone \(\left( {i+1,j} \right) \), given by \(\left\{ {l^{m}\left( {{\overline{\hbox {U}}}_{i+1,j}^n } \right) :m=1,\ldots ,M} \right\} \), will not be orthonormal with the set of right eigenvectors in zone \(\left( {i,j} \right) \), given by \(\left\{ {r^{m}\left( {{\overline{\hbox {U}}}_{i,j}^n } \right) :m=1,\ldots ,M} \right\} \). Consequently, because of the solution-dependence in the eigenvectors, we realize that each zone defines its own local eigenspace. We want to project the characteristic variables from the neighboring zones in the local eigenspace of the zone that we are considering.

*x*-variation; the

*y*-variation can be obtained in an analogous fashion. We describe the process of making a characteristic reconstruction in three easy steps. First, for a TVD reconstruction we only need the two neighboring characteristic variables in addition to the central one. So we can use the left eigenvector \(l^{m}\left( {{\overline{\hbox {U}}}_{i,j}^n } \right) \) from the zone (

*i*,

*j*) to locally project the characteristic variables in the

*m*th characteristic field as

*L*”, “

*C*” and “

*R*” refer to the zone that is left of the central zone, the central zone itself and the zone that is right of the central zone. This has to be done for all the characteristic fields in zone \(\left( {i,j} \right) \). Second, the local

*x*-variation in the

*m*th characteristic field can now be written as

*x*-variation in the mesh function can now be obtained by projecting the variation in the characteristic fields into the local space of right eigenvectors \(r^{m}\left( {{\overline{\hbox {U}}}_{i,j}^n } \right) \) in the zone (

*i*,

*j*) as follows

*entropy enforcement*than componentwise limiting on the conserved or primitive variables. In other words, when the initial conditions have arbitrary discontinuities, those discontinuities will be most rapidly resolved into their entropy-satisfying simple wave solutions if characteristic limiting is used. This completes our description of characteristic limiting for TVD schemes.

It is also useful to point out that the PPM and WENO limiting that follow in the next two subsections require larger stencils. In that case, Eq. (9) can be extended to a stencil that includes more than just the immediately neighboring zones. For example, if we have a five zone stencil centered around zone (*i*, *j*), we would include the characteristic variables \(l^{m}\left( {{\overline{\hbox {U}}}_{i,j}^n } \right) \cdot {\overline{\hbox {U}}}_{i-2,j}^n \) and \(l^{m}\left( {{\overline{\hbox {U}}}_{i,j}^n } \right) \cdot {\overline{\hbox {U}}}_{i+2,j}^n \) in Eq. (9).

### 2.2 Going beyond piecewise linear reconstruction: piecewise parabolic (PPM) reconstruction

The desire to improve on piecewise linear reconstruction drove the development of the *piecewise parabolic method* (PPM) (Colella and Woodward 1984; Colella and Sekora 2008; McCorquodale and Colella 2011). An excellent review of PPM has been provided by Woodward (1986) and several stringent test problems for compressible fluid flow have been documented in Woodward and Colella (1984). In this subsection, we document the classical formulation of PPM from Colella and Woodward (1984), while leaving recent extensions (McCorquodale and Colella 2011) for the reader’s self-study. It is also interesting to point out that PPM is a forerunner of a class of schemes (Leonard et al. 1995; Suresh and Huynh 1997) that attempt to produce a higher-order reconstructed profile within a zone and then use neighboring zones to endow the profile with monotonicity preserving properties.

*i*” which spans \(x\in [-\,0.{5},0.{5}]\). The mesh function is shown with dashed lines in Fig. 3a. A third order, i.e., parabolic, reconstruction in the

*i*th zone, centered at

*x*= 0, is most easily enforced by using Legendre polynomials as follows

*i*th zone is given by \(\overline{{u}}_i \). In PPM, one focuses on the values of the interpolated function at the zone boundaries. Thus for the zone being considered, we have the right and left extrapolated edge values of the parabolic profile defined by \(u_{i;R} \) and \(u_{i;L} \), see Fig. 3a. Along with the mean value \(\overline{{u}}_i \), these three values uniquely specify the parabolic profile in Eq. (12) so that for each zone we have

*reconstruction via primitive function*. It is the standard method for obtaining higher-order reconstructions. The resulting value of \(u_{i;R} \) can be easily obtained from \(q\left( {x=0.5} \right) \) and we write it in two illustrative formats below.

*i*”, “\(i+1\)” and “\(i+2\)” introduce new extrema in the reconstructed profile. The first, and most natural, enforcement of a monotonicity condition indeed consists of requiring that the zone average \(\overline{{u}}_i \) must stay within \(\hbox {min}\left( {u_{i;L} ,u_{i;R} } \right) \) and \(\hbox {max}\left( {u_{i;L} ,u_{i;R} } \right) \). I.e., we require that the parabolic profile should not introduce new extrema. When such a condition is applied to the zone “\(i+2\)”, we see from Fig. 3b that the reconstructed profile would be immediately flattened. This is borne out in Fig. 3c. Thus the first condition for enforcing monotonicity that we apply to all the zones is given by

*i*” and “\(i+1\)” in Fig. 3b would be unaffected by the above condition. These two zones do have new extrema within them that were not present in the original profile. To diagnose the extrema that are introduced in those two zones, we have to realize that Eq. (12) has its extremum at \(x_e =-{\hat{{u}}_x }/{\left( {~2~\hat{{u}}_{xx} } \right) }\). Thus the reason we see a new extremum in the zone “

*i*” which is centered at

*x*= 0 stems from the fact that \(-0.5<-{\hat{{u}}_x }/{\left( {~2~\hat{{u}}_{xx} } \right) }<0.5\) for that zone. In other words, if one detects the existence of a new extremum within a zone then one should be willing to reduce the curvature, \(\left| {\hat{{u}}_{xx} } \right| \), of the parabola within that zone. I.e., if \(x_e \) is negative then reducing \(\left| {\hat{{u}}_{xx} } \right| \) without changing the sign of \(\hat{{u}}_{xx} \) will eventually shift the extremum past \(x=-0.5\); if \(x_e \) is positive then reducing \(\left| {\hat{{u}}_{xx} } \right| \) without changing the sign of \(\hat{{u}}_{xx} \) will eventually shift the extremum past \(x=0.5\). For the zone “

*i*” under consideration, reducing \(\left| {\hat{{u}}_{xx} } \right| \) will immediately cause the maximum or the minimum of the parabola to lie outside (or at the boundary of) the domain \([-\,0.5,0.5]\). Colella and Woodward (1984) provide closed-form expressions that detect when the curvature needs to be reduced for a parabolic profile. When such a reduction in the curvature is deemed necessary, they also provide explicit formulae for reducing the curvature by modifying one or the other edge extrapolated states. We repeat those formulae here. Consequently, the second condition for enforcing monotonicity, which is also applied to each of the zones, is given by

*i*th zone has been shifted to its left boundary while the minimum of the (\(i+1)^{\mathrm{th}}\) zone is shifted to its right boundary. For each zone, we can use the extrapolated right and left edge values along with the zone average in Eq. (13) to obtain the final, reconstructed parabolic profile, i.e., Eq. (12).

Notice that the final piecewise parabolic reconstruction in Fig. 3c has jumps at the zone boundaries that represent a discontinuity. If the discontinuity represents a jump in a linearly degenerate wave field then it is desirable to minimize the jumps, and therefore the dissipation, at zone boundaries. Figure 3d shows the piecewise linear profile that one obtains by applying an MC limiter to the same mesh function. We see that the jumps at zone boundaries in Fig. 3d are much larger than those in Fig. 3c. As a result, PPM represents contact discontinuities in fluid flow much better than its piecewise linear cousins. If the discontinuity is a shock then the Riemann solver will be able to introduce additional dissipation to stabilize the shock. By virtue of its being a monoticity preserving scheme, PPM does indeed introduce the requisite jumps in flow variables at zone boundaries. However, for a strong shock, the jumps at zone boundaries may be less than the amount that is needed to fully stabilize the shock. As a result, proper treatment of a strong shock in PPM requires a flattener algorithm (Colella and Woodward 1984). By locally detecting the existence of a shock and flattening the flow profiles at the shock, one increases the jumps at zone boundaries and, therefore, the local dissipation. We will learn more about this in the next section. This completes our description of PPM reconstruction.

## 3 Reconstructing the solution for conservation laws—Part II: WENO reconstruction

The previous section has shown us that reconstructing the solution from a given mesh function is an intricate problem and can have a great deal of bearing on the quality of our numerical solution. In his early paper, van Leer (1979) had anticipated that it might be possible to reconstruct the solution with better than second order accuracy leading to schemes that go beyond second order. Indeed, the PPM scheme of Colella and Woodward (1984) was a step in that direction. The original PPM scheme was restricted to second order accuracy by the use of a monotonicity preserving limiter (Woodward 1986) and subsequent variants of PPM, see McCorquodale and Colella (2011), represent an effort to go beyond second order accuracy. We, therefore, see that the limiters that provide stability at discontinuities by enforcing the TVD property also restrict the accuracy of the numerical method. The limiter simply clips local extrema and, when such a limiter is applied at every time step in a long-running simulation, it degrades the accuracy of the method.

*Essentially non-oscillatory* (ENO) schemes represent an effort to go beyond second order by totally circumventing the harsher effects of TVD limiting. They are based on the realization that in order to avoid clipping extrema and thus degrading the accuracy, one has to accept a reconstruction strategy that may introduce local extrema within a zone as long as no new oscillations are introduced and as long as the solution remains numerically stable. The original ENO schemes were formulated as finite volume methods in Harten et al. (1987) and efficient finite difference versions of the same were provided in Shu and Osher (1988; 1989). The finite difference formulations have the advantage of speed when applied to uniform (or smooth), structured meshes. The finite volume schemes, while somewhat slower, are more versatile and can take well to a wide variety of structured or unstructured meshes, including adaptive meshes that change to accommodate a changing solution. Unlike TVD and PPM schemes, all of which were formulated in a small number of papers, there have been a few generations or ENO-type schemes where each generation improved on the deficiencies of the previous generation. The *weighted essentially non-oscillatory* (WENO) schemes that see modern use stem from the work of Liu et al. (1994) and Jiang and Shu (1996). WENO schemes are especially suitable for problems that simultaneously contain strong discontinuities along with complex, smooth solution features. Finite difference WENO schemes have been formulated that go up to eleventh order in Balsara and Shu (2000). Efficient finite volume formulations of WENO reconstruction are now available for structured meshes (Balsara 2009; Balsara et al. 2013) and unstructured meshes (Friedrichs 1998; Hu and Shu 1999; Dumbser and Käser 2007; Zhang and Shu 2009). For a superb review of WENO schemes, see Shu (2009). As with PPM, WENO reconstruction methods work well in strong shock situations if coupled with a good flattener algorithm (Colella and Woodward 1984; Balsara 2012b). We will introduce flatteners in Sect. 7. *Compact WENO* schemes which minimize the dispersion error (Lele 1992) have also been formulated for simulating high Mach number turbulence (Zhang et al. 2008). Shu (2009) has catalogued a plethora of science and engineering problems where WENO schemes have been used with great success.

### 3.1 Weighted essentially non-oscillatory (WENO) reconstruction in one dimension

*i*”. We are interested in the third order accurate WENO reconstruction within the central zone which spans \(x\in [-\,0.5,0.5]\). The mesh functions for each of the two profiles being considered are shown in Figs. 4 and 5 with dashed lines. We can see that the Gaussian is represented by a smoothly-varying function on the mesh while the shock is represented as a discontinuity. Let \(\overline{{u}}_{i-2} \), \(\overline{{u}}_{i-1} \), \(\overline{{u}}_i \), \(\overline{{u}}_{i+1} \) and \(\overline{{u}}_{i+2} \) denote the values of the mesh function for the zones that are centered at \(x=-2, -1, 0, 1\) and 2 respectively. A third order, i.e., quadratic, reconstruction in the central zone is most easily enforced by using Legendre polynomials as follows

*i*” and it is taken to be centered at \(x=0\). As with PPM, the linear and quadratic Legendre polynomials in the above formula provide the dual advantages of orthogonality and a zero average value. Higher-order extensions as well as multidimensional extensions of Eq. (19), with the same nice orthogonality property, are given in Balsara et al. (2009; 2013) and Balsara and Kim (2016). The problem of reconstructing the solution consists of arriving at a properly limited specification of \(\hat{{u}}_x \) and \(\hat{{u}}_{xx} \), i.e., the first and second moments of Eq. (19).

*smoothness indicators*for the reconstruction. (For a fourth order accurate WENO scheme, the smoothness indicators would include the third derivatives, and so on.) To take the example of the left-biased stencil, we define its smoothness indicator as

*non-linear weights*, \(\bar{{w}}_L \), \(\bar{{w}}_C \) and \(\bar{{w}}_R \) are given by

*linear weights*. Once the non-linear weights are obtained from Eq. (28), the final reconstructed profile in Eq. (19) is given by

For finite volume WENO schemes, it is best to aim for greater stability. One approach (Friedrichs 1998; Levy et al. 2000; Dumbser and Käser 2007) consists of emphasizing the role of the central stencil by taking \(\gamma _L =\gamma _R =1\) and setting \(\gamma _C \) in the range of 50 to 400 with \(p=4\). Such a scheme is often referred to as a *central WENO* (CWENO) scheme. In Dumbser and Käser (2007) significantly larger weights have been preferred for the central stencil. Increasing \(\gamma _C \) increases the central biasing in the scheme. I.e., for most forms of smooth flow all three stencils will have comparable smoothness indicators and we will mostly rely on the central stencil with its greater stability. The difference between \(\gamma _C \) and \(\gamma _L ,\gamma _R \) is modest. As a result, when discontinuities are present in the flow, the smoothness indicators will be vastly smaller for the stencil with the smoothest solution. In that situation Eq. (28) will select that stencil. Giving the central stencil a very large weight relative to the one-sided stencils also reduces the celerity with which a stabler one-sided stencil is chosen when the flow is non-smooth. For the extreme flows that are frequently considered in astrophysics, it might be safer to not impart too large a weight to the central stencil. Yet another approach by Martin et al. (2006) uses the linear weights to minimize the dispersion error in turbulence calculations. It has also been suggested that *p* should increase with increasing order. It is worth noting that the choices catalogued in this paragraph are most relevant to finite volume WENO schemes (the schemes of interest here), where the resulting reconstruction will only be third order accurate.

The reconstructed profile in a finite volume scheme should represent the solution at all points within the zone. In a finite difference scheme, however, we only need to evaluate the solution and its fluxes at given points on the mesh. For finite difference schemes, this opens the door to optimizing the linear weights differently so that accuracy is improved. The choice in Jiang and Shu (1996) and Balsara and Shu (2000) consists of realizing that when the flow is smooth, one can make a convex combination of the three smaller stencils to obtain a larger stencil spanning the zones \(\left\{ {i-2,i-1,i,i+1,i+2} \right\} \). For smooth flow, and with the right convex combination, the larger stencil can provide fifth order accuracy! Optimal, i.e., fifth, order of accuracy is obtained for finite difference formulations by setting \(\gamma _L =0.1\), \(\gamma _C =0.6\) and \(\gamma _R =0.3\) with a choice of \(p=2\). This can be very important for improving the accuracy of rightward propagating waves to fifth order. Mechanistically, when the flow is smooth, we have \(IS_L \cong IS_C \cong IS_R \) in Eq. (28) so that the non-linear weights \(\bar{{w}}_L \), \(\bar{{w}}_C \) and \(\bar{{w}}_R \) equal the optimal linear weights \(\gamma _L \), \(\gamma _C \) and \(\gamma _R \) respectively. When the flow is not smooth, the accuracy improvement is relinquished. Henrick et al. (2006) showed that a mapping function needs to be applied to the non-linear weights in Eq. (28) in order to circumvent a loss of accuracy at critical points, i.e., points where the first or higher derivatives can become zero. (Setting \(\gamma _L =0.3\), \(\gamma _C =0.6\) and \(\gamma _R =0.1\)maximizes the accuracy of the reconstruction at the left zone boundary. This permits leftward propagating waves to do so with fifth order accuracy, when those waves are smooth.) It is important to point out that this accuracy improvement is only most effective when considering finite difference schemes, which are not the direct point of focus here.

Notice that the final \(\hat{{u}}_x \) and \(\hat{{u}}_{xx} \) that we obtain from Eq. (29) and use in Eq. (19) have a strongly non-linear dependence on the solution. This is how WENO schemes achieve their non-linear hybridization. The solid lines in Figs. 4d and 5d show the reconstructed profiles for the Gaussian and shock profiles. We see that the reconstructed polynomial for the Gaussian follows the original Gaussian function extremely well without clipping the maximum, as well it should for a smooth profile. From Fig. 5d for the shock profile we see that the reconstructed polynomial for the *i*th zone that is centered at \(x=0\) is non-oscillatory, retains a small amount of curvature and is obtained, for the most part, from the left-biased stencil which is the only stable stencil in this problem. Comparing Fig. 5d with the analogous Fig. 3c for PPM, we see that the third order WENO reconstruction indeed produces larger jumps at shocks. Thus the WENO reconstruction indeed does provide good stabilization at shocks while leaving other extrema intact.

*r*th order accurate polynomials can be made to yield a scheme with an overall accuracy of \(2r-1\) for smooth flow. Such schemes appear in the literature under a variety of variant names like WENO-M, WENO-Z and WENO-\(\upeta \). A similar increase in accuracy can be achieved for WENO schemes on unstructured meshes (Zhang and Shu 2009). Shi et al. (2002) and Mignone (2014) also discuss the case where the mesh is non-uniform. Divergence-free WENO reconstruction of vector fields is discussed in Balsara (2004, 2009) and Balsara et al. (2013). This completes our description of WENO reconstruction in one dimension.

### 3.2 WENO reconstruction in multiple dimensions

*i*,

*j*) of the two-dimensional mesh shown in Fig. 1. Specifically, let us consider third order accurate reconstruction. The desired moments in the zone (

*i*,

*j*) are then given by

*i*,

*j*” in the moments are dropped just to keep the notation simple. We see, therefore, that a third order accurate finite volume reconstruction requires us to build all the moments that the WENO scheme from the previous section could provide us if it is applied in both the

*x*- and

*y*-directions. Thus the moments \(\hat{{u}}_x \) and \(\hat{{u}}_{xx} \) can be obtained by applying third order WENO reconstruction in the

*x*-direction. Likewise, the moments \(\hat{{u}}_y \) and \(\hat{{u}}_{yy} \) can be obtained by applying the same WENO reconstruction in the

*y*-direction. However, the moment \(\hat{{u}}_{xy} \), which represents the cross-term in the reconstruction, is still left unspecified. This term is needed for true third order accurate finite volume reconstruction.

*x*- and

*y*-directions using the dimension-by-dimension strategy outlined in the previous paragraph (Balsara et al. 2009). Assuming that this is done, we only need to specify the moment \(\hat{{u}}_{xy} \) in a WENO sense in Eq. (30). For simplicity, assume that all the zones shown in Fig. 1 have unit extent in each direction. Furthermore, assume that the origin is located at the center of zone (

*i*,

*j*). Choosing our first stencil with zones \(\left\{ {\left( {i,j} \right) ,\left( {i+1,j+1} \right) } \right\} \)and requiring the consistency condition

In this section, we have described reconstruction methods that operate on the conserved variables and reconstruct all the cross terms, Eq. (33). It is easiest to present such methods in a pedagogical introduction. However, it is useful to point the reader to approaches that use dimension-by-dimension reconstruction (McCorquodale and Colella 2011; Buchmuller and Helzel 2014; Buchmuller et al. 2016) and methods that transform from conserved to primitive variables before carrying out reconstruction in the primitive variables (McCorquodale and Colella 2011).

## 4 Evolving conservation laws accurately in time—Part I: Runge–Kutta methods

The previous sections have shown us how to reconstruct the solution vector on a computational mesh. We saw that we could achieve second order accurate reconstruction in space with piecewise linear methods. We could also construct finite volume reconstructions that went beyond second order accuracy in space. Matching these spatial reconstruction techniques with methods that allow us to achieve a corresponding temporal accuracy is the goal of this section and the next. We tackle this section in three easy parts. First, we study the general philosophy and structure of Runge–Kutta time stepping; this is done in Sect. 4.1. Second, we describe how a second order scheme is assembled with Runge–Kutta time stepping; done in Sect. 4.2. Third, we understand the changes that have to be made in going beyond second order; we instantiate them with a third order scheme with Runge–Kutta time stepping. We do this in Sect. 4.3. Runge–Kutta methods are perhaps the simplest way of achieving second and higher orders of temporal accuracy for hyperbolic problems.

### 4.1 Runge–Kutta time stepping

Not all second order Runge–Kutta methods have equally desirable attributes, especially as they apply to the TVD property. For example, if each of the stages for the improved Euler approximation is TVD then the final solution at the end of the two stages is also TVD. Unfortunately, the guarantees provided by the improved Euler approximation with respect to the TVD property only extend in their truest sense to scalar conservation laws, not to systems. However, a modified Euler approximation cannot even ensure such a TVD property for scalar conservation laws. (We have to balance this with the reality that the improved and modified Euler approximations produce results of comparable quality in practical problems.) Realize, therefore, that although several strong proofs are available for the stability properties of Runge–Kutta schemes, they are not as ironclad as one might like.

Please note that for multidimensional problems, the permitted CFL number is divided by the dimensionality of the problem. Thus the second and third order schemes in Eqs. (36) and (37) only support CFL numbers of 0.5 and 0.333 in two and three dimensions respectively. Please also recall that boundary conditions have to be applied consistently to each of the stages in Eqs. (36)–(38). SSP Runge–Kutta schemes that go beyond fourth order have also been formulated by Spiteri and Ruuth (2002, 2003), but the ones presented here are the workhorses for most practical work.

### 4.2 Second order accurate Runge–Kutta scheme

*i*,

*j*). Each of the stages of a Runge–Kutta scheme is defined at only one time level. Consequently, observe from Eq. (4) that the time-averaging of the fluxes is not needed. In Eq. (35) we can discretize the spatial parts as

*x*- and

*y*-faces of the zone (

*i*,

*j*) defined by

*i*,

*j*) of the mesh shown in Fig. 7. The left and right states needed for evaluating the Riemann problem at the top

*x*-boundary of the zone being considered, i.e., at the \(\left( {i+1/2,j} \right) \)location in Fig. 7, are given by

### 4.3 Runge–Kutta schemes at higher orders; using third order as an example

When one tries to go beyond second order, Eqs. (39) and (40) continue to be valid. As mentioned in the previous subsection, the difficulties at higher orders all arise from the integrals that have to be evaluated in Eq. (40). In order for the overall scheme to have third or fourth order of accuracy, the integrals in Eq. (40) have to be evaluated with the same order of accuracy. Let us consider the first integral in Eq. (40) which gives us the *x*-flux at the \(\left( {i+1/2,j} \right) \) zone-boundary. To evaluate the integral with third order of accuracy using numerical quadrature, we would need to obtain the numerical flux at two suitably chosen quadrature points on that boundary. (Recall the third order accurate Gauss rule for numerical quadrature.) Each such flux would require an invocation of a Riemann solver, thus requiring two rather expensive solutions of the Riemann problem. At fourth order, one would have three quadrature points, thus requiring us to solve the Riemann problem three times. Clearly, if we continued this line of development, the higher-order spatially-averaged fluxes in Eq. (40) would be very costly to evaluate because each call to the Riemann solver is itself quite expensive. Besides, three-dimensional problems would be costlier yet, since they would have even more quadrature points in each face. Clearly, a more efficient approach would be very desirable.

*quadrature free*because it avoids the use of a large number of quadrature points in the flux evaluation. It works for certain very useful classes of Riemann solvers, including the HLL, HLLC, HLLI and linearized Riemann solvers. Efficient third and fourth order approaches, with copious implementation-related details for three-dimensional structured meshes, are documented in Balsara et al. (2009, 2013). Here we present the method for the HLL Riemann solver and focus on third order of accuracy in two dimensions. Say that the conservation law has “

*M*” components. Let us start with an extension of Eq. (30), which we write for an “

*M*” component vector of conserved variables in the zone \(\left( {i,j} \right) \) as

Equation (44) is referred to as a *modal representation* in space and the vectors \({\overline{\hbox {U}}}_{i,j} \), \({\hat{\hbox {U}}}_{i,j;x} \), \({\hat{\hbox {U}}}_{i,j;y} \), \({\hat{\hbox {U}}}_{i,j;xx} \), \({\hat{\hbox {U}}}_{i,j;yy} \) and \({\hat{\hbox {U}}}_{i,j;xy} \) are called the *modes* of the reconstruction. In Eq. (44) we follow the convention that \(\left( {\tilde{x},\tilde{y}} \right) \) are the local coordinates within the zone \(\left( {i,j} \right) \) and that they are mapped to the unit square \(\left[ {-.5,.5} \right] \times \left[ {-.5,.5} \right] \). We can use Eq. (44) to obtain the entire vector of conserved variables at any location within the square. The value of the conserved variables at any specific location within the zone of interest can be evaluated using Eq. (44). The locations within the zone where the values are evaluated are called *nodes*, and the values themselves are called *nodal* values.

*x*-face at \(\left( {i+1/2,j} \right) \), we need to find the extremal wave speeds, \(\hbox {S}_L \) and \(\hbox {S}_R \), flowing in the x-direction at that zone boundary. We can obtain these speeds by evaluating Eq. (44) and its analogue from the zone (

*i*+1,

*j*) on either side of the center of the

*x*-face being considered. To make this concrete, we build the two vectors of conserved variables given by

*i*,

*j*) and (

*i*+1,

*j*) and illustrates various aspects of the construction that is catalogued here. The HLL Riemann solver at any location on the

*x*-face at \(\left( {i+1/2,j} \right) \) is written as

*x*-face of interest.

*x*-face at \(\left( {i+1/2,j} \right) \). To illustrate this explicitly, we have

*x*-boundary at \(\left( {i+1/2,j} \right) \) in Fig. 8. To be specific, we use Simpson’s rule as our third order accurate quadrature formula. Notice that the flux can only be evaluated at a quadrature point if we have the conserved variables at the same quadrature point. Equation (44) can now be evaluated at three quadrature points that lie immediately to the left of the

*x*-face at \(\left( {i+1/2,j} \right) \), as shown in Fig. 8. We then have

*x*-face at \(\left( {i+1/2,j} \right) \), as shown in Fig. 8. We then have

*x*-direction, i.e., the very same entity that we are evaluating via the first integral in Eq. (40). A similar construction can be used to make a rapid evaluation of the second integral in Eq. (40), giving us the facially-integrated HLL flux in the

*y*-direction. When this is done at all faces, we can obtain a third order accurate representation of the right hand side of Eq. (39). Using this term for each of the three stages in Eq. (37) completes our specification of a third order accurate Runge–Kutta scheme.

## 5 Evolving conservation laws accurately in time—Part II: predictor–corrector schemes

Despite their desirable simplicity, several of the tasks in a Runge–Kutta scheme have to be repeated at each internal stage. This increases the computational cost. Predictor–corrector schemes avoid some of this duplication of effort. Section 5.1 introduces predictor–corrector methods at second order. They yield the fastest schemes at second order and they also lay the foundation for ADER schemes. The formulation of higher-order ADER schemes is difficult to understand. For this reason, we do it in two easier stages in the next two subsections. Section 5.2 introduces a very simple formulation of ADER schemes in one dimension at third order. Such a formulation is analytically tractable with a little bit of basic calculus. Section 5.3 introduces ADER methods in multidimensions, casting them in the role of higher-order extensions of predictor–corrector type methods.

### 5.1 Second-order accurate predictor–corrector schemes

*nodal points*\(\left( {i+1/2,j} \right) \), \(\left( {i-1/2,j} \right) \), \(\left( {i,j+1/2} \right) \) and \(\left( {i,j-1/2} \right) \)

*within*the zone \(\left( {i,j} \right) \) that is under consideration. For example, the nodal points \(\left( {i+1/2,j} \right) \) and \(\left( {i,j+1/2} \right) \) associated with zone \(\left( {i,j} \right) \) are shown in Fig. 7. We obtain the conserved variables at those points using just the values and slopes that are internal to the zone \(\left( {i,j} \right) \). The variables \({\overline{\hbox {U}}}_{i,j}^n \), \(\Delta _x {\overline{\hbox {U}}}_{i,j} \) and \(\Delta _y {\overline{\hbox {U}}}_{i,j} \) can be thought of as the

*modes*or the

*modal values*of the solution within the zone \(\left( {i,j} \right) \). We therefore use the modal values to obtain the

*nodal values*as follows:

### 5.2 A very simple one-dimensional ADER scheme at third order

*i*th zone. We assume that third accurate spatial reconstruction has been carried out so that we start our ADER scheme with

*i*th zone is given by the time-update from the previous timestep; however, the modes \(\hat{{u}}_{i,x} \) and \(\hat{{u}}_{i,xx} \) are obtained by the third order accurate spatial reconstruction. The goal of the ADER predictor step is to predict the solution

*within*the

*i*th zone for all space-time points given by \(\left( {\tilde{x},\tilde{t}} \right) \in \left[ {-1/2,1/2} \right] \times \left[ {0,1} \right] \) in a fashion that is consistent with the governing dynamical equation given by Eq. (58). We want this time evolution to be third order accurate in space-time so that we want

*i*th zone. Now please look at Fig. 9 and observe that it has six nodal points in space-time. Three of these six nodal points have been specified at \(\tilde{t}=0\). We assert that the specification of the six modal coefficients in Eq. (60), would be completely equivalent to specifying the six nodal values in space-time as shown in Fig. 9. Realize from Eq. (58) that it is not adequate to specify the modes in Eq. (60). Because the flux is also involved in Eq. (58), we should also specify the flux \(f_i \left( {\tilde{x},\tilde{t}} \right) \) within the

*i*th zone. The flux should be obtained with comparable space-time accuracy so that we write it as

*i*th zone by asserting a system of three equations that is given by

The simple demonstration in this subsection is just meant to make the iterative ADER predictor step very accessible and easy to understand. Further information for multidimensional structured meshes is available in Balsara et al. (2009; 2013) and Dumbser et al. (2013). The iteration described in the previous two paragraphs converges very fast. For a temporally *N*th order scheme, one only needs \((\hbox {N}-1)\) steps to converge to the level of discretization error. There is even a theoretical proof (Jackson 2017) that the method converges very fast. The next subsection provides all the details for higher-order ADER schemes on multidimensional structured meshes.

### 5.3 ADER time stepping for second- and higher-order time accuracy

In the previous subsections, we saw that predictor–corrector schemes at second order can be faster than their Runge–Kutta counterparts at the same order. This efficiency is due to the fact that each predictor–corrector time step only needs one reconstruction step and one solution of the Riemann problem. The ADER schemes presented here are the more efficient counterparts of the Runge–Kutta schemes at second and higher order. The ADER methodology is a time update strategy in the same way that Runge–Kutta schemes give us a method for evolving the PDE in time. Just like Runge–Kutta schemes, ADER schemes can be used for reconstruction-based schemes as well as discontinuous Galerkin schemes. Thus one can have ADER-WENO or ADER-DG schemes, analogous to RK-WENO schemes with Runge–Kutta time stepping or RKDG schemes respectively. ADER schemes represent a very economical method for arranging the time update and recent head-to-head comparisons have shown ADER time stepping to be faster than Runge–Kutta time stepping by a factor of up to two (Balsara et al. 2013) for the same order of accuracy.

Just like WENO schemes, ADER schemes have seen a few generations of development in the literature. Methods leading up to ADER schemes have been presented by several authors (van Leer 1979; Ben-Artzi and Falcovitz 1984). The above authors focused on the *generalized Riemann problem*. It consists of realizing that any second order scheme will have piecewise linear variations in the zones to the left and right of a zone boundary. As a result, we not just have a jump at the zone boundary but also have linear variations in the fluid quantities on either side of the jump. Consequently, the Riemann problem will no longer be a similarity solution in space-time. Instead, the wave structures in the Riemann problem will curve in response to the spatially varying states that they propagate into. Titarev and Toro (2002, 2005) and Toro and Titarev (2002) found a method for extending the generalized Riemann problem to higher orders and coined the ADER acronym. As a result, the left and right states could have any sort of polynomial variation at the zone boundary. Modern ADER schemes have been formulated more in the style of predictor–corrector schemes (Dumbser et al. 2008; Balsara et al. 2009, 2013). The predictor and corrector steps are indeed higher-order extensions of the second order predictor–corrector scheme described in Sect. 5.1. The next two subsections describe the ADER predictor and corrector steps independently. In this review we describe a variant of ADER schemes, called ADER-CG, which is suited for problems with non-stiff source terms. The “CG” stands for continuous Galerkin and refers to the fact that the solution cannot take on abrupt temporal changes during a time step in response to stiff source terms.

#### 5.3.1 Multidimensional ADER-CG predictor step

The ADER predictor step consists of developing a space-time representation of the vector of conserved variable in each zone. At second order, the ADER predictor step becomes identical to the predictor step from the predictor–corrector scheme in Sect. 5.1. To retain second order accuracy in time, one only needs to obtain the piecewise linear variation in time, which is explicited in Eq. (54). The extension of the second order predictor–corrector scheme to higher orders is entirely non-trivial. For that reason, we illustrate the ADER construction in two dimensions at third order. Extensions of the present section to even higher orders on three-dimensional structured and unstructured meshes have been presented in Dumbser et al. (2008), Balsara (2009), Balsara et al. (2013) and Dumbser et al. (2013).

*reference space-time element*. Examining the mappings \(\tilde{x}\equiv {\left( {x-x_i } \right) }/{\Delta x}\), \(\tilde{y}\equiv {\left( {y-y_j } \right) }/{\Delta y}\) and \(\tilde{t}\equiv {\left( {t-t^{n}} \right) }/{\Delta t}\), we see that the reference space-time element is an element obtained by linearly mapping the zone under consideration to a zone with unit zone size and time step. The spatial dependence can be analogous to that in Eq. (44) so that we can use the same spatial bases that were developed there. To develop space-time basis that retain third order accuracy within the zone being considered, we upgrade Eq. (44) to obtain

*x*-fluxes by \(\left( {{\Delta t}/{\Delta x}} \right) \) and the

*y*-fluxes by \(\left( {{\Delta t}/{\Delta y}} \right) \) during the calculation so that we do not need to multiply too many factors of \(\left( {{\Delta t}/{\Delta x}} \right) \) or \(\left( {{\Delta t}/{\Delta y}} \right) \) all over. This scaling takes us from the physical zone to the reference element. When we reach the end of our calculation, i.e., when we have obtained converged modes in Eqs. (68)–(70), we can always return to the physical zone by rescaling the fluxes as \(\hbox {F}_{i,j} \left( {\tilde{x},\tilde{y},\tilde{t}} \right) \rightarrow \widetilde{\hbox {F}}_{i,j} \left( {\tilde{x},\tilde{y},\tilde{t}} \right) \left( {{\Delta x}/{\Delta t}} \right) \) and \(\hbox {G}_{i,j} \left( {\tilde{x},\tilde{y},\tilde{t}} \right) \rightarrow \widetilde{\hbox {G}}_{i,j} \left( {\tilde{x},\tilde{y},\tilde{t}} \right) \left( {{\Delta y}/{\Delta t}} \right) \). In principle, we could substitute Eqs. (68)–(70) into Eq. (71) and try to find a match to the polynomial terms, but this would become increasingly intractable as the order of accuracy increases. A simpler approach would be to project Eq. (71) into a basis space and require the

*projection*to hold in a weak form. Thus let \(\phi \left( {\tilde{x},\tilde{y},\tilde{t}} \right) \) be a test function in space and time. We obtain a weak formulation of Eq. (71) by asserting that

*Picard iteration*that, at third order, only two iterations of Eq. (77) are needed to achieve third order accuracy. At second order, the Picard iteration theory requires only one iteration, which is why we did not iterate on Eq. (54). At fourth order, one would require three iterations, and so on.

*ADER-CG*, where the “CG” refers to the fact that the scheme is continuous Galerkin in time.

#### 5.3.2 Multidimensional ADER-CG corrector step

*x*-direction to include space and time variations in the upper

*x*-boundary of the zone \(\left( {i,j} \right) \) as

*x*-face indexed by \(\left( {i+1/2,j} \right) \), we need to find the extremal wave speeds, \(\hbox {S}_L \) and \(\hbox {S}_R \), flowing in the x-direction at that zone boundary. We can obtain these speeds by evaluating Eq. (68) and its analogue from the zone (

*i*+1,

*j*) on either side of the spatial and temporal center of the

*x*-face being considered. To make this concrete, we build the two vectors of conserved variables given by

## 6 Runge–Kutta discontinuous Galerkin (RKDG) schemes

*Galerkin schemes* refer to a class of schemes that posit a set of basis functions on the entire computational domain and then solve the problem in terms of the modes of the basis functions. Fourier techniques for solving PDEs can be thought of as an example of Galerkin methods. Sine and cosine functions form the basis functions in this example and the solution is expressed in terms of the Fourier modes, i.e., the coefficients of the sines and cosines. Because we are interested in hyperbolic conservation laws that can give rise to discontinuities, it is not advantageous to have a set of basis functions that span the entire computational domain. For example, if a discontinuous function is represented in terms of a discrete set of Fourier basis functions, we would encounter a Gibbs phenomenon at the location of the discontinuity. (In all fairness, spectral methods can handle problems with a few weak and isolated shocks, but it becomes increasingly difficult to handle the general case where strong shocks may form at several locations.)

The rest of this section is split into three subsections. The first subsection provides a basic description of DG methods. The second subsection describes recent WENO limiters; the subsection after that describes MOOD limiters.

### 6.1 Basic description of discontinuous Galerkin (DG) methods

*Runge–Kutta Discontinuous Galerkin*(RKDG) methods are based on the idea that within each zone one can have a small set of basis functions that may indeed become discontinuous at zone boundaries (Cockburn and Shu 1989; Cockburn et al. 1989; Cockburn and Shu 1998; Cockburn et al. 1990, 2000). The discontinuities at zone boundaries can then be treated by solving a Riemann problem. The moments of the basis functions then become the independent variables that are to be evolved by the scheme. (The basis functions are also sometimes called trial functions.) Let us consider Eq. (44) to appreciate the difference between a scheme that is based on reconstruction and a discontinuous Galerkin scheme. A third order scheme that reconstructs the solution would reconstruct all the moments in Eq. (44), except of course the zone-averaged value. This would have to be done at each stage of the Runge–Kutta time evolution strategy. Only one evolutionary equation is solved for the vector of conserved variables \({\overline{\hbox {U}}}_{i,j} \) in zone \(\left( {i,j} \right) \). That is, the components of \({\overline{\hbox {U}}}_{i,j} \) in zone \(\left( {i,j} \right) \) are the only

*degrees of freedom*in that zone. In contrast, a third order discontinuous Galerkin (DG) method is based on the viewpoint that all the moments in Eq. (44) are degrees of freedom in zone \(\left( {i,j} \right) \)and should be evolved in time. This is to be done in a fashion that is consistent with the governing equations, i.e., the hyperbolic conservation law. Six evolutionary equations are then developed for the six vectors \({\overline{\hbox {U}}}_{i,j} \), \({\hat{\hbox {U}}}_{i,j;x} \), \({\hat{\hbox {U}}}_{i,j;y} \), \({\hat{\hbox {U}}}_{i,j;xx} \), \({\hat{\hbox {U}}}_{i,j;yy} \) and \({\hat{\hbox {U}}}_{i,j;xy} \). That is, we now have six times as many degrees of freedom as we would have in a reconstruction-based algorithm. Thus, in place of Eq. (44), we can extend our notation to show the time-dependence as

Recall that reconstruction-based schemes build all the moments of the zone-centered variable in Eq. (44). This reconstruction is carried out at the start of every time step, and yet, only the zone-averaged variable is updated at the end of a time step. In contrast, because all the moments are evolved in an RKDG scheme, and the evolution is consistent with the governing equation, the method can be very accurate. If the solution is smooth to begin with and remains so in most of the zones of the computational domain, then evolving all the moments can really help improve accuracy. Our guiding philosophy in a DG scheme would therefore be to do as little limiting as possible within a zone, because any such limiting would damage the information that is contained in some or all of the higher moments. In regions of smooth flow, no limiting is needed so that the method retains its theoretical accuracy. In practice, the presence of discontinuities forces us to restrict the higher moments in Eq. (86), with the result that RKDG schemes, quite like their finite volume brethren, have to be non-linearly stabilized. However, the philosophy is to apply non-linear stabilization to the moments as sparingly as possible. Practical experience has shown that RKDG schemes can be stabilized with a minimal amount of limiting.

Also recall that as the order of accuracy increases, reconstruction-based schemes use increasingly larger stencils that impede parallelism. If nonlinear stabilizaion is not needed in the physical problem, the RKDG method requires a very small stencil. The small stencil can become an advantage on parallel computers.

In the course of this section, we will see that DG methods are generalizations of finite volume methods in the sense that they use all the concepts of limiting and Riemann solvers that were initially developed within the context of finite volume schemes. However, DG methods recast these ideas within the context of a finite element framework. This makes the method very proficient at handling flow problems with complicated, body-fitted geometries (Bassi and Rebay 1997; Warburton et al. 1998). DG methods have also been used for solving problems on arbitrary Lagrangian Eulerian (ALE) meshes where the zone boundaries of the mesh can move in response to flow features or other dynamics (van der Vegt and van der Ven 2002a, b; Boscheri and Dumbser 2014, 2017; Boscheri et al. 2014a, b). When dealing with problems with geometric complexity, one has to go through the complication of working with a set of boundary-conforming elements though (Dubiner 1991; Warburton 1998; Karniadakis and Sherwin 1999). The Galerkin formulation also makes DG methods very useful for solution-dependent space and time adaptivity (Biswas et al. 1994). DG methods enable one to simultaneously have *h-adaptivity*, where the size of the mesh (denoted by “*h*”) is locally refined, and *p-adaptivity*, where the order of the method (denoted by “*p*”) is increased on refined patches. Collectively, this is known as *hp-adaptivity*. The *hp*-adaptive methods can offer spectral-like convergence to the physical solution of a scientific or engineering problem. As a result, DG methods are very popular in engineering applications where one simultaneously has complicated boundaries and a need to refine with increasing accuracy around local surfaces of interest.

*weak formulation*of the hyperbolic system. Our reinterpretation of the surface integrals in Eq. (88) provides a properly upwinded flux which, in turn, enables the variables in one zone to interact with their neighbors across the zone boundaries. These upwinded fluxes are used in the update of all the boundary integrals in Eq. (88). Third, notice that when \(\varphi \left( {\tilde{x},\tilde{y}} \right) \) has spatial variation, the first and fourth terms on the right hand side of Eq. (88) pick up non-trivial contributions from the area integrals. Those terms are needed for accurate time-evolution of higher moments, as we will see in the next paragraph. Fourth, notice that when basis functions are non-orthogonal, one has to invert a small matrix, known as a

*mass matrix*, in order to obtain the modal time evolution. Since our basis set is orthogonal, our mass matrix is a diagonal matrix and we do not face this problem here.

While the DG methods have several genuine advantages in certain circumstances, they also have their drawbacks. As the number of moments that one evolves increases, the permitted explicit time step decreases (Cockburn et al. 2000). One way to rectify this consists of evolving only a few of the lower moments while reconstructing the higher moments (Qiu and Shu 2004, 2005; Balsara et al. 2007; Dumbser et al. 2008). This does increase the permitted time step while relinquishing only a small amount of the accuracy. In the vicinity of discontinuities, a limiter does need to be applied to the higher moments in Eq. (86). The high resolution that comes from evolving the higher moments is only realized if most of the moments are not changed by the limiting process. Thus in problems with several strong, interacting shocks, these methods might lose their advantage. Several limiters have been presented over the years (Biswas et al. 1994; Burbeau et al. 2001; Qiu and Shu 2004, 2005; Balsara et al. 2007; Krivodonova 2007; Zhu et al. 2008; Xu et al. 2009a, b, c, Xu and Lin 2009; Xu et al. 2011; Zhu and Qiu 2011; Zhong and Shu 2013; Zhu et al. 2013; Dumbser et al. 2014). The problem is that there has been no coalescence of consensus around any one particular limiter. In the next subsection, we present a WENO limiter by Zhong and Shu (2013). In the subsection after that, we present the MOOD limiter of Dumbser et al. (2014). Storing the large number of degrees of freedom can also be problematical if computer memory is limited.

### 6.2 WENO limiter for DG methods

*i*,

*j*”. We illustrate the third order limiting procedure for this zone. We assume that from the previous timestep the DG scheme has left us with a polynomial given by the following modal representation

### 6.3 MOOD limiter for DG methods

*a priori limiting*of the solution at time \(t^{n}\) may indeed result in excessive limiting in zones where this is not needed. For a WENO scheme, where the reconstruction step includes a non-linear hybridization (i.e., a limiting) procedure, this is not much of an issue. However, DG schemes may, in principle, not need any limiting at all. In such circumstances, falsely invoking the limiter at time \(t^{n}\)can lead to excessive limiting. The MOOD philosophy, therefore, suggests that it is best to hold off on the limiting process till the timestep has completed, i.e., till a time of \(t^{n+1}\). At that advanced time, the solution itself can be polled to see if it violates physical admissibility (i.e., a loss of pressure or density positivity) or numerical admissibility (i.e., production of an oscillatory profile on the mesh). In all such cases, the troubled zone can be tagged and its time integration can be redone in an a posteriori sense. This is called

*a posteriori limiting*. Operationally, this limiting involves using a known and stable TVD or low order WENO scheme to evolve the offending zone again from a time of \(t^{n}\) to a time of \(t^{n+1}\). Realize, therefore, that the solution has to be available at both times. Furthermore, the data from the troubled zones in the DG scheme has to be extracted in a suitable fashion and handed over to a different solver. The data from that different solver has to be handed back in a suitable fashion to the troubled zones in the DG scheme.

*physical admissibility detector*(PAD) and a

*numerical admissibility detector*(NAD) to each sub-cell. (The PAD and NAD are described in detail in a later paragraph.) If all the sub-cells associated with a parent DG zone are salient at time \(t^{n+1}\), we say that the DG zone had a successful update and we don’t consider that cell any further. However, if any of the sub-cells has an unphysical solution (i.e., it triggers the PAD) or an oscillatory solution (i.e., it triggers the NAD), we declare the zone to be a troubled zone. Let us say, for the sake of argument that the zone \(\left( {i,j} \right) \) is found to be a troubled zone. We will have to, therefore, redo the time update from a time of \(t^{n}\) to a time of \(t^{n+1}\) for those nine sub-cells in Fig. 14 with a simple TVD or low order WENO scheme that is known to be very stable. The TVD or WENO reconstruction might require a halo of two or three zones, which is why we show a layer of two sub-cells around the nine sub-cells that we identified in Fig. 14. The DG solution in zone \(\left( {i,j} \right) \) at time \(t^{n}\) is then imparted (

*scattered*) to the nine sub-cells in Fig. 14. The nine sub-cells shown in Fig. 14 are then evolved from a time of \(t^{n}\) to a time of \(t^{n+1}\) with a TVD or WENO scheme. The nine sub-cells now hold a salient solution at time \(t^{n+1}\). From these nine sub-cell averages at time \(t^{n+1}\) we can retrieve (

*gather*) the DG polynomial in zone \(\left( {i,j} \right) \) at time \(t^{n+1}\). We can now say that the zone \(\left( {i,j} \right) \) has undergone an a posteriori MOOD limiting for this timestep.

Now let us consider the general case. Say, for the sake of discussion that we want to represent the same amount of information that is contained in an \(\hbox {N}\)th order DG polynomial in one dimension. To represent the same amount of information in a finite volume sense we will need (\(\hbox {N}+1\)) sub-cells within each DG zone. These sub-cells will have featureless slabs of fluid. These (\(\hbox {N}+1\)) sub-cells will have only one solution vector each. We, therefore, say that the DG polynomial at \(\hbox {N}\)th order has as much information as the volume-averaged solution vectors in each of the (\(\hbox {N}+1\)) sub-cells. For an \(\hbox {N}\)th order DG scheme in “d” dimensions, we will have to split each DG zone into at least \(\left( {\hbox {N+1}} \right) ^{\hbox {d}}\) sub-cells. Figure 15, which is Fig. 2 from Dumbser et al. (2014), shows a flowchart that describes the MOOD limiting of DG schemes. The solution at time \(t^{n+1}\) within each DG zone is scattered to its sub-cells. On those sub-cells, we apply the PAD and the NAD. If none of the sub-cells associated with a DG zone shows any pathology, the DG solution in that zone is deemed acceptable. If not, we flag the zone and scatter the DG solution at the earlier time \(t^{n}\) from the troubled zone as well as its halo of neighbors. This information is now available on the sub-cell mesh. Such a mesh will contain the sub-cells associated with a troubled zone and also all halo sub-cells that are needed for a time update. The sub-cells associated with the troubled zone then undergo a time update from time \(t^{n}\) to time \(t^{n+1}\) with the help of a TVD or low order WENO scheme. The sub-cell solution at the advanced time \(t^{n+1}\) is then gathered back to the troubled zone on the DG mesh. These gather and scatter steps are arranged so that they can be done very efficiently. We see, therefore, that there are two crucial parts that we need to describe further. First, we need to describe the scatter and gather steps and their efficient implementation. Second, we need to give some useful information about the PAD and NAD. We do that in the ensuing paragraphs.

## 7 Positivity preserving reconstruction

Obtaining numerical solutions for the Euler equation that retain positive densities and pressures is incredibly important. Some Riemann solvers can guarantee a positive resolved state while others cannot make such a guarantee. A Riemann solver that guarantees positivity can be very useful in obtaining a physical solution. When either the density or pressure become negative, the Euler system loses its convexity property, handicapping our ability to obtain physical solutions. However, a loss of *positivity* does not arise exclusively from the Riemann solver. It can even arise due to the kind of reconstruction that is used. The TVD property only guarantees positivity of the reconstructed profile in one dimension. In multiple dimensions, certain parts of a reconstructed profile within a zone can lose positivity even when TVD reconstruction is used. This loss of positivity usually occurs near the vertices of a zone, where the piecewise linear profile reaches its extremal values. For higher-order reconstruction, the problem becomes a little worse because the reconstructed profile can also attain extremal values inside the zone. For that reason, we focus attention on obtaining a reconstructed profile that retains positive density and pressure. There are several papers where the topic of positivity has been discussed, both for Euler and MHD flow (Barth and Frederickson 1990; Barth 1995; Liu and Lax 1996; Lax and Liu 1998; Balsara and Spicer 1999b; Zhang and Shu 2010; Balsara 2012b). The positivity preserving method we present here derives from the latter two references. A video introduction to this work is included in Balsara (2012b). Recently, Balsara and Kim (2016) have presented a scheme for RMHD that tries to preserve the sub-luminal velocity of the flow.

We describe the method on a two dimensional structured mesh, though it extends naturally to three dimensions and it could also extend naturally to unstructured meshes. Let \(\rho \) and P be the density and pressure and let **v** be the velocity vector. Let \(\gamma \) be the ratio of specific heats. Let **m** denote the momentum density and \(\varepsilon \) the energy density. For Euler flow we can write \(\varepsilon =\hbox {P}/{\left( {\gamma -1} \right) }+{\rho ~\mathbf{v}^{2}}/2\).

*flattener function*that can identify regions of strong shocks within our computational domain. The method, therefore, begins by obtaining the divergence of the velocity, \(\left( {\nabla \cdot \mathbf{v}} \right) _{i,j} \), and the sound speed, \(\hbox {c}_{s;i,j} \equiv \sqrt{{\gamma \hbox {P}_{i,j} }/{\bar{{\rho }}_{i,j} }}\), within a zone (

*i*,

*j*) as shown in Fig. 1. To identify a shock, the undivided divergence of the velocity within a zone has to be compared with the minimum of the sound speed in the zone (

*i*,

*j*) and all its immediate neighbors. Thus we need the minimum sound speed from all the neighbors, see Fig. 1. It is defined by

*i*,

*j*) we obtain a range of densities \(\left[ \rho _{i,j}^{\mathrm{min}-extended},\rho _{i,j}^{\mathrm{max}-extended}\right] \) and demand that the reconstructed density profile satisfy \(\rho _{i,j}^{\min -extended}\le \rho _{i,j}(x,y)\le \rho _{i,j}^{\max -extended}\). Similarly, we obtain a range of pressures \(\left[ \hbox {P}_{i,j}^{\mathrm{min}-extended},\hbox {P}_{i,j}^{\mathrm{max}-extended}\right] \) and demand that the pressure variable that can be derived at any point within the zone of interest be bounded by \(\hbox {P}_{i,j}^{\min -extended}\le \hbox {P}_{i,j}(x,y)\le \hbox {P}_{i,j}^{\max -extended}\). In practice, it might be valuable to also provide absolute floor values for \(\rho _{i,j}^{\min -extended} \) and \(\hbox {P}_{i,j}^{\min -extended}\).

*i*,

*j*), we can write

*Q*” nodal points \(\left\{ \left( {x^{q},y^{q}} \right) ;q=1, \ldots ,Q \right\} \) within each zone and evaluating the entire vector of conserved variables at those points. The index “

*q*” tags the nodal points within each zone. It is worth pointing out that the present strategy requires a judicious choice of nodal points in order to work well. We will give some further details about the choice of nodal points for a structured mesh at the end of this section. Thus we have \(\rho _{i,j}^q \equiv \rho _{i,j} \left( {x^{q},y^{q}} \right) \) and we can also use them to find \(\rho _{i,j}^{\min -zone} =\min \left( {\rho _{i,j}^1 ,\rho _{i,j}^2 ,\ldots ,\rho _{i,j}^Q } \right) \) and \(\rho _{i,j}^{\max -zone} =\max \left( {\rho _{i,j}^1 ,\rho _{i,j}^2 ,\ldots ,\rho _{i,j}^Q } \right) \). As shown by Barth (1995), within each zone (

*i*,

*j*) we can obtain a variable

*q*th nodal point. The variable \(\tau _{i,j}^{q}<1\) which brings that nodal pressure back within the desired range is given by solving

*i*,

*j*); i.e., as shown in Eq. (9). Indeed note from the above two equations that one has to shrink the spatial variation of

*all*the conserved variables in order to bring

*all*the nodal pressures within the desired range. This completes our description of the positivity preserving scheme for Euler flow.

The method described above needs to be implemented on a set of nodal points within a zone. The nodes should be picked in such a way that they bring out the extremal variation within a zone. For piecewise linear reconstruction, the extrema in the reconstructed function are always obtained at the vertices of the zone. Because piecewise linear reconstruction is a special sub-case of any higher-order reconstruction, the vertices should always be included in the set of nodes within a zone, even at higher orders. For higher-order reconstruction, Balsara (2012b) provides a detailed description of how the nodes are to be picked. For a two-dimensional mesh at third order, Fig. 12 provides a good example of nodal points that might be used. We only use the black circles in Fig. 12 for enforcing positivity.

It is also good to point out that the methods in this section are designed to save a code from a rare code crash that may arise from a negative density or pressure in a few zones. But they are not intended to overcome known intrinsic limitations in the methods. Nor will they overcome badly-designed initial conditions. For example, it has been well known (Toro and Titarev 2002) that large differences in tangential velocity across a moving interface are problematical for such methods. Higher-order methods will go some ways in ameliorating this problem if the tangential discontinuity is smoothed out over a few zones; but if the tangential discontinuity is abrupt, there is no solution for Toro’s problem. A variant of this issue, as it pertains to relativistic flow, has also been catalogued in the literature (Mignone et al. 2005; Martí and Müller 2015). Martí and Müller describe a strong shock with relativistic tangential speeds. In this case, the shock propagates at a wrong speed, spoiling the solution behind it. Again, the methods described in this section do not correct for such situations.

There is another situation where the methods do help somewhat. It has to do with problems involving strong magnetization. The methods described here have been extended to non-relativistic MHD (Balsara and Spicer 1999b; Balsara 2012b), but not to relativistic MHD. For RMHD, Komissarov (1999) has designed some rather pathological problems involving highly magnetized, relativistic explosions. In such situations, some of the worst difficulties in troubled zones are circumvented by redefining conserved variables in the problematical zones so that they are actually averages derived from neighboring zones. Even when it workd, this patch-up alas causes a loss of conservation. Using very small timesteps in the problematical zones, in conjunction with a more dissipative Riemann solver, can help too; however, we recognize again that this is a less-than-appealing resolution of a pathological problem. This latter option at least has the virtue of being conservative, as opposed to the option advocated by Komissarov (1999).

## 8 Accuracy analysis on multidimensional test problems

Since we have catalogued several high accuracy schemes, it becomes interesting to demonstrate the difference that order of accuracy makes in the solution of problems with smooth flow. When demonstrating the order of accuracy of a method, it is very helpful (though not essential) to pick test problems whose initial conditions and time-evolution can be specified analytically. We demonstrate the order of accuracy of the higher-order schemes that were catalogued in the previous sections. The same schemes were used in this and the next section. For all the non-relativistic problems the reconstruction was done in conservative variables with the pressure positivity ideas described in the previous section (Balsara 2012b; Balsara et al. 2009, 2013). The relativistic formulation was also fully conservative in its update (Balsara and Kim 2016), however, it used reconstruction in the four-velocity variables in order to ensure sub-luminal reconstruction of the velocities. The speed of light is taken to be unity for all relativistic problems; i.e., we use geometrized units.

### 8.1 Hydrodynamical vortex with ADER-WENO schemes

*r*” from the origin of the domain and can be written as \(r^{2}= x^{2} + y^{2}\). Because the vortex represents a self-similar flow profile, it undergoes a form-preserving translation along the diagonal of the computational domain. As a result, the above initial conditions can be used to specify the fluid variables at any later time.

### 8.2 MHD vortex with DG and PNPM schemes

Accuracy analysis of this test problem using RK-WENO and ADER-WENO schemes has been presented in Balsara (2009) and Balsara et al. (2009). Here we present results from Balsara and Käppeli (2017) involving just the magnetic field but with the variation in the velocity and pressure suppressed. As a bonus though, we show the error as measured in the \(\hbox {L}_{1}\) and \(\hbox {L}_\infty \) norms for several PNPM schemes in Fig. 17. We see that there is a quality gap between the P0P1 scheme and the P1P1 scheme (which is indeed the P=1 DG scheme). Likewise, we see a quality gap between the P0P2 scheme (WENO scheme) and the P2P2 scheme (which is indeed the P=2 DG scheme). However, the P1P2 and P2P2 schemes produce results in Fig. 17 that are virtually indistinguishable! Despite having comparable accuracy, the third order P1P2 scheme was able to take substantially larger timesteps than the third order P2P2 scheme, showing that it offers some advantages.

### 8.3 RHD and RMHD vortices with ADER-WENO schemes

For classical hydrodynamics and MHD, there are several very nice, non-trivial multidimensional test problems for demonstrating that a numerical method meets its design accuracy. The present RHD and RMHD test problems, first described in Balsara and Kim (2016), are the relativistic analogues of the classical hydrodynamical and MHD vortices. They should prove very useful for accuracy testing of RHD and RMHD codes.

*t*”. Thus for any chosen coordinate \(\left( {t^{/}=0,x^{/},y^{/},z^{/}=0} \right) ^{T}\) on the computational mesh we can find the corresponding unprimed coordinates via the following Lorentz transformation

Figure 19a, b show the errors measured in the \(\hbox {L}_1 \) and \(\hbox {L}_\infty \) norms for the RHD vortex. The error is measured in the density variable, i.e., the proper density times the Lorentz factor. Figure 19c, d show the errors measured in the \(\hbox {L}_1 \) and \(\hbox {L}_\infty \) norms for the RMHD vortex. In this instance, we show the error measured in the x-component of the magnetic field. ADER-WENO schemes at second, third and fourth order were used. We see that the schemes meet their design accuracies.

## 9 Test problems

In this section, we do not focus on one-dimensional test problems. Good libraries of one-dimensional test problems for Euler flow have been provided in Woodward and Colella (1984). For analogous catalogues of one-dimensional Riemann problems for MHD flow, please see Ryu and Jones (1995), Dai and Woodward (1994) and Falle (2001). For a list of one-dimensional Riemann problems for RHD flow, please see Martí and Müller (2003) and also Rezzolla and Zanotti (2001). For an analogous catalogue of RMHD problems, please see Balsara (2001a, b) and Giacomazzo and Rezzolla (2006).

In the rest of this section, we present several stringent multidimensional test problems for Euler, MHD, RHD and RMHD flow that were all done with higher-order schemes.

### 9.1 Euler flow: the forward-facing step test problem with ADER-DG schemes

Figure 20 from Dumbser et al. (2014) shows the density variable from the forward facing step problem using an ADER-DG scheme at sixth order. The result in the upper panel was computed on a \(300 \times 100\) zone mesh and is shown at a time of 4 units. Even though the mesh seems to have only 30,000 zones, a high order DG scheme can capture substantial amounts of sub-structure within each zone. We see that the simulation captures the roll-up of the vortex very clearly. The lower panel shows the zones that were flagged for MOOD limiting in red. We see that only a very small fraction of zones were limited by the MOOD limiting procedure. The CFL number was set to 0.4.

The step induces a forward-facing bow shock, which interacts with the upper wall. The interaction of the bow shock with the upper wall initiates a Mach stem. All the shocks are properly captured on the computing grid and have sharp profiles. The vortex sheet that emanates from the Mach stem is correctly resolved with only a few zones across the sheet. We notice that the vortex sheet shows little or no spreading over the length of the computational domain. This demonstrates the ability of the high order schemes to provide a better resolution for a smaller number of zones.

### 9.2 Euler flow: double Mach reflection problem with ADER-WENO scheme

Figure 21 shows the density variable at \(t = 0.2\) in the sub-domain given by \([0, 3] \times [0, 1]\). The upper panel shows a simulation with a resolution of \(1920 \times 480\) zones. At the high resolution, the Mach stem displays a roll-up due to the operation of the Kelvin–Helmholtz instability. We used the fourth order ADER-WENO scheme for this simulation. Notice that the fourth order ADER-WENO scheme resolves all the structures that form in this problem. According to Cockburn and Shu (1998), a second order scheme would need at least four times as many zones in each direction to resolve the instability and for such a simulation we would need much more CPU time than the fourth order scheme shown in Fig. 21. That demonstrates the efficiency of the higher-order schemes presented here.

### 9.3 MHD flow: 2D rotor test problem with ADER-WENO scheme

The RIEMANN framework for computational astrophysics was applied to this problem. Figure 22, which is drawn from Balsara and Nkonga (2017), shows the results from the MHD Rotor test problem. Figure 22a–d show the density, pressure, magnitude of the fluid velocity and magnitude of the magnetic field at the final time. A fourth order ADER-WENO scheme with \(1000 \times 1000\) zone resolution was used.

### 9.4 MHD flow: 3D extreme blast test problem with ADER-WENO scheme

Figure 23 shows the variables from the 3D blast problem in the \(z = 0\) mid-plane of the computational domain. Figure 23a shows the plot of the density for the mid-plane in the z-direction. Figure 23b shows the same for the pressure in the same plane. Figure 23c, d show the magnitude of the velocity and the magnitude of the magnetic field, again in the same plane. We see that despite this being a very stringent problem, the densities and pressures are positive, as expected.

### 9.5 MHD flow: decay of finite amplitude torsional Alfvén waves with ADER-WENO scheme

Turbulence studies play an increasingly important role in several fields, like astrophysics or space physics. The ability to propagate finite amplitude Alfvén waves over large distances and long times on a computational mesh is crucial for carrying out simulations of MHD turbulence. If the Alfvén waves are damped strongly because of inherent numerical dissipation in a code, the code will fail to capture the resulting turbulence. This is because MHD turbulence is mainly sustained by Alfvén waves. The Alfvén wave decay test problem, first presented by Balsara (2004), examines the numerical dissipation of torsional Alfvén waves in two dimensions. In this test problem torsional Alfvén waves propagate at an angle of \(9.462{^{\circ }}\) to the y-axis through a domain given by \([-\,3, 3] \times [-\,3, 3]\). The domain was set up with \(120 \times 120\) zones and has periodic boundary conditions. We do not present further details of the set-up, because the problem is already well-described in the above-mentioned paper. The simulation was stopped at 129 time units by which time the Alfvén waves had crossed the domain several times. Depending on the dissipation properties of the scheme, the amplitude of the torsional Alfvén wave will, of course, decay. A more dissipative method will cause greater dissipation of the Alfvén wave; a less dissipative method will reduce that dissipation.

Figure 24a, b show the evolution of the maximum z-velocity and maximum z-component of the magnetic field in the torsional Alfvén wave as a function of time. For the simulations shown in Fig. 24a, b we used the 1D HLLI Riemann solver along with the 2D MuSIC Riemann solver with sub-structure. Figure 24c, d show the same information as Fig. 24a, b, the only difference being that we used the 1D HLL Riemann solver along with the 2D MuSIC Riemann solver without sub-structure. Comparing the two sets of figures, we see that the inferior Riemann solvers produce a six-times larger decay in the amplitude of the Alfvén wave at second order. At third order, the inferior Riemann solvers produce a three-times larger decay in the amplitude of the Alfvén wave. Notice that the second order scheme with superior Riemann solvers is less dissipative than the third order scheme with inferior Riemann solvers! At fourth order, the difference between the inferior Riemann solvers and the exact Riemann solvers is almost negligible. We, therefore, conclude that second and third order schemes are greatly benefited by the quality of the Riemann solver. It is only at fourth and higher orders of accuracy that the difference between a superior and an inferior Riemann solver begins to become quite small! However, please note that a fourth order scheme has computational complexity that is substantially higher than a second or third order scheme. The Riemann solver with substructure has a computational complexity that is only marginally higher than a Riemann solver without substructure. As a result, it is very advantageous to improve the quality of all schemes at all orders.

### 9.6 RMHD flow: 2D relativistic rotor test problem with ADER-WENO scheme

*w*” controls the rotation speed. Because very small changes in “

*w*” can result in very large changes in the Lorentz factor, the problems arise when one tries to set up this problem on a computational mesh. The high Lorentz factor flows are confined to a very thin ring at the outer boundary of the rotor. We used \(w=9.9944\) which corresponds to a maximal Lorentz factor of 30, which requires the use of a mesh with at least \(3500\times 3500\) zones. The value “

*w*” that we use here is that it ensures that the outer boundary of the rotor is moving with a speed that is very close to unity in geometrized units.

We used a mesh with \(4700 \times 4700\) zones for this simulation. Figure 25a through d show the density, gas pressure, Lorentz factor and magnetic field magnitude at a final time of 0.4. Despite the very large initial Lorentz factor, we see that all the flow variables are well-represented. The large Lorentz factor produces a substantial outward expansion in the density owing to the large centrifugal effect in the fast-rotating flow. The magnetic field in Fig. 25d is strongly compressed due to the high Lorentz factor. The simulation in Fig. 5 was run with a CFL of 0.4 using a third order accurate ADER-WENO scheme along with the MuSIC Riemann solver.

### 9.7 RMHD flow: 2D relativistic Orzag–Tang test problem with ADER-WENO scheme

### 9.8 RMHD flow: long-term decay of relativistic Alfvén waves with ADER-WENO scheme

Figure 27a, b show the evolution of the maximum z-velocity and maximum z-component of the magnetic field in the relativistic torsional Alfvén wave as a function of time. For the simulations shown in Fig. 27a, b we used the 1D HLLI Riemann solver along with the 2D MuSIC Riemann solver with sub-structure. Figure 27c, d show the same information as Figs. 27a, b, the only difference being that we used the 1D HLL Riemann solver along with the 2D MuSIC Riemann solver without sub-structure. Comparing the two sets of figures, we see that the inferior Riemann solvers again show substantially larger dissipation at second and third orders. It is only at fourth order that we find a much-reduced difference between a Riemann solver with sub-structure and a Riemann solver that does not resolve any intermediate waves. As before, notice that the second order scheme with superior Riemann solvers is less dissipative than the third order scheme with inferior Riemann solvers! We, therefore, conclude that a Riemann solver that resolves intermediate waves is very important for reducing dissipation in second and third order schemes. At fourth and higher orders, that importance is diminished. The incremental costs of including sub-structure in a Riemann solver are only slight, making it advantageous to improve the quality of all schemes at all orders.

## 10 Conclusions

There is a great need for precision in computational astrophysics. The greater computational astrophysics community has roused itself into producing some very good methods for the PDE systems that are of interest in astrophysics, cosmology and numerical relativity. This review seeks to bring together the astrophysics community and the larger computational physics community, showing that great strides of progress can be made by the inter-diffusion of knowledge.

At second order, we have seen the value of TVD reconstruction. PPM schemes incorporate many aspects of TVD reconstruction while aiming for higher orders in the reconstructing polynomials. WENO schemes give us a method for carrying out reconstruction at successively higher orders. It is important to realize though that order of accuracy is not all-important. The ability to maintain other physical principles, such as positivity of density and pressure, also play an important role in the design of numerical schemes. It is also valuable to realize that reconstructing all the moments is not the only pathway to higher order. RKDG, HWENO and PNPM schemes offer us methods for retaining higher moments and evolving them in time. (An HWENO scheme is basically a P1PM scheme, e.g., Balsara et al. 2007.) For problems with relatively smooth flows over the entire computational domain, such methods can provide a significant advantage over schemes that resort to a complete reconstruction of all the moments at each and every timestep.

Higher-order spatial reconstruction should indeed be matched with higher-order time evolution. Such a balanced accuracy in spatial and temporal accuracy is most desirable since a diminished time accuracy certainly results in a decreased overall accuracy of the numerical scheme. We have displayed two competing methodologies in time accurate simulation—Runge–Kutta timestepping and ADER timestepping. The former has the advantage of simplicity in programming, even if it requires extra stages at orders beyond third order. Reasonably simple formulations of the ADER timestepping have also become commonplace and they do offer the advantage of increased code speed.

The methods presented here are all based on finite volume formulations. If the computational emphasis is on uniform, structured mesh simulations, finite difference formulations may well offer a speed advantage. However, the finite volume formulations presented in this review are more versatile. They take well to complex geometries and extend seamlessly to unstructured meshes. ALE meshes, where the boundaries of the mesh can move, are also treated successfully by these methods. They can be used as base-level algorithms for adaptive mesh refinement calculations. They are quite fast and parallelize well. There is a rich literature and a wealth of practical experience associated with these methods. Their pitfalls, when they exist, are well-documented in the literature along with possible remedies. This makes them reliable workhorses for practical computation. The examples provided in this review have illustrated their excellent performance on a range interesting problems.

## Notes

### Acknowledgements

DSB acknowledges support via NSF Grants NSF-DMS-1361197, NSF-ACI-1533850, NSF-DMS-1622457 and NSF-ACI-1713765. Several simulations were performed on a cluster at UND that is run by the Center for Research Computing. Computer support on NSF’s XSEDE and Blue Waters computing resources is also acknowledged. It is a pleasure to acknowledge Michael Dumbser, Vladimir Florinski, Sudip Garain, Katie Gurski, Roger Käppeli, Jinho Kim, Jiequan Li, Gino Montecinos, Boniface Nkonga, Chi-Wang Shu and Zhiliang Xu for help with the figures and also for numerous helpful discussions. The continued encouragement by Luciano Rezzolla was very helpful in completing this review, and it is also gratefully acknowledged.

## References

- Abgrall R (1994a) Approximation du problème de Riemann vraiment multidimensionnel des èquations d’Euler par une methode de type Roe, I: La linèarisation. C R Acad Sci Ser I 319:499zbMATHGoogle Scholar
- Abgrall R (1994b) Approximation du problème de Riemann vraiment multidimensionnel des èquations d’Euler par une methode de type Roe, II: Solution du probleme de Riemann approchè. C R Acad Sci Ser I 319:625zbMATHGoogle Scholar
- Aloy MA, Ibáñez JM, Martí JM, Müller E (1999) GENESIS: a high-resolution code for three-dimensional relativistic hydrodynamics. Astrophys J Suppl Ser 122:151–166ADSCrossRefGoogle Scholar
- Anile AM (1989) Relativistic fluids and magnetofluids. Cambridge University Press, CambridgezbMATHCrossRefGoogle Scholar
- Anton L, Miralles JA, Martí JM, Ibáñez JM, Aloy MA, Mimica P (2010) A full wave decomposition Riemann solver in RMHD. Astrophys J Suppl 187:1ADSCrossRefGoogle Scholar
- Atkins H, Shu CW (1998) Quadrature-free implementation of the discontinuous Galerkin method for hyperbolic equations. AIAA J 36:775–782ADSCrossRefGoogle Scholar
- Balsara DS (1994) Riemann solver for relativistic hydrodynamics. J Comput Phys 114:284–297ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Balsara DS (1998a) Linearized formulation of the Riemann problem for adiabatic and isothermal magnetohydrodynamics. Astrophys J Suppl 116:119ADSCrossRefGoogle Scholar
- Balsara DS (1998b) Total variation diminishing algorithm for adiabatic and isothermal magnetohydrodynamics. Astrophys J Suppl 116:133–153ADSCrossRefGoogle Scholar
- Balsara DS (2001a) Divergence-free adaptive mesh refinement for magnetohydrodynamics. J Comput Phys 174:614–648ADSzbMATHCrossRefGoogle Scholar
- Balsara DS (2001b) Total variation diminishing scheme for relativistic magnetohydrodynamics. Astrophys J Suppl 132:83–101ADSCrossRefGoogle Scholar
- Balsara DS (2004) Second-order-accurate schemes for magnetohydrodynamics with divergence-free reconstruction. Astrophys J Suppl 151:149–184ADSCrossRefGoogle Scholar
- Balsara DS (2009) Divergence-free reconstruction of magnetic fields and WENO schemes for magnetohydrodynamics. J Comp Phys 228:5040–5056ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Balsara DS (2010) Multidimensional extension of the HLL Riemann solver; application to Euler and magnetohydrodynamical flows. J Comput Phys 229:1970–1993ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Balsara DS (2012a) A two-dimensional HLLC Riemann solver with applications to Euler and MHD flows. J Comput Phys 231:7476–7503ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Balsara DS (2012b) Self-adjusting, positivity preserving high order schemes for hydrodynamics and magnetohydrodynamics. J Comput Phys 231:7504–7517ADSMathSciNetCrossRefGoogle Scholar
- Balsara DS (2014) Multidimensional Riemann problem with self-similar internal structure—part I—application to hyperbolic conservation laws on structured meshes. J Comput Phys 277:163–200ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Balsara DS (2015) Three dimensional HLL Riemann solver for structured meshes; application to Euler and MHD flow. J Comput Phys 295:1–23ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Balsara DS, Dumbser M (2015a) Multidimensional Riemann problem with self-similar internal structure—part II—application to hyperbolic conservation laws on unstructured meshes. J Comput Phys 287:269–292ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Balsara DS, Dumbser M (2015b) Divergence-free MHD on unstructured meshes using high order finite volume schemes based on multidimensional Riemann solvers. J Comput Phys 299:687–715ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Balsara DS, Käppeli R (2017) von Neumann stability analysis of globally divergence-free RKDG and PNPM schemes for the induction equation using multidimensional Riemann solvers. J Comput Phys 336:104–127ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Balsara DS, Kim J (2016) A subluminal relativistic magnetohydrodynamics scheme with ADER-WENO predictor and multidimensional Riemann solver-based corrector. J Comput Phys 312:357–384ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Balsara DS, Nkonga B (2017) Multidimensional Riemann problem with self-similar internal structure—part III—a multidimensional analogue of the HLLI Riemann solver for conservative hyperbolic systems. J Comput Phys 346:25–48ADSMathSciNetCrossRefGoogle Scholar
- Balsara DS, Shu C-W (2000) Monotonicity preserving weighted non-oscillatory schemes with increasingly high order of accuracy. J Comput Phys 160:405–452ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Balsara DS, Spicer DS (1999a) A staggered mesh algorithm using high order Godunov fluxes to ensure solenoidal magnetic fields in magnetohydrodynamic simulations. J Comput Phys 149:270–292ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Balsara DS, Spicer DS (1999b) Maintaining pressure positivity in magnetohydrodynamic simulations. J Comput Phys 148:133–148ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Balsara DS, Altmann C, Munz C-D, Dumbser M (2007) A sub-cell based indicator for troubled zones in RKDG schemes and a novel class oh hybrid RKDG + HWENO schemes. J Comput Phys 226:586–620ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Balsara DS, Rumpf T, Dumbser M, Munz C-D (2009) Efficient, high-accuracy ADER-WENO schemes for hydrodynamics and divergence-free magnetohydrodynamics. J Comput Phys 228:2480ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Balsara DS, Dumbser M, Meyer C, Du H, Xu Z (2013) Efficient implementation of ADER schemes for Euler and magnetohydrodynamic flow on structured meshes—comparison with Runge–Kutta methods. J Comput Phys 235:934–969ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Balsara DS, Dumbser M, Abgrall R (2014) Multidimensional HLL and HLLC Riemann solvers for unstructured meshes—with application to Euler and MHD flows. J Comput Phys 261:172–208ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Balsara DS, Vides J, Gurski K, Nkonga B, Dumbser M, Garain S, Audit E (2016a) A two-dimensional Riemann solver with self-similar sub-structure—alternative formulation based on least squares projection. J Comput Phys 304:138–161ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Balsara DS, Amano T, Garain S, Kim J (2016b) High order accuracy divergence-free scheme for the electrodynamics of relativistic plasmas with multidimensional Riemann solvers. J Comput Phys 318:169–200ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Balsara DS, Garain S, Shu C-W (2016c) An efficient class of WENO schemes with adaptive order. J Comput Phys 326:780–804ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Barth TJ (1995) Aspects of unstructured grids and finite-volume solvers for Euler and Navier–Stokes equations, VKI/NASA/AGARD special course on unstructured grid methods for advection dominated flows, AGARD Publ. R-787 (Von Karman Institute for Fluid Dynamics, Belgium)Google Scholar
- Barth TJ, Frederickson PO (1990) Higher-order solution of the Euler equations on unstructured grids using quadratic reconstruction, AIAA Paper no. 90-0013, 28th Aerospace Sciences MeetingGoogle Scholar
- Bassi F, Rebay S (1997) High-order accurate discontinuous finite element solution of the 2D Euler equations. J Comput Phys 138:267–279ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Batten P, Clarke N, Lambert C, Causon DM (1997) On the choice of wavespeeds for the HLLC Riemann solver. SIAM J Sci Comput 18:1553–1570MathSciNetzbMATHCrossRefGoogle Scholar
- Beckwith K, Stone JM (2011) A second-order Godunov method for multi-dimensional relativistic magnetohydrodynamics. Astrophys J Suppl Ser 193:6ADSCrossRefGoogle Scholar
- Ben-Artzi M (1989) The generalized Riemann problem for reactive flows. J Comput Phys 81:70–101ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Ben-Artzi M, Birman A (1990) Computation of reactive duct flows in external fields. J Comput Phys 86:225–255ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Ben-Artzi M, Falcovitz J (1984) A second-order Godunov-type scheme for compressible fluid dynamics. J Comput Phys 55:1–32ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Ben-Artzi M, Falcovitz J (2003) Generalized Riemann problems in computational fluid dynamics. Cambridge University Press, CambridgezbMATHCrossRefGoogle Scholar
- Berger M, Colella P (1989) Local adaptive mesh refinement for shock hydrodyamics. J Comput Phy 82:64–84ADSzbMATHCrossRefGoogle Scholar
- Biswas R, Devine RK, Flaherty J (1994) Parallel, adaptive finite element methods for conservation laws. Appl Numer Math 14:255–283MathSciNetzbMATHCrossRefGoogle Scholar
- Borges R, Carmona M, Costa B, Don WS (2008) An improved weighted essentially non-oscillatory scheme for hyperbolic conservation laws. J Comput Phys 227(6):3101–3211MathSciNetzbMATHCrossRefGoogle Scholar
- Boris JP, Book DL (1976) Flux corrected transport III: minimal-error FCT algorithms. J Comput Phys 20:397–431ADSzbMATHCrossRefGoogle Scholar
- Boscheri W, Dumbser M (2014) A direct Arbitrary–Lagrangian–Eulerian ADER-WENO finite volume scheme on unstructured tetrahedral meshes for conservative and non-conservative hyperbolic systems in 3D. J Comput Phys 275:484–523ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Boscheri W, Dumbser M (2017) Arbitrary–Lagrangian–Eulerian discontinuous Galerkin schemes with a posteriori sub-cell finite volume limiting on moving unstructured meshes. J Comput Phys 348:449–479ADSCrossRefGoogle Scholar
- Boscheri W, Balsara DS, Dumbser M (2014a) Lagrangian ADER-WENO finite volume schemes on unstructured triangular meshes based on genuinely multidimensional HLL Riemann solvers. J Comput Phys 267:112–138ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Boscheri W, Dumbser M, Balsara DS (2014b) High order Lagrangian ADER-WENO schemes on unstructured meshes—application of several node solvers to hydrodynamics and magnetohydrodynamics. Int J Numer Methods Fluids 76(10):737–778zbMATHCrossRefGoogle Scholar
- Bourgeade A, LeFloch Ph, Raviart P (1989) An asymptotic expansion for the solution of the generalized Riemann problem. II. Application to the equations of gas dynamics. Ann Inst H Poincaré Anal Non Linéaire 6:437–480ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Brackbill JU (1985) Fluid modeling of magnetized plasmas. Space Sci Rev 42:153ADSCrossRefGoogle Scholar
- Brackbill JU, Barnes DC (1980) The effect of nonzero \(\cdot \) B on the numerical solution of the magnetohydrodynamic equations. J Comput Phys 35:426–430ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Brecht SH, Lyon JG, Fedder JA, Hain K (1981) A simulation study of East–West IMF effects on the magnetosphere. Geophys Res Lett 8:397ADSCrossRefGoogle Scholar
- Brio M, Wu CC (1988) An upwind differencing scheme for the equations of ideal magnetohydrodynamics. J Comput Phys 75:400ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Buchmuller P, Helzel C (2014) Improved accuracy of high-order WENO finite volume methods on Cartesian grids. J Sci Comput 61:343–368Google Scholar
- Buchmuller P, Dreher J, Helzel C (2016) Finite volume WENO methods for hyperbolic conservation laws on Cartesian grids with adaptive mesh refinement. Appl Math Comput 272:460–478MathSciNetGoogle Scholar
- Burbeau A, Sagaut P, Bruneau ChH (2001) A problem-independent limiter for high-order Runge–Kutta discontinuous Galerkin methods. J Comput Phys 169:111–150ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Canuto C, Hussaini MY, Quarteroni A, Zang TA (2007) Spectral methods: evolution to complex geometries and applications to fluid dynamics (scientific computation). Springer, BerlinzbMATHGoogle Scholar
- Cargo P, Gallice G (1997) Roe matrices for ideal MHD and systematic construction of Roe matrices for systems of conservation laws. J Comput Phys 136:446ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Castro M, Costa B, Don WS (2011) High order weighted essentially non-oscillatory WENO-Z schemes for hyperbolic conservation laws. J Comput Phys 230:1766–1792ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Chadrashekar P, Klingenberg C (2016) Entropy stable finite volume scheme for ideal compressible MHD on 2D Cartesian meshes. SIAM J Numer Anal 54(2):1313–1340MathSciNetzbMATHCrossRefGoogle Scholar
- Chandrashekar P (2013) Kinetic energy preserving and entropy stable finite volume schemes for compressible Euler and Navier–Stokes equations. Commun Comput Phys 14:1252–1286MathSciNetzbMATHCrossRefGoogle Scholar
- Clain S, Diot S, Loubère R (2011) A high-order finite volume method for systems of conservation laws-Multi-dimensional Optimal Order Detection (MOOD). J Comput Phys 230:4028–4050ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Cockburn B, Shu C-W (1989) TVB Runge–Kutta local projection discontinuous Galerkin finite element method for conservation laws II: general framework. Math Comput 52:411–435MathSciNetzbMATHGoogle Scholar
- Cockburn B, Shu C-W (1998) The Runge–Kutta discontinuous Galerkin method for conservation laws V: multidimensional systems. J Comput Phys 141:199–224ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Cockburn B, Lin SY, Shu C-W (1989) TVB Runge–Kutta local projection discontinuous Galerkin finite element method for conservation laws III: one-dimensional systems. J Comput Phys 84:90–113ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Cockburn B, Hou S, Shu C-W (1990) TVB Runge–Kutta local projection discontinuous Galerkin finite element method for conservation laws IV: the multidimensional case. J Comput Phys 54:545–581zbMATHGoogle Scholar
- Cockburn B, Karniadakis G, Shu C-W (2000) The development of discontinuous Galerkin methods, In: Cockburn B, Karniadakis G, Shu C-W (eds) Discontinuous Galerkin methods: theory, computation and applications, lecture notes in computational science and engineering, vol 11, Springer, Berlin, Part I: overview, pp 3–50Google Scholar
- Colella P (1985) A direct Eulerian MUSCL scheme for gas dynamics. SIAM J Sci Stat Comput 6:104–117MathSciNetzbMATHCrossRefGoogle Scholar
- Colella P (1990) Multidimensional Upwind methods for hyperbolic conservation laws. J Comput Phys 87:171ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Colella P, Sekora MD (2008) A limiter for PPM that preserves accuracy at smooth extrema. J Comput Phys 227:7069ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Colella P, Woodward P (1984) The piecewise parabolic method (PPM) for gas-dynamical simulations. J Comput Phys 54:174–201ADSzbMATHCrossRefGoogle Scholar
- Cravero I, Semplice M (2016) On the accuracy of WENO and CWENO reconstructions of third order on nonuniform meshes. J Sci Comput 67:1219–1246MathSciNetzbMATHCrossRefGoogle Scholar
- Crockett RK, Colella P, Fisher RT, Klein RI, McKee CF (2005) An unsplit, cell-centered Godunov method for ideal MHD. J Comput Phys 203:422ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Dai W, Woodward PR (1994) Extension of the piecewise parabolic method to multidimensional ideal magnetohydrodynamics. J Comput Phys 115:485–514ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Dai W, Woodward PR (1998) On the divergence-free condition and conservation laws in numerical simulations for supersonic magnetohydrodynamic flows. Astrophys J 494:317–335ADSCrossRefGoogle Scholar
- Daubechies I (1992) Ten lectures on wavelets. SIAM, PhiladelphiazbMATHCrossRefGoogle Scholar
- Del Zanna L, Velli M, Londrillo P (2001) Parametric decay of circularly polarized Alfvén waves: multidimensional simulations in periodic and open domains. Astron Astrophys 367:705–718ADSCrossRefGoogle Scholar
- Del Zanna L, Bucciantini N, Londrillo P (2003) An efficient shock-capturing central-type scheme for multidimensional relativistic flows. Astron Astrophys 400:397–413ADSzbMATHCrossRefGoogle Scholar
- Del Zanna L, Zanotti O, Bucciantini N, Londrillo P (2007) ECHO: a Eulerian conservative high-order scheme for general relativistic magnetohydrodynamics and magnetodynamics. Astron Astrophys 473:11ADSCrossRefGoogle Scholar
- Deng X, Zhang H (2005) Developing high order weighted compact nonlinear schemes. J Comput Phys 203:22–44MathSciNetzbMATHCrossRefGoogle Scholar
- Derigs D, Winters AR, Gassner GJ, Walch S (2017) A novel averaging technique for discrete entropy-stable dissipation operators for ideal MHD. J Comput Phys 330:624ADSMathSciNetCrossRefGoogle Scholar
- DeVore CR (1991) Flux-corrected transport techniques for multidimensional compressible magnetohydrodynamics. J Comput Phys 92:142–160ADSzbMATHCrossRefGoogle Scholar
- Diot S, Clain S, Loubère R (2012) Improved detection criteria for the Multi-dimensional Optimal Order Detection (MOOD) on unstructured meshes with very high-order polynomials. Comput Fluids 64:43–63MathSciNetzbMATHCrossRefGoogle Scholar
- Diot S, Loubère R, Clain S (2013) The Multidimensional Optimal Order Detection method in the three-dimensional case: very high-order finite volume method for hyperbolic systems. Int J Numer Methods Fluids 73:362–392MathSciNetCrossRefGoogle Scholar
- Dubiner M (1991) Spectral methods for triangles and other domains. J Sci Comp 6:345–390MathSciNetzbMATHCrossRefGoogle Scholar
- Dumbser M, Balsara DS (2016) A new, efficient formulation of the HLLEM Riemann solver for general conservative and non-conservative hyperbolic systems. J Comput Phys 304:275–319ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Dumbser M, Käser M (2007) Arbitary high order non-oscillatory finite volume schemes on unstructured meshes for linear hyperbolic systems. J Comput Phys 221:693–723ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Dumbser M, Zanotti O (2009) Very high order \({\rm P}_{N}{\rm P}_{M}\) schemes on unstructured meshes for the resistive relativistic MHD equations. J Comput Phys 228:6991–7006Google Scholar
- Dumbser M, Käser M, Titarev VA, Toro EF (2007) Quadrature-free non-oscillatory finite volume schemes on unstructured meshes for nonlinear hyperbolic systems. J Comput Phys 226:204–243ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Dumbser M, Balsara DS, Toro EF, Munz C-D (2008) A unified framework for the construction of one-step finite volume and discontinuous Galerkin schemes on unstructured meshes. J Comput Phys 227:8209–8253ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Dumbser M, Zanotti O, Hidalgo A, Balsara DS (2013) ADER-WENO finite volume schemes with space-time adaptive mesh refinement. J Comp Phys 248:257–286ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Dumbser M, Zanotti O, Loubere R, Diot S (2014) A posteriori subcell limiting of the discontinuous Galerkin finite element method for hyperbolic conservation laws. J Comp Phys 278:47–75ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Einfeldt B (1988) On Godunov-type methods for gas dynamics. SIAM J Numer Anal 25(3):294–318MathSciNetzbMATHCrossRefGoogle Scholar
- Einfeldt B, Munz C-D, Roe PL, Sjogreen B (1991) On Godunov-type methods near low densities. J Comput Phys 92:273–295ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Eulderink F (1993) Numerical relativistic hydrodynamics, PhD Thesis, Rijksuniverteit te Leiden,Leiden, NetherlandsGoogle Scholar
- Eulderink F, Mellema G (1995) General relativistic hydrodynamics with a Roe solver. Astron Astrophys Suppl 110:587–623ADSGoogle Scholar
- Evans CR, Hawley JF (1989) Simulation of magnetohydrodynamic flows: a constrained transport method. Astrophys J 332:659ADSCrossRefGoogle Scholar
- Falle SAEG (2001) On the inadmissibility of non-evolutionary shocks. J Plasma Phys 65:29–58ADSCrossRefGoogle Scholar
- Falle SAEG, Komissarov SS (1996) An upwind numerical scheme for relativistic hydrodynamics with a general equation of state. Mon Not R Astron Soc 278:586–602ADSCrossRefGoogle Scholar
- Falle SAEG, Komissarov SS, Joarder P (1998) A multidimensional upwind scheme for magnetohydrodynamics. Mon Not R Astron Soc 297:265–277ADSCrossRefGoogle Scholar
- Fan P (2014) Higher-order weighted essentially nonoscillatory WENO-\(\eta \) schemes for hyperbolic conservation laws. J Comput Phys 269:355–385ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Fan P, Shen Y, Tian B, Yang C (2014) A new smoothness indicator for improving the weighted essentially nonoscillatory scheme. J Comput Phys 269:329–354ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Fedkiw RP, Marquina A, Merriman B (1999) An isobaric fix for the overheating problem in multimaterial compressible flows. J Comput Phys 148:545–578ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Florinski V, Guo X, Balsara DS, Meyer C (2013) MHD modeling of solar system processes on geodesic grids. Astrophys J Suppl 205:19ADSCrossRefGoogle Scholar
- Friedrichs O (1998) Weighted essentially non-oscillatory schemes for the interpolation of mean values on unstructured grids. J Comput Phys 144:194–212ADSMathSciNetCrossRefGoogle Scholar
- Font JA (2003) Numerical hydrodynamics in general relativity. Living Rev Relativ 6:4ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Font JA, Ibáñez JM, Martí JM, Marquina A (1994) Multidimensional relativistic hydrodynamics: characteristic fields and modern high-resolution shock-capturing schemes. Astron Astrophys 282:304–314ADSGoogle Scholar
- Fuchs FG, McMurry AD, Mishra S, Waagan K (2011) Simulating waves in the upper solar atmosphere with SURYA: a well-balanced high-order finite-volume code. Astrophys J 732:75ADSCrossRefGoogle Scholar
- Gammie CF, McKinney JC, Tóth G (2003) HARM: a numerical scheme for general relativistic magnetohydrodynamics. Astrophys J 589:444ADSCrossRefGoogle Scholar
- Garain S, Balsara DS, Reid J (2015) Comparing Coarray Fortran (CAF) with MPI for several structured mesh PDE applications. J Comput Phys 297:237–253ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Gardiner T, Stone JM (2005) An unsplit Godunov method for ideal MHD via constrained transport. J Comput Phys 205:509ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Gardiner T, Stone JM (2008) An unsplit Godunov method for ideal MHD via constrained transport in three dimensions. J Comput Phys 227:4123ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Gerolymos GA, Sénéchal D, Vallet I (2009) Very high order WENO schemes. J Comput Phys 228:8481–8524ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Giacomazzo B, Rezzolla L (2006) The exact solution of the Riemann problem in relativistic magnetohydrodynamics. J Fluid Mech 562:223–259ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Giacomazzo B, Rezzolla L (2007) WhiskyMHD: a new numerical code for general relativistic magnetohydrodynamics. Class Quantum Gravity 24(12):S235–S258ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Godunov SK (1959) A difference method for the numerical calculation of discontinuous solutions of the equations of hydrodynamics. Mat Sb 47:271–306MathSciNetzbMATHGoogle Scholar
- Goetz CR, Dumbser M (2016) A novel solver for the generalized Riemann problem based on a simplified LeFloch–Raviart expansion and a local space-time discontinuous Galerkin formulation. J Sci Comput 69:805–840MathSciNetzbMATHCrossRefGoogle Scholar
- Goetz CR, Iske A (2016) Approximate solutions of generalized Riemann problems for nonlinear systems of hyperbolic conservation laws. Math Comp 85:35–62MathSciNetzbMATHCrossRefGoogle Scholar
- Goetz CR, Balsara DS, Dumbser M (2017) A family of HLL-type solvers for the generalized Riemann problem. Comput Fluids. https://doi.org/10.1016/j.compfluid.2017.10.028
- Goldstein ML (1978) An instability of finite amplitude circularly polarized Alfvén waves. Astrophys J 219:700ADSMathSciNetCrossRefGoogle Scholar
- Gottlieb S (2005) On higher-order strong stability preserving Runge–Kutta and multistep time discretizations. J Sci Comput 25(1/2):105MathSciNetzbMATHGoogle Scholar
- Gottlieb D, Orzag S (1977) Numerical analysis of spectral methods: theory and applications, CBMS-NSF regional conference series in applied mathematics, 26. SIAM, PhiladelphiaCrossRefGoogle Scholar
- Gottlieb S, Shu C-W (1998) Total-variation-diminishing Runge–Kutta schemes. Math Comput 67:73–85ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Gottlieb S, Shu C-W, Tadmor E (2001) Strong stability-preserving higher-order time discretization methods. SIAM Rev 43(1):89–112ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Gottlieb S, Ketcheson D, Shu C-W (2011) Strong stability preserving Runge–Kutta and multistep time discretizations. World Scientific, SingaporezbMATHCrossRefGoogle Scholar
- Gourgoulhon E (2013) Special relativity in general frames: from particles to astrophysics. Springer, BerlinzbMATHCrossRefGoogle Scholar
- Gurski KF (2004) An HLLC-type approximate Riemann solver for ideal magnetohydrodynamics. SIAM J Sci Comput 25:2165MathSciNetzbMATHCrossRefGoogle Scholar
- Harten A (1977) The artificial compression method for computation of shocks and contact discontinuities. I. Single conservation laws. Commun Pure Appl Math 30:611Google Scholar
- Harten A (1983) High resolution schemes for conservation laws. J Comput Phys 49:357–393ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Harten A (1989) ENO schemes with subcell resolution. J Comput Phys 83:148ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Harten A, Lax PD, van Leer B (1983) On upstream differencing and Godunov-type schemes for hyperbolic conservation laws. SIAM Rev 25:289–315MathSciNetzbMATHCrossRefGoogle Scholar
- Harten A, Engquist B, Osher S, Chakravarthy S (1987) Uniformly high order essentially non-oscillatory schemes III. J Comput Phys 71:231–303ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Hawley JF, Smarr LL, Wilson JR (1984) A numerical study of nonspherical black hole accretion. I Equations and test problems. Astrophys J 277:296ADSCrossRefGoogle Scholar
- Henrick AK, Aslam TD, Powers JM (2006) Mapped weighted essentially non-oscillatoriy schemes: achieving optimal order near critical points. J Comput Phys 207:542–567ADSzbMATHCrossRefGoogle Scholar
- Hesthaven J, Warburton T (2008) Nodal discontinuous Galerkin methods: algorithms, analysis and applications. Springer, BerlinzbMATHCrossRefGoogle Scholar
- Hu C, Shu C-W (1999) Weighted essentially non-oscillatory schemes on triangular meshes. J Comput Phys 150:97–127ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Hu XY, Wang Q, Adams NA (2010) An adaptive central-upwind weighted essentially non-oscillatory scheme. J Comput Phys 229:8952–8965ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Hunsdorfer W, Ruuth SJ (2007) IMEX extensions of linear multistep methods with general monotonicity and boundedness properties. J Comput Phy 225:2016–2042ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Ibanez JM, Cordero-Carrion I, Aloy MA, Marti JM, Miralles JA (2015) On the convexity of relativistic ideal magnetohydrodynamics. Class Quantum Gravity 32:095007ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Ismail F, Roe PL (2009) Affordable, entropy-consistent Euler flux functions II: entropy production at shocks. J Comput Phys 228:5410–5436ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Jackson HJ (2017) On the eigenvalues of the ADER-WENO discontinuous Galerkin predictor. J Comput Phys 333:409–413ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Jayanti V, Hollweg JV (1993) On the dispersion relations for parametric instabilities of parallel-progagating Alfvén waves. J Geophys Res 98:13247–13252ADSCrossRefGoogle Scholar
- Jefferey A, Taniuti A (1964) Nonlinear wave propagation. Academic Press, New YorkGoogle Scholar
- Jiang G-S, Shu C-W (1996) Efficient implementation of weighted ENO schemes. J Comput Phys 126:202–228ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Käppeli R, Mishra S (2014) Well-balanced schemes for the Euler equations with gravitation. J Comput Phys 259:199–219ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Käppeli R, Mishra S (2016) A well-balanced finite volume scheme for the Euler equations with gravitation. The exact preservation of hydrostatic equilibrium with arbitrary entropy stratification. Astron Astrophys 587:94CrossRefGoogle Scholar
- Karniadakis GE, Sherwin SJ (1999) Spectral/hp element methods in CFD. Oxford University Press, OxfordzbMATHGoogle Scholar
- Käser M, Iske A (2005) ADER schemes on adaptive triangular meshes for scalar conservation laws. J Comput Phys 205:486–508ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Kidder LE et al (2017) SpECTRE: a task-based discontinuous Galerkin code for relativistic astrophysics. J Comput Phys 335:84–114ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Kim JH, Balsara DS (2014) A stable HLLC Riemann solver for relativistic magnetohydrodynamics. J Comput Phys 270:634–639ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Koide S, Shibata K, Kudoh T, Meier D (2001) Numerical method for general relativistic magnetohydrodynamics in kerr-space-time. J Korean Astron Soc 34:S215–S224Google Scholar
- Komissarov SS (1999) A Godunov-type scheme for relativistic MHD. Mon Not R Astron Soc 303:343ADSCrossRefGoogle Scholar
- Komissarov SS (2004) General relativistic magnetohydrodynamic simulations of monopole magnetospheres of black holes. Mon Not R Astron Soc 350:1431ADSCrossRefGoogle Scholar
- Komissarov SS (2006) On some recent developments in numerical methods for relativistic MHD. AIP Conf Proc 856:129ADSCrossRefGoogle Scholar
- Krivodonova L (2007) Limiters for high order discontinuous Galerkiin methods. J Comput Phys 226:879–896ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Kupka F, Happenhofer N, Higueras I, Koch O (2012) Total-variation-diminishing implicit-explicit Runge–Kutta methods for the simulation of double-diffusive convection in astrophysics. J Comput Phys 231:3561–3586ADSzbMATHCrossRefGoogle Scholar
- Kurganov A, Tadmor E (2000) New high-resolution central schemes for non-linear conservation laws and convection–diffusion equations. J Comput Phys 160:241–282ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Kurganov A, Noelle S, Petrova G (2001) Semidiscrete central-upwind schemes for hyperbolic conservation laws and Hamilton–Jacobi equations. SIAM J Sci Comput 23(4):707–740MathSciNetzbMATHCrossRefGoogle Scholar
- Lax PD, Liu XD (1998) Solution of two-dimensional Riemann problems of gas dynamics by positive schemes. SIAM J Sci Comput 19:319–340MathSciNetzbMATHCrossRefGoogle Scholar
- Lax PD, Wendroff B (1960) Systems of conservation laws. Commun Pure Appl Math 13:217–237zbMATHCrossRefGoogle Scholar
- LeBlanc JM, Wilson JR (1970) A numerical example of the collapse of a rotating magnetized star. Astrophys J 161:541ADSCrossRefGoogle Scholar
- LeFloch Ph, Raviart P (1988) An asymptotic expansion for the solution of the generalized Riemann problem. I. General theory. Ann Inst H Poincaré Anal Non Linéaire 5:179–207ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Lele S (1992) Compact finite difference schemes with spectral-like resolution. J Comput Phys 103:16–42ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Leonard BP, Lock AP, Macvean MK (1995) The NIRVANA scheme applied to one-dimensional advection. Int J Num Methods Heat Fluid Flow 5:341MathSciNetzbMATHCrossRefGoogle Scholar
- LeVeque RJ (1997) Wave propagation algorithms for multidimensional hyperbolic systems. J Comput Phys 131:327ADSzbMATHCrossRefGoogle Scholar
- Levy D, Puppo G, Russo G (2000) Compact central WENO schemes for multidimensional conservation laws. SIAM J Sci Comput 22:656–672MathSciNetzbMATHCrossRefGoogle Scholar
- Li S-T (2005) An HLLC Riemann solver for magnetohydrodynamics. J Comput Phys 203:344ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Liou MS (1996) A sequel to AUSM: AUSM+. J Comput Phys 129:364–82ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Liou MS (1998) Recent progress and applications of AUSM+. In: Bruneau CH (eds) Sixteenth international conference on numerical methods in fluid dynamics. Lecture notes in physics, vol 515. Springer, Berlin, pp 302–307Google Scholar
- Liou MS (2006) A sequel to AUSM, part II: AUSM+ for all speeds. J Comput Phys 214:137–70ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Liou MS, Steffen CJ (1993) A new flux splitting scheme. J Comput Phys 107:23–39ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Liou MS, van Leer B, Shuen JS (1990) Splitting of inviscid fluxes for real gases. J Comput Phys 87:1–24ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Liu XD, Lax PD (1996) Positive schemes for solving multi-dimensional hyperbolic systems of conservation laws. J Comput Fluid Dyn 5:133–156Google Scholar
- Liu Y, Zhang YT (2013) A robust reconstruction for unstructured WENO schemes. J Sci Comput 54:603–621MathSciNetzbMATHCrossRefGoogle Scholar
- Liu X-D, Osher S, Chan T (1994) Weighted essentially non-oscillatory schemes. J Comput Phys 115:200–212ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Liu Y, Shu C-W, Tadmor E, Zhang M (2008) L2 stability analysis of the central discontinuous Galerkin method and comparison between the central and regular discontinuous Galerkin methods. Math Model Numer Anal 42:593–607MathSciNetzbMATHCrossRefGoogle Scholar
- Londrillo P, Del Zanna L (2004) On the divergence-free condition in Godunov-type schemes for ideal magnetohydrodynamics: the upwind constrained transport method. J Comput Phys 195:17ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Lowrie RB, Roe P, van Leer B (1995) A space-time discontinuous Galerkin method for the time-accurate numerical solution of hyperbolic conservation laws. In: Proceedings of the 12 th AIAA computational fluid dynamics conference Paper 95-1658Google Scholar
- Marquina A (1994) Local piecewise hyperbolic reconstruction of numerical fluxes for nonlinear scalar conservation laws. SIAM J Sci Comput 15:892MathSciNetzbMATHCrossRefGoogle Scholar
- Marquina A, Martí JM, Ibáñez JM, Miralles JA, Donat R (1992) Ultrarelativistic hydrodynamics: high-resolution shock-capturing methods. Astron Astrophys 258:566–571ADSGoogle Scholar
- Martí JM, Müller E (1994) The analytical solution of the Riemann problem in relativistic hydrodynamics. J Fluid Mech 258:317–333ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Martí JM, Müller E (2003) Numerical hydrodynamics in special relativity. Living Rev Relativ 6:7ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Martí JM, Müller E (2015) Grid-based methods in relativistic hydrodynamics and magnetohydrodynamics. Living Rev Comput Astrophys 1:3ADSCrossRefGoogle Scholar
- Martí JM, Ibáñez JM, Miralles JA (1991) Numerical relativistic hydrodynamics: local characteristic approach. Phys Rev D 43:3794–3801ADSCrossRefGoogle Scholar
- Martin MP, Taylor EM, Wu M, Weirs VG (2006) A bandwidth-optimized WENO scheme for the effective direct numerical simulation of compressive turbulence. J Comput Phys 220:270–289ADSzbMATHCrossRefGoogle Scholar
- McCorquodale P, Colella P (2011) A higher-order finite-volume method for conservation laws on locally refined grids. Commun Appl Math Comput Sci 6(1):1–25Google Scholar
- McKinney JC (2006) General relativistic force-free electrodynamics: a new code and applications to black hole magnetospheres. Mon Not R Astron Soc 367:1797–1807ADSCrossRefGoogle Scholar
- McKinney JC, Tchekhovskoy A, Sadowski A, Narayan R (2014) Three-dimensional general relativistic radiation magnetohydrodynamical simulation of super-Eddington accretion, using a new code HARMRAD with M1 closure. Mon Not R Astron Soc 441:3177–3208ADSCrossRefGoogle Scholar
- Mocz P, Vogelsberger M, Sijacki D, Pakmor R, Hernquist L (2014) A discontinuous Galerkin method for solving the fluid and magnetohydrodynamic equations in astrophysical simulations. Mon Not R Astron Soc 437:397ADSCrossRefGoogle Scholar
- Montecinos G, Toro EF (2014) Reformulations for general advection–diffusion–reaction equations and locally implicit ADER schemes. J Comput Phys 275:415–442ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Montecinos G, Castro CE, Dumbser M, Toro EF (2012) Comparison of solvers for the generalized Riemann problem for hyperbolic systems with source terms. J Comput Phys 231:6472–6494ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Mignone A (2014) High-order conservative reconstruction schemes for finite volume methods in cylindrical and spherical coordinates. J Comput Phys 270:784–814ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Mignone A, Bodo G (2006) An HLLC Riemann solver for relativistic flows II—magnetohydrodynamics. Mon Not R Astron Soc 368:1040ADSCrossRefGoogle Scholar
- Mignone A, Plewa T, Bodo G (2005) The piecewise parabolic method for multidimensional relativistic fluid dynamics. Astrophys J 160:199–219ADSCrossRefGoogle Scholar
- Mignone A, Ugliano M, Bodo G (2009) A five-wave HLL Riemann solver for relativistic MHD. Mon Not R Astron Soc 393:1141ADSCrossRefGoogle Scholar
- Miyoshi T, Kusano K (2005) A multi-state HLL approximate Riemann solver for ideal magnetohydrodynamics. J Comput Phys 208:315–344ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Noble SC, Gammie CF, McKinney JC, Del Zanna L (2006) Primitive variable solvers for conservative general relativistic hydrodynamics. Astrophys J 641:626–637ADSCrossRefGoogle Scholar
- Norman ML, Wilson JR, Barton RT (1980) A new calculation of rotating protostellar collapse. Astrophys J 239:968ADSMathSciNetCrossRefGoogle Scholar
- Oran ES, Boris JP (1987) Numerical simulation of reactive flow. Elsevier, AmsterdamzbMATHGoogle Scholar
- Orszag SA, Tang CM (1979) Small-scale structure of two-dimensional magnetohydrodynamic turbulence. J Fluid Mech 90:129ADSCrossRefGoogle Scholar
- Osher S, Chakravarthy S (1984) High resolution schemes and the entropy condition. SIAM J Numer Anal 21:984–995MathSciNetzbMATHGoogle Scholar
- Osher S, Solomon F (1982) Upwind difference schemes for hyperbolic systems of conservation laws. Math Comput 38(158):339MathSciNetzbMATHCrossRefGoogle Scholar
- Pareschi L, Russo G (2005) Implicit-explicit Runge–Kutta schemes and applications to hyperbolic systems with relaxation. J Sci Comput 25:129MathSciNetzbMATHGoogle Scholar
- Pons JA et al (1998) General relativistic hydrodynamics with special relativistic Riemann solvers. Astron Astrophys 339:638–642ADSGoogle Scholar
- Pons JA, Martí JM, Müller E (2000) The exact solution of the Riemann problem with non-zero tangential velocities in relativistic hydrodynamics. J Fluid Mech 422:125–139ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Qian JZ, Li JQ, Wang SH (2014) The generalized Riemann problems for compressible fluid flows: towards high order. J Comput Phys 259:358–389ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Qiu J, Shu C-W (2002) On the construction, comparison and local characteristic decomposition of high-order central WENO schemes. J Comput Phys 183:187–209ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Qiu J, Shu C-W (2004) Hermite WENO schemes and their application as limiters for Runge–Kutta discontinuous Galerkin schemes: the one dimensional case. J Comput Phys 193:115ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Qiu J, Shu C-W (2005) Hermite WENO schemes and their application as limiters for Runge–Kutta discontinuous Galerkin schemes II: two-dimensional case. Comput Fluids 34:642–663MathSciNetzbMATHCrossRefGoogle Scholar
- Quirk JJ (1994) A contribution to the great Riemann solver debate. Int J Numer Methods Fluids 18:555MathSciNetzbMATHCrossRefGoogle Scholar
- Radice D, Rezzolla L, Galeazzi F (2014) High-order fully general-relativistic hydrodynamics: new approaches and tests. Class Quantum Gravity 31:075012ADSzbMATHCrossRefGoogle Scholar
- Rastigejev YA, Paolucci S (2006) Wavelet-based adaptive multiresolution computation of viscous reactive flows. Int J Numer Methods Fluids 52(7):749–784MathSciNetzbMATHCrossRefGoogle Scholar
- Reed WH, Hill TR (1973) Triangular mesh methods for the neutron transport equation, Technical Report LA-UR-73-479. Los Alamos Scientific Laboratory, Los AlamosGoogle Scholar
- Rezzolla L, Zanotti O (2001) An improved exact Riemann solver for relativistic hydrodynamics. J Fluid Mech 449:395ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Rezzolla L, Zanotti O (2013) Relativistic hydrodynamics. Oxford University Press, OxfordzbMATHCrossRefGoogle Scholar
- Roe PL (1981) Approximate Riemann solver, parameter vectors and difference schemes. J Comput Phys 43:357–372ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Roe PL (1986) Discrete models for the numerical analysis of time-dependent multidimensional gas dynamics. J Comput Phys 63:458ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Roe PL, Balsara DS (1996) Notes on the eigensystem of magnetohydrodynamics. SIAM J Appl Math 56:57MathSciNetzbMATHCrossRefGoogle Scholar
- Rogerson A, Meiburg E (1990) A numerical study of the convergence properties of ENO schemes. J Sci Comput 5:151zbMATHCrossRefGoogle Scholar
- Rusanov VV (1961) Calculation of interaction of non-steady shock waves with obstacles. J Comput Math Phys USSR 1:267Google Scholar
- Ryu D, Jones TW (1995) Numerical MHD in astrophysics: algorithm and tests for one-dimensional flow. Astrophys J 442:228ADSCrossRefGoogle Scholar
- Ryu D, Miniati F, Jones TW, Frank A (1998) A divergence-free upwind code for multidimensional magnetohydrodynamic flows. Astrophys J 509:244–255ADSCrossRefGoogle Scholar
- Ryu D, Chattopadhyay I, Choi E (2006) Equation of state in numerical relativistic hydrodynamics. Astrophys J Suppl 166:410–420ADSCrossRefGoogle Scholar
- Saltzman J (1994) An unsplit 3D upwind method for hyperbolic conservation laws. J Comput Phys 115:153–168ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Sanders R (1988) A third-order accurate variation nonexpansive difference for single non-linear conservation law. Math Comput 51:535–558zbMATHCrossRefGoogle Scholar
- Schaal K, Bauer A, Chandrashekar P, Pakmor R, Klingenberg C, Springel V (2015) Astrophysical hydrodynamics with a high-order discontinuous Galerkin scheme and adaptive mesh refinement. Mon Not R Astron Soc 453:4278ADSCrossRefGoogle Scholar
- Schwartzkopff T, Dumbser M, Munz C-D (2004) Fast high order ADER schemes for linear hyperbolic equations. J Comput Phys 197:532ADSzbMATHCrossRefGoogle Scholar
- Semplice M, Coco A, Russo G (2016) Adaptive mesh refinement for hyperbolic systems based on third-order compact WENO reconstruction. J Sci Comput 66:692–724MathSciNetzbMATHCrossRefGoogle Scholar
- Shi J, Hu C, Shu C-W (2002) A technique for treating negative weights in WENO schemes. J Comput Phys 175:108ADSzbMATHCrossRefGoogle Scholar
- Shu C-W (1988) Total variation-diminishing time discretizations. SIAM J Sci Stat Comput 9:1073–1084MathSciNetzbMATHCrossRefGoogle Scholar
- Shu C-W (2009) High order weighted essentially non-oscillatory schemes for convection dominated problems. SIAM Rev 51:82–126ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Shu C-W, Osher SJ (1988) Efficient implementation of essentially non-oscillatory shock capturing schemes. J Comput Phys 77:439–471ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Shu C-W, Osher SJ (1989) Efficient implementation of essentially non-oscillatory shock capturing schemes II. J Comput Phys 83:32–78ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Sonntag M, Munz CD (2014) Shock capturing for discontinuous Galerkin methods using finite, vol subcells. Finite volumes for complex applications VII. Springer, Berlin, pp 945–953zbMATHGoogle Scholar
- Spiteri RJ, Ruuth SJ (2002) A new class of optimal high-order strong-stability-preserving time-stepping schemes. SIAM J Numer Anal 40:469–491MathSciNetzbMATHCrossRefGoogle Scholar
- Spiteri RJ, Ruuth SJ (2003) Non-linear evolution using optimal fourth-order strong-stability-preserving Runge–Kutta methods. Math Comput Simul 62:125–135MathSciNetzbMATHCrossRefGoogle Scholar
- Springel V (2010) E pur si muove: Galilean invariant cosmological simulations on a moving mesh. Mon Not R Astron Soc 401:791ADSCrossRefGoogle Scholar
- Stone JM, Norman ML (1992a) ZEUS-2D: a radiation magnetohydrodynamics code for astrophysical flows in two space dimensions. I. The hydrodynamic algorithms and tests. Astrophys J Suppl 80:753Google Scholar
- Stone JM, Norman ML (1992b) ZEUS-2D: a radiation magnetohydrodynamics code for astrophysical flows in two space dimensions. II. The magnetohydrodynamic algorithms and tests. Astrophys J Suppl 80:791Google Scholar
- Suresh A, Huynh HT (1997) Accurate monotonicity preserving scheme with Runge–Kutta time-stepping. J Comput Phys 136:83–99ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Swanson RC, Turkel E (1992) On central difference and upwind schemes. J Comput Phys 101:292–306ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Sweby PK (1984) High resolution schemes using flux-limiters for hyperbolic conservation laws. SIAM J Numer Anal 21:995–1011MathSciNetzbMATHCrossRefGoogle Scholar
- Synge JL (1957) The relativistic gas. North Holland, AmsterdamzbMATHGoogle Scholar
- Tadmor E (1988) Convenient total variation diminishing conditions for nonlinear difference schemes. SIAM J Numer Anal 25:1002–1014MathSciNetzbMATHCrossRefGoogle Scholar
- Taub AH (1948) Relativistic Rankine–Hugoniot equations. Phys Rev 74:328–343ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Tchekhovskoy A, McKinney JC, Narayan R (2007) WHAM: a WENO-based general relativistic numerical scheme—I. Hydrodynamics. Mon Not R Astron Soc 379:469–497ADSCrossRefGoogle Scholar
- Teukolsky SA (2015) Formulation of discontinuous Galerkin methods for relativistic astrophysics. J Comput Phys 312:333ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Titarev VA, Toro EF (2002) ADER: arbitrary high order Godunov approach. J Sci Comput 17(1–4):609–618MathSciNetzbMATHCrossRefGoogle Scholar
- Titarev VA, Toro EF (2005) ADER schemes for three-dimensional nonlinear hyperbolic systems. J Comput Phys 204:715–736ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Toro EF (2009) Riemann solvers and numerical methods for fluid dynamics. Springer, BerlinzbMATHCrossRefGoogle Scholar
- Toro EF, Titarev VA (2002) Solution of the generalized Riemann problem for advection reaction equations. Proc R Soc Lond Ser A 458:271–281ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Toro EF, Vázquez-Cendón E (2012) Flux splitting schemes for the Euler equations. Comput Fluids 70:1–12MathSciNetzbMATHCrossRefGoogle Scholar
- Toro EF, Spruce M, Speares W (1994) Restoration of the contact surface in the Harten–Lax–van Leer Riemann solver. Shock Waves 4:25–34ADSzbMATHCrossRefGoogle Scholar
- van der Vegt JJW, van der Ven H (2002a) Space-time discontinuous Galerkin finite element method with dynamic grid motion for inviscid compressible flows I. General formulation. J Comput Phys 182:546–585ADSMathSciNetzbMATHCrossRefGoogle Scholar
- van der Vegt JJW, van der Ven H (2002b) Space-time discontinuous Galerkin finite element method with dynamic grid motion for inviscid compressible flows II. Efficient flux quadrature. Comput Meth Appl Mech Eng 191:4747–4780MathSciNetzbMATHCrossRefGoogle Scholar
- van Leer B (1974) Towards the ultimate conservative difference scheme II. Monotonicity and conservation combined in a second order scheme. J Comput Phys 14:361–370ADSzbMATHCrossRefGoogle Scholar
- van Leer B (1977) Towards the ultimate conservative difference scheme. IV. A new approach to numerical convection. J Comput Phys 23:276–299ADSzbMATHCrossRefGoogle Scholar
- van Leer B (1979) Towards the ultimate conservative difference scheme V. A second order sequel to Godunov’s method. J Comput Phys 32:101–136ADSzbMATHCrossRefGoogle Scholar
- Vides J, Nkonga B, Audit E (2015) A simple two-dimensional extension of the HLL Riemann solver for hyperbolic conservation laws. J Comput Phys 280:643–675ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Vogelsberger M, Sijacki D, Kereš D, Springel V, Hernquist L (2012) Moving mesh cosmology: numerical techniques and global statistics. Mon Not R Astron Soc 425:3024ADSCrossRefGoogle Scholar
- Warburton TC (1998) Spectral/hp methods on polymorphic multi-domains: algorithms and applications, PhD thesis, Brown UniversityGoogle Scholar
- Warburton TC, Lomtev I, Kirby RM, Karniadakis GE (1998) A discontinuous Galerkin method for the Navier–Stokes equations in hybrid grids. In: Hafez M, Heinrich JC (eds) 10th International conference on finite element methods in fluids (1998)Google Scholar
- White CJ, Stone JM, Gammie CF (2016) An extension of the Athena++ code framework for GRMHD based on advanced Riemann solvers and staggered-mesh constrained transport. Astrophys J Suppl 225:22ADSCrossRefGoogle Scholar
- Winters AR, Gassner GJ (2016) Affordable, entropy conserving and entropy stable flux functions for the ideal MHD equations. J Comput Phys 304:72ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Winters AR, Derigs D, Gassner GJ, Walch S (2017) A uniquely defined entropy stable matrix dissipation operator for high Mach number ideal MHD and compressible Euler simulations. J Comput Phys 332:274ADSMathSciNetCrossRefGoogle Scholar
- Woodward P (1986) Piecewise-parabolic methods for astrophysical fluid dynamics. In: Winkler KHA, Norman ML (eds) Astrophysical radiation hydrodynamics. Reidel, Dordrecht, The Netherlands, pp 245–326Google Scholar
- Woodward P, Colella P (1984) The numerical simulation of two-dimensional fluid flow with strong shocks. J Comput Phys 54:115–173ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Xu Z-L, Lin G (2009d) Spectral/hp element method with hierarchical reconstruction for solving nonlinear hyperbolic conservation laws. Acta Math Sci 29:1737–1748MathSciNetzbMATHCrossRefGoogle Scholar
- Xu Z-L, Liu Y-J, Shu C-W (2009a) Hierarchical reconstruction for discontinuous Galerkin methods on unstructured grids with a WENO type linear reconstruction and partial neighboring cells. J Comput Phys 228:2194–2212ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Xu Z-L, Liu Y-J, Shu C-W (2009b) Hierarchical reconstruction for spectral volume method on unstructured grids. J Comput Phys 228:5787–5802ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Xu Z-L, Liu Y, Du H, Lin G, Shu C-W (2011) Point-wise hierarchical reconstruction for discontinuous Galerkin and finite volume methods for solving conservation laws. J Comput Phys 230:6843–6865ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Xu Z, Balsara DS, Du H (2016) Divergence-free WENO reconstruction-based finite volume scheme for ideal MHD equations on triangular meshes. Commun Comput Phys 19(04):841–880MathSciNetzbMATHCrossRefGoogle Scholar
- Yang H (1990) An artificial compression method for ENO schemes, the slope modification method. J Comput Phys 89:125ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Yang H, Li F (2016) Stability analysis and error estimates of an exactly divergence-free method for the magnetic induction equations. ESAIM Math Model Numer Anal 50(4):965–993MathSciNetzbMATHCrossRefGoogle Scholar
- Yee KS (1966) Numerical solution of initial boundary value problems involving Maxwell equation in an isotropic media. IEEE Trans Antenna Propag 14:302ADSzbMATHCrossRefGoogle Scholar
- Zachary AL, Malagoli A, Colella P (1994) A higher-order Godunov method for multi-dimensional ideal magnetohydrodynamics. SIAM J Sci Comput 15:263MathSciNetzbMATHCrossRefGoogle Scholar
- Zalesak ST (1981) High order “ZIP” differencing of convective fluxes. J Comput Phys 40:497–508ADSzbMATHCrossRefGoogle Scholar
- Zanotti O, Dumbser M (2016) Efficient conservative ADER schemes based on WENO reconstruction and space-time predictor in primitive variables. Comput Astrophys Cosmol 3:1–32ADSCrossRefGoogle Scholar
- Zanotti O, Fambri F, Dumbser M (2015) Solving the relativistic magnetohydrodynamics equations with ADER discontinuous Galerkin methods, a posteriori subcell limiting and adaptive mesh refinement. Mon Not R Astron Soc 452:3010ADSCrossRefGoogle Scholar
- Zha ZC, Bilgen E (1993) Numerical solutions of Euler equations by using a new flux vector splitting scheme. Int J Numer Methods Fluids 17:115–144MathSciNetzbMATHCrossRefGoogle Scholar
- Zhang M, Shu C-W (2005) An analysis of and a comparison between the discontinuous Galerkin and the spectral finite volume methods. Comput Fluids 34:581–592zbMATHCrossRefGoogle Scholar
- Zhang Y-T, Shu C-W (2009) Third order WENO scheme on three-dimensional tetrahedral meshes. Commun Comput Phys 5:836–848MathSciNetzbMATHGoogle Scholar
- Zhang X, Shu C-W (2010) On positivity preserving high order discontinuous Galerkin schemes for compressible Euler equations on rectangular meshes. J Comput Phys 229:8918ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Zhang S, Jiang S, Shu C-W (2008) Development of nonlinear weighted compact schemes with increasing order of accuracy. J Comput Phys 227:7294–7321ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Zhong X, Shu CW (2013) A simple weighted essentially nonoscillatory limiter for Runge–Kutta discontinuous Galerkin methods. J Comput Phys 232:397–415ADSMathSciNetCrossRefGoogle Scholar
- Zhu J, Qiu J (2011) Local DG method using WENO type limiters for convection–diffusion problems. J Comput Phys 230:4353–4375ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Zhu J, Qiu J (2016) A new fifth order finite difference WENO scheme for solving hyperbolic conservation laws. J Comput Phys 318:110–121ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Zhu J, Qiu J, Shu C-W, Dumbser MD (2008) Runge–Kutta discontinuous Galerkin method using WENO limiters II: unstructured meshes. J Comput Phys 227:4330–4353ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Zhu J, Zhong X, Shu C-W, Qiu J (2013) Runge–Kutta discontinuous Galerkin method using a new type of WENO limiters on unstructured meshes. J Comput Phys 248:200–220ADSMathSciNetzbMATHCrossRefGoogle Scholar
- Zikoski ZJ (2011) A parallel adaptive wavelet method for multidimensional simulations of hypersonic propulsion, PhD Thesis, University of Notre DameGoogle Scholar

## Copyright information

**Open Access**This 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.