aboutsummaryrefslogtreecommitdiff
path: root/src/metrics/Minkowski_shifted_gauge_wave.F
diff options
context:
space:
mode:
authorknarf <knarf@e296648e-0e4f-0410-bd07-d597d9acff87>2012-12-19 15:12:36 +0000
committerknarf <knarf@e296648e-0e4f-0410-bd07-d597d9acff87>2012-12-19 15:12:36 +0000
commit1c980c2cf1278260feb6bb9b613f8af0b22382ce (patch)
tree2ede115336a741780133ccbceeb823223f939553 /src/metrics/Minkowski_shifted_gauge_wave.F
parent076e916c60d9a50dbd84932ae4d891977d21989a (diff)
Fix compiler warnings.
Most of them could be fixed by renaming .F77 files to .F Some had to be fixed by explicitly declaring some variables using CCTK_DECLARE() (which also only works for .F, not for .F77) git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinInitialData/Exact/trunk@287 e296648e-0e4f-0410-bd07-d597d9acff87
Diffstat (limited to 'src/metrics/Minkowski_shifted_gauge_wave.F')
-rw-r--r--src/metrics/Minkowski_shifted_gauge_wave.F121
1 files changed, 121 insertions, 0 deletions
diff --git a/src/metrics/Minkowski_shifted_gauge_wave.F b/src/metrics/Minkowski_shifted_gauge_wave.F
new file mode 100644
index 0000000..68caf89
--- /dev/null
+++ b/src/metrics/Minkowski_shifted_gauge_wave.F
@@ -0,0 +1,121 @@
+C This subroutine sets up Minkowski spacetime with a gague wave.
+C
+c $Header$
+C
+C Author: unknown
+C Copyright/License: unknown
+C
+
+#include "cctk.h"
+#include "cctk_Parameters.h"
+#include "cctk_Functions.h"
+
+#define Pi (4 * atan(1.d0))
+
+
+ subroutine Exact__Minkowski_shifted_gauge_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, Tmunu_flag)
+
+ implicit none
+ DECLARE_CCTK_PARAMETERS
+ DECLARE_CCTK_FUNCTIONS
+
+c input arguments
+ CCTK_REAL x, y, t
+ CCTK_DECLARE(CCTK_REAL, z,)
+
+c output arguments
+ CCTK_REAL gdtt, gdtx, gdty, gdtz,
+ $ gdxx, gdyy, gdzz, gdxy, gdyz, gdzx,
+ $ gutt, gutx, guty, gutz,
+ $ guxx, guyy, guzz, guxy, guyz, guzx
+ CCTK_DECLARE(CCTK_REAL, psi,)
+ LOGICAL Tmunu_flag
+
+c local parameter copies
+ CCTK_REAL a, o, d, fs
+
+c local variables
+ CCTK_REAL H
+ character*100 warn_buffer
+
+c constants
+ CCTK_REAL zero,half,one
+ parameter (zero = 0.0d0, half=0.5d0, one=1.0d0)
+
+C This is a vacuum spacetime with no cosmological constant
+ Tmunu_flag = .false.
+
+C Get parameters of the exact solution.
+ a = Minkowski_gauge_wave__amplitude
+ o = Minkowski_gauge_wave__omega
+ d = Minkowski_gauge_wave__lambda
+ fs = Minkowski_gauge_wave__phase
+
+C How should the wave look like.
+ if (CCTK_EQUALS(Minkowski_gauge_wave__what_fn,"sin")) then
+ d = Minkowski_gauge_wave__lambda * half / Pi
+ if (Minkowski_gauge_wave__diagonal.ne.0) then
+ H = a * sin((x-y)/d - o*t/d - fs)
+ else
+ H = a * sin((x-o*t)/d - fs)
+ end if
+ else
+ write (warn_buffer, '(a,a,a)')
+ $ 'Unknown Minkowski_gauge_wave__what_fn = "',
+ $ Minkowski_gauge_wave__what_fn, '"'
+C silence compiler warning about unused variable
+ H = one
+ call CCTK_WARN(0, warn_buffer)
+ end if
+
+C write metric.
+
+ if (Minkowski_gauge_wave__diagonal.ne.0) then
+
+ gdxx = half * H + one
+ gdxy = - half * H
+ gdyy = half * H + one
+
+ guxx = - half * H + one
+ guxy = half * H
+ guyy = - half * H + one
+
+ else
+
+ gdxx = H + one
+ gdxy = zero
+ gdyy = one
+
+ guxx = - H + one
+ guxy = zero
+ guyy = one
+
+ end if
+
+ gdtt = H - one
+ gdtx = - H
+ gdty = zero
+ gdtz = zero
+
+ gdzx = zero
+ gdyz = zero
+ gdzz = one
+
+C and upper metric.
+
+ gutt = - H - one
+ gutx = - H
+ guty = zero
+ gutz = zero
+
+ guyz = zero
+ guzx = zero
+ guzz = one
+
+ end