{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# 3+1 Simon-Mars tensor in Kerr spacetime\n", "\n", "This worksheet demonstrates a few capabilities of [SageManifolds](http://sagemanifolds.obspm.fr) (version 1.0, as included in SageMath 7.5) in computations regarding 3+1 slicing of Kerr spacetime. In particular, it implements the computation of the 3+1 decomposition of the Simon-Mars tensor as given in the article [arXiv:1412.6542](http://arxiv.org/abs/1412.6542).\n", "\n", "Click [here](https://raw.githubusercontent.com/sagemanifolds/SageManifolds/master/Worksheets/v1.0/SM_Simon-Mars_3p1_Kerr.ipynb) to download the worksheet file (ipynb format). To run it, you must start SageMath with the Jupyter notebook, via the command sage -n jupyter" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "*NB:* a version of SageMath at least equal to 7.5 is required to run this worksheet:" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "'SageMath version 7.5.1, Release Date: 2017-01-15'" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "version()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "First we set up the notebook to display mathematical objects using LaTeX rendering:" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": true }, "outputs": [], "source": [ "%display latex" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Since some computations are quite long, we ask for running them in parallel on 8 cores:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": true }, "outputs": [], "source": [ "Parallelism().set(nproc=8)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Spacelike hypersurface\n", "\n", "We consider some hypersurface $\\Sigma$ of a spacelike foliation $(\\Sigma_t)_{t\\in\\mathbb{R}}$ of Kerr spacetime; we declare $\\Sigma_t$ as a 3-dimensional manifold:" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [], "source": [ "Sig = Manifold(3, 'Sigma', r'\\Sigma', start_index=1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

The two Kerr parameters:

" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [], "source": [ "var('m, a')\n", "assume(m>0)\n", "assume(a>0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

### Riemannian metric on $\\Sigma$

\n", "

The variables introduced so far satisfy the following assumptions:

\n", "\n", "

Without any loss of generality (for $m\\not =0$), we may set $m=1$:

" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [], "source": [ "m=1\n", "assume(a<1)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [], "source": [ "#a=1 # extreme Kerr" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

On the hypersurface $\\Sigma$, we are using coordinates $(r,y,\\phi)$ that are related to the standard Boyer-Lindquist coordinates $(r,\\theta,\\phi)$ by $y=\\cos\\theta$:

" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Chart (Sigma, (r, y, ph))\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "Chart (Sigma, (r, y, ph))" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X. = Sig.chart(r'r:(1+sqrt(1-a^2),+oo) y:(-1,1) ph:(0,2*pi):\\phi')\n", "print(X) ; X" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

### Riemannian metric on $\\Sigma$

\n", "

The variables introduced so far obey the following assumptions:

" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "[m > 0,\n", " a > 0,\n", " a < 1,\n", " r is real,\n", " y is real,\n", " y > -1,\n", " y < 1,\n", " ph is real,\n", " ph > 0,\n", " ph < 2*pi]" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "assumptions()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

Some shortcut notations:

" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false }, "outputs": [], "source": [ "rho2 = r^2 + a^2*y^2 \n", "Del = r^2 -2*m*r + a^2\n", "AA2 = rho2*(r^2 + a^2) + 2*a^2*m*r*(1-y^2)\n", "BB2 = r^2 + a^2 + 2*a^2*m*r*(1-y^2)/rho2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

The metric $h$ induced by the spacetime metric $g$ on $\\Sigma$:

" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "gam = (a^2*y^2 + r^2)/(a^2 + r^2 - 2*r) dr*dr - (a^2*y^2 + r^2)/(y^2 - 1) dy*dy + (2*(y^2 - 1)*a^2*r/(a^2*y^2 + r^2) - a^2 - r^2)*(y^2 - 1) dph*dph" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gam = Sig.riemannian_metric('gam', latex_name=r'\\gamma') \n", "gam[1,1] = rho2/Del\n", "gam[2,2] = rho2/(1-y^2)\n", "gam[3,3] = BB2*(1-y^2)\n", "gam.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

A matrix view of the components w.r.t. coordinates $(r,y,\\phi)$:

" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "[ (a^2*y^2 + r^2)/(a^2 + r^2 - 2*r) 0 0]\n", "[ 0 -(a^2*y^2 + r^2)/(y^2 - 1) 0]\n", "[ 0 0 (2*(y^2 - 1)*a^2*r/(a^2*y^2 + r^2) - a^2 - r^2)*(y^2 - 1)]" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gam[:]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

### Lapse function and shift vector

" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Scalar field N on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "N: Sigma --> R\n", " (r, y, ph) |--> sqrt(-(a^2 + r^2 - 2*r)/(2*(y^2 - 1)*a^2*r/(a^2*y^2 + r^2) - a^2 - r^2))" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "N = Sig.scalar_field(sqrt(Del / BB2), name='N')\n", "print(N)\n", "N.display()" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "beta = 2*a*r/(2*(y^2 - 1)*a^2*r - (a^2*y^2 + r^2)*(a^2 + r^2)) d/dph" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "b = Sig.vector_field('beta', latex_name=r'\\beta') \n", "b[3] = -2*m*r*a/AA2 \n", "# unset components are zero \n", "b.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

### Extrinsic curvature of $\\Sigma$

\n", "

We use the formula $$K_{ij} = \\frac{1}{2N} \\mathcal{L}_{\\beta} \\gamma_{ij}$$ which is valid for any stationary spacetime:

" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Field of symmetric bilinear forms K on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "K = (a^3*r^2 + 3*a*r^4 + (a^5 - a^3*r^2)*y^4 - (a^5 + 3*a*r^4)*y^2)*sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)/((a^2*r^4 + r^6 + 2*a^2*r^3 + (a^6 + a^4*r^2 - 2*a^4*r)*y^4 + 2*(a^4*r^2 + a^2*r^4 + a^4*r - a^2*r^3)*y^2)*sqrt(a^2*y^2 + r^2)*sqrt(a^2 + r^2 - 2*r)) dr*dph - 2*sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)*((a^5*r + a^3*r^3 - 2*a^3*r^2)*y^3 - (a^5*r + a^3*r^3 - 2*a^3*r^2)*y)/((a^2*r^4 + r^6 + 2*a^2*r^3 + (a^6 + a^4*r^2 - 2*a^4*r)*y^4 + 2*(a^4*r^2 + a^2*r^4 + a^4*r - a^2*r^3)*y^2)*sqrt(a^2*y^2 + r^2)*sqrt(a^2 + r^2 - 2*r)) dy*dph + (a^3*r^2 + 3*a*r^4 + (a^5 - a^3*r^2)*y^4 - (a^5 + 3*a*r^4)*y^2)*sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)/((a^2*r^4 + r^6 + 2*a^2*r^3 + (a^6 + a^4*r^2 - 2*a^4*r)*y^4 + 2*(a^4*r^2 + a^2*r^4 + a^4*r - a^2*r^3)*y^2)*sqrt(a^2*y^2 + r^2)*sqrt(a^2 + r^2 - 2*r)) dph*dr - 2*sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)*((a^5*r + a^3*r^3 - 2*a^3*r^2)*y^3 - (a^5*r + a^3*r^3 - 2*a^3*r^2)*y)/((a^2*r^4 + r^6 + 2*a^2*r^3 + (a^6 + a^4*r^2 - 2*a^4*r)*y^4 + 2*(a^4*r^2 + a^2*r^4 + a^4*r - a^2*r^3)*y^2)*sqrt(a^2*y^2 + r^2)*sqrt(a^2 + r^2 - 2*r)) dph*dy" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "K = gam.lie_der(b) / (2*N)\n", "K.set_name('K')\n", "print(K) ; K.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

Check (comparison with known formulas):

" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "((a^2 - r^2)*a^2*y^2 - a^2*r^2 - 3*r^4)*(y^2 - 1)*a/((a^2*y^2 + r^2)^2*sqrt(-(2*(y^2 - 1)*a^2*r/(a^2*y^2 + r^2) - a^2 - r^2)*(a^2 + r^2 - 2*r)))" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Krp = a*m*(1-y^2)*(3*r^4+a^2*r^2+a^2*(r^2-a^2)*y^2) / rho2^2/sqrt(Del*BB2)\n", "Krp" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "K[1,3] - Krp" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-2*sqrt(a^2 + r^2 - 2*r)*(y^2 - 1)*a^3*r*y/((a^2*y^2 + r^2)^2*sqrt(-2*(y^2 - 1)*a^2*r/(a^2*y^2 + r^2) + a^2 + r^2))" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Kyp = 2*m*r*a^3*(1-y^2)*y*sqrt(Del)/rho2^2/sqrt(BB2)\n", "Kyp" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "K[2,3] - Kyp" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

For now on, we use the expressions Krp and Kyp above for $K_{r\\phi}$ and $K_{ry}$, respectively:

" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "K = ((a^2 - r^2)*a^2*y^2 - a^2*r^2 - 3*r^4)*(y^2 - 1)*a/((a^2*y^2 + r^2)^2*sqrt(-(2*(y^2 - 1)*a^2*r/(a^2*y^2 + r^2) - a^2 - r^2)*(a^2 + r^2 - 2*r))) dr*dph - 2*sqrt(a^2 + r^2 - 2*r)*(y^2 - 1)*a^3*r*y/((a^2*y^2 + r^2)^2*sqrt(-2*(y^2 - 1)*a^2*r/(a^2*y^2 + r^2) + a^2 + r^2)) dy*dph + ((a^2 - r^2)*a^2*y^2 - a^2*r^2 - 3*r^4)*(y^2 - 1)*a/((a^2*y^2 + r^2)^2*sqrt(-(2*(y^2 - 1)*a^2*r/(a^2*y^2 + r^2) - a^2 - r^2)*(a^2 + r^2 - 2*r))) dph*dr - 2*sqrt(a^2 + r^2 - 2*r)*(y^2 - 1)*a^3*r*y/((a^2*y^2 + r^2)^2*sqrt(-2*(y^2 - 1)*a^2*r/(a^2*y^2 + r^2) + a^2 + r^2)) dph*dy" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "K1 = Sig.sym_bilin_form_field('K')\n", "K1[1,3] = Krp\n", "K1[2,3] = Kyp\n", "K = K1\n", "K.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

The type-(1,1) tensor $K^\\sharp$ of components $K^i_{\\ \\, j} = \\gamma^{ik} K_{kj}$:

" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Tensor field of type (1,1) on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "(a^5*r^2 + 4*a^3*r^4 + 3*a*r^6 - 2*a^3*r^3 - 6*a*r^5 + (a^7 - a^3*r^4 - 2*a^5*r + 2*a^3*r^3)*y^4 - (a^7 + a^5*r^2 + 3*a^3*r^4 + 3*a*r^6 - 2*a^5*r - 6*a*r^5)*y^2)*sqrt(a^2*y^2 + r^2)/((a^6*y^6 + 3*a^4*r^2*y^4 + 3*a^2*r^4*y^2 + r^6)*sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)*sqrt(a^2 + r^2 - 2*r)) d/dr*dph + 2*(a^3*r*y^5 - 2*a^3*r*y^3 + a^3*r*y)*sqrt(a^2*y^2 + r^2)*sqrt(a^2 + r^2 - 2*r)/((a^6*y^6 + 3*a^4*r^2*y^4 + 3*a^2*r^4*y^2 + r^6)*sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)) d/dy*dph + (a^3*r^2 + 3*a*r^4 - (a^5 - a^3*r^2)*y^2)*sqrt(a^2*y^2 + r^2)/((a^2*r^4 + r^6 + 2*a^2*r^3 + (a^6 + a^4*r^2 - 2*a^4*r)*y^4 + 2*(a^4*r^2 + a^2*r^4 + a^4*r - a^2*r^3)*y^2)*sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)*sqrt(a^2 + r^2 - 2*r)) d/dph*dr + 2*sqrt(a^2*y^2 + r^2)*sqrt(a^2 + r^2 - 2*r)*a^3*r*y/((a^2*r^4 + r^6 + 2*a^2*r^3 + (a^6 + a^4*r^2 - 2*a^4*r)*y^4 + 2*(a^4*r^2 + a^2*r^4 + a^4*r - a^2*r^3)*y^2)*sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)) d/dph*dy" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Ku = K.up(gam, 0)\n", "print(Ku) ; Ku.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

We may check that the hypersurface $\\Sigma$ is maximal, i.e. that $K^k_{\\ \\, k} = 0$:

" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Scalar field zero on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "trK = Ku.trace()\n", "print(trK)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

### Connection and curvature

\n", "

Let us call $D$ the Levi-Civita connection associated with $\\gamma$:

" ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Levi-Civita connection D associated with the Riemannian metric gam on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "Levi-Civita connection D associated with the Riemannian metric gam on the 3-dimensional differentiable manifold Sigma" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "D = gam.connection(name='D')\n", "print(D) ; D" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

The Ricci tensor associated with $\\gamma$:

" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Field of symmetric bilinear forms Ric(gam) on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "Field of symmetric bilinear forms Ric(gam) on the 3-dimensional differentiable manifold Sigma" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Ric = gam.ricci()\n", "print(Ric) ; Ric" ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-(8*a^4*r^7 + 7*a^2*r^9 + 2*r^11 + 5*a^6*r^4 + 2*a^4*r^6 - 7*a^2*r^8 + (3*a^10*r + 3*a^6*r^5 + a^10 - 14*a^8*r^2 - 11*a^6*r^4 + 6*(a^8 + 2*a^6)*r^3)*y^6 + (3*a^6 - 4*a^4)*r^5 - (9*a^10*r + 4*a^4*r^7 + a^10 - 30*a^8*r^2 - 35*a^6*r^4 - 16*a^4*r^6 + (17*a^6 + 4*a^4)*r^5 + 2*(11*a^8 + 12*a^6)*r^3)*y^4 - (16*a^4*r^7 + 5*a^2*r^9 + 16*a^8*r^2 + 29*a^6*r^4 + 18*a^4*r^6 - 7*a^2*r^8 + (17*a^6 - 8*a^4)*r^5 + 6*(a^8 - 2*a^6)*r^3)*y^2)/(3*a^2*r^12 + r^14 + 6*a^4*r^9 - 2*r^13 + 4*a^6*r^6 + (3*a^4 - 8*a^2)*r^10 + (a^6 - 4*a^4)*r^8 + (a^14 + a^8*r^6 - 6*a^12*r - 6*a^8*r^5 + 3*(a^10 + 4*a^8)*r^4 - 4*(3*a^10 + 2*a^8)*r^3 + 3*(a^12 + 4*a^10)*r^2)*y^8 + 4*(a^6 - 2*a^4)*r^7 + 4*(a^6*r^8 + a^12*r - 5*a^6*r^7 + (3*a^8 + 8*a^6)*r^6 - (9*a^8 + 4*a^6)*r^5 + (3*a^10 + 4*a^8)*r^4 - (3*a^10 - 4*a^8)*r^3 + (a^12 - 4*a^10)*r^2)*y^6 + 2*(3*a^4*r^10 - 12*a^4*r^9 + 2*a^10*r^2 + 16*a^6*r^5 + (9*a^6 + 14*a^4)*r^8 - 2*(9*a^6 + 2*a^4)*r^7 + 3*(3*a^8 - 2*a^6)*r^6 + 3*(a^10 - 6*a^8)*r^4 + 2*(3*a^10 - 2*a^8)*r^3)*y^4 + 4*(a^2*r^12 - 3*a^4*r^9 - 3*a^2*r^11 + 2*a^8*r^4 + (3*a^4 + 2*a^2)*r^10 + 3*(a^6 - 2*a^4)*r^8 + (3*a^6 + 4*a^4)*r^7 + (a^8 - 6*a^6)*r^6 + (3*a^8 - 4*a^6)*r^5)*y^2)" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Ric[1,1]" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "((3*a^10 + 6*a^8*r^2 + 3*a^6*r^4 - 4*a^8*r - 8*a^6*r^3)*y^5 - 2*(3*a^8*r^2 + 6*a^6*r^4 + 3*a^4*r^6 - 2*a^8*r - 12*a^6*r^3 - 6*a^4*r^5)*y^3 - (9*a^6*r^4 + 18*a^4*r^6 + 9*a^2*r^8 + 16*a^6*r^3 + 12*a^4*r^5)*y)/(a^4*r^8 + 2*a^2*r^10 + r^12 + 4*a^4*r^7 + 4*a^2*r^9 + 4*a^4*r^6 + (a^12 + a^8*r^4 - 4*a^10*r - 4*a^8*r^3 + 2*(a^10 + 2*a^8)*r^2)*y^8 + 4*(a^6*r^6 + a^10*r - 2*a^8*r^3 - 3*a^6*r^5 + 2*(a^8 + a^6)*r^4 + (a^10 - 2*a^8)*r^2)*y^6 + 2*(3*a^4*r^8 + 6*a^8*r^3 - 6*a^4*r^7 + 2*a^8*r^2 + 2*(3*a^6 + a^4)*r^6 + (3*a^8 - 8*a^6)*r^4)*y^4 + 4*(2*a^4*r^8 + a^2*r^10 + 3*a^6*r^5 + 2*a^4*r^7 - a^2*r^9 + 2*a^6*r^4 + (a^6 - 2*a^4)*r^6)*y^2)" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Ric[1,2]" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Ric[1,3]" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "(7*a^4*r^7 + 5*a^2*r^9 + r^11 + 6*a^6*r^4 + 4*a^4*r^6 - 2*a^2*r^8 + 2*(3*a^10*r + 3*a^6*r^5 - 10*a^8*r^2 - 10*a^6*r^4 + 2*(3*a^8 + 4*a^6)*r^3)*y^6 + (3*a^6 - 8*a^4)*r^5 - (9*a^10*r - a^4*r^7 - 34*a^8*r^2 - 36*a^6*r^4 - 2*a^4*r^6 + (7*a^6 + 8*a^4)*r^5 + (17*a^8 + 32*a^6)*r^3)*y^4 - 2*(7*a^4*r^7 + 2*a^2*r^9 + 7*a^8*r^2 + 11*a^6*r^4 + 3*a^4*r^6 - a^2*r^8 + 8*(a^6 - a^4)*r^5 + (3*a^8 - 8*a^6)*r^3)*y^2)/(a^4*r^8 + 2*a^2*r^10 + r^12 + 4*a^4*r^7 + 4*a^2*r^9 - (a^12 + a^8*r^4 - 4*a^10*r - 4*a^8*r^3 + 2*(a^10 + 2*a^8)*r^2)*y^10 + 4*a^4*r^6 + (a^12 - 4*a^6*r^6 - 8*a^10*r + 4*a^8*r^3 + 12*a^6*r^5 - (7*a^8 + 8*a^6)*r^4 - 2*(a^10 - 6*a^8)*r^2)*y^8 - 2*(3*a^4*r^8 - 2*a^10*r + 10*a^8*r^3 + 6*a^6*r^5 - 6*a^4*r^7 + 2*(2*a^6 + a^4)*r^6 - (a^8 + 12*a^6)*r^4 - 2*(a^10 - 3*a^8)*r^2)*y^6 - 2*(a^4*r^8 + 2*a^2*r^10 - 6*a^8*r^3 + 6*a^6*r^5 + 10*a^4*r^7 - 2*a^2*r^9 - 2*a^8*r^2 - 2*(2*a^6 + 3*a^4)*r^6 - 3*(a^8 - 4*a^6)*r^4)*y^4 + (7*a^4*r^8 + 2*a^2*r^10 - r^12 + 12*a^6*r^5 + 4*a^4*r^7 - 8*a^2*r^9 + 8*a^6*r^4 + 4*(a^6 - 3*a^4)*r^6)*y^2)" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Ric[2,2]" ] }, { "cell_type": "code", "execution_count": 29, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Ric[2,3]" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "(a^4*r^7 + 2*a^2*r^9 + r^11 + a^6*r^4 + 10*a^4*r^6 + 13*a^2*r^8 + 4*a^4*r^5 + (3*a^10*r + 3*a^6*r^5 + a^10 - 18*a^8*r^2 - 15*a^6*r^4 + 2*(3*a^8 + 10*a^6)*r^3)*y^8 - (3*a^10*r - 5*a^4*r^7 + 2*a^10 - 38*a^8*r^2 - 22*a^6*r^4 + 2*a^4*r^6 - (7*a^6 - 4*a^4)*r^5 + (a^8 + 60*a^6)*r^3)*y^6 - (3*a^4*r^7 - a^2*r^9 - a^10 + 22*a^8*r^2 - 2*a^6*r^4 - 14*a^4*r^6 - 13*a^2*r^8 + 3*(3*a^6 - 4*a^4)*r^5 + 5*(a^8 - 12*a^6)*r^3)*y^4 - (3*a^4*r^7 + 3*a^2*r^9 + r^11 - 2*a^8*r^2 + 10*a^6*r^4 + 22*a^4*r^6 + 26*a^2*r^8 + 20*a^6*r^3 + (a^6 + 12*a^4)*r^5)*y^2)/(a^2*r^10 + r^12 + 2*a^2*r^9 + (a^12 + a^10*r^2 - 2*a^10*r)*y^10 + (5*a^10*r^2 + 5*a^8*r^4 + 2*a^10*r - 8*a^8*r^3)*y^8 + 2*(5*a^8*r^4 + 5*a^6*r^6 + 4*a^8*r^3 - 6*a^6*r^5)*y^6 + 2*(5*a^6*r^6 + 5*a^4*r^8 + 6*a^6*r^5 - 4*a^4*r^7)*y^4 + (5*a^4*r^8 + 5*a^2*r^10 + 8*a^4*r^7 - 2*a^2*r^9)*y^2)" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Ric[3,3]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

