The PITT code uses a standard Bondi-Sachs null coordinate system,). The NQS gauge takes advantage of the possibility of mapping the angular part of the Bondi metric conformally onto a unit sphere metric, so that . The required transformation is in general dependent upon and so that the NQS angular coordinates are not constant along the outgoing null rays, unlike the Bondi-Sachs angular coordinates. Instead the coordinates display the analogue of a shift on the null hypersurfaces . In addition, the NQS spheres are not the same as the Bondi spheres. The radiation content of the metric is contained in a shear vector describing this shift. This results in the description of the radiation in terms of a spin-weight 1 field, rather than the spin-weight 2 field associated with in the Bondi-Sachs formalism. In both the Bondi-Sachs and NQS gauges, the independent gravitational data on a null hypersurface is the conformal part of its degenerate 3-metric. The Bondi-Sachs null data consists of , which determines the intrinsic conformal metric of the null hypersurface. In the NQS case, and the shear vector comprises the only non-trivial part of the conformal 3-metric. Both the Bondi-Sachs and NQS gauges can be arranged to coincide in the special case of shear-free Robinson-Trautman metrics [71, 20].
The formulation of Einstein’s equations in the NQS gauge is presented in , and the associated gauge freedom arising from dependent rotation and boosts of the unit sphere is discussed in . As in the PITT code, the main equations involve integrating a hierarchy of hypersurface equations along the radial null geodesics extending from the inner boundary to null infinity. In the NQS gauge the source terms for these radial ODE’s are rather simple when the unknowns are chosen to be the connection coefficients. However, as a price to pay for this simplicity, after the radial integrations are performed on each null hypersurface a first order elliptic equation must be solved on each cross-section to reconstruct the underlying metric.
The PITT code is an explicit second order finite difference evolution algorithm based upon retarded time steps on a uniform three-dimensional null coordinate grid. The straightforward numerical approach and the second order convergence of the finite difference equations has facilitated code development. The Canberra code uses an assortment of novel and elegant numerical methods. Most of these involve smoothing or filtering and have obvious advantage for removing short wavelength noise but would be unsuitable for modeling shocks.
Both codes require the ability to handle tensor fields and their derivatives on the sphere. Spherical coordinates and spherical harmonics are natural analytic tools for the description of radiation, but their implementation in computational work requires dealing with the impossibility of smoothly covering the sphere with a single coordinate grid. Polar coordinate singularities in axisymmetric systems can be regularized by standard tricks. In the absence of symmetry, these techniques do not generalize and would be especially prohibitive to develop for tensor fields.
A crucial ingredient of the PITT code is the eth-module  which incorporates a computational version of the Newman-Penrose eth-formalism . The eth-module covers the sphere with two overlapping stereographic coordinate grids (North and South). It provides everywhere regular, second order accurate, finite difference expressions for tensor fields on the sphere and their covariant derivatives. The eth-calculus simplifies the underlying equations, avoids spurious coordinate singularities and allows accurate differentiation of tensor fields on the sphere in a computationally efficient and clean way. Its main weakness is the numerical noise introduced by interpolations (fourth order accurate) between the North and South patches. For parabolic or elliptic equations on the sphere, the finite difference approach of the eth-calculus would be less efficient than a spectral approach, but no parabolic or elliptic equations appear in the Bondi-Sachs evolution scheme.
The Canberra code handles fields on the sphere by means of a 3-fold representation: (i) as discretized functions on a spherical grid uniformly spaced in standard coordinates, (ii) as fast-Fourier transforms with respect to (based upon a smooth map of the torus onto the sphere), and (iii) as a spectral decomposition of scalar, vector, and tensor fields in terms of spin-weighted spherical harmonics. The grid values are used in carrying out nonlinear algebraic operations; the Fourier representation is used to calculate -derivatives; and the spherical harmonic representation is used to solve global problems, such as the solution of the first order elliptic equation for the reconstruction of the metric, whose unique solution requires pinning down the gauge freedom. The sizes of the grid and of the Fourier and spherical harmonic representations are coordinated. In practice, the spherical harmonic expansion is carried out to 15th order in , but the resulting coefficients must then be projected into the subspace in order to avoid inconsistencies between the spherical harmonic, grid, and Fourier representations.
The Canberra code solves the null hypersurface equations by combining an 8th order Runge-Kutta integration with a convolution spline to interpolate field values. The radial grid points are dynamically positioned to approximate ingoing null geodesics, a technique originally due to Goldwirth and Piran  to avoid the problems with a uniform -grid near a horizon which arise from the degeneracy of an areal coordinate on a stationary horizon. The time evolution uses the method of lines with a fourth order Runge-Kutta integrator, which introduces further high frequency filtering.
In practical runs, the major source of inaccuracy is the spherical harmonic resolution, which was restricted to by hardware limitations. Truncation of the spherical harmonic expansion has the effect of modifying the equations to a system for which the constraints are no longer satisfied. The relative error in the constraints is for strong field simulations .
The PITT code was originally formulated in the second differential form of Equations (22, 23, 24, 25), which in the spin-weighted version leads to an economical number of 2 real and 2 complex variables. Subsequently, the variable encountered an oscillatory error pattern in the angular directions near the time of fission. The origin of the problem was tracked to numerical error of an oscillatory nature introduced by terms in the hypersurface and evolution equations. Gómez’ solution was to remove the offending second angular derivatives by introducing additional variables and reducing the system to first differential order in the angular directions. This suppressed the oscillatory mode and subsequently improved performance in the simulation of the white hole fission problem  (see Section 3.7.2).
This success opens the issue of whether a completely first differential order code might perform even better, as has been proposed by Gómez and Frittelli . They gave a first order quasi-linear formulation of the Bondi system which, at the analytic level, obeys a standard uniqueness and existence theorem (extending previous work for the linearized case ); and they point out, at the numerical level, that a first order code could also benefit from the applicability of standard numerical techniques. This is an important issue which is not simple to resolve without code comparison. The part of the code in which the operator introduced the oscillatory error mode was not identified in , i.e. whether it originated in the inner boundary treatment or in the interpolations between stereographic patches where second derivatives might be troublesome. There are other possible ways to remove the oscillatory angular modes, such as adding angular dissipation or using more accurate methods of patching the sphere. The current finite difference algorithm only introduces numerical dissipation in the radial direction . The economy of variables in the original Bondi scheme should not be abandoned without further tests and investigation.
A natural physical application of a characteristic evolution code is the nonlinear version of the classic problem of scattering off a Schwarzschild black hole, first solved perturbatively by Price . Here the inner worldtube for the characteristic initial value problem consists of the ingoing branch of the hypersurface (the past horizon), where Schwarzschild data are prescribed. The nonlinear problem of a gravitational wave scattering off a Schwarzschild black hole is then posed in terms of data on an outgoing null cone which describe an incoming pulse with compact support. Part of the energy of this pulse falls into the black hole and part is backscattered to . This problem has been investigated using both the PITT and Canberra codes.
The Pittsburgh group studied the backscattered waveform (described by the Bondi news function) as a function of incoming pulse amplitude. The computational eth-module smoothly handled the complicated time dependent transformation between the non-inertial computational frame at and the inertial (Bondi) frame necessary to obtain the standard “plus” and “cross” polarization modes. In the perturbative regime, the news corresponds to the backscattering of the incoming pulse off the effective Schwarzschild potential. When the energy of the pulse is no larger than the central Schwarzschild mass, the backscattered waveform still depends roughly linearly on the amplitude of the incoming pulse. However, for very high amplitudes the waveform behaves quite differently. Its amplitude is greater than that predicted by linear scaling and its shape drastically changes and exhibits extra oscillations. In this very high amplitude case, the mass of the system is completely dominated by the incoming pulse, which essentially backscatters off itself in a nonlinear way.
The Canberra code was used to study the change in Bondi mass due to the radiation . The Hawking mass was calculated as a function of radius and retarded time, with the Bondi mass then obtained by taking the limit . The limit had good numerical behavior. For a strong initial pulse with angular dependence, in a run from to (in units where the interior Schwarzschild mass is 1), the Bondi mass dropped from 1.8 to 1.00002, showing that almost half of the initial energy of the system was backscattered and that a surprisingly negligible amount of energy fell into the black hole. A possible explanation is that the truncation of the spherical harmonic expansion cuts off wavelengths small enough to effectively penetrate the horizon. The Bondi mass decreased monotonically in time, as necessary theoretically, but its rate of change exhibited an interesting pulsing behavior whose time scale could not be obviously explained in terms of quasinormal oscillations. The Bondi mass loss formula was confirmed with relative error of less than . This is impressive accuracy considering the potential sources of numerical error introduced by taking the limit of the Hawking mass with limited resolution. The code was also used to study the appearance of logarithmic terms in the asymptotic expansion of the Weyl tensor . In addition, the Canberra group studied the effect of the initial pulse amplitude on the waveform of the backscattered radiation, but did not extend their study to the very high amplitude regime in which qualitatively interesting nonlinear effects occur.
The PITT code has also been implemented to evolve along an advanced time foliation by ingoing null cones, with data given on a worldtube at their outer boundary and on the initial ingoing null cone. The code was used to evolve a black hole in the region interior to the worldtube by implementing a horizon finder to locate the marginally trapped surface (MTS) on the ingoing cones and excising its singular interior . The code tracks the motion of the MTS and measures its area during the evolution. It was used to simulate a distorted “black hole in a box” . Data at the outer worldtube was induced from a Schwarzschild or Kerr spacetime but the worldtube was allowed to move relative to the stationary trajectories; i.e. with respect to the grid the worldtube is fixed but the black hole moves inside it. The initial null data consisted of a pulse of radiation which subsequently travels outward to the worldtube where it reflects back toward the black hole. The approach of the system to equilibrium was monitored by the area of the MTS, which also equals its Hawking mass. When the worldtube is stationary (static or rotating in place), the distorted black hole inside evolved to equilibrium with the boundary. A boost or other motion of the worldtube with respect to the black hole did not affect this result. The marginally trapped surface always reached equilibrium with the outer boundary, confirming that the motion of the boundary was “pure gauge”.
The code runs “forever” even when the worldtube wobbles with respect to the black hole to produce artificial periodic time dependence. An initially distorted, wobbling black hole was evolved for a time of , longer by orders of magnitude than permitted by the stability of other existing 3D black hole codes at the time. This exceptional performance opens a promising new approach to handle the inner boundary condition for Cauchy evolution of black holes by the matching methods reviewed in Section 4.
Note that setting the pulse to zero is equivalent to prescribing shear free data on the initial null cone. Combined with Schwarzschild boundary data on the outer world tube, this would be complete data for a Schwarzschild space time. However, the evolution of such shear free null data combined with Kerr boundary data would have an initial transient phase before settling down to a Kerr black hole. This is because the twist of the shear-free Kerr null congruence implies that Kerr data specified on a null hypersurface are not generally shear free. The event horizon is an exception but Kerr null data on other null hypersurfaces have not been cast in explicit analytic form. This makes the Kerr spacetime an awkward testbed for characteristic codes. (Curiously, Kerr data on a null hypersurface with a conical type singularity do take a simple analytic form, although unsuitable for numerical evolution .) Using some intermediate analytic results of Israel and Pretorius , Venter and Bishop  have recently constructed a numerical algorithm for transforming the Kerr solution into Bondi coordinates and in that way provide the necessary null data numerically.
© Max Planck Society and the author(s)