aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrhaas <rhaas@57fe0bb3-ccba-405f-9b23-de0201f165b7>2012-06-17 15:55:48 +0000
committerrhaas <rhaas@57fe0bb3-ccba-405f-9b23-de0201f165b7>2012-06-17 15:55:48 +0000
commitf385000725ac66d35b1d224e3296ad641c35e7c0 (patch)
tree345b0a435870caed49b155cd6f8708844589c543
parent3a39bffa190504c1bbed6af6ab1b5c527798fefb (diff)
schedule hydrobase_InitExcisionmask global-early loop-local
Christian Ott found that right now the scheduling of EinsteinUtil/SetMask_SphericalSurface::SetMask_SphericalSurface and HydroBase::HydroBase_InitExcisionMask conflict in the Post_Recover_Variables and INITIAL since SetMask_SphericalSurface which needs to run after HydroBase_InitExcisionMask is scheduled GLOBAL which happens to be global-late in these bins. SetMask_SphericalSurface must be local since it must run after SphericalSurfaceHasBeenSet which is after SphericalSurface_Set which is GLOBAL. The attached patch runs HydroBase_InitExcisionMask global-early loop-local instead. Pleas note that the patch will change the behaviour in PostRegrid slightly since HydroBase_InitExcisionMask (and not just SetMask_SphericalSurface which already does so) will run on all refinement levels, always, independent of the iteration counter and Carpet's do_every logic. The current code prevents properly recovering from checkpoints. Found and fixed by Christian Ott. git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinBase/HydroBase/trunk@55 57fe0bb3-ccba-405f-9b23-de0201f165b7
-rwxr-xr-xschedule.ccl5
1 files changed, 5 insertions, 0 deletions
diff --git a/schedule.ccl b/schedule.ccl
index 2e8207e..62a84fd 100755
--- a/schedule.ccl
+++ b/schedule.ccl
@@ -184,6 +184,11 @@ if (hydro_excision)
schedule HydroBase_InitExcisionMask in HydroBase_ExcisionMaskSetup
{
LANG: C
+ # GLOBAL is global-early in INITIAL and Post_Recover_Variables
+ # GLOBAL is global-late in PostRegrid and PostRegridInitial
+ # since we would always like to run before any possibly local routine
+ # modifying the mask, we run global-early
+ OPTIONS: global-early loop-local
} "Initialize hydro excision mask to 'no excision everywhere'"
schedule GROUP HydroBase_ExcisionHasBeenSet at CCTK_PostStep