The scalar curvature $R = \\gamma^{ij} R_{ij}$:

" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Scalar field R on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "R: Sigma --> R\n", " (r, y, ph) |--> 2*(a^6*r^4 + 6*a^4*r^6 + 9*a^2*r^8 - (a^10 - 6*a^8*r^2 - 3*a^6*r^4 + 8*a^6*r^3)*y^6 + (a^10 - 8*a^8*r^2 - 3*a^6*r^4 - 6*a^4*r^6 + 16*a^6*r^3)*y^4 + (2*a^8*r^2 - a^6*r^4 - 9*a^2*r^8 - 8*a^6*r^3)*y^2)/(a^4*r^10 + 2*a^2*r^12 + r^14 + 4*a^4*r^9 + 4*a^2*r^11 + 4*a^4*r^8 + (a^14 + a^10*r^4 - 4*a^12*r - 4*a^10*r^3 + 2*(a^12 + 2*a^10)*r^2)*y^10 + (5*a^8*r^6 + 4*a^12*r - 12*a^10*r^3 - 16*a^8*r^5 + 2*(5*a^10 + 6*a^8)*r^4 + (5*a^12 - 8*a^10)*r^2)*y^8 + 2*(5*a^6*r^8 + 8*a^10*r^3 - 4*a^8*r^5 - 12*a^6*r^7 + 2*a^10*r^2 + 2*(5*a^8 + 3*a^6)*r^6 + (5*a^10 - 12*a^8)*r^4)*y^6 + 2*(5*a^4*r^10 + 12*a^8*r^5 + 4*a^6*r^7 - 8*a^4*r^9 + 6*a^8*r^4 + 2*(5*a^6 + a^4)*r^8 + (5*a^8 - 12*a^6)*r^6)*y^4 + (10*a^4*r^10 + 5*a^2*r^12 + 16*a^6*r^7 + 12*a^4*r^9 - 4*a^2*r^11 + 12*a^6*r^6 + (5*a^6 - 8*a^4)*r^8)*y^2)" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "R = gam.ricci_scalar(name='R')\n", "print(R)\n", "R.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

## Test: 3+1 Einstein equations

\n", "

Let us check that the vacuum 3+1 Einstein equations are satisfied.

\n", "

We start by the contraint equations:

\n", "

### Hamiltonian constraint

\n", "

Let us first evaluate the term $K_{ij} K^{ij}$:

" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Scalar field on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "Sigma --> R\n", "(r, y, ph) |--> 2*(a^6*r^4 + 6*a^4*r^6 + 9*a^2*r^8 - (a^10 - 6*a^8*r^2 - 3*a^6*r^4 + 8*a^6*r^3)*y^6 + (a^10 - 8*a^8*r^2 - 3*a^6*r^4 - 6*a^4*r^6 + 16*a^6*r^3)*y^4 + (2*a^8*r^2 - a^6*r^4 - 9*a^2*r^8 - 8*a^6*r^3)*y^2)/(a^4*r^10 + 2*a^2*r^12 + r^14 + 4*a^4*r^9 + 4*a^2*r^11 + 4*a^4*r^8 + (a^14 + a^10*r^4 - 4*a^12*r - 4*a^10*r^3 + 2*(a^12 + 2*a^10)*r^2)*y^10 + (5*a^8*r^6 + 4*a^12*r - 12*a^10*r^3 - 16*a^8*r^5 + 2*(5*a^10 + 6*a^8)*r^4 + (5*a^12 - 8*a^10)*r^2)*y^8 + 2*(5*a^6*r^8 + 8*a^10*r^3 - 4*a^8*r^5 - 12*a^6*r^7 + 2*a^10*r^2 + 2*(5*a^8 + 3*a^6)*r^6 + (5*a^10 - 12*a^8)*r^4)*y^6 + 2*(5*a^4*r^10 + 12*a^8*r^5 + 4*a^6*r^7 - 8*a^4*r^9 + 6*a^8*r^4 + 2*(5*a^6 + a^4)*r^8 + (5*a^8 - 12*a^6)*r^6)*y^4 + (10*a^4*r^10 + 5*a^2*r^12 + 16*a^6*r^7 + 12*a^4*r^9 - 4*a^2*r^11 + 12*a^6*r^6 + (5*a^6 - 8*a^4)*r^8)*y^2)" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Kuu = Ku.up(gam, 1)\n", "trKK = K['_ij']*Kuu['^ij']\n", "print(trKK) ; trKK.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

The vacuum Hamiltonian constraint equation is $$R + K^2 -K_{ij} K^{ij} = 0$$

" ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Scalar field zero on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "zero: Sigma --> R\n", " (r, y, ph) |--> 0" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Ham = R + trK^2 - trKK\n", "print(Ham) ; Ham.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

### Momentum constraint

\n", "

In vaccum, the momentum constraint is $$D_j K^j_{\\ \\, i} - D_i K = 0$$

" ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1-form on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "mom = D(Ku).trace(0,2) - D(trK)\n", "print(mom)\n", "mom.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

### Dynamical Einstein equations

\n", "

Let us first evaluate the symmetric bilinear form $k_{ij} := K_{ik} K^k_{\\ \\, j}$:

