#include <outputinterface.h>
Abstraction of generic output.
Any output should inherit this class. It provides virtual methods that will be called at predefined moments: 1) At event start and event end: at_eventstart, at_eventend 2) After every fixed time period: at_intermediate_time, thermodynamics_output 3) At each interaction: at_interaction
Definition at line 72 of file outputinterface.h.
Public Member Functions | |
| OutputInterface (std::string name) | |
| Construct output interface.  More... | |
| virtual | ~OutputInterface ()=default | 
| virtual void | at_eventstart (const Particles &particles, const int event_number, const EventInfo &info) | 
| Output launched at event start after initialization, when particles are generated but not yet propagated.  More... | |
| virtual void | at_eventstart (const std::vector< Particles > &ensembles, int event_number) | 
| Output launched at event start after initialization, when particles are generated but not yet propagated.  More... | |
| virtual void | at_eventstart (const int event_number, const ThermodynamicQuantity tq, const DensityType dens_type, RectangularLattice< DensityOnLattice > lattice) | 
| Output launched at event start after initialization, when particles are generated but not yet propagated.  More... | |
| virtual void | at_eventstart (const int event_number, const ThermodynamicQuantity tq, const DensityType dens_type, RectangularLattice< EnergyMomentumTensor > lattice) | 
| Output launched atevent start after initialization, when particles are generated but not yet propagated.  More... | |
| virtual void | at_eventend (const int event_number, const ThermodynamicQuantity tq, const DensityType dens_type) | 
| Output launched at event end.  More... | |
| virtual void | at_eventend (const ThermodynamicQuantity tq) | 
| Output launched at event end.  More... | |
| virtual void | at_eventend (const Particles &particles, const int event_number, const EventInfo &info) | 
| Output launched at event end.  More... | |
| virtual void | at_eventend (const std::vector< Particles > &ensembles, const int event_number) | 
| Output launched at event end.  More... | |
| virtual void | at_interaction (const Action &action, const double density) | 
| Called whenever an action modified one or more particles.  More... | |
| virtual void | at_intermediate_time (const Particles &particles, const std::unique_ptr< Clock > &clock, const DensityParameters &dens_param, const EventInfo &info) | 
| Output launched after every N'th timestep.  More... | |
| virtual void | at_intermediate_time (const std::vector< Particles > &ensembles, const std::unique_ptr< Clock > &clock, const DensityParameters &dens_param) | 
| Output launched after every N'th timestep.  More... | |
| virtual void | thermodynamics_output (const ThermodynamicQuantity tq, const DensityType dt, RectangularLattice< DensityOnLattice > &lattice) | 
| Output to write thermodynamics from the lattice.  More... | |
| virtual void | thermodynamics_output (const ThermodynamicQuantity tq, const DensityType dt, RectangularLattice< EnergyMomentumTensor > &lattice) | 
| Output to write energy-momentum tensor and related quantities from the lattice.  More... | |
| virtual void | thermodynamics_lattice_output (RectangularLattice< DensityOnLattice > &lattice, const double current_time) | 
| Output to write thermodynamics from the lattice.  More... | |
| virtual void | thermodynamics_lattice_output (RectangularLattice< DensityOnLattice > &lattice, const double current_time, const std::vector< Particles > &ensembles, const DensityParameters &dens_param) | 
| Output to write thermodynamics from the lattice.  More... | |
| virtual void | thermodynamics_lattice_output (const ThermodynamicQuantity tq, RectangularLattice< EnergyMomentumTensor > &lattice, const double current_time) | 
| Output to write energy-momentum tensor and related quantities from the lattice.  More... | |
| virtual void | thermodynamics_output (const GrandCanThermalizer &gct) | 
| Output to write energy-momentum tensor and related quantities from the thermalizer class.  More... | |
| virtual void | fields_output (const std::string name1, const std::string name2, RectangularLattice< std::pair< ThreeVector, ThreeVector >> &lat) | 
| Write fields in vtk output.  More... | |
| bool | is_dilepton_output () const | 
| Get, whether this is the dilepton output?  More... | |
| bool | is_photon_output () const | 
| Get, whether this is the photon output?  More... | |
| bool | is_IC_output () const | 
| Get, whether this is the IC output?  More... | |
| const char * | to_string (const ThermodynamicQuantity tq) | 
| Convert thermodynamic quantities to strings.  More... | |
| const char * | to_string (const DensityType dens_type) | 
| Convert density types to strings.  More... | |
Protected Attributes | |
| const bool | is_dilepton_output_ | 
| Is this the dilepton output?  More... | |
| const bool | is_photon_output_ | 
| Is this the photon output?  More... | |
| const bool | is_IC_output_ | 
| Is this the IC output?  More... | |
      
  | 
  inlineexplicit | 
