PRO Kerr, r, theta, phi, Metricg, Affineg, A=A, DetG=DetG, M=M ; Compute metric coeffs and connection coeffs, in Boyer-Lindquist ; coordinates for a Kerr black hole. default,a,0.998 default,M,1.0 ; MathTensor expressions are with a=1,2,3,4, with t=x[4] Metricg = fltarr(5,5) AffineG = fltarr(5,5,5) ; Scratch results a2 = a^2 r2 = r^2 r4 = r2^2 sth = Sin(theta) sth2 = sth^2 sth4 = sth2^2 cthsth = Cos(theta)*sth cthsth3 = cthsth *sth2 cthsth5 = cthsth3*sth2 a2sth2 = a2*sth2 r4sth2 = r4*sth2 sth6 = sth2*sth4 cotth = Cos(theta)/(sth > 1e-10) Detg = -(sth2*(-a2 - r^2 + a2sth2)^2) ; Metric coeffs Metricg(4, 4) = (a2 - 2*M*r + r2 - a2sth2)/(-a2 - r2 + a2sth2) Metricg(4, 3) = (2*a*M*r*sth2)/(-a2 - r2 + a2sth2) Metricg(3, 3) = (-(a2*a2sth2) - 2*a2*r2*sth2 - r4sth2 + $ a^4*sth4 - 2*a2*M*r*sth4 + $ a2*r2*sth4)/(-a2 - r2 + a2sth2) Metricg(2, 2) = a2 + r2 - a2sth2 Metricg(1, 1) = (a2 + r2 - a2sth2)/(a2 - 2*M*r + r2) ; Connection coeffs AffineG(1, 4, 4) = (a^4*M - 2*a2*M^2*r + 2*M^2*r^3 - M*r^4 - a^4*M*sth2 + $ 2*a2*M^2*r*sth2 - a2*M*r2*sth2)/(-a2 - r2 + a2sth2)^3 AffineG(1, 4, 3) = (-(a^5*M*sth2) + 2*a^3*M^2*r*sth2 - $ 2*a*M^2*r^3*sth2 + a*M*r4sth2 + a^5*M*sth4 - $ 2*a^3*M^2*r*sth4 + a^3*M*r2*sth4)/(-a2 - r2 + a2sth2)^3 AffineG(1, 3, 3) = (a^6*r*sth2 - 2*a^4*M*r2*sth2 + $ 3*a^4*r^3*sth2 - 4*a2*M*r4sth2 + 3*a2*r^5*sth2 - $ 2*M*r^6*sth2 + r^7*sth2 + a^6*M*sth4 - $ 2*a^6*r*sth4 - 2*a^4*M^2*r*sth4 + 4*a^4*M*r2*sth4 - $ 4*a^4*r^3*sth4 + 2*a2*M^2*r^3*sth4 + 3*a2*M*r^4*sth4 - $ 2*a2*r^5*sth4 - a^6*M*sth6 + a^6*r*sth6 + $ 2*a^4*M^2*r*sth6 - 3*a^4*M*r2*sth6 + $ a^4*r^3*sth6)/(-a2 - r2 + a2sth2)^3 AffineG(1, 2, 1) = (a2*cthsth)/(-a2 - r2 + a2sth2) AffineG(1, 1, 1) = (-(a2*M) + M*r2 + a2*M*sth2 - $ a2*r*sth2)/((a2 - 2*M*r + r2)*(-a2 - r2 + a2sth2)) AffineG(2, 4, 4) = (2*a2*M*r*cthsth)/(-a2 - r2 + a2sth2)^3 AffineG(2, 4, 3) = (-2*(a^3*M*r*cthsth + $ a*M*r^3*cthsth))/(-a2 - r2 + a2sth2)^3 AffineG(2, 3, 3) = (a^6*cthsth + 3*a^4*r2*cthsth + $ 3*a2*r^4*cthsth + r^6*cthsth - $ 2*a^6*cthsth3 + 4*a^4*M*r*cthsth3 - $ 4*a^4*r2*cthsth3 + 4*a2*M*r^3*cthsth3 - $ 2*a2*r^4*cthsth3 + a^6*cthsth5 - $ 2*a^4*M*r*cthsth5 + $ a^4*r2*cthsth5)/(-a2 - r2 + a2sth2)^3 AffineG(2, 2, 2) = (a2*cthsth)/(-a2 - r2 + a2sth2) AffineG(2, 2, 1) = r/(a2 + r2 - a2sth2) AffineG(2, 1, 1) = -((a2*cthsth)/((a2 - 2*M*r + r2)*(-a2 - r2 + a2sth2))) AffineG(3, 4, 2) = (-2*a*M*r*cotth)/(-a2 - r2 + a2sth2)^2 AffineG(3, 4, 1) = (-(a^3*M) + a*M*r2 + $ a^3*M*sth2)/((a2 - 2*M*r + r2)*(-a2 - r2 + a2sth2)^2) AffineG(3, 3, 2) = (a^4*cotth + 2*a2*r2*cotth + r^4*cotth - $ 2*a^4*cthsth + 2*a2*M*r*cthsth - $ 2*a2*r2*cthsth + $ a^4*cthsth3)/(-a2 - r2 + a2sth2)^2 AffineG(3, 3, 1) = (a^4*r - 2*a2*M*r2 + 2*a2*r^3 - 2*M*r^4 + r^5 + $ a^4*M*sth2 - 2*a^4*r*sth2 + a2*M*r2*sth2 - $ 2*a2*r^3*sth2 - a^4*M*sth4 + $ a^4*r*sth4)/((a2 - 2*M*r + r2)*(-a2 - r2 + a2sth2)^2) AffineG(4, 4, 2) = (-2*a2*M*r*cthsth)/(-a2 - r2 + a2sth2)^2 AffineG(4, 4, 1) = (-(a^4*M) + M*r^4 + a^4*M*sth2 + $ a2*M*r2*sth2)/((a2 - 2*M*r + r2)*(-a2 - r2 + a2sth2)^2) AffineG(4, 3, 2) = (2*a^3*M*r*cthsth3)/(-a2 - r2 + a2sth2)^2 AffineG(4, 3, 1) = (a^5*M*sth2 - 2*a^3*M*r2*sth2 - $ 3*a*M*r4sth2 - a^5*M*sth4 + $ a^3*M*r2*sth4)/((a2 - 2*M*r + r2)*(-a2 - r2 + a2sth2)^2) ; Fill out with symmetries for j=1,4 do begin for k=j+1,4 do begin Metricg(j,k)=Metricg(k,j) AffineG(*,j,k) = AffineG(*,k,j) end end ; Shift from 1,2,3,4 to 0,1,2,3 Metricg = Metricg(1:4,1:4) Metricg = shift(Metricg,1,0) Metricg = shift(Metricg,0,1) Affineg = Affineg(1:4,1:4,1:4) Affineg = shift(Affineg,1,0,0) Affineg = shift(Affineg,0,1,0) Affineg = shift(Affineg,0,0,1) END