" ] }, { "cell_type": "code", "execution_count": 35, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Tensor field of type (0,2) on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "KK = K['_ik']*Ku['^k_j']\n", "print(KK)" ] }, { "cell_type": "code", "execution_count": 36, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "True" ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "KK1 = KK.symmetrize()\n", "KK == KK1" ] }, { "cell_type": "code", "execution_count": 37, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Field of symmetric bilinear forms on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "KK = KK1\n", "print(KK)" ] }, { "cell_type": "code", "execution_count": 38, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "(a^6*r^4 + 6*a^4*r^6 + 9*a^2*r^8 - (a^10 - 2*a^8*r^2 + a^6*r^4)*y^6 + (a^10 + 5*a^6*r^4 - 6*a^4*r^6)*y^4 - (2*a^8*r^2 + 5*a^6*r^4 + 9*a^2*r^8)*y^2)/(3*a^2*r^12 + r^14 + 6*a^4*r^9 - 2*r^13 + 4*a^6*r^6 + (3*a^4 - 8*a^2)*r^10 + (a^6 - 4*a^4)*r^8 + (a^14 + a^8*r^6 - 6*a^12*r - 6*a^8*r^5 + 3*(a^10 + 4*a^8)*r^4 - 4*(3*a^10 + 2*a^8)*r^3 + 3*(a^12 + 4*a^10)*r^2)*y^8 + 4*(a^6 - 2*a^4)*r^7 + 4*(a^6*r^8 + a^12*r - 5*a^6*r^7 + (3*a^8 + 8*a^6)*r^6 - (9*a^8 + 4*a^6)*r^5 + (3*a^10 + 4*a^8)*r^4 - (3*a^10 - 4*a^8)*r^3 + (a^12 - 4*a^10)*r^2)*y^6 + 2*(3*a^4*r^10 - 12*a^4*r^9 + 2*a^10*r^2 + 16*a^6*r^5 + (9*a^6 + 14*a^4)*r^8 - 2*(9*a^6 + 2*a^4)*r^7 + 3*(3*a^8 - 2*a^6)*r^6 + 3*(a^10 - 6*a^8)*r^4 + 2*(3*a^10 - 2*a^8)*r^3)*y^4 + 4*(a^2*r^12 - 3*a^4*r^9 - 3*a^2*r^11 + 2*a^8*r^4 + (3*a^4 + 2*a^2)*r^10 + 3*(a^6 - 2*a^4)*r^8 + (3*a^6 + 4*a^4)*r^7 + (a^8 - 6*a^6)*r^6 + (3*a^8 - 4*a^6)*r^5)*y^2)" ] }, "execution_count": 38, "metadata": {}, "output_type": "execute_result" } ], "source": [ "KK[1,1]" ] }, { "cell_type": "code", "execution_count": 39, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "2*((a^8*r - a^6*r^3)*y^5 - (a^8*r + 3*a^4*r^5)*y^3 + (a^6*r^3 + 3*a^4*r^5)*y)/(a^4*r^8 + 2*a^2*r^10 + r^12 + 4*a^4*r^7 + 4*a^2*r^9 + 4*a^4*r^6 + (a^12 + a^8*r^4 - 4*a^10*r - 4*a^8*r^3 + 2*(a^10 + 2*a^8)*r^2)*y^8 + 4*(a^6*r^6 + a^10*r - 2*a^8*r^3 - 3*a^6*r^5 + 2*(a^8 + a^6)*r^4 + (a^10 - 2*a^8)*r^2)*y^6 + 2*(3*a^4*r^8 + 6*a^8*r^3 - 6*a^4*r^7 + 2*a^8*r^2 + 2*(3*a^6 + a^4)*r^6 + (3*a^8 - 8*a^6)*r^4)*y^4 + 4*(2*a^4*r^8 + a^2*r^10 + 3*a^6*r^5 + 2*a^4*r^7 - a^2*r^9 + 2*a^6*r^4 + (a^6 - 2*a^4)*r^6)*y^2)" ] }, "execution_count": 39, "metadata": {}, "output_type": "execute_result" } ], "source": [ "KK[1,2]" ] }, { "cell_type": "code", "execution_count": 40, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "KK[1,3]" ] }, { "cell_type": "code", "execution_count": 41, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-4*((a^8*r^2 + a^6*r^4 - 2*a^6*r^3)*y^4 - (a^8*r^2 + a^6*r^4 - 2*a^6*r^3)*y^2)/(a^4*r^8 + 2*a^2*r^10 + r^12 + 4*a^4*r^7 + 4*a^2*r^9 + 4*a^4*r^6 + (a^12 + a^8*r^4 - 4*a^10*r - 4*a^8*r^3 + 2*(a^10 + 2*a^8)*r^2)*y^8 + 4*(a^6*r^6 + a^10*r - 2*a^8*r^3 - 3*a^6*r^5 + 2*(a^8 + a^6)*r^4 + (a^10 - 2*a^8)*r^2)*y^6 + 2*(3*a^4*r^8 + 6*a^8*r^3 - 6*a^4*r^7 + 2*a^8*r^2 + 2*(3*a^6 + a^4)*r^6 + (3*a^8 - 8*a^6)*r^4)*y^4 + 4*(2*a^4*r^8 + a^2*r^10 + 3*a^6*r^5 + 2*a^4*r^7 - a^2*r^9 + 2*a^6*r^4 + (a^6 - 2*a^4)*r^6)*y^2)" ] }, "execution_count": 41, "metadata": {}, "output_type": "execute_result" } ], "source": [ "KK[2,2]" ] }, { "cell_type": "code", "execution_count": 42, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 42, "metadata": {}, "output_type": "execute_result" } ], "source": [ "KK[2,3]" ] }, { "cell_type": "code", "execution_count": 43, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "(a^6*r^4 + 6*a^4*r^6 + 9*a^2*r^8 + (a^10 - 6*a^8*r^2 - 3*a^6*r^4 + 8*a^6*r^3)*y^8 - 2*(a^10 - 7*a^8*r^2 - 3*a^6*r^4 - 3*a^4*r^6 + 12*a^6*r^3)*y^6 + (a^10 - 10*a^8*r^2 - 2*a^6*r^4 - 6*a^4*r^6 + 9*a^2*r^8 + 24*a^6*r^3)*y^4 + 2*(a^8*r^2 - a^6*r^4 - 3*a^4*r^6 - 9*a^2*r^8 - 4*a^6*r^3)*y^2)/(a^2*r^10 + r^12 + 2*a^2*r^9 + (a^12 + a^10*r^2 - 2*a^10*r)*y^10 + (5*a^10*r^2 + 5*a^8*r^4 + 2*a^10*r - 8*a^8*r^3)*y^8 + 2*(5*a^8*r^4 + 5*a^6*r^6 + 4*a^8*r^3 - 6*a^6*r^5)*y^6 + 2*(5*a^6*r^6 + 5*a^4*r^8 + 6*a^6*r^5 - 4*a^4*r^7)*y^4 + (5*a^4*r^8 + 5*a^2*r^10 + 8*a^4*r^7 - 2*a^2*r^9)*y^2)" ] }, "execution_count": 43, "metadata": {}, "output_type": "execute_result" } ], "source": [ "KK[3,3]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

In vacuum and for stationary spacetimes, the dynamical Einstein equations are $$\\mathcal{L}_\\beta K_{ij} - D_i D_j N + N \\left( R_{ij} + K K_{ij} - 2 K_{ik} K^k_{\\ \\, j}\\right) = 0$$

" ] }, { "cell_type": "code", "execution_count": 44, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Tensor field of type (0,2) on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 44, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dyn = K.lie_der(b) - D(D(N)) + N*( Ric + trK*K - 2*KK )\n", "print(dyn)\n", "dyn.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

Hence, we have checked that all the vacuum 3+1 Einstein equations are fulfilled.

\n", "\n", "

## Electric and magnetic parts of the Weyl tensor

\n", "

The electric part is the bilinear form $E$ given by \n", "$$E_{ij} = R_{ij} + K K_{ij} - K_{ik} K^k_{\\ \\, j}$$

" ] }, { "cell_type": "code", "execution_count": 45, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Field of symmetric bilinear forms on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "E = Ric + trK*K - KK\n", "print(E)" ] }, { "cell_type": "code", "execution_count": 46, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-(3*a^4*r^3 + 5*a^2*r^5 + 2*r^7 - 2*a^2*r^4 + 3*(a^6*r + a^4*r^3 - 2*a^4*r^2)*y^4 - (9*a^6*r + 16*a^4*r^3 + 7*a^2*r^5 - 6*a^4*r^2 - 2*a^2*r^4)*y^2)/(2*a^2*r^8 + r^10 + 2*a^4*r^5 - 2*r^9 + (a^4 - 4*a^2)*r^6 + (a^10 + a^6*r^4 - 4*a^8*r - 4*a^6*r^3 + 2*(a^8 + 2*a^6)*r^2)*y^6 + (3*a^4*r^6 + 2*a^8*r - 8*a^6*r^3 - 10*a^4*r^5 + 2*(3*a^6 + 4*a^4)*r^4 + (3*a^8 - 4*a^6)*r^2)*y^4 + (3*a^2*r^8 + 4*a^6*r^3 - 4*a^4*r^5 - 8*a^2*r^7 + 2*(3*a^4 + 2*a^2)*r^6 + (3*a^6 - 8*a^4)*r^4)*y^2)" ] }, "execution_count": 46, "metadata": {}, "output_type": "execute_result" } ], "source": [ "E[1,1]" ] }, { "cell_type": "code", "execution_count": 47, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-(a^4*y^2 + a^2*r^2*y^2 - 2*a^2*r*y^2 - 3*a^4 - 5*a^2*r^2 - 2*r^4 + 2*a^2*r)*(3*a^2*y^2 - r^2)*r/((a^4*y^2 + a^2*r^2*y^2 - 2*a^2*r*y^2 + a^2*r^2 + r^4 + 2*a^2*r)*(a^2*y^2 + r^2)^2*(a^2 + r^2 - 2*r))" ] }, "execution_count": 47, "metadata": {}, "output_type": "execute_result" } ], "source": [ "E[1,1].factor()" ] }, { "cell_type": "code", "execution_count": 48, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "3*((a^6 + a^4*r^2)*y^3 - 3*(a^4*r^2 + a^2*r^4)*y)/(a^2*r^6 + r^8 + 2*a^2*r^5 + (a^8 + a^6*r^2 - 2*a^6*r)*y^6 + (3*a^6*r^2 + 3*a^4*r^4 + 2*a^6*r - 4*a^4*r^3)*y^4 + (3*a^4*r^4 + 3*a^2*r^6 + 4*a^4*r^3 - 2*a^2*r^5)*y^2)" ] }, "execution_count": 48, "metadata": {}, "output_type": "execute_result" } ], "source": [ "E[1,2]" ] }, { "cell_type": "code", "execution_count": 49, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "3*(a^2*y^2 - 3*r^2)*(a^2 + r^2)*a^2*y/((a^4*y^2 + a^2*r^2*y^2 - 2*a^2*r*y^2 + a^2*r^2 + r^4 + 2*a^2*r)*(a^2*y^2 + r^2)^2)" ] }, "execution_count": 49, "metadata": {}, "output_type": "execute_result" } ], "source": [ "E[1,2].factor()" ] }, { "cell_type": "code", "execution_count": 50, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 50, "metadata": {}, "output_type": "execute_result" } ], "source": [ "E[1,3]" ] }, { "cell_type": "code", "execution_count": 51, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-(3*a^4*r^3 + 4*a^2*r^5 + r^7 - 4*a^2*r^4 + 6*(a^6*r + a^4*r^3 - 2*a^4*r^2)*y^4 - (9*a^6*r + 14*a^4*r^3 + 5*a^2*r^5 - 12*a^4*r^2 - 4*a^2*r^4)*y^2)/((a^8 + a^6*r^2 - 2*a^6*r)*y^8 - a^2*r^6 - r^8 - 2*a^2*r^5 - (a^8 - 2*a^6*r^2 - 3*a^4*r^4 - 4*a^6*r + 4*a^4*r^3)*y^6 - (3*a^6*r^2 - 3*a^2*r^6 + 2*a^6*r - 8*a^4*r^3 + 2*a^2*r^5)*y^4 - (3*a^4*r^4 + 2*a^2*r^6 - r^8 + 4*a^4*r^3 - 4*a^2*r^5)*y^2)" ] }, "execution_count": 51, "metadata": {}, "output_type": "execute_result" } ], "source": [ "E[2,2]" ] }, { "cell_type": "code", "execution_count": 52, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-(2*a^4*y^2 + 2*a^2*r^2*y^2 - 4*a^2*r*y^2 - 3*a^4 - 4*a^2*r^2 - r^4 + 4*a^2*r)*(3*a^2*y^2 - r^2)*r/((a^4*y^2 + a^2*r^2*y^2 - 2*a^2*r*y^2 + a^2*r^2 + r^4 + 2*a^2*r)*(a^2*y^2 + r^2)^2*(y + 1)*(y - 1))" ] }, "execution_count": 52, "metadata": {}, "output_type": "execute_result" } ], "source": [ "E[2,2].factor()" ] }, { "cell_type": "code", "execution_count": 53, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 53, "metadata": {}, "output_type": "execute_result" } ], "source": [ "E[2,3]" ] }, { "cell_type": "code", "execution_count": 54, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "(a^2*r^5 + r^7 + 3*(a^6*r + a^4*r^3 - 2*a^4*r^2)*y^6 + 2*a^2*r^4 - (3*a^6*r + a^4*r^3 - 2*a^2*r^5 - 12*a^4*r^2 - 2*a^2*r^4)*y^4 - (2*a^4*r^3 + 3*a^2*r^5 + r^7 + 6*a^4*r^2 + 4*a^2*r^4)*y^2)/(a^8*y^8 + 4*a^6*r^2*y^6 + 6*a^4*r^4*y^4 + 4*a^2*r^6*y^2 + r^8)" ] }, "execution_count": 54, "metadata": {}, "output_type": "execute_result" } ], "source": [ "E[3,3]" ] }, { "cell_type": "code", "execution_count": 55, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "(a^4*y^2 + a^2*r^2*y^2 - 2*a^2*r*y^2 + a^2*r^2 + r^4 + 2*a^2*r)*(3*a^2*y^2 - r^2)*r*(y + 1)*(y - 1)/(a^2*y^2 + r^2)^4" ] }, "execution_count": 55, "metadata": {}, "output_type": "execute_result" } ], "source": [ "E[3,3].factor()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

The magnetic part is the bilinear form $B$ defined by $$B_{ij} = \\epsilon^k_{\\ \\, l i} D_k K^l_{\\ \\, j},$$

\n", "

where $\\epsilon^k_{\\ \\, l i}$ are the components of the type-(1,2) tensor $\\epsilon^\\sharp$, related to theÂ Levi-Civita alternating tensor $\\epsilon$ associated with $\\gamma$ by $\\epsilon^k_{\\ \\, l i} = \\gamma^{km} \\epsilon_{m l i}$. In SageManifolds, $\\epsilon$ is obtained by the command volume_form() and $\\epsilon^\\sharp$ by the command volume_form(1) (1 = 1 index raised):

" ] }, { "cell_type": "code", "execution_count": 56, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "3-form eps_gam on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "eps_gam = sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)*sqrt(a^2*y^2 + r^2)/sqrt(a^2 + r^2 - 2*r) dr/\\dy/\\dph" ] }, "execution_count": 56, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eps = gam.volume_form() \n", "print(eps) ; eps.display()" ] }, { "cell_type": "code", "execution_count": 57, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Tensor field of type (1,2) on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)*sqrt(a^2 + r^2 - 2*r)/sqrt(a^2*y^2 + r^2) d/dr*dy*dph - sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)*sqrt(a^2 + r^2 - 2*r)/sqrt(a^2*y^2 + r^2) d/dr*dph*dy + sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)*(y^2 - 1)/(sqrt(a^2*y^2 + r^2)*sqrt(a^2 + r^2 - 2*r)) d/dy*dr*dph - sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)*(y^2 - 1)/(sqrt(a^2*y^2 + r^2)*sqrt(a^2 + r^2 - 2*r)) d/dy*dph*dr - sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)*(a^2*y^2 + r^2)^(3/2)/(((a^4 + a^2*r^2 - 2*a^2*r)*y^4 - a^2*r^2 - r^4 - 2*a^2*r - (a^4 - r^4 - 4*a^2*r)*y^2)*sqrt(a^2 + r^2 - 2*r)) d/dph*dr*dy + sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)*(a^2*y^2 + r^2)^(3/2)/(((a^4 + a^2*r^2 - 2*a^2*r)*y^4 - a^2*r^2 - r^4 - 2*a^2*r - (a^4 - r^4 - 4*a^2*r)*y^2)*sqrt(a^2 + r^2 - 2*r)) d/dph*dy*dr" ] }, "execution_count": 57, "metadata": {}, "output_type": "execute_result" } ], "source": [ "epsu = gam.volume_form(1)\n", "print(epsu) ; epsu.display()" ] }, { "cell_type": "code", "execution_count": 58, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Tensor field of type (0,2) on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "DKu = D(Ku)\n", "B = epsu['^k_li']*DKu['^l_jk'] \n", "print(B)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

Let us check that $B$ is symmetric:

" ] }, { "cell_type": "code", "execution_count": 59, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "True" ] }, "execution_count": 59, "metadata": {}, "output_type": "execute_result" } ], "source": [ "B1 = B.symmetrize()\n", "B == B1" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

Accordingly, we set

" ] }, { "cell_type": "code", "execution_count": 60, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Field of symmetric bilinear forms B on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "B = B1\n", "B.set_name('B')\n", "print(B)" ] }, { "cell_type": "code", "execution_count": 61, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-((a^7 + a^5*r^2 - 2*a^5*r)*y^5 - (3*a^7 + 8*a^5*r^2 + 5*a^3*r^4 - 2*a^5*r - 6*a^3*r^3)*y^3 + 3*(3*a^5*r^2 + 5*a^3*r^4 + 2*a*r^6 - 2*a^3*r^3)*y)/(2*a^2*r^8 + r^10 + 2*a^4*r^5 - 2*r^9 + (a^4 - 4*a^2)*r^6 + (a^10 + a^6*r^4 - 4*a^8*r - 4*a^6*r^3 + 2*(a^8 + 2*a^6)*r^2)*y^6 + (3*a^4*r^6 + 2*a^8*r - 8*a^6*r^3 - 10*a^4*r^5 + 2*(3*a^6 + 4*a^4)*r^4 + (3*a^8 - 4*a^6)*r^2)*y^4 + (3*a^2*r^8 + 4*a^6*r^3 - 4*a^4*r^5 - 8*a^2*r^7 + 2*(3*a^4 + 2*a^2)*r^6 + (3*a^6 - 8*a^4)*r^4)*y^2)" ] }, "execution_count": 61, "metadata": {}, "output_type": "execute_result" } ], "source": [ "B[1,1]" ] }, { "cell_type": "code", "execution_count": 62, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-(a^4*y^2 + a^2*r^2*y^2 - 2*a^2*r*y^2 - 3*a^4 - 5*a^2*r^2 - 2*r^4 + 2*a^2*r)*(a^2*y^2 - 3*r^2)*a*y/((a^4*y^2 + a^2*r^2*y^2 - 2*a^2*r*y^2 + a^2*r^2 + r^4 + 2*a^2*r)*(a^2*y^2 + r^2)^2*(a^2 + r^2 - 2*r))" ] }, "execution_count": 62, "metadata": {}, "output_type": "execute_result" } ], "source": [ "B[1,1].factor()" ] }, { "cell_type": "code", "execution_count": 63, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "3*(a^3*r^3 + a*r^5 - 3*(a^5*r + a^3*r^3)*y^2)/(a^2*r^6 + r^8 + 2*a^2*r^5 + (a^8 + a^6*r^2 - 2*a^6*r)*y^6 + (3*a^6*r^2 + 3*a^4*r^4 + 2*a^6*r - 4*a^4*r^3)*y^4 + (3*a^4*r^4 + 3*a^2*r^6 + 4*a^4*r^3 - 2*a^2*r^5)*y^2)" ] }, "execution_count": 63, "metadata": {}, "output_type": "execute_result" } ], "source": [ "B[1,2]" ] }, { "cell_type": "code", "execution_count": 64, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-3*(3*a^2*y^2 - r^2)*(a^2 + r^2)*a*r/((a^4*y^2 + a^2*r^2*y^2 - 2*a^2*r*y^2 + a^2*r^2 + r^4 + 2*a^2*r)*(a^2*y^2 + r^2)^2)" ] }, "execution_count": 64, "metadata": {}, "output_type": "execute_result" } ], "source": [ "B[1,2].factor()" ] }, { "cell_type": "code", "execution_count": 65, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 65, "metadata": {}, "output_type": "execute_result" } ], "source": [ "B[1,3]" ] }, { "cell_type": "code", "execution_count": 66, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-(2*(a^7 + a^5*r^2 - 2*a^5*r)*y^5 - (3*a^7 + 10*a^5*r^2 + 7*a^3*r^4 - 4*a^5*r - 12*a^3*r^3)*y^3 + 3*(3*a^5*r^2 + 4*a^3*r^4 + a*r^6 - 4*a^3*r^3)*y)/((a^8 + a^6*r^2 - 2*a^6*r)*y^8 - a^2*r^6 - r^8 - 2*a^2*r^5 - (a^8 - 2*a^6*r^2 - 3*a^4*r^4 - 4*a^6*r + 4*a^4*r^3)*y^6 - (3*a^6*r^2 - 3*a^2*r^6 + 2*a^6*r - 8*a^4*r^3 + 2*a^2*r^5)*y^4 - (3*a^4*r^4 + 2*a^2*r^6 - r^8 + 4*a^4*r^3 - 4*a^2*r^5)*y^2)" ] }, "execution_count": 66, "metadata": {}, "output_type": "execute_result" } ], "source": [ "B[2,2]" ] }, { "cell_type": "code", "execution_count": 67, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-(2*a^4*y^2 + 2*a^2*r^2*y^2 - 4*a^2*r*y^2 - 3*a^4 - 4*a^2*r^2 - r^4 + 4*a^2*r)*(a^2*y^2 - 3*r^2)*a*y/((a^4*y^2 + a^2*r^2*y^2 - 2*a^2*r*y^2 + a^2*r^2 + r^4 + 2*a^2*r)*(a^2*y^2 + r^2)^2*(y + 1)*(y - 1))" ] }, "execution_count": 67, "metadata": {}, "output_type": "execute_result" } ], "source": [ "B[2,2].factor()" ] }, { "cell_type": "code", "execution_count": 68, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 68, "metadata": {}, "output_type": "execute_result" } ], "source": [ "B[2,3]" ] }, { "cell_type": "code", "execution_count": 69, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "((a^7 + a^5*r^2 - 2*a^5*r)*y^7 - (a^7 + 3*a^5*r^2 + 2*a^3*r^4 - 4*a^5*r - 6*a^3*r^3)*y^5 + (2*a^5*r^2 - a^3*r^4 - 3*a*r^6 - 2*a^5*r - 12*a^3*r^3)*y^3 + 3*(a^3*r^4 + a*r^6 + 2*a^3*r^3)*y)/(a^8*y^8 + 4*a^6*r^2*y^6 + 6*a^4*r^4*y^4 + 4*a^2*r^6*y^2 + r^8)" ] }, "execution_count": 69, "metadata": {}, "output_type": "execute_result" } ], "source": [ "B[3,3]" ] }, { "cell_type": "code", "execution_count": 70, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "(a^4*y^2 + a^2*r^2*y^2 - 2*a^2*r*y^2 + a^2*r^2 + r^4 + 2*a^2*r)*(a^2*y^2 - 3*r^2)*a*(y + 1)*(y - 1)*y/(a^2*y^2 + r^2)^4" ] }, "execution_count": 70, "metadata": {}, "output_type": "execute_result" } ], "source": [ "B[3,3].factor()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

## 3+1 decomposition of the Simon-Mars tensor

\n", "

We follow the computation presented in arXiv:1412.6542. We start by the tensor $E^\\sharp$ of components $E^i_ {\\ \\, j}$:

" ] }, { "cell_type": "code", "execution_count": 71, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Tensor field of type (1,1) on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "Eu = E.up(gam, 0) \n", "print(Eu)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

Tensor $B^\\sharp$ of components $B^i_{\\ \\, j}$:

" ] }, { "cell_type": "code", "execution_count": 72, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Tensor field of type (1,1) on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "Bu = B.up(gam, 0)\n", "print(Bu)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

1-form $\\beta^\\flat$ of components $\\beta_i$ and its exterior derivative:

" ] }, { "cell_type": "code", "execution_count": 73, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2-form on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "2*(a^3*y^4 + a*r^2 - (a^3 + a*r^2)*y^2)/(a^4*y^4 + 2*a^2*r^2*y^2 + r^4) dr/\\dph + 4*(a^3*r + a*r^3)*y/(a^4*y^4 + 2*a^2*r^2*y^2 + r^4) dy/\\dph" ] }, "execution_count": 73, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bd = b.down(gam)\n", "xdb = bd.exterior_derivative()\n", "print(xdb) ; xdb.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

Scalar square of shift $\\beta_i \\beta^i$:

" ] }, { "cell_type": "code", "execution_count": 74, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Scalar field on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "Sigma --> R\n", "(r, y, ph) |--> -4*(a^2*r^2*y^2 - a^2*r^2)/(a^2*r^4 + r^6 + 2*a^2*r^3 + (a^6 + a^4*r^2 - 2*a^4*r)*y^4 + 2*(a^4*r^2 + a^2*r^4 + a^4*r - a^2*r^3)*y^2)" ] }, "execution_count": 74, "metadata": {}, "output_type": "execute_result" } ], "source": [ "b2 = bd(b)\n", "print(b2) ; b2.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

Scalar $Y = E(\\beta,\\beta) = E_{ij} \\beta^i \\beta^j$:

" ] }, { "cell_type": "code", "execution_count": 75, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Scalar field on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "Sigma --> R\n", "(r, y, ph) |--> 4*(3*a^4*r^3*y^4 + a^2*r^5 - (3*a^4*r^3 + a^2*r^5)*y^2)/(a^2*r^10 + r^12 + 2*a^2*r^9 + (a^12 + a^10*r^2 - 2*a^10*r)*y^10 + (5*a^10*r^2 + 5*a^8*r^4 + 2*a^10*r - 8*a^8*r^3)*y^8 + 2*(5*a^8*r^4 + 5*a^6*r^6 + 4*a^8*r^3 - 6*a^6*r^5)*y^6 + 2*(5*a^6*r^6 + 5*a^4*r^8 + 6*a^6*r^5 - 4*a^4*r^7)*y^4 + (5*a^4*r^8 + 5*a^2*r^10 + 8*a^4*r^7 - 2*a^2*r^9)*y^2)" ] }, "execution_count": 75, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Ebb = E(b,b)\n", "Y = Ebb\n", "print(Y) ; Y.display()" ] }, { "cell_type": "code", "execution_count": 76, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "4*(3*a^2*y^2 - r^2)*a^2*r^3*(y + 1)*(y - 1)/((a^4*y^2 + a^2*r^2*y^2 - 2*a^2*r*y^2 + a^2*r^2 + r^4 + 2*a^2*r)*(a^2*y^2 + r^2)^4)" ] }, "execution_count": 76, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Ebb.coord_function().factor()" ] }, { "cell_type": "code", "execution_count": 77, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "Sigma --> R\n", "(r, y, ph) |--> 4*(3*a^2*y^2 - r^2)*a^2*r^3*(y + 1)*(y - 1)/((a^4*y^2 + a^2*r^2*y^2 - 2*a^2*r*y^2 + a^2*r^2 + r^4 + 2*a^2*r)*(a^2*y^2 + r^2)^4)" ] }, "execution_count": 77, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Ebb.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

