Version: SMASH-3.2.2
input_keys.h
Go to the documentation of this file.
1 /*
2  *
3  * Copyright (c) 2022-2025
4  * SMASH Team
5  *
6  * GNU General Public License (GPLv3 or later)
7  *
8  */
9 
10 #ifndef SRC_INCLUDE_SMASH_INPUT_KEYS_H_
11 #define SRC_INCLUDE_SMASH_INPUT_KEYS_H_
12 
13 #include <array>
14 #include <functional>
15 #include <map>
16 #include <set>
17 #include <string>
18 #include <utility>
19 #include <variant>
20 #include <vector>
21 
22 #include "einhard.hpp"
23 
24 #include "forwarddeclarations.h"
25 #include "key.h"
26 #include "pdgcode.h"
27 
28 namespace smash {
29 
48 struct InputSections {
50  using Section = KeyLabels;
51 
53  inline static const Section collisionTerm{"Collision_Term"};
55  inline static const Section c_dileptons =
56  InputSections::collisionTerm + "Dileptons";
58  inline static const Section c_pauliBlocking =
59  InputSections::collisionTerm + "Pauli_Blocking";
61  inline static const Section c_photons =
62  InputSections::collisionTerm + "Photons";
64  inline static const Section c_heavyFlavor =
65  InputSections::collisionTerm + "Heavy_Flavor";
67  inline static const Section c_stringParameters =
68  InputSections::collisionTerm + "String_Parameters";
70  inline static const Section c_stringTransition =
71  InputSections::collisionTerm + "String_Transition";
72 
74  inline static const Section forcedThermalization{"Forced_Thermalization"};
75 
77  inline static const Section general{"General"};
79  inline static const Section g_minEnsembles =
80  InputSections::general + "Minimum_Nonempty_Ensembles";
81 
83  inline static const Section lattice{"Lattice"};
84 
86  inline static const Section logging{"Logging"};
87 
89  inline static const Section modi{"Modi"};
91  inline static const Section m_box = InputSections::modi + "Box";
93  inline static const Section m_b_jet = InputSections::m_box + "Jet";
95  inline static const Section m_collider = InputSections::modi + "Collider";
97  inline static const Section m_c_impact = InputSections::m_collider + "Impact";
99  inline static const Section m_c_initialConditions =
100  InputSections::m_collider + "Initial_Conditions";
102  inline static const Section m_c_projectile =
103  InputSections::m_collider + "Projectile";
105  inline static const Section m_c_p_alphaClustered =
106  InputSections::m_c_projectile + "Alpha_Clustered";
108  inline static const Section m_c_p_custom =
111  inline static const Section m_c_p_deformed =
112  InputSections::m_c_projectile + "Deformed";
114  inline static const Section m_c_p_orientation =
115  InputSections::m_c_projectile + "Orientation";
117  inline static const Section m_c_target = InputSections::m_collider + "Target";
119  inline static const Section m_c_t_alphaClustered =
120  InputSections::m_c_target + "Alpha_Clustered";
122  inline static const Section m_c_t_custom =
123  InputSections::m_c_target + "Custom";
125  inline static const Section m_c_t_deformed =
126  InputSections::m_c_target + "Deformed";
128  inline static const Section m_c_t_orientation =
129  InputSections::m_c_target + "Orientation";
131  inline static const Section m_list = InputSections::modi + "List";
133  inline static const Section m_listBox = InputSections::modi + "ListBox";
135  inline static const Section m_sphere = InputSections::modi + "Sphere";
137  inline static const Section m_s_jet = InputSections::m_sphere + "Jet";
138 
140  inline static const Section output{"Output"};
142  inline static const Section o_collisions =
143  InputSections::output + "Collisions";
145  inline static const Section o_coulomb = InputSections::output + "Coulomb";
147  inline static const Section o_dileptons = InputSections::output + "Dileptons";
149  inline static const Section o_initialConditions =
150  InputSections::output + "Initial_Conditions";
152  inline static const Section o_particles = InputSections::output + "Particles";
154  inline static const Section o_photons = InputSections::output + "Photons";
156  inline static const Section o_rivet = InputSections::output + "Rivet";
158  inline static const Section o_r_weights = InputSections::o_rivet + "Weights";
160  inline static const Section o_thermodynamics =
161  InputSections::output + "Thermodynamics";
162 
164  inline static const Section potentials{"Potentials"};
166  inline static const Section p_coulomb = InputSections::potentials + "Coulomb";
168  inline static const Section p_momentumDependence =
169  InputSections::potentials + "Momentum_Dependence";
171  inline static const Section p_skyrme = InputSections::potentials + "Skyrme";
173  inline static const Section p_symmetry =
174  InputSections::potentials + "Symmetry";
176  inline static const Section p_vdf = InputSections::potentials + "VDF";
177 };
178 
1067 struct InputKeys {
1071  inline static const Key<std::string> particles{{"particles"}, {"0.30"}};
1075  inline static const Key<std::string> decaymodes{{"decaymodes"}, {"0.30"}};
1076 
1093  inline static const Key<double> gen_endTime{
1094  InputSections::general + "End_Time", {"0.50"}};
1095 
1119  inline static const Key<std::string> gen_modus{
1120  InputSections::general + "Modus", {"0.50"}};
1121 
1135  inline static const Key<int> gen_nevents{InputSections::general + "Nevents",
1136  {"0.50"}};
1137 
1148  inline static const Key<int64_t> gen_randomseed{
1149  InputSections::general + "Randomseed", {"0.50"}};
1150 
1162  InputSections::g_minEnsembles + "Maximum_Ensembles_Run", {"2.2"}};
1163 
1174  InputSections::g_minEnsembles + "Number", {"1.3"}};
1175 
1204  inline static const Key<double> gen_deltaTime{
1205  InputSections::general + "Delta_Time", 1.0, {"0.50"}};
1206 
1228  InputSections::general + "Derivatives_Mode",
1230  {"2.1"}};
1231 
1245  InputSections::general + "Discrete_Weight", 1. / 3, {"2.1"}};
1246 
1274  inline static const Key<int> gen_ensembles{
1275  InputSections::general + "Ensembles", 1, {"2.1"}};
1276 
1292  inline static const Key<double> gen_expansionRate{
1293  InputSections::general + "Expansion_Rate", 0.1, {"1.1"}};
1294 
1322  InputSections::general + "Field_Derivatives_Mode",
1324  {"2.1"}};
1325 
1337  InputSections::general + "Gauss_Cutoff_In_Sigma", 4.0, {"0.80"}};
1338 
1350  InputSections::general + "Gaussian_Sigma", 1.0, {"0.60"}};
1351 
1366  inline static const Key<ExpansionMode> gen_metricType{
1367  InputSections::general + "Metric_Type",
1369  {"1.1"}};
1370 
1391  inline static const Key<RestFrameDensityDerivativesMode>
1393  InputSections::general + "Rest_Frame_Density_Derivatives_Mode",
1395  {"2.1", "3.0", "3.0"}};
1396 
1452  InputSections::general + "Smearing_Mode",
1454  {"2.1"}};
1455 
1483  inline static const Key<int> gen_testparticles{
1484  InputSections::general + "Testparticles", 1, {"0.50"}};
1485 
1508  InputSections::general + "Time_Step_Mode", TimeStepMode::Fixed, {"0.85"}};
1509 
1521  InputSections::general + "Triangular_Range", 2.0, {"2.1"}};
1522 
1534  inline static const Key<bool> gen_useGrid{
1535  InputSections::general + "Use_Grid", true, {"0.80"}};
1536 
1550  InputSections::logging + "default", einhard::ALL, {"0.50"}};
1551 
1564  inline static const Key<einhard::LogLevel> log_box{
1565  InputSections::logging + "Box", DefaultType::Dependent, {"0.30"}};
1566 
1577  InputSections::logging + "Collider", DefaultType::Dependent, {"0.30"}};
1578 
1589  InputSections::logging + "Configuration",
1591  {"3.0"}};
1592 
1603  InputSections::logging + "Experiment", DefaultType::Dependent, {"0.50"}};
1604 
1615  InputSections::logging + "GrandcanThermalizer",
1617  {"1.2"}};
1618 
1629  InputSections::logging + "InitialConditions",
1631  {"1.8"}};
1632 
1642  inline static const Key<einhard::LogLevel> log_list{
1643  InputSections::logging + "List", DefaultType::Dependent, {"0.60"}};
1644 
1654  inline static const Key<einhard::LogLevel> log_main{
1655  InputSections::logging + "Main", DefaultType::Dependent, {"0.50"}};
1656 
1666  inline static const Key<einhard::LogLevel> log_output{
1667  InputSections::logging + "Output", DefaultType::Dependent, {"0.60"}};
1668 
1679  InputSections::logging + "Potentials", DefaultType::Dependent, {"3.1"}};
1680 
1691  InputSections::logging + "RootSolver", DefaultType::Dependent, {"3.1"}};
1692 
1702  inline static const Key<einhard::LogLevel> log_sphere{
1703  InputSections::logging + "Sphere", DefaultType::Dependent, {"0.30"}};
1704 
1717  inline static const Key<einhard::LogLevel> log_action{
1718  InputSections::logging + "Action", DefaultType::Dependent, {"0.50"}};
1719 
1729  inline static const Key<einhard::LogLevel> log_clock{
1730  InputSections::logging + "Clock", DefaultType::Dependent, {"0.50"}};
1731 
1742  InputSections::logging + "CrossSections",
1744  {"1.3"}};
1745 
1756  InputSections::logging + "DecayModes", DefaultType::Dependent, {"0.50"}};
1757 
1768  InputSections::logging + "Density", DefaultType::Dependent, {"0.60"}};
1769 
1780  InputSections::logging + "Distributions",
1782  {"0.50"}};
1783 
1794  InputSections::logging + "FindScatter", DefaultType::Dependent, {"0.50"}};
1795 
1805  inline static const Key<einhard::LogLevel> log_fpe{
1806  InputSections::logging + "Fpe", DefaultType::Dependent, {"0.80"}};
1807 
1817  inline static const Key<einhard::LogLevel> log_grid{
1818  InputSections::logging + "Grid", DefaultType::Dependent, {"0.50"}};
1819 
1830  InputSections::logging + "HyperSurfaceCrossing",
1832  {"1.7"}};
1833 
1844  InputSections::logging + "InputParser", DefaultType::Dependent, {"0.50"}};
1845 
1856  InputSections::logging + "Lattice", DefaultType::Dependent, {"0.80"}};
1857 
1868  InputSections::logging + "Nucleus", DefaultType::Dependent, {"0.30"}};
1869 
1880  InputSections::logging + "ParticleType",
1882  {"0.50"}};
1883 
1894  InputSections::logging + "PauliBlocking",
1896  {"0.7.1"}};
1897 
1908  InputSections::logging + "Propagation",
1910  {"0.7.1"}};
1911 
1921  inline static const Key<einhard::LogLevel> log_pythia{
1922  InputSections::logging + "Pythia", DefaultType::Dependent, {"1.0"}};
1923 
1934  InputSections::logging + "Resonances", DefaultType::Dependent, {"0.50"}};
1935 
1946  InputSections::logging + "ScatterAction",
1948  {"0.50"}};
1949 
1961  InputSections::logging + "ScatterActionMulti",
1963  {"2.0"}};
1964 
1974  inline static const Key<einhard::LogLevel> log_tmn{
1975  InputSections::logging + "Tmn", DefaultType::Dependent, {"0.80"}};
1976 
1985  inline static const Key<std::string> version{{"Version"},
1986  {"1.0", "3.0", "3.2"}};
1987 
1999  InputSections::c_heavyFlavor + "AQM_Bottom_Suppression", 0.93, {"3.2"}};
2000 
2012  InputSections::c_heavyFlavor + "AQM_Charm_Suppression", 0.8, {"3.2"}};
2013 
2028  InputSections::collisionTerm + "Additional_Elastic_Cross_Section",
2029  0.0,
2030  {"2.0"}};
2031 
2076  InputSections::collisionTerm + "Collision_Criterion",
2078  {"1.7"}};
2079 
2093  InputSections::collisionTerm + "Cross_Section_Scaling", 1.0, {"2.0"}};
2094 
2108  InputSections::collisionTerm + "Elastic_Cross_Section", -1.0, {"1.2"}};
2109 
2126  InputSections::collisionTerm + "Elastic_NN_Cutoff_Sqrts", 1.98, {"1.0"}};
2127 
2141  InputSections::collisionTerm + "Fixed_Min_Cell_Length", 2.5, {"2.1"}};
2142 
2154  InputSections::collisionTerm + "Force_Decays_At_End", true, {"0.60"}};
2155 
2167  inline static const Key<bool> collTerm_decayInitial{
2168  InputSections::collisionTerm + "Decay_Initial_Particles", true, {"3.0"}};
2169 
2204  InputSections::collisionTerm + "Included_2to2",
2205  ReactionsBitSet{}.set(), // All interactions => all bit set
2206  {"1.3"}};
2207 
2220  InputSections::collisionTerm + "Include_Weak_And_EM_Decays_At_The_End",
2221  false,
2222  {"2.2", "3.1", "3.2"}};
2223 
2247  "Ignore_Minimum_Decay_Width_For_Decays_At_The_End",
2248  false,
2249  {"3.2"}};
2250 
2260  inline static const Key<bool> collTerm_isotropic{
2261  InputSections::collisionTerm + "Isotropic", false, {"0.7.1"}};
2262 
2283  InputSections::collisionTerm + "Maximum_Cross_Section",
2285  {"2.0"}};
2286 
2329  inline static const Key<MultiParticleReactionsBitSet>
2331  InputSections::collisionTerm + "Multi_Particle_Reactions",
2332  MultiParticleReactionsBitSet{}.reset(), // Empty list => no bit set
2333  {"2.0"}};
2334 
2356  InputSections::collisionTerm + "NNbar_Treatment",
2358  {"1.3"}};
2359 
2372  inline static const Key<bool> collTerm_noCollisions{
2373  InputSections::collisionTerm + "No_Collisions", false, {"1.3"}};
2374 
2389  InputSections::collisionTerm + "Only_Warn_For_High_Probability",
2390  false,
2391  {"3.0"}};
2392 
2423  InputSections::collisionTerm + "Pseudoresonance",
2425  {"3.1"}};
2426 
2449  InputSections::collisionTerm + "Resonance_Lifetime_Modifier",
2450  1.0,
2451  {"1.8"}};
2452 
2464  inline static const Key<bool> collTerm_strings{
2465  InputSections::collisionTerm + "Strings",
2467  {"1.0"}};
2468 
2497  InputSections::collisionTerm + "Strings_with_Probability", true, {"1.3"}};
2498 
2529  InputSections::collisionTerm + "Total_Cross_Section_Strategy",
2531  {"3.1"}};
2532 
2542  inline static const Key<bool> collTerm_twoToOne{
2543  InputSections::collisionTerm + "Two_to_One", true, {"0.85"}};
2544 
2572  inline static const Key<bool> collTerm_useAQM{
2573  InputSections::collisionTerm + "Use_AQM", true, {"1.3"}};
2574 
2585  InputSections::c_pauliBlocking + "Gaussian_Cutoff", 2.2, {"0.7.1"}};
2586 
2596  inline static const Key<double>
2598  InputSections::c_pauliBlocking + "Momentum_Averaging_Radius",
2599  0.08,
2600  {"0.7.1"}};
2601 
2612  InputSections::c_pauliBlocking + "Spatial_Averaging_Radius",
2613  1.86,
2614  {"0.7.1"}};
2615 
2626  InputSections::c_stringTransition + "KN_Offset", 15.15, {"3.0"}};
2627 
2641  InputSections::c_stringTransition + "PiPi_Offset", 1.12, {"3.0"}};
2642 
2654  InputSections::c_stringTransition + "Sqrts_Lower", 0.9, {"3.0"}};
2655 
2670  inline static const Key<std::pair<double, double>>
2672  InputSections::c_stringTransition + "Sqrts_Range_NN",
2673  std::make_pair(3.5, 4.5),
2674  {"3.0"}};
2675 
2687  inline static const Key<std::pair<double, double>>
2689  InputSections::c_stringTransition + "Sqrts_Range_Npi",
2690  std::make_pair(1.9, 2.2),
2691  {"3.0"}};
2692 
2705  InputSections::c_stringTransition + "Sqrts_Range_Width", 1.0, {"3.0"}};
2706 
2718  InputSections::c_stringParameters + "Diquark_Supp", 0.036, {"1.3"}};
2719 
2731  InputSections::c_stringParameters + "Form_Time_Factor", 1.0, {"1.4"}};
2732 
2743  InputSections::c_stringParameters + "Formation_Time", 1.0, {"1.0"}};
2744 
2756  InputSections::c_stringParameters + "Gluon_Beta", 0.5, {"1.3"}};
2757 
2770  InputSections::c_stringParameters + "Gluon_Pmin", 0.001, {"1.3"}};
2771 
2784  InputSections::c_stringParameters + "Mass_Dependent_Formation_Times",
2785  false,
2786  {"1.5.2"}};
2787 
2799  InputSections::c_stringParameters + "Quark_Alpha", 2.0, {"1.3"}};
2800 
2812  InputSections::c_stringParameters + "Quark_Beta", 7.0, {"1.3"}};
2813 
2827  InputSections::c_stringParameters + "Popcorn_Rate", 0.15, {"1.6"}};
2828 
2843  InputSections::c_stringParameters + "Power_Particle_Formation",
2845  {"1.4"}};
2846 
2859  InputSections::c_stringParameters + "Prob_proton_to_d_uu",
2860  1.0 / 3,
2861  {"1.5"}};
2862 
2874  InputSections::c_stringParameters + "Separate_Fragment_Baryon",
2875  true,
2876  {"1.6"}};
2877 
2894  InputSections::c_stringParameters + "Sigma_Perp", 0.42, {"1.3"}};
2895 
2912  InputSections::c_stringParameters + "Strange_Supp", 0.16, {"1.3"}};
2913 
2925  InputSections::c_stringParameters + "String_Sigma_T", 0.5, {"1.3"}};
2926 
2940  InputSections::c_stringParameters + "String_Tension", 1.0, {"1.3"}};
2941 
2953  InputSections::c_stringParameters + "StringZ_A", 2.0, {"1.3"}};
2954 
2967  InputSections::c_stringParameters + "StringZ_A_Leading", 0.2, {"1.6"}};
2968 
2980  InputSections::c_stringParameters + "StringZ_B", 0.55, {"1.3"}};
2981 
2995  InputSections::c_stringParameters + "StringZ_B_Leading", 2.0, {"1.6"}};
2996 
3012  InputSections::c_stringParameters + "Use_Monash_Tune",
3014  {"3.0"}};
3015 
3029  InputSections::c_dileptons + "Decays", false, {"0.50"}};
3030 
3041  InputSections::c_photons + "2to2_Scatterings", false, {"1.8"}};
3042 
3053  InputSections::c_photons + "Bremsstrahlung", false, {"1.8"}};
3054 
3066  InputSections::c_photons + "Fractional_Photons", {"1.8"}};
3067 
3084  inline static const Key<double> modi_collider_eKin{
3085  InputSections::m_collider + "E_Kin", {"0.50"}};
3086 
3100  inline static const Key<double> modi_collider_eTot{
3101  InputSections::m_collider + "E_Tot", {"2.0.2"}};
3102 
3117  inline static const Key<double> modi_collider_pLab{
3118  InputSections::m_collider + "P_Lab", {"0.50"}};
3119 
3132  inline static const Key<double> modi_collider_sqrtSNN{
3133  InputSections::m_collider + "Sqrtsnn", {"0.50"}};
3134 
3157  InputSections::m_collider + "Calculation_Frame",
3159  {"0.50"}};
3160 
3173  InputSections::m_collider + "Collisions_Within_Nucleus", false, {"1.0"}};
3174 
3189  InputSections::m_collider + "Fermi_Motion", FermiMotion::Off, {"0.60"}};
3190 
3205  InputSections::m_collider + "Initial_Distance", 4.0, {"0.50"}};
3206 
3226  InputSections::m_c_projectile + "Diffusiveness",
3228  {"0.90"}};
3233  InputSections::m_c_target + "Diffusiveness",
3235  {"0.90"}};
3236 
3252  inline static const Key<std::map<PdgCode, int>>
3254  InputSections::m_c_projectile + "Particles", {"0.50"}};
3258  inline static const Key<std::map<PdgCode, int>>
3260  {"0.50"}};
3261 
3280  InputSections::m_c_projectile + "Radius",
3282  {"0.50"}};
3287  InputSections::m_c_target + "Radius", DefaultType::Dependent, {"0.50"}};
3288 
3303  InputSections::m_c_projectile + "Saturation_Density",
3305  {"0.50"}};
3310  InputSections::m_c_target + "Saturation_Density",
3312  {"0.50"}};
3313 
3329  InputSections::m_c_projectile + "E_Kin", {"0.50"}};
3334  InputSections::m_c_target + "E_Kin", {"0.50"}};
3335 
3348  InputSections::m_c_projectile + "E_Tot", {"2.0.2"}};
3353  InputSections::m_c_target + "E_Tot", {"2.0.2"}};
3354 
3375  InputSections::m_c_projectile + "P_Lab", {"0.50"}};
3380  InputSections::m_c_target + "P_Lab", {"0.50"}};
3381 
3398  inline static const Key<std::string>
3400  InputSections::m_c_p_custom + "File_Directory", {"1.6"}};
3404  inline static const Key<std::string>
3406  InputSections::m_c_t_custom + "File_Directory", {"1.6"}};
3407 
3418  InputSections::m_c_p_custom + "File_Name", {"1.6"}};
3423  InputSections::m_c_t_custom + "File_Name", {"1.6"}};
3424 
3459  InputSections::m_c_p_deformed + "Automatic", {"1.5"}};
3464  InputSections::m_c_t_deformed + "Automatic", {"1.5"}};
3465 
3477  InputSections::m_c_p_deformed + "Beta_2", 0.0, {"1.5"}};
3482  InputSections::m_c_t_deformed + "Beta_2",
3484  {"1.5"}};
3485 
3497  InputSections::m_c_p_deformed + "Beta_3", 0.0, {"3.0"}};
3502  InputSections::m_c_t_deformed + "Beta_3",
3504  {"3.0"}};
3505 
3517  InputSections::m_c_p_deformed + "Beta_4", 0.0, {"1.5"}};
3522  InputSections::m_c_t_deformed + "Beta_4",
3524  {"1.5"}};
3525 
3537  InputSections::m_c_p_deformed + "Gamma", 0.0, {"3.0"}};
3544  {"3.0"}};
3545 
3577  inline static const Key<bool>
3579  InputSections::m_c_p_alphaClustered + "Automatic", {"3.2"}};
3584  InputSections::m_c_t_alphaClustered + "Automatic", {"3.2"}};
3585 
3597  inline static const Key<double>
3599  InputSections::m_c_p_alphaClustered + "Side_Length", 3.42, {"3.2"}};
3603  inline static const Key<double>
3605  InputSections::m_c_t_alphaClustered + "Side_Length",
3607  .default_value(),
3608  {"3.2"}};
3609 
3631  InputSections::m_c_p_orientation + "Phi", 0.0, {"0.50"}};
3638  {"0.50"}};
3649  InputSections::m_c_p_orientation + "Theta", 0.0, {"0.50"}};
3656  {"0.50"}};
3667  InputSections::m_c_p_orientation + "Psi", 0.0, {"3.0"}};
3674  {"3.0"}};
3675 
3686  InputSections::m_c_p_orientation + "Random_Rotation", false, {"1.7"}};
3691  InputSections::m_c_t_orientation + "Random_Rotation",
3693  {"1.7"}};
3694 
3706  InputSections::m_c_impact + "Max", 0.0, {"0.50"}};
3707 
3719  InputSections::m_c_impact + "Random_Reaction_Plane", false, {"1.8"}};
3720 
3732  InputSections::m_c_impact + "Range",
3733  std::array<double, 2>{{0.0, 0.0}},
3734  {"0.50"}};
3735 
3753  InputSections::m_c_impact + "Sample", Sampling::Quadratic, {"0.50"}};
3754 
3766  InputSections::m_c_impact + "Value", 0.0, {"0.50"}};
3767 
3782  InputSections::m_c_impact + "Values", {"0.80"}};
3783 
3796  InputSections::m_c_impact + "Yields", {"0.80"}};
3797 
3814  inline static const Key<FluidizationType>
3816  InputSections::m_c_initialConditions + "Type", {"3.2"}};
3817 
3831  InputSections::m_c_initialConditions + "Lower_Bound", 0.5, {"3.2"}};
3832 
3852  InputSections::m_c_initialConditions + "Proper_Time",
3854  {"3.2"}};
3855 
3874  {"3.2"}};
3875 
3892  InputSections::m_c_initialConditions + "Rapidity_Cut",
3894  {"3.2"}};
3895 
3910  InputSections::m_c_initialConditions + "Energy_Density_Threshold",
3911  0.5,
3912  {"3.2"}};
3913 
3926  InputSections::m_c_initialConditions + "Minimum_Time", 0, {"3.2"}};
3927 
3940  InputSections::m_c_initialConditions + "Maximum_Time", 100, {"3.2"}};
3941 
3953  InputSections::m_c_initialConditions + "Fluidization_Cells", 80, {"3.2"}};
3954 
3978  inline static const Key<FluidizableProcessesBitSet>
3980  InputSections::m_c_initialConditions + "Fluidizable_Processes",
3981  FluidizableProcessesBitSet{}.set(), // all processes
3982  {"3.2"}};
3996  inline static const Key<double>
3998  InputSections::m_c_initialConditions + "Formation_Time_Fraction",
3999  1.0,
4000  {"3.2"}};
4001 
4020  inline static const Key<std::map<PdgCode, int>>
4022  InputSections::m_sphere + "Init_Multiplicities", {"0.50"}};
4023 
4033  inline static const Key<double> modi_sphere_radius{
4034  InputSections::m_sphere + "Radius", {"0.50"}};
4035 
4045  inline static const Key<double> modi_sphere_startTime{
4046  InputSections::m_sphere + "Start_Time", {"0.50"}};
4047 
4058  InputSections::m_sphere + "Temperature", {"1.5.2"}};
4059 
4080  InputSections::m_sphere + "Account_Resonance_Widths", true, {"1.7"}};
4081 
4097  InputSections::m_sphere + "Add_Radial_Velocity", -1.0, {"2.2"}};
4098 
4112  InputSections::m_sphere + "Baryon_Chemical_Potential", 0.0, {"1.0"}};
4113 
4127  InputSections::m_sphere + "Charge_Chemical_Potential", 0.0, {"2.1"}};
4128 
4151  InputSections::m_sphere + "Initial_Condition",
4153  {"1.1"}};
4154 
4168  InputSections::m_sphere + "Strange_Chemical_Potential", 0.0, {"1.0"}};
4169 
4188  InputSections::m_sphere + "Use_Thermal_Multiplicities", false, {"1.0"}};
4189 
4211  InputSections::m_s_jet + "Jet_Momentum", 20.0, {"1.5.2"}};
4212 
4223  InputSections::m_s_jet + "Jet_PDG", {"1.5.2"}};
4224 
4241  inline static const Key<std::map<PdgCode, int>>
4243  InputSections::m_box + "Init_Multiplicities", {"0.50"}};
4244 
4263  InputSections::m_box + "Initial_Condition", {"0.50"}};
4264 
4274  inline static const Key<double> modi_box_length{
4275  InputSections::m_box + "Length", {"0.50"}};
4276 
4287  inline static const Key<double> modi_box_startTime{
4288  InputSections::m_box + "Start_Time", {"0.50"}};
4289 
4299  inline static const Key<double> modi_box_temperature{
4300  InputSections::m_box + "Temperature", {"0.50"}};
4301 
4329  InputSections::m_box + "Account_Resonance_Widths", true, {"1.7"}};
4330 
4342  InputSections::m_box + "Baryon_Chemical_Potential", 0.0, {"1.0"}};
4343 
4355  InputSections::m_box + "Charge_Chemical_Potential", 0.0, {"2.0"}};
4356 
4371  InputSections::m_box + "Equilibration_Time", -1.0, {"1.8"}};
4372 
4385  InputSections::m_box + "Strange_Chemical_Potential", 0.0, {"1.0"}};
4386 
4399  InputSections::m_box + "Use_Thermal_Multiplicities", false, {"1.0"}};
4400 
4424  InputSections::m_b_jet + "Jet_Momentum", 20.0, {"1.7"}};
4425 
4436  inline static const Key<PdgCode> modi_box_jet_jetPdg{
4437  InputSections::m_b_jet + "Jet_PDG", {"1.7"}};
4438 
4451  InputSections::m_list + "File_Directory", {"0.60"}};
4452 
4466  InputSections::m_list + "Filename", {"3.1"}};
4467 
4479  InputSections::m_list + "File_Prefix", {"0.60"}};
4480 
4495  inline static const Key<int> modi_list_shiftId{
4496  InputSections::m_list + "Shift_Id", 0, {"0.60"}};
4497 
4509  InputSections::m_listBox + "File_Directory", {"2.1"}};
4510 
4522  InputSections::m_listBox + "Filename", {"3.1"}};
4523 
4535  InputSections::m_listBox + "File_Prefix", {"2.1"}};
4536 
4547  inline static const Key<double> modi_listBox_length{
4548  InputSections::m_listBox + "Length", {"2.1"}};
4549 
4560  inline static const Key<int> modi_listBox_shiftId{
4561  InputSections::m_listBox + "Shift_Id", 0, {"2.1"}};
4562 
4582  InputSections::output + "Density_Type", DensityType::None, {"0.60"}};
4583 
4596  inline static const Key<double> output_outputInterval{
4597  InputSections::output + "Output_Interval",
4599  {"0.50"}};
4600 
4621  InputSections::output + "Output_Times", DefaultType::Dependent, {"1.7"}};
4622 
4658  InputSections::o_particles + "Format",
4659  std::vector<std::string>{},
4660  {"1.2"}};
4665  InputSections::o_collisions + "Format",
4666  std::vector<std::string>{},
4667  {"1.2"}};
4672  InputSections::o_dileptons + "Format",
4673  std::vector<std::string>{},
4674  {"0.85"}};
4679  InputSections::o_photons + "Format", std::vector<std::string>{}, {"1.0"}};
4683  inline static const Key<std::vector<std::string>>
4686  std::vector<std::string>{},
4687  {"1.7"}};
4692  InputSections::o_rivet + "Format", std::vector<std::string>{}, {"2.0.2"}};
4697  InputSections::o_coulomb + "Format", std::vector<std::string>{}, {"2.1"}};
4701  inline static const Key<std::vector<std::string>>
4703  std::vector<std::string>{},
4704  {"1.2"}};
4705 
4730  InputSections::o_particles + "Extended", false, {"1.2"}};
4731 
4746  {"Output", "Particles", "Quantities"},
4747  std::vector<std::string>{},
4748  {"3.2"}};
4749 
4765  InputSections::o_particles + "Only_Final",
4767  {"0.50"}};
4768 
4786  InputSections::o_collisions + "Extended", false, {"1.2"}};
4787 
4802  inline static const Key<std::vector<std::string>>
4803  output_collisions_quantities{{"Output", "Collisions", "Quantities"},
4804  std::vector<std::string>{},
4805  {"3.2"}};
4806 
4820  InputSections::o_collisions + "Print_Start_End", false, {"0.50"}};
4821 
4838  InputSections::o_dileptons + "Extended", false, {"1.2"}};
4839 
4855  inline static const Key<bool> output_photons_extended{
4856  InputSections::o_photons + "Extended", false, {"1.5"}};
4857 
4877  InputSections::o_initialConditions + "Extended", false, {"1.7"}};
4878 
4896  InputSections::o_initialConditions + "Lower_Bound", 0.5, {"1.8", "3.2"}};
4897 
4916  InputSections::o_initialConditions + "Proper_Time",
4918  {"1.7", "3.2"}};
4919 
4936  {"2.2", "3.2"}};
4937 
4953  InputSections::o_initialConditions + "Rapidity_Cut",
4955  {"2.2", "3.2"}};
4956 
4977  InputSections::o_rivet + "Analyses", DefaultType::Dependent, {"2.0.2"}};
4978 
4990  InputSections::o_rivet + "Cross_Section",
4992  {"2.0.2"}};
4993 
5006  InputSections::o_rivet + "Ignore_Beams", true, {"2.0.2"}};
5007 
5020  inline static const Key<std::map<std::string, std::string>>
5022  InputSections::o_rivet + "Logging", DefaultType::Dependent, {"0.50"}};
5023 
5036  InputSections::o_rivet + "Paths", DefaultType::Dependent, {"2.0.2"}};
5037 
5050  InputSections::o_rivet + "Preloads", DefaultType::Dependent, {"2.0.2"}};
5051 
5069 
5080  inline static const Key<std::vector<std::string>>
5083  {"2.0.2"}};
5084 
5097  InputSections::o_r_weights + "NLO_Smearing",
5099  {"2.0.2"}};
5100 
5112  InputSections::o_r_weights + "No_Multi",
5114  {"2.0.2"}};
5115 
5127  InputSections::o_r_weights + "Nominal",
5129  {"2.0.2"}};
5130 
5142  InputSections::o_r_weights + "Select", DefaultType::Dependent, {"2.0.2"}};
5143 
5188  InputSections::o_thermodynamics + "Only_Participants", false, {"2.1"}};
5189 
5201  InputSections::o_thermodynamics + "Position",
5202  std::array<double, 3>{{0.0, 0.0, 0.0}},
5203  {"1.0"}};
5204 
5229  inline static const Key<std::set<ThermodynamicQuantity>>
5231  InputSections::o_thermodynamics + "Quantities",
5232  std::set<ThermodynamicQuantity>{},
5233  {"1.0"}};
5234 
5270  InputSections::o_thermodynamics + "Smearing", true, {"1.0"}};
5271 
5289 
5314  inline static const Key<bool> lattice_automatic{
5315  InputSections::lattice + "Automatic", {"3.0"}};
5316 
5329  InputSections::lattice + "Cell_Number", DefaultType::Dependent, {"0.80"}};
5330 
5348  InputSections::lattice + "Origin", DefaultType::Dependent, {"0.80"}};
5349 
5364  inline static const Key<bool> lattice_periodic{
5365  InputSections::lattice + "Periodic", DefaultType::Dependent, {"0.80"}};
5366 
5378  InputSections::lattice + "Potentials_Affect_Thresholds", false, {"1.3"}};
5379 
5392  InputSections::lattice + "Sizes", DefaultType::Dependent, {"0.80"}};
5393 
5407  InputSections::potentials + "Use_Potentials_Outside_Lattice",
5408  true,
5409  {"3.1"}};
5410 
5421  InputSections::p_skyrme + "Skyrme_A", {"0.60"}};
5422 
5433  InputSections::p_skyrme + "Skyrme_B", {"0.60"}};
5434 
5446  InputSections::p_skyrme + "Skyrme_Tau", {"0.60"}};
5447 
5462 
5473  InputSections::p_symmetry + "S_Pot", {"0.60"}};
5474 
5485  InputSections::p_vdf + "Coeffs", {"2.1"}};
5486 
5500  InputSections::p_vdf + "Powers", {"2.1"}};
5501 
5512  InputSections::p_vdf + "Sat_rhoB", {"2.1"}};
5513 
5524  InputSections::p_coulomb + "R_Cut", {"2.1"}};
5525 
5537  InputSections::p_momentumDependence + "C", {"3.1"}};
5538 
5550  InputSections::p_momentumDependence + "Lambda", {"3.1"}};
5551 
5569  InputSections::forcedThermalization + "Cell_Number", {"1.1"}};
5570 
5582  InputSections::forcedThermalization + "Critical_Edens", {"1.1"}};
5583 
5595  InputSections::forcedThermalization + "Start_Time", {"1.1"}};
5596 
5607  InputSections::forcedThermalization + "Timestep", {"1.1"}};
5608 
5629  inline static const Key<ThermalizationAlgorithm>
5633  {"1.1"}};
5634 
5652  inline static const Key<std::array<double, 3>>
5654  InputSections::forcedThermalization + "Lattice_Sizes", {"1.1"}};
5655 
5676  InputSections::forcedThermalization + "Microcanonical", false, {"1.7"}};
5677 
5679  using key_references_variant = std::variant<
5680  std::reference_wrapper<const Key<bool>>,
5681  std::reference_wrapper<const Key<int>>,
5682  std::reference_wrapper<const Key<int64_t>>,
5683  std::reference_wrapper<const Key<double>>,
5684  std::reference_wrapper<const Key<std::string>>,
5685  std::reference_wrapper<const Key<std::array<int, 3>>>,
5686  std::reference_wrapper<const Key<std::array<double, 2>>>,
5687  std::reference_wrapper<const Key<std::array<double, 3>>>,
5688  std::reference_wrapper<const Key<std::pair<double, double>>>,
5689  std::reference_wrapper<const Key<std::vector<double>>>,
5690  std::reference_wrapper<const Key<std::vector<std::string>>>,
5691  std::reference_wrapper<const Key<std::set<ThermodynamicQuantity>>>,
5692  std::reference_wrapper<const Key<std::map<PdgCode, int>>>,
5693  std::reference_wrapper<const Key<std::map<std::string, std::string>>>,
5694  std::reference_wrapper<const Key<einhard::LogLevel>>,
5695  std::reference_wrapper<const Key<BoxInitialCondition>>,
5696  std::reference_wrapper<const Key<CalculationFrame>>,
5697  std::reference_wrapper<const Key<CollisionCriterion>>,
5698  std::reference_wrapper<const Key<DensityType>>,
5699  std::reference_wrapper<const Key<DerivativesMode>>,
5700  std::reference_wrapper<const Key<ExpansionMode>>,
5701  std::reference_wrapper<const Key<FermiMotion>>,
5702  std::reference_wrapper<const Key<FieldDerivativesMode>>,
5703  std::reference_wrapper<const Key<FluidizableProcessesBitSet>>,
5704  std::reference_wrapper<const Key<FluidizationType>>,
5705  std::reference_wrapper<const Key<MultiParticleReactionsBitSet>>,
5706  std::reference_wrapper<const Key<NNbarTreatment>>,
5707  std::reference_wrapper<const Key<OutputOnlyFinal>>,
5708  std::reference_wrapper<const Key<PdgCode>>,
5709  std::reference_wrapper<const Key<PseudoResonance>>,
5710  std::reference_wrapper<const Key<ReactionsBitSet>>,
5711  std::reference_wrapper<const Key<RestFrameDensityDerivativesMode>>,
5712  std::reference_wrapper<const Key<Sampling>>,
5713  std::reference_wrapper<const Key<SmearingMode>>,
5714  std::reference_wrapper<const Key<SphereInitialCondition>>,
5715  std::reference_wrapper<const Key<ThermalizationAlgorithm>>,
5716  std::reference_wrapper<const Key<TimeStepMode>>,
5717  std::reference_wrapper<const Key<TotalCrossSectionStrategy>>>;
5718 
5720  inline static const std::vector<key_references_variant> list = {
5721  std::cref(particles),
5722  std::cref(decaymodes),
5723  std::cref(gen_endTime),
5724  std::cref(gen_modus),
5725  std::cref(gen_nevents),
5726  std::cref(gen_randomseed),
5729  std::cref(gen_deltaTime),
5730  std::cref(gen_derivativesMode),
5731  std::cref(gen_smearingDiscreteWeight),
5732  std::cref(gen_ensembles),
5733  std::cref(gen_expansionRate),
5734  std::cref(gen_fieldDerivativesMode),
5735  std::cref(gen_smearingGaussCutoffInSigma),
5736  std::cref(gen_smearingGaussianSigma),
5737  std::cref(gen_metricType),
5739  std::cref(gen_smearingMode),
5740  std::cref(gen_testparticles),
5741  std::cref(gen_timeStepMode),
5742  std::cref(gen_smearingTriangularRange),
5743  std::cref(gen_useGrid),
5744  std::cref(log_default),
5745  std::cref(log_box),
5746  std::cref(log_collider),
5747  std::cref(log_yamlConfiguration),
5748  std::cref(log_experiment),
5749  std::cref(log_grandcanThermalizer),
5750  std::cref(log_initialConditions),
5751  std::cref(log_list),
5752  std::cref(log_main),
5753  std::cref(log_output),
5754  std::cref(log_sphere),
5755  std::cref(log_action),
5756  std::cref(log_clock),
5757  std::cref(log_crossSections),
5758  std::cref(log_decayModes),
5759  std::cref(log_density),
5760  std::cref(log_distributions),
5761  std::cref(log_findScatter),
5762  std::cref(log_fpe),
5763  std::cref(log_grid),
5764  std::cref(log_hyperSurfaceCrossing),
5765  std::cref(log_inputParser),
5766  std::cref(log_lattice),
5767  std::cref(log_nucleus),
5768  std::cref(log_particleType),
5769  std::cref(log_pauliBlocking),
5770  std::cref(log_potentials),
5771  std::cref(log_propagation),
5772  std::cref(log_pythia),
5773  std::cref(log_resonances),
5774  std::cref(log_rootsolver),
5775  std::cref(log_scatterAction),
5776  std::cref(log_scatterActionMulti),
5777  std::cref(log_tmn),
5778  std::cref(version),
5780  std::cref(collTerm_collisionCriterion),
5781  std::cref(collTerm_crossSectionScaling),
5782  std::cref(collTerm_elasticCrossSection),
5783  std::cref(collTerm_elasticNNCutoffSqrts),
5784  std::cref(collTerm_totXsStrategy),
5785  std::cref(collTerm_pseudoresonance),
5786  std::cref(collTerm_fixedMinCellLength),
5787  std::cref(collTerm_forceDecaysAtEnd),
5789  std::cref(collTerm_includeDecaysAtTheEnd),
5790  std::cref(collTerm_decayInitial),
5791  std::cref(collTerm_includedTwoToTwo),
5792  std::cref(collTerm_isotropic),
5793  std::cref(collTerm_maximumCrossSection),
5795  std::cref(collTerm_nnbarTreatment),
5796  std::cref(collTerm_noCollisions),
5799  std::cref(collTerm_strings),
5801  std::cref(collTerm_twoToOne),
5802  std::cref(collTerm_useAQM),
5806  std::cref(collTerm_stringTrans_KNOffset),
5808  std::cref(collTerm_stringTrans_lower),
5809  std::cref(collTerm_stringTrans_rangeNN),
5810  std::cref(collTerm_stringTrans_rangeNpi),
5815  std::cref(collTerm_stringParam_gluonBeta),
5816  std::cref(collTerm_stringParam_gluonPMin),
5819  std::cref(collTerm_stringParam_quarkBeta),
5824  std::cref(collTerm_stringParam_sigmaPerp),
5828  std::cref(collTerm_stringParam_stringZA),
5830  std::cref(collTerm_stringParam_stringZB),
5833  std::cref(collTerm_dileptons_decays),
5837  std::cref(collTerm_HF_AQMbSuppression),
5838  std::cref(collTerm_HF_AQMcSuppression),
5839  std::cref(modi_collider_eKin),
5840  std::cref(modi_collider_eTot),
5841  std::cref(modi_collider_pLab),
5842  std::cref(modi_collider_sqrtSNN),
5843  std::cref(modi_collider_calculationFrame),
5845  std::cref(modi_collider_fermiMotion),
5846  std::cref(modi_collider_initialDistance),
5850  std::cref(modi_collider_target_particles),
5852  std::cref(modi_collider_target_radius),
5855  std::cref(modi_collider_projectile_eKin),
5856  std::cref(modi_collider_target_eKin),
5857  std::cref(modi_collider_projectile_eTot),
5858  std::cref(modi_collider_target_eTot),
5859  std::cref(modi_collider_projectile_pLab),
5860  std::cref(modi_collider_target_pLab),
5887  std::cref(modi_collider_impact_max),
5889  std::cref(modi_collider_impact_range),
5890  std::cref(modi_collider_impact_sample),
5891  std::cref(modi_collider_impact_value),
5892  std::cref(modi_collider_impact_values),
5893  std::cref(modi_collider_impact_yields),
5906  std::cref(modi_sphere_radius),
5907  std::cref(modi_sphere_startTime),
5908  std::cref(modi_sphere_temperature),
5910  std::cref(modi_sphere_addRadialVelocity),
5913  std::cref(modi_sphere_initialCondition),
5916  std::cref(modi_sphere_jet_jetMomentum),
5917  std::cref(modi_sphere_jet_jetPdg),
5918  std::cref(modi_box_initialMultiplicities),
5919  std::cref(modi_box_initialCondition),
5920  std::cref(modi_box_length),
5921  std::cref(modi_box_startTime),
5922  std::cref(modi_box_temperature),
5926  std::cref(modi_box_equilibrationTime),
5929  std::cref(modi_box_jet_jetMomentum),
5930  std::cref(modi_box_jet_jetPdg),
5931  std::cref(modi_list_fileDirectory),
5932  std::cref(modi_list_filename),
5933  std::cref(modi_list_filePrefix),
5934  std::cref(modi_list_shiftId),
5935  std::cref(modi_listBox_fileDirectory),
5936  std::cref(modi_listBox_filename),
5937  std::cref(modi_listBox_filePrefix),
5938  std::cref(modi_listBox_length),
5939  std::cref(modi_listBox_shiftId),
5940  std::cref(output_densityType),
5941  std::cref(output_outputInterval),
5942  std::cref(output_outputTimes),
5943  std::cref(output_particles_format),
5944  std::cref(output_collisions_format),
5945  std::cref(output_dileptons_format),
5946  std::cref(output_photons_format),
5948  std::cref(output_rivet_format),
5949  std::cref(output_coulomb_format),
5950  std::cref(output_thermodynamics_format),
5951  std::cref(output_particles_extended),
5952  std::cref(output_particles_quantities),
5953  std::cref(output_particles_onlyFinal),
5954  std::cref(output_collisions_extended),
5955  std::cref(output_collisions_quantities),
5957  std::cref(output_dileptons_extended),
5958  std::cref(output_photons_extended),
5962  std::cref(output_initialConditions_pTCut),
5964  std::cref(output_rivet_analyses),
5965  std::cref(output_rivet_crossSection),
5966  std::cref(output_rivet_ignoreBeams),
5967  std::cref(output_rivet_logging),
5968  std::cref(output_rivet_paths),
5969  std::cref(output_rivet_preloads),
5970  std::cref(output_rivet_weights_cap),
5971  std::cref(output_rivet_weights_deselect),
5973  std::cref(output_rivet_weights_noMulti),
5974  std::cref(output_rivet_weights_nominal),
5975  std::cref(output_rivet_weights_select),
5977  std::cref(output_thermodynamics_position),
5979  std::cref(output_thermodynamics_smearing),
5980  std::cref(output_thermodynamics_type),
5981  std::cref(lattice_automatic),
5982  std::cref(lattice_cellNumber),
5983  std::cref(lattice_origin),
5984  std::cref(lattice_periodic),
5986  std::cref(lattice_sizes),
5988  std::cref(potentials_skyrme_skyrmeA),
5989  std::cref(potentials_skyrme_skyrmeB),
5990  std::cref(potentials_skyrme_skyrmeTau),
5991  std::cref(potentials_symmetry_gamma),
5992  std::cref(potentials_symmetry_sPot),
5993  std::cref(potentials_vdf_coeffs),
5994  std::cref(potentials_vdf_powers),
5995  std::cref(potentials_vdf_satRhoB),
5996  std::cref(potentials_coulomb_rCut),
6001  std::cref(forcedThermalization_startTime),
6002  std::cref(forcedThermalization_timestep),
6003  std::cref(forcedThermalization_algorithm),
6006 
6013  static const Key<einhard::LogLevel> &get_logging_key(std::string_view area) {
6014  return get_key_reference<einhard::LogLevel>({"Logging", std::string{area}});
6015  }
6016 
6024  std::string_view content) {
6025  return get_key_reference<std::vector<std::string>>(
6026  {"Output", std::string{content}, "Format"});
6027  }
6028 
6029  private:
6043  template <typename T>
6044  static const Key<T> &get_key_reference(const KeyLabels &labels) {
6045  using key_reference = std::reference_wrapper<const Key<T>>;
6046  auto candidate = InputKeys::find_key(labels);
6047  if (candidate.has_value()) {
6048  return std::get<key_reference>(candidate.value());
6049  } else {
6050  throw std::invalid_argument("No database key with keys \"" +
6051  join(labels, ": ") + "\" was found.");
6052  }
6053  }
6054 
6063  static std::optional<key_references_variant> find_key(
6064  const KeyLabels &labels) {
6065  if (labels.size() == 0)
6066  return std::nullopt;
6067  auto iterator_to_key_references_variant =
6068  std::find_if(smash::InputKeys::list.begin(),
6069  smash::InputKeys::list.end(), [&labels](auto key) {
6070  return std::visit(
6071  [&labels](auto &&arg) {
6072  return arg.get().has_same_labels(labels);
6073  },
6074  key);
6075  });
6076  if (iterator_to_key_references_variant == smash::InputKeys::list.end()) {
6077  return std::nullopt;
6078  } else {
6079  return *iterator_to_key_references_variant;
6080  }
6081  }
6082 };
6083 
6879 } // namespace smash
6880 
6881 #endif // SRC_INCLUDE_SMASH_INPUT_KEYS_H_
default_type default_value() const
Get the default value of the key.
Definition: key.h:177
This is the main include file for Einhard.
@ Off
Don't use fermi motion.
std::bitset< 10 > ReactionsBitSet
Container for the 2 to 2 reactions in the code.
@ Strings
Use string fragmentation.
@ Fixed
Use fixed time step.
std::bitset< 5 > FluidizableProcessesBitSet
@ TopDownMeasured
Mix the two above, using the parametrizations only for measured processes, and summing up partials fo...
@ Quadratic
Sample from areal / quadratic distribution.
std::bitset< 4 > MultiParticleReactionsBitSet
Container for the n to m reactions in the code.
@ Covariant
Covariant Criterion.
@ ThermalMomentaBoltzmann
A thermalized ensemble is generated, with momenta sampled from a Maxwell-Boltzmann distribution.
@ LargestFromUnstable
Heaviest possible resonance from processes with at least one resonance in the incoming particles.
@ Yes
Print only final-state particles.
@ ALL
Log all message.
Definition: einhard.hpp:110
Definition: action.h:24
std::vector< std::string > KeyLabels
Descriptive alias for storing key labels, i.e.
Definition: key.h:42
@ Dependent
Default value which depends on other keys
std::string join(const std::vector< std::string > &v, const std::string &delim)
Join strings using delimiter.
A container to keep track of all ever existed input keys.
Definition: input_keys.h:1067
static const Key< double > collTerm_stringParam_probabilityPToDUU
See user guide description for more information.
Definition: input_keys.h:2858
static const Key< double > collTerm_stringParam_powerParticleFormation
See user guide description for more information.
Definition: input_keys.h:2842
static const Key< einhard::LogLevel > log_rootsolver
See user guide description for more information.
Definition: input_keys.h:1690
static const Key< bool > potentials_use_potentials_outside_lattice
See user guide description for more information.
Definition: input_keys.h:5406
static const Key< double > modi_collider_projectile_saturationDensity
See user guide description for more information.
Definition: input_keys.h:3302
static const Key< double > collTerm_stringTrans_lower
See user guide description for more information.
Definition: input_keys.h:2653
static const Key< double > modi_collider_projectile_radius
See user guide description for more information.
Definition: input_keys.h:3279
static const Key< double > collTerm_stringParam_formationTime
See user guide description for more information.
Definition: input_keys.h:2742
static const Key< bool > output_initialConditions_extended
See user guide description for more information.
Definition: input_keys.h:4876
static const Key< std::pair< double, double > > collTerm_stringTrans_rangeNpi
See user guide description for more information.
Definition: input_keys.h:2688
static const Key< bool > collTerm_photons_twoToTwoScatterings
See user guide description for more information.
Definition: input_keys.h:3040
static const Key< double > collTerm_stringTrans_range_width
See user guide description for more information.
Definition: input_keys.h:2704
static const Key< einhard::LogLevel > log_crossSections
See user guide description for more information.
Definition: input_keys.h:1741
static const Key< bool > collTerm_stringParam_useMonashTune
See user guide description for more information.
Definition: input_keys.h:3011
static const Key< DensityType > output_densityType
See user guide description for more information.
Definition: input_keys.h:4581
static const Key< double > forcedThermalization_criticalEDensity
See user guide description for more information.
Definition: input_keys.h:5581
static const Key< double > collTerm_stringParam_sigmaPerp
See user guide description for more information.
Definition: input_keys.h:2893
static const Key< double > potentials_momentum_dependence_C
See user guide description for more information.
Definition: input_keys.h:5536
static const Key< double > modi_collider_projectile_eKin
See user guide description for more information.
Definition: input_keys.h:3328
static const Key< std::vector< std::string > > output_photons_format
See user guide description for more information.
Definition: input_keys.h:4678
static const Key< double > modi_sphere_addRadialVelocity
See user guide description for more information.
Definition: input_keys.h:4096
static const Key< double > modi_collider_target_orientation_theta
See user guide description for more information.
Definition: input_keys.h:3653
static const Key< einhard::LogLevel > log_lattice
See user guide description for more information.
Definition: input_keys.h:1855
static const Key< bool > modi_collider_collisionWithinNucleus
See user guide description for more information.
Definition: input_keys.h:3172
static const Key< double > collTerm_stringParam_gluonPMin
See user guide description for more information.
Definition: input_keys.h:2769
static const Key< double > modi_listBox_length
See user guide description for more information.
Definition: input_keys.h:4547
static const Key< std::vector< std::string > > output_collisions_format
See user guide description for more information.
Definition: input_keys.h:4664
static const Key< double > collTerm_stringParam_stringZALeading
See user guide description for more information.
Definition: input_keys.h:2966
static const Key< double > modi_collider_target_pLab
See user guide description for more information.
Definition: input_keys.h:3379
static const Key< double > collTerm_resonanceLifetimeModifier
See user guide description for more information.
Definition: input_keys.h:2448
static const Key< std::string > particles
See user guide description for more information.
Definition: input_keys.h:1071
static const Key< double > modi_collider_target_eTot
See user guide description for more information.
Definition: input_keys.h:3352
static const Key< double > modi_box_temperature
See user guide description for more information.
Definition: input_keys.h:4299
static const Key< std::map< PdgCode, int > > modi_sphere_initialMultiplicities
See user guide description for more information.
Definition: input_keys.h:4021
static const Key< double > modi_sphere_chargeChemicalPotential
See user guide description for more information.
Definition: input_keys.h:4126
static const Key< double > modi_collider_initialDistance
See user guide description for more information.
Definition: input_keys.h:3204
static const Key< std::vector< std::string > > output_rivet_weights_select
See user guide description for more information.
Definition: input_keys.h:5141
static const Key< bool > output_rivet_weights_noMulti
See user guide description for more information.
Definition: input_keys.h:5111
static const Key< einhard::LogLevel > log_hyperSurfaceCrossing
See user guide description for more information.
Definition: input_keys.h:1829
static const Key< double > modi_collider_projectile_diffusiveness
See user guide description for more information.
Definition: input_keys.h:3225
static const Key< bool > modi_collider_projectile_deformed_automatic
See user guide description for more information.
Definition: input_keys.h:3458
static const Key< double > modi_collider_projectile_deformed_beta3
See user guide description for more information.
Definition: input_keys.h:3496
static const Key< double > modi_sphere_temperature
See user guide description for more information.
Definition: input_keys.h:4057
static const Key< ReactionsBitSet > collTerm_includedTwoToTwo
See user guide description for more information.
Definition: input_keys.h:2203
static const Key< double > modi_collider_target_saturationDensity
See user guide description for more information.
Definition: input_keys.h:3309
static const Key< PdgCode > modi_sphere_jet_jetPdg
See user guide description for more information.
Definition: input_keys.h:4222
static const Key< bool > modi_box_useThermalMultiplicities
See user guide description for more information.
Definition: input_keys.h:4398
static const Key< std::string > output_rivet_weights_nominal
See user guide description for more information.
Definition: input_keys.h:5126
static const Key< std::set< ThermodynamicQuantity > > output_thermodynamics_quantites
See user guide description for more information.
Definition: input_keys.h:5230
static const Key< bool > forcedThermalization_microcanonical
See user guide description for more information.
Definition: input_keys.h:5675
std::variant< std::reference_wrapper< const Key< bool > >, std::reference_wrapper< const Key< int > >, std::reference_wrapper< const Key< int64_t > >, std::reference_wrapper< const Key< double > >, std::reference_wrapper< const Key< std::string > >, std::reference_wrapper< const Key< std::array< int, 3 > >>, std::reference_wrapper< const Key< std::array< double, 2 > >>, std::reference_wrapper< const Key< std::array< double, 3 > >>, std::reference_wrapper< const Key< std::pair< double, double > >>, std::reference_wrapper< const Key< std::vector< double > >>, std::reference_wrapper< const Key< std::vector< std::string > >>, std::reference_wrapper< const Key< std::set< ThermodynamicQuantity > >>, std::reference_wrapper< const Key< std::map< PdgCode, int > >>, std::reference_wrapper< const Key< std::map< std::string, std::string > >>, std::reference_wrapper< const Key< einhard::LogLevel > >, std::reference_wrapper< const Key< BoxInitialCondition > >, std::reference_wrapper< const Key< CalculationFrame > >, std::reference_wrapper< const Key< CollisionCriterion > >, std::reference_wrapper< const Key< DensityType > >, std::reference_wrapper< const Key< DerivativesMode > >, std::reference_wrapper< const Key< ExpansionMode > >, std::reference_wrapper< const Key< FermiMotion > >, std::reference_wrapper< const Key< FieldDerivativesMode > >, std::reference_wrapper< const Key< FluidizableProcessesBitSet > >, std::reference_wrapper< const Key< FluidizationType > >, std::reference_wrapper< const Key< MultiParticleReactionsBitSet > >, std::reference_wrapper< const Key< NNbarTreatment > >, std::reference_wrapper< const Key< OutputOnlyFinal > >, std::reference_wrapper< const Key< PdgCode > >, std::reference_wrapper< const Key< PseudoResonance > >, std::reference_wrapper< const Key< ReactionsBitSet > >, std::reference_wrapper< const Key< RestFrameDensityDerivativesMode > >, std::reference_wrapper< const Key< Sampling > >, std::reference_wrapper< const Key< SmearingMode > >, std::reference_wrapper< const Key< SphereInitialCondition > >, std::reference_wrapper< const Key< ThermalizationAlgorithm > >, std::reference_wrapper< const Key< TimeStepMode > >, std::reference_wrapper< const Key< TotalCrossSectionStrategy > >> key_references_variant
Alias for the type to be used in the list of keys.
Definition: input_keys.h:5717
static const Key< einhard::LogLevel > log_inputParser
See user guide description for more information.
Definition: input_keys.h:1843
static const Key< std::string > modi_collider_projectile_custom_fileDirectory
See user guide description for more information.
Definition: input_keys.h:3399
static const Key< double > collTerm_pauliBlocking_momentumAveragingRadius
See user guide description for more information.
Definition: input_keys.h:2597
static const Key< double > modi_collider_eKin
See user guide description for more information.
Definition: input_keys.h:3084
static const Key< double > modi_collider_pLab
See user guide description for more information.
Definition: input_keys.h:3117
static const Key< bool > collTerm_noCollisions
See user guide description for more information.
Definition: input_keys.h:2372
static const Key< double > modi_box_baryonChemicalPotential
See user guide description for more information.
Definition: input_keys.h:4341
static const Key< bool > modi_collider_target_orientation_randRot
See user guide description for more information.
Definition: input_keys.h:3690
static const Key< bool > collTerm_stringParam_mDependentFormationTimes
See user guide description for more information.
Definition: input_keys.h:2783
static const Key< FluidizationType > modi_collider_initialConditions_type
See user guide description for more information.
Definition: input_keys.h:3815
static std::optional< key_references_variant > find_key(const KeyLabels &labels)
Find a Key in the database given its labels.
Definition: input_keys.h:6063
static const Key< double > modi_collider_sqrtSNN
See user guide description for more information.
Definition: input_keys.h:3132
static const Key< int > modi_collider_initialConditions_fluidCells
See user guide description for more information.
Definition: input_keys.h:3952
static const Key< DensityType > output_thermodynamics_type
See user guide description for more information.
Definition: input_keys.h:5287
static const Key< double > modi_collider_projectile_orientation_theta
See user guide description for more information.
Definition: input_keys.h:3648
static const Key< double > collTerm_stringParam_diquarkSuppression
See user guide description for more information.
Definition: input_keys.h:2717
static const Key< double > collTerm_crossSectionScaling
See user guide description for more information.
Definition: input_keys.h:2092
static const Key< einhard::LogLevel > log_pythia
See user guide description for more information.
Definition: input_keys.h:1921
static const Key< double > modi_sphere_jet_jetMomentum
See user guide description for more information.
Definition: input_keys.h:4210
static const Key< einhard::LogLevel > log_main
See user guide description for more information.
Definition: input_keys.h:1654
static const Key< double > modi_box_length
See user guide description for more information.
Definition: input_keys.h:4274
static const Key< int > collTerm_photons_fractionalPhotons
See user guide description for more information.
Definition: input_keys.h:3065
static const Key< std::array< double, 3 > > forcedThermalization_latticeSizes
See user guide description for more information.
Definition: input_keys.h:5653
static const Key< std::vector< double > > modi_collider_impact_values
See user guide description for more information.
Definition: input_keys.h:3781
static const Key< einhard::LogLevel > log_scatterAction
See user guide description for more information.
Definition: input_keys.h:1945
static const Key< double > modi_collider_impact_value
See user guide description for more information.
Definition: input_keys.h:3765
static const Key< einhard::LogLevel > & get_logging_key(std::string_view area)
Get the logging Key given a logging area.
Definition: input_keys.h:6013
static const Key< std::vector< double > > potentials_vdf_powers
See user guide description for more information.
Definition: input_keys.h:5499
static const Key< double > forcedThermalization_startTime
See user guide description for more information.
Definition: input_keys.h:5594
static const Key< double > modi_collider_target_radius
See user guide description for more information.
Definition: input_keys.h:3286
static const Key< einhard::LogLevel > log_initialConditions
See user guide description for more information.
Definition: input_keys.h:1628
static const Key< double > modi_collider_projectile_deformed_beta4
See user guide description for more information.
Definition: input_keys.h:3516
static const Key< bool > modi_sphere_accountResonanceWidths
See user guide description for more information.
Definition: input_keys.h:4079
static const Key< std::map< PdgCode, int > > modi_collider_target_particles
See user guide description for more information.
Definition: input_keys.h:3259
static const Key< double > collTerm_stringParam_formTimeFactor
See user guide description for more information.
Definition: input_keys.h:2730
static const Key< std::vector< std::string > > output_thermodynamics_format
See user guide description for more information.
Definition: input_keys.h:4702
static const Key< double > modi_collider_target_diffusiveness
See user guide description for more information.
Definition: input_keys.h:3232
static const Key< double > potentials_coulomb_rCut
See user guide description for more information.
Definition: input_keys.h:5523
static const Key< einhard::LogLevel > log_decayModes
See user guide description for more information.
Definition: input_keys.h:1755
static const Key< double > output_initialConditions_rapidityCut
See user guide description for more information.
Definition: input_keys.h:4952
static const Key< double > collTerm_stringParam_quarkAlpha
See user guide description for more information.
Definition: input_keys.h:2798
static const Key< bool > modi_box_accountResonanceWidths
See user guide description for more information.
Definition: input_keys.h:4328
static const Key< bool > modi_collider_impact_randomReactionPlane
See user guide description for more information.
Definition: input_keys.h:3718
static const Key< T > & get_key_reference(const KeyLabels &labels)
Get a key reference object given the key labels.
Definition: input_keys.h:6044
static const Key< einhard::LogLevel > log_grandcanThermalizer
See user guide description for more information.
Definition: input_keys.h:1614
static const Key< bool > collTerm_decayInitial
See user guide description for more information.
Definition: input_keys.h:2167
static const Key< std::array< double, 2 > > modi_collider_impact_range
See user guide description for more information.
Definition: input_keys.h:3731
static const Key< std::string > version
This key has been removed in SMASH-3.2 version.
Definition: input_keys.h:1985
static const Key< int > gen_minNonEmptyEnsembles_number
See user guide description for more information.
Definition: input_keys.h:1173
static const Key< int64_t > gen_randomseed
See user guide description for more information.
Definition: input_keys.h:1148
static const Key< std::string > modi_list_fileDirectory
See user guide description for more information.
Definition: input_keys.h:4450
static const Key< double > modi_collider_initialConditions_maxTime
See user guide description for more information.
Definition: input_keys.h:3939
static const Key< double > collTerm_stringParam_stringZA
See user guide description for more information.
Definition: input_keys.h:2952
static const Key< einhard::LogLevel > log_action
See user guide description for more information.
Definition: input_keys.h:1717
static const Key< std::string > gen_modus
See user guide description for more information.
Definition: input_keys.h:1119
static const Key< double > gen_smearingTriangularRange
See user guide description for more information.
Definition: input_keys.h:1520
static const Key< double > modi_collider_initialConditions_minTime
See user guide description for more information.
Definition: input_keys.h:3925
static const Key< einhard::LogLevel > log_grid
See user guide description for more information.
Definition: input_keys.h:1817
static const Key< double > modi_sphere_startTime
See user guide description for more information.
Definition: input_keys.h:4045
static const Key< bool > output_rivet_ignoreBeams
See user guide description for more information.
Definition: input_keys.h:5005
static const Key< bool > lattice_periodic
See user guide description for more information.
Definition: input_keys.h:5364
static const Key< double > collTerm_stringParam_strangeSuppression
See user guide description for more information.
Definition: input_keys.h:2911
static const Key< int > gen_minNonEmptyEnsembles_maximumEnsembles
See user guide description for more information.
Definition: input_keys.h:1161
static const Key< double > gen_expansionRate
See user guide description for more information.
Definition: input_keys.h:1292
static const Key< double > modi_box_equilibrationTime
See user guide description for more information.
Definition: input_keys.h:4370
static const Key< std::string > modi_listBox_filePrefix
See user guide description for more information.
Definition: input_keys.h:4534
static const Key< FluidizableProcessesBitSet > modi_collider_initialConditions_fluidProcesses
See user guide description for more information.
Definition: input_keys.h:3979
static const Key< einhard::LogLevel > log_yamlConfiguration
See user guide description for more information.
Definition: input_keys.h:1588
static const Key< SphereInitialCondition > modi_sphere_initialCondition
See user guide description for more information.
Definition: input_keys.h:4150
static const Key< double > potentials_skyrme_skyrmeB
See user guide description for more information.
Definition: input_keys.h:5432
static const Key< double > output_outputInterval
See user guide description for more information.
Definition: input_keys.h:4596
static const Key< bool > collTerm_onlyWarnForHighProbability
See user guide description for more information.
Definition: input_keys.h:2388
static const Key< double > collTerm_additionalElasticCrossSection
See user guide description for more information.
Definition: input_keys.h:2027
static const Key< std::map< PdgCode, int > > modi_collider_projectile_particles
See user guide description for more information.
Definition: input_keys.h:3253
static const Key< bool > collTerm_stringsWithProbability
See user guide description for more information.
Definition: input_keys.h:2496
static const Key< double > potentials_momentum_dependence_Lambda
See user guide description for more information.
Definition: input_keys.h:5549
static const Key< einhard::LogLevel > log_particleType
See user guide description for more information.
Definition: input_keys.h:1879
static const Key< double > collTerm_stringParam_stringSigmaT
See user guide description for more information.
Definition: input_keys.h:2924
static const Key< double > gen_smearingGaussianSigma
See user guide description for more information.
Definition: input_keys.h:1349
static const Key< bool > modi_collider_target_deformed_automatic
See user guide description for more information.
Definition: input_keys.h:3463
static const Key< double > modi_collider_initialConditions_eDenThreshold
See user guide description for more information.
Definition: input_keys.h:3909
static const Key< double > modi_box_jet_jetMomentum
See user guide description for more information.
Definition: input_keys.h:4423
static const Key< double > modi_collider_target_eKin
See user guide description for more information.
Definition: input_keys.h:3333
static const Key< CalculationFrame > modi_collider_calculationFrame
See user guide description for more information.
Definition: input_keys.h:3156
static const Key< double > modi_sphere_radius
See user guide description for more information.
Definition: input_keys.h:4033
static const Key< double > potentials_skyrme_skyrmeA
See user guide description for more information.
Definition: input_keys.h:5420
static const Key< einhard::LogLevel > log_sphere
See user guide description for more information.
Definition: input_keys.h:1702
static const Key< std::string > modi_list_filename
See user guide description for more information.
Definition: input_keys.h:4465
static const Key< bool > collTerm_dileptons_decays
See user guide description for more information.
Definition: input_keys.h:3028
static const Key< double > modi_collider_impact_max
See user guide description for more information.
Definition: input_keys.h:3705
static const Key< double > collTerm_stringParam_stringZB
See user guide description for more information.
Definition: input_keys.h:2979
static const Key< double > potentials_symmetry_gamma
See user guide description for more information.
Definition: input_keys.h:5460
static const Key< bool > collTerm_strings
See user guide description for more information.
Definition: input_keys.h:2464
static const Key< std::vector< std::string > > output_rivet_preloads
See user guide description for more information.
Definition: input_keys.h:5049
static const Key< DerivativesMode > gen_derivativesMode
See user guide description for more information.
Definition: input_keys.h:1227
static const Key< std::vector< double > > modi_collider_impact_yields
See user guide description for more information.
Definition: input_keys.h:3795
static const Key< double > modi_collider_initialConditions_formTimeFraction
See user guide description for more information.
Definition: input_keys.h:3997
static const Key< ThermalizationAlgorithm > forcedThermalization_algorithm
See user guide description for more information.
Definition: input_keys.h:5630
static const Key< double > collTerm_stringParam_quarkBeta
See user guide description for more information.
Definition: input_keys.h:2811
static const Key< std::vector< std::string > > output_particles_format
See user guide description for more information.
Definition: input_keys.h:4657
static const Key< double > collTerm_pauliBlocking_gaussianCutoff
See user guide description for more information.
Definition: input_keys.h:2584
static const Key< double > output_rivet_weights_cap
See user guide description for more information.
Definition: input_keys.h:5067
static const Key< std::string > decaymodes
See user guide description for more information.
Definition: input_keys.h:1075
static const Key< bool > collTerm_forceDecaysAtEnd
See user guide description for more information.
Definition: input_keys.h:2153
static const Key< bool > output_particles_extended
See user guide description for more information.
Definition: input_keys.h:4729
static const Key< double > modi_collider_target_deformed_beta2
See user guide description for more information.
Definition: input_keys.h:3481
static const Key< double > forcedThermalization_timestep
See user guide description for more information.
Definition: input_keys.h:5606
static const Key< double > modi_collider_target_alphaClustered_sideLength
See user guide description for more information.
Definition: input_keys.h:3604
static const Key< double > gen_endTime
See user guide description for more information.
Definition: input_keys.h:1093
static const Key< double > modi_box_startTime
See user guide description for more information.
Definition: input_keys.h:4287
static const Key< bool > collTerm_photons_bremsstrahlung
See user guide description for more information.
Definition: input_keys.h:3052
static const Key< PseudoResonance > collTerm_pseudoresonance
See user guide description for more information.
Definition: input_keys.h:2422
static const Key< double > gen_smearingGaussCutoffInSigma
See user guide description for more information.
Definition: input_keys.h:1336
static const Key< double > collTerm_stringParam_popcornRate
See user guide description for more information.
Definition: input_keys.h:2826
static const Key< int > gen_nevents
See user guide description for more information.
Definition: input_keys.h:1135
static const Key< einhard::LogLevel > log_resonances
See user guide description for more information.
Definition: input_keys.h:1933
static const Key< double > gen_smearingDiscreteWeight
See user guide description for more information.
Definition: input_keys.h:1244
static const Key< double > collTerm_elasticNNCutoffSqrts
See user guide description for more information.
Definition: input_keys.h:2125
static const Key< int > modi_listBox_shiftId
See user guide description for more information.
Definition: input_keys.h:4560
static const Key< ExpansionMode > gen_metricType
See user guide description for more information.
Definition: input_keys.h:1366
static const Key< int > gen_ensembles
See user guide description for more information.
Definition: input_keys.h:1274
static const Key< einhard::LogLevel > log_list
See user guide description for more information.
Definition: input_keys.h:1642
static const Key< std::array< double, 3 > > lattice_origin
See user guide description for more information.
Definition: input_keys.h:5347
static const Key< double > modi_collider_target_deformed_beta4
See user guide description for more information.
Definition: input_keys.h:3521
static const Key< einhard::LogLevel > log_nucleus
See user guide description for more information.
Definition: input_keys.h:1867
static const Key< bool > collTerm_isotropic
See user guide description for more information.
Definition: input_keys.h:2260
static const Key< double > collTerm_fixedMinCellLength
See user guide description for more information.
Definition: input_keys.h:2140
static const Key< einhard::LogLevel > log_pauliBlocking
See user guide description for more information.
Definition: input_keys.h:1893
static const Key< double > collTerm_stringParam_stringZBLeading
See user guide description for more information.
Definition: input_keys.h:2994
static const Key< double > collTerm_stringTrans_pipiOffset
See user guide description for more information.
Definition: input_keys.h:2640
static const Key< double > modi_collider_projectile_alphaClustered_sideLength
See user guide description for more information.
Definition: input_keys.h:3598
static const Key< double > potentials_skyrme_skyrmeTau
See user guide description for more information.
Definition: input_keys.h:5445
static const Key< MultiParticleReactionsBitSet > collTerm_multiParticleReactions
See user guide description for more information.
Definition: input_keys.h:2330
static const Key< double > modi_sphere_baryonChemicalPotential
See user guide description for more information.
Definition: input_keys.h:4111
static const Key< double > output_initialConditions_properTime
See user guide description for more information.
Definition: input_keys.h:4915
static const Key< double > modi_collider_target_orientation_phi
See user guide description for more information.
Definition: input_keys.h:3635
static const Key< einhard::LogLevel > log_default
See user guide description for more information.
Definition: input_keys.h:1549
static const Key< double > collTerm_maximumCrossSection
See user guide description for more information.
Definition: input_keys.h:2282
static const Key< bool > collTerm_useAQM
See user guide description for more information.
Definition: input_keys.h:2572
static const Key< einhard::LogLevel > log_box
See user guide description for more information.
Definition: input_keys.h:1564
static const Key< einhard::LogLevel > log_experiment
See user guide description for more information.
Definition: input_keys.h:1602
static const Key< std::vector< std::string > > output_coulomb_format
See user guide description for more information.
Definition: input_keys.h:4696
static const Key< einhard::LogLevel > log_fpe
See user guide description for more information.
Definition: input_keys.h:1805
static const Key< std::array< double, 3 > > lattice_sizes
See user guide description for more information.
Definition: input_keys.h:5391
static const Key< std::vector< std::string > > output_initialConditions_format
See user guide description for more information.
Definition: input_keys.h:4684
static const Key< double > modi_collider_initialConditions_lowerBound
See user guide description for more information.
Definition: input_keys.h:3830
static const Key< TotalCrossSectionStrategy > collTerm_totXsStrategy
See user guide description for more information.
Definition: input_keys.h:2528
static const Key< double > modi_collider_eTot
See user guide description for more information.
Definition: input_keys.h:3100
static const Key< std::array< int, 3 > > lattice_cellNumber
See user guide description for more information.
Definition: input_keys.h:5328
static const Key< std::array< double, 3 > > output_thermodynamics_position
See user guide description for more information.
Definition: input_keys.h:5200
static const Key< double > collTerm_elasticCrossSection
See user guide description for more information.
Definition: input_keys.h:2107
static const Key< std::vector< std::string > > output_rivet_paths
See user guide description for more information.
Definition: input_keys.h:5035
static const Key< double > output_initialConditions_lowerBound
See user guide description for more information.
Definition: input_keys.h:4895
static const Key< double > modi_collider_projectile_orientation_psi
See user guide description for more information.
Definition: input_keys.h:3666
static const Key< bool > output_collisions_extended
See user guide description for more information.
Definition: input_keys.h:4785
static const Key< OutputOnlyFinal > output_particles_onlyFinal
See user guide description for more information.
Definition: input_keys.h:4764
static const Key< std::vector< std::string > > output_dileptons_format
See user guide description for more information.
Definition: input_keys.h:4671
static const Key< std::vector< std::string > > output_rivet_format
See user guide description for more information.
Definition: input_keys.h:4691
static const Key< std::string > modi_collider_target_custom_fileName
See user guide description for more information.
Definition: input_keys.h:3422
static const Key< double > modi_collider_projectile_deformed_beta2
See user guide description for more information.
Definition: input_keys.h:3476
static const Key< std::string > modi_collider_projectile_custom_fileName
See user guide description for more information.
Definition: input_keys.h:3417
static const Key< einhard::LogLevel > log_findScatter
See user guide description for more information.
Definition: input_keys.h:1793
static const Key< double > collTerm_stringParam_stringTension
See user guide description for more information.
Definition: input_keys.h:2939
static const Key< double > modi_box_strangeChemicalPotential
See user guide description for more information.
Definition: input_keys.h:4384
static const Key< double > modi_box_chargeChemicalPotential
See user guide description for more information.
Definition: input_keys.h:4354
static const Key< std::vector< std::string > > output_particles_quantities
See user guide description for more information.
Definition: input_keys.h:4745
static const Key< double > modi_collider_projectile_deformed_gamma
See user guide description for more information.
Definition: input_keys.h:3536
static const Key< double > collTerm_pauliBlocking_spatialAveragingRadius
See user guide description for more information.
Definition: input_keys.h:2611
static const Key< PdgCode > modi_box_jet_jetPdg
See user guide description for more information.
Definition: input_keys.h:4436
static const Key< std::vector< std::string > > output_rivet_analyses
See user guide description for more information.
Definition: input_keys.h:4976
static const Key< bool > output_dileptons_extended
See user guide description for more information.
Definition: input_keys.h:4837
static const Key< CollisionCriterion > collTerm_collisionCriterion
See user guide description for more information.
Definition: input_keys.h:2075
static const Key< einhard::LogLevel > log_clock
See user guide description for more information.
Definition: input_keys.h:1729
static const Key< einhard::LogLevel > log_distributions
See user guide description for more information.
Definition: input_keys.h:1779
static const Key< double > potentials_symmetry_sPot
See user guide description for more information.
Definition: input_keys.h:5472
static const std::vector< key_references_variant > list
List of references to all existing SMASH keys.
Definition: input_keys.h:5720
static const Key< int > modi_list_shiftId
See user guide description for more information.
Definition: input_keys.h:4495
static const Key< SmearingMode > gen_smearingMode
See user guide description for more information.
Definition: input_keys.h:1451
static const Key< bool > gen_useGrid
See user guide description for more information.
Definition: input_keys.h:1534
static const Key< einhard::LogLevel > log_output
See user guide description for more information.
Definition: input_keys.h:1666
static const Key< std::string > modi_list_filePrefix
See user guide description for more information.
Definition: input_keys.h:4478
static const Key< bool > output_thermodynamics_onlyParticipants
See user guide description for more information.
Definition: input_keys.h:5187
static const Key< std::array< double, 2 > > output_rivet_crossSection
See user guide description for more information.
Definition: input_keys.h:4989
static const Key< double > modi_collider_projectile_pLab
See user guide description for more information.
Definition: input_keys.h:3374
static const Key< std::vector< std::string > > output_rivet_weights_deselect
See user guide description for more information.
Definition: input_keys.h:5081
static const Key< FieldDerivativesMode > gen_fieldDerivativesMode
See user guide description for more information.
Definition: input_keys.h:1321
static const Key< einhard::LogLevel > log_density
See user guide description for more information.
Definition: input_keys.h:1767
static const Key< double > modi_collider_target_deformed_gamma
See user guide description for more information.
Definition: input_keys.h:3541
static const Key< einhard::LogLevel > log_propagation
See user guide description for more information.
Definition: input_keys.h:1907
static const Key< einhard::LogLevel > log_scatterActionMulti
See user guide description for more information.
Definition: input_keys.h:1960
static const Key< double > output_initialConditions_pTCut
See user guide description for more information.
Definition: input_keys.h:4933
static const Key< bool > modi_collider_projectile_alphaClustered_automatic
See user guide description for more information.
Definition: input_keys.h:3578
static const Key< RestFrameDensityDerivativesMode > gen_restFrameDensityDerivativeMode
This key has been removed in SMASH-3.0 version.
Definition: input_keys.h:1392
static const Key< einhard::LogLevel > log_collider
See user guide description for more information.
Definition: input_keys.h:1576
static const Key< bool > collTerm_ignoreDecayWidthAtTheEnd
See user guide description for more information.
Definition: input_keys.h:2245
static const Key< std::string > modi_listBox_filename
See user guide description for more information.
Definition: input_keys.h:4521
static const Key< Sampling > modi_collider_impact_sample
See user guide description for more information.
Definition: input_keys.h:3752
static const Key< double > modi_collider_initialConditions_rapidityCut
See user guide description for more information.
Definition: input_keys.h:3891
static const Key< double > modi_collider_projectile_eTot
See user guide description for more information.
Definition: input_keys.h:3347
static const Key< bool > modi_sphere_useThermalMultiplicities
See user guide description for more information.
Definition: input_keys.h:4187
static const Key< double > collTerm_HF_AQMbSuppression
See user guide description for more information.
Definition: input_keys.h:1998
static const Key< bool > output_collisions_printStartEnd
See user guide description for more information.
Definition: input_keys.h:4819
static const Key< double > collTerm_stringTrans_KNOffset
See user guide description for more information.
Definition: input_keys.h:2625
static const Key< bool > collTerm_includeDecaysAtTheEnd
This key has been removed in SMASH-3.2 version.
Definition: input_keys.h:2219
static const Key< NNbarTreatment > collTerm_nnbarTreatment
See user guide description for more information.
Definition: input_keys.h:2355
static const Key< einhard::LogLevel > log_tmn
See user guide description for more information.
Definition: input_keys.h:1974
static const Key< std::string > modi_collider_target_custom_fileDirectory
See user guide description for more information.
Definition: input_keys.h:3405
static const Key< std::pair< double, double > > collTerm_stringTrans_rangeNN
See user guide description for more information.
Definition: input_keys.h:2671
static const Key< bool > lattice_automatic
See user guide description for more information.
Definition: input_keys.h:5314
static const Key< double > gen_deltaTime
See user guide description for more information.
Definition: input_keys.h:1204
static const Key< std::vector< double > > output_outputTimes
See user guide description for more information.
Definition: input_keys.h:4620
static const Key< bool > output_thermodynamics_smearing
See user guide description for more information.
Definition: input_keys.h:5269
static const Key< BoxInitialCondition > modi_box_initialCondition
See user guide description for more information.
Definition: input_keys.h:4262
static const Key< double > potentials_vdf_satRhoB
See user guide description for more information.
Definition: input_keys.h:5511
static const Key< std::map< std::string, std::string > > output_rivet_logging
See user guide description for more information.
Definition: input_keys.h:5021
static const Key< std::vector< std::string > > & get_output_format_key(std::string_view content)
Get the output format key object.
Definition: input_keys.h:6023
static const Key< double > collTerm_stringParam_gluonBeta
See user guide description for more information.
Definition: input_keys.h:2755
static const Key< bool > lattice_potentialsAffectThreshold
See user guide description for more information.
Definition: input_keys.h:5377
static const Key< double > collTerm_HF_AQMcSuppression
See user guide description for more information.
Definition: input_keys.h:2011
static const Key< std::array< int, 3 > > forcedThermalization_cellNumber
See user guide description for more information.
Definition: input_keys.h:5568
static const Key< einhard::LogLevel > log_potentials
See user guide description for more information.
Definition: input_keys.h:1678
static const Key< double > modi_collider_target_orientation_psi
See user guide description for more information.
Definition: input_keys.h:3671
static const Key< double > output_rivet_weights_nloSmearing
See user guide description for more information.
Definition: input_keys.h:5096
static const Key< double > modi_collider_projectile_orientation_phi
See user guide description for more information.
Definition: input_keys.h:3630
static const Key< FermiMotion > modi_collider_fermiMotion
See user guide description for more information.
Definition: input_keys.h:3188
static const Key< bool > collTerm_stringParam_separateFragmentBaryon
See user guide description for more information.
Definition: input_keys.h:2873
static const Key< bool > output_photons_extended
See user guide description for more information.
Definition: input_keys.h:4855
static const Key< double > modi_collider_initialConditions_properTime
See user guide description for more information.
Definition: input_keys.h:3851
static const Key< std::vector< std::string > > output_collisions_quantities
See user guide description for more information.
Definition: input_keys.h:4803
static const Key< bool > collTerm_twoToOne
See user guide description for more information.
Definition: input_keys.h:2542
static const Key< bool > modi_collider_projectile_orientation_randRot
See user guide description for more information.
Definition: input_keys.h:3685
static const Key< std::map< PdgCode, int > > modi_box_initialMultiplicities
See user guide description for more information.
Definition: input_keys.h:4242
static const Key< double > modi_collider_initialConditions_pTCut
See user guide description for more information.
Definition: input_keys.h:3871
static const Key< double > modi_sphere_strangeChemicalPotential
See user guide description for more information.
Definition: input_keys.h:4167
static const Key< int > gen_testparticles
See user guide description for more information.
Definition: input_keys.h:1483
static const Key< std::string > modi_listBox_fileDirectory
See user guide description for more information.
Definition: input_keys.h:4508
static const Key< TimeStepMode > gen_timeStepMode
See user guide description for more information.
Definition: input_keys.h:1507
static const Key< bool > modi_collider_target_alphaClustered_automatic
See user guide description for more information.
Definition: input_keys.h:3583
static const Key< std::vector< double > > potentials_vdf_coeffs
See user guide description for more information.
Definition: input_keys.h:5484
static const Key< double > modi_collider_target_deformed_beta3
See user guide description for more information.
Definition: input_keys.h:3501
A container to keep track of all ever existed sections in the input file.
Definition: input_keys.h:48
static const Section m_c_p_alphaClustered
Subsection for the alpha-clustered projectile in collider modus.
Definition: input_keys.h:105
static const Section o_rivet
Subsection for the output Rivet content.
Definition: input_keys.h:156
static const Section m_b_jet
Subsection for the jet in box modus.
Definition: input_keys.h:93
static const Section output
Section for the output information.
Definition: input_keys.h:140
static const Section m_c_p_custom
Subsection for the custom projectile in collider modus.
Definition: input_keys.h:108
static const Section potentials
Section for the potentials information.
Definition: input_keys.h:164
static const Section m_c_p_orientation
Subsection for the projectile orientation in collider modus.
Definition: input_keys.h:114
static const Section m_collider
Subsection for the collider modus.
Definition: input_keys.h:95
static const Section o_particles
Subsection for the output particles content.
Definition: input_keys.h:152
static const Section p_coulomb
Subsection for the Coulomb potentials information.
Definition: input_keys.h:166
static const Section c_pauliBlocking
Subsection for the Pauli blocking mechanism.
Definition: input_keys.h:58
static const Section o_r_weights
Subsection for the output Rivet weights information.
Definition: input_keys.h:158
static const Section c_photons
Subsection for the photons.
Definition: input_keys.h:61
static const Section m_c_p_deformed
Subsection for the deformed projectile in collider modus.
Definition: input_keys.h:111
static const Section c_dileptons
Subsection for the dileptons.
Definition: input_keys.h:55
static const Section p_skyrme
Subsection for the Skyrme potentials information.
Definition: input_keys.h:171
static const Section m_s_jet
Subsection for the jet in sphere modus.
Definition: input_keys.h:137
static const Section p_vdf
Subsection for the VDF potentials information.
Definition: input_keys.h:176
static const Section m_c_t_orientation
Subsection for the target orientation in collider modus.
Definition: input_keys.h:128
static const Section c_stringTransition
Subsection for the string transition.
Definition: input_keys.h:70
static const Section o_thermodynamics
Subsection for the output thermodynamics content.
Definition: input_keys.h:160
static const Section o_collisions
Subsection for the output collisions content.
Definition: input_keys.h:142
static const Section m_box
Subsection for the box modus.
Definition: input_keys.h:91
static const Section m_c_projectile
Subsection for the projectile in collider modus.
Definition: input_keys.h:102
static const Section p_momentumDependence
Subsection for the momentum-dependent potentials information.
Definition: input_keys.h:168
static const Section forcedThermalization
Section for the forced thermalization.
Definition: input_keys.h:74
static const Section o_dileptons
Subsection for the output dileptons content.
Definition: input_keys.h:147
static const Section m_c_t_deformed
Subsection for the deformed target in collider modus.
Definition: input_keys.h:125
static const Section collisionTerm
Section for the collision term.
Definition: input_keys.h:53
static const Section logging
Section for the logging.
Definition: input_keys.h:86
static const Section c_heavyFlavor
Subsection for heavy flavor.
Definition: input_keys.h:64
static const Section m_list
Subsection for the list modus.
Definition: input_keys.h:131
static const Section general
General section.
Definition: input_keys.h:77
static const Section m_c_target
Subsection for the target in collider modus.
Definition: input_keys.h:117
static const Section o_photons
Subsection for the output photons content.
Definition: input_keys.h:154
static const Section modi
Section for the modus specific information.
Definition: input_keys.h:89
KeyLabels Section
Type alias to be more descriptive when declaring members.
Definition: input_keys.h:50
static const Section m_c_initialConditions
Subsection for the initial conditions in collider modus.
Definition: input_keys.h:99
static const Section m_sphere
Subsection for the sphere modus.
Definition: input_keys.h:135
static const Section p_symmetry
Subsection for the symmetry potentials information.
Definition: input_keys.h:173
static const Section o_coulomb
Subsection for the output Coulomb content.
Definition: input_keys.h:145
static const Section o_initialConditions
Subsection for the output initial conditions content.
Definition: input_keys.h:149
static const Section m_c_t_custom
Subsection for the custom target in collider modus.
Definition: input_keys.h:122
static const Section lattice
Section for the lattice.
Definition: input_keys.h:83
static const Section m_c_impact
Subsection for the impact information in collider modus.
Definition: input_keys.h:97
static const Section g_minEnsembles
Subsection for the minimum-nonempty-ensembles mechanism.
Definition: input_keys.h:79
static const Section m_listBox
Subsection for the list-box modus.
Definition: input_keys.h:133
static const Section c_stringParameters
Subsection for the string parameters.
Definition: input_keys.h:67
static const Section m_c_t_alphaClustered
Subsection for the alpha-clustered target in collider modus.
Definition: input_keys.h:119