sxs-collaboration / spectre

SpECTRE is a code for multi-scale, multi-physics problems in astrophysics and gravitational physics.
https://spectre-code.org
Other
159 stars 189 forks source link

Add increasing_substep_time_steppers list #6021

Closed wthrowe closed 4 months ago

wthrowe commented 4 months ago

Necessary property for worldtube particle tracking.

Not a huge fan of the name, so if anyone has a better idea feel free to suggest. Unfortunately, I've already used "monotonic" for a different property.

Proposed changes

Upgrade instructions

Code review checklist

Further comments

knelli2 commented 4 months ago

What is the other property that "monotonic" is used for? Is it really that bad if you use it again?

wthrowe commented 4 months ago

The AdamsMoultonPcMonotonic class and TimeStepper::monotonic() function refer to the "not deadlocking the control system" property.

knelli2 commented 4 months ago

Hmm yeah probably shouldn't overload the meaning. However, it seems like using "monotonic" in this PR makes more sense and the other names should be changed to something else

wthrowe commented 4 months ago

Do you have a suggestion for the other one, then?

The two properties are, explicitly:

  1. Time is non-decreasing for all operations (but substep times can repeat)
  2. Substep time is strictly increasing (but things like dense-output time can decrease freely)
knelli2 commented 4 months ago

Oh wow ok... Yeah I don't have a good idea how to differentiate these. They are so similar in many ways but just slightly different. I guess increasing_substep_time_steppers is ok for now.