|
SpECTRE
v2025.08.19
|
Class that standardizes the output of our worldtube data into the Bondi modal format that the CharacteristicExtract executable can read in. More...
#include <WorldtubeModeRecorder.hpp>
Public Member Functions | |
| WorldtubeModeRecorder (size_t output_l_max, const std::string &h5_filename) | |
| template<int Spin> | |
| void | append_modal_data (const std::string &subfile_path, double time, const ComplexDataVector &nodal_data, size_t data_l_max) |
Writes bondi modal data to the given subfile_path. More... | |
| template<int Spin> | |
| void | append_modal_data (const std::string &subfile_path, double time, const ComplexModalVector &modal_data, size_t data_l_max) |
Writes bondi modal data to the given subfile_path. More... | |
| const std::vector< std::string > & | all_legend () const |
| The legend for writing dat files for both spin = 0 (real) and spin != 0 (all) quantities. | |
| const std::vector< std::string > & | real_legend () const |
| The legend for writing dat files for both spin = 0 (real) and spin != 0 (all) quantities. | |
Class that standardizes the output of our worldtube data into the Bondi modal format that the CharacteristicExtract executable can read in.
Takes Bondi nodal data in fill_data_to_write and gives the modal data as a std::vector<double> with the time as the 0th component. The output_l_max that this class is constructed with is the LMax that will be written to disk.
| void Cce::WorldtubeModeRecorder::append_modal_data | ( | const std::string & | subfile_path, |
| double | time, | ||
| const ComplexDataVector & | nodal_data, | ||
| size_t | data_l_max | ||
| ) |
Writes bondi modal data to the given subfile_path.
If nodal data is given (ComplexDataVector), uses swsh_transform to transform the data and libsharp_to_goldberg_modes to convert the libsharp formatted array into modes.
There are exactly half the number of modes for Spin = 0 quantities as their are for Spin != 0 because we don't include imaginary or m=0 for Spin = 0.
The data_l_max is the LMax of the nodal_data or modal_data and must be >= output_l_max that this class was constructed with. A restriction operation will be performed on the data before it is written, if necessary.
| void Cce::WorldtubeModeRecorder::append_modal_data | ( | const std::string & | subfile_path, |
| double | time, | ||
| const ComplexModalVector & | modal_data, | ||
| size_t | data_l_max | ||
| ) |
Writes bondi modal data to the given subfile_path.
If nodal data is given (ComplexDataVector), uses swsh_transform to transform the data and libsharp_to_goldberg_modes to convert the libsharp formatted array into modes.
There are exactly half the number of modes for Spin = 0 quantities as their are for Spin != 0 because we don't include imaginary or m=0 for Spin = 0.
The data_l_max is the LMax of the nodal_data or modal_data and must be >= output_l_max that this class was constructed with. A restriction operation will be performed on the data before it is written, if necessary.