SpECTRE
v2025.03.17
|
Changes the step size pseudo-randomly. Values are distributed uniformly in
#include <Random.hpp>
Classes | |
struct | Maximum |
struct | Minimum |
struct | Seed |
Public Types | |
using | options = implementation defined |
using | argument_tags = implementation defined |
Public Member Functions | |
Random (double minimum, double maximum, size_t seed, const Options::Context &context={}) | |
TimeStepRequest | operator() (const Element< VolumeDim > &element, const TimeStepId &time_step_id, double last_step) const |
bool | uses_local_data () const override |
Whether the result can differ on different elements, so requiring communication to synchronize the result across the domain. This is ignored for LTS step changing. More... | |
bool | can_be_delayed () const override |
Whether the result can be applied with a delay. More... | |
void | pup (PUP::er &p) override |
![]() | |
WRAPPED_PUPable_abstract (StepChooser) | |
virtual bool | uses_local_data () const=0 |
Whether the result can differ on different elements, so requiring communication to synchronize the result across the domain. This is ignored for LTS step changing. More... | |
virtual bool | can_be_delayed () const=0 |
Whether the result can be applied with a delay. More... | |
TimeStepRequest | desired_step (const double last_step, const db::DataBox< DbTags > &box) const |
The last_step parameter describes the step size to be adjusted. It may be the step size or the slab size, or may be infinite if the appropriate size cannot be determined. More... | |
![]() | |
WRAPPED_PUPable_abstract (StepChooser) | |
virtual bool | uses_local_data () const=0 |
Whether the result can differ on different elements, so requiring communication to synchronize the result across the domain. This is ignored for LTS step changing. More... | |
virtual bool | can_be_delayed () const=0 |
Whether the result can be applied with a delay. More... | |
TimeStepRequest | desired_step (const double last_step, const db::DataBox< DbTags > &box) const |
The last_step parameter describes the step size to be adjusted. It may be the step size or the slab size, or may be infinite if the appropriate size cannot be determined. More... | |
Static Public Attributes | |
static constexpr Options::String | help |
Changes the step size pseudo-randomly. Values are distributed uniformly in
standard_step_choosers
list, but can be added to the factory_creation
struct in the metavariables.
|
overridevirtual |
Whether the result can be applied with a delay.
StepChoosers setting the .end
or .end_hard_limit
fields of TimeStepRequest
must return false here.
Implements StepChooser< StepChooserUse::Slab >.
|
overridevirtual |
Whether the result can differ on different elements, so requiring communication to synchronize the result across the domain. This is ignored for LTS step changing.
last_step
passed to the call operator is not considered local data. Implements StepChooser< StepChooserUse::Slab >.
|
staticconstexpr |