{ "cells": [ { "cell_type": "markdown", "id": "932c01bc-4aa9-48d0-afe9-805d20620a6f", "metadata": {}, "source": [ "# Naked singularity in Vaidya collapse\n", "\n", "This Jupyter/SageMath notebook is relative to the lectures\n", "[Geometry and physics of black holes](https://luth.obspm.fr/~luthier/gourgoulhon/bh16/).\n", "\n", "The computations make use of tools developed through the [SageManifolds project](https://sagemanifolds.obspm.fr)." ] }, { "cell_type": "code", "execution_count": 1, "id": "1e4ac08d-7030-49e8-acf9-73ebb9443ad2", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'SageMath version 9.7.beta2, Release Date: 2022-06-12'" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "version()" ] }, { "cell_type": "code", "execution_count": 2, "id": "1d6b359c-ffb9-4c71-84df-d9c902343758", "metadata": {}, "outputs": [], "source": [ "%display latex" ] }, { "cell_type": "code", "execution_count": 3, "id": "52e70b75-7ca4-4bb1-ab2c-b94b7016ac19", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "4-dimensional Lorentzian manifold M\n" ] } ], "source": [ "M = Manifold(4, 'M', structure='Lorentzian')\n", "print(M)" ] }, { "cell_type": "code", "execution_count": 4, "id": "e74b9701-2261-4805-9319-782690f5421b", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle \\left(M,(v, r, {\\theta}, {\\varphi})\\right)\\)" ], "text/latex": [ "$\\displaystyle \\left(M,(v, r, {\\theta}, {\\varphi})\\right)$" ], "text/plain": [ "Chart (M, (v, r, th, ph))" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "XN. = M.chart(r'v:(0,+oo) r:(0,+oo) th:(0,pi):\\theta ph:(0,2*pi):\\varphi:periodic')\n", "XN" ] }, { "cell_type": "markdown", "id": "258b4123-36d4-4ace-af2d-d7e43b17bfd3", "metadata": {}, "source": [ "### The two roots $(x_1, x_2)$ of the polynomial $\\alpha x^2 - x +2$ for $0<\\alpha<\\frac{1}{8}$" ] }, { "cell_type": "code", "execution_count": 5, "id": "3389620d-1657-496a-92e3-6c7d205c91c9", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "Graphics object consisting of 2 graphics primitives" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "graph = plot((1 - sqrt(1 - 8*x))/(2*x), (x, 0.001, 1/8), color='blue', \n", " legend_label=r'$x_1$', axes_labels=[r'$\\alpha$', ''])\n", "graph += plot((1 + sqrt(1 - 8*x))/(2*x), (x, 0.08, 1/8), color='red', \n", " legend_label=r'$x_2$')\n", "graph.show(frame=True, gridlines=True)" ] }, { "cell_type": "code", "execution_count": 6, "id": "ace79af2-8499-4beb-8690-5075edda8742", "metadata": {}, "outputs": [], "source": [ "x1 = var('x1', latex_name=r'x_1', domain='real')\n", "assume(x1 > 2, x1 < 4)\n", "x2 = var('x2', latex_name=r'x_2', domain='real')\n", "assume(x2 > 4)" ] }, { "cell_type": "code", "execution_count": 7, "id": "16128513-9497-4f04-bc8e-fd58b3bd95fb", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle \\frac{2}{{x_1} {x_2}}\\)" ], "text/latex": [ "$\\displaystyle \\frac{2}{{x_1} {x_2}}$" ], "text/plain": [ "2/(x1*x2)" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "alpha = 2/(x1*x2)\n", "alpha" ] }, { "cell_type": "markdown", "id": "98529b43-89e7-4436-b2ba-c68e5b8635ef", "metadata": {}, "source": [ "### Vaidya metric in terms of the $(v, r, \\theta,\\varphi)$ coordinates" ] }, { "cell_type": "code", "execution_count": 8, "id": "5adb8b63-02af-451e-93a2-622ae2b7ec37", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\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}\\)" ], "text/latex": [ "$\\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}$" ], "text/plain": [ "g = (2*v/(r*x1*x2) - 1) dv⊗dv + dv⊗dr + dr⊗dv + r^2 dth⊗dth + r^2*sin(th)^2 dph⊗dph" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "g = M.metric()\n", "g[0,0] = -(1 - alpha*v/r)\n", "g[0,1] = 1\n", "g[2,2] = r^2\n", "g[3,3] = (r*sin(th))^2\n", "g.display()" ] }, { "cell_type": "markdown", "id": "fd186568-4d4d-49c4-b6c0-8b9b333f0283", "metadata": {}, "source": [ "## Double null-coordinate system in the region $r > v / x_2$" ] }, { "cell_type": "code", "execution_count": 9, "id": "2e6772c5-7304-49b7-8fee-d4abfd46cd0f", "metadata": {}, "outputs": [], "source": [ "N1 = M.open_subset('N1', latex_name=r'N_1',\n", " coord_def={XN: r > v/x2})" ] }, { "cell_type": "code", "execution_count": 10, "id": "b83c0903-1898-45a1-ad3f-9cae1ec41205", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle \\left(N_1,(u, v, {\\theta}, {\\varphi})\\right)\\)" ], "text/latex": [ "$\\displaystyle \\left(N_1,(u, v, {\\theta}, {\\varphi})\\right)$" ], "text/plain": [ "Chart (N1, (u, v, th, ph))" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X1. = N1.chart(r'u v:(0,+oo) th:(0,pi):\\theta ph:(0,2*pi):\\varphi:periodic')\n", "X1" ] }, { "cell_type": "code", "execution_count": 11, "id": "d3b379a8-bf0f-484a-95ad-3d67402ec378", "metadata": {}, "outputs": [], "source": [ "assume(x2*r - v > 0)" ] }, { "cell_type": "code", "execution_count": 12, "id": "fdd85839-3ec1-4738-8f2f-dc48d1a54a47", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\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.\\)" ], "text/latex": [ "$\\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.$" ], "text/plain": [ "u = -(r - v/x1)/(r - v/x2)^(x1/x2)\n", "v = v\n", "th = th\n", "ph = ph" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "XN_to_X1 = XN.transition_map(X1, ((v/x1 - r)/((r - v/x2))^(x1/x2),\n", " v, th, ph))\n", "XN_to_X1.display()" ] }, { "cell_type": "code", "execution_count": 13, "id": "eb63d174-6b5a-4be8-9c21-66ca3c8a5a99", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\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}\\)" ], "text/latex": [ "$\\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}$" ], "text/plain": [ "g_u,v = (r*x2 - v)^(x1/x2 + 1)/((r*x1 - r*x2)*x2^(x1/x2)) \n", "g_v,u = (r*x2 - v)^(x1/x2 + 1)/((r*x1 - r*x2)*x2^(x1/x2)) \n", "g_v,v = -((x1 - 2)*x2 - 2*x1)/(x1*x2) \n", "g_th,th = r^2 \n", "g_ph,ph = r^2*sin(th)^2 " ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "g.display_comp(X1.frame(), chart=XN.restrict(N1))" ] }, { "cell_type": "code", "execution_count": 14, "id": "0f2f2bfa-eadc-43bb-a919-1511263e07de", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\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}}}}\\)" ], "text/latex": [ "$\\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}}}}$" ], "text/plain": [ "(r*x2 - v)^(x1/x2 + 1)/((r*x1 - r*x2)*x2^(x1/x2))" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "g[X1.frame(),0,1].expr()" ] }, { "cell_type": "markdown", "id": "5eec0f14-27c2-426f-95bd-8ea2c7bd3ac1", "metadata": {}, "source": [ "To simplify the components of $g$, let us substitute $x_2$ by its expression\n", "in terms of $x_1$, i.e. $x_2 = \\frac{2 x_1}{x_1 - 2}$:" ] }, { "cell_type": "code", "execution_count": 15, "id": "bbff1394-dfd1-4704-86e5-cbc5409b9286", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\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}\\)" ], "text/latex": [ "$\\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}$" ], "text/plain": [ "g_u,v = 2*(((2*r - v)*x1 + 2*v)/(x1 - 2))^(1/2*x1)/((r*x1 - 4*r)*(2*x1/(x1 - 2))^(1/2*x1)) \n", "g_v,u = 2*(((2*r - v)*x1 + 2*v)/(x1 - 2))^(1/2*x1)/((r*x1 - 4*r)*(2*x1/(x1 - 2))^(1/2*x1)) \n", "g_th,th = r^2 \n", "g_ph,ph = r^2*sin(th)^2 " ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "xx2 = 2*x1/(x1 - 2)\n", "g.apply_map(lambda x: x.subs({x2: xx2}).simplify_full(),\n", " frame=X1.frame(), chart=XN.restrict(N1),\n", " keep_other_components=True)\n", "\n", "g.display_comp(X1.frame(), chart=XN.restrict(N1))" ] }, { "cell_type": "markdown", "id": "76502e74-6ad6-4024-ae4e-f85ddfb3b457", "metadata": {}, "source": [ "We note that $g_{uu} = 0$ and $g_{vv} = 0$, which proves that $(u,v,\\theta,\\varphi)$ is a **double-null coordinate system** on $N_1$." ] }, { "cell_type": "markdown", "id": "15040271-56eb-4d89-bf8f-7908b8f8c636", "metadata": {}, "source": [ "Alternative form of $g_{uv}$:" ] }, { "cell_type": "code", "execution_count": 16, "id": "1b583378-3488-4dde-9b78-30aed8e0bde0", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\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}}}\\)" ], "text/latex": [ "$\\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}}}$" ], "text/plain": [ "2*(((2*r - v)*x1 + 2*v)/(x1 - 2))^(1/2*x1)/((r*x1 - 4*r)*(2*x1/(x1 - 2))^(1/2*x1))" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "guv = g[X1.frame(),0,1].expr()\n", "guv" ] }, { "cell_type": "code", "execution_count": 17, "id": "76d3c3f4-4344-4cf1-a641-47464bbd4cef", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle \\frac{{\\left(r - \\frac{v}{{x_2}}\\right)}^{\\frac{1}{2} \\, {x_1}} {x_2}}{r {\\left({x_1} - {x_2}\\right)}}\\)" ], "text/latex": [ "$\\displaystyle \\frac{{\\left(r - \\frac{v}{{x_2}}\\right)}^{\\frac{1}{2} \\, {x_1}} {x_2}}{r {\\left({x_1} - {x_2}\\right)}}$" ], "text/plain": [ "(r - v/x2)^(1/2*x1)*x2/(r*(x1 - x2))" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "guv_alt = - x2/(x2 - x1)/r*(r - v/x2)^(x1/2)\n", "guv_alt" ] }, { "cell_type": "markdown", "id": "593a50f4-2d6d-402a-b071-c03c4de9cb9a", "metadata": {}, "source": [ "Test:" ] }, { "cell_type": "code", "execution_count": 18, "id": "ed448f90-19ed-42bb-be54-7aec8166170f", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle 0\\)" ], "text/latex": [ "$\\displaystyle 0$" ], "text/plain": [ "0" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "s = guv - guv_alt.subs({x2: xx2})\n", "s.simplify_full().canonicalize_radical()" ] }, { "cell_type": "markdown", "id": "89ecab4e-ad52-4ace-90b0-882f96825478", "metadata": {}, "source": [ "### Special case $\\alpha = 1/9$" ] }, { "cell_type": "code", "execution_count": 19, "id": "5552d462-cb60-4758-b0af-399945a63610", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\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}}\\)" ], "text/latex": [ "$\\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}}$" ], "text/plain": [ "-(r*x1 - v)*x2^(x1/x2)/((r*x2 - v)^(x1/x2)*x1)" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "u_vr = XN_to_X1(v, r, th, ph)[0]\n", "u_vr" ] }, { "cell_type": "code", "execution_count": 20, "id": "aec3b38e-dd53-4e31-9964-dd33ecb07e01", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle -\\frac{\\sqrt{6} {\\left(3 \\, r - v\\right)}}{3 \\, \\sqrt{6 \\, r - v}}\\)" ], "text/latex": [ "$\\displaystyle -\\frac{\\sqrt{6} {\\left(3 \\, r - v\\right)}}{3 \\, \\sqrt{6 \\, r - v}}$" ], "text/plain": [ "-1/3*sqrt(6)*(3*r - v)/sqrt(6*r - v)" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "u_vr1 = u_vr.subs({x1: 3, x2: 6})\n", "u_vr1" ] }, { "cell_type": "code", "execution_count": 21, "id": "6e3bcfe2-65db-4112-b585-ad20a5cb4667", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle \\frac{2 \\, {\\left(3 \\, r - v\\right)}^{2}}{3 \\, {\\left(6 \\, r - v\\right)}}\\)" ], "text/latex": [ "$\\displaystyle \\frac{2 \\, {\\left(3 \\, r - v\\right)}^{2}}{3 \\, {\\left(6 \\, r - v\\right)}}$" ], "text/plain": [ "2/3*(3*r - v)^2/(6*r - v)" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "u_vr1^2" ] }, { "cell_type": "markdown", "id": "3c3372f8-0d34-4c2f-bb78-6c181edb2d93", "metadata": {}, "source": [ "Solving for $r$ in terms of $(u,v)$:" ] }, { "cell_type": "code", "execution_count": 22, "id": "f649bf80-d6f4-4b73-8787-00eeaced782f", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle u^{2} = \\frac{2 \\, {\\left(3 \\, r - v\\right)}^{2}}{3 \\, {\\left(6 \\, r - v\\right)}}\\)" ], "text/latex": [ "$\\displaystyle u^{2} = \\frac{2 \\, {\\left(3 \\, r - v\\right)}^{2}}{3 \\, {\\left(6 \\, r - v\\right)}}$" ], "text/plain": [ "u^2 == 2/3*(3*r - v)^2/(6*r - v)" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eq = u^2 == u_vr1^2\n", "eq" ] }, { "cell_type": "code", "execution_count": 23, "id": "096a6940-13dd-488d-bf06-6baecc317117", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\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]\\)" ], "text/latex": [ "$\\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]$" ], "text/plain": [ "[r == 1/2*u^2 - 1/6*sqrt(9*u^2 + 6*v)*u + 1/3*v, r == 1/2*u^2 + 1/6*sqrt(9*u^2 + 6*v)*u + 1/3*v]" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "solve(eq, r)" ] }, { "cell_type": "code", "execution_count": 24, "id": "8f9335a1-2f72-4243-9d3f-d1c600ba979b", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle \\frac{1}{2} \\, u^{2} - \\frac{1}{6} \\, \\sqrt{9 \\, u^{2} + 6 \\, v} u + \\frac{1}{3} \\, v\\)" ], "text/latex": [ "$\\displaystyle \\frac{1}{2} \\, u^{2} - \\frac{1}{6} \\, \\sqrt{9 \\, u^{2} + 6 \\, v} u + \\frac{1}{3} \\, v$" ], "text/plain": [ "1/2*u^2 - 1/6*sqrt(9*u^2 + 6*v)*u + 1/3*v" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ruv = solve(eq, r)[0].rhs()\n", "ruv" ] }, { "cell_type": "markdown", "id": "c719d0cf-1337-4611-9679-21e8e1df2024", "metadata": {}, "source": [ "Recovering Fig. 3a of B. Waugh and K. Lake, [Phys. Rev. D **34**, 2978 (1986)](https://doi.org/10.1103/PhysRevD.34.2978):" ] }, { "cell_type": "code", "execution_count": 25, "id": "6a599963-323d-447b-9fd2-f3adc06403e1", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAATUAAAGICAYAAAAgS3evAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAAA100lEQVR4nO3deXxU5dn/8c+dsC8JKDsJWditG6BVsApiKaDVuoBWS2uRqlXq8zy1tT5arf5sXcpjLS6o1RaXarUuVAWlIG6IS9UCoihLNkggJIGQnYQkc/3+mJxpEpJJMss5Z85c79drXkkms1xDZr7c133OuY8REZRSyisSnC5AKaUiSUNNKeUpGmpKKU/RUFNKeYqGmlLKUzTUlFKeoqGmlPIUDTWllKd0c7oAtzHGGGAEUOl0LUqpFvoDe6WDIwY01I40AihwugilVJtSgD3BbqChdqRKgPz8fJKSkqioqCA1NTXws1LKftbnkE50UBpq7UhKSmoRYq1/Vkq5k24oUEp5ioaaUspTtP2MksbGRvLz8wFIS0vDv1G1c6qqqti/fz+9evVi2LBh0SoxYiorK9m/fz99+/ZlyJAhTpfjSoWFhdTV1TF48GD69u3rdDmepiO1JsaYxcaYr4BPIvF4paWlZGRkkJGR0eX7/uMf/yAjI4PLL788EqVE3fPPP09mZiZXXnml06W41sKFC8nIyODll192uhTP01BrIiLLROQY4JtO1xJrrN2GujIajTcNDQ0AdOumzVG0aaipsGmodayxsRGAxMREhyvxPg01F4u1kIi1eu2kIzX7aKipsOl5LjqmIzX7aKipsGn72TFrpKahFn0aaipsOlLrmI7U7KOhZgOvj2B0pNYxa6TWvXt3hyvxPg01FTYNtY5ZIzXdUBB9GmouFGvtnIZax3ROzT4aai4WKyGhodYx3aXDPhpqKmwaah3TkZp9NNSaRPrYz3iiodYx3fppHw21JnrsZ+isUEtI0LdTe3Trp330XajCpiO1jumcmn001FxIt356j86p2UdDzcViJSQ01Dqm7ad9NNRU2DTUOqbtp3001FxI20/v0fbTPhpqKmwaasGJiLafNtJQU2HTUAvO2kcNNNTsoKEWJbHWQobD5/MBGmrtsUZpoO2nHTTUXCxWQkJHasE1DzUdqUWfhpoKmx5REJyGmr30XdjETcd+xlrrqiO14Orr6wPfa/sZfRpqTfTYz9BpqAVnhVpiYqKOZm2g/8IqbBpqwemOt/bSUFNh01ALzhqpaajZQ0PNxWIlJKxdOrS1apsVarqRwB76LlRh05FacBpq9tJQcyHd+uktGmr20lBzsVgJCW0/g9NQs5e+C1XYdKQWnB7Mbi9PhZoxppsx5nfGmFxjzCFjTI4x5jfGGE+9TrfRUAtOR2r28to25huBnwKXA1uBk4AngHLgfgfr6hKdU/MWDTV7eS3UpgKvisjrTT/nGWMuxR9uMSdWQkLn1ILTULOX196FG4CzjDHjAIwxJwDfAt5o7w7GmJ7GmCTrAvS3p1Tv0JFacIcPHwY01OzitZHa74FkYJsxphFIBH4tIs8Fuc9NwG12FNdZ2n56i47U7OW1kdolwALgMmAy/rm1XxpjLg9yn7vxB6F1SYl2kV6j7WdwVqj17NnT4Urig9dGav8H3CMizzf9/IUxJg3/aOyptu4gInVAnfWzjja6TtdTC07bT3t57V3YB/C1uq4RB15nrLWQ4dDlvIPT9tNeXhuprQR+bYzZjX+XjknA9cByR6sKUayEhLafwVkjtR49ejhcSXzwWqhdB/wWeBgYAuwF/gTc4WRRXqcbCoLTULOXp0JNRCqB/2m6xKxYa121/QxO2097ab8QZeF80GMlJHRDQXB1df7tULr10x76LlRh0zm14LT9tJe+C11I209v0V067KWh5mKxEhLafgZnhZq2n/bQd6EKm7afwWmo2UvfhU30ZMah0/YzOG0/7aWh1sSNJzOOlZCwQljPPt423fppLw01FTYdqQWnoWYvDbUoCaeFjLX2U48oCM4KNd2lwx4aai4WKyFhjdS0/Wybbiiwl4aaCptu/QxO20976bvQhWKt/dQ5teA01OyloRZl8XDsp7afwWmo2UtDTYVN28/gNNTspe9CF9L201tqa2sBDTW7aKi5WKyEhLafwVkjtV69ejlcSXzQUFNh05FacNZITUPNHhpqTdx07Ges0Tm14HROzV76LmzipmM/Y3VOTUOtbTqnZi99F7pYrLRzOqfWPhEJjNR69+7tcDXxQUNNhU1Hau2zAg10Ts0u+i6Mkng6oF03FLTPaj1B20+7aKi5WKyERGNjI6DtZ1usUDPG6CodNtFQU2HTObX2HTp0CPDPp8XKf1KxTkPNhbT99A7dR81+GmpRFsoHPdYWXdT2s33NR2rKHhpqKmxWqOnWzyNZoaYjNfvou9CFYrX91FA7ko7U7KfvQheLlfZTNxS0T0PNfhpqLqahFvusUOvTp4/DlcQPDbUmkT6gPZ52vtU5tfbpSM1++i5s4qYD2i2xMlLTrZ/tq6mpAXSkZicNNRU2Ham1T0PNfvoudKFYbT91pHYkbT/tp6EWZXo2qfhWXV0N6EjNThpqLqQjNe+w2s++ffs6XEn80FBzoVgLNd35tn1WqGn7aR99F7pYrLSfDQ0NgI7U2mK1nzpSs4/nQs0YM9IY84wx5oAxpsYYs9kYM8XpurxM28/2aajZr5vTBUSSMWYg8AHwDjAXKAZGA2V21xKJnW9jZaSmodY+DTX7eSrUgBuBfBFZ2Oy6PIdqAeJj66eGWvusUOvXr5/DlcQPr7Wf5wGfGWNeNMYUG2M2GWOuDHYHY0xPY0ySdQH621Nq+2JtQ4EVat26ee3/yPBVVVUBGmp28lqoZQLXADuB2cCjwAPGmB8Fuc9NQHmzS0G0i+yItp/eYYWatp/28VqoJQAbReRmEdkkIn8CHscfdO25G0hudkmJfpmdo6EW+7T9tJ/X+oVC4KtW130NXNTeHUSkDgicnNENQaLtp3do+2k/r43UPgDGt7puHLDLgVrigs/nC4SwjtRaamxsDBz72b+/41O1ccNrofZH4FRjzM3GmDHGmMuAq4BldhcSL+upWTvegoZaa9YoDXROzU6eCjUR+RS4ALgU+BK4FfgfEXnWqZq8fjYpq/UEbT9bq6ysBPz/Lnp2dvt47l0oIquAVU7XEQmxEGrNR2oaai1Zoda/f/+Y+Ft6hadGal4RS+1n85Gatp8tWaGmGwnspaHmQrHUfupIrX1WqCUnJztcSXzRUHOxWAo1Y4wuPdRKRUUFAElJSQ5XEl/0XRgl8bb1U1vPI1mhprtz2EtDLcq8vvXTCrXu3bs7XIn7WKGm7ae9NNSaRPq8n5EQC6GmRxO0r7y8HND2024aak0ifd7PeFlPrb6+HtD2sy06p+YMDTUXiqVQ0/azfdZITdtPe2mouVgshJo1UtP280hlZWUADBgwwNE64o2GmgvF4tZPDbUj6UjNGRpqUeb1rZ/WSE3bzyNZI7WBAwc6W0ic0VBzoVgKNR2pte/gwYOAtp9201CLknjZ+VZHau3TOTVnaKhFmdfPJqWh1jYRCYzUtP20l4aaC8Vi+6mh1lJNTU0g8DXU7KWhFiXxtvOthlpLpaWlgH+uUVe9tZeGmgtpqMU+K9SOPvromPg7eomGmgvFUqgdPnwY0FBrzQq1o446yuFK4o+GWhM3HdAeS6GmI7W2aag5R0OtSaQPaLfEy863PXr0cLgSd9m/fz/gbz+VvTTUXCiWQs1qPzXUWjpw4AAAgwYNcriS+KOhFiXxsvVT59TapiM152ioRZm2n/GppKQE0JGaEzTUXCiWQk3bz7ZZoTZ48GCHK4k/GmpREm/tp4ZaSxpqztFQizKvt591dXWAhlprGmrO0VBzoVgKNWuk1rNnT4crcQ8Robi4GIChQ4c6XE380VBzoVgKNR2pHamioiLw7zJkyBCHq4k/GmpREi9zataHV0dq/1FUVARAv3796NOnj8PVxB8NtSgLJZh8Ph8ACQnu//NoqB3JCrXhw4c7XEl8cv+nxiZ67GdodE7tSPv27QN0Ps0pGmpN9GTGodGR2pEKCwsBGDZsmMOVxCcNtSjzevtZW1sLQK9evRyuxD327t0LwIgRIxyuJD65/1MTh2JppGaFmo7U/sMaqWmoOUNDLUq0/Yxf1khNNxQ4Q0MtyuKl/ezdu7fDlbhHQUEBACkpKQ5XEp/c/6mJQ7E0UtM5tSPt2bMHgJEjRzpcSXzSUIuScNpPa6QWC6F26NAhQEPNUlFRQWVlJaCh5hRPh5ox5iZjjBhjltr93OGMtqz7xkL7aYWatp9++fn5gP+s7P369XO4mvjk/k9NiIwxJwNXAVucrqWrdE4tdlmhNmrUKIcriV/u/9SEwBjTD3gWuBI46EQN2n7Gp927dwOQmprqcCXxy5OhBiwDXheRdR3d0BjT0xiTZF2A/pEsxMvtZ319PY2NjQB64HaTvLw8ANLT0x2tI551c7qASDPGfB+YDJzcybvcBNwWvYq6Llbaz5qamsD3Gmp+u3btAiAtLc3hSuKXuz81XWSMSQXuBxaISG0n73Y3kNzsEpGdi8LZUBAr7acVasYYXU+tiTVS01BzjtdGalOAIcC/mwVCInCGMeZnQE8RaWx+BxGpA+qsnyMdJOG0n4mJiRGtJdKsUOvbt6/rA9guOTk5AIwePdrhSuKX10LtLeC4Vtc9AWwDft860KIpEhsKYqX91NbTr6amJrDsUGZmpsPVxC9PhZqIVAJfNr/OGFMNHBCRL9u+V9RqCfm+sdZ+aqj55ebmApCcnMzAgQMdriZ+uXso4AHhzKm5vf2srq4G/O2ngqysLADGjBnjcCXxzVMjtbaIyAyna+iqWGk/q6qqAA01i4aaO7j7UxPD4mHrp47UWtq5cycAY8eOdbiS+KahFmVebj+tkVr//hHdXzlmbd++HYBx48Y5XEl801CLknjY+mmFmh647WeF2vjx4x2uJL65+1MTw8JpP61Dj9weatYSOxpq/iWHrGW8NdSc5e5PjQeEE2pubz811P7j66+/BvxLeCcnJztcTXzTUIuSSLSfsRJqSUlJDlfivK1btwLwjW98w+FKVFRDzRgTM3tlRutkxl4+R4GG2n9oqLlHtD81Zxtj/mqMucsY4+pNZG46mXGszKlVVFQAGmoAX37pP2BFQ815Edn51hjzIZAEvA28C7wnIgdE5CXgJWPMaOABYGEkni8WRGJDgdvbz/LycgCdQwK2bPEvsHzCCSc4XImK1FDg74AAi4GXgCJjzGZjzH3GmAvxr5wRV+cLi6dQi/eRWnFxMfv27cMYoyM1F4hIqInI/SJyHDAYuBB4EGgArsMfchuATyPxXLEiEu1nrIRavI/UNm/eDPgPj9KjK5wX0WM/RaQUeKXpQtM82ln4w+2eSD6X28XDSK2srAwg7lek2LRpEwCTJ092uBIFUd5QICKVIvIK8GPgjmg+l1t5NdR8Pl9gQ8GAAQOcLcZhGzduBDTU3CJSGwr6AZcDxcAqETnU/Pcikm+M6RmJ54oV4YzUGhoaAHeHWnl5eeA1xnv7+dlnnwEaam4RqfbzH/jbTIByY8zf8c+lvS8idU1nacqI0HPFhEi0n926uXdlqNLSUsC/QkfPnnH1/1ULJSUlgSW8TzrpJIerURC59rMY6AfMBlYBPwDWAJXGmD1AEXG6ocCr7efBg/7Tqcb7fNqnn/rf1uPHj4/7NtwtIjUUKAWGi8ibwJvGmF7AHOAkYADwsYg8E6HnigleD7UDBw4AcNRRRzlcibM+/vhjAL75zYjss60iIFKh9ivgVmNMD2C5iHxFs62g8SgSc2rdu3ePaE2RZIXaoEGDHK7EWR988AEA06ZNc7gSZYlIqDVtGLjZGDMIGBmJx7SbMWYx/p2HI9KSh7N6rRVqbp5T279/PwBHH320w5U4p6GhgX/9618AnHbaaQ5XoywR3aVDRPaLyOeRfEy7ROvYT69u/dRQ8+90W11dTXJysh5J4CLuPmI6hnm9/SwpKQFg6NChDlfinPfeew+A008/3fWLD8QT/UtEiRVqobzZ6+vrAXe3n8XFxQAMHjzY4Uqc8+677wIwY8YMR+tQLWmoRUk4I7VYCrUhQ4Y4XIkzGhoaWL9+PQDTp093uBrVnIZalIQaaiISE+1nUVERAMOGDXO4Emd88sknVFRUcNRRRzFp0iSny1HNaKhFSajtp7WPGrg71Pbt2wfEb6itXbsWgG9/+9uu3qATjzTUoiTUXTqs1hPcG2rV1dWBpbzjdUPBmjVrAJg1a5bDlajWNNSiJNSRWiyE2t69ewH/cZ/xeCLjkpKSwP5pc+bMcbga1ZqGWpSEOlI7fPhw4Hu3htqePXsAGDlyZEgbQmLd6tWrERFOPPFEUlLiakHnmKChFiWhbiiwRmoJCQmunauxQm3EiBEOV+KMlStXAnDuuec6XIlqi4ZalIR6mjtrpObm5XwKCgoASE1NdbgS+9XU1LB69WoAzjvvPIerUW3RUGsS6fN+hhpqdXV1APTo0SMSZUTF7t27ARg1apTDldhvzZo1VFdXk5aWxpQpU5wuR7VBQ61JpI/9DHdOLRZCLR5Hai+99BIAF110UVzOJ8YCDbUosUKtq/Ni1kjNze1nXl4eAGlpac4WYrPq6mpeffVVAObNm+dwNao9GmpREm776dZQE5HA8tUZGXG1Qjuvvvoq1dXVZGZmcuqppzpdjmqHhlqUeDXUSkpKqKmpwRgTdyO1Z599FoAf/OAH2nq6mIZalIQaarW1tYB7Qy0rKwvw76PWq1cvh6uxz549e/jnP/8J+ENNuZeGWpSEOqdmhVrv3r0jXlMk7Ny5E4Bx48Y5XIm9nnrqKXw+H6effjrjx493uhwVhIZalIQ6Ujt0yH/KVLeH2tixYx2uxD4+n4/ly5cDsGjRIoerUR3xVKgZY24yxnxqjKk0xhQbY14xxjjy36q12kaooebW1m779u1AfI3U1q5dS3Z2NklJSbrVMwZ4KtSA6cAy4FRgFv4Ty6w1xvS1u5BQT3NnhVqfPn0iXlMkfPXVVwBxtSb/Aw88AMAVV1xB3762v5VUF7l3adUQiEiLJROMMQvxn2h5CrDezlpCDbWamhrAnaFWX1/Pjh07ADjmmGMcrsYeO3fuZPXq1RhjWLx4sdPlqE7wVKi1Ibnpa2l7NzDG9ASab2qMyFo64YaaG+fUduzYQUNDA/369Yub1Sn+8Ic/AHD22WczZswYh6tRneG19jPA+Hckug/YICJfBrnpTUB5s0tBJJ4/1FCrrq4GcGWb8/nn/rMfHn/88XGxn1ZhYSFPPPEEADfeeKPD1ajO8myoAQ8BxwOXdnC7u/GP6KxLRIYgXgy1zZs3A3DCCSc4W4hN7r//fg4fPsy0adP41re+5XQ5qpM82X4aYx4EzgPOEJGgIy8RqQPqmt03IjV4MdQ2bdoEwIknnuhsITbYv38/y5YtA/yjtHgYmXqFp0KtqeV8ELgAmCEiuU7VEuoZoay1/922TLbP5+PTTz8F4OSTT3a4muhbsmQJVVVVTJo0SReDjDGeCjX8u3NcBnwPqDTGWKc6KheRQ3YWYoVaV8/daYVaUlJSxGsKR1ZWFuXl5fTq1Ytjjz3W6XKiqrCwkIceegiA3/3udzpKizFem1O7Bv+82LtAYbPLJXYXYoVaV9tPt47UrBONTJo0ybXnToiU2267jUOHDjF16lTmzp3rdDmqizw1UhMR1/yXap1roKsBUFZWBkBycnLwG9psw4YNAJx22mkOVxJdW7Zs4S9/+Qvgb0F1lBZ7vDZScw0r1LrafpaXlwPuDTUvbwUUEa6//np8Ph/z58/39Gv1Mg21KAl1pObGUCspKQkcHuXlkdpLL73EW2+9RY8ePfj973/vdDkqRBpqUWKFWlfONVBbWxs49vOoo46KSl2heOuttwD/TreDBg1yuJroKC8v57/+678A/y4c8baqr5doqEVJKCO10lL/0VyJiYmu2vr55ptvAjBr1iyHK4meW265hX379jF27Fhuvvlmp8tRYdBQi5JQzgplhdqAAQNcM0EtIqxduxbwbqi9//77gR1tH330Udcu+6Q6R0MtSkI510BJSQkAgwcPjkpNodi8eTMFBQX06dOHM844w+lyIq6yspIf/ehHiAgLFy5k5syZTpekwqSh1iTSJzMOJ9SGDBkSiRIi4rXXXgNg9uzZrlw5JFzXX389eXl5pKens3TpUqfLURGgodYk0iczDiXUiouLAXeN1F555RUAzjvvPGcLiYIVK1bw5z//GWMMTz75pKvmMVXoNNSixDqBSlfmZ/bt2wfAsGHDOrilPbZt28bmzZvp1q0b3/3ud50uJ6KysrJYuHAhAL/4xS+YPn26wxWpSNFQi5JQQm3v3r0AjBgxIio1ddVzzz0HwHe+8x1P7cpRW1vLxRdfTEVFBaeddhp33XWX0yWpCNJQi5JQTqDiplATEf72t78BcNlllzlcTeSICIsXL2bTpk0MGjSI559/3vPHssYbDbUoCeVcA7t37wZwxVLZ77zzDllZWfTr14/vfe97TpcTMffeey/Lly8nISGBZ555xhX/1iqyNNSixAq1zi72KCLs2rULgLS0tKjV1VmPP/44AAsWLKBfv34OVxMZq1atCizLfd999zF79myHK1LRoKEWJV1dwXb//v2BIExNTY1aXZ1RXFzMihUrALjyyisdrSVSNm7cyKWXXoqIcNVVVwUOiVLeo6EWJVVVVQCdHuVkZ2cD/vk0p/doX7ZsGYcPH+bkk09m8uTJjtYSCdu3b2f27NlUVVVx5pln8tBDD7nmiA0VeRpqUeDz+bq8gq11Ps3x4x05oXxAdXV1YNXXG264wdFaIqGgoIDvfOc77N+/n8mTJ/PKK6/ohgGP01CLAqv1hM6vYGuF2rhx46JSU2ctX76c0tJSMjMzufDCCx2tJVxFRUXMnj2b3bt3M27cOFavXq072MYBDbUosFav7d69e6dbya1btwIwYcKEaJXVoZqaGu6++24AfvnLX3Z5KXI32bt3LzNmzOCrr75i5MiRrF271lWHn6no0VBrEsljPw8ePAj410Tr7NzNli1bAGfPqfnQQw9RWFhIeno6ixYtcqyOcBUUFDB9+nS2bdtGamoq7777riu2KCt7aKg1ieSxn9YSQgMHDuzU7SsqKsjJyQH8CzE6oaysjHvuuQeA22+/vUtLJrlJTk4OM2bMICsri/T0dNavX8+YMWOcLkvZSEMtCg4cOADA0Ucf3anbb9y4EfDvdNvZ+0Tar3/9aw4ePMgxxxzDggULHKkhXJ999hlTp04lOzubjIwM3n33XdLT050uS9lMQy0KrAPThw4d2qnbf/TRRwCceuqpUaspmI0bN/LII48A/hY0FufS/vnPfzJjxgyKi4s58cQT2bBhg7accUpDLQqKioqArofa1KlTo1ZTexobG1m8eDEiwqWXXsqZZ55pew3heuKJJzj33HOprq5m1qxZrF+/3hXHzypnaKhFQWFhIdC5UGtoaAicfm7atGlRrast9957Lx9//DH9+vXj3nvvtf35w1FfX891113HFVdcQUND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\n", "text/plain": [ "Graphics object consisting of 1 graphics primitive" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "contour_plot(ruv, (v, 0, 9), (u, -3, 9.5), cmap=['black'],\n", " contours=(0.1, 0.2, 0.5, 1., 5), fill=False, \n", " axes_labels=(r'$v$', r'$u$'), axes=True)" ] }, { "cell_type": "code", "execution_count": 26, "id": "fe519bed", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n" ], "text/plain": [ "Graphics3d Object" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "plot3d(ruv, (u, -2, 9.5), (v, 0, 9), axes_labels=('u', 'v', 'r'))" ] }, { "cell_type": "code", "execution_count": 27, "id": "5a7e1f4c-aa0a-4fa6-9b6a-5f699a9b5347", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\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)\\)" ], "text/latex": [ "$\\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)$" ], "text/plain": [ "(1/2*u^2 - 1/2*u*abs(u)) + (-1/6*abs(u)/u + 1/3)*v + (1/36*abs(u)/u^3)*v^2 + Order(v^3)" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ruv.series(v, 3)" ] }, { "cell_type": "markdown", "id": "4075dbfb", "metadata": {}, "source": [ "## Double null-coordinate system in the region $r < v / x_1$" ] }, { "cell_type": "code", "execution_count": 28, "id": "89080afd", "metadata": {}, "outputs": [], "source": [ "N2 = M.open_subset('N2', latex_name=r'N_2',\n", " coord_def={XN: r < v/x1})" ] }, { "cell_type": "code", "execution_count": 29, "id": "03ea2ffd", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle \\left(N_2,(u, v, {\\theta}, {\\varphi})\\right)\\)" ], "text/latex": [ "$\\displaystyle \\left(N_2,(u, v, {\\theta}, {\\varphi})\\right)$" ], "text/plain": [ "Chart (N2, (u, v, th, ph))" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X2. = N2.chart(r'u v:(0,+oo) th:(0,pi):\\theta ph:(0,2*pi):\\varphi:periodic')\n", "X2" ] }, { "cell_type": "code", "execution_count": 30, "id": "a5549306", "metadata": {}, "outputs": [], "source": [ "assume(v - x1*r > 0)" ] }, { "cell_type": "code", "execution_count": 31, "id": "5652c609", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\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.\\)" ], "text/latex": [ "$\\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.$" ], "text/plain": [ "u = -(r - v/x2)/(-r + v/x1)^(x2/x1)\n", "v = v\n", "th = th\n", "ph = ph" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "XN_to_X2 = XN.transition_map(X2, ((v/x2 - r)/((v/x1 - r))^(x2/x1),\n", " v, th, ph))\n", "XN_to_X2.display()" ] }, { "cell_type": "code", "execution_count": 32, "id": "2fe9a2df", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\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}\\)" ], "text/latex": [ "$\\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}$" ], "text/plain": [ "g_u,v = (r*x1 - v)*(-r*x1 + v)^(x2/x1)/(r*x1^(x2/x1)*x2 - r*x1^(x2/x1 + 1)) \n", "g_v,u = (r*x1 - v)*(-r*x1 + v)^(x2/x1)/(r*x1^(x2/x1)*x2 - r*x1^(x2/x1 + 1)) \n", "g_v,v = -((x1 - 2)*x2 - 2*x1)/(x1*x2) \n", "g_th,th = r^2 \n", "g_ph,ph = r^2*sin(th)^2 " ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "g.display_comp(X2.frame(), chart=XN.restrict(N2))" ] }, { "cell_type": "code", "execution_count": 33, "id": "79930c1b", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\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}}\\)" ], "text/latex": [ "$\\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}}$" ], "text/plain": [ "(r*x1 - v)*(-r*x1 + v)^(x2/x1)/(r*x1^(x2/x1)*x2 - r*x1^(x2/x1 + 1))" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "g[X2.frame(),0,1].expr()" ] }, { "cell_type": "markdown", "id": "0e2869e4", "metadata": {}, "source": [ "To simplify the components of $g$, let us substitute $x_1$ by its expression\n", "in terms of $x_2$, i.e. $x_1 = \\frac{2 x_2}{x_2 - 2}$:" ] }, { "cell_type": "code", "execution_count": 34, "id": "4859b5c7", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\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}\\)" ], "text/latex": [ "$\\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}$" ], "text/plain": [ "g_u,v = -2*(-((2*r - v)*x2 + 2*v)/(x2 - 2))^(1/2*x2)/((r*x2 - 4*r)*(2*x2/(x2 - 2))^(1/2*x2)) \n", "g_v,u = -2*(-((2*r - v)*x2 + 2*v)/(x2 - 2))^(1/2*x2)/((r*x2 - 4*r)*(2*x2/(x2 - 2))^(1/2*x2)) \n", "g_th,th = r^2 \n", "g_ph,ph = r^2*sin(th)^2 " ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "xx1 = 2*x2/(x2 - 2)\n", "g.apply_map(lambda x: x.subs({x1: xx1}).simplify_full(),\n", " frame=X2.frame(), chart=XN.restrict(N2),\n", " keep_other_components=True)\n", "\n", "g.display_comp(X2.frame(), chart=XN.restrict(N2))" ] }, { "cell_type": "markdown", "id": "24030b04", "metadata": {}, "source": [ "We note that $g_{uu} = 0$ and $g_{vv} = 0$, which proves that $(u,v,\\theta,\\varphi)$ is a **double-null coordinate system** on $N_2$." ] }, { "cell_type": "markdown", "id": "169ff867", "metadata": {}, "source": [ "Alternative form of $g_{uv}$:" ] }, { "cell_type": "code", "execution_count": 35, "id": "f0c20b45", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\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}}}\\)" ], "text/latex": [ "$\\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}}}$" ], "text/plain": [ "-2*(-((2*r - v)*x2 + 2*v)/(x2 - 2))^(1/2*x2)/((r*x2 - 4*r)*(2*x2/(x2 - 2))^(1/2*x2))" ] }, "execution_count": 35, "metadata": {}, "output_type": "execute_result" } ], "source": [ "guv = g[X2.frame(),0,1].expr()\n", "guv" ] }, { "cell_type": "code", "execution_count": 36, "id": "fc427694", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle \\frac{{\\left(-r + \\frac{v}{{x_1}}\\right)}^{\\frac{1}{2} \\, {x_2}} {x_1}}{r {\\left({x_1} - {x_2}\\right)}}\\)" ], "text/latex": [ "$\\displaystyle \\frac{{\\left(-r + \\frac{v}{{x_1}}\\right)}^{\\frac{1}{2} \\, {x_2}} {x_1}}{r {\\left({x_1} - {x_2}\\right)}}$" ], "text/plain": [ "(-r + v/x1)^(1/2*x2)*x1/(r*(x1 - x2))" ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "guv_alt = - x1/(x2 - x1)/r*(v/x1 - r)^(x2/2)\n", "guv_alt" ] }, { "cell_type": "markdown", "id": "ea19463a", "metadata": {}, "source": [ "Test:" ] }, { "cell_type": "code", "execution_count": 37, "id": "3340f2d3", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle 0\\)" ], "text/latex": [ "$\\displaystyle 0$" ], "text/plain": [ "0" ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" } ], "source": [ "s = guv - guv_alt.subs({x1: xx1})\n", "s.simplify_full().canonicalize_radical()" ] }, { "cell_type": "markdown", "id": "8d06f8d9", "metadata": {}, "source": [ "## Special case $\\alpha = 1/9$" ] }, { "cell_type": "code", "execution_count": 38, "id": "315e3197", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\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}}\\)" ], "text/latex": [ "$\\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}}$" ], "text/plain": [ "-(r*x1^(x2/x1)*x2 - v*x1^(x2/x1))/((-r*x1 + v)^(x2/x1)*x2)" ] }, "execution_count": 38, "metadata": {}, "output_type": "execute_result" } ], "source": [ "u_vr = XN_to_X2(v, r, th, ph)[0]\n", "u_vr" ] }, { "cell_type": "code", "execution_count": 39, "id": "74841b39", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle -\\frac{3 \\, {\\left(6 \\, r - v\\right)}}{2 \\, {\\left(3 \\, r - v\\right)}^{2}}\\)" ], "text/latex": [ "$\\displaystyle -\\frac{3 \\, {\\left(6 \\, r - v\\right)}}{2 \\, {\\left(3 \\, r - v\\right)}^{2}}$" ], "text/plain": [ "-3/2*(6*r - v)/(3*r - v)^2" ] }, "execution_count": 39, "metadata": {}, "output_type": "execute_result" } ], "source": [ "u_vr1 = u_vr.subs({x1: 3, x2: 6})\n", "u_vr1" ] }, { "cell_type": "markdown", "id": "cd0df52e", "metadata": {}, "source": [ "Solving for $r$ in terms of $(u,v)$:" ] }, { "cell_type": "code", "execution_count": 40, "id": "4ee9c292", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\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]\\)" ], "text/latex": [ "$\\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]$" ], "text/plain": [ "[r == 1/6*(2*u*v - sqrt(-6*u*v + 9) - 3)/u, r == 1/6*(2*u*v + sqrt(-6*u*v + 9) - 3)/u]" ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eq = u == u_vr1\n", "solve(eq, r)" ] }, { "cell_type": "code", "execution_count": 41, "id": "42e24c5f", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle \\frac{2 \\, u v + \\sqrt{-6 \\, u v + 9} - 3}{6 \\, u}\\)" ], "text/latex": [ "$\\displaystyle \\frac{2 \\, u v + \\sqrt{-6 \\, u v + 9} - 3}{6 \\, u}$" ], "text/plain": [ "1/6*(2*u*v + sqrt(-6*u*v + 9) - 3)/u" ] }, "execution_count": 41, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ruv = solve(eq, r)[1].rhs()\n", "ruv" ] }, { "cell_type": "code", "execution_count": 42, "id": "ca9c07de", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle \\frac{1}{3} \\, v + \\frac{\\sqrt{-\\frac{2}{3} \\, u v + 1} - 1}{2 \\, u}\\)" ], "text/latex": [ "$\\displaystyle \\frac{1}{3} \\, v + \\frac{\\sqrt{-\\frac{2}{3} \\, u v + 1} - 1}{2 \\, u}$" ], "text/plain": [ "1/3*v + 1/2*(sqrt(-2/3*u*v + 1) - 1)/u" ] }, "execution_count": 42, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ruv_alt = v/3 + (sqrt(1 - 2*u*v/3) - 1)/(2*u)\n", "ruv_alt" ] }, { "cell_type": "code", "execution_count": 43, "id": "de8f603a", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle 0\\)" ], "text/latex": [ "$\\displaystyle 0$" ], "text/plain": [ "0" ] }, "execution_count": 43, "metadata": {}, "output_type": "execute_result" } ], "source": [ "(ruv - ruv_alt).simplify_full().canonicalize_radical()" ] }, { "cell_type": "code", "execution_count": 44, "id": "ca70a9f0", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle {(\\frac{1}{6} \\, v)} + {(-\\frac{1}{36} \\, v^{2})} u + \\mathcal{O}\\left(u^{2}\\right)\\)" ], "text/latex": [ "$\\displaystyle {(\\frac{1}{6} \\, v)} + {(-\\frac{1}{36} \\, v^{2})} u + \\mathcal{O}\\left(u^{2}\\right)$" ], "text/plain": [ "(1/6*v) + (-1/36*v^2)*u + Order(u^2)" ] }, "execution_count": 44, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ruv_alt.series(u, 2)" ] }, { "cell_type": "code", "execution_count": 45, "id": "36210509-41d1-4b65-87fb-3ca073a661a4", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\\(\\displaystyle \\frac{1}{6} v + {(-\\frac{1}{36} \\, u)} v^{2} + \\mathcal{O}\\left(v^{3}\\right)\\)" ], "text/latex": [ "$\\displaystyle \\frac{1}{6} v + {(-\\frac{1}{36} \\, u)} v^{2} + \\mathcal{O}\\left(v^{3}\\right)$" ], "text/plain": [ "1/6*v + (-1/36*u)*v^2 + Order(v^3)" ] }, "execution_count": 45, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ruv_alt.series(v, 3)" ] }, { "cell_type": "markdown", "id": "87c8b4b6", "metadata": {}, "source": [ "Recovering Fig. 3b of B. Waugh and K. Lake, [Phys. Rev. D **34**, 2978 (1986)](https://doi.org/10.1103/PhysRevD.34.2978):" ] }, { "cell_type": "code", "execution_count": 46, "id": "cbf1c15a", "metadata": {}, "outputs": [ { "data": { "image/png": "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c47rrruOH/7whzjnmDNnDs8+++wBO/pKdlH3UcDidR95g8yJ9NVmOhSWLFnC7t27GTx4MCeffHJGrpmqlStXcu+99wJw3333aWA5Cc45rrnmGu6/P7Yx8G233cZ1112n1d6iUAhavFDw5nwnEgrelMBMrSb2dhA988wzI78o6YYbbqC5uZmLL76YL3/5y2GX06P87Gc/4/7776dPnz489NBDfPe73w27JIkIdR8FrLOB5kRCYceO2GFwmZoWumjRIgBOP/30jFwvVW+99RYLFy4kJyeHW265JexyepR7772XW2+9FYD7779fgSBtKBSSYGZzzGw1sCzR58QbU/BaCl0NMjvn2LlzJ3DgyW1BqKqq4q233gKiHwo33XQTEDuJbtKkSeEW04P8+c9/9gfmf/nLX3LVVVeFXJFEjUIhCc65ec65qcDxiT6ns+6jrkKhoqLCX8+QiVBYsmQJjY2NTJgwgYkTJwZ+vVS9//77PP/88/Tp00eDy0lYu3Ytl19+Oc45rr76am644YawS5IIUigELN6U1ETHFEpLS4HYqudMLCB68803ASI/wPyb3/wGgAsuuCDjmwT2VN6K78rKSk455RTuueceDSpLXAqFgHWn+8jbq37YsGEBVddWTwiF3bt389hjjwH4h/9I1370ox+xcuVKRowYweOPP67zjqVDCoWAeS2FeKHQ1RRKr6WQiVBwzrFsWWyo5Itf/GLg10vVY489Rm1tLdOmTdNePAl68cUXefDBBzEz/vjHP2ZserP0TAqFgHXWfdRVS2H37t0ADB06NKDq9lu/fj1lZWXk5+dz5JFHBn69VHkb9V111VXq/khAVVUV3/ve9wC49tprNXVXuqRQCFi8gea6ujqg65bCnj17ABgyZEhA1e33zjvvAHD00UdHdn3Ce++9x8qVK8nLy+PSSy8Nu5we4frrr2fjxo0cfPDBmrorCVEoBKw73UeZDIUVK1YAMH369MCvlao//vGPQGz7jcGDB4dcTfS9//77zJs3D4AHH3wwoVP+RBQKAeuspdBV99HevXsBMvIGuGrVKoDInrPrnGPBggUAfOMb3wi5muhzzvFP//RPNDc3c9FFFzFr1qywS5IeQqEQsHgthUS7j8IIhagebr98+XI2bNhAQUEBs2fPDrucyHvuued4+eWXycvL41e/+lXY5UgPolBIQrpWNHuh0NVR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\n", "text/plain": [ "Graphics object consisting of 1 graphics primitive" ] }, "execution_count": 46, "metadata": {}, "output_type": "execute_result" } ], "source": [ "contour_plot(ruv, (v, 0, 14), (u, -10, 5), cmap=['black'],\n", " contours=(0, 0.05, 0.1, 0.2, 0.5, 1., 2.), fill=False, \n", " axes_labels=(r'$v$', r'$u$'), axes=True)" ] }, { "cell_type": "code", "execution_count": 47, "id": "6c1d7abe", "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n" ], "text/plain": [ "Graphics3d Object" ] }, "execution_count": 47, "metadata": {}, "output_type": "execute_result" } ], "source": [ "plot3d(ruv, (u, -10, 5), (v, 0, 14), axes_labels=('u', 'v', 'r'))" ] }, { "cell_type": "code", "execution_count": null, "id": "46685d62", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "SageMath 9.7.beta2", "language": "sage", "name": "sagemath" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.3" } }, "nbformat": 4, "nbformat_minor": 5 }