SpECTRE  v2024.09.29
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
Event Class Referenceabstract

Base class for something that can happen during a simulation (such as an observation). More...

#include <Event.hpp>

Classes

struct  ObservationValue
 

Public Member Functions

 Event (CkMigrateMessage *msg)
 
 WRAPPED_PUPable_abstract (Event)
 
template<typename ComputeTagsList , typename DataBoxType , typename Metavariables , typename ArrayIndex , typename ComponentPointer >
void run (const gsl::not_null< ObservationBox< ComputeTagsList, DataBoxType > * > box, Parallel::GlobalCache< Metavariables > &cache, const ArrayIndex &array_index, const ComponentPointer, const ObservationValue &observation_value) const
 
template<typename DbTags , typename Metavariables , typename ArrayIndex , typename ComponentPointer >
bool is_ready (const db::DataBox< DbTags > &box, Parallel::GlobalCache< Metavariables > &cache, const ArrayIndex &array_index, const ComponentPointer) const
 
virtual bool needs_evolved_variables () const =0
 Whether the event uses anything depending on the evolved_variables. If this returns false, anything depending on the evolved variables may have an incorrect value when the event is run. More...
 

Detailed Description

Base class for something that can happen during a simulation (such as an observation).

Derived events must have a compute_tags_for_observation_box that is a tmpl::list of simple or compute tags. Simple tags are assumed to already be in the DataBox. Evolved variables, for example, would be listed as simple tags. The compute tags are used to compute additional quantities that may be observed. For example, in the scalar wave system the 1- and 2-index constraints would be added as compute tags, as well as anything they depend on that's not already in the DataBox.

Member Function Documentation

◆ needs_evolved_variables()


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