Hi,

I don't have time to do this myself at the moment, but I think it would be very useful to
be able to ask TerminationTrigger to trigger termination at a multiple of a given iteration.

The main application for this is ReadInterpolate. I am trying to use the thorn to change
some fundamental parameters of the simulation of my ongoing runs. ReadInterpolate 
requires the checkpoints to be all at the same time. The checkpoints my simulations
naturally produce do not fulfill this requirement, so what I have to do is to do a
small run with cctk_itlast set to a number I manually have to compute so that all the
refinement levels are synced. This is doable, but rather inconvenient to do every time.

The change I propose is to introduce a range of "termination times" to TerminationTrigger
instead of a single value (on_remaining_walltime). The idea is that as soon as the remaining
walltime is less than the lower end of the range, TerminationTrigger will terminate only
when the iteration is a multiple of a specified value. If the the high end of the range is reached,
than this condition is no longer checked and the termination is triggered immediately 
(current behavior). Similarly, it would be nice to add a new sentinel value to the termination file. 
E.g., if I write the number 2 in the termination file, then TerminationTrigger will stop at the
first iteration that is multiple of the given value instead of stopping immediately.

I think that these changes would be rather simple to implement, and if the default value for
"terminate_at_multiple_of" is set to 1, then they would be backwards compatible.

At the moment, I cannot implement these changes myself, but I leave the idea here as
a suggestion for future improvements. 

If anyone has a better way to do what I want to do, I'd be happy to hear that.

Best,
Gabriele