SpECTRE  v2024.05.11
observers::ThreadedActions::WriteVolumeData Struct Reference

Write volume data (such as surface data) at a given time (specified by an ObservationId) without the need to register or reduce anything, e.g. from a singleton component or from a specific chare. More...

#include <VolumeActions.hpp>

Static Public Member Functions

template<typename ParallelComponent , typename DbTagsList , typename Metavariables , typename ArrayIndex , typename... Ts, typename DataBox = db::DataBox<DbTagsList>>
static void apply (db::DataBox< DbTagsList > &box, Parallel::GlobalCache< Metavariables > &cache, const ArrayIndex &, const gsl::not_null< Parallel::NodeLock * >, const std::string &h5_file_name, const std::string &subfile_path, const observers::ObservationId &observation_id, std::vector< ElementVolumeData > &&volume_data)
 

Detailed Description

Write volume data (such as surface data) at a given time (specified by an ObservationId) without the need to register or reduce anything, e.g. from a singleton component or from a specific chare.

Use observers::Actions::ContributeVolumeDataToWriter instead if you need to write volume data from an array chare (e.g., writing volume data from all the elements in a domain).

Invoke this action on the observers::ObserverWriter component on node 0. Pass the following arguments when invoking this action:

  • h5_file_name: the name of the HDF5 file where the volume data is to be written (without the .h5 extension).
  • subfile_path: the path where the volume data should be written in the HDF5 file. Include a leading slash, e.g., /AhA.
  • observation_id: the ObservationId corresponding to the volume data.
  • volume_data: the volume data to be written.

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