SpECTRE
v2023.10.11
|
Limit the step size in a GTS evolution to prevent deadlocks from control system measurements. More...
#include <LimitTimeStep.hpp>
Static Public Member Functions | |
template<typename DbTagsList , typename... InboxTags, typename Metavariables , typename ArrayIndex , typename ActionList , typename ParallelComponent > | |
static Parallel::iterable_action_return_t | apply (db::DataBox< DbTagsList > &box, const tuples::TaggedTuple< InboxTags... > &, Parallel::GlobalCache< Metavariables > &cache, const ArrayIndex &array_index, ActionList, const ParallelComponent *const) |
Limit the step size in a GTS evolution to prevent deadlocks from control system measurements.
Most time steppers require evaluations of the coordinates at several times during the step before they can produce dense output. If any of those evaluations require a function-of-time update depending on a measurement within the step, the evolution will deadlock. This action reduces the step size if necessary to prevent that from happening.
Specifically: