aboutsummaryrefslogtreecommitdiff
path: root/CarpetExtra/WaveToyFO
diff options
context:
space:
mode:
Diffstat (limited to 'CarpetExtra/WaveToyFO')
-rw-r--r--CarpetExtra/WaveToyFO/interface.ccl10
-rw-r--r--CarpetExtra/WaveToyFO/schedule.ccl29
-rw-r--r--CarpetExtra/WaveToyFO/src/boundaries.F778
-rw-r--r--CarpetExtra/WaveToyFO/src/calcrhs.F7775
-rw-r--r--CarpetExtra/WaveToyFO/src/initsymbound.F773
-rw-r--r--CarpetExtra/WaveToyFO/src/make.code.defn4
-rw-r--r--CarpetExtra/WaveToyFO/src/registervars.F775
-rw-r--r--CarpetExtra/WaveToyFO/src/startup.F773
8 files changed, 38 insertions, 99 deletions
diff --git a/CarpetExtra/WaveToyFO/interface.ccl b/CarpetExtra/WaveToyFO/interface.ccl
index 91a6628a4..893aec679 100644
--- a/CarpetExtra/WaveToyFO/interface.ccl
+++ b/CarpetExtra/WaveToyFO/interface.ccl
@@ -1,24 +1,24 @@
# Interface definition for thorn WaveToyFO
-# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyFO/interface.ccl,v 1.4 2004/09/04 18:15:15 schnetter Exp $
+# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyFO/interface.ccl,v 1.1 2003/06/18 18:24:30 schnetter Exp $
IMPLEMENTS: WaveToyFO
-INHERITS: grid
+INHERITS: boundary grid MethodOfLines
-CCTK_INT FUNCTION Boundary_SelectGroupForBC(CCTK_POINTER_TO_CONST IN GH, \
+CCTK_INT FUNCTION Boundary_SelectGroupForBC(CCTK_POINTER IN GH, \
CCTK_INT IN faces, CCTK_INT IN boundary_width, CCTK_INT IN table_handle, \
CCTK_STRING IN group_name, CCTK_STRING IN bc_name)
-REQUIRES FUNCTION Boundary_SelectGroupForBC
+USES FUNCTION Boundary_SelectGroupForBC
CCTK_INT FUNCTION MoLRegisterEvolvedGroup(CCTK_INT IN EvolvedIndex, \
CCTK_INT IN RHSIndex)
-REQUIRES FUNCTION MoLRegisterEvolvedGroup
+USES FUNCTION MoLRegisterEvolvedGroup
diff --git a/CarpetExtra/WaveToyFO/schedule.ccl b/CarpetExtra/WaveToyFO/schedule.ccl
index 85ec91def..4b014b0b3 100644
--- a/CarpetExtra/WaveToyFO/schedule.ccl
+++ b/CarpetExtra/WaveToyFO/schedule.ccl
@@ -1,5 +1,5 @@
# Schedule definitions for thorn WaveToyFO
-# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyFO/schedule.ccl,v 1.6 2004/05/06 14:21:18 schnetter Exp $
+# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyFO/schedule.ccl,v 1.1 2003/06/18 18:24:30 schnetter Exp $
STORAGE: scalarevolve[3]
STORAGE: scalarevolvedot
@@ -17,7 +17,7 @@ SCHEDULE WaveToyFO_InitSymBound AT basegrid
OPTIONS: global
} "Schedule symmetries"
-SCHEDULE WaveToyFO_RegisterVars IN MoL_Register
+SCHEDULE WaveToyFO_RegisterVars IN FO_Register
{
LANG: Fortran
OPTIONS: global
@@ -25,44 +25,29 @@ SCHEDULE WaveToyFO_RegisterVars IN MoL_Register
-SCHEDULE WaveToyFO_CalcRHS IN MoL_CalcRHS
+SCHEDULE WaveToyFO_CalcRHS IN FO_CalcRHS
{
LANG: Fortran
} "Calculate RHS for FO"
-SCHEDULE WaveToyFO_RHSBoundaries IN MoL_CalcRHS AFTER WaveToyFO_CalcRHS
-{
- LANG: Fortran
- SYNC: scalarevolvedot
- OPTIONS: level
-} "Select RHS boundary conditions in FO"
-
-SCHEDULE GROUP ApplyBCs IN MoL_CalcRHS AFTER WaveToyFO_RHSBoundaries
-{
-} "Apply RHSboundary conditions in FO"
-
-
-
-SCHEDULE WaveToyFO_Boundaries IN MoL_PostStep
+SCHEDULE WaveToyFO_Boundaries IN FO_PostStep
{
LANG: Fortran
SYNC: scalarevolve
- OPTIONS: level
} "Select boundary conditions in FO"
-SCHEDULE GROUP ApplyBCs IN MoL_PostStep AFTER WaveToyFO_Boundaries
+SCHEDULE GROUP ApplyBCs IN FO_PostStep AFTER WaveToyFO_Boundaries
{
} "Apply boundary conditions in FO"
-SCHEDULE WaveToyFO_Boundaries AT POSTRESTRICT
+SCHEDULE WaveToyFO_Boundaries IN postrestrict
{
LANG: Fortran
SYNC: scalarevolve
- OPTIONS: level
} "Select boundary conditions after restricting"
-SCHEDULE GROUP ApplyBCs AT POSTRESTRICT AFTER WaveToyFO_Boundaries
+SCHEDULE GROUP ApplyBCs IN postrestrict AFTER WaveToyFO_Boundaries
{
} "Apply boundary conditions after restricting"
diff --git a/CarpetExtra/WaveToyFO/src/boundaries.F77 b/CarpetExtra/WaveToyFO/src/boundaries.F77
index d2a0b03e2..b5ed40ddb 100644
--- a/CarpetExtra/WaveToyFO/src/boundaries.F77
+++ b/CarpetExtra/WaveToyFO/src/boundaries.F77
@@ -1,8 +1,8 @@
-c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyFO/src/boundaries.F77,v 1.3 2004/05/06 14:21:18 schnetter Exp $
+c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyFO/src/boundaries.F77,v 1.1 2003/06/18 18:24:30 schnetter Exp $
#include "cctk.h"
#include "cctk_Arguments.h"
-#include "cctk_Functions.h"
+#include "cctk_Faces.h"
#include "cctk_Parameters.h"
subroutine WaveToyFO_Boundaries (CCTK_ARGUMENTS)
@@ -10,6 +10,8 @@ c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyFO/src/boundari
DECLARE_CCTK_ARGUMENTS
DECLARE_CCTK_FUNCTIONS
DECLARE_CCTK_PARAMETERS
+ external Boundary_SelectGroupForBC
+ CCTK_INT Boundary_SelectGroupForBC
CCTK_INT bndwidth
parameter (bndwidth = 1)
character fbound*100
@@ -20,4 +22,6 @@ c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyFO/src/boundari
ierr = Boundary_SelectGroupForBC(cctkGH, CCTK_ALL_FACES, bndwidth, -1,
$ "WaveToyFO::scalarevolve", fbound);
if (ierr.ne.0) call CCTK_WARN (0, "internal error")
+ call CartSymGN (ierr, cctkGH, "WaveToyFO::scalarevolve")
+ if (ierr.ne.0) call CCTK_WARN (0, "internal error")
end
diff --git a/CarpetExtra/WaveToyFO/src/calcrhs.F77 b/CarpetExtra/WaveToyFO/src/calcrhs.F77
index 55734ed1e..46366f5bb 100644
--- a/CarpetExtra/WaveToyFO/src/calcrhs.F77
+++ b/CarpetExtra/WaveToyFO/src/calcrhs.F77
@@ -1,65 +1,23 @@
-c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyFO/src/calcrhs.F77,v 1.8 2004/08/28 19:10:33 schnetter Exp $
+c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyFO/src/calcrhs.F77,v 1.1 2003/06/18 18:24:30 schnetter Exp $
#include "cctk.h"
#include "cctk_Arguments.h"
-#include "cctk_Functions.h"
#include "cctk_Parameters.h"
-
-
-
- function WaveToyFO_Deriv (fm2, fm1, f0, fp1, fp2, dx, dir)
- implicit none
- CCTK_REAL WaveToyFO_Deriv
- CCTK_REAL fm2, fm1, f0, fp1, fp2
- CCTK_REAL dx
- integer dir
-
- if (dir .eq. 0) then
- WaveToyFO_Deriv = (fp1 - fm1) / (2 * dx)
- else if (dir .eq. -1) then
-c Use first order one-sided derivatives here.
-c These are less dissipative than second order one-sided derivatives.
-c (Sic.)
- WaveToyFO_Deriv = (f0 - fm1) / dx
-c$$$ WaveToyFO_Deriv = (+ 3*f0 - 4*fm1 + fm2) / (2*dx)
- else if (dir .eq. +1) then
- WaveToyFO_Deriv = (fp1 - f0) / dx
-c$$$ WaveToyFO_Deriv = (- 3*f0 + 4*fp1 - fp2) / (2*dx)
- else
- call CCTK_WARN (0, "internal error")
- end if
-
- end
-
-
-
-#define CHOOSEDIR(i,imin,imax) ((min(i+1,imax) - (i+1)) + (max(i-1,imin) - (i-1)))
-
-#define DIFFX(var,i,j,k) WaveToyFO_Deriv(var((i)-2,j,k), var((i)-1,j,k), var(i,j,k), var((i)+1,j,k), var((i)+2,j,k), dx(1), idir(1))
-#define DIFFY(var,i,j,k) WaveToyFO_Deriv(var(i,(j)-2,k), var(i,(j)-1,k), var(i,j,k), var(i,(j)+1,k), var(i,(j)+2,k), dx(2), idir(2))
-#define DIFFZ(var,i,j,k) WaveToyFO_Deriv(var(i,j,(k)-2), var(i,j,(k)-1), var(i,j,k), var(i,j,(k)+1), var(i,j,(k)+2), dx(3), idir(3))
-
-
-
+
subroutine WaveToyFO_CalcRHS (CCTK_ARGUMENTS)
implicit none
DECLARE_CCTK_ARGUMENTS
DECLARE_CCTK_FUNCTIONS
DECLARE_CCTK_PARAMETERS
-
CCTK_REAL dx(3)
integer bndwidth(3)
- integer imin(3), imax(3), idir(3)
+ integer imin(3), imax(3)
integer i, j, k
integer d
-
- external WaveToyFO_Deriv
- CCTK_REAL WaveToyFO_Deriv
-
+ integer ierr
do d=1,3
- bndwidth(d) = 0
+ bndwidth(d) = 1
end do
-
do d=1,3
if (cctk_bbox(2*d).ne.0) then
imin(d) = 1+bndwidth(d)
@@ -72,27 +30,20 @@ c$$$ WaveToyFO_Deriv = (- 3*f0 + 4*fp1 - fp2) / (2*dx)
imax(d) = cctk_lsh(d)-cctk_nghostzones(d)
end if
end do
-
do d=1,3
- dx(d) = CCTK_DELTA_SPACE(d)
+ dx(d) = CCTK_DELTA_SPACE(3)
end do
-
do k=imin(3),imax(3)
- idir(3) = CHOOSEDIR(k,imin(3),imax(3))
do j=imin(2),imax(2)
- idir(2) = CHOOSEDIR(j,imin(2),imax(2))
do i=imin(1),imax(1)
- idir(1) = CHOOSEDIR(i,imin(1),imax(1))
-
- phidot(i,j,k) = DIFFX (psix,i,j,k)
- $ + DIFFY (psiy,i,j,k)
- $ + DIFFZ (psiz,i,j,k)
- psixdot(i,j,k) = DIFFX (phi,i,j,k)
- psiydot(i,j,k) = DIFFY (phi,i,j,k)
- psizdot(i,j,k) = DIFFZ (phi,i,j,k)
-
+ phidot(i,j,k) =
+ $ ( (psix(i+1,j,k) - psix(i-1,j,k)) / (2*dx(1))
+ $ + (psix(i,j+1,k) - psix(i,j-1,k)) / (2*dx(2))
+ $ + (psix(i,j,k+1) - psix(i,j,k-1)) / (2*dx(3)))
+ psixdot(i,j,k) = (phi(i+1,j,k) - phi(i-1,j,k)) / (2*dx(1))
+ psiydot(i,j,k) = (phi(i,j+1,k) - phi(i,j-1,k)) / (2*dx(2))
+ psizdot(i,j,k) = (phi(i,j,k+1) - phi(i,j,k-1)) / (2*dx(3))
end do
end do
end do
-
end
diff --git a/CarpetExtra/WaveToyFO/src/initsymbound.F77 b/CarpetExtra/WaveToyFO/src/initsymbound.F77
index 00ab7ef85..5c1c7eef5 100644
--- a/CarpetExtra/WaveToyFO/src/initsymbound.F77
+++ b/CarpetExtra/WaveToyFO/src/initsymbound.F77
@@ -1,8 +1,7 @@
-c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyFO/src/initsymbound.F77,v 1.2 2003/10/27 15:31:41 schnetter Exp $
+c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyFO/src/initsymbound.F77,v 1.1 2003/06/18 18:24:30 schnetter Exp $
#include "cctk.h"
#include "cctk_Arguments.h"
-#include "cctk_Functions.h"
#include "cctk_Parameters.h"
subroutine WaveToyFO_InitSymBound (CCTK_ARGUMENTS)
diff --git a/CarpetExtra/WaveToyFO/src/make.code.defn b/CarpetExtra/WaveToyFO/src/make.code.defn
index 6e92555b6..9251b378b 100644
--- a/CarpetExtra/WaveToyFO/src/make.code.defn
+++ b/CarpetExtra/WaveToyFO/src/make.code.defn
@@ -1,8 +1,8 @@
# Main make.code.defn file for thorn WaveToyFO
-# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyFO/src/make.code.defn,v 1.4 2004/09/04 18:15:15 schnetter Exp $
+# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyFO/src/make.code.defn,v 1.1 2003/06/18 18:24:30 schnetter Exp $
# Source files in this directory
-SRCS = boundaries.F77 calcrhs.F77 initsymbound.F77 registervars.F77 rhsboundaries.F77 startup.F77
+SRCS = boundaries.F77 calcrhs.F77 initsymbound.F77 registervars.F77 startup.F77
# Subdirectories containing source files
SUBDIRS =
diff --git a/CarpetExtra/WaveToyFO/src/registervars.F77 b/CarpetExtra/WaveToyFO/src/registervars.F77
index 6f3bd41af..0f6391afe 100644
--- a/CarpetExtra/WaveToyFO/src/registervars.F77
+++ b/CarpetExtra/WaveToyFO/src/registervars.F77
@@ -1,8 +1,7 @@
-c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyFO/src/registervars.F77,v 1.2 2003/10/27 15:31:41 schnetter Exp $
+c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyFO/src/registervars.F77,v 1.1 2003/06/18 18:24:30 schnetter Exp $
#include "cctk.h"
#include "cctk_Arguments.h"
-#include "cctk_Functions.h"
#include "cctk_Parameters.h"
subroutine WaveToyFO_RegisterVars (CCTK_ARGUMENTS)
@@ -10,6 +9,8 @@ c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyFO/src/register
DECLARE_CCTK_ARGUMENTS
DECLARE_CCTK_FUNCTIONS
DECLARE_CCTK_PARAMETERS
+ external MolRegisterEvolvedGroup
+ CCTK_INT MolRegisterEvolvedGroup
integer group, groupdot
integer ierr
call CCTK_GroupIndex(group, "WaveToyFO::scalarevolve")
diff --git a/CarpetExtra/WaveToyFO/src/startup.F77 b/CarpetExtra/WaveToyFO/src/startup.F77
index ae38706af..166796537 100644
--- a/CarpetExtra/WaveToyFO/src/startup.F77
+++ b/CarpetExtra/WaveToyFO/src/startup.F77
@@ -1,7 +1,6 @@
-c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyFO/src/startup.F77,v 1.2 2003/10/27 15:31:41 schnetter Exp $
+c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/WaveToyFO/src/startup.F77,v 1.1 2003/06/18 18:24:30 schnetter Exp $
#include "cctk.h"
-#include "cctk_Functions.h"
#include "cctk_Parameters.h"
subroutine WaveToyFO_Startup