SpECTRE
v2024.09.29
|
An Event
that computes the center of mass for \(x > 0\) and \(x < 0\) where \(x\) is the in the Frame::Grid
.
More...
#include <BNSCenterOfMass.hpp>
Public Types | |
using | compute_tags_for_observation_box = tmpl::list<> |
using | return_tags = tmpl::list<> |
using | argument_tags = tmpl::list<::Tags::Time, ::Tags::PreviousTriggerTime, ::Events::Tags::ObserverMesh< 3 >, ::Events::Tags::ObserverDetInvJacobian< Frame::ElementLogical, Frame::Inertial >, grmhd::ValenciaDivClean::Tags::TildeD, ::Events::Tags::ObserverCoordinates< 3, Frame::Grid > > |
using | is_ready_argument_tags = tmpl::list<> |
Public Member Functions | |
template<typename Metavariables , typename ArrayIndex , typename ParallelComponent > | |
void | operator() (const double time, const std::optional< double > &previous_time, const Mesh< 3 > &mesh, const Scalar< DataVector > &inv_det_jacobian, const Scalar< DataVector > &tilde_d, const tnsr::I< DataVector, 3, Frame::Grid > &x_grid, Parallel::GlobalCache< Metavariables > &cache, const ArrayIndex &array_index, const ParallelComponent *const, const ObservationValue &) const |
template<typename Metavariables , typename ArrayIndex , typename Component > | |
bool | is_ready (Parallel::GlobalCache< Metavariables > &, const ArrayIndex &, const Component *const) const |
bool | needs_evolved_variables () const override |
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... | |
Public Member Functions inherited from Event | |
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... | |
Static Public Attributes | |
static constexpr bool | factory_creatable = false |
An Event
that computes the center of mass for \(x > 0\) and \(x < 0\) where \(x\) is the in the Frame::Grid
.
See control_system::measurements::center_of_mass_integral_on_element
for the calculation of the CoM. This event then does a reduction and calls control_system::PostReductionSendBNSStarCentersToControlSystem
as a post reduction callback.
ControlSystems | tmpl::list of all control systems that use this event. |
|
inlineoverridevirtual |
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.
Implements Event.