Introduction to relativistic astrophysics and cosmology through Maple
Vladimir L. Kalashnikov ,
Belarussian Polytechnical Academy,
Abstract: The basics of the relativistic astrophysics including the celestial mechanics in weak field, black holes and cosmological models are illustrated and analyzed by means of Maple 6
Application Areas/Subjects:
Science, Astrophysics, General Relativity, Tensor Analysis, Differential geometry,
Differential equations
Introduction
I suppose that the most impressive achievements of the GR-theory belong to the cosmology. The description of the global structure of the universe changes our opinion about reality and radically widens the horizon of knowledge. The considerable progress in the observations and measures allows to say that we are living in a gold age of cosmology. Here we will consider some basic conceptions of relativistic cosmology by means of analytical capabilities of Maple 6.
Robertson-Walker metric
We will base on the conception of foliation of 4-dimensional manifold on 3-dimensional space-like hyperplanes with a time-dependent geometry. Now let's restrict oneself to the isotropic and homogeneous evolution models, i.e. the models without dependence of curvature on the observer's location or orientation. We will suppose also that such foliation with isotropic and homogeneous geometry and energy-momentum distribution exists at each time moment. These space-like foliations are the so-called hyperplanes of homogeneity . The time vectors are defined by the proper time course in each space point.
Let us consider 3-geometry at fixed time moment. As it is known, in 3-dimensional space the curvature tensor has the following form:
=
-
+
-
+
(
-
).
But if (as it takes a place in our case) there is not the dependence of curvature on space-direction in arbitrary point, our space has a constant curvature ( Schur's theorem) that results in
=
(
-
), (1)
where R is the constant Ricci scalar.
Now we will consider the so-called Robertson-Walker metric :
=
(2)
For this metric the spatial curvature tensor is:
>
restart:
with(tensor):
with(linalg):
with(difforms):
coord := [x, y, z]:# coordinates
g_compts := array(symmetric,sparse,1..3,1..3):# metric components
g_compts[1,1] := 1/(1+R*(x^2+y^2+z^2)/8)^2:# component of interval attached to d(x)^2
g_compts[2,2] := 1/(1+R*(x^2+y^2+z^2)/8)^2:# component of interval attached to d(y)^2
g_compts[3,3] := 1/(1+R*(x^2+y^2+z^2)/8)^2:# component of interval attached to d(z)^2
g := create([-1,-1], eval(g_compts));# covariant metric tensor
ginv := invert( g, 'detg' ):# contravariant metric tensor
D1g := d1metric( g, coord ):# calculation of curvature tensor
D2g := d2metric( D1g, coord ):
Cf1 := Christoffel1 ( D1g ):
RMN := Riemann( ginv, D2g, Cf1 ):
displayGR(Riemann, RMN);

Now we try to perform the direct calculations from Eq. (1):
>
A := get_compts(g):
B := array(1..3, 1..3, 1..3, 1..3):
for i from 1 to 3 do
for j from 1 to 3 do
for k from 1 to 3 do
for l from 1 to 3 do
B[i,j,k,l] := eval(R*(A[i,k]*A[j,l] - A[i,l]*A[j,k])/2):# Eq. 1. These calculations can be performed also by means of tensor[prod] and tensor[permute_indices]
if B[i,j,k,l]<>0 then print([i,j,k,l],B[i,j,k,l]);# non-zero components
else
fi:
od: od: od: od:
The direct calculation on the basis of Eq. (1) and metric (2) results in the tensor with symmetries [ i,j,k,l ]=[ k,l,i,j ]=[ j,i,k,l ]=-[ i,j,l,k ] and [ i,j,k,l ]+[ i,l,j,k ]+[ i,k,l,j ] = 0. These symmetries and values of nonzero components correspond to curvature tensor, which was calculated previously from (2). As consequence, metric (2) satisfies to condition of constant curvature (Schur's theorem, Eq. (1)). We will base our further calculations on this metric.
The next step is the choice of the appropriate coordinates. We consider two types of coordinates: spherical and pseudospherical.
In the case of the spherical coordinates the transition of Eq. (2) to a new basis results in:
>
g_sp := simplify(subs({x=r*cos(phi)*sin(theta),y=r*sin(phi)*sin(theta),z=r*cos(theta)},get_compts(g))):# This is transformation of coordinates in metric tensor
Sp_compts := array(1..3,1..3):# matrix of conversion from (NB!) spherical coordinates
Sp_compts[1,1] := cos(phi)*sin(theta):
Sp_compts[2,1] := sin(phi)*sin(theta):
Sp_compts[3,1] := cos(theta):
Sp_compts[1,2] := r*cos(phi)*cos(theta):
Sp_compts[2,2] := r*sin(phi)*cos(theta):
Sp_compts[3,2] := -r*sin(theta):
Sp_compts[1,3] := -r*sin(phi)*sin(theta):
Sp_compts[2,3] := r*cos(phi)*sin(theta):
Sp_compts[3,3] := 0:
Sp := eval(Sp_compts):
simplify( multiply(transpose(Sp), g_sp, Sp));#transition to new coordinates in metric
The denominator is
>
denom(%[1,1]):
expand(%):
simplify(%,trig):
factor(%);
After substitution r*
= r
(we will omit asterix and suppose R
> 0), the metric is converted as:
>
coord := [r, theta, phi]:# spherical coordinates
g_compts_sp := array(symmetric,sparse,1..3,1..3):# metric components
g_compts_sp[1,1] := (2/R)/(1+r^2/4)^2:# component of interval attached to d(r)^2
g_compts_sp[2,2] := (2/R)*r^2/(1+r^2/4)^2:# component of interval attached to d(theta)^2
g_compts_sp[3,3] := (2/R)*r^2*sin(theta)^2/(1+r^2/4)^2:# component of interval attached to d(phi)^2
g_sp := create([-1,-1], eval(g_compts_sp));# covariant metric tensor
The denominator's form suggests the transformation
of radial coordinate: sin (c
) = r/ (
1 +
/4). Then for
-component we have
>
diff(sin(chi),chi)*d(chi) = simplify(diff(r/(1+r^2/4),r))*d(r);
lhs(%)^2 = rhs(%)^2;
subs(cos(chi)^2=1-r^2/(1+r^2/4)^2,lhs(%)) = rhs(%):
factor(%);
that leads to a new metric ( dc
=
):
>
coord := [r, theta, phi]:# spherical coordinates
g_compts_sp := array(symmetric,sparse,1..3,1..3):# metric components
g_compts_sp[1,1] := 2/R:# component of interval attached to d(chi)^2
g_compts_sp[2,2] := (2/R)*sin(chi)^2:# component of interval attached to d(theta)^2
g_compts_sp[3,3] := (2/R)*sin(chi)^2*sin(theta)^2:# component of interval attached to d(phi)^2
g_sp := create([-1,-1], eval(g_compts_sp));# covariant metric tensor
Here R /2 is the Gaussian curvature K ( K >0) so that the linear element is:
> l_sp := d(s)^2 = a^2*(d(chi)^2 + sin(chi)^2*(d(theta)^2+sin(theta)^2*d(phi)^2));
Here a
=
is the scaling factor
. Note, that substitution r
= a
produces the alternative form of metric:
>
subs(\
{sin(chi)=r/a,d(chi)^2=d(r)^2/(a^2*(1-r^2/a^2))},\
l_sp):#we use d(r)=a*cos(chi)*d(chi)
expand(%);
For negative curvature:
>
coord := [r, theta, phi]:# spherical coordinates
g_compts_hyp := array(symmetric,sparse,1..3,1..3):# metric components
g_compts_hyp[1,1] := (-2/R)/(1-r^2/4)^2:# component of interval attached to d(r)^2
g_compts_hyp[2,2] := (-2/R)*r^2/(1-r^2/4)^2:# component of interval attached to d(theta)^2
g_compts_hyp[3,3] := (-2/R)*r^2*sin(theta)^2/(1-r^2/4)^2:# component of interval attached to d(phi)^2
g_hyp := create([-1,-1], eval(g_compts_hyp));# covariant metric tensor
where R
is the module of Ricci scalar and new radial coordinate
is I r
. Let's try to use the substitution sh
(c)
= r/ ( 1
-
/4). Then for
-component we have
>
diff(sinh(chi),chi)*d(chi) = simplify(diff(r/(1-r^2/4),r))*d(r);
lhs(%)^2 = rhs(%)^2;
subs(cosh(chi)^2=1+r^2/(1-r^2/4)^2,lhs(%)) = rhs(%):
factor(%);
And finally
>
coord := [r, theta, phi]:# spherical coordinates
g_compts_hyp := array(symmetric,sparse,1..3,1..3):# metric components
g_compts_hyp[1,1] := -2/R:# component of interval attached to d(chi)^2
g_compts_hyp[2,2] := (-2/R)*sinh(chi)^2:# component of interval attached to d(theta)^2
g_compts_hyp[3,3] := (-2/R)*sinh(chi)^2*sin(theta)^2:# component of interval attached to d(phi)^2
g_hyp := create([-1,-1], eval(g_compts_hyp));# covariant metric tensor
Here R /2 is the Gaussian curvature K ( K <0). So, the linear element is
> l_hyp := d(s)^2 = a^2*(d(chi)^2 + sinh(chi)^2*(d(theta)^2+sin(theta)^2*d(phi)^2));
where a
=
is the imaginary scale factor. The substitution
r = a
sinh(c)
results in:
>
subs(\
{sinh(chi)=r/a,d(chi)^2=d(r)^2/(a^2*(1+r^2/a^2))},\
l_hyp):#we use d(r)=a*cosh(chi)*d(chi)
expand(%);
At last, for the flat space:
> l_flat := d(s)^2 = a^2*(d(chi)^2 + chi^2*(d(theta)^2+sin(theta)^2*d(phi)^2));
Here a is the arbitrary scaling factor.
To imagine the considered geometries we can
use the usual technique of embedding. In the general case the imbedding of 3-space
is not possible if the dimension of enveloping flat space is only 4 (we have
6 functions
, but the number of free parameters in 4-dimensional space
is only 4). However, the constant nonzero curvature allows to embed our curved
space in 4-dimensional flat space as result of next transformation of coordinates
(for spherical geometry):
>
defform(f=0,w1=1,w2=1,w3=1,v=1,chi=0,theta=0,phi=0);
e_1 := Dw^2 = a^2*d(cos(chi))^2;
e_2 := Dx^2 = (a*d(sin(chi)*sin(theta)*cos(phi)))^2;
e_3 := Dy^2 = (a*d(sin(chi)*sin(theta)*sin(phi)))^2;
e_4 := Dz^2 = (a*d(sin(chi)*cos(theta)))^2;
>
#so we have for Euclidian 4-metric:
simplify( rhs(e_1) + rhs(e_2) + rhs(e_3) + rhs(e_4), trig);
> collect(%,d(phi)^2);
This expression can be easily converted in l_sp , i. e. the imbedding is correct.
Since
>
w^2 + x^2 + y^2 + z^2 =
simplify(
(a*cos(chi))^2 +(a*sin(chi)*sin(theta)*cos(phi))^2 +
(a*sin(chi)*sin(theta)*sin(phi))^2 + (a*sin(chi)*cos(theta))^2);
the considered hypersurface is the 3-sphere in flat 4-space. The scale factor is the radius of the closed spherical universe.
In the case l_hyp there is not the imbedding in flat Euclidian 4-space, but there is the imbedding in flat hyperbolical flat space with interval
-d
+ d
+ d
+ d
As result we have
>
w^2 - x^2 - y^2 - z^2 =
simplify(
(a*cosh(chi))^2 - (a*sinh(chi)*sin(theta)*cos(phi))^2 -
(a*sinh(chi)*sin(theta)*sin(phi))^2 - (a*sinh(chi)*cos(theta))^2);
This is expression for 3-hyperboloid in flat 4-space.