39#ifndef PFC_VTK_WRITER_HPP
40#define PFC_VTK_WRITER_HPP
61 std::array<int, 3> m_global_size;
62 std::array<int, 3> m_local_size;
63 std::array<int, 3> m_offset;
64 std::array<double, 3> m_origin = {0.0, 0.0, 0.0};
65 std::array<double, 3> m_spacing = {1.0, 1.0, 1.0};
66 std::string m_field_name =
"Field";
74 std::string generate_filename(
int increment,
int rank = -1)
const;
79 void write_vti_header(std::ofstream &
file,
int increment)
const;
84 void write_vti_data(std::ofstream &
file,
const RealField &data)
const;
89 void write_pvti_file(
int increment)
const;
107 const std::array<int, 3> &
arr_offset)
override;
117 void set_spacing(
const std::array<double, 3> &spacing) { m_spacing = spacing; }
Definition results_writer.hpp:182
VTK ImageData format writer.
Definition vtk_writer.hpp:59
void set_domain(const std::array< int, 3 > &arr_global, const std::array< int, 3 > &arr_local, const std::array< int, 3 > &arr_offset) override
Set domain decomposition.
MPI_Status write(int increment, const ComplexField &data) override
Write complex field to VTK file (writes magnitude)
void set_origin(const std::array< double, 3 > &origin)
Set origin of the domain.
Definition vtk_writer.hpp:112
VTKWriter(const std::string &filename)
Construct VTKWriter with filename pattern.
Definition vtk_writer.hpp:97
void set_spacing(const std::array< double, 3 > &spacing)
Set spacing of the domain.
Definition vtk_writer.hpp:117
void set_field_name(const std::string &name)
Set field name for VTK output.
Definition vtk_writer.hpp:122
MPI_Status write(int increment, const RealField &data) override
Write real field to VTK file.
Base interface for simulation output and I/O operations.
Represents the global simulation domain (the "world").
Definition world.hpp:91