SpECTRE  v2026.06.30
Loading...
Searching...
No Matches
gr::Solutions::HighSpinKerrPuncture Class Reference

Kerr initial data in the puncture radial coordinate of Liu, Etienne, and Shapiro [135]. More...

#include <HighSpinKerrPuncture.hpp>

Classes

struct  DimensionlessSpin
struct  Mass

Public Types

using options = tmpl::list<Mass, DimensionlessSpin>
template<typename DataType>
using DerivLapse
template<typename DataType>
using DerivShift
template<typename DataType>
using DerivSpatialMetric
template<typename DataType>
using tags
Public Types inherited from gr::AnalyticSolution< 3_st >
using DerivLapse
using DerivShift
using DerivSpatialMetric
using tags

Public Member Functions

 HighSpinKerrPuncture (double mass, double dimensionless_spin, const Options::Context &context={})
 HighSpinKerrPuncture (const HighSpinKerrPuncture &)=default
HighSpinKerrPunctureoperator= (const HighSpinKerrPuncture &)=default
 HighSpinKerrPuncture (HighSpinKerrPuncture &&)=default
HighSpinKerrPunctureoperator= (HighSpinKerrPuncture &&)=default
 HighSpinKerrPuncture (CkMigrateMessage *)
template<typename DataType, typename... Tags>
tuples::TaggedTuple< Tags... > variables (const tnsr::I< DataType, volume_dim, Frame::Inertial > &x, double t, tmpl::list< Tags... >) const
void pup (PUP::er &p)
double mass () const
double dimensionless_spin () const

Static Public Attributes

static constexpr size_t volume_dim = 3
static constexpr Options::String help
Static Public Attributes inherited from gr::AnalyticSolution< 3_st >
static constexpr size_t volume_dim

Detailed Description

Kerr initial data in the puncture radial coordinate of Liu, Etienne, and Shapiro [135].

Details

This class represents a Kerr black hole of mass \(M\) and dimensionless spin \(\chi\) (with the spin along the \(+z\) axis and the puncture at the coordinate origin) in the puncture radial coordinate \(r\) introduced in [135]. Defining the spin \(a = \chi M\) and the horizon radii \(r_\pm = M \pm \sqrt{M^2 - a^2}\) (so that \(r_+ r_- = a^2\) and \(r_+ + r_- = 2M\)), the Boyer-Lindquist radius \(r_\mathrm{BL}\) is related to \(r\) by

\begin{align}r_\mathrm{BL} = r\left(1 + \frac{r_+}{4r}\right)^2 = r + \frac{r_+}{2} + \frac{r_+^2}{16 r} . \end{align}

The horizon (throat) sits at the coordinate radius \(r = r_+/4\), which stays finite ( \(\to M/4\)) as \(|\chi| \to 1\). The coordinate covers the black hole exterior twice: the two sheets \(r \gtrless r_+/4\) are joined at the throat, and \(r_\mathrm{BL} \ge r_+\) everywhere, so the interior \(r_\mathrm{BL} < r_+\) is never entered. Since the metric component \(\gamma_{rr}\) diverges at the throat like \(1/\sqrt{M^2 - a^2}\) as \(|\chi| \to 1\) (the well-known infinite proper throat of extremal Kerr), the class requires \(|\chi| < 1\) strictly.

The Boyer-Lindquist scalars are

\begin{align}\Sigma &= r_\mathrm{BL}^2 + \frac{a^2 z^2}{r^2}, \\ \Delta &= r_\mathrm{BL}^2 - 2 M r_\mathrm{BL} + a^2 = (r_\mathrm{BL} - r_+)(r_\mathrm{BL} - r_-), \\ A &= (r_\mathrm{BL}^2 + a^2)^2 - \Delta\, a^2 \left(1 - \frac{z^2}{r^2}\right) . \end{align}

The tensors are assembled directly in Cartesian form from the three mutually orthogonal building blocks

\begin{align}n_i = \frac{x_i}{r}, \qquad \lambda_i = (-y,\, x,\, 0), \qquad \mu_i = (z x,\, z y,\, -(x^2 + y^2)) , \end{align}

which are regular for \(r > 0\) including on the spin axis, so no near-axis special case is needed. The spatial metric and extrinsic curvature are