Construct output interface.
| [in] | name | (File)name of output. | 
Definition at line 78 of file outputinterface.h.
      
  | 
  virtualdefault | 
      
  | 
  inlinevirtual | 
Output launched at event start after initialization, when particles are generated but not yet propagated.
| particles | List of particles. | |
| event_number | Number of the current event. | |
| [in] | info | Event info, see event_info | 
Reimplemented in smash::ICOutput, smash::BinaryOutputInitialConditions, smash::BinaryOutputCollisions, smash::BinaryOutputParticles, smash::HepMcInterface, smash::OscarOutput< Format, Contents >, smash::RootOutput, and smash::VtkOutput.
Definition at line 91 of file outputinterface.h.
      
  | 
  inlinevirtual | 
Output launched at event start after initialization, when particles are generated but not yet propagated.
| ensembles | List of particles. | |
| [in] | event_number | Number of the current event. | 
Reimplemented in smash::ThermodynamicOutput.
Definition at line 103 of file outputinterface.h.
      
  | 
  inlinevirtual | 
Output launched at event start after initialization, when particles are generated but not yet propagated.
| [in] | event_number | Number of the current event. | 
| [in] | tq | Thermodynamic quantity to deal with. | 
| [in] | dens_type | Density type for the reference frame. | 
| [in] | lattice | Lattice of tabulated values. | 
Reimplemented in smash::ThermodynamicLatticeOutput.
Definition at line 117 of file outputinterface.h.
      
  | 
  inlinevirtual | 
Output launched atevent start after initialization, when particles are generated but not yet propagated.
| [in] | event_number | Number of the current event. | 
| [in] | tq | Thermodynamic quantity to deal with. | 
| [in] | dens_type | Density type for the reference frame. | 
| [in] | lattice | Lattice of tabulated values. | 
Reimplemented in smash::ThermodynamicLatticeOutput.
Definition at line 135 of file outputinterface.h.
      
  | 
  inlinevirtual | 
Output launched at event end.
Event end is determined by maximal timestep option.
| [in] | event_number | Number of the current event. | 
| [in] | tq | Thermodynamic quantity to deal with | 
| [in] | dens_type | Density type for the evaluation of thermodynamic quantities | 
Definition at line 153 of file outputinterface.h.
      
  | 
  inlinevirtual | 
Output launched at event end.
Event end is determined by maximal timestep option.
| [in] | tq | Thermodynamic quantity to deal with. | 
Reimplemented in smash::ThermodynamicLatticeOutput.
Definition at line 166 of file outputinterface.h.
      
  | 
  inlinevirtual | 
Output launched at event end.
Event end is determined by maximal timestep option.
| particles | List of particles. | |
| event_number | Number of the current event. | |
| [in] | info | Event info, see event_info | 
Reimplemented in smash::OscarOutput< Format, Contents >, smash::BinaryOutputParticles, smash::BinaryOutputInitialConditions, smash::ICOutput, smash::RootOutput, and smash::VtkOutput.
Definition at line 175 of file outputinterface.h.
      
  | 
  inlinevirtual | 
Output launched at event end.
Event end is determined by maximal timestep option.
| ensembles | List of particles. | 
| event_number | Number of the current event. | 
Reimplemented in smash::ThermodynamicOutput.
Definition at line 187 of file outputinterface.h.
      
  | 
  inlinevirtual | 
Called whenever an action modified one or more particles.
| action | The action object, containing the initial and final state etc. | 
| density | The density at the interaction point. | 
Reimplemented in smash::BinaryOutputCollisions, smash::HepMcInterface, smash::OscarOutput< Format, Contents >, smash::RootOutput, smash::BinaryOutputInitialConditions, and smash::ICOutput.
Definition at line 200 of file outputinterface.h.
      
  | 
  inlinevirtual | 
