SpECTRE  v2024.04.12
Initialization::TimeStepping< Metavariables, TimeStepperBase > Struct Template Reference

Initialize items related to time stepping. More...

#include <Evolution.hpp>

Public Types

using const_global_cache_tags = tmpl::conditional_t< TimeStepperBase::local_time_stepping, tmpl::list<::Tags::ConcreteTimeStepper< TimeStepperBase >, ::Tags::StepChoosers >, tmpl::list<::Tags::ConcreteTimeStepper< TimeStepperBase > > >
 Tags for constant items added to the GlobalCache. These items are initialized from input file options.
 
using mutable_global_cache_tags = tmpl::list<>
 Tags for mutable items added to the GlobalCache. These items are initialized from input file options.
 
using argument_tags = tmpl::list<::Tags::Time, Tags::InitialTimeDelta, Tags::InitialSlabSize< TimeStepperBase::local_time_stepping >, ::Tags::ConcreteTimeStepper< TimeStepperBase > >
 Tags for items fetched by the DataBox and passed to the apply function.
 
using simple_tags_from_options = tmpl::list<::Tags::Time, Tags::InitialTimeDelta, Tags::InitialSlabSize< TimeStepperBase::local_time_stepping > >
 Tags for simple DataBox items that are initialized from input file options.
 
using default_initialized_simple_tags = tmpl::push_back< StepChoosers::step_chooser_simple_tags< Metavariables, TimeStepperBase::local_time_stepping >, ::Tags::TimeStepId, ::Tags::AdaptiveSteppingDiagnostics >
 Tags for simple DataBox items that are default initialized.
 
using return_tags = tmpl::list<::Tags::Next<::Tags::TimeStepId >, ::Tags::TimeStep, ::Tags::Next<::Tags::TimeStep > >
 Tags for items in the DataBox that are mutated by the apply function.
 
using simple_tags = tmpl::append< default_initialized_simple_tags, return_tags >
 Tags for mutable DataBox items that are either default initialized or initialized by the apply function.
 
using compute_tags = time_stepper_ref_tags< TimeStepperBase >
 Tags for immutable DataBox items (compute items or reference items) added to the DataBox.
 

Static Public Member Functions

static void apply (const gsl::not_null< TimeStepId * > next_time_step_id, const gsl::not_null< TimeDelta * > time_step, const gsl::not_null< TimeDelta * > next_time_step, const double initial_time_value, const double initial_dt_value, const double initial_slab_size, const LtsTimeStepper &time_stepper)
 Given the items fetched from a DataBox by the argument_tags when using LTS, mutate the items in the DataBox corresponding to return_tags.
 
static void apply (const gsl::not_null< TimeStepId * > next_time_step_id, const gsl::not_null< TimeDelta * > time_step, const gsl::not_null< TimeDelta * > next_time_step, const double initial_time_value, const double initial_dt_value, const double initial_slab_size, const TimeStepper &time_stepper)
 Given the items fetched from a DataBox by the argument_tags, when not using LTS, mutate the items in the DataBox corresponding to return_tags.
 

Detailed Description

template<typename Metavariables, typename TimeStepperBase>
struct Initialization::TimeStepping< Metavariables, TimeStepperBase >

Initialize items related to time stepping.

Details

See the type aliases defined below for what items are added to the GlobalCache and DataBox and how they are initialized

Since the evolution has not started yet, initialize the state before the initial time. So Tags::TimeStepId is undefined at this point, and Tags::Next<Tags::TimeStepId> is the initial time.


The documentation for this struct was generated from the following file: