Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupport News AboutSign UpSign In
| Download

Jupyter notebook Vaidya-Lifshitz.ipynb

Project: Lifshitz BH
Views: 140
Kernel: SageMath 6.10

Vaidya-Lifshitz solution

This Jupyter/SageMath worksheet implements some computations of the article

  • I. Ya. Aref'eva, A. A. Golubtsova & E. Gourgoulhon: Analytic black branes in Lifshitz-like backgrounds and thermalization, arXiv:1601.06046

These computations are based on SageManifolds (v0.9).

The worksheet file (ipynb format) can be downloaded from here.

First we set up the notebook to display mathematical objects using LaTeX formatting:

%display latex

Spacetime manifold and coordinates

Let us declare the spacetime MM as a 5-dimensional manifold:

M = Manifold(5, 'M') print M
5-dimensional differentiable manifold M

We introduce coordinates of Eddington-Finkelstein type:

X.<v,x,y1,y2,r> = M.chart('v x y1:y_1 y2:y_2 r') X

The metric tensor:

g = M.lorentzian_metric('g') nu = var('nu', latex_name=r'\nu', domain='real') ff = function('f')(v, r) g[0,0] = -exp(2*nu*r)*ff g[0,4] = exp(nu*r) g[1,1] = exp(2*nu*r) g[2,2] = exp(2*r) g[3,3] = exp(2*r) g.display()

The non-vanishing components of gg:

g.display_comp()

A matrix view of the components:

g[:]

Curvature

The Riemann tensor is

Riem = g.riemann() print Riem
Tensor field Riem(g) of type (1,3) on the 5-dimensional differentiable manifold M

Some component, e.g. Riem 0040\mathrm{Riem}^0_{\ \, 004}:

Riem[0,0,0,4]

The Ricci tensor:

Ric = g.ricci() print Ric
Field of symmetric bilinear forms Ric(g) on the 5-dimensional differentiable manifold M
Ric.display()
Ric.display_comp()

The Ricci scalar:

Rscal = g.ricci_scalar() print Rscal
Scalar field r(g) on the 5-dimensional differentiable manifold M
Rscal.display()

Source model

Let us consider a model based on the following action, involving a dilaton scalar field ϕ\phi and a Maxwell 2-form FF:

S=(R(g)+Λ12mϕmϕ14eλϕFmnFmn+8πLshell)gd5x(1)S = \int \left( R(g) + \Lambda - \frac{1}{2} \nabla_m \phi \nabla^m \phi - \frac{1}{4} e^{\lambda\phi} F_{mn} F^{mn} + 8\pi \mathcal{L}_{\rm shell} \right) \sqrt{-g} \, \mathrm{d}^5 x \qquad\qquad \mbox{(1)}

where R(g)R(g) is the Ricci scalar of metric gg, Λ\Lambda is the cosmological constant, λ\lambda is the dilatonic coupling constant and Lshell\mathcal{L}_{\rm shell} is the Lagrangian of some infalling shell of massless matter.

The dilaton scalar field

We consider the following ansatz for the dilaton scalar field ϕ\phi: ϕ=1λ(4r+lnμ), \phi = \frac{1}{\lambda} \left( 4 r + \ln\mu \right), where μ\mu is a constant.

var('mu', latex_name=r'\mu', domain='real') var('lamb', latex_name=r'\lambda', domain='real') phi = M.scalar_field({X: (4*r + ln(mu))/lamb}, name='phi', latex_name=r'\phi') phi.display()

The 1-form dϕ\mathrm{d}\phi is

dphi = phi.differential() print dphi
1-form dphi on the 5-dimensional differentiable manifold M
dphi.display()

The components of dϕ\mathrm{d}\phi is the default frame of MM are

dphi[:]

The 2-form field

We consider the following ansatz for FF: F=12qdy1dy2, F = \frac{1}{2} q \, \mathrm{d}y_1\wedge \mathrm{d}y_2, where qq is a constant.

