aboutsummaryrefslogtreecommitdiff
path: root/CarpetExtra/IDScalarWaveMoL/src
diff options
context:
space:
mode:
authorschnetter <>2003-06-18 16:24:00 +0000
committerschnetter <>2003-06-18 16:24:00 +0000
commitea0d204e9bfe5daa6123970f2c1c323bd7e75b36 (patch)
treec48a4a122dfec847afa10475dd19ac1b94617e39 /CarpetExtra/IDScalarWaveMoL/src
parent343af5d6432feecd65a217c3cb1731394b55d315 (diff)
Major update after a quiet time.
Major update after a quiet time. Carpet: The flesh now has new cGH fields cctk_levoff[], cctk_levoffdenom[], and cctk_timefac that describe the spatial offset and temporal refinement factor between the base and the current refinement level. These fields are now set and used; they change how coordinates are handled. CarpetIOASCII: Fix bugs regarding choosing the output hyperslab and the output coordinates. ID*, *Toy*: New WaveToy examples with various formulations and different integrations methods. Currently, none of them converge to second order except the standard WaveToy formulation. These updates require the recent flesh, base thorn (and MoL) updates. darcs-hash:20030618162427-07bb3-70761f74bce6ae246b5a2943a385647657d46d34.gz
Diffstat (limited to 'CarpetExtra/IDScalarWaveMoL/src')
-rw-r--r--CarpetExtra/IDScalarWaveMoL/src/errors.F773
-rw-r--r--CarpetExtra/IDScalarWaveMoL/src/initialdata.F7748
2 files changed, 17 insertions, 34 deletions
diff --git a/CarpetExtra/IDScalarWaveMoL/src/errors.F77 b/CarpetExtra/IDScalarWaveMoL/src/errors.F77
index a47394f84..8bfeac41c 100644
--- a/CarpetExtra/IDScalarWaveMoL/src/errors.F77
+++ b/CarpetExtra/IDScalarWaveMoL/src/errors.F77
@@ -1,8 +1,7 @@
-c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/IDScalarWaveMoL/src/errors.F77,v 1.2 2003/11/05 16:18:40 schnetter Exp $
+c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/IDScalarWaveMoL/src/errors.F77,v 1.1 2003/06/18 18:24:29 schnetter Exp $
#include "cctk.h"
#include "cctk_Arguments.h"
-#include "cctk_Functions.h"
#include "cctk_Parameters.h"
subroutine IDScalarWaveMoL_Errors (CCTK_ARGUMENTS)
diff --git a/CarpetExtra/IDScalarWaveMoL/src/initialdata.F77 b/CarpetExtra/IDScalarWaveMoL/src/initialdata.F77
index f8385b48a..1e7f5923c 100644
--- a/CarpetExtra/IDScalarWaveMoL/src/initialdata.F77
+++ b/CarpetExtra/IDScalarWaveMoL/src/initialdata.F77
@@ -1,8 +1,7 @@
-c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/IDScalarWaveMoL/src/initialdata.F77,v 1.3 2003/11/05 16:18:40 schnetter Exp $
+c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/IDScalarWaveMoL/src/initialdata.F77,v 1.1 2003/06/18 18:24:29 schnetter Exp $
#include "cctk.h"
#include "cctk_Arguments.h"
-#include "cctk_Functions.h"
#include "cctk_Parameters.h"
subroutine IDScalarWaveMoL_InitialData (CCTK_ARGUMENTS)
@@ -13,37 +12,22 @@ c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/IDScalarWaveMoL/src/in
CCTK_REAL pi
parameter (pi = 3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117068d0)
CCTK_REAL omega
- CCTK_REAL tmp
integer i, j, k
- if (CCTK_EQUALS(initial_data, "plane wave")) 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)
- tmp = 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)
- phi(i,j,k) = amplitude * cos (2*pi * tmp)
- psi(i,j,k) = - amplitude * 2*pi * omega * sin (2*pi * tmp)
- end do
+ 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)))
+ psi(i,j,k) = - amplitude * 2*pi * omega * sin (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
- else if (CCTK_EQUALS(initial_data, "Gaussian pulse")) then
- omega = sqrt(pulse_direction(1)**2 + pulse_direction(2)**2
- $ + pulse_direction(3)**2)
- do k=1,cctk_lsh(3)
- do j=1,cctk_lsh(2)
- do i=1,cctk_lsh(1)
- tmp = pulse_direction(1)*(x(i,j,k)-pulse_offset(1))
- $ + pulse_direction(2)*(y(i,j,k)-pulse_offset(2))
- $ + pulse_direction(3)*(z(i,j,k)-pulse_offset(3))
- $ + omega*(cctk_time-time_offset)
- phi(i,j,k) = amplitude * exp (-0.5d0 * tmp**2)
- psi(i,j,k) = - tmp * omega * phi(i,j,k)
- end do
- end do
- end do
- end if
+ end do
end