diff options
author | rhaas <rhaas@57fe0bb3-ccba-405f-9b23-de0201f165b7> | 2012-06-17 15:55:48 +0000 |
---|---|---|
committer | rhaas <rhaas@57fe0bb3-ccba-405f-9b23-de0201f165b7> | 2012-06-17 15:55:48 +0000 |
commit | f385000725ac66d35b1d224e3296ad641c35e7c0 (patch) | |
tree | 345b0a435870caed49b155cd6f8708844589c543 | |
parent | 3a39bffa190504c1bbed6af6ab1b5c527798fefb (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-x | schedule.ccl | 5 |
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 |