For a relativistic test fluid described by a density
,
specific internal energy
,
and 4-velocity
,
we define the transport velocity
as follows:
Using these variables the conservation laws can be rewritten into a form suitable for finite differencing. The equation for mass conservation is written
Conservation of the fluid energy-momentum tensorThe GR hydrodynamics code evolves time-explicit, operator-split, finite
difference forms of equations (5)--(7).
The algorithm is a three-dimensional generalization of the solver described
in HSWb, with some additional modifications. For example, velocity renormalization,
,
which is invoked in the source and transport steps following the solution
of the discretized momentum equation (6)
is now implemented using the algebraically equivalent condition
for improved numerical stability. Several improvements are possible because
of the increase in computer power since 1984. Analytically determined metric
terms and metric derivatives are now calculated and stored at all needed
grid locations rather than averaged. Array operations have also been streamlined
wherever possible using Fortran 90 array syntax. The code uses message
passing parallelism with a form of domain decomposition, where the global
grid is partitioned into subgrids, with each subgrid assigned to a processor.
Data on each subgrid is evolved independently during the source and transport
phases of a timestep and data on subgrid boundaries is exchanged at the
end of each phase through message-passing calls. This results in a highly
scalable code that exhibits good speedup over the full range of practically
realizable subgrids.
The present simulations have been designed as a follow-on to the results
in H91, but unlike the code used there, we do not need to impose equatorial
symmetry. The calculations performed on a 64
x 32 x 64
-grid
in H91 correspond to a 64
x 64 x 64 grid here. The ergosphere can be part of the computational domain,
but at the event horizon,
,
some of the Boyer-Lindquist metric terms are singular, so the inner edge
of the radial grid must lie at some point outside the horizon, continuing
out to some selected outer grid boundary. Although the horizon itself can
never be part of the computational grid, tests indicate that it is possible
to come arbitrarily close to the horizon (e.g., rin
= 2.001 M for the Schwarzschild case). But this comes at a steep
price: the narrow region where the metric terms diverge rapidly must be
covered by a large number of grid zones (in the extreme Kerr limit, the
number of zones inside the ergosphere could be as high as the number of
zones that lie outside it). In addition to consuming large amounts of memory
in a three dimensional simulation, these innermost grid zones can significantly
reduce the time step size, greatly increasing the total computational time.
The specific location of the inner edge of the grid is determined by a
balance between the physical phenomena of interest in a simulation and
the memory and performance demands. For the hydrodynamic torus simulations
considered here, the region near the horizon is of secondary interest,
so the inner grid boundary, rmin, was set at or just
inside the static limit on the equator,
.
In the runs reported here, this ranged from rin
= 1.90 M for the smaller grids to rin
= 2.05 M for the larger grids. The polar grid extends almost to
the rotational axes at
and
,
but the axes themselves are not included. As in non-relativistic codes,
the polar axes are problematic due to the shrinking of zone volumes, and
the collapse of the inner radial zone face at r = 0. These problems
are further compounded by the fact that, here again, some metric components
are singular. Torus stability studies do not require the axes, and their
omission is not important to the present simulations. Regularized operators
will be introduced in future work. The radial and polar grids use logarithmic
scaling for all runs in order to concentrate zones near the horizon and
the equator. The azimuthal angle
spans the full range from 0 to
with equally-spaced grid zones and periodic boundary conditions. Previous
studies of the Papaloizou-Pringle instability show that using the full
range is important as the most important unstable modes have azimuthal
wavenumber m=1.
The time step
is determined by the extremal light-crossing time for a grid zone, as described
in HSWb. This time step size remains fixed for the duration of the simulation
since it is a purely geometric result.
The initial state for a simulation is generated from the thick disk equilibrium solution (described in §3) with given input parameters. This initial configuration is then perturbed with small, random enthalpy fluctuations with a maximum amplitude of 1%. These perturbations are the seeds from which the full PPI will develop.