[Developers] MoL_PostStep

Jian Tao jtao at cct.lsu.edu
Mon Aug 22 00:50:15 CDT 2011

Hi Erik,

I think keeping MoL_PostStep while we remove MoL_PreStep will
also cause some confusions later since it is like missing the
left parenthesis. I would suggest that we keep the schedule group.

In the long run, we can organize the order like the following,
but we then need to loop around MoL_Evolution instead of MoL_Step
for the intermediate steps if we want to keep current names for
the groups.

   MoL_Evolution WHILE MoL::MoL_Intermediate_Step

Or, we can simply schedule,

MoL_PreEvolution IN CCTK_EVOL BEFORE MoL_Evolution
MoL_Evolution IN CCTK_EVOL
   MoL_Step WHILE MoL::MoL_Intermediate_Step
MoL_PostEvolution IN CCTK_EVOL AFTER MoL_Evolution

Currently, MoL_PostStep is scheduled in MoL_Step to ensure that
everything scheduled in MoL_PostStep runs after every intermediate
step even though it should explicitly go after MoL_Step. However,
it does what it is supposed to do. We can schedule MoL_PreStep in
the same way.


On 08/21/2011 08:31 PM, Erik Schnetter wrote:
> Jian
> I only realised recently that these two groups are scheduled
> differently -- one is before the whole timestep, the other after each
> substep. We're currently discussing adding a new group after the whole
> timestep (for hydro atmosphere handling).
> We can't change the way in which the PreStep group is scheduled unless
> we've examined most of the existing codes to determine what such a
> change would break. If you are only interested in a cleanup, then it
> may be best to introduce a new group with a better name
> (MoL_PreEvolution), deprecate the old group, and in half a year or one
> year remove the old group (MoL_PreStep) in such a way that codes still
> using them would fail to build, with a warning telling people what
> needs to be changed.
> (The name MoL_PreEvolution makes me think that MoL_PostEvolution would
> be a better name for the discussed hydro atmosphere handling than
> MoL_PostFullStep.)
> -erik
> On Sun, Aug 21, 2011 at 5:34 PM, Jian Tao<jtao at cct.lsu.edu>  wrote:
>> I am just curious if MoL_PreStep should be scheduled
>> "IN MoL_Step BEFORE MoL_CalcRHS" to make the name descriptive.
>> Currently we have:
>> PreStep:
>> schedule GROUP MoL_PreStep IN MoL_Evolution AFTER MoL_StartStep BEFORE
>> MoL_Step
>> {
>> } "Physics thorns can schedule preloop setup routines in here"
>> PostStep:
>> schedule GROUP MoL_PostStep IN MoL_Step AFTER MoL_Add
>> {
>> } "The group for physics thorns to schedule boundary calls etc."
>> MoL_Step:
>> schedule GROUP MoL_Step WHILE MoL::MoL_Intermediate_Step IN
>> MoL_Evolution AFTER MoL_PreStep
>> {
>> } "The loop over the intermediate steps for the ODE integrator"
>> --
>> Regards,
>> Jian
>> _______________________________________________
>> Developers mailing list
>> Developers at cactuscode.org
>> http://www.cactuscode.org/mailman/listinfo/developers

More information about the Developers mailing list