Let us first get the 1-forms dy1\mathrm{d}y_1 and dy2\mathrm{d}y_2:

X.coframe()
dy1 = X.coframe()[2] dy2 = X.coframe()[3] print dy1 print dy2 dy1, dy2
1-form dy1 on the 5-dimensional differentiable manifold M 1-form dy2 on the 5-dimensional differentiable manifold M

Then we can form FF according to the above ansatz:

var('q', domain='real') F = q/2 * dy1.wedge(dy2) F.set_name('F') print F F.display()
2-form F on the 5-dimensional differentiable manifold M

By construction, the 2-form FF is closed (since qq is constant):

xder(F).display()

Let us evaluate the square FmnFmnF_{mn} F^{mn} of FF:

Fu = F.up(g) F2 = F['_{mn}']*Fu['^{mn}'] # using LaTeX notations to denote contraction print F2 F2.display()
Scalar field on the 5-dimensional differentiable manifold M

We shall also need the tensor Fmn:=FmpFn p\mathcal{F}_{mn} := F_{mp} F_n^{\ \, p}:

FF = F['_mp'] * F.up(g,1)['^p_n'] print FF FF.display()
Tensor field of type (0,2) on the 5-dimensional differentiable manifold M

The tensor field F\mathcal{F} is symmetric:

FF == FF.symmetrize()

Therefore, from now on, we set

FF = FF.symmetrize()

The infalling shell of massless particles

Energy-momentum tensor of the infalling shell:

dv = X.coframe()[0] T = function('T00', latex_name='T_{00}')(v,r)*dv*dv T.set_name('T') T.display()

Einstein equation

Let us first introduce (minus twice) the cosmological constant:

var('Lamb', latex_name=r'\Lambda', domain='real')

From the action (1), the field equation for the metric gg is Rmn+Λ3g12mϕnϕ12eλϕFmpFn p+112eλϕFrsFrsgmn8πTmn=0 R_{mn} + \frac{\Lambda}{3} \, g - \frac{1}{2}\partial_m\phi \partial_n\phi -\frac{1}{2} e^{\lambda\phi} F_{mp} F^{\ \, p}_n + \frac{1}{12} e^{\lambda\phi} F_{rs} F^{rs} \, g_{mn} - 8\pi T_{mn} = 0 We write it as

EE == 0

with EE defined by

EE = Ric + Lamb/3*g - 1/2* (dphi*dphi) - 1/2*exp(lamb*phi)*FF \ + 1/12*exp(lamb*phi)*F2*g -8*pi*T EE.set_name('E') print EE
Tensor field E of type (0,2) on the 5-dimensional differentiable manifold M
EE.display_comp(only_nonredundant=True)

We note that EE==0 leads to 5 independent equations:

eq1 = EE[0,0] eq1
eq2 = EE[0,4]/exp(nu*r) eq2
eq3 = EE[1,1]/exp(2*nu*r) eq3
eq4 = EE[2,2]/exp(2*r) eq4
eq5 = EE[4,4]*lamb^2/2 eq5

Dilaton field equation

First we evaluate mmϕ\nabla_m \nabla^m \phi:

nab = g.connection() print nab nab
Levi-Civita connection nabla_g associated with the Lorentzian metric g on the 5-dimensional differentiable manifold M
box_phi = nab(nab(phi).up(g)).trace() print box_phi box_phi.display()
Scalar field on the 5-dimensional differentiable manifold M

From the action (1), the field equation for ϕ\phi is mmϕ=λ4eλϕFmnFmn \nabla_m \nabla^m \phi = \frac{\lambda}{4} e^{\lambda\phi} F_{mn} F^{mn} We write it as

DE == 0

with DE defined by

DE = box_phi - lamb/4*exp(lamb*phi) * F2 print DE
Scalar field on the 5-dimensional differentiable manifold M
DE.display()

Hence the dilaton field equation provides a 6th equation:

eq6 = DE.coord_function()*8*lamb eq6