Scalar $\\bar Y = B(\\beta,\\beta) = B_{ij}\\beta^i \\beta^j$:

" ] }, { "cell_type": "code", "execution_count": 78, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Scalar field B(beta,beta) on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "B(beta,beta): Sigma --> R\n", " (r, y, ph) |--> 4*(a^5*r^2*y^5 + 3*a^3*r^4*y - (a^5*r^2 + 3*a^3*r^4)*y^3)/(a^2*r^10 + r^12 + 2*a^2*r^9 + (a^12 + a^10*r^2 - 2*a^10*r)*y^10 + (5*a^10*r^2 + 5*a^8*r^4 + 2*a^10*r - 8*a^8*r^3)*y^8 + 2*(5*a^8*r^4 + 5*a^6*r^6 + 4*a^8*r^3 - 6*a^6*r^5)*y^6 + 2*(5*a^6*r^6 + 5*a^4*r^8 + 6*a^6*r^5 - 4*a^4*r^7)*y^4 + (5*a^4*r^8 + 5*a^2*r^10 + 8*a^4*r^7 - 2*a^2*r^9)*y^2)" ] }, "execution_count": 78, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Bbb = B(b,b)\n", "Y_bar = Bbb\n", "print(Y_bar) ; Y_bar.display()" ] }, { "cell_type": "code", "execution_count": 79, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "4*(a^2*y^2 - 3*r^2)*a^3*r^2*(y + 1)*(y - 1)*y/((a^4*y^2 + a^2*r^2*y^2 - 2*a^2*r*y^2 + a^2*r^2 + r^4 + 2*a^2*r)*(a^2*y^2 + r^2)^4)" ] }, "execution_count": 79, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Bbb.coord_function().factor()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

