8 Algorithms and Codes for Finding Apparent Horizons
Many researchers have studied the apparent horizon finding problem, and there are a large
number of different apparent horizon finding algorithms and codes. Almost all of these require
(assume) that any apparent horizon to be found is a Strahlkörper (Section 2) about some local
coordinate origin; both finite-difference and spectral parameterizations of the Strahlkörper are
For slices with continuous symmetries, special algorithms are sometimes used:
Zero-Finding in Spherical Symmetry
- (Section 8.1)
In spherical symmetry the apparent horizon equation (16) becomes a 1-dimensional nonlinear
algebraic equation, which can be solved by zero-finding.
The Shooting Algorithm in Axisymmetry
- (Section 8.2)
In axisymmetry the apparent horizon equation (16) becomes a nonlinear 2-point boundary
value ODE, which can be solved by a shooting algorithm.
Alternatively, all the algorithms described below for generic slices are also applicable to axisymmetric
slices and can take advantage of the axisymmetry to simplify the implementation and boost
For fully generic slices, there are several broad categories of apparent horizon finding algorithms and
- (Section 8.3)
These algorithms define a scalar norm on over the space of possible trial surfaces. A
general-purpose scalar-function-minimization routine is then used to search trial-surface-shape
space for a minimum of this norm (which should give ).
Spectral Integral-Iteration Algorithms
- (Section 8.4)
These algorithms expand the (Strahlkörper) apparent horizon shape function in a
spherical-harmonic basis, use the orthogonality of spherical harmonics to write the apparent
horizon equation as a set of integral equations for the spectral coefficients, and solve these
equations using a functional-iteration algorithm.
- (Section 8.5)
These algorithms write the apparent horizon equation (16) as a nonlinear elliptic
(boundary-value) PDE for the horizon shape and solve this PDE using (typically) standard
elliptic-PDE numerical algorithms.
- (Section 8.6)
Horizon pretracking solves a slightly more general problem than apparent horizon finding:
Roughly speaking, the determination of the smallest such that the equation
has a solution, and the determination of that solution. By monitoring the time evolution of
and of the surfaces satisfying this condition, we can determine – before it appears –
approximately where (in space) and when (in time) a new MOTS will appear in a dynamic
numerically-evolving spacetime. Horizon pretracking is implemented as a 1-dimensional
(binary) search using a slightly-modified elliptic-PDE apparent horizon finding algorithm as a
- (Section 8.7)
These algorithms start with a large 2-surface (larger than any possible apparent horizon in
the slice) and shrink it inwards using an algorithm which ensures that the surface will stop
shrinking when it coincides with the apparent horizon.
I describe the major algorithms and codes in these categories in detail in the following.