Define Conformal Metric in xAct

For my thesis, I'm reproducing the results of a paper here by Alic et al in Mathematica using the package xAct.

I'm able to reproduce the standard $$3+1$$ decomposition given in equations $$(6-9)$$, but the pain comes from deriving the conformal $$3+1$$ decomposition, i.e. equations $$(14-19)$$. To start, I have rather no idea how to define a conformal metric. I spent some time on the famous Internet that inspired me to try the following, based on this:

DefTensor[phi[], M, PrintAs -> "\[Phi]"]
DefMetric[+1,
gammabar[-a, -b], cdbar, {",",
"\!$$\*OverscriptBox[\(D$$, $$_$$]\)"},
ConformalTo -> {gamma[-a, -b], (phi[])^2},
PrintAs -> "\!$$\*OverscriptBox[\(\[Gamma]$$, $$_$$]\)"]


xAct already warns me that this is probably not well-defined as earlier in my notebook, giving the warning ** MakeRule: Potential problems moving indices on the LHS.. This is because I have some MakeRule commands earlier in my notebook.

Nonetheless, I continued, by performing the following command (with a view to deriving equations $$(11-12)$$ of the paper by Alic)

NoScalar[ChangeCurvature[Riccicdbar[-a,-b], cdbar, cd] /. ConformalRules[gammabar, gamma]]


However, this resulted in yet more errors:

This convinced me that this is probably not the correct way, hence my question. Thanks in advance!

• Hi, the xact github page has an examples section at this page. One of the examples is on Einstein conformal equations here which you can copy paste to an empty file and name it something like ConformalEq.nb and then open it in Mathematica Commented Nov 3, 2022 at 19:17
• In the examples section there is also an example on conformal transformations apparently. Commented Nov 3, 2022 at 19:19
• i should mention that I have not read those notebooks myself and do not work with conformal transformations. I am just referencing some links that could be helpful. Commented Nov 3, 2022 at 19:24

This is not yet an answer, but let me point out some things and suggestions:

First, we need to have full inputs to understand the situation you are. For example, I don't understand why you need two metrics (metric and gamma) before defining the conformal metric gammabar. I'd recommend to work with a conformal metric gammabar that is conformal to a first metric gamma.

For example:

<< xActxTensor
\$PrePrint = ScreenDollarIndices;
DefManifold[M, 4, {a, b, c, d, f}]
DefMetric[1, gamma[-a, -b], cd, {";", "D"}]


Now define gammabar in terms of gamma:

DefTensor[phi[], M]
DefMetric[1, gammabar[-a, -b], cdbar, {",", "Dbar"}, ConformalTo -> {gamma[-a, -b], phi[]^2}]


You can now perform a change like this:

ChangeCurvature[Riccicdbar[-a, -b], cdbar, cd]


and then expand the Christoffel terms as derivatives of the conformal factor:

ChristoffelToGradConformal[%, gammabar, gamma] // Expand


Recall that in xAct we always raise and lower indices with the first metric (i.e. gamma in this case) not with gammabar.

• Hi, thanks for your answer. The reason that I defined the metric "metric" is because this is the standard four dimensional metric. Then, I decompose spacetime into an union of hypersurfaces, leading to the three-dimensional metric "gamma" on each hypersurface. Now I want to apply a conformal transformation on the metric "gamma" leading to the metric "gammabar". The reason that I do this all in one notebook is such that I don't lose all the definitions and built-in relations (such as the normal vector, extrinsic curvature,...). Commented Nov 7, 2022 at 8:57