SpECTRE  v2026.04.01
Loading...
Searching...
No Matches
ControlComponent< Metavariables, ControlSystem > Struct Template Reference

The singleton parallel component responsible for managing a single control system. More...

#include <Component.hpp>

Public Types

using chare_type = Parallel::Algorithms::Singleton
using control_system = ControlSystem
using metavariables = Metavariables
using phase_dependent_action_list
using simple_tags_from_options
using const_global_cache_tags

Static Public Member Functions

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

Static Public Attributes

static constexpr bool checkpoint_data = true

Detailed Description

template<class Metavariables, typename ControlSystem>
struct ControlComponent< Metavariables, ControlSystem >

The singleton parallel component responsible for managing a single control system.

The control system that this component is responsible for is specified by the ControlSystem template parameter. This control system must conform to the control_system::Protocols::ControlSystem protocol.

Member Typedef Documentation

◆ const_global_cache_tags

template<class Metavariables, typename ControlSystem>
using ControlComponent< Metavariables, ControlSystem >::const_global_cache_tags
Initial value:
tmpl::list<ControlSystem, typename ControlSystem::measurement>>
tmpl::remove_duplicates< tmpl::join< tmpl::transform< ActionsList, detail::get_const_global_cache_tags_from_parallel_struct< tmpl::_1 > > > > get_const_global_cache_tags_from_actions
Given a list of Actions, get a list of the unique tags specified in the actions' const_global_cache_t...
Definition ParallelComponentHelpers.hpp:105

◆ phase_dependent_action_list

template<class Metavariables, typename ControlSystem>
using ControlComponent< Metavariables, ControlSystem >::phase_dependent_action_list
Initial value:
ControlSystem>>,
@ Initialization
initial phase of an executable
Definition Phase.hpp:67
Mutate DataBox items by calling db::mutate_apply on each Mutator in the order they are specified.
Definition InitializeItems.hpp:35
Terminate the algorithm to proceed to the next phase.
Definition TerminatePhase.hpp:28
List of all the actions to be executed in the specified phase.
Definition PhaseDependentActionList.hpp:17
Initialize items related to the control system.
Definition Initialization.hpp:72

◆ simple_tags_from_options

template<class Metavariables, typename ControlSystem>
using ControlComponent< Metavariables, ControlSystem >::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

The documentation for this struct was generated from the following file:
  • src/ControlSystem/Component.hpp