Version: SMASH-3.3
constants.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2013-2021,2023,2025
3  * SMASH Team
4  *
5  * GNU General Public License (GPLv3 or later)
6  */
7 #ifndef SRC_INCLUDE_SMASH_CONSTANTS_H_
8 #define SRC_INCLUDE_SMASH_CONSTANTS_H_
9 
10 #include <cmath>
11 #include <cstdint>
12 #include <limits>
13 
20 namespace smash {
21 
23 template <typename T>
24 constexpr T smash_NaN = std::numeric_limits<T>::quiet_NaN();
25 
29 constexpr double hbarc = 0.197327053;
30 
32 constexpr double fm2_mb = 0.1;
33 
35 constexpr double gev2_mb = hbarc * hbarc / fm2_mb;
36 
38 constexpr double mev_to_gev = 1.e-3;
39 
41 constexpr double really_small = 1.0e-6;
42 
44 constexpr double very_small_double = 1.0e-15;
45 
49 constexpr double twopi = 2. * M_PI;
50 
52 constexpr double nuclear_density = 0.168;
53 
55 constexpr double small_number = 1.0e-4;
56 
62 constexpr double nucleon_mass = 0.938;
63 
69 constexpr double pion_mass = 0.138;
70 
76 constexpr double kaon_mass = 0.494;
77 
83 constexpr double omega_mass = 0.783;
84 
90 constexpr double delta_mass = 1.232;
96 constexpr double deuteron_mass = 1.8756;
97 
99 constexpr double fine_structure = 7.2973525698e-3;
100 
102 const double elementary_charge = std::sqrt(fine_structure * 4 * M_PI);
103 
107 constexpr int maximum_rndm_seed_in_pythia = 900000000;
108 
115 constexpr double minimum_sqrts_pythia_can_handle = 10.0; // GeV
116 
122 constexpr std::uint32_t ID_PROCESS_PHOTON =
123  std::numeric_limits<std::uint32_t>::max();
124 
125 } // namespace smash
126 
127 #endif // SRC_INCLUDE_SMASH_CONSTANTS_H_
Definition: action.h:24
constexpr double mev_to_gev
MeV to GeV conversion factor.
Definition: constants.h:38
constexpr double delta_mass
Delta mass in GeV.
Definition: constants.h:90
constexpr double gev2_mb
GeV^-2 <-> mb conversion factor.
Definition: constants.h:35
constexpr int maximum_rndm_seed_in_pythia
The maximum value of the random seed used in PYTHIA.
Definition: constants.h:107
constexpr std::uint32_t ID_PROCESS_PHOTON
Process ID for any photon process.
Definition: constants.h:122
constexpr double minimum_sqrts_pythia_can_handle
Energy in GeV, below which hard reactions via pythia are impossible.
Definition: constants.h:115
constexpr double very_small_double
A very small double, used to avoid division by zero.
Definition: constants.h:44
constexpr double twopi
.
Definition: constants.h:49
constexpr double small_number
Physical error tolerance.
Definition: constants.h:55
constexpr double deuteron_mass
Deuteron mass in GeV.
Definition: constants.h:96
constexpr double nucleon_mass
Nucleon mass in GeV.
Definition: constants.h:62
constexpr double nuclear_density
Ground state density of symmetric nuclear matter [fm^-3].
Definition: constants.h:52
constexpr double pion_mass
Pion mass in GeV.
Definition: constants.h:69
constexpr double hbarc
GeV <-> fm conversion factor.
Definition: constants.h:29
constexpr T smash_NaN
Centralized alias for a quiet NaN.
Definition: constants.h:24
constexpr double really_small
Numerical error tolerance.
Definition: constants.h:41
constexpr double kaon_mass
Kaon mass in GeV.
Definition: constants.h:76
constexpr double fine_structure
Fine-struture constant, approximately 1/137.
Definition: constants.h:99
constexpr double omega_mass
omega mass in GeV.
Definition: constants.h:83
const double elementary_charge
Elementary electric charge in natural units, approximately 0.3.
Definition: constants.h:102
constexpr double fm2_mb
mb <-> fm^2 conversion factor.
Definition: constants.h:32