aboutsummaryrefslogtreecommitdiff
path: root/src/metrics/Minkowski_conf_wave.F77
diff options
context:
space:
mode:
authorknarf <knarf@e296648e-0e4f-0410-bd07-d597d9acff87>2003-01-28 14:49:41 +0000
committerknarf <knarf@e296648e-0e4f-0410-bd07-d597d9acff87>2003-01-28 14:49:41 +0000
commitdf88cbc7f44eaed2786f331e9c839eed625ced44 (patch)
tree8141c6ac3a25a3ab8a6060812e6ec808a820b88d /src/metrics/Minkowski_conf_wave.F77
parent34f58312bd04e64c06975d579afff005734288ba (diff)
- add one new metric: Minkowski/conf wave
This is Minkowski with a cosine in the conformal factor - added support for using a static conformal factor git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinInitialData/Exact/trunk@147 e296648e-0e4f-0410-bd07-d597d9acff87
Diffstat (limited to 'src/metrics/Minkowski_conf_wave.F77')
-rw-r--r--src/metrics/Minkowski_conf_wave.F7775
1 files changed, 75 insertions, 0 deletions
diff --git a/src/metrics/Minkowski_conf_wave.F77 b/src/metrics/Minkowski_conf_wave.F77
new file mode 100644
index 0000000..301fb62
--- /dev/null
+++ b/src/metrics/Minkowski_conf_wave.F77
@@ -0,0 +1,75 @@
+c $Header$
+
+C Author: Frank Loeffler (frank.loeffler@aei.mpg.de)
+C Licence: GPL 2 or later
+
+#include "cctk.h"
+#include "cctk_Arguments.h"
+#include "cctk_Parameters.h"
+
+#define Pi (4 * atan(1.d0))
+
+
+ subroutine Exact__Minkowski_conf_wave(
+ $ x, y, z, t,
+ $ gdtt, gdtx, gdty, gdtz,
+ $ gdxx, gdyy, gdzz, gdxy, gdyz, gdzx,
+ $ gutt, gutx, guty, gutz,
+ $ guxx, guyy, guzz, guxy, guyz, guzx,
+ $ psi)
+
+ implicit none
+ DECLARE_CCTK_PARAMETERS
+ DECLARE_CCTK_FUNCTIONS
+
+ 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,
+ $ psi
+
+C write conformal factor
+ if (Minkowski_conf_wave__direction .eq. 0) then
+ psi = Minkowski_conf_wave__amplitude *
+ . sin(2.0d0*Pi/Minkowski_conf_wave__wavelength* x ) + 1.0d0
+ else if (Minkowski_conf_wave__direction .eq. 1) then
+ psi = Minkowski_conf_wave__amplitude *
+ . sin(2.0d0*Pi/Minkowski_conf_wave__wavelength* y ) + 1.0d0
+ else if (Minkowski_conf_wave__direction .eq. 2) then
+ psi = Minkowski_conf_wave__amplitude *
+ . sin(2.0d0*Pi/Minkowski_conf_wave__wavelength* z ) + 1.0d0
+ end if
+
+C write metric.
+
+ gdxx = psi**(-4.0d0)
+ gdyy = gdxx
+ gdzz = gdxx
+
+ gdxy = 0.0d0
+ gdyz = 0.0d0
+ gdzx = 0.0d0
+
+ gdtt = -1.0d0
+ gdtx = 0.0d0
+ gdty = 0.0d0
+ gdtz = 0.0d0
+
+C and upper metric.
+
+ guxx = psi**4.0d0
+ guyy = guxx
+ guzz = guxx
+
+ guxy = 0.0d0
+ guyz = 0.0d0
+ guzx = 0.0d0
+
+ gutt = -1.0d0
+ gutx = 0.0d0
+ guty = 0.0d0
+ gutz = 0.0d0
+
+ return
+ end