diff options
author | schnetter <> | 2004-05-21 16:16:00 +0000 |
---|---|---|
committer | schnetter <> | 2004-05-21 16:16:00 +0000 |
commit | c3a23418de64819b8209e50874e80d6e9c2ba6b4 (patch) | |
tree | 93888d562d0ba68f7f3758e2af7c6ce39a45df93 /Carpet/Carpet/src/Evolve.cc | |
parent | 7454a1ad27aed2c00226200b0d328d42d5785963 (diff) |
Introduce POSTREGRID bin.
Introduce POSTREGRID bin.
Cycle before regridding.
darcs-hash:20040521161653-07bb3-41138c718bb4fcb0b5c89ce9b3e12b1e06205ec6.gz
Diffstat (limited to 'Carpet/Carpet/src/Evolve.cc')
-rw-r--r-- | Carpet/Carpet/src/Evolve.cc | 34 |
1 files changed, 19 insertions, 15 deletions
diff --git a/Carpet/Carpet/src/Evolve.cc b/Carpet/Carpet/src/Evolve.cc index de7e35cbe..ba4eeda98 100644 --- a/Carpet/Carpet/src/Evolve.cc +++ b/Carpet/Carpet/src/Evolve.cc @@ -31,7 +31,7 @@ #include "carpet.hh" extern "C" { - static const char* rcsid = "$Header: /home/eschnett/C/carpet/Carpet/Carpet/Carpet/src/Evolve.cc,v 1.44 2004/04/18 13:29:43 schnetter Exp $"; + static const char* rcsid = "$Header: /home/eschnett/C/carpet/Carpet/Carpet/Carpet/src/Evolve.cc,v 1.45 2004/05/21 18:16:53 schnetter Exp $"; CCTK_FILEVERSION(Carpet_Carpet_Evolve_cc); } @@ -130,6 +130,19 @@ namespace Carpet { + // Advance time + ++cgh->cctk_iteration; + global_time = cctk_initial_time + + cgh->cctk_iteration * delta_time / maxreflevelfact; + cgh->cctk_time = global_time; + if ((cgh->cctk_iteration-1) + % (maxreflevelfact / ipow(reffact, reflevels-1)) == 0) { + Waypoint ("Evolving iteration %d at t=%g", + cgh->cctk_iteration, (double)cgh->cctk_time); + } + + + // Regrid for (int rl=0; rl<reflevels; ++rl) { const int do_every = maxreflevelfact / ipow(reffact, rl); @@ -141,7 +154,11 @@ namespace Carpet { Checkpoint ("Regrid"); Regrid (cgh); - + + // Postregrid + Checkpoint ("Scheduling POSTREGRID"); + CCTK_ScheduleTraverse ("CCTK_POSTREGRID", cgh, CallFunction); + leave_level_mode (cgh); leave_global_mode (cgh); } // ml @@ -150,19 +167,6 @@ namespace Carpet { - // Advance time - ++cgh->cctk_iteration; - global_time = cctk_initial_time - + cgh->cctk_iteration * delta_time / maxreflevelfact; - cgh->cctk_time = global_time; - if ((cgh->cctk_iteration-1) - % (maxreflevelfact / ipow(reffact, reflevels-1)) == 0) { - Waypoint ("Evolving iteration %d at t=%g", - cgh->cctk_iteration, (double)cgh->cctk_time); - } - - - for (int ml=mglevels-1; ml>=0; --ml) { bool have_done_global_mode = false; |