aboutsummaryrefslogtreecommitdiff
path: root/CarpetExtra/IDScalarWaveFO/src
diff options
context:
space:
mode:
authoreschnett <>2001-03-01 11:40:00 +0000
committereschnett <>2001-03-01 11:40:00 +0000
commit310f0ea48d18866b773136aed11200b6eda6378b (patch)
tree445d3e34ce8b89812994b6614f7bc9f4acbc7fe2 /CarpetExtra/IDScalarWaveFO/src
Initial revision
darcs-hash:20010301114010-f6438-12fb8a9ffcc80e86c0a97e37b5b0dae0dbc59b79.gz
Diffstat (limited to 'CarpetExtra/IDScalarWaveFO/src')
-rw-r--r--CarpetExtra/IDScalarWaveFO/src/initialdata.F7761
-rw-r--r--CarpetExtra/IDScalarWaveFO/src/make.code.defn9
2 files changed, 70 insertions, 0 deletions
diff --git a/CarpetExtra/IDScalarWaveFO/src/initialdata.F77 b/CarpetExtra/IDScalarWaveFO/src/initialdata.F77
new file mode 100644
index 000000000..e2808d54f
--- /dev/null
+++ b/CarpetExtra/IDScalarWaveFO/src/initialdata.F77
@@ -0,0 +1,61 @@
+c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/IDScalarWaveFO/src/initialdata.F77,v 1.5 2004/05/07 22:51:08 schnetter Exp $
+
+#include "cctk.h"
+#include "cctk_Arguments.h"
+#include "cctk_Functions.h"
+#include "cctk_Parameters.h"
+
+ subroutine IDScalarWaveFO_InitialData (CCTK_ARGUMENTS)
+ implicit none
+ DECLARE_CCTK_ARGUMENTS
+ DECLARE_CCTK_FUNCTIONS
+ DECLARE_CCTK_PARAMETERS
+ CCTK_REAL pi
+ parameter (pi = 3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117068d0)
+ CCTK_REAL omega
+ integer i, j, k
+
+ if (CCTK_EQUALS(initial_data, "plane")) then
+ omega = sqrt(wave_number(1)**2 + wave_number(2)**2 + wave_number(3)**2)
+ do k=1,cctk_lsh(3)
+ do j=1,cctk_lsh(2)
+ do i=1,cctk_lsh(1)
+ phi(i,j,k) = amplitude * cos (2*pi *
+ $ ( wave_number(1)*(x(i,j,k)-phase_offset(1))
+ $ + wave_number(2)*(y(i,j,k)-phase_offset(2))
+ $ + wave_number(3)*(z(i,j,k)-phase_offset(3))
+ $ + omega*(cctk_time-time_offset)))
+ psix(i,j,k) = amplitude * wave_number(1) / omega * cos (2*pi *
+ $ ( wave_number(1)*(x(i,j,k)-phase_offset(1))
+ $ + wave_number(2)*(y(i,j,k)-phase_offset(2))
+ $ + wave_number(3)*(z(i,j,k)-phase_offset(3))
+ $ + omega*(cctk_time-time_offset)))
+ psiy(i,j,k) = amplitude * wave_number(2) / omega * cos (2*pi *
+ $ ( wave_number(1)*(x(i,j,k)-phase_offset(1))
+ $ + wave_number(2)*(y(i,j,k)-phase_offset(2))
+ $ + wave_number(3)*(z(i,j,k)-phase_offset(3))
+ $ + omega*(cctk_time-time_offset)))
+ psiz(i,j,k) = amplitude * wave_number(3) / omega * cos (2*pi *
+ $ ( wave_number(1)*(x(i,j,k)-phase_offset(1))
+ $ + wave_number(2)*(y(i,j,k)-phase_offset(2))
+ $ + wave_number(3)*(z(i,j,k)-phase_offset(3))
+ $ + omega*(cctk_time-time_offset)))
+ end do
+ end do
+ end do
+
+ else if (CCTK_EQUALS(initial_data, "noise")) then
+
+ do k=1,cctk_lsh(3)
+ do j=1,cctk_lsh(2)
+ do i=1,cctk_lsh(1)
+ call random_number (phi(i,j,k))
+ call random_number (psix(i,j,k))
+ call random_number (psiy(i,j,k))
+ call random_number (psiz(i,j,k))
+ end do
+ end do
+ end do
+
+ end if
+ end
diff --git a/CarpetExtra/IDScalarWaveFO/src/make.code.defn b/CarpetExtra/IDScalarWaveFO/src/make.code.defn
new file mode 100644
index 000000000..472cb8f8d
--- /dev/null
+++ b/CarpetExtra/IDScalarWaveFO/src/make.code.defn
@@ -0,0 +1,9 @@
+# Main make.code.defn file for thorn IDScalarWaveFO
+# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/IDScalarWaveFO/src/make.code.defn,v 1.1 2003/06/18 18:24:29 schnetter Exp $
+
+# Source files in this directory
+SRCS = initialdata.F77
+
+# Subdirectories containing source files
+SUBDIRS =
+