aboutsummaryrefslogtreecommitdiff
path: root/src/metrics/Schwarzschild_Lemaitre.F77
diff options
context:
space:
mode:
Diffstat (limited to 'src/metrics/Schwarzschild_Lemaitre.F77')
-rw-r--r--src/metrics/Schwarzschild_Lemaitre.F7772
1 files changed, 72 insertions, 0 deletions
diff --git a/src/metrics/Schwarzschild_Lemaitre.F77 b/src/metrics/Schwarzschild_Lemaitre.F77
new file mode 100644
index 0000000..9ff7835
--- /dev/null
+++ b/src/metrics/Schwarzschild_Lemaitre.F77
@@ -0,0 +1,72 @@
+C Schwarzschild-Lemaitre metric
+c (Schwarzschild black hole with cosmological constant)
+C Proposed by Lemaitre in 1932
+C Author : D. Vulcanov (Timisoara, Romania)
+C $Header$
+
+#include "cctk.h"
+#include "cctk_Parameters.h"
+
+ subroutine Exact__Schwarzschild_Lemaitre(
+ $ x, y, z, t,
+ $ gdtt, gdtx, gdty, gdtz,
+ $ gdxx, gdyy, gdzz, gdxy, gdyz, gdzx,
+ $ gutt, gutx, guty, gutz,
+ $ guxx, guyy, guzz, guxy, guyz, guzx)
+
+ implicit none
+
+ DECLARE_CCTK_PARAMETERS
+
+ CCTK_REAL x, y, z, t
+ CCTK_REAL gdtt, gdtx, gdty, gdtz,
+ $ gdxx, gdyy, gdzz, gdxy, gdyz, gdzx,
+ $ gutt, gutx, guty, gutz,
+ $ guxx, guyy, guzz, guxy, guyz, guzx
+
+ logical firstcall
+
+ CCTK_REAL lam, mas, r2, ppp, unu, doi
+
+ data firstcall /.true./
+ save firstcall
+ if (firstcall) then
+ lam = Schwarzschild_Lemaitre__Lambda
+ mas = Schwarzschild_Lemaitre__mass
+ firstcall = .false.
+ end if
+
+ r2 =x*x+y*y+z*z
+
+ ppp=1.0D0 -2.0D0*mas/dsqrt(r2) -r2*lam/3.0D0
+
+ unu=(1.0D0-ppp)/ppp/r2
+
+ doi=(ppp - 1.0D0)/r2
+
+ gdtt = -ppp
+ gdtx = 0.0D0
+ gdty = 0.0D0
+ gdtz = 0.0D0
+ gdxx = 1.0D0 + x*x*unu
+ gdyy = 1.0D0 + y*y*unu
+ gdzz = 1.0D0 + z*z*unu
+ gdxy = x*y*unu
+ gdyz = y*z*unu
+ gdzx = z*x*unu
+
+
+ gutt = -1.0D0/ppp
+ gutx = 0.0D0
+ guty = 0.0D0
+ gutz = 0.0D0
+ guxx = 1.0D0 + x*x*doi
+ guyy = 1.0D0 + y*y*doi
+ guzz = 1.0D0 + z*z*doi
+ guxy = x*y*doi
+ guyz = y*z*doi
+ guzx = x*z*doi
+
+
+ return
+ end