KerrSpacetime#
- class kerrgeopy.spacetime.KerrSpacetime(a, M=None)[source]#
Bases:
object
Class representing spacetime around a black hole with mass \(M\) and spin parameter \(a\)
- Parameters:
a (double) – dimensionless angular momentum
M (double) – mass of the black hole
- Variables:
a – dimensionless angular momentum
M – mass of the black hole
inner_horizon – radius of the inner horizon
outer_horizon – radius of the outer horizon
Methods
__init__
(a[, M])four_velocity
(t, r, theta, phi, constants, ...)Computes the four velocity of a given trajectory
is_stable
(p, e, x)Determines whether a given orbit is stable or not
metric
(t, r, theta, phi)Returns the matrix representation of the metric at a given point expressed in Boyer-Lindquist coordinates.
norm
(t, r, theta, phi, v)Computes the norm of a vector at a given point in spacetime expressed in Boyer-Lindquist coordinates
separatrix
(e, x)Computes the value of p at the separatrix for a given value of e and x
- four_velocity(t, r, theta, phi, constants, upsilon_r, upsilon_theta, initial_phases)[source]#
Computes the four velocity of a given trajectory
- Parameters:
t (function) – time component of trajectory
r (function) – radial component of trajectory
theta (function) – polar component of trajectory
phi (function) – azimuthal component of trajectory
constants (tuple(double, double, double)) – tuple of constants of motion in the form \((\mathcal{E},\mathcal{L},\mathcal{Q})\)
upsilon_r (double) – radial frequency
upsilon_theta (double) – polar frequency
initial_phases (tuple, optional) – tuple of initial phases \((q_{t_0},q_{r_0},q_{\theta_0},q_{\phi_0})\)
- Returns:
components of the four velocity (i.e. \((u^t,u^r,u^\theta,u^\phi)\))
- Return type:
tuple(function, function, function, function)
- is_stable(p, e, x)[source]#
Determines whether a given orbit is stable or not
- Parameters:
p (double) – dimensionless semi-latus rectum
e (double) – orbital eccentricity
x (double) – cosine of the orbital inclination
- Return type:
bool
- metric(t, r, theta, phi)[source]#
Returns the matrix representation of the metric at a given point expressed in Boyer-Lindquist coordinates.
- Parameters:
t (double) – time coordinate
r (double) – radial coordinate
theta (double) – polar coordinate
phi (double) – azimuthal coordinate
- Return type:
numpy.ndarray
- norm(t, r, theta, phi, v)[source]#
Computes the norm of a vector at a given point in spacetime expressed in Boyer-Lindquist coordinates
- Parameters:
t (double) – time coordinate
r (double) – radial coordinate
theta (double) – polar coordinate
phi (double) – azimuthal coordinate
v (array_like) – vector to compute the norm of
- Returns:
norm of v
- Return type:
double