Maxwell equation

From the action (1), the field equation for FF is m(eλϕFmn)=0 \nabla_m \left( e^{\lambda\phi} F^{mn} \right)= 0 We write it as

ME == 0

with ME defined by

ME = nab(exp(lamb*phi)*Fu).trace(0,2) print ME ME.display()
Vector field on the 5-dimensional differentiable manifold M

We get identically zero. Hence the Maxwell equation does not bring another equation to be solved.

Summary

We have 6 equations to solve:

eqs = [eq1, eq2, eq3, eq4, eq5, eq6] for eq in eqs: pretty_print(eq)

Solutions

Let us show that solutions exists for ν=2\nu=2 and ν=4\nu=4 with the following specific form of the blackening function:

f(v,r)=1m(v)e(2ν+2)rf(v,r) = 1 - m(v) e^{-(2\nu +2)r}

To this aim, we declare

fm(v,r) = 1 - function('m')(v)*exp(-(2*nu+2)*r) fm

and substitute this function for f(v,r)f(v,r) in all the equations:

eq1m = eq1.expr().substitute_function(f, fm).simplify_full() eq1m
eq1m = (eq1m * exp(nu*r+2*r)).simplify_full() eq1m

Note that in this expression D[0](m)(v)D[0](m)(v) stands for dm/dv\mathrm{d}m/\mathrm{d}v.

eq2m = eq2.expr().substitute_function(f, fm).simplify_full() eq2m
eq3m = eq3.expr().substitute_function(f, fm).simplify_full() eq3m
eq4m = eq4.expr().substitute_function(f, fm).simplify_full() eq4m
eq5m = eq5.expr().substitute_function(f, fm).simplify_full() eq5m
eq6m = eq6.expr().substitute_function(f, fm).simplify_full() eq6m
eqs = [eq1m, eq2m, eq3m, eq4m, eq5m, eq6m]

Solution for ν=2\nu = 2

neqs = [eq.subs(nu=2).simplify_full() for eq in eqs] [eq == 0 for eq in neqs]

Let us first search for a solution of all the equations but the first one:

eqs2 = eqs[1:] # we skip eq1m neqs = [eq.subs(nu=2).simplify_full() for eq in eqs2] [eq == 0 for eq in neqs]
solve([eq == 0 for eq in neqs], lamb, mu, Lamb, q)

Then, we substitute the found solution in the first equation:

eq = eq1m.subs({nu:2, Lamb:30, lamb:2, mu:48/q^2}) eq

Hence, for any choice of m(v)m(v), we get a solution with Λ=30,λ=±2,μ=48q2 \Lambda=30,\quad \lambda = \pm 2, \quad\mu = \frac{48}{q^2} and T00(ν,r)=14πe4rdmdv T_{00}(\nu,r) = \frac{1}{4\pi e^{4 r}} \frac{\mathrm{d}m}{\mathrm{d}v}

Solution for ν=4\nu=4

neqs = [eq.subs(nu=4).simplify_full() for eq in eqs] [eq == 0 for eq in neqs]

Let us first search for a solution of all the equations but the first one:

eqs2 = eqs[1:] # we skip eq1m neqs = [eq.subs(nu=4).simplify_full() for eq in eqs2] [eq == 0 for eq in neqs]
solve([eq == 0 for eq in neqs], lamb, mu, Lamb, q)

Then, we substitute the found solution in the first equation:

eq = eq1m.subs({nu:4, Lamb:90, lamb:2/sqrt(3), mu:240/q^2}) eq

Hence, for any choice of m(v)m(v), we get a solution with Λ=90,λ=±23,μ=240q2 \Lambda=90,\quad \lambda = \pm \frac{2}{\sqrt{3}}, \quad\mu = \frac{240}{q^2} and T00(ν,r)=38πe6rdmdv T_{00}(\nu,r) = \frac{3}{8\pi e^{6 r}} \frac{\mathrm{d}m}{\mathrm{d}v}