Output launched after every N'th timestep.
N is controlled by an option.
| particles | List of particles. | |
| clock | System clock. | |
| dens_param | Parameters for density calculation. | |
| [in] | info | Event info, see event_info | 
Reimplemented in smash::ICOutput, smash::BinaryOutputParticles, smash::OscarOutput< Format, Contents >, smash::RootOutput, and smash::VtkOutput.
Definition at line 212 of file outputinterface.h.
      
  | 
  inlinevirtual | 
Output launched after every N'th timestep.
N is controlled by an option.
| ensembles | List of particles. | 
| clock | System clock. | 
| dens_param | Parameters for density calculation. | 
Reimplemented in smash::ThermodynamicOutput.
Definition at line 227 of file outputinterface.h.
      
  | 
  inlinevirtual | 
Output to write thermodynamics from the lattice.
| tq | Thermodynamic quantity to be written, used for file name etc. | 
| dt | Type of density, i.e. which particles to take into account. | 
| lattice | Lattice of tabulated values. | 
Used for vtk output.
Reimplemented in smash::VtkOutput.
Definition at line 243 of file outputinterface.h.
      
  | 
  inlinevirtual | 
Output to write energy-momentum tensor and related quantities from the lattice.
| tq | Thermodynamic quantity to be written: Tmn, Tmn_Landau, v_Landau. | 
| dt | Type of density, i.e. which particles to take into account. | 
| lattice | Lattice of tabulated values. | 
Used for vtk output.
Reimplemented in smash::VtkOutput.
Definition at line 260 of file outputinterface.h.
      
  | 
  inlinevirtual | 
Output to write thermodynamics from the lattice.
| [in] | lattice | Lattice type DensityOnLattice of tabulated values. | 
| [in] | current_time | Time of the simulation in the computational frame. | 
Used for thermodynamic lattice output.
Reimplemented in smash::ThermodynamicLatticeOutput.
Definition at line 275 of file outputinterface.h.
      
  | 
  inlinevirtual | 
Output to write thermodynamics from the lattice.
| [in] | lattice | Lattice type FourVector of tabulated values. | 
| [in] | current_time | Time of the simulation in the computational frame. | 
| [in] | ensembles | Particles, from which the 4-currents j_{Q,B,S} are computed | 
| [in] | dens_param | set of parameters, defining smearing. For more info about smearing see ASCII Thermodynamics Output. | 
Used for thermodynamic lattice output.
Reimplemented in smash::ThermodynamicLatticeOutput.
Definition at line 294 of file outputinterface.h.
      
  | 
  inlinevirtual | 
Output to write energy-momentum tensor and related quantities from the lattice.
| [in] | tq | Thermodynamic quantity to be written, used for file name etc. | 
| [in] | lattice | Lattice type EnergyMomentumTensor of tabulated values. | 
| [in] | current_time | Time of the simulation in the computational frame. | 
Used for thermodynamic lattice output.
Reimplemented in smash::ThermodynamicLatticeOutput.
Definition at line 313 of file outputinterface.h.
      
  | 
  inlinevirtual | 
Output to write energy-momentum tensor and related quantities from the thermalizer class.
| gct | Pointer to thermalizer | 
Only used for vtk output. Not connected to ThermodynamicOutput.
Reimplemented in smash::VtkOutput.
Definition at line 329 of file outputinterface.h.
      
  | 
  inlinevirtual | 
Write fields in vtk output.
Fields are a pair of threevectors for example electric and magnetic field
| [in] | name1 | Name of the first field | 
| [in] | name2 | Name of the second field | 
| [in] | lat | Lattice storing both fields | 
Reimplemented in smash::VtkOutput.
Definition at line 342 of file outputinterface.h.
      
  | 
  inline | 
Get, whether this is the dilepton output?
Definition at line 351 of file outputinterface.h.
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
Convert thermodynamic quantities to strings.
| [in] | tq | Enum value of the thermodynamic quantity. | 
Definition at line 364 of file outputinterface.h.
      
  | 
  inline | 
Convert density types to strings.
| [in] | dens_type | enum value of the density type | 
Definition at line 385 of file outputinterface.h.
      
  | 
  protected | 
Is this the dilepton output?
Definition at line 409 of file outputinterface.h.
      
  | 
  protected | 
Is this the photon output?
Definition at line 412 of file outputinterface.h.
      
  | 
  protected | 
Is this the IC output?
Definition at line 415 of file outputinterface.h.