SpECTRE  v2025.08.19
ah::callbacks::ObserveCenters< HorizonMetavars > Struct Template Reference

Writes the center of an apparent horizon to disk in both the Frame template parameter frame and Frame::Inertial frame. Intended to be used in the horizon_find_callbacks list of a ah::protocols::HorizonMetavars. More...

#include <ObserveCenters.hpp>

Static Public Member Functions

template<typename DbTags , typename Metavariables >
static void apply (const db::DataBox< DbTags > &box, Parallel::GlobalCache< Metavariables > &cache, const FastFlow::Status)
 

Detailed Description

template<typename HorizonMetavars>
struct ah::callbacks::ObserveCenters< HorizonMetavars >

Writes the center of an apparent horizon to disk in both the Frame template parameter frame and Frame::Inertial frame. Intended to be used in the horizon_find_callbacks list of a ah::protocols::HorizonMetavars.

The centers will be written to a subfile with the name /ApparentHorizons/TargetName_Centers.dat where TargetName is the pretty_type::name of the HorizonMetavars template parameter.

The columns of the dat file are:

  • Time
  • GridCenter_x
  • GridCenter_y
  • GridCenter_z
  • InertialCenter_x
  • InertialCenter_y
  • InertialCenter_z

The Frame template parameter must be either Frame::Grid or Frame::Distorted. Even though the template parameter can be Frame::Distorted, we still write GridCenter_? because the centers of the objects are the same in the Grid and Distorted frames.

Note
Requires ylm::Tags::Strahlkorper<Frame> and ylm::Tags::CartesianCoords<Frame::Inertial> and ylm::Tags::EuclideanAreaElement<Frame> to be in the DataBox of the horizon finder.

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