Chapter 4
Numerical Methods
In this chapter we describe in detail the numerical schemes we have included in our algorithm. Most of the material herein is based on established numerical methods widely used in computational fluid dynamics. Suitable references for a more in-depth guide to these methods are the books of Laney [67], LeVeque [69], and Toro [109].
Some methods described in this chapter, particularly the MUSTA approach, are less well-known, and we include references to specific papers where appropriate. Further, the analysis of the MUSTA approach and the generalisation of the SLIC scheme to a curvi-linear grid and to a non-flat metric are our own.
Although this can easily be extended to higher orders of accuracy, there is the problem that derivatives are undefined at discontinuities, so that the approximation (4.1) cannot converge to∂u/∂x as ∆x→0.
This can be overcome by the construction of conservative and shock-capturing finite-difference schemes, such as the conservative finite-difference WENO schemes presented by Xing and Shu [114], but we do not use these approaches here.
Since we wish to evolve fluids, which can develop shocks even from an initially smooth flow, basic finite-difference methods without conservative or shock-capturing corrections are not appropriate for use here. However, the space-time metric is known to be at least twice differentiable (two derivatives are required for the definition of the Einstein tensor), and so it may be possible to use finite-difference methods for this. In fact, we use finite-difference methods as a comparison with other works in testing the metric evolution. However, the most that we can say about gµν is that it has a second derivative.
That this derivative is not necessarily continuous is clear from the fact thatGµν, a combination of second derivatives ofgµν, is set equal to 8πTµν, which contains the fluid variables. Since the fluid variables may be discontinuous, the second derivatives of gµν may also be discontinuous, so that the first derivatives, which include variables that we are evolving, will then have obvious kinks in them, and so not be suitable for evolution with finite-difference schemes.
Finite-volume methods, on the other hand, are based on the concept of a conserved quantity, averaged over a given volume, which is updated using the notion of the flux of that quantity through the surface of the volume. The archetypal conservation law is
∂u
∂t +∂Fi(u)
∂xi =0, (4.2)
which we can rewrite in its integrated (weak) form Z
udxi+ Z
Fi(u) dt=0, (4.3)
or, in a form more suited to relativity:
Z
V∇µFµdV = Z
∂V
FµdSµ =0, (4.4)
whereFµ = (u,Fi), andV is a space-time volume. Equation (4.4) best exemplifies the conservation law, but the form (4.3) is more usually seen in CFD literature.
In the case of a fluid, where mass and momentum are conserved, this is easily imagined in terms of the mass-flux through the surface of a region; the only way for mass to pass from inside the region to outside is to go through the boundary. This is more evident in the four-dimensional conservation law (4.4). With the integrated form (4.3) there is no difficulty if a variable is discontinuous somewhere in that volume. The form (4.2) is seen more often, but is of course undefined for discontinuous fluid variables.
Stable finite-volume methods tend to be somewhat harder to design and implement for high orders of accuracy than finite-difference methods. In this work, therefore, we restrict ourselves to second-order methods, and seek to improve the overall accuracy of a scheme within that constraint without using to a higher-order approach. We note that, even allowing for this approach, we can still achieve levels of accuracy similar to those of higher-order schemes such as those used by Del Zanna and Bucciantini [117].
In many systems of equations, the zero right-hand side in (4.2) is replaced by so-called source-terms.
These can be seen both in the Bona-Mass´o equations (3.39)-(3.44) and the GRHD equations (3.5). In both these cases, the sources depend only on the solution variables themselves. However, in general, the sources may depend on derivatives of the variables as well, and this is the case for the BSSN formulation of Einstein’s equations [18]. The way in which the evolution of the source terms is calculated and coupled with the flux terms is discussed in§4.4.
4.1.2 Grid Structure
In order to evolve a space-time that includes a black hole, one approach is to excise the singularity so as to avoid having to evolve the space-time or fluid in regions of large, tending to infinite, curvature, which could cause numerical overflows or slow evolution due to the maximum stable time-step being reduced dramatically by small grid cells. Many current codes, such as those described in §2.3, are restricted to Cartesian grids, and therefore need to use Lego°R excision as demonstrated in Figure 4.1. However, this leads to a jagged excision edge which could cause problems in implementing stable boundary conditions.
Note that if we wanted to use a cubic excision region, its size would be severely constrained as noted in the Introduction and Appendix of [26], to the extent that it is not possible to use such an excision for high-spin Kerr black holes. Further discussion on the location of the excision boundary can be found in the work of Szil´agyiet al.[103].
The excision will be done inside the apparent horizon of any black hole present so that, physically speaking, no information, including any about instabilities, should be capable of leaving the black hole’s event horizon. However, numerical instabilities need not be constrained by physical properties of the system, and so there is no guarantee that any instabilities would not affect the space-time outside the horizon.
In fact, as previously discussed in§2.2.1, the speed of propagation of the gauge is not constrained by physical considerations. Errors in computing the gauge as a result of excision could therefore propagate outside the event horizon. Particular care therefore has to be taken when evolving the metric to ensure that the excision boundary conditions do not affect the solution.
There is also the issue of whether, having excised a region inside the apparent horizon, the problem remains well-posed in the discrete sense, since we have introduced a non-physical boundary, on which
Figure 4.1: Excising a circle in a Cartesian domain by means of Lego°R excision.
boundary conditions must be specified. Work on this topic has been performed by Kreiss and collaborators ([65] and [66]). However, since in this thesis we only use excision when evolving fluid and not the metric, these issues will not concern us further.
It would therefore seem prudent to use a spherical grid for the evolution of a fluid in a black hole space- time. This improves on Cartesian grids in two ways. Firstly, it allows for a smooth excision boundary at some radius inside the apparent horizon of the black hole, which is far easier to deal with from a numerical point of view, and also from an implementation point of view as a Lego°R excision boundary requires some extra logic to alter the numerical method used on the excision boundary. Secondly, a spherical coordinate system only requires the number of grid cells to be increased by a factor of two for a doubling in the outer radius of the domain.
Spherical coordinates do have drawbacks, however. Near to the poles, the grid cells become very small in their longitudinal dimension, and this leads to requiring very small time-steps in order to keep the simulation stable, so that a large amount of computational time is required. Further, there is also the problem of the coordinate singularity along the axis. This requires a substantial amount of analytical work to overcome, in order to regularise Einstein’s equations for solution on a spherical coordinate system.
The work of Rinne [89] contains details of such a regularisation.
The issue of prohibitively small grid cells can be avoided by using two or more grids to cover dif- ferent segments of the domain, so that no one grid contains a singularity. The issue of the coordinate system singularity can also be overcome by using different coordinate systems on the different patches, as demonstrated by Thornburg [106].
However, this requires us to interpolate the evolving solution between the grids. There are two possible approaches to performing this interpolation. The first is to allow the various grids merely to touch. This, however, is not suitable for non-smooth solutions, such as we expect to find in fluids. Having grids that touch means that, at the grid boundaries, only information from one side, i.e. inside the grid, is available.
When we need to evolve a solution here, we cannot expect that a one-sided numerical scheme as might be used in the finite-difference approach would be suitable since, if a discontinuity approached a grid boundary, a one-sided reconstruction would not allow the grid onto which the discontinuity was passing to know about the incoming discontinuity. Some way is therefore needed to have information from both sides of a boundary available to the numerical scheme at once, so that a suitable reconstruction can be made, even for non-smooth solutions.
We therefore use the second approach, which is to allow the grids to overlap, and then grid cells on the boundary of one grid can interpolate from cells inside the evolved domain of the other grid. We would, however, need to ensure that the interpolation be robust and not lead to numerical oscillations or unphysical instabilities.
We note that making this generalisation will allow for the use of completely general overlapping sets of grids. An example would be the use of a global spherical set of coordinates (constructed out of two or more grids to avoid singularities), and another local spherical set of grids, so as to excise the singularities of two black holes (see §8.6). Other approaches to the same problem require either Lego°R excision or carefully constructed domains.
We believe that the advantages of using overlapping grids are greater than the problems caused by having to implement methods capable of evolving on the general grids. Several of these problems are obviated by using a system such as Overture that implements all the interpolation between different grids, for a completely general grid structure. Overture is also capable of generating grids for AMR (see
§4.9), which is an extra advantage.
4.1.3 Mesh Adaptation
Second-order finite-volume schemes are so-called because they are second-order on smooth solutions.
However, near to discontinuities, they reduce to first-order convergence in order not to introduce nu- merical instabilities nearby, in accordance with Godunov’s theorem (see §4.2.1). It is therefore the case that finite-volume schemes are at their least accurate near discontinuities, the very features we wish to capture. Ideally, we should like to be able to run the simulation at a sufficiently high resolution that the discontinuities would be captured reasonably well. However, our computational resources are finite, so it would seem to be worthwhile to seek to increase resolution only at shocks, so that smooth parts of the solution are evolved at a low resolution, and shocks are evolved at a higher resolution. We would
therefore require that the regions of high resolution follow the shocks dynamically. Such an approach was invented by Berger and Oliger [19], and is known as Adaptive Mesh Refinement, or AMR. We have included this in our algorithm. More details are given in§4.9.