diff options
author | rhaas <rhaas@578cdeb0-5ea1-4b81-8215-5a3b8777ee0b> | 2012-08-02 16:34:52 +0000 |
---|---|---|
committer | rhaas <rhaas@578cdeb0-5ea1-4b81-8215-5a3b8777ee0b> | 2012-08-02 16:34:52 +0000 |
commit | 26067015fd74e5079d09a589fc3bab9e7fd13f22 (patch) | |
tree | a3939c89d8d4643ebf529722c1edfc8b8cbbe2a6 /schedule.ccl | |
parent | 7923fe9d90ae7b78450708403bd7d451e0227d15 (diff) |
MoL: add Multirate capabilities. This add three new multirate RK schemes to MoL.
Flags indicate whether it is time to execute slow RHS computation.
For instance, in the RK4-RK2 scheme, there are 4 substeps in total, but the RK2 RHS are only evaluated in the very first and in the very last step of the four substeps.
From: Christian Reisswig, minor changes by Roland Haas
git-svn-id: http://svn.cactuscode.org/arrangements/CactusNumerical/MoL/trunk@175 578cdeb0-5ea1-4b81-8215-5a3b8777ee0b
Diffstat (limited to 'schedule.ccl')
-rw-r--r-- | schedule.ccl | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/schedule.ccl b/schedule.ccl index f0aed52..8dc65f9 100644 --- a/schedule.ccl +++ b/schedule.ccl @@ -399,7 +399,13 @@ else } } } - + + +if (MoL_Num_Evolved_Vars_Slow) +{ + STORAGE: ScratchSpaceSlow +} + ###################################################### ### StartStep contains the routines that just do ### ### internal MoL stuff; setting the counter, and ### @@ -607,6 +613,28 @@ else if (CCTK_Equals(ODE_Method,"ICN-avg")) LANG: C } "Updates calculated with the averaging ICN method" } +else if (CCTK_Equals(ODE_Method,"RK2-MR-2:1")) +{ + schedule MoL_RK2_MR_2_1_Add AS MoL_Add IN MoL_Step AFTER MoL_CalcRHS BEFORE MoL_PostStep + { + LANG: C + } "Updates calculated with the multirate Runge-Kutta 2 method" +} +else if (CCTK_Equals(ODE_Method,"RK4-MR-2:1")) +{ + schedule MoL_RK4_MR_2_1_Add AS MoL_Add IN MoL_Step AFTER MoL_CalcRHS BEFORE MoL_PostStep + { + LANG: C + } "Updates calculated with the multirate Runge-Kutta 4 method" +} +else if (CCTK_Equals(ODE_Method,"RK4-RK2")) +{ + schedule MoL_RK4_RK2_Add AS MoL_Add IN MoL_Step AFTER MoL_CalcRHS BEFORE MoL_PostStep + { + LANG: C + } "Updates calculated with the multirate RK4/RK2 method" +} + ################################################## ### Physics thorns can apply boundaries and ### |