From d3ae8e4b27664bbc9210fa49f58ceffe4336f7c1 Mon Sep 17 00:00:00 2001 From: eschnett <> Date: Sun, 18 Mar 2001 21:37:00 +0000 Subject: Added HydroToy, the counterpart of SpaceTimeToy. darcs-hash:20010318213704-f6438-25fa67cf10277b9aed6ee4c2addb1899ad6e21c7.gz --- CarpetExtra/HydroToy/interface.ccl | 5 +- .../HydroToy/par/hydrotoy_periodic_coarse.par | 37 +++++------- .../HydroToy/par/hydrotoy_periodic_coarse_rl2.par | 41 +++++-------- .../HydroToy/par/hydrotoy_periodic_coarse_rl3.par | 41 +++++-------- CarpetExtra/HydroToy/param.ccl | 9 +-- CarpetExtra/HydroToy/schedule.ccl | 15 ++--- CarpetExtra/HydroToy/src/HydroToy.F77 | 67 ++++++++++------------ CarpetExtra/HydroToy/src/InitSymBound.F77 | 3 +- 8 files changed, 84 insertions(+), 134 deletions(-) (limited to 'CarpetExtra/HydroToy') 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) -- cgit v1.2.3