SpECTRE  v2021.12.06
control_system Namespace Reference

Control systems and related functionality. More...

Namespaces

namespace  Actions
 All Actions related to the control system.
 
namespace  metafunctions
 Metafunctions associated with the control systems.
 
namespace  OptionTags
 All option tags related to the control system.
 
namespace  protocols
 Protocols for control systems.
 
namespace  Tags
 All DataBox tags related to the control system.
 

Classes

class  Event
 Event for running control system measurements. More...
 
struct  OptionHolder
 Holds all options for a single control system. More...
 
struct  ResetFunctionOfTimeExpirationTime
 Resets the expiration time of a FunctionOfTime in the global cache. Intended to be used in Parallel::mutate. More...
 
struct  RunCallbacks
 Apply the process_measurement struct of each of the ControlSystems to the result of the Submeasurement. More...
 
class  Trigger
 Trigger for control system measurements. More...
 
struct  UpdateFunctionOfTime
 Updates a FunctionOfTime in the global cache. Intended to be used in Parallel::mutate. More...
 

Typedefs

template<typename Metavariables , typename ControlSystems >
using control_components = tmpl::transform< ControlSystems, tmpl::bind< ControlComponent, tmpl::pin< Metavariables >, tmpl::_1 > >
 List of control componenets to be added to the component list of the metavars.
 
template<typename ControlSystems >
using control_system_events = tmpl::transform< metafunctions::measurements_t< ControlSystems >, tmpl::bind< Event, metafunctions::control_systems_with_measurement< tmpl::pin< ControlSystems >, tmpl::_1 > > >
 The list of events needed for measurements for a list of control systems.
 
template<typename ControlSystems >
using inputs = tmpl::transform< ControlSystems, tmpl::bind< OptionTags::ControlSystemInputs, tmpl::_1 > >
 Alias to get all the option holders from a list of control systems. This is useful in the option_tags alias of simple tags for getting all the options from control systems.
 
template<typename ControlSystems >
using control_system_triggers = tmpl::transform< metafunctions::measurements_t< ControlSystems >, tmpl::bind< Trigger, metafunctions::control_systems_with_measurement< tmpl::pin< ControlSystems >, tmpl::_1 > > >
 The list of triggers needed for measurements for a list of control systems.
 

Functions

template<typename... OptionHolders>
std::unordered_map< std::string, double > initial_expiration_times (const double initial_time, const double initial_time_step, const OptionHolders &... option_holders)
 Construct the initial expiration times for functions of time that are controlled by a control system. More...
 

Detailed Description

Control systems and related functionality.