diff options
author | eschnett <eschnett@578cdeb0-5ea1-4b81-8215-5a3b8777ee0b> | 2011-08-02 23:45:52 +0000 |
---|---|---|
committer | eschnett <eschnett@578cdeb0-5ea1-4b81-8215-5a3b8777ee0b> | 2011-08-02 23:45:52 +0000 |
commit | 48d30e8e785097c94db7c72f78e4ec7399127286 (patch) | |
tree | 180a6e6e3aa6cf39568e5fd7b7fd4fae61e64cf9 | |
parent | 06ab1f5caf1a3a3a4a372b8dee6539da8f9e919d (diff) |
Introduce new schedule groups, correct scheduling of others.
Help ensure exact consistency while checkpointing and recovering:
Introduce new schedule groups MoL_PostStepModify and
MoL_PseudoEvolutionBoundaries. Correct scheduling of
MoL_PseudoEvolution.
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@148 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
-rw-r--r-- | schedule.ccl | 39 |
1 files changed, 29 insertions, 10 deletions
diff --git a/schedule.ccl b/schedule.ccl index 998f1e2..35e257e 100644 --- a/schedule.ccl +++ b/schedule.ccl @@ -657,17 +657,32 @@ schedule GROUP MoL_PostStep AT PostRestrict { } "Ensure that everything is correct after restriction" -################################################################## +############################################################## ### Schedule the PostStep parts after recovery ### ### so that symmetries are automatically done correctly. ### ### We may want to change this later as it could be ### ### expensive, but it's simplest for the moment. ### -################################################################## +############################################################## schedule GROUP MoL_PostStep AT Post_Recover_Variables { } "Ensure that everything is correct after recovery" +######################################################################### +### Physics thorns can apply enforce constraints in PostStepModify. ### +### The difference between PostStep and PostStepModify is that ### +### PostStep is scheduled at many other occasions, whereas the ### +### PostStepModify is only scheduled during evolution. ### +######################################################################### + +schedule GROUP MoL_PostStepModify IN MoL_Step AFTER MoL_PostStep +{ +} "The group for physics thorns to schedule enforcing constraints" + +schedule GROUP MoL_PostStepModify At PostInitial AFTER MoL_PostStep +{ +} "The group for physics thorns to schedule enforcing constraints" + ########################################################################## ### Schedule a pseudo-evolution group to handle variables which are ### ### not evolved, but which should be calculated at every time step. ### @@ -677,21 +692,25 @@ schedule GROUP MoL_PseudoEvolution AT PostInitial AFTER MoL_PostStep { } "Calculate pseudo-evolved quantities" -schedule GROUP MoL_PseudoEvolution AT PostRegridInitial AFTER MoL_PostStep +schedule GROUP MoL_PseudoEvolution AT Evol AFTER MoL_Evolution { } "Calculate pseudo-evolved quantities" -schedule GROUP MoL_PseudoEvolution AT Evol AFTER MoL_Evolution +schedule GROUP MoL_PseudoEvolutionBoundaries AT PostRegridInitial AFTER MoL_PostStep { -} "Calculate pseudo-evolved quantities" +} "Apply boundary conditions to pseudo-evolved quantities" -schedule GROUP MoL_PseudoEvolution AT PostRegrid AFTER MoL_PostStep +schedule GROUP MoL_PseudoEvolutionBoundaries AT PostRegrid AFTER MoL_PostStep { -} "Calculate pseudo-evolved quantities" +} "Apply boundary conditions to pseudo-evolved quantities" -schedule GROUP MoL_PseudoEvolution AT Post_Recover_Variables AFTER MoL_PostStep +schedule GROUP MoL_PseudoEvolutionBoundaries AT PostRestrictInitial AFTER MoL_PostStep { -} "Calculate pseudo-evolved quantities" +} "Apply boundary conditions to pseudo-evolved quantities" + +schedule GROUP MoL_PseudoEvolutionBoundaries AT PostRestrict AFTER MoL_PostStep +{ +} "Apply boundary conditions to pseudo-evolved quantities" ############################################################ ### Additional boundary condition bins as requested by ### @@ -735,7 +754,7 @@ schedule MoL_ResetTime IN MoL_Step AFTER MoL_DecrementCounter BEFORE MoL_PostSte OPTIONS: LEVEL } "If necessary, change the time" -schedule MoL_ResetDeltaTime IN MoL_Step AFTER MoL_PostStep +schedule MoL_ResetDeltaTime IN MoL_Step AFTER (MoL_PostStep MoL_PostStepModify) { LANG: C OPTIONS: LEVEL |