# 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:

In [1]:
%display latex


## Spacetime manifold and coordinates¶

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

In [2]:
M = Manifold(5, 'M')
print M

5-dimensional differentiable manifold M


We introduce coordinates of Eddington-Finkelstein type:

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

Out[3]:

The metric tensor:

In [4]:
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()

Out[4]:

The non-vanishing components of $g$:

In [5]:
g.display_comp()

Out[5]:

A matrix view of the components:

In [6]:
g[:]

Out[6]:

## Curvature¶

The Riemann tensor is

In [7]:
Riem = g.riemann()
print Riem

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


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

In [8]:
Riem[0,0,0,4]

Out[8]:

The Ricci tensor:

In [9]:
Ric = g.ricci()
print Ric

Field of symmetric bilinear forms Ric(g) on the 5-dimensional differentiable manifold M

In [10]:
Ric.display()

Out[10]:
In [11]:
Ric.display_comp()

Out[11]:

The Ricci scalar:

In [12]:
Rscal = g.ricci_scalar()
print Rscal

Scalar field r(g) on the 5-dimensional differentiable manifold M

In [13]:
Rscal.display()

Out[13]:

### Source model¶

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

$$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)$ is the Ricci scalar of metric $g$, $\Lambda$ is the cosmological constant, $\lambda$ is the dilatonic coupling constant and $\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$: $$\phi = \frac{1}{\lambda} \left( 4 r + \ln\mu \right),$$ where $\mu$ is a constant.

In [14]:
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()

Out[14]:

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

In [15]:
dphi = phi.differential()
print dphi

1-form dphi on the 5-dimensional differentiable manifold M

In [16]:
dphi.display()

Out[16]:

The components of $\mathrm{d}\phi$ is the default frame of $M$ are

In [17]:
dphi[:]

Out[17]:

### The 2-form field¶

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

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

In [18]:
X.coframe()

Out[18]:
In [19]:
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

Out[19]:

Then we can form $F$ according to the above ansatz:

In [20]:
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

Out[20]:

By construction, the 2-form $F$ is closed (since $q$ is constant):

In [21]:
xder(F).display()

Out[21]:

Let us evaluate the square $F_{mn} F^{mn}$ of $F$:

In [22]:
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

Out[22]:

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

In [23]:
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

Out[23]:

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

In [24]:
FF == FF.symmetrize()

Out[24]:

Therefore, from now on, we set

In [25]:
FF = FF.symmetrize()


### The infalling shell of massless particles¶

Energy-momentum tensor of the infalling shell:

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

Out[26]:

### Einstein equation¶

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

In [27]:
var('Lamb', latex_name=r'\Lambda', domain='real')

Out[27]:

From the action (1), the field equation for the metric $g$ is $$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

In [28]:
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

In [29]:
EE.display_comp(only_nonredundant=True)

Out[29]:

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

In [30]:
eq1 = EE[0,0]
eq1

Out[30]:
In [31]:
eq2 = EE[0,4]/exp(nu*r)
eq2

Out[31]:
In [32]:
eq3 = EE[1,1]/exp(2*nu*r)
eq3

Out[32]:
In [33]:
eq4 = EE[2,2]/exp(2*r)
eq4

Out[33]:
In [34]:
eq5 = EE[4,4]*lamb^2/2
eq5

Out[34]:

### Dilaton field equation¶

First we evaluate $\nabla_m \nabla^m \phi$:

In [35]:
nab = g.connection()
print nab
nab

Levi-Civita connection nabla_g associated with the Lorentzian metric g on the 5-dimensional differentiable manifold M

Out[35]:
In [36]:
box_phi = nab(nab(phi).up(g)).trace()
print box_phi
box_phi.display()

Scalar field on the 5-dimensional differentiable manifold M

Out[36]:

From the action (1), the field equation for $\phi$ is $$\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

In [37]:
DE = box_phi - lamb/4*exp(lamb*phi) * F2
print DE

Scalar field on the 5-dimensional differentiable manifold M

In [38]:
DE.display()

Out[38]:

Hence the dilaton field equation provides a 6th equation:

In [39]:
eq6 = DE.coord_function()*8*lamb
eq6

Out[39]:

### Maxwell equation¶

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

ME == 0



with ME defined by

In [40]:
ME = nab(exp(lamb*phi)*Fu).trace(0,2)
print ME
ME.display()

Vector field on the 5-dimensional differentiable manifold M

Out[40]:

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

## Summary¶

We have 6 equations to solve:

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


## Solutions¶

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

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

To this aim, we declare

In [42]:
fm(v,r) = 1 - function('m')(v)*exp(-(2*nu+2)*r)
fm

Out[42]:

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

In [43]:
eq1m = eq1.expr().substitute_function(f, fm).simplify_full()
eq1m

Out[43]:
In [44]:
eq1m = (eq1m * exp(nu*r+2*r)).simplify_full()
eq1m

Out[44]:

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

In [45]:
eq2m = eq2.expr().substitute_function(f, fm).simplify_full()
eq2m

Out[45]:
In [46]:
eq3m = eq3.expr().substitute_function(f, fm).simplify_full()
eq3m

Out[46]:
In [47]:
eq4m = eq4.expr().substitute_function(f, fm).simplify_full()
eq4m

Out[47]:
In [48]:
eq5m = eq5.expr().substitute_function(f, fm).simplify_full()
eq5m

Out[48]:
In [49]:
eq6m = eq6.expr().substitute_function(f, fm).simplify_full()
eq6m

Out[49]:
In [50]:
eqs = [eq1m, eq2m, eq3m, eq4m, eq5m, eq6m]


### Solution for $\nu = 2$¶

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

Out[51]:

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

In [52]:
eqs2 = eqs[1:] # we skip eq1m
neqs = [eq.subs(nu=2).simplify_full() for eq in eqs2]
[eq == 0 for eq in neqs]

Out[52]:
In [53]:
solve([eq == 0 for eq in neqs], lamb, mu, Lamb, q)

Out[53]:

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

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

Out[54]:

Hence, for any choice of $m(v)$, we get a solution with $$\Lambda=30,\quad \lambda = \pm 2, \quad\mu = \frac{48}{q^2}$$ and $$T_{00}(\nu,r) = \frac{1}{4\pi e^{4 r}} \frac{\mathrm{d}m}{\mathrm{d}v}$$

### Solution for $\nu=4$¶

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

Out[55]:

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

In [56]:
eqs2 = eqs[1:] # we skip eq1m
neqs = [eq.subs(nu=4).simplify_full() for eq in eqs2]
[eq == 0 for eq in neqs]

Out[56]:
In [57]:
solve([eq == 0 for eq in neqs], lamb, mu, Lamb, q)

Out[57]:

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

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

Out[58]:

Hence, for any choice of $m(v)$, we get a solution with $$\Lambda=90,\quad \lambda = \pm \frac{2}{\sqrt{3}}, \quad\mu = \frac{240}{q^2}$$ and $$T_{00}(\nu,r) = \frac{3}{8\pi e^{6 r}} \frac{\mathrm{d}m}{\mathrm{d}v}$$

In [ ]: