7 #ifndef SRC_INCLUDE_SMASH_OUTPUTPARAMETERS_H_
8 #define SRC_INCLUDE_SMASH_OUTPUTPARAMETERS_H_
50 if (conf.has_value({
"Thermodynamics"})) {
51 auto subcon = conf[
"Thermodynamics"];
52 if (subcon.has_value({
"Position"})) {
53 const std::array<double, 3> a = subcon.take({
"Position"});
56 std::set<ThermodynamicQuantity> quan = subcon.take({
"Quantities"});
66 "Requested Thermodynamics output with Density type None. ",
67 "Change the density type to avoid output being dropped.");
73 if (conf.has_value({
"Particles"})) {
79 if (conf.has_value({
"Collisions"})) {
80 coll_extended = conf.take({
"Collisions",
"Extended"},
false);
81 coll_printstartend = conf.take({
"Collisions",
"Print_Start_End"},
false);
84 if (conf.has_value({
"Dileptons"})) {
85 dil_extended = conf.take({
"Dileptons",
"Extended"},
false);
88 if (conf.has_value({
"Photons"})) {
89 photons_extended = conf.take({
"Photons",
"Extended"},
false);
92 if (conf.has_value({
"Initial_Conditions"})) {
93 ic_extended = conf.take({
"Initial_Conditions",
"Extended"},
false);
96 if (conf.has_value({
"Rivet"})) {
97 subcon_for_rivet = conf[
"Rivet"];
107 if (name ==
"Collisions") {
108 return coll_extended;
109 }
else if (name ==
"Dileptons") {
111 }
else if (name ==
"Photons") {
112 return photons_extended;
Interface to the SMASH configuration files.
The ThreeVector class represents a physical three-vector with the components .
OutputOnlyFinal
Whether and when only final state particles should be printed.
@ Yes
Print only final-state particles.
#define SMASH_SOURCE_LOCATION
Hackery that is required to output the location in the source code where the log statement occurs.
std::array< einhard::Logger<>, std::tuple_size< LogArea::AreaTuple >::value > logg
An array that stores all pre-configured Logger objects.
static constexpr int LExperiment
DensityType
Allows to choose which kind of density to calculate.
Helper structure for Experiment to hold output options and parameters.
bool dil_extended
Extended format for dilepton output.
OutputParameters()
Default constructor, useful for tests.
bool coll_extended
Extended format for collisions output.
bool part_extended
Extended format for particles output.
bool photons_extended
Extended format for photon output.
OutputParameters(Configuration &&conf)
Constructor from configuration.
bool td_v_landau
Print out Landau velocity of type td_dens_type or not?
bool td_tmn_landau
Print out energy-momentum tensor in Landau rest frame (of type td_dens_type) or not?
bool td_jQBS
Print out QBS 4-currents or not?
OutputOnlyFinal part_only_final
Print only final particles in event.
DensityType td_dens_type
Type (e.g., baryon/pion/hadron) of thermodynamic quantity.
bool td_tmn
Print out energy-momentum tensor of type td_dens_type or not?
bool td_smearing
Whether smearing is on or off; WARNING : if smearing is off, then final result is in GeV instead of G...
bool td_rho_eckart
Print out Eckart rest frame density of type td_dens_type or not?
bool td_only_participants
Flag reporting whether only participants are considered (true) or also spectators (false)
bool ic_extended
Extended initial conditions output.
ThreeVector td_position
Point, where thermodynamic quantities are calculated.
Configuration subcon_for_rivet
Rivet specfic setup configurations.
bool get_coll_extended(std::string name) const
Pass correct extended flag to binary collision output constructor.
bool coll_printstartend
Print initial and final particles in event into collision output.