SpECTRE
v2024.09.29
|
Combine TimeStepRequest objects to find a consensus step. See that class for details. More...
#include <TimeStepRequestProcessor.hpp>
Public Member Functions | |
TimeStepRequestProcessor (bool time_runs_forward) | |
std::optional< double > | new_step_size_goal () const |
The new goal, if one was given. | |
void | process (const TimeStepRequest &request) |
TimeStepRequestProcessor & | operator+= (const TimeStepRequestProcessor &other) |
Merge the results from another object. | |
void | error_on_hard_limit (double size, double end) const |
ERROR if size and end do not satisfy the hard limits. | |
void | pup (PUP::er &p) |
double | step_size (double step_start, double step_size_goal) const |
The new step. Two versions are provided, as neither computing the step size from the end or the end from the size is guaranteed to be an exact operation on floating-point values, and which quantity is fundamental varies between consumers. The step_size_goal is ignored if any requests have set a new goal. | |
double | step_end (double step_start, double step_size_goal) const |
The new step. Two versions are provided, as neither computing the step size from the end or the end from the size is guaranteed to be an exact operation on floating-point values, and which quantity is fundamental varies between consumers. The step_size_goal is ignored if any requests have set a new goal. | |
Friends | |
bool | operator== (const TimeStepRequestProcessor &a, const TimeStepRequestProcessor &b) |
Combine TimeStepRequest objects to find a consensus step. See that class for details.