aboutsummaryrefslogtreecommitdiff
path: root/CarpetExtra/HydroToy
diff options
context:
space:
mode:
authoreschnett <>2001-03-18 21:37:00 +0000
committereschnett <>2001-03-18 21:37:00 +0000
commitd3ae8e4b27664bbc9210fa49f58ceffe4336f7c1 (patch)
tree5c1657bb027d9b5d3e0758b24a4a86281baa673b /CarpetExtra/HydroToy
parent3c7bfec92c24c4ddbda2120feae35c34deff37d7 (diff)
Added HydroToy, the counterpart of SpaceTimeToy.
darcs-hash:20010318213704-f6438-25fa67cf10277b9aed6ee4c2addb1899ad6e21c7.gz
Diffstat (limited to 'CarpetExtra/HydroToy')
-rw-r--r--CarpetExtra/HydroToy/interface.ccl5
-rw-r--r--CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse.par37
-rw-r--r--CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl2.par41
-rw-r--r--CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl3.par41
-rw-r--r--CarpetExtra/HydroToy/param.ccl9
-rw-r--r--CarpetExtra/HydroToy/schedule.ccl15
-rw-r--r--CarpetExtra/HydroToy/src/HydroToy.F7767
-rw-r--r--CarpetExtra/HydroToy/src/InitSymBound.F773
8 files changed, 84 insertions, 134 deletions
diff --git a/CarpetExtra/HydroToy/interface.ccl b/CarpetExtra/HydroToy/interface.ccl
index 09e8bf099..64e09a47a 100644
--- a/CarpetExtra/HydroToy/interface.ccl
+++ b/CarpetExtra/HydroToy/interface.ccl
@@ -1,14 +1,13 @@
# Interface definition for thorn HydroToy
-# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/interface.ccl,v 1.3 2001/12/07 18:27:08 schnetter Exp $
+# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/interface.ccl,v 1.1 2001/03/18 22:37:09 eschnett Exp $
implements: hydrotoy
-inherits: boundary grid
public:
-CCTK_REAL hydroevolve type=GF timelevels=3
+CCTK_REAL hydroevolve type=GF timelevels=2
{
u vx vy vz
} "The evolve hydro fields"
diff --git a/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse.par b/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse.par
index 7a27a685e..317d16f01 100644
--- a/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse.par
+++ b/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse.par
@@ -7,40 +7,34 @@
# @enddesc
# @@*/
#
-# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse.par,v 1.7 2004/03/23 12:00:04 schnetter Exp $
+# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse.par,v 1.1 2001/03/18 22:37:09 eschnett Exp $
-ActiveThorns = "Boundary IOBasic IOUtil Time Cart3d Carpet CarpetIOASCII CarpetIOFlexIO CarpetLib CarpetReduce CarpetRegrid CarpetSlab IDHydroToy HydroToy"
-
-Carpet::poison_new_timelevels = yes
-Carpet::check_for_poison = yes
-Carpet::checksum_timelevels = yes
+ActiveThorns = "Boundary IOBasic IOUtil Time Cart3d Carpet CarpetIOASCII CarpetIOFlexIO CarpetLib CarpetSlab IDHydroToy HydroToy"
Cactus::cctk_itlast = 60
Time::dtfac = 0.5
-driver::global_nx = 19
-driver::global_ny = 26
-driver::global_nz = 34
-
-driver::ghost_size = 2
+driver::global_nx = 17
+driver::global_ny = 24
+driver::global_nz = 32
grid::type = byrange
-grid::xmin = -5.4
-grid::ymin = -7.2
-grid::zmin = -9.6
-grid::xmax = 5.4
-grid::ymax = 7.8
-grid::zmax = 10.2
+grid::xmin = -4.8
+grid::ymin = -6.6
+grid::zmin = -9.0
+grid::xmax = 4.8
+grid::ymax = 7.2
+grid::zmax = 9.6
grid::mode = periodic
-IO::out_dir = "hydrotoy_periodic_coarse"
+IO::outdir = "hydrotoy_periodic_coarse"
IOBasic::outinfo_every = 1 # 10
-IOBasic::outinfo_vars = "hydrotoy::hydroevolve"
+#IOBasic::outinfo_vars = "hydrotoy::hydroevolve"
-IOBasic::outScalar_every = 1 # 2
-IOBasic::outScalar_vars = "hydrotoy::hydroevolve"
+#IOBasic::outScalar_every = 2
+#IOBasic::outScalar_vars = "hydrotoy::hydroevolve"
IOASCII::out1D_every = 1 # 2
IOASCII::out1D_vars = "hydrotoy::hydroevolve grid::coordinates"
@@ -48,7 +42,6 @@ IOASCII::out1D_vars = "hydrotoy::hydroevolve grid::coordinates"
IOFlexIO::out3D_every = 12
IOFlexIO::out3D_vars = "hydrotoy::hydroevolve"
IOFlexIO::out3D_format = IEEE
-IOFlexIO::out3D_extension = ".vcamr"
HydroToy::bound = radiation
diff --git a/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl2.par b/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl2.par
index fe9ac250a..7a2c30ea4 100644
--- a/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl2.par
+++ b/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl2.par
@@ -7,46 +7,36 @@
# @enddesc
# @@*/
#
-# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl2.par,v 1.8 2004/03/23 12:00:04 schnetter Exp $
+# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl2.par,v 1.1 2001/03/18 22:37:09 eschnett Exp $
-ActiveThorns = "Boundary IOBasic IOUtil Time Cart3d Carpet CarpetIOASCII CarpetIOFlexIO CarpetLib CarpetReduce CarpetRegrid CarpetSlab IDHydroToy HydroToy"
-
-Carpet::poison_new_timelevels = yes
-Carpet::check_for_poison = yes
-Carpet::checksum_timelevels = yes
+ActiveThorns = "Boundary IOBasic IOUtil Time Cart3d Carpet CarpetIOASCII CarpetIOFlexIO CarpetLib CarpetSlab IDHydroToy HydroToy"
Cactus::cctk_itlast = 120
Time::dtfac = 0.5
-driver::global_nx = 19
-driver::global_ny = 26
-driver::global_nz = 34
-
-driver::ghost_size = 2
+driver::global_nx = 17
+driver::global_ny = 24
+driver::global_nz = 32
Carpet::max_refinement_levels = 2
-Carpet::prolongation_order_space= 3
-Carpet::prolongation_order_time = 2
-
-CarpetRegrid::refinement_levels = 2
grid::type = byrange
-grid::xmin = -5.4
-grid::ymin = -7.2
-grid::zmin = -9.6
-grid::xmax = 5.4
-grid::ymax = 7.8
-grid::zmax = 10.2
+grid::xmin = -4.8
+grid::ymin = -6.6
+grid::zmin = -9.0
+grid::xmax = 4.8
+grid::ymax = 7.2
+grid::zmax = 9.6
grid::mode = periodic
-IO::out_dir = "hydrotoy_periodic_coarse_rl2"
+IO::outdir = "hydrotoy_periodic_coarse_rl2"
IOBasic::outinfo_every = 1 # 10
-IOBasic::outinfo_vars = "hydrotoy::hydroevolve"
+#IOBasic::outinfo_vars = "hydrotoy::hydroevolve"
-IOBasic::outScalar_every = 1 # 2
-IOBasic::outScalar_vars = "hydrotoy::hydroevolve"
+#IOBasic::outScalar_every = 2
+#IOBasic::outScalar_vars = "hydrotoy::hydroevolve"
IOASCII::out1D_every = 1 # 2
IOASCII::out1D_vars = "hydrotoy::hydroevolve grid::coordinates"
@@ -54,7 +44,6 @@ IOASCII::out1D_vars = "hydrotoy::hydroevolve grid::coordinates"
IOFlexIO::out3D_every = 24
IOFlexIO::out3D_vars = "hydrotoy::hydroevolve"
IOFlexIO::out3D_format = IEEE
-IOFlexIO::out3D_extension = ".vcamr"
HydroToy::bound = radiation
diff --git a/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl3.par b/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl3.par
index 4229b977f..f694aa369 100644
--- a/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl3.par
+++ b/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl3.par
@@ -7,46 +7,36 @@
# @enddesc
# @@*/
#
-# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl3.par,v 1.8 2004/03/23 12:00:04 schnetter Exp $
+# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl3.par,v 1.1 2001/03/18 22:37:09 eschnett Exp $
-ActiveThorns = "Boundary IOBasic IOUtil Time Cart3d Carpet CarpetIOASCII CarpetIOFlexIO CarpetLib CarpetReduce CarpetRegrid CarpetSlab IDHydroToy HydroToy"
-
-Carpet::poison_new_timelevels = yes
-Carpet::check_for_poison = yes
-Carpet::checksum_timelevels = yes
+ActiveThorns = "Boundary IOBasic IOUtil Time Cart3d Carpet CarpetIOASCII CarpetIOFlexIO CarpetLib CarpetSlab IDHydroToy HydroToy"
Cactus::cctk_itlast = 240
Time::dtfac = 0.5
-driver::global_nx = 19
-driver::global_ny = 26
-driver::global_nz = 34
-
-driver::ghost_size = 2
+driver::global_nx = 17
+driver::global_ny = 24
+driver::global_nz = 32
Carpet::max_refinement_levels = 3
-Carpet::prolongation_order_space= 3
-Carpet::prolongation_order_time = 2
-
-CarpetRegrid::refinement_levels = 3
grid::type = byrange
-grid::xmin = -5.4
-grid::ymin = -7.2
-grid::zmin = -9.6
-grid::xmax = 5.4
-grid::ymax = 7.8
-grid::zmax = 10.2
+grid::xmin = -4.8
+grid::ymin = -6.6
+grid::zmin = -9.0
+grid::xmax = 4.8
+grid::ymax = 7.2
+grid::zmax = 9.6
grid::mode = periodic
-IO::out_dir = "hydrotoy_periodic_coarse_rl3"
+IO::outdir = "hydrotoy_periodic_coarse_rl3"
IOBasic::outinfo_every = 1 # 10
-IOBasic::outinfo_vars = "hydrotoy::hydroevolve"
+#IOBasic::outinfo_vars = "hydrotoy::hydroevolve"
-IOBasic::outScalar_every = 1 # 2
-IOBasic::outScalar_vars = "hydrotoy::hydroevolve"
+#IOBasic::outScalar_every = 2
+#IOBasic::outScalar_vars = "hydrotoy::hydroevolve"
IOASCII::out1D_every = 1 # 2
IOASCII::out1D_vars = "hydrotoy::hydroevolve grid::coordinates"
@@ -54,7 +44,6 @@ IOASCII::out1D_vars = "hydrotoy::hydroevolve grid::coordinates"
IOFlexIO::out3D_every = 48
IOFlexIO::out3D_vars = "hydrotoy::hydroevolve"
IOFlexIO::out3D_format = IEEE
-IOFlexIO::out3D_extension = ".vcamr"
HydroToy::bound = radiation
diff --git a/CarpetExtra/HydroToy/param.ccl b/CarpetExtra/HydroToy/param.ccl
index d27dbef12..52ebb4665 100644
--- a/CarpetExtra/HydroToy/param.ccl
+++ b/CarpetExtra/HydroToy/param.ccl
@@ -1,17 +1,10 @@
# Parameter definitions for thorn HydroToy
-# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/param.ccl,v 1.3 2001/08/26 13:59:38 schnetter Exp $
-
-restricted:
-
-BOOLEAN hydrotoy_active "Activate or deactivate the HydroToy thorn"
-{
-} "yes"
+# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/param.ccl,v 1.1 2001/03/18 22:37:09 eschnett Exp $
private:
KEYWORD bound "Type of boundary condition to use"
{
- "none" :: "No boundary condition"
"flat" :: "Flat boundary condition"
"radiation" :: "Radiation boundary condition"
"robin" :: "Robin boundary condition"
diff --git a/CarpetExtra/HydroToy/schedule.ccl b/CarpetExtra/HydroToy/schedule.ccl
index 2a1e5d536..319793a1d 100644
--- a/CarpetExtra/HydroToy/schedule.ccl
+++ b/CarpetExtra/HydroToy/schedule.ccl
@@ -1,11 +1,7 @@
# Schedule definitions for thorn HydroToy
-# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/schedule.ccl,v 1.4 2003/11/05 16:18:39 schnetter Exp $
+# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/schedule.ccl,v 1.1 2001/03/18 22:37:09 eschnett Exp $
-if (hydrotoy_active) {
-
-
-
-STORAGE: hydroevolve[3]
+STORAGE: hydroevolve
@@ -33,13 +29,10 @@ schedule HydroToy_EulerPredictor at EVOL
SYNC: hydroevolve
} "Euler predictor step"
-schedule HydroToy_EulerCorrector at EVOL after HydroToy_EulerPredictor
+schedule HydroToy_EulerCorrector at EVOL \
+ after HydroToy_EulerPredictor
{
LANG: Fortran
STORAGE: hydrotemps
SYNC: hydroevolve
} "Euler corrector step"
-
-
-
-}
diff --git a/CarpetExtra/HydroToy/src/HydroToy.F77 b/CarpetExtra/HydroToy/src/HydroToy.F77
index 559f66497..890c9a0a3 100644
--- a/CarpetExtra/HydroToy/src/HydroToy.F77
+++ b/CarpetExtra/HydroToy/src/HydroToy.F77
@@ -1,10 +1,9 @@
c -*-Fortran-*-
-c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/src/HydroToy.F77,v 1.7 2003/11/05 16:18:39 schnetter Exp $
+c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/src/HydroToy.F77,v 1.1 2001/03/18 22:37:09 eschnett Exp $
#include "cctk.h"
-#include "cctk_Arguments.h"
-#include "cctk_Functions.h"
#include "cctk_Parameters.h"
+#include "cctk_Arguments.h"
@@ -23,10 +22,10 @@ c Copy
do j=1,cctk_lsh(2)
do i=1,cctk_lsh(1)
- u_i(i,j,k) = u_p(i,j,k)
- vx_i(i,j,k) = vx_p(i,j,k)
- vy_i(i,j,k) = vy_p(i,j,k)
- vz_i(i,j,k) = vz_p(i,j,k)
+ u_i(i,j,k) = u(i,j,k)
+ vx_i(i,j,k) = vx(i,j,k)
+ vy_i(i,j,k) = vy(i,j,k)
+ vz_i(i,j,k) = vz(i,j,k)
end do
end do
@@ -60,10 +59,10 @@ c Copy
do j=1,cctk_lsh(2)
do i=1,cctk_lsh(1)
- u_i(i,j,k) = u(i,j,k)
- vx_i(i,j,k) = vx(i,j,k)
- vy_i(i,j,k) = vy(i,j,k)
- vz_i(i,j,k) = vz(i,j,k)
+ u_i(i,j,k) = u_n(i,j,k)
+ vx_i(i,j,k) = vx_n(i,j,k)
+ vy_i(i,j,k) = vy_n(i,j,k)
+ vz_i(i,j,k) = vz_n(i,j,k)
end do
end do
@@ -77,10 +76,10 @@ c Average
do j=1,cctk_lsh(2)
do i=1,cctk_lsh(1)
- u(i,j,k) = half * (u_p(i,j,k) + u(i,j,k))
- vx(i,j,k) = half * (vx_p(i,j,k) + vx(i,j,k))
- vy(i,j,k) = half * (vy_p(i,j,k) + vy(i,j,k))
- vz(i,j,k) = half * (vz_p(i,j,k) + vz(i,j,k))
+ u_n(i,j,k) = half * (u(i,j,k) + u_n(i,j,k))
+ vx_n(i,j,k) = half * (vx(i,j,k) + vx_n(i,j,k))
+ vy_n(i,j,k) = half * (vy(i,j,k) + vy_n(i,j,k))
+ vz_n(i,j,k) = half * (vz(i,j,k) + vz_n(i,j,k))
end do
end do
@@ -110,20 +109,20 @@ c Apply boundaries
dt = CCTK_DELTA_TIME
c Evolve
- do k=1+cctk_nghostzones(3),cctk_lsh(3)-cctk_nghostzones(3)
- do j=1+cctk_nghostzones(2),cctk_lsh(2)-cctk_nghostzones(2)
- do i=1+cctk_nghostzones(1),cctk_lsh(1)-cctk_nghostzones(1)
+ do k=1,cctk_lsh(3)
+ do j=1,cctk_lsh(2)
+ do i=1,cctk_lsh(1)
- u(i,j,k) = u_i(i,j,k)
+ u_n(i,j,k) = u_i(i,j,k)
$ + dt * (vx_i(i+1,j,k) - vx_i(i-1,j,k)) / (2*dx)
$ + dt * (vy_i(i,j+1,k) - vy_i(i,j-1,k)) / (2*dy)
$ + dt * (vz_i(i,j,k+1) - vz_i(i,j,k-1)) / (2*dz)
- vx(i,j,k) = vx_i(i,j,k)
+ vx_n(i,j,k) = vx_i(i,j,k)
$ + dt * (u_i(i+1,j,k) - u_i(i-1,j,k)) / (2*dx)
- vy(i,j,k) = vy_i(i,j,k)
+ vy_n(i,j,k) = vy_i(i,j,k)
$ + dt * (u_i(i,j+1,k) - u_i(i,j-1,k)) / (2*dy)
- vz(i,j,k) = vz_i(i,j,k)
+ vz_n(i,j,k) = vz_i(i,j,k)
$ + dt * (u_i(i,j,k+1) - u_i(i,j,k-1)) / (2*dz)
end do
@@ -145,23 +144,21 @@ c Evolve
CCTK_REAL zero, one
parameter (zero=0, one=1)
- CCTK_REAL finf
- parameter (finf=1)
- integer npow
- parameter (npow=1)
+ CCTK_REAL finf, npow
+ parameter (finf=1, npow=1)
integer sw(3)
integer ierr
- sw(1) = cctk_nghostzones(1)
- sw(2) = cctk_nghostzones(2)
- sw(3) = cctk_nghostzones(3)
+ sw(1) = 1
+ sw(2) = 1
+ sw(3) = 1
c Apply boundary condition
if (CCTK_EQUALS(bound, "flat")) then
call BndFlatGN (ierr, cctkGH, sw, "hydrotoy::hydroevolve")
else if (CCTK_EQUALS(bound, "zero")) then
- call BndScalarGN (ierr, cctkGH, sw, zero,
+ call BndScalarGN (ierr, cctkGH, zero, sw,
$ "hydrotoy::hydroevolve")
else if (CCTK_EQUALS(bound, "radiation")) then
call BndRadiativeGN (ierr, cctkGH, sw, zero, one,
@@ -169,14 +166,12 @@ c Apply boundary condition
else if (CCTK_EQUALS(bound, "robin")) then
call BndRobinGN (ierr, cctkGH, sw, finf, npow,
$ "hydrotoy::hydroevolve")
- else if (CCTK_EQUALS(bound, "none")) then
- ierr = 0
else
- call CCTK_WARN (0, "internal error")
- end if
- if (ierr .lt. 0) then
- call CCTK_WARN (0, "Error while applying boundary condition")
+ call CCTK_WARN (0, "Internal error")
end if
+c$$$ if (ierr .lt. 0) then
+c$$$ call CCTK_WARN (0, "Error while applying boundary condition")
+c$$$ end if
call Cart3dSymGN (ierr, cctkGH, "hydrotoy::hydroevolve")
if (ierr .lt. 0) then
diff --git a/CarpetExtra/HydroToy/src/InitSymBound.F77 b/CarpetExtra/HydroToy/src/InitSymBound.F77
index 20fb46456..af1ff6448 100644
--- a/CarpetExtra/HydroToy/src/InitSymBound.F77
+++ b/CarpetExtra/HydroToy/src/InitSymBound.F77
@@ -1,9 +1,8 @@
c -*-Fortran-*-
-c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/src/InitSymBound.F77,v 1.3 2003/11/05 16:18:39 schnetter Exp $
+c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/src/InitSymBound.F77,v 1.1 2001/03/18 22:37:09 eschnett Exp $
#include "cctk.h"
#include "cctk_Arguments.h"
-#include "cctk_Functions.h"
#include "cctk_Parameters.h"
subroutine HydroToy_InitSymBound (CCTK_ARGUMENTS)