aboutsummaryrefslogtreecommitdiff
path: root/CarpetExtra/IDScalarWaveFO
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/IDScalarWaveFO
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/IDScalarWaveFO')
-rw-r--r--CarpetExtra/IDScalarWaveFO/param.ccl12
-rw-r--r--CarpetExtra/IDScalarWaveFO/schedule.ccl3
-rw-r--r--CarpetExtra/IDScalarWaveFO/src/initialdata.F7770
3 files changed, 29 insertions, 56 deletions
diff --git a/CarpetExtra/IDScalarWaveFO/param.ccl b/CarpetExtra/IDScalarWaveFO/param.ccl
index e6bc7b617..2283a5aca 100644
--- a/CarpetExtra/IDScalarWaveFO/param.ccl
+++ b/CarpetExtra/IDScalarWaveFO/param.ccl
@@ -1,15 +1,5 @@
# Parameter definitions for thorn IDScalarWaveFO
-# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/IDScalarWaveFO/param.ccl,v 1.3 2004/05/07 22:51:08 schnetter Exp $
-
-RESTRICTED:
-
-KEYWORD initial_data "Type of initial data"
-{
- "plane" :: "Plane wave"
- "noise" :: "Noise"
-} "plane"
-
-PRIVATE:
+# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/IDScalarWaveFO/param.ccl,v 1.1 2003/06/18 18:24:29 schnetter Exp $
CCTK_REAL wave_number[3] "Wave number"
{
diff --git a/CarpetExtra/IDScalarWaveFO/schedule.ccl b/CarpetExtra/IDScalarWaveFO/schedule.ccl
index 8e615a685..4b68757d8 100644
--- a/CarpetExtra/IDScalarWaveFO/schedule.ccl
+++ b/CarpetExtra/IDScalarWaveFO/schedule.ccl
@@ -1,7 +1,8 @@
# Schedule definitions for thorn IDScalarWaveFO
-# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/IDScalarWaveFO/schedule.ccl,v 1.3 2004/01/11 12:20:39 schnetter Exp $
+# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/IDScalarWaveFO/schedule.ccl,v 1.1 2003/06/18 18:24:29 schnetter Exp $
SCHEDULE IDScalarWaveFO_InitialData AT initial
{
LANG: Fortran
+ STORAGE: WaveToyFO::scalarevolve[1]
} "Initial data for the scalar field"
diff --git a/CarpetExtra/IDScalarWaveFO/src/initialdata.F77 b/CarpetExtra/IDScalarWaveFO/src/initialdata.F77
index e2808d54f..15d6e0934 100644
--- a/CarpetExtra/IDScalarWaveFO/src/initialdata.F77
+++ b/CarpetExtra/IDScalarWaveFO/src/initialdata.F77
@@ -1,8 +1,7 @@
-c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/IDScalarWaveFO/src/initialdata.F77,v 1.5 2004/05/07 22:51:08 schnetter Exp $
+c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/IDScalarWaveFO/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 IDScalarWaveFO_InitialData (CCTK_ARGUMENTS)
@@ -14,48 +13,31 @@ c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/IDScalarWaveFO/src/ini
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
+ 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 * (2*pi)**2 * 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 * (2*pi)**2 * 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 * (2*pi)**2 * 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 if
+ end do
end