diff options
author | eschnett <> | 2001-03-01 11:40:00 +0000 |
---|---|---|
committer | eschnett <> | 2001-03-01 11:40:00 +0000 |
commit | 310f0ea48d18866b773136aed11200b6eda6378b (patch) | |
tree | 445d3e34ce8b89812994b6614f7bc9f4acbc7fe2 /CarpetExtra/IDScalarWaveFO/src |
Initial revision
darcs-hash:20010301114010-f6438-12fb8a9ffcc80e86c0a97e37b5b0dae0dbc59b79.gz
Diffstat (limited to 'CarpetExtra/IDScalarWaveFO/src')
-rw-r--r-- | CarpetExtra/IDScalarWaveFO/src/initialdata.F77 | 61 | ||||
-rw-r--r-- | CarpetExtra/IDScalarWaveFO/src/make.code.defn | 9 |
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 = + |