1-form of components $Eb_i = E_{ij} \\beta^j$:

" ] }, { "cell_type": "code", "execution_count": 80, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1-form on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "-2*(3*a^3*r^2*y^4 + a*r^4 - (3*a^3*r^2 + a*r^4)*y^2)/(a^8*y^8 + 4*a^6*r^2*y^6 + 6*a^4*r^4*y^4 + 4*a^2*r^6*y^2 + r^8) dph" ] }, "execution_count": 80, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Eb = E.contract(b)\n", "print(Eb) ; Eb.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

Vector field of components $Eub^i = E^i_{\\ \\, j} \\beta^j$:

" ] }, { "cell_type": "code", "execution_count": 81, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Vector field on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "2*(3*a^3*r^2*y^2 - a*r^4)/(a^2*r^8 + r^10 + 2*a^2*r^7 + (a^10 + a^8*r^2 - 2*a^8*r)*y^8 + 2*(2*a^8*r^2 + 2*a^6*r^4 + a^8*r - 3*a^6*r^3)*y^6 + 6*(a^6*r^4 + a^4*r^6 + a^6*r^3 - a^4*r^5)*y^4 + 2*(2*a^4*r^6 + 2*a^2*r^8 + 3*a^4*r^5 - a^2*r^7)*y^2) d/dph" ] }, "execution_count": 81, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Eub = Eu.contract(b)\n", "print(Eub) ; Eub.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

1-form of components $Bb_i = B_{ij} \\beta^j$:

" ] }, { "cell_type": "code", "execution_count": 82, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1-form on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "-2*(a^4*r*y^5 + 3*a^2*r^3*y - (a^4*r + 3*a^2*r^3)*y^3)/(a^8*y^8 + 4*a^6*r^2*y^6 + 6*a^4*r^4*y^4 + 4*a^2*r^6*y^2 + r^8) dph" ] }, "execution_count": 82, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Bb = B.contract(b)\n", "print(Bb) ; Bb.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

Vector field of components $Bub^i = B^i_{\\ \\, j} \\beta^j$:

" ] }, { "cell_type": "code", "execution_count": 83, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Vector field on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "2*(a^4*r*y^3 - 3*a^2*r^3*y)/(a^2*r^8 + r^10 + 2*a^2*r^7 + (a^10 + a^8*r^2 - 2*a^8*r)*y^8 + 2*(2*a^8*r^2 + 2*a^6*r^4 + a^8*r - 3*a^6*r^3)*y^6 + 6*(a^6*r^4 + a^4*r^6 + a^6*r^3 - a^4*r^5)*y^4 + 2*(2*a^4*r^6 + 2*a^2*r^8 + 3*a^4*r^5 - a^2*r^7)*y^2) d/dph" ] }, "execution_count": 83, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Bub = Bu.contract(b)\n", "print(Bub) ; Bub.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

Vector field of components $Kub^i = K^i_{\\ \\, j} \\beta^j$:

