diff options
Diffstat (limited to 'CarpetExtra/HydroToy')
-rw-r--r-- | CarpetExtra/HydroToy/par/convtest.gnuplot | 8 | ||||
-rw-r--r-- | CarpetExtra/HydroToy/par/hydrotoy_periodic.par | 22 | ||||
-rw-r--r-- | CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse.par | 22 | ||||
-rw-r--r-- | CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl2.par | 22 | ||||
-rw-r--r-- | CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl3.par | 22 | ||||
-rw-r--r-- | CarpetExtra/HydroToy/par/hydrotoy_periodic_rl2.par | 22 | ||||
-rw-r--r-- | CarpetExtra/HydroToy/par/hydrotoy_periodic_rl3.par | 22 | ||||
-rw-r--r-- | CarpetExtra/HydroToy/src/HydroToy.F77 | 52 |
8 files changed, 103 insertions, 89 deletions
diff --git a/CarpetExtra/HydroToy/par/convtest.gnuplot b/CarpetExtra/HydroToy/par/convtest.gnuplot index 0cb0cc29c..15eb3716b 100644 --- a/CarpetExtra/HydroToy/par/convtest.gnuplot +++ b/CarpetExtra/HydroToy/par/convtest.gnuplot @@ -9,17 +9,17 @@ omega=sqrt(kx**2 + ky**2 + kz**2) # without refinement # solutions -p "hydrotoy_periodic/u.zl" u 8:($1==time&&$3==0?$9:0/0) w lp, "hydrotoy_periodic_coarse/u.zl" u (2*$8):(2*$1==time&&$3==0?$9:0/0) w lp, cos((kz*(0.3*x-9) + omega*(0.15*time))*pi) w l +p "hydrotoy_periodic/u.zl" u ($8-1):($1==time&&$3==0?$9:0/0) w lp, "hydrotoy_periodic_coarse/u.zl" u (2*($8-1)):(2*$1==time&&$3==0?$9:0/0) w lp, cos((kz*(0.3*x-9) + omega*(0.15*time))*pi) w l # errors -p "hydrotoy_periodic/u.zl" u 8:($1==time&&$3==0?$9-cos((kz*(0.3*$8-9) + omega*(0.15*time))*pi):0/0) w lp, "hydrotoy_periodic_coarse/u.zl" u (2*$8):(2*$1==time&&$3==0?$9-cos((kz*(0.3*(2*$8)-9) + omega*(0.15*time))*pi):0/0) w lp +p "hydrotoy_periodic/u.zl" u ($8-1):($1==time&&$3==0?$9-cos((kz*(0.3*($8-1)-9) + omega*(0.15*time))*pi):0/0) w lp, "hydrotoy_periodic_coarse/u.zl" u (2*($8-1)):(2*$1==time&&$3==0?$9-cos((kz*(0.3*(2*($8-1))-9) + omega*(0.15*time))*pi):0/0) w lp # with refinement # solutions -p "hydrotoy_periodic_rl2/u.zl" u 8:($1==time&&$3==0?$9:0/0) w lp, "hydrotoy_periodic_coarse_rl2/u.zl" u (2*$8):(2*$1==time&&$3==0?$9:0/0) w lp, cos((kz*(0.15*x-9) + omega*(0.075*time))*pi) w l +p "hydrotoy_periodic_rl2/u.zl" u ($8-2):($1==time&&$3==0?$9:0/0) w lp, "hydrotoy_periodic_coarse_rl2/u.zl" u (2*($8-2)):(2*$1==time&&$3==0?$9:0/0) w lp, cos((kz*(0.15*x-9) + omega*(0.075*time))*pi) w l # errors -p "hydrotoy_periodic_rl2/u.zl" u 8:($1==time&&$3==0?$9-cos((kz*(0.15*$8-9) + omega*(0.075*time))*pi):0/0) w lp, "hydrotoy_periodic_coarse_rl2/u.zl" u (2*$8):(2*$1==time&&$3==0?$9-cos((kz*(0.15*(2*$8)-9) + omega*(0.075*time))*pi):0/0) w lp +p "hydrotoy_periodic_rl2/u.zl" u ($8-2):($1==time&&$3==0?$9-cos((kz*(0.15*($8-2)-9) + omega*(0.075*time))*pi):0/0) w lp, "hydrotoy_periodic_coarse_rl2/u.zl" u (2*($8-2)):(2*$1==time&&$3==0?$9-cos((kz*(0.15*(2*($8-2))-9) + omega*(0.075*time))*pi):0/0) w lp diff --git a/CarpetExtra/HydroToy/par/hydrotoy_periodic.par b/CarpetExtra/HydroToy/par/hydrotoy_periodic.par index fb5b9010b..ac96d3e85 100644 --- a/CarpetExtra/HydroToy/par/hydrotoy_periodic.par +++ b/CarpetExtra/HydroToy/par/hydrotoy_periodic.par @@ -7,7 +7,7 @@ # @enddesc # @@*/ # -# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/par/hydrotoy_periodic.par,v 1.3 2001/03/30 00:50:45 eschnett Exp $ +# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/par/hydrotoy_periodic.par,v 1.4 2001/04/23 08:10:18 schnetter Exp $ ActiveThorns = "Boundary IOBasic IOUtil Time Cart3d Carpet CarpetIOASCII CarpetIOFlexIO CarpetLib CarpetSlab IDHydroToy HydroToy" @@ -19,17 +19,19 @@ Cactus::cctk_itlast = 120 Time::dtfac = 0.5 -driver::global_nx = 32 -driver::global_ny = 46 -driver::global_nz = 62 +driver::global_nx = 34 +driver::global_ny = 48 +driver::global_nz = 64 + +driver::ghost_size = 2 grid::type = byrange -grid::xmin = -4.8 -grid::ymin = -6.6 -grid::zmin = -9.0 -grid::xmax = 4.5 -grid::ymax = 6.9 -grid::zmax = 9.3 +grid::xmin = -5.1 +grid::ymin = -6.9 +grid::zmin = -9.3 +grid::xmax = 4.8 +grid::ymax = 7.2 +grid::zmax = 9.6 grid::mode = periodic IO::outdir = "hydrotoy_periodic" diff --git a/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse.par b/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse.par index a80662039..a047c4908 100644 --- a/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse.par +++ b/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse.par @@ -7,7 +7,7 @@ # @enddesc # @@*/ # -# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse.par,v 1.2 2001/03/30 00:50:45 eschnett Exp $ +# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse.par,v 1.3 2001/04/23 08:10:18 schnetter Exp $ ActiveThorns = "Boundary IOBasic IOUtil Time Cart3d Carpet CarpetIOASCII CarpetIOFlexIO CarpetLib CarpetSlab IDHydroToy HydroToy" @@ -19,17 +19,19 @@ Cactus::cctk_itlast = 60 Time::dtfac = 0.5 -driver::global_nx = 17 -driver::global_ny = 24 -driver::global_nz = 32 +driver::global_nx = 19 +driver::global_ny = 26 +driver::global_nz = 34 + +driver::ghost_size = 2 grid::type = byrange -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::xmin = -5.4 +grid::ymin = -7.2 +grid::zmin = -9.6 +grid::xmax = 5.4 +grid::ymax = 7.8 +grid::zmax = 10.2 grid::mode = periodic IO::outdir = "hydrotoy_periodic_coarse" diff --git a/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl2.par b/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl2.par index 1588d1926..7f08bca65 100644 --- a/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl2.par +++ b/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl2.par @@ -7,7 +7,7 @@ # @enddesc # @@*/ # -# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl2.par,v 1.3 2001/03/30 00:50:45 eschnett Exp $ +# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl2.par,v 1.4 2001/04/23 08:10:18 schnetter Exp $ ActiveThorns = "Boundary IOBasic IOUtil Time Cart3d Carpet CarpetIOASCII CarpetIOFlexIO CarpetLib CarpetSlab IDHydroToy HydroToy" @@ -19,21 +19,23 @@ Cactus::cctk_itlast = 120 Time::dtfac = 0.5 -driver::global_nx = 17 -driver::global_ny = 24 -driver::global_nz = 32 +driver::global_nx = 19 +driver::global_ny = 26 +driver::global_nz = 34 + +driver::ghost_size = 2 Carpet::max_refinement_levels = 2 Carpet::prolongation_order_space= 3 Carpet::prolongation_order_time = 2 grid::type = byrange -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::xmin = -5.4 +grid::ymin = -7.2 +grid::zmin = -9.6 +grid::xmax = 5.4 +grid::ymax = 7.8 +grid::zmax = 10.2 grid::mode = periodic IO::outdir = "hydrotoy_periodic_coarse_rl2" diff --git a/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl3.par b/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl3.par index 182e537ec..5f9cf7790 100644 --- a/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl3.par +++ b/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl3.par @@ -7,7 +7,7 @@ # @enddesc # @@*/ # -# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl3.par,v 1.3 2001/03/30 00:50:45 eschnett Exp $ +# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/par/hydrotoy_periodic_coarse_rl3.par,v 1.4 2001/04/23 08:10:18 schnetter Exp $ ActiveThorns = "Boundary IOBasic IOUtil Time Cart3d Carpet CarpetIOASCII CarpetIOFlexIO CarpetLib CarpetSlab IDHydroToy HydroToy" @@ -19,21 +19,23 @@ Cactus::cctk_itlast = 240 Time::dtfac = 0.5 -driver::global_nx = 17 -driver::global_ny = 24 -driver::global_nz = 32 +driver::global_nx = 19 +driver::global_ny = 26 +driver::global_nz = 34 + +driver::ghost_size = 2 Carpet::max_refinement_levels = 3 Carpet::prolongation_order_space= 3 Carpet::prolongation_order_time = 2 grid::type = byrange -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::xmin = -5.4 +grid::ymin = -7.2 +grid::zmin = -9.6 +grid::xmax = 5.4 +grid::ymax = 7.8 +grid::zmax = 10.2 grid::mode = periodic IO::outdir = "hydrotoy_periodic_coarse_rl3" diff --git a/CarpetExtra/HydroToy/par/hydrotoy_periodic_rl2.par b/CarpetExtra/HydroToy/par/hydrotoy_periodic_rl2.par index 7bb9ca230..5b1fe7f03 100644 --- a/CarpetExtra/HydroToy/par/hydrotoy_periodic_rl2.par +++ b/CarpetExtra/HydroToy/par/hydrotoy_periodic_rl2.par @@ -7,7 +7,7 @@ # @enddesc # @@*/ # -# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/par/hydrotoy_periodic_rl2.par,v 1.3 2001/03/30 00:50:45 eschnett Exp $ +# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/par/hydrotoy_periodic_rl2.par,v 1.4 2001/04/23 08:10:18 schnetter Exp $ ActiveThorns = "Boundary IOBasic IOUtil Time Cart3d Carpet CarpetIOASCII CarpetIOFlexIO CarpetLib CarpetSlab IDHydroToy HydroToy" @@ -19,21 +19,23 @@ Cactus::cctk_itlast = 240 Time::dtfac = 0.5 -driver::global_nx = 32 -driver::global_ny = 46 -driver::global_nz = 62 +driver::global_nx = 34 +driver::global_ny = 48 +driver::global_nz = 64 + +driver::ghost_size = 2 Carpet::max_refinement_levels = 2 Carpet::prolongation_order_space= 3 Carpet::prolongation_order_time = 2 grid::type = byrange -grid::xmin = -4.8 -grid::ymin = -6.6 -grid::zmin = -9.0 -grid::xmax = 4.5 -grid::ymax = 6.9 -grid::zmax = 9.3 +grid::xmin = -5.1 +grid::ymin = -6.9 +grid::zmin = -9.3 +grid::xmax = 4.8 +grid::ymax = 7.2 +grid::zmax = 9.6 grid::mode = periodic IO::outdir = "hydrotoy_periodic_rl2" diff --git a/CarpetExtra/HydroToy/par/hydrotoy_periodic_rl3.par b/CarpetExtra/HydroToy/par/hydrotoy_periodic_rl3.par index dd82cc821..d1fd53bbb 100644 --- a/CarpetExtra/HydroToy/par/hydrotoy_periodic_rl3.par +++ b/CarpetExtra/HydroToy/par/hydrotoy_periodic_rl3.par @@ -7,7 +7,7 @@ # @enddesc # @@*/ # -# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/par/hydrotoy_periodic_rl3.par,v 1.3 2001/03/30 00:50:45 eschnett Exp $ +# $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/par/hydrotoy_periodic_rl3.par,v 1.4 2001/04/23 08:10:18 schnetter Exp $ ActiveThorns = "Boundary IOBasic IOUtil Time Cart3d Carpet CarpetIOASCII CarpetIOFlexIO CarpetLib CarpetSlab IDHydroToy HydroToy" @@ -19,21 +19,23 @@ Cactus::cctk_itlast = 480 Time::dtfac = 0.5 -driver::global_nx = 32 -driver::global_ny = 46 -driver::global_nz = 62 +driver::global_nx = 34 +driver::global_ny = 48 +driver::global_nz = 64 + +driver::ghost_size = 2 Carpet::max_refinement_levels = 3 Carpet::prolongation_order_space= 3 Carpet::prolongation_order_time = 2 grid::type = byrange -grid::xmin = -4.8 -grid::ymin = -6.6 -grid::zmin = -9.0 -grid::xmax = 4.5 -grid::ymax = 6.9 -grid::zmax = 9.3 +grid::xmin = -5.1 +grid::ymin = -6.9 +grid::zmin = -9.3 +grid::xmax = 4.8 +grid::ymax = 7.2 +grid::zmax = 9.6 grid::mode = periodic IO::outdir = "hydrotoy_periodic_rl3" diff --git a/CarpetExtra/HydroToy/src/HydroToy.F77 b/CarpetExtra/HydroToy/src/HydroToy.F77 index dcffc75f9..4797162c4 100644 --- a/CarpetExtra/HydroToy/src/HydroToy.F77 +++ b/CarpetExtra/HydroToy/src/HydroToy.F77 @@ -1,5 +1,5 @@ c -*-Fortran-*- -c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/src/HydroToy.F77,v 1.4 2001/03/26 02:28:36 eschnett Exp $ +c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/HydroToy/src/HydroToy.F77,v 1.5 2001/04/23 08:10:19 schnetter Exp $ #include "cctk.h" #include "cctk_Parameters.h" @@ -22,10 +22,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_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) end do end do @@ -59,10 +59,10 @@ c Copy do j=1,cctk_lsh(2) do i=1,cctk_lsh(1) - 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) + 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 @@ -76,10 +76,10 @@ c Average do j=1,cctk_lsh(2) do i=1,cctk_lsh(1) - 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)) + 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)) end do end do @@ -109,20 +109,20 @@ c Apply boundaries dt = CCTK_DELTA_TIME c Evolve - do k=2,cctk_lsh(3)-1 - do j=2,cctk_lsh(2)-1 - do i=2,cctk_lsh(1)-1 + 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) - u_n(i,j,k) = u_i(i,j,k) + u(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_n(i,j,k) = vx_i(i,j,k) + vx(i,j,k) = vx_i(i,j,k) $ + dt * (u_i(i+1,j,k) - u_i(i-1,j,k)) / (2*dx) - vy_n(i,j,k) = vy_i(i,j,k) + vy(i,j,k) = vy_i(i,j,k) $ + dt * (u_i(i,j+1,k) - u_i(i,j-1,k)) / (2*dy) - vz_n(i,j,k) = vz_i(i,j,k) + vz(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 @@ -144,15 +144,17 @@ c Evolve CCTK_REAL zero, one parameter (zero=0, one=1) - CCTK_REAL finf, npow - parameter (finf=1, npow=1) + CCTK_REAL finf + parameter (finf=1) + integer npow + parameter (npow=1) integer sw(3) integer ierr - sw(1) = 1 - sw(2) = 1 - sw(3) = 1 + sw(1) = cctk_nghostzones(1) + sw(2) = cctk_nghostzones(2) + sw(3) = cctk_nghostzones(3) c Apply boundary condition if (CCTK_EQUALS(bound, "flat")) then |