SpECTRE  v2026.04.01
Loading...
Searching...
No Matches
CurvedScalarWave::Worldtube::WorldtubeSingleton< Metavariables > Struct Template Reference

The singleton component that represents the worldtube. More...

#include <SingletonChare.hpp>

Public Types

using chare_type = ::Parallel::Algorithms::Singleton
using metavariables = Metavariables
using evolved_vars
using TimeStepperBase = TimeStepper
using initialization_actions
using worldtube_system = System<Dim>
using step_actions
using phase_dependent_action_list
using simple_tags_from_options

Static Public Member Functions

static void execute_next_phase (const typename Parallel::Phase next_phase, Parallel::CProxy_GlobalCache< Metavariables > &global_cache)

Static Public Attributes

static constexpr size_t Dim = Metavariables::volume_dim
static constexpr bool checkpoint_data = true
static constexpr bool local_time_stepping

Detailed Description

template<class Metavariables>
struct CurvedScalarWave::Worldtube::WorldtubeSingleton< Metavariables >

The singleton component that represents the worldtube.

Details

The component receives from and sends data to the elements abutting the worldtube. It holds and calculates a solution for the regular field \(\Psi^R\) which valid in a neighborhood of the scalar charge.

Member Typedef Documentation

◆ evolved_vars

template<class Metavariables>
using CurvedScalarWave::Worldtube::WorldtubeSingleton< Metavariables >::evolved_vars
Initial value:
tmpl::list<CurvedScalarWave::Tags::Psi, CurvedScalarWave::Tags::Pi>>
Definition VariablesTag.hpp:17

◆ initialization_actions

template<class Metavariables>
using CurvedScalarWave::Worldtube::WorldtubeSingleton< Metavariables >::initialization_actions
Initial value:
tmpl::list<
tmpl::list<Tags::EvolvedParticlePositionVelocityCompute<Dim>,
Initializes a map of the grid coordinates centered on the worldtube of all faces that abut the worldt...
Definition InitializeElementFacesGridCoordinates.hpp:56
Initializes the time stepper and evolved variables used by the worldtube system. Also sets Tags::Curr...
Definition InitializeEvolvedVariables.hpp:28
Initialize the list of compute tags in ComputeTagsList
Definition AddComputeTags.hpp:39
Mutate DataBox items by calling db::mutate_apply on each Mutator in the order they are specified.
Definition InitializeItems.hpp:35
Initialize items related to time stepping.
Definition Evolution.hpp:116
Terminate the algorithm to proceed to the next phase.
Definition TerminatePhase.hpp:28

◆ phase_dependent_action_list

template<class Metavariables>
using CurvedScalarWave::Worldtube::WorldtubeSingleton< Metavariables >::phase_dependent_action_list
Initial value:
tmpl::list<
initialization_actions>,
tmpl::list<Actions::ObserveWorldtubeSolution, step_actions,
@ Evolve
phase in which time steps are taken for an evolution executable
Definition Phase.hpp:59
@ Register
phase in which components register with other components
Definition Phase.hpp:79
@ Restart
phase run after a checkpoint-restart
Definition Phase.hpp:83
@ Initialization
initial phase of an executable
Definition Phase.hpp:67
@ InitializeTimeStepperHistory
phase in which the time stepper executes a self-start procedure
Definition Phase.hpp:72
tmpl::flatten< tmpl::list< SelfStart::Actions::Initialize< System, CacheTagPrefix >, ::Actions::Label< detail::PhaseStart >, SelfStart::Actions::CheckForCompletion< detail::PhaseEnd, System >, ::Actions::MutateApply< AdvanceTime< CacheTagPrefix > >, SelfStart::Actions::CheckForOrderIncrease, StepActions, ::Actions::Goto< detail::PhaseStart >, ::Actions::Label< detail::PhaseEnd >, SelfStart::Actions::Cleanup, ::Actions::MutateApply< AdvanceTime< CacheTagPrefix > >, Parallel::Actions::TerminatePhase > > self_start_procedure
The list of actions required to self-start an integrator.
Definition SelfStartActions.hpp:458
Helpers for derived class registration.
Definition Registration.hpp:32
Apply the function Mutator::apply to the DataBox.
Definition MutateApply.hpp:49
When Tags::ObserveCoefficientsTrigger is triggered, write the coefficients of the Taylor expansion of...
Definition ObserveWorldtubeSolution.hpp:43
List of all the actions to be executed in the specified phase.
Definition PhaseDependentActionList.hpp:17
Check if any triggers are activated, and perform phase changes as needed.
Definition ExecutePhaseChange.hpp:54
Registers a singleton with the ObserverWriter.
Definition RegisterSingleton.hpp:33

◆ simple_tags_from_options

template<class Metavariables>
using CurvedScalarWave::Worldtube::WorldtubeSingleton< Metavariables >::simple_tags_from_options
Initial value:
tmpl::remove_duplicates< tmpl::flatten< tmpl::transform< InitializationActionsList, detail::get_simple_tags_from_options_from_action< tmpl::_1 > > > > get_simple_tags_from_options
Given a list of initialization actions, returns a list of the unique simple_tags_from_options for all...
Definition ParallelComponentHelpers.hpp:295
tmpl::flatten< tmpl::transform< PhaseDepActionList, detail::get_initialization_actions_list< tmpl::_1 > > > get_initialization_actions_list
Given the phase dependent action list, return the list of actions in the Initialization phase (or an ...
Definition ParallelComponentHelpers.hpp:275

◆ step_actions

template<class Metavariables>
using CurvedScalarWave::Worldtube::WorldtubeSingleton< Metavariables >::step_actions
Initial value:
tmpl::list<
Waits for the data from all neighboring elements and changes the slab size if a change in the global ...
Definition ChangeSlabSize.hpp:40
Adds up the spherical harmonic projections from the different elements abutting the worldtube.
Definition ReceiveElementData.hpp:63
Sends the acceleration terms to worldtube neighbors.
Definition SendAccelerationTerms.hpp:24
Sends the regular field coefficients to each element abutting the worldtube.
Definition SendToElements.hpp:39
Updates the functions of time according to the motion of the worldtube.
Definition UpdateFunctionsOfTime.hpp:45
Check that functions of time are up-to-date.
Definition FunctionsOfTimeAreReady.hpp:224

Member Data Documentation

◆ local_time_stepping

template<class Metavariables>
bool CurvedScalarWave::Worldtube::WorldtubeSingleton< Metavariables >::local_time_stepping
staticconstexpr
Initial value:
=
TimeStepperBase::local_time_stepping

The documentation for this struct was generated from the following file:
  • src/Evolution/Systems/CurvedScalarWave/Worldtube/SingletonChare.hpp