" ] }, { "cell_type": "code", "execution_count": 84, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Vector field on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "-2*(a^6*r^3 + 4*a^4*r^5 + 3*a^2*r^7 - 2*a^4*r^4 - 6*a^2*r^6 + (a^8*r - a^4*r^5 - 2*a^6*r^2 + 2*a^4*r^4)*y^4 - (a^8*r + a^6*r^3 + 3*a^4*r^5 + 3*a^2*r^7 - 2*a^6*r^2 - 6*a^2*r^6)*y^2)*sqrt(a^2*y^2 + r^2)/((a^2*r^8 + r^10 + 2*a^2*r^7 + (a^10 + a^8*r^2 - 2*a^8*r)*y^8 + 2*(2*a^8*r^2 + 2*a^6*r^4 + a^8*r - 3*a^6*r^3)*y^6 + 6*(a^6*r^4 + a^4*r^6 + a^6*r^3 - a^4*r^5)*y^4 + 2*(2*a^4*r^6 + 2*a^2*r^8 + 3*a^4*r^5 - a^2*r^7)*y^2)*sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)*sqrt(a^2 + r^2 - 2*r)) d/dr - 4*(a^4*r^2*y^5 - 2*a^4*r^2*y^3 + a^4*r^2*y)*sqrt(a^2*y^2 + r^2)*sqrt(a^2 + r^2 - 2*r)/((a^2*r^8 + r^10 + 2*a^2*r^7 + (a^10 + a^8*r^2 - 2*a^8*r)*y^8 + 2*(2*a^8*r^2 + 2*a^6*r^4 + a^8*r - 3*a^6*r^3)*y^6 + 6*(a^6*r^4 + a^4*r^6 + a^6*r^3 - a^4*r^5)*y^4 + 2*(2*a^4*r^6 + 2*a^2*r^8 + 3*a^4*r^5 - a^2*r^7)*y^2)*sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)) d/dy" ] }, "execution_count": 84, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Kub = Ku.contract(b)\n", "print(Kub) ; Kub.display()" ] }, { "cell_type": "code", "execution_count": 85, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Scalar field zero on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "zero: Sigma --> R\n", " (r, y, ph) |--> 0" ] }, "execution_count": 85, "metadata": {}, "output_type": "execute_result" } ], "source": [ "T = 2*b(N) - 2*K(b,b)\n", "print(T) ; T.display()" ] }, { "cell_type": "code", "execution_count": 86, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Scalar field zero on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "zero: Sigma --> R\n", " (r, y, ph) |--> 0" ] }, "execution_count": 86, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Db = D(b) # Db^i_j = D_j b^i\n", "Dbu = Db.up(gam, 1) # Dbu^{ij} = D^j b^i\n", "bDb = b*Dbu # bDb^{ijk} = b^i D^k b^j\n", "T_bar = eps['_ijk']*bDb['^ikj']\n", "print(T_bar) ; T_bar.display()" ] }, { "cell_type": "code", "execution_count": 87, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2-form on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "-2*sqrt(a^2*y^2 + r^2)*a*r/(sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)*sqrt(a^2 + r^2 - 2*r)) dr/\\dy" ] }, "execution_count": 87, "metadata": {}, "output_type": "execute_result" } ], "source": [ "epsb = eps.contract(b) \n", "print(epsb)\n", "epsb.display()" ] }, { "cell_type": "code", "execution_count": 88, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Tensor field of type (0,3) on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "epsB = eps['_ijl']*Bu['^l_k']\n", "print(epsB)" ] }, { "cell_type": "code", "execution_count": 89, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "no symmetry; antisymmetry: (0, 1)\n" ] } ], "source": [ "epsB.symmetries()" ] }, { "cell_type": "code", "execution_count": 90, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-(a^3*y^3 - 3*a*r^2*y)*sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)*sqrt(a^2*y^2 + r^2)/((a^6*y^6 + 3*a^4*r^2*y^4 + 3*a^2*r^4*y^2 + r^6)*sqrt(a^2 + r^2 - 2*r))" ] }, "execution_count": 90, "metadata": {}, "output_type": "execute_result" } ], "source": [ "epsB[1,2,3]" ] }, { "cell_type": "code", "execution_count": 91, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1-form on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "-2*(a^2*y^2 - r^2)/(a^4*y^4 + 2*a^2*r^2*y^2 + r^4) dr + 4*a^2*r*y/(a^4*y^4 + 2*a^2*r^2*y^2 + r^4) dy" ] }, "execution_count": 91, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Z = 2*N*( D(N) -K.contract(b)) + b.contract(xdb)\n", "print(Z) ; Z.display()" ] }, { "cell_type": "code", "execution_count": 92, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1-form on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "4*a*r*y/(a^4*y^4 + 2*a^2*r^2*y^2 + r^4) dr + 2*(a^3*y^2 - a*r^2)/(a^4*y^4 + 2*a^2*r^2*y^2 + r^4) dy" ] }, "execution_count": 92, "metadata": {}, "output_type": "execute_result" } ], "source": [ "DNu = D(N).up(gam)\n", "A = 2*(DNu - Ku.contract(b))*b + N*Dbu\n", "Z_bar = eps['_ijk']*A['^kj']\n", "print(Z_bar) ; Z_bar.display()" ] }, { "cell_type": "code", "execution_count": 93, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "True" ] }, "execution_count": 93, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Test:\n", "Dbdu = D(bd).up(gam,1).up(gam,1) # (Db)^{ij} = D^i b^j\n", "A = 2*b*(DNu - Ku.contract(b)) + N*Dbdu\n", "Z_bar0 = eps['_ijk']*A['^jk'] # NB: '^jk' and not 'kj'\n", "Z_bar0 == Z_bar" ] }, { "cell_type": "code", "execution_count": 94, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1-form on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "-2*(3*a^3*r^2*y^4 + a*r^4 - (3*a^3*r^2 + a*r^4)*y^2)*sqrt(a^2*y^2 + r^2)*sqrt(a^2 + r^2 - 2*r)/((a^8*y^8 + 4*a^6*r^2*y^6 + 6*a^4*r^4*y^4 + 4*a^2*r^6*y^2 + r^8)*sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)) dph" ] }, "execution_count": 94, "metadata": {}, "output_type": "execute_result" } ], "source": [ "W = N*Eb + epsb.contract(Bub)\n", "print(W) ; W.display()" ] }, { "cell_type": "code", "execution_count": 95, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1-form on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "-2*(a^4*r*y^5 + 3*a^2*r^3*y - (a^4*r + 3*a^2*r^3)*y^3)*sqrt(a^2*y^2 + r^2)*sqrt(a^2 + r^2 - 2*r)/((a^8*y^8 + 4*a^6*r^2*y^6 + 6*a^4*r^4*y^4 + 4*a^2*r^6*y^2 + r^8)*sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)) dph" ] }, "execution_count": 95, "metadata": {}, "output_type": "execute_result" } ], "source": [ "W_bar = N*Bb - epsb.contract(Eub)\n", "print(W_bar) ; W_bar.display()" ] }, { "cell_type": "code", "execution_count": 96, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-2*(3*a^2*y^2 - r^2)*sqrt(a^2 + r^2 - 2*r)*a*r^2*(y + 1)*(y - 1)/(sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)*(a^2*y^2 + r^2)^(7/2))" ] }, "execution_count": 96, "metadata": {}, "output_type": "execute_result" } ], "source": [ "W[3].factor()" ] }, { "cell_type": "code", "execution_count": 97, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-2*(a^2*y^2 - 3*r^2)*sqrt(a^2 + r^2 - 2*r)*a^2*r*(y + 1)*(y - 1)*y/(sqrt(a^2*r^2 + r^4 + 2*a^2*r + (a^4 + a^2*r^2 - 2*a^2*r)*y^2)*(a^2*y^2 + r^2)^(7/2))" ] }, "execution_count": 97, "metadata": {}, "output_type": "execute_result" } ], "source": [ "W_bar[3].factor()" ] }, { "cell_type": "code", "execution_count": 98, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Scalar field zero on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "zero: Sigma --> R\n", " (r, y, ph) |--> 0" ] }, "execution_count": 98, "metadata": {}, "output_type": "execute_result" } ], "source": [ "M = - 4*Eb(Kub - DNu) - 2*(epsB['_ij.']*Dbu['^ji'])(b)\n", "print(M) ; M.display()" ] }, { "cell_type": "code", "execution_count": 99, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Scalar field zero on the 3-dimensional differentiable manifold Sigma\n" ] }, { "data": { "text/html": [ "" ], "text/plain": [ "zero: Sigma --> R\n", " (r, y, ph) |--> 0" ] }, "execution_count": 99, "metadata": {}, "output_type": "execute_result" } ], "source": [ "M_bar = 2*(eps.contract(Eub))['_ij']*Dbu['^ji'] - 4*Bb(Kub - DNu)\n", "print(M_bar) ; M_bar.display()" ] }, { "cell_type": "code", "execution_count": 100, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1-form on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "A = epsB['_ilk']*b['^l'] + epsB['_ikl']*b['^l'] \\\n", " + Bu['^m_i']*epsb['_mk'] - 2*N*E\n", "xdbE = xdb['_kl']*Eu['^k_i']\n", "L = 2*N*epsB['_kli']*Dbu['^kl'] + 2*xdb['_ij']*Eub['^j'] \\\n", " + 2*xdbE['_li']*b['^l'] + 2*A['_ik']*(Kub - DNu)['^k']\n", "print(L)" ] }, { "cell_type": "code", "execution_count": 101, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-8*(5*a^4*r*y^4 - 10*a^2*r^3*y^2 + r^5)/(a^10*y^10 + 5*a^8*r^2*y^8 + 10*a^6*r^4*y^6 + 10*a^4*r^6*y^4 + 5*a^2*r^8*y^2 + r^10)" ] }, "execution_count": 101, "metadata": {}, "output_type": "execute_result" } ], "source": [ "L[1]" ] }, { "cell_type": "code", "execution_count": 102, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-8*(5*a^4*y^4 - 10*a^2*r^2*y^2 + r^4)*r/(a^2*y^2 + r^2)^5" ] }, "execution_count": 102, "metadata": {}, "output_type": "execute_result" } ], "source": [ "L[1].factor()" ] }, { "cell_type": "code", "execution_count": 103, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-8*(a^6*y^5 - 10*a^4*r^2*y^3 + 5*a^2*r^4*y)/(a^10*y^10 + 5*a^8*r^2*y^8 + 10*a^6*r^4*y^6 + 10*a^4*r^6*y^4 + 5*a^2*r^8*y^2 + r^10)" ] }, "execution_count": 103, "metadata": {}, "output_type": "execute_result" } ], "source": [ "L[2]" ] }, { "cell_type": "code", "execution_count": 104, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-8*(a^4*y^4 - 10*a^2*r^2*y^2 + 5*r^4)*a^2*y/(a^2*y^2 + r^2)^5" ] }, "execution_count": 104, "metadata": {}, "output_type": "execute_result" } ], "source": [ "L[2].factor()" ] }, { "cell_type": "code", "execution_count": 105, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 105, "metadata": {}, "output_type": "execute_result" } ], "source": [ "L[3]" ] }, { "cell_type": "code", "execution_count": 106, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Field of symmetric bilinear forms on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "N2pbb = N^2 + b2\n", "V = N2pbb*E - 2*(b.contract(E)*bd).symmetrize() + Ebb*gam \\\n", " + 2*N*(b.contract(epsB).symmetrize())\n", "print(V)" ] }, { "cell_type": "code", "execution_count": 107, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-(3*a^4*r*y^4 + 3*a^2*r^3 + 2*r^5 - 4*r^4 - (9*a^4*r + 7*a^2*r^3 - 12*a^2*r^2)*y^2)/(a^2*r^6 + r^8 - 2*r^7 + (a^8 + a^6*r^2 - 2*a^6*r)*y^6 + 3*(a^6*r^2 + a^4*r^4 - 2*a^4*r^3)*y^4 + 3*(a^4*r^4 + a^2*r^6 - 2*a^2*r^5)*y^2)" ] }, "execution_count": 107, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V[1,1]" ] }, { "cell_type": "code", "execution_count": 108, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-(3*a^2*y^2 - r^2)*(a^2*y^2 - 3*a^2 - 2*r^2 + 4*r)*r/((a^2*y^2 + r^2)^3*(a^2 + r^2 - 2*r))" ] }, "execution_count": 108, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V[1,1].factor()" ] }, { "cell_type": "code", "execution_count": 109, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "3*(a^4*y^3 - 3*a^2*r^2*y)/(a^6*y^6 + 3*a^4*r^2*y^4 + 3*a^2*r^4*y^2 + r^6)" ] }, "execution_count": 109, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V[1,2]" ] }, { "cell_type": "code", "execution_count": 110, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "3*(a^2*y^2 - 3*r^2)*a^2*y/(a^2*y^2 + r^2)^3" ] }, "execution_count": 110, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V[1,2].factor()" ] }, { "cell_type": "code", "execution_count": 111, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 111, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V[1,3]" ] }, { "cell_type": "code", "execution_count": 112, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-(6*a^4*r*y^4 + 3*a^2*r^3 + r^5 - 2*r^4 - (9*a^4*r + 5*a^2*r^3 - 6*a^2*r^2)*y^2)/(a^6*y^8 - (a^6 - 3*a^4*r^2)*y^6 - r^6 - 3*(a^4*r^2 - a^2*r^4)*y^4 - (3*a^2*r^4 - r^6)*y^2)" ] }, "execution_count": 112, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V[2,2]" ] }, { "cell_type": "code", "execution_count": 113, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-(3*a^2*y^2 - r^2)*(2*a^2*y^2 - 3*a^2 - r^2 + 2*r)*r/((a^2*y^2 + r^2)^3*(y + 1)*(y - 1))" ] }, "execution_count": 113, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V[2,2].factor()" ] }, { "cell_type": "code", "execution_count": 114, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 114, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V[2,3]" ] }, { "cell_type": "code", "execution_count": 115, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "(a^2*r^3 + r^5 + 3*(a^4*r + a^2*r^3 - 2*a^2*r^2)*y^4 - 2*r^4 - (3*a^4*r + 4*a^2*r^3 + r^5 - 6*a^2*r^2 - 2*r^4)*y^2)/(a^6*y^6 + 3*a^4*r^2*y^4 + 3*a^2*r^4*y^2 + r^6)" ] }, "execution_count": 115, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V[3,3]" ] }, { "cell_type": "code", "execution_count": 116, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "(3*a^2*y^2 - r^2)*(a^2 + r^2 - 2*r)*r*(y + 1)*(y - 1)/(a^2*y^2 + r^2)^3" ] }, "execution_count": 116, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V[3,3].factor()" ] }, { "cell_type": "code", "execution_count": 117, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Field of symmetric bilinear forms on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "beps = b.contract(eps)\n", "V_bar = N2pbb*B - 2*(b.contract(B)*bd).symmetrize() + Bbb*gam \\\n", " - 2*N*(beps['_il']*Eu['^l_j']).symmetrize()\n", "print(V_bar)" ] }, { "cell_type": "code", "execution_count": 118, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-(a^5*y^5 - (3*a^5 + 5*a^3*r^2 - 4*a^3*r)*y^3 + 3*(3*a^3*r^2 + 2*a*r^4 - 4*a*r^3)*y)/(a^2*r^6 + r^8 - 2*r^7 + (a^8 + a^6*r^2 - 2*a^6*r)*y^6 + 3*(a^6*r^2 + a^4*r^4 - 2*a^4*r^3)*y^4 + 3*(a^4*r^4 + a^2*r^6 - 2*a^2*r^5)*y^2)" ] }, "execution_count": 118, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V_bar[1,1]" ] }, { "cell_type": "code", "execution_count": 119, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-(a^2*y^2 - 3*a^2 - 2*r^2 + 4*r)*(a^2*y^2 - 3*r^2)*a*y/((a^2*y^2 + r^2)^3*(a^2 + r^2 - 2*r))" ] }, "execution_count": 119, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V_bar[1,1].factor()" ] }, { "cell_type": "code", "execution_count": 120, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-3*(3*a^3*r*y^2 - a*r^3)/(a^6*y^6 + 3*a^4*r^2*y^4 + 3*a^2*r^4*y^2 + r^6)" ] }, "execution_count": 120, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V_bar[1,2]" ] }, { "cell_type": "code", "execution_count": 121, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-3*(3*a^2*y^2 - r^2)*a*r/(a^2*y^2 + r^2)^3" ] }, "execution_count": 121, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V_bar[1,2].factor()" ] }, { "cell_type": "code", "execution_count": 122, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 122, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V_bar[1,3]" ] }, { "cell_type": "code", "execution_count": 123, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-(2*a^5*y^5 - (3*a^5 + 7*a^3*r^2 - 2*a^3*r)*y^3 + 3*(3*a^3*r^2 + a*r^4 - 2*a*r^3)*y)/(a^6*y^8 - (a^6 - 3*a^4*r^2)*y^6 - r^6 - 3*(a^4*r^2 - a^2*r^4)*y^4 - (3*a^2*r^4 - r^6)*y^2)" ] }, "execution_count": 123, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V_bar[2,2]" ] }, { "cell_type": "code", "execution_count": 124, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-(2*a^2*y^2 - 3*a^2 - r^2 + 2*r)*(a^2*y^2 - 3*r^2)*a*y/((a^2*y^2 + r^2)^3*(y + 1)*(y - 1))" ] }, "execution_count": 124, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V_bar[2,2].factor()" ] }, { "cell_type": "code", "execution_count": 125, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 125, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V_bar[2,3]" ] }, { "cell_type": "code", "execution_count": 126, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "((a^5 + a^3*r^2 - 2*a^3*r)*y^5 - (a^5 + 4*a^3*r^2 + 3*a*r^4 - 2*a^3*r - 6*a*r^3)*y^3 + 3*(a^3*r^2 + a*r^4 - 2*a*r^3)*y)/(a^6*y^6 + 3*a^4*r^2*y^4 + 3*a^2*r^4*y^2 + r^6)" ] }, "execution_count": 126, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V_bar[3,3]" ] }, { "cell_type": "code", "execution_count": 127, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "(a^2*y^2 - 3*r^2)*(a^2 + r^2 - 2*r)*a*(y + 1)*(y - 1)*y/(a^2*y^2 + r^2)^3" ] }, "execution_count": 127, "metadata": {}, "output_type": "execute_result" } ], "source": [ "V_bar[3,3].factor()" ] }, { "cell_type": "code", "execution_count": 128, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Field of symmetric bilinear forms on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "G = (N^2 - b2)*gam + bd*bd\n", "print(G)" ] }, { "cell_type": "code", "execution_count": 129, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "(a^2*y^2 + r^2 - 2*r)/(a^2 + r^2 - 2*r) dr*dr - (a^2*y^2 + r^2 - 2*r)/(y^2 - 1) dy*dy + (-(a^2 + r^2 - 2*r)*y^2 + a^2 + r^2 - 2*r) dph*dph" ] }, "execution_count": 129, "metadata": {}, "output_type": "execute_result" } ], "source": [ "G.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

### 3+1 decomposition of the real part of the Simon-Mars tensor

\n", "

We follow Eqs. (77)-(80) of arXiv:1412.6542:

" ] }, { "cell_type": "code", "execution_count": 130, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Tensor field of type (0,3) on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "S1 = (4*(V*Z - V_bar*Z_bar) + G*L).antisymmetrize(1,2)\n", "print(S1)" ] }, { "cell_type": "code", "execution_count": 131, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 131, "metadata": {}, "output_type": "execute_result" } ], "source": [ "S1.display()" ] }, { "cell_type": "code", "execution_count": 132, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Tensor field of type (0,2) on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "S2 = 4*(T*V - T_bar*V_bar - W*Z + W_bar*Z_bar) + M*G \\\n", " - N*bd*L\n", "print(S2)" ] }, { "cell_type": "code", "execution_count": 133, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 133, "metadata": {}, "output_type": "execute_result" } ], "source": [ "S2.display()" ] }, { "cell_type": "code", "execution_count": 134, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2-form on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "S3 = (4*(W*Z - W_bar*Z_bar) + N*bd*L).antisymmetrize()\n", "print(S3)" ] }, { "cell_type": "code", "execution_count": 135, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 135, "metadata": {}, "output_type": "execute_result" } ], "source": [ "S3.display()" ] }, { "cell_type": "code", "execution_count": 136, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "True" ] }, "execution_count": 136, "metadata": {}, "output_type": "execute_result" } ], "source": [ "S2[3,1] == -2*S3[3,1]" ] }, { "cell_type": "code", "execution_count": 137, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "True" ] }, "execution_count": 137, "metadata": {}, "output_type": "execute_result" } ], "source": [ "S2[3,2] == -2*S3[3,2]" ] }, { "cell_type": "code", "execution_count": 138, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1-form on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "S4 = 4*(T*W - T_bar*W_bar) -4*(Y*Z - Y_bar*Z_bar) + N*M*bd \\\n", " - b2*L\n", "print(S4)" ] }, { "cell_type": "code", "execution_count": 139, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 139, "metadata": {}, "output_type": "execute_result" } ], "source": [ "S4.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

Hence all the tensors $S^1$, $S^2$, $S^3$ and $S^4$ involved in the 3+1 decomposition of the real part of the Simon-Mars are zero, as they should since the Simon-Mars tensor vanishes identically for the Kerr spacetime.

\n", "\n", "

### 3+1 decomposition of the imaginary part of the Simon-Mars tensor

\n", "\n", "

We follow Eqs. (82)-(85) of arXiv:1412.6542.

" ] }, { "cell_type": "code", "execution_count": 140, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Tensor field of type (0,3) on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "epsE = eps['_ijl']*Eu['^l_k']\n", "print(epsE)" ] }, { "cell_type": "code", "execution_count": 141, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1-form on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "A = - epsE['_ilk']*b['^l'] - epsE['_ikl']*b['^l'] \\\n", " - Eu['^m_i']*epsb['_mk'] - 2*N*B\n", "xdbB = xdb['_kl']*Bu['^k_i']\n", "L_bar = - 2*N*epsE['_kli']*Dbu['^kl'] \\\n", " + 2*xdb['_ij']*Bub['^j'] + 2*xdbB['_li']*b['^l'] \\\n", " + 2*A['_ik']*(Kub - DNu)['^k']\n", "print(L_bar)" ] }, { "cell_type": "code", "execution_count": 142, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "-8*(a^5*y^5 - 10*a^3*r^2*y^3 + 5*a*r^4*y)/(a^10*y^10 + 5*a^8*r^2*y^8 + 10*a^6*r^4*y^6 + 10*a^4*r^6*y^4 + 5*a^2*r^8*y^2 + r^10) dr + 8*(5*a^5*r*y^4 - 10*a^3*r^3*y^2 + a*r^5)/(a^10*y^10 + 5*a^8*r^2*y^8 + 10*a^6*r^4*y^6 + 10*a^4*r^6*y^4 + 5*a^2*r^8*y^2 + r^10) dy" ] }, "execution_count": 142, "metadata": {}, "output_type": "execute_result" } ], "source": [ "L_bar.display()" ] }, { "cell_type": "code", "execution_count": 143, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Tensor field of type (0,3) on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "S1_bar = (4*(V*Z_bar + V_bar*Z) + G*L_bar).antisymmetrize(1,2)\n", "print(S1_bar)" ] }, { "cell_type": "code", "execution_count": 144, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 144, "metadata": {}, "output_type": "execute_result" } ], "source": [ "S1_bar.display()" ] }, { "cell_type": "code", "execution_count": 145, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Tensor field of type (0,2) on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "S2_bar = 4*(T_bar*V + T*V_bar) - 4*(W*Z_bar + W_bar*Z) \\\n", " + M_bar*G - N*bd*L_bar\n", "print(S2_bar)" ] }, { "cell_type": "code", "execution_count": 146, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 146, "metadata": {}, "output_type": "execute_result" } ], "source": [ "S2_bar.display()" ] }, { "cell_type": "code", "execution_count": 147, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2-form on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "S3_bar = (4*(W*Z_bar + W_bar*Z) + N*bd*L_bar).antisymmetrize()\n", "print(S3_bar)" ] }, { "cell_type": "code", "execution_count": 148, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 148, "metadata": {}, "output_type": "execute_result" } ], "source": [ "S3_bar.display()" ] }, { "cell_type": "code", "execution_count": 149, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1-form on the 3-dimensional differentiable manifold Sigma\n" ] } ], "source": [ "S4_bar = 4*(T_bar*W + T*W_bar - Y*Z_bar - Y_bar*Z) \\\n", " + M_bar*N*bd - b2*L_bar\n", "print(S4_bar)" ] }, { "cell_type": "code", "execution_count": 150, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "0" ] }, "execution_count": 150, "metadata": {}, "output_type": "execute_result" } ], "source": [ "S4_bar.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

Hence all the tensors ${\\bar S}^1$, ${\\bar S}^2$, ${\\bar S}^3$ and ${\\bar S}^4$ involved in the 3+1 decomposition of the imaginary part of the Simon-Mars are zero, as they should since the Simon-Mars tensor vanishes identically for the Kerr spacetime.

" ] } ], "metadata": { "kernelspec": { "display_name": "SageMath 7.5.1", "language": "", "name": "sagemath" }, "language": "python", "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.13" } }, "nbformat": 4, "nbformat_minor": 0 }