using xACT/xCoba/xPert in particular basis

1,105 views
Skip to first unread message

Rahul Biswas

unread,
Dec 2, 2011, 2:26:37 PM12/2/11
to xa...@googlegroups.com
Hi,

I am essentially new to using xACT, xTensor, xCoba.  I am interested
in using it for working out perturbation theory for cosmology, so I
know the class of metrics I am interested in. The xCoba example (spherical
symmetry) on the  wepage actually specifies a metric in terms of a
particular coordinate system, but I gather from the some of the older
posts on this group, that this is not the suggested way. Is there an
example explaining, perhaps one on the discussion forum that the experts
would recommend, on how this choice should be specified?

Aside from this more generic question, I have two specific problems which
I describe below

(see attached notebook).

1. Canonicalization: I understand that an attractive feature of xAct is
its ability to bring expressions with different indeces summed over
to a canonical form and perform algebraic operations.
However, when I introduce a scalar field in the expression, ToCanonical throws an error I do not
understand. Could you point out the correct way of doing this?

2. I would like to compute expressions for variables such as the Christoffel
 symbols for a metric in a particular coordinate system. While there seems
to be a way to calculate the Christoffel coefficients, I do not understand
how to see the results (attached notebook).
 
Thank you,
Rahul

xCoba_questions.nb

JMM

unread,
Dec 2, 2011, 7:06:33 PM12/2/11
to xAct Tensor Computer Algebra
Hi Rahul,

> I am essentially new to using xACT, xTensor, xCoba.  I am interested
> in using it for working out perturbation theory for cosmology, so I
> know the class of metrics I am interested in. The xCoba example (spherical
> symmetry) on the  wepage actually specifies a metric in terms of a
> particular coordinate system, but I gather from the some of the older
> posts on this group, that this is not the suggested way. Is there an
> example explaining, perhaps one on the discussion forum that the experts
> would recommend, on how this choice should be specified?

It depends very much on the computation you want to do. The package
xPert is designed mainly for abstract computations in perturbation
theory, with a general background metric. Computations in that setting
are usually simpler and more illuminating, because you do not need to
choose a coordinate system more or less arbitrarily, and you can keep
a higher level of geometrical interpretation. For background metrics
with much symmetry, this is typically possible, by introducing a few
objects describing the background metric and a few rules implementing
the symmetry properties of the background.

For instance for perturbations around Minkowski you just need a rule
killing the background curvature tensors. Note that you first have to
perturb the background, and then make its background curvature zero.
If you declare initially the metric as flat, then there is no
curvature to perturb! That's how xPert works.

For perturbations around a FRW spacetime in xAct, I always recommend
working with the 4d objects and their perturbations, using the 3+1
decomposition functionality of xTensor, but I don't have any example
notebook.

For perturbations around a general metric you do need xCoba, but you
need to guide yourself the interaction between xPert and xCoba.

> 1. Canonicalization: I understand that an attractive feature of xAct is
> its ability to bring expressions with different indeces summed over
> to a canonical form and perform algebraic operations.
> However, when I introduce a scalar field in the expression, ToCanonical
> throws an error I do not
> understand. Could you point out the correct way of doing this?

You are declaring \[Psi] as a scalar funcion, and I think it should be
a scalar field. That is, you need DefTensor[ \[Psi][], M] instead. See
this post for an explanation of the difference:

http://groups.google.com/group/xact/browse_thread/thread/b019ffaa46b1a0fe/3318a75fea7e6006#3318a75fea7e6006

As with any other scalar field in xAct, you have to use it always as \
[Psi][], with its empty pair of brackets. Otherwise xTensor cannot
identify it as a scalar.

> 2. I would like to compute expressions for variables such as the Christoffel
>  symbols for a metric in a particular coordinate system. While there seems
> to be a way to calculate the Christoffel coefficients, I do not understand
> how to see the results (attached notebook).

What you compute with xCoba is not ChristoffelCD, which is the
Christoffel tensor of the connection CD from the fiducial ordinary
connection PD of xTensor, but the connection ChristoffelCDPDB,
relating CD with the ordinary connection PDB associated to the chart B
you have declared. Hence you need the command

TensorValues[ ChristoffelCDPDB ]

Recall that xAct uses Christoffel *tensors*, the difference between
two connections, to treat them as you treat any other tensor. That is
why the names contain two connections. The name ChristoffelCD really
means ChristoffelCDPD.

Cheers,
Jose.

Reply all
Reply to author
Forward
0 new messages