\begin{align}\gamma_{ij} &= c_\delta\, \delta_{ij} + c_n\, n_i n_j + c_\lambda\, \lambda_i \lambda_j, \\ K_{ij} &= c_{n\lambda}\, (n_i \lambda_j + n_j \lambda_i) + c_{\mu\lambda}\, (\mu_i \lambda_j + \mu_j \lambda_i), \end{align}

with the coefficient functions

\begin{align}c_\delta &= \frac{\Sigma}{r^2}, \qquad c_n = \frac{\Sigma\, r_-}{r^2 (r_\mathrm{BL} - r_-)}, \qquad c_\lambda = \frac{a^2 (\Sigma + 2 M r_\mathrm{BL})}{\Sigma\, r^4}, \\ c_{n\lambda} &= \frac{M a\, G\, \sqrt{r_\mathrm{BL}}} {\Sigma \sqrt{A \Sigma}\; r^3 \sqrt{r_\mathrm{BL} - r_-}}, \qquad c_{\mu\lambda} = -\frac{2 a^3 M r_\mathrm{BL}\, z\, (r - r_+/4)} {\Sigma \sqrt{A \Sigma}\; r^6}\sqrt{\frac{r_\mathrm{BL} - r_-}{r}}, \end{align}

where

\begin{align}G = 3 r_\mathrm{BL}^4 + 2 a^2 r_\mathrm{BL}^2 - a^4 - a^2 (r_\mathrm{BL}^2 - a^2)\left(1 - \frac{z^2}{r^2}\right) . \end{align}

The stationary shift of [135] Eq. (7) is purely azimuthal, \(\beta^\phi = -2 M a r_\mathrm{BL}/A\), which in Cartesian form is

\begin{align}\beta^i = c_\beta\, \lambda^i, \qquad c_\beta = -\frac{2 M a\, r_\mathrm{BL}}{A} . \end{align}

The analytic lapse

\begin{align}\alpha = \left(r - \frac{r_+}{4}\right) g(r, z) , \end{align}

is negative on the inner sheet \(r < r_+/4\). With this lapse the returned representation is exactly stationary on both sheets, and all time derivative tags vanish identically. Consumers that require an everywhere-nonnegative initial lapse (e.g. moving-puncture evolutions) must take the absolute value, recovering [135] Eq. (6).

The inverse spatial metric and \(\sqrt{\det\gamma}\) are returned from their closed forms

\begin{align}\gamma^{ij} &= \frac{1}{c_\delta}\, \delta^{ij} - \frac{c_n}{c_\delta (c_\delta + c_n)}\, n^i n^j - \frac{c_\lambda}{c_\delta (c_\delta + \varpi^2 c_\lambda)}\, \lambda^i \lambda^j, \\ \sqrt{\det\gamma} &= \frac{1}{r^3} \sqrt{\frac{\Sigma\, r_\mathrm{BL}\, A}{r_\mathrm{BL} - r_-}}, \end{align}

with \(\varpi^2 = x^2 + y^2\), rather than by numerical inversion.

Like gr::Solutions::TrumpetSchwarzschild, quantities diverge at the puncture point \(r = 0\) itself (the second asymptotically flat end); no clamping is applied, so the origin must not coincide with a grid point.

This solution reduces to the standard Schwarzschild solution in isotropic coordinates when \(\chi = 0\).

The following input file options can be specified:

Member Typedef Documentation

◆ DerivLapse

template<typename DataType>
using gr::Solutions::HighSpinKerrPuncture::DerivLapse
Initial value:
tmpl::size_t<volume_dim>, Frame::Inertial>
Definition IndexType.hpp:46
Prefix indicating spatial derivatives.
Definition Prefixes.hpp:47

◆ DerivShift

template<typename DataType>
using gr::Solutions::HighSpinKerrPuncture::DerivShift
Initial value:

◆ DerivSpatialMetric

◆ tags

template<typename DataType>
using gr::Solutions::HighSpinKerrPuncture::tags

Member Data Documentation

◆ help

Options::String gr::Solutions::HighSpinKerrPuncture::help
staticconstexpr
Initial value:
{
"Kerr solution in the puncture radial coordinate of Liu, Etienne, and "
"Shapiro (2009)."}

The documentation for this class was generated from the following file:
  • src/PointwiseFunctions/AnalyticSolutions/GeneralRelativity/HighSpinKerrPuncture.hpp