10 #ifndef SRC_INCLUDE_VTKOUTPUT_H_ 11 #define SRC_INCLUDE_VTKOUTPUT_H_ 15 #include <boost/filesystem.hpp> 37 VtkOutput(
const bf::path &path,
const std::string &name,
49 const int event_number)
override;
63 double impact_parameter,
bool empty_event)
override;
73 const std::unique_ptr<Clock> &clock,
122 std::string
make_filename(
const std::string &description,
int counter);
140 template <
typename T>
142 const std::string &description);
152 template <
typename T,
typename F>
154 const std::string &varname, F &&
function);
164 template <
typename T,
typename F>
166 const std::string &varname, F &&
function);
192 #endif // SRC_INCLUDE_VTKOUTPUT_H_ A class to pre-calculate and store parameters relevant for density calculation.
void at_eventstart(const Particles &particles, const int event_number) override
Writes the initial particle information list of an event to the VTK output.
void write_vtk_vector(std::ofstream &file, RectangularLattice< T > &lat, const std::string &varname, F &&function)
Write a VTK vector.
void write_vtk_header(std::ofstream &file, RectangularLattice< T > &lat, const std::string &description)
Write the VTK header.
void thermodynamics_output(const ThermodynamicQuantity tq, const DensityType dt, RectangularLattice< DensityOnLattice > &lattice) override
Prints the density lattice in VTK format on a grid.
int vtk_tmn_output_counter_
Number of energy-momentum tensor lattice vtk output in current event.
SMASH output in a paraview format, intended for simple visualization.
int vtk_v_landau_output_counter_
Number of Landau rest frame velocity vtk output in current event.
const bf::path base_path_
filesystem path for output
A container class to hold all the arrays on the lattice and access them.
int current_event_
Event number.
std::string make_filename(const std::string &description, int counter)
Make a file name given a description and a counter.
ThermodynamicQuantity
Represents thermodynamic quantities that can be printed out.
int vtk_tmn_landau_output_counter_
Number of Landau frame energy-momentum tensor vtk output in current event.
int vtk_output_counter_
Number of vtk output in current event.
void write_vtk_scalar(std::ofstream &file, RectangularLattice< T > &lat, const std::string &varname, F &&function)
Write a VTK scalar.
Helper structure for Experiment to hold output options and parameters.
The GrandCanThermalizer class implements the following functionality:
void at_intermediate_time(const Particles &particles, const std::unique_ptr< Clock > &clock, const DensityParameters &dens_param) override
Writes out all current particles.
int vtk_fluidization_counter_
Number of fluidization output.
bool is_thermodynamics_output_
Is the VTK output a thermodynamics output.
int vtk_density_output_counter_
Number of density lattice vtk output in current event.
void at_eventend(const Particles &particles, const int event_number, double impact_parameter, bool empty_event) override
Writes the final particle information list of an event to the VTK output.
void write(const Particles &particles)
Write the given particles to the output.
The Particles class abstracts the storage and manipulation of particles.
DensityType
Allows to choose which kind of density to calculate.
VtkOutput(const bf::path &path, const std::string &name, const OutputParameters &out_par)
Create a new VTK output.
std::string make_varname(const ThermodynamicQuantity tq, const DensityType dens_type)
Make a variable name given quantity and density type.
Abstraction of generic output.