aboutsummaryrefslogtreecommitdiff
path: root/schedule.ccl
diff options
context:
space:
mode:
authorjthorn <jthorn@f88db872-0e4f-0410-b76b-b9085cfa78c5>2006-06-09 10:58:42 +0000
committerjthorn <jthorn@f88db872-0e4f-0410-b76b-b9085cfa78c5>2006-06-09 10:58:42 +0000
commitfe4e962d3e30527e164e194af8f360c701134e04 (patch)
tree6f5a0fdd31b5561fcfbc12c261488b9fb8dc49b6 /schedule.ccl
parent56375fda6ef0bc0043ad426bba5864ca48cf2496 (diff)
redo the way mask-setting is scheduled:
it's now inside two new groups group_for_mask_stuff group_where_mask_is_set so other thorns (like AEIDevelopment/PreviousMask) can schedule stuff in group_for_mask_stuff before/after group_where_mask_is_set git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@1456 f88db872-0e4f-0410-b76b-b9085cfa78c5
Diffstat (limited to 'schedule.ccl')
-rw-r--r--schedule.ccl61
1 files changed, 40 insertions, 21 deletions
diff --git a/schedule.ccl b/schedule.ccl
index 206df40..ae51c7a 100644
--- a/schedule.ccl
+++ b/schedule.ccl
@@ -122,42 +122,61 @@ if (run_at_CCTK_POSTINITIAL != 0)
#
# set excision mask
# FIXME: the name AHFinderDirect_maybe_do_masks is archaic,
-# AHFinderDirect_do_makss would be more apt
+# AHFinderDirect_do_masks would be more apt
+#
+# We use two Cactus Groups here:
+# group_for_mask_stuff
+# group_where_mask_is_set
+# AHFinderDirect_maybe_do_masks
+# this way other thorns can schedule routines which need to run immediately
+# before/after we set the mask in group_for_mask_stuff before/after
+# group_where_mask_is_set, without having to know in what higher-level
+# Cactus schedule bins/groups this thorn runs.
#
if (run_at_CCTK_ANALYSIS != 0)
{
- schedule AHFinderDirect_maybe_do_masks at CCTK_ANALYSIS \
- after AHFinderDirect_find_horizons
- {
- lang: C
- options: global loop-local
- } "maybe set mask(s) based on apparent horizon position(s)"
+ schedule group group_for_mask_stuff \
+ at CCTK_ANALYSIS \
+ after AHFinderDirect_find_horizons
+ {
+ } "schedule group for working with the excision mask(s)"
}
if (run_at_CCTK_POSTSTEP != 0)
{
- schedule AHFinderDirect_maybe_do_masks at CCTK_POSTSTEP \
- after AHFinderDirect_find_horizons
+ schedule group group_for_mask_stuff \
+ at CCTK_POSTSTEP \
+ after AHFinderDirect_find_horizons
{
- lang: C
- options: global loop-local
- } "maybe set mask(s) based on apparent horizon position(s)"
+ } "schedule group for working with the excision mask(s)"
}
if (run_at_CCTK_POSTINITIAL != 0)
{
- schedule AHFinderDirect_maybe_do_masks at CCTK_POSTINITIAL \
- after AHFinderDirect_find_horizons
+ schedule group group_for_mask_stuff \
+ at CCTK_POSTINITIAL \
+ after AHFinderDirect_find_horizons
{
- lang: C
- options: global loop-local
- } "maybe set mask(s) based on apparent horizon position(s)"
+ } "schedule group for working with the excision mask(s)"
}
# if using mesh refinement, reset the mask after regridding
-# if not using mesh refinement, POSTREGRID is ignored so this is a no-op
-schedule AHFinderDirect_maybe_do_masks at POSTREGRID \
-after (MaskOne MaskZero)
+# if not using mesh refinement, CCTK_POSTREGRID is ignored so this is a no-op
+schedule group group_for_mask_stuff \
+ at CCTK_POSTREGRID \
+ after (MaskOne MaskZero)
+ {
+ } "schedule group for working with the excision mask(s)"
+
+schedule group \
+ group_where_mask_is_set \
+ in group_for_mask_stuff
+ {
+ } "schedule group where we set the excision mask(s)"
+
+schedule AHFinderDirect_maybe_do_masks \
+ in group_where_mask_is_set
{
lang: C
- } "regrid ==> maybe reset mask(s) based on apparent horizon position(s)"
+ options: global loop-local
+ } "maybe set mask(s) based on apparent horizon position(s)"
########################################