Version: SMASH-2.0
spheremodus.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2013-2020
3  * SMASH Team
4  *
5  * GNU General Public License (GPLv3 or later)
6  */
7 #ifndef SRC_INCLUDE_SMASH_SPHEREMODUS_H_
8 #define SRC_INCLUDE_SMASH_SPHEREMODUS_H_
9 
10 #include <stdint.h>
11 #include <cmath>
12 #include <list>
13 #include <map>
14 
15 #include "forwarddeclarations.h"
16 #include "modusdefault.h"
17 
18 namespace smash {
19 
47 class SphereModus : public ModusDefault {
48  public:
60  explicit SphereModus(Configuration modus_config,
61  const ExperimentParameters &parameters);
62 
73  double initial_conditions(Particles *particles,
74  const ExperimentParameters &parameters);
75 
76  private:
78  double radius_;
82  const double start_time_ = 0.;
87  const bool use_thermal_ = false;
92  const double mub_;
97  const double mus_;
108  const std::map<PdgCode, int> init_multipl_;
113  std::map<PdgCode, double> average_multipl_;
124  const bool insert_jet_ = false;
133  const double jet_mom_;
140  friend std::ostream &operator<<(std::ostream &, const SphereModus &);
141 };
142 } // namespace smash
143 #endif // SRC_INCLUDE_SMASH_SPHEREMODUS_H_
smash
Definition: action.h:24
smash::SphereModus::mus_
const double mus_
Strange chemical potential for thermal initialization; only used if use_thermal_ is true.
Definition: spheremodus.h:97
smash::SphereModus::initial_conditions
double initial_conditions(Particles *particles, const ExperimentParameters &parameters)
Generates initial state of the particles in the system according to specified parameters: number of p...
Definition: spheremodus.cc:231
smash::SphereModus
Definition: spheremodus.h:47
smash::SphereModus::init_multipl_
const std::map< PdgCode, int > init_multipl_
Particle multiplicities at initialization; required if use_thermal_ is false.
Definition: spheremodus.h:108
smash::SphereModus::insert_jet_
const bool insert_jet_
Whether to insert a single high energy particle at the center of the expanding sphere (0,...
Definition: spheremodus.h:124
smash::SphereModus::account_for_resonance_widths_
const bool account_for_resonance_widths_
In case of thermal initialization: true – account for resonance spectral functions,...
Definition: spheremodus.h:103
smash::SphereModus::radius_
double radius_
Sphere radius (in fm/c)
Definition: spheremodus.h:78
modusdefault.h
smash::SphereModus::start_time_
const double start_time_
Starting time for the Sphere.
Definition: spheremodus.h:82
smash::SphereModus::init_distr_
const SphereInitialCondition init_distr_
Initialization scheme for momenta in the sphere; used for expanding metric setup.
Definition: spheremodus.h:118
smash::Configuration
Interface to the SMASH configuration files.
Definition: configuration.h:464
smash::SphereModus::operator<<
friend std::ostream & operator<<(std::ostream &, const SphereModus &)
Definition: spheremodus.cc:189
forwarddeclarations.h
smash::SphereModus::mub_
const double mub_
Baryon chemical potential for thermal initialization; only used if use_thermal_ is true.
Definition: spheremodus.h:92
smash::SphereModus::sphere_temperature_
double sphere_temperature_
Temperature for momentum distribution (in GeV)
Definition: spheremodus.h:80
smash::SphereModus::jet_pdg_
const PdgCode jet_pdg_
Pdg of the particle to use as a jet; necessary if insert_jet_ is true, unused otherwise.
Definition: spheremodus.h:129
smash::PdgCode
Definition: pdgcode.h:108
smash::ModusDefault
Definition: modusdefault.h:44
SphereInitialCondition
SphereInitialCondition
Initial condition for a particle in a sphere.
Definition: forwarddeclarations.h:151
smash::Particles
Definition: particles.h:33
smash::SphereModus::average_multipl_
std::map< PdgCode, double > average_multipl_
Average multiplicities in case of thermal initialization.
Definition: spheremodus.h:113
smash::SphereModus::jet_mom_
const double jet_mom_
Initial momentum of the jet particle; only used if insert_jet_ is true.
Definition: spheremodus.h:133
smash::SphereModus::SphereModus
SphereModus(Configuration modus_config, const ExperimentParameters &parameters)
Constructor.
Definition: spheremodus.cc:164
smash::ExperimentParameters
Helper structure for Experiment.
Definition: experimentparameters.h:24
smash::SphereModus::use_thermal_
const bool use_thermal_
Whether to use a thermal initialization for all particles instead of specific numbers.
Definition: spheremodus.h:87