This post is the first foundation to “Testing the Speed of Gravity with Black Hole Ringdown”
ORIGINAL ARTICLE: Sergi Sirera Lahoz, Testing the Speed of Gravity with Black Hole Ringdown, arXiv: 2301.10272.
DOI: https://doi.org/10.48550/arXiv.2301.10272
GITHUB
ORIGINAL ARTICLE: Sergi Sirera Lahoz, Testing the Speed of Gravity with Black Hole Ringdown, arXiv: 2301.10272.
DOI: https://doi.org/10.48550/arXiv.2301.10272
GITHUB
In this notebook we derive the Regge-Wheeler and Zerilli equations for a Schwarzschild black hole in GR by directly varying the action with respect to the odd and even perturbation functions. Note that this method contrasts with the historical way these equations were first derived, where the perturbations were applied at the level of the equations of motion.
This notebook has hugely benefitted from resources provided by: - xAct ( http://www.xact.es/ ) - Johannes Noller - Reggie Bernardo’s public git-hub repository ( https://github.com/reggiebernardo/notebooks/tree/main/thesis_notebooks ). - Public notebooks by Vitor Cardoso et al. ( https://centra.tecnico.ulisboa.pt/network/grit/files/ringdown/ ).This notebook follows closely the arguments in section III of Tattersall et. al. ( https://arxiv.org/abs/1711.01992 ) and we provide more details on the calculation along the way. We also point out a typo in that paper.If you use any of the results or techniques in this notebook please cite the repository and [2301.10272] ( https://arxiv.org/abs/2301.10272 ).If you have any comments or feedback on this notebook, please let me know. Thanks!Sergi Sirera LahozInstitute of Cosmology and Gravitation - University of Portsmouth
0. Setup and definitions
0. Setup and definitions
1. xCoba setup & quadratic action
1. xCoba setup & quadratic action
Action
Action
We start with the Einstein-Hilbert action, which has the following Lagrangian. We also define here the metric perturbations.
Note that we use geometric units:
Note that we use geometric units:
G=c=1
In[]:=
L=Sqrt[-Detg[]]RicciScalarCD[]DefMetricPerturbation[g,h,ϵ];Unprotect[IndexForm];(*thisselectsacolourtodifferentiateindicesreferringtotheorderinperturbationsfromotherindices*)IndexForm[LI[x_]]:=ColorString[ToString[x],RGBColor["#00a898"]];Protect[IndexForm];IndexForm[LI[n]];
1
2
Out[]=
-g
R2
The following rules will take care of selecting contributions only from first order in the perturbations, applying differentiation by parts and specifying Ricci flat spacetimes.
(*keeponlyfirstorder*)onlyfirst=h[LI[2],x_,y_]:>0(*integrationbypartsrules*)IBPrule=XX_*h[LI[1],aa_,bb_]CD[cc_]@CD[dd_]@h[LI[1],ee_,ff_]->-CD[cc]@(XX*h[LI[1],aa,bb])*CD[dd]@h[LI[1],ee,ff](*Ricciflatspacetimes*)Ricciflat={RicciCD[-a_,-b_]0,RicciScalarCD[]0}
Out[]=
h |
|
Out[]=
h |
|
cc
∇
dd
∇
h |
|
h |
|
cc
∇
cc
∇
h |
|
dd
∇
h |
|
Out[]=
{
0,R0}
R |
|
Coordinate basis
Coordinate basis
We define the Schwarzschild chart and coordinates. We define the metric components and we use MetricInBasis[...] to tell xCoba that these are the components of the abstract metric g. We also define the spherical harmonic functions and the odd and even perturbation metric components.
DefChart[Schw,Md,{0,1,2,3},{t[],r[],θ[],ϕ[]}];DefScalarFunction/@{B};DefConstantSymbol[mass,PrintAs->"M"]gB=DiagonalMatrix-B[r[]],,,;
1
B[r[]]
2
r[]
2
r[]
2
Sin[θ[]]
This connects the metric components defined above with the abstract xAct metric defined in the setup
MetricInBasis[g,-Schw,gB];
This computes the components of all curvature tensors associated with the metric
MetricCompute[g,Schw,All,CVSimplifyToCanonical];DefConstantSymbol/@{l,m,ω};DefScalarFunction[PL,PrintAs""];
P
lm
Associated Legendre polynomials
PL''[θ_]:=-(l(l+1)-)PL[θ]-Cot[θ]PL'[θ];PLrules=PL[θ[]]^2*Sin[θ[]]->,Sin[θ[]]*Derivative[1][PL][θ[]]^2->;
2
m
2
Csc[θ]
2
2l+1
2(l(l+1))
2l+1
Spherical harmonics
YLM:=PL[θ[]];
-mϕ[]
E
Even parity h
DefConstantSymbol[ζ];DefScalarFunction[H0,PrintAs""];DefScalarFunction[H1,PrintAs""];DefScalarFunction[H2,PrintAs""];DefScalarFunction[KK,PrintAs"K"];hE=ζYLM{B[r[]]H0[t[],r[]],H1[t[],r[]],0,0},H1[t[],r[]],,0,0,{0,0,KK[t[],r[]],0},{0,0,0,KK[t[],r[]]};
H
0
H
1
H
2
H2[t[],r[]]
B[r[]]
2
r[]
2
r[]
2
Sin[θ[]]
Odd parity h
DefConstantSymbol[η];DefScalarFunction[h0,PrintAs""];DefScalarFunction[h1,PrintAs""];hO=η0,0,-h0[t[],r[]],Sin[θ[]]D[YLM,θ[]]h0[t[],r[]],0,0,-h1[t[],r[]],Sin[θ[]]D[YLM,θ[]]h1[t[],r[]],-h0[t[],r[]],-h1[t[],r[]],0,0,{Sin[θ[]]D[YLM,θ[]]h0[t[],r[]],Sin[θ[]]D[YLM,θ[]]h1[t[],r[]],0,0};
h
0
h
1
D[YLM,ϕ[]]
Sin[θ[]]
D[YLM,ϕ[]]
Sin[θ[]]
D[YLM,ϕ[]]
Sin[θ[]]
D[YLM,ϕ[]]
Sin[θ[]]
We display how the metric perturbations look like
hO//Flatten;Apply[PolynomialGCD,%];%*hO//MatrixFormhE//Flatten;Apply[PolynomialGCD,%]*B[r[]];%*hE//MatrixForm
1
%
1
%
Out[]=
-mϕ
0 | 0 | m 2 Csc[θ] h 0 P lm | h 0 ′ P lm |
0 | 0 | m 2 Csc[θ] h 1 P lm | h 1 ′ P lm |
m 2 Csc[θ] h 0 P lm | m 2 Csc[θ] h 1 P lm | 0 | 0 |
h 0 ′ P lm | h 1 ′ P lm | 0 | 0 |
Out[]=
-mϕ
B[r] H 0 | H 1 | 0 | 0 |
H 1 | H 2 B[r] | 0 | 0 |
0 | 0 | K[t,r] 2 r | 0 |
0 | 0 | 0 | K[t,r] 2 r 2 Sin[θ] |
P
lm
Here we let xCoba know that about this decomposition using ComponentValue[...]. In other words, we tell xCoba that the components above refer to the metric perturbations. We also specify that we can raise and lower indices on with the metric .
h
bc
g
bc
In[]:=
ComponentValue[ComponentArray[h[LI[1],-{b,Schw},-{c,Schw}]],hE+hO];ChangeComponents[h[LI[1],-{b,Schw},{c,Schw}],h[LI[1],-{b,Schw},-{c,Schw}]];ChangeComponents[h[LI[1],{b,Schw},-{c,Schw}],h[LI[1],-{b,Schw},-{c,Schw}]];ChangeComponents[h[LI[1],{b,Schw},{c,Schw}],h[LI[1],-{b,Schw},-{c,Schw}]];ChangeComponents[ChristoffelCDPDSchw[{b,Schw},{c,Schw},-{d,Schw}],ChristoffelCDPDSchw[{b,Schw},-{c,Schw},-{d,Schw}]];
Computed
in 0.0941416 Seconds
h |
|
g |
|
h |
|
Computed
in 0.0741432 Seconds
h |
|
g |
|
h |
|
Computed
in 0.0802920 Seconds
h |
|
g |
|
h |
|
Computed
in 0.0828561 Seconds
h |
|
g |
|
h |
|
Computed
in 0.4907454 Seconds
Γ[∇,] |
|
Γ[∇,] |
|
g |
|
In order to perform a variation with respect to the perturbation functions, we first need to convert them to ‘tensors’ in the xAct language. This is so that the variation can also take into account derivatives of the function, which would be otherwise excluded. This step has no deep significance but it is necessary so that xAct can treat perturbation functions as it should.
To implement this we use a simple method of substituting an r-derivative with a partial derivative contracted with a normalized vector in the r-direction. We do the same for t-derivatives.
Here we are defining these normalized vectors and the tensors for each of the functions.
To implement this we use a simple method of substituting an r-derivative with a partial derivative contracted with a normalized vector in the r-direction. We do the same for t-derivatives.
Here we are defining these normalized vectors and the tensors for each of the functions.
In[]:=
DefTensorrvec[],Md,PrintAs->"";AutomaticRules[rvec,{PD[-b_][rvec[c_]]->0}];={0,1,0,0};ComponentValueComponentArray[rvec[{b,Schw}]],DefTensortvec[],Md,PrintAs->"";AutomaticRules[tvec,{PD[-b_][tvec[c_]]->0}];={1,0,0,0};ComponentValueComponentArray[tvec[{b,Schw}]],DefTensorh0T[],Md,PrintAs->""DefTensor[h1T[],Md,PrintAs->""]DefTensor[H0T[],Md,PrintAs->""]DefTensor[H1T[],Md,PrintAs->""]DefTensor[H2T[],Md,PrintAs->""]DefTensor[KKT[],Md,PrintAs->""]
r
r
r
t
t
t
h
0
h
1
H
0
H
1
H
2
K
These rules allow us to express B[r] and its derivatives in terms of M and vice versa.
Here we perturb the Lagrangian to second order.
We use rules defined above to keep only first order metric perturbations, integrate by parts, and implement Ricci-flatness.
We use rules defined above to keep only first order metric perturbations, integrate by parts, and implement Ricci-flatness.
2. Quadratic action in components
2. Quadratic action in components
Now we need to input the component values in the previous covariant expression. This gives us the full quadratic Lagrangian in terms of the perturbation functions.
3. Odd sector
3. Odd sector
We now use the bookkeeping constants ζ and η to select the odd terms.
This line implies an integration of the angular components over the sphere . The 2 π comes from the ϕ integration and the PLrules take care of the θ integral
Here we convert the pertubration functions to ‘ tensors’ in the xAct language so they can be treated correctly
4. Even sector
4. Even sector
We now move to the even sector, which is considerably more involved, as can be seen from the quadratic action:
Combination
Combination
Lets start by displaying the equations of motion.
Step 1
Step 1
Step 2
Step 2
Finally, to obtain the Zerilli equation we take the algebraic equation and rewrite it using the rules above.
5. Results
5. Results
Here we just quote the final results, i.e. the Regge-Wheeler and Zerilli equations
CITE THIS NOTEBOOK
CITE THIS NOTEBOOK
Testing Speed of Gravity with Black Hole Ringdown: Regge-Wheeler and Zerilli equations
by Sergi Sirera Lahoz
Wolfram Community, STAFF PICKS, August 11, 2023
https://community.wolfram.com/groups/-/m/t/2988459
by Sergi Sirera Lahoz
Wolfram Community, STAFF PICKS, August 11, 2023
https://community.wolfram.com/groups/-/m/t/2988459