# Linearized Einstein Equations with Mathematica

I need to compute the linearised Einstein Equations around a fixed metric $g_{\mu \nu}$ which is not the flat metric.

Someone knows any Mathematica package or a review that can help me?

-
I recommend this one Efficient tensor computer algebra for Mathematica. Here is a related question Differential geometry add-ons for Mathematica. You could start with this answer How to calculate scalar curvature Ricci tensor and Christoffel symbols in Mathematica? and then exploit new tensor capabilities in Mathematica 9. – Artes Nov 8 '13 at 10:28
@Artes You could make that into an answer (reduce unanswered count). There's not much more to say here. – Szabolcs Jan 9 '14 at 20:03

As @Artes mentions in his comment, this can be done with xAct, in particular with its xPert package. After installing it, we may load it with

<< xActxPert


We first need to set up some variables:

(* Define a 4-dimensional manifold. *)
DefManifold[M, 4, IndexRange[a, l]]

(* Define a (Lorentzian) metric and its associated curvature tensors. *)
DefMetric[-1, metric[-a, -b], CD, PrintAs -> "g"]

(* Define metric perturbations, with H being the fluctuation of the metric. *)
DefMetricPerturbation[metric, H, ϵ]


The linearized Einstein tensor can then be computed by perturbing the non-linear Einstein tensor, and subsequently expanding the perturbation:

linearEinstein = ExpandPerturbation @ Perturbation[ EinsteinCD[-a, -b] ]


$\tfrac{1}{2} (- \nabla_{a}\nabla_{b}H^{1c}{}_{c} - \nabla_{a}\nabla_{c}H^{1c}{}_{b} + \nabla_{a}\nabla^{c}H^{1}{}_{bc}) + \tfrac{1}{2} (\nabla_{c}\nabla_{a}H^{1c}{}_{b} + \nabla_{c}\nabla_{b}H^{1c}{}_{a} - \nabla_{c}\nabla^{c}H^{1}{}_{ba})$ $+ \tfrac{1}{2} (- H^{1}{}_{ab} R - g_{ab} (- H^{1cd} R_{cd} + g^{cd} (\tfrac{1}{2} (- \nabla_{c}\nabla_{d}H^{1e}{}_{e} - \nabla_{c}\nabla_{e}H^{1e}{}_{d} + \nabla_{c}\nabla^{e}H^{1}{}_{de})$ $+ \tfrac{1}{2} (\nabla_{e}\nabla_{c}H^{1e}{}_{d} + \nabla_{e}\nabla_{d}H^{1e}{}_{c} - \nabla_{e}\nabla^{e}H^{1}{}_{dc}))))$

We can clean this up a bit as follows:

linearEinstein // ContractMetric // ToCanonical


$\tfrac{1}{2} H^{1cd} g_{ab} R_{cd} - \tfrac{1}{2} H^{1}{}_{ab} R - \tfrac{1}{2} \nabla_{b}\nabla_{a}H^{1c}{}_{c} + \tfrac{1}{2} \nabla_{c}\nabla_{a}H^{1}{}_{b}{}^{c} + \tfrac{1}{2} \nabla_{c}\nabla_{b}H^{1}{}_{a}{}^{c} - \tfrac{1}{2} \nabla_{c}\nabla^{c}H^{1}{}_{ab} - \tfrac{1}{2} g_{ab} \nabla_{d}\nabla_{c}H^{1cd} + \tfrac{1}{2} g_{ab} \nabla_{d}\nabla^{d}H^{1c}{}_{c}$

If you know the values of the background curvature tensors, you could plug them in, or alternatively, compute them from the background metric with the xCoba package.

-
+1. Maybe you could incorporate you answer also here? The only difference is to put g = {-1,1,1,1}, right? – Kuba Feb 17 '15 at 15:38