Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupport News AboutSign UpSign In
| Download

SageMath notebooks associated to the Black Hole Lectures (https://luth.obspm.fr/~luthier/gourgoulhon/bh16)

Project: BHLectures
Views: 20113
Kernel: SageMath 9.7.beta2

Naked singularity in Vaidya collapse

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.

version()
'SageMath version 9.7.beta2, Release Date: 2022-06-12'
%display latex
M = Manifold(4, 'M', structure='Lorentzian') print(M)
4-dimensional Lorentzian manifold M
XN.<v,r,th,ph> = M.chart(r'v:(0,+oo) r:(0,+oo) th:(0,pi):\theta ph:(0,2*pi):\varphi:periodic') XN

(M,(v,r,θ,φ))\displaystyle \left(M,(v, r, {\theta}, {\varphi})\right)

The two roots (x1,x2)(x_1, x_2) of the polynomial αx2x+2\alpha x^2 - x +2 for 0<α<180<\alpha<\frac{1}{8}

graph = plot((1 - sqrt(1 - 8*x))/(2*x), (x, 0.001, 1/8), color='blue', legend_label=r'$x_1$', axes_labels=[r'$\alpha$', '']) graph += plot((1 + sqrt(1 - 8*x))/(2*x), (x, 0.08, 1/8), color='red', legend_label=r'$x_2$') graph.show(frame=True, gridlines=True)
Image in a Jupyter notebook
x1 = var('x1', latex_name=r'x_1', domain='real') assume(x1 > 2, x1 < 4) x2 = var('x2', latex_name=r'x_2', domain='real') assume(x2 > 4)
alpha = 2/(x1*x2) alpha

2x1x2\displaystyle \frac{2}{{x_1} {x_2}}

Vaidya metric in terms of the (v,r,θ,φ)(v, r, \theta,\varphi) coordinates

g = M.metric() g[0,0] = -(1 - alpha*v/r) g[0,1] = 1 g[2,2] = r^2 g[3,3] = (r*sin(th))^2 g.display()

g=(2vrx1x21)dvdv+dvdr+drdv+r2dθdθ+r2sin(θ)2dφdφ\displaystyle g = \left( \frac{2 \, v}{r {x_1} {x_2}} - 1 \right) \mathrm{d} v\otimes \mathrm{d} v +\mathrm{d} v\otimes \mathrm{d} r +\mathrm{d} r\otimes \mathrm{d} v + r^{2} \mathrm{d} {\theta}\otimes \mathrm{d} {\theta} + r^{2} \sin\left({\theta}\right)^{2} \mathrm{d} {\varphi}\otimes \mathrm{d} {\varphi}

Double null-coordinate system in the region r>v/x2r > v / x_2

N1 = M.open_subset('N1', latex_name=r'N_1', coord_def={XN: r > v/x2})
X1.<u,v,th,ph> = N1.chart(r'u v:(0,+oo) th:(0,pi):\theta ph:(0,2*pi):\varphi:periodic') X1

(N1,(u,v,θ,φ))\displaystyle \left(N_1,(u, v, {\theta}, {\varphi})\right)

assume(x2*r - v > 0)
XN_to_X1 = XN.transition_map(X1, ((v/x1 - r)/((r - v/x2))^(x1/x2), v, th, ph)) XN_to_X1.display()

{u=rvx1(rvx2)x1x2v=vθ=θφ=φ\displaystyle \left\{\begin{array}{lcl} u & = & -\frac{r - \frac{v}{{x_1}}}{{\left(r - \frac{v}{{x_2}}\right)}^{\frac{{x_1}}{{x_2}}}} \\ v & = & v \\ {\theta} & = & {\theta} \\ {\varphi} & = & {\varphi} \end{array}\right.

g.display_comp(X1.frame(), chart=XN.restrict(N1))

guvuv=(rx2v)x1x2+1(rx1rx2)x2x1x2gvuvu=(rx2v)x1x2+1(rx1rx2)x2x1x2gvvvv=(x12)x22x1x1x2gθθθθ=r2gφφφφ=r2sin(θ)2\displaystyle \begin{array}{lcl} g_{ \, u \, v }^{ \phantom{\, u}\phantom{\, v} } & = & \frac{{\left(r {x_2} - v\right)}^{\frac{{x_1}}{{x_2}} + 1}}{{\left(r {x_1} - r {x_2}\right)} {x_2}^{\frac{{x_1}}{{x_2}}}} \\ g_{ \, v \, u }^{ \phantom{\, v}\phantom{\, u} } & = & \frac{{\left(r {x_2} - v\right)}^{\frac{{x_1}}{{x_2}} + 1}}{{\left(r {x_1} - r {x_2}\right)} {x_2}^{\frac{{x_1}}{{x_2}}}} \\ g_{ \, v \, v }^{ \phantom{\, v}\phantom{\, v} } & = & -\frac{{\left({x_1} - 2\right)} {x_2} - 2 \, {x_1}}{{x_1} {x_2}} \\ g_{ \, {\theta} \, {\theta} }^{ \phantom{\, {\theta}}\phantom{\, {\theta}} } & = & r^{2} \\ g_{ \, {\varphi} \, {\varphi} }^{ \phantom{\, {\varphi}}\phantom{\, {\varphi}} } & = & r^{2} \sin\left({\theta}\right)^{2} \end{array}

g[X1.frame(),0,1].expr()

(rx2v)x1x2+1(rx1rx2)x2x1x2\displaystyle \frac{{\left(r {x_2} - v\right)}^{\frac{{x_1}}{{x_2}} + 1}}{{\left(r {x_1} - r {x_2}\right)} {x_2}^{\frac{{x_1}}{{x_2}}}}

To simplify the components of gg, let us substitute x2x_2 by its expression in terms of x1x_1, i.e. x2=2x1x12x_2 = \frac{2 x_1}{x_1 - 2}:

xx2 = 2*x1/(x1 - 2) g.apply_map(lambda x: x.subs({x2: xx2}).simplify_full(), frame=X1.frame(), chart=XN.restrict(N1), keep_other_components=True) g.display_comp(X1.frame(), chart=XN.restrict(N1))

guvuv=2((2rv)x1+2vx12)12x1(rx14r)(2x1x12)12x1gvuvu=2((2rv)x1+2vx12)12x1(rx14r)(2x1x12)12x1gθθθθ=r2gφφφφ=r2sin(θ)2\displaystyle \begin{array}{lcl} g_{ \, u \, v }^{ \phantom{\, u}\phantom{\, v} } & = & \frac{2 \, \left(\frac{{\left(2 \, r - v\right)} {x_1} + 2 \, v}{{x_1} - 2}\right)^{\frac{1}{2} \, {x_1}}}{{\left(r {x_1} - 4 \, r\right)} \left(\frac{2 \, {x_1}}{{x_1} - 2}\right)^{\frac{1}{2} \, {x_1}}} \\ g_{ \, v \, u }^{ \phantom{\, v}\phantom{\, u} } & = & \frac{2 \, \left(\frac{{\left(2 \, r - v\right)} {x_1} + 2 \, v}{{x_1} - 2}\right)^{\frac{1}{2} \, {x_1}}}{{\left(r {x_1} - 4 \, r\right)} \left(\frac{2 \, {x_1}}{{x_1} - 2}\right)^{\frac{1}{2} \, {x_1}}} \\ g_{ \, {\theta} \, {\theta} }^{ \phantom{\, {\theta}}\phantom{\, {\theta}} } & = & r^{2} \\ g_{ \, {\varphi} \, {\varphi} }^{ \phantom{\, {\varphi}}\phantom{\, {\varphi}} } & = & r^{2} \sin\left({\theta}\right)^{2} \end{array}

We note that guu=0g_{uu} = 0 and gvv=0g_{vv} = 0, which proves that (u,v,θ,φ)(u,v,\theta,\varphi) is a double-null coordinate system on N1N_1.

Alternative form of guvg_{uv}:

guv = g[X1.frame(),0,1].expr() guv

2((2rv)x1+2vx12)12x1(rx14r)(2x1x12)12x1\displaystyle \frac{2 \, \left(\frac{{\left(2 \, r - v\right)} {x_1} + 2 \, v}{{x_1} - 2}\right)^{\frac{1}{2} \, {x_1}}}{{\left(r {x_1} - 4 \, r\right)} \left(\frac{2 \, {x_1}}{{x_1} - 2}\right)^{\frac{1}{2} \, {x_1}}}

guv_alt = - x2/(x2 - x1)/r*(r - v/x2)^(x1/2) guv_alt

(rvx2)12x1x2r(x1x2)\displaystyle \frac{{\left(r - \frac{v}{{x_2}}\right)}^{\frac{1}{2} \, {x_1}} {x_2}}{r {\left({x_1} - {x_2}\right)}}

Test:

s = guv - guv_alt.subs({x2: xx2}) s.simplify_full().canonicalize_radical()

0\displaystyle 0

Special case α=1/9\alpha = 1/9

u_vr = XN_to_X1(v, r, th, ph)[0] u_vr

(rx1v)x2x1x2(rx2v)x1x2x1\displaystyle -\frac{{\left(r {x_1} - v\right)} {x_2}^{\frac{{x_1}}{{x_2}}}}{{\left(r {x_2} - v\right)}^{\frac{{x_1}}{{x_2}}} {x_1}}

u_vr1 = u_vr.subs({x1: 3, x2: 6}) u_vr1

6(3rv)36rv\displaystyle -\frac{\sqrt{6} {\left(3 \, r - v\right)}}{3 \, \sqrt{6 \, r - v}}

u_vr1^2

2(3rv)23(6rv)\displaystyle \frac{2 \, {\left(3 \, r - v\right)}^{2}}{3 \, {\left(6 \, r - v\right)}}

Solving for rr in terms of (u,v)(u,v):

eq = u^2 == u_vr1^2 eq

u2=2(3rv)23(6rv)\displaystyle u^{2} = \frac{2 \, {\left(3 \, r - v\right)}^{2}}{3 \, {\left(6 \, r - v\right)}}

solve(eq, r)

[r=12u2169u2+6vu+13v,r=12u2+169u2+6vu+13v]\displaystyle \left[r = \frac{1}{2} \, u^{2} - \frac{1}{6} \, \sqrt{9 \, u^{2} + 6 \, v} u + \frac{1}{3} \, v, r = \frac{1}{2} \, u^{2} + \frac{1}{6} \, \sqrt{9 \, u^{2} + 6 \, v} u + \frac{1}{3} \, v\right]

ruv = solve(eq, r)[0].rhs() ruv

12u2169u2+6vu+13v\displaystyle \frac{1}{2} \, u^{2} - \frac{1}{6} \, \sqrt{9 \, u^{2} + 6 \, v} u + \frac{1}{3} \, v

Recovering Fig. 3a of B. Waugh and K. Lake, Phys. Rev. D 34, 2978 (1986):

contour_plot(ruv, (v, 0, 9), (u, -3, 9.5), cmap=['black'], contours=(0.1, 0.2, 0.5, 1., 5), fill=False, axes_labels=(r'$v$', r'$u$'), axes=True)
Image in a Jupyter notebook
plot3d(ruv, (u, -2, 9.5), (v, 0, 9), axes_labels=('u', 'v', 'r'))
ruv.series(v, 3)

(12u212uu)+(u6u+13)v+(u36u3)v2+O(v3)\displaystyle {(\frac{1}{2} \, u^{2} - \frac{1}{2} \, u {\left| u \right|})} + {(-\frac{{\left| u \right|}}{6 \, u} + \frac{1}{3})} v + {(\frac{{\left| u \right|}}{36 \, u^{3}})} v^{2} + \mathcal{O}\left(v^{3}\right)

Double null-coordinate system in the region r<v/x1r < v / x_1

N2 = M.open_subset('N2', latex_name=r'N_2', coord_def={XN: r < v/x1})
X2.<u,v,th,ph> = N2.chart(r'u v:(0,+oo) th:(0,pi):\theta ph:(0,2*pi):\varphi:periodic') X2

(N2,(u,v,θ,φ))\displaystyle \left(N_2,(u, v, {\theta}, {\varphi})\right)

assume(v - x1*r > 0)
XN_to_X2 = XN.transition_map(X2, ((v/x2 - r)/((v/x1 - r))^(x2/x1), v, th, ph)) XN_to_X2.display()

{u=rvx2(r+vx1)x2x1v=vθ=θφ=φ\displaystyle \left\{\begin{array}{lcl} u & = & -\frac{r - \frac{v}{{x_2}}}{{\left(-r + \frac{v}{{x_1}}\right)}^{\frac{{x_2}}{{x_1}}}} \\ v & = & v \\ {\theta} & = & {\theta} \\ {\varphi} & = & {\varphi} \end{array}\right.

g.display_comp(X2.frame(), chart=XN.restrict(N2))

guvuv=(rx1v)(rx1+v)x2x1rx1x2x1x2rx1x2x1+1gvuvu=(rx1v)(rx1+v)x2x1rx1x2x1x2rx1x2x1+1gvvvv=(x12)x22x1x1x2gθθθθ=r2gφφφφ=r2sin(θ)2\displaystyle \begin{array}{lcl} g_{ \, u \, v }^{ \phantom{\, u}\phantom{\, v} } & = & \frac{{\left(r {x_1} - v\right)} {\left(-r {x_1} + v\right)}^{\frac{{x_2}}{{x_1}}}}{r {x_1}^{\frac{{x_2}}{{x_1}}} {x_2} - r {x_1}^{\frac{{x_2}}{{x_1}} + 1}} \\ g_{ \, v \, u }^{ \phantom{\, v}\phantom{\, u} } & = & \frac{{\left(r {x_1} - v\right)} {\left(-r {x_1} + v\right)}^{\frac{{x_2}}{{x_1}}}}{r {x_1}^{\frac{{x_2}}{{x_1}}} {x_2} - r {x_1}^{\frac{{x_2}}{{x_1}} + 1}} \\ g_{ \, v \, v }^{ \phantom{\, v}\phantom{\, v} } & = & -\frac{{\left({x_1} - 2\right)} {x_2} - 2 \, {x_1}}{{x_1} {x_2}} \\ g_{ \, {\theta} \, {\theta} }^{ \phantom{\, {\theta}}\phantom{\, {\theta}} } & = & r^{2} \\ g_{ \, {\varphi} \, {\varphi} }^{ \phantom{\, {\varphi}}\phantom{\, {\varphi}} } & = & r^{2} \sin\left({\theta}\right)^{2} \end{array}

g[X2.frame(),0,1].expr()

(rx1v)(rx1+v)x2x1rx1x2x1x2rx1x2x1+1\displaystyle \frac{{\left(r {x_1} - v\right)} {\left(-r {x_1} + v\right)}^{\frac{{x_2}}{{x_1}}}}{r {x_1}^{\frac{{x_2}}{{x_1}}} {x_2} - r {x_1}^{\frac{{x_2}}{{x_1}} + 1}}

To simplify the components of gg, let us substitute x1x_1 by its expression in terms of x2x_2, i.e. x1=2x2x22x_1 = \frac{2 x_2}{x_2 - 2}:

xx1 = 2*x2/(x2 - 2) g.apply_map(lambda x: x.subs({x1: xx1}).simplify_full(), frame=X2.frame(), chart=XN.restrict(N2), keep_other_components=True) g.display_comp(X2.frame(), chart=XN.restrict(N2))

guvuv=2((2rv)x2+2vx22)12x2(rx24r)(2x2x22)12x2gvuvu=2((2rv)x2+2vx22)12x2(rx24r)(2x2x22)12x2gθθθθ=r2gφφφφ=r2sin(θ)2\displaystyle \begin{array}{lcl} g_{ \, u \, v }^{ \phantom{\, u}\phantom{\, v} } & = & -\frac{2 \, \left(-\frac{{\left(2 \, r - v\right)} {x_2} + 2 \, v}{{x_2} - 2}\right)^{\frac{1}{2} \, {x_2}}}{{\left(r {x_2} - 4 \, r\right)} \left(\frac{2 \, {x_2}}{{x_2} - 2}\right)^{\frac{1}{2} \, {x_2}}} \\ g_{ \, v \, u }^{ \phantom{\, v}\phantom{\, u} } & = & -\frac{2 \, \left(-\frac{{\left(2 \, r - v\right)} {x_2} + 2 \, v}{{x_2} - 2}\right)^{\frac{1}{2} \, {x_2}}}{{\left(r {x_2} - 4 \, r\right)} \left(\frac{2 \, {x_2}}{{x_2} - 2}\right)^{\frac{1}{2} \, {x_2}}} \\ g_{ \, {\theta} \, {\theta} }^{ \phantom{\, {\theta}}\phantom{\, {\theta}} } & = & r^{2} \\ g_{ \, {\varphi} \, {\varphi} }^{ \phantom{\, {\varphi}}\phantom{\, {\varphi}} } & = & r^{2} \sin\left({\theta}\right)^{2} \end{array}

We note that guu=0g_{uu} = 0 and gvv=0g_{vv} = 0, which proves that (u,v,θ,φ)(u,v,\theta,\varphi) is a double-null coordinate system on N2N_2.

Alternative form of guvg_{uv}:

guv = g[X2.frame(),0,1].expr() guv

2((2rv)x2+2vx22)12x2(rx24r)(2x2x22)12x2\displaystyle -\frac{2 \, \left(-\frac{{\left(2 \, r - v\right)} {x_2} + 2 \, v}{{x_2} - 2}\right)^{\frac{1}{2} \, {x_2}}}{{\left(r {x_2} - 4 \, r\right)} \left(\frac{2 \, {x_2}}{{x_2} - 2}\right)^{\frac{1}{2} \, {x_2}}}

guv_alt = - x1/(x2 - x1)/r*(v/x1 - r)^(x2/2) guv_alt

(r+vx1)12x2x1r(x1x2)\displaystyle \frac{{\left(-r + \frac{v}{{x_1}}\right)}^{\frac{1}{2} \, {x_2}} {x_1}}{r {\left({x_1} - {x_2}\right)}}

Test:

s = guv - guv_alt.subs({x1: xx1}) s.simplify_full().canonicalize_radical()

0\displaystyle 0

Special case α=1/9\alpha = 1/9

u_vr = XN_to_X2(v, r, th, ph)[0] u_vr

rx1x2x1x2vx1x2x1(rx1+v)x2x1x2\displaystyle -\frac{r {x_1}^{\frac{{x_2}}{{x_1}}} {x_2} - v {x_1}^{\frac{{x_2}}{{x_1}}}}{{\left(-r {x_1} + v\right)}^{\frac{{x_2}}{{x_1}}} {x_2}}

u_vr1 = u_vr.subs({x1: 3, x2: 6}) u_vr1

3(6rv)2(3rv)2\displaystyle -\frac{3 \, {\left(6 \, r - v\right)}}{2 \, {\left(3 \, r - v\right)}^{2}}

Solving for rr in terms of (u,v)(u,v):

eq = u == u_vr1 solve(eq, r)

[r=2uv6uv+936u,r=2uv+6uv+936u]\displaystyle \left[r = \frac{2 \, u v - \sqrt{-6 \, u v + 9} - 3}{6 \, u}, r = \frac{2 \, u v + \sqrt{-6 \, u v + 9} - 3}{6 \, u}\right]

ruv = solve(eq, r)[1].rhs() ruv

2uv+6uv+936u\displaystyle \frac{2 \, u v + \sqrt{-6 \, u v + 9} - 3}{6 \, u}

ruv_alt = v/3 + (sqrt(1 - 2*u*v/3) - 1)/(2*u) ruv_alt

13v+23uv+112u\displaystyle \frac{1}{3} \, v + \frac{\sqrt{-\frac{2}{3} \, u v + 1} - 1}{2 \, u}

(ruv - ruv_alt).simplify_full().canonicalize_radical()

0\displaystyle 0

ruv_alt.series(u, 2)

(16v)+(136v2)u+O(u2)\displaystyle {(\frac{1}{6} \, v)} + {(-\frac{1}{36} \, v^{2})} u + \mathcal{O}\left(u^{2}\right)

ruv_alt.series(v, 3)

16v+(136u)v2+O(v3)\displaystyle \frac{1}{6} v + {(-\frac{1}{36} \, u)} v^{2} + \mathcal{O}\left(v^{3}\right)

Recovering Fig. 3b of B. Waugh and K. Lake, Phys. Rev. D 34, 2978 (1986):

contour_plot(ruv, (v, 0, 14), (u, -10, 5), cmap=['black'], contours=(0, 0.05, 0.1, 0.2, 0.5, 1., 2.), fill=False, axes_labels=(r'$v$', r'$u$'), axes=True)
Image in a Jupyter notebook
plot3d(ruv, (u, -10, 5), (v, 0, 14), axes_labels=('u', 'v', 'r'))