SageMath notebooks associated to the Black Hole Lectures (https://luth.obspm.fr/~luthier/gourgoulhon/bh16)
Extremal Kerr black hole
This Jupyter/SageMath notebook is relative to the lectures Geometry and physics of black holes.
The computations make use of tools developed through the SageManifolds project.
First we set up the notebook to display mathematical objects using LaTeX rendering:
To speed up computations, we ask for running them in parallel on 8 threads:
Spacetime manifold
We declare the Kerr spacetime as a 4-dimensional Lorentzian manifold :
We then introduce (3+1 version of) the Kerr coordinates as a chart KC
on , via the method chart()
. The argument of the latter is a string (delimited by r"..."
because of the backslash symbols) expressing the coordinates names, their ranges (the default is ) and their LaTeX symbols:
Metric tensor
The mass parameter of the extremal Kerr spacetime is declared as a symbolic variable:
We get the (yet undefined) spacetime metric:
and initialize it by providing its components in the coordinate frame associated with the Kerr coordinates, which is the current manifold's default frame:
A matrix view of the components with respect to the manifold's default vector frame:
The list of the non-vanishing components:
Einstein equation
Let us check that we are dealing with a solution of the vacuum Einstein equation:
Boyer-Lindquist coordinates
Let us introduce on the chart of Boyer-Lindquist coordinates :
Plot of the hypersurfaces in terms of the Kerr coordinates
The plot is performed via the method plot
of the Boyer-Lindquist chart:
Ingoing principal null geodesics
Let us check that is a null vector:
Check of :
Expression of with respect to the Boyer-Lindquist frame:
Outgoing principal null geodesics
Let us check that is a null vector:
Expression of with respect to the Boyer-Lindquist frame:
Computation of :
We check that :
Plot of principal null geodesics
We add the vectors and at the intersection of the ingoing geodesic with the outgoing one:
Carter-Penrose diagram
Functions and
Zoom around :
for :
Functions and
Zoom around :
Same value of for all for :
Compactified coordinates
Plot of curves:
Adding some principal null geodesics to the plot:
We save the plot in png format, in order to add easily labels on it with Inkscape: