Version: SMASH-2.0
crosssectionsphoton.h
Go to the documentation of this file.
1 /*
2  *
3  * Copyright (c) 2016-2020
4  * SMASH Team
5  *
6  * GNU General Public License (GPLv3 or later)
7  *
8  */
9 
10 #ifndef SRC_INCLUDE_SMASH_CROSSSECTIONSPHOTON_H_
11 #define SRC_INCLUDE_SMASH_CROSSSECTIONSPHOTON_H_
12 
13 #include "cxx14compat.h"
14 #include "kinematics.h"
15 
16 namespace smash {
21 enum class ComputationMethod { Analytic };
22 
23 template <ComputationMethod method>
25 
31 template <>
33  public:
38 
46  static double xs_pi_pi_rho0(const double s, const double m_rho);
47  static double xs_pi_pi0_rho(const double s, const double m_rho);
48  static double xs_pi0_rho0_pi0(const double s, const double m_rho);
49  static double xs_pi_rho0_pi(const double s, const double m_rho);
50 
51  static double xs_pi_rho_pi0(const double s, const double m_rho);
52  static double xs_pi_rho_pi0_rho_mediated(const double s, const double m_rho);
53  static double xs_pi_rho_pi0_omega_mediated(const double s,
54  const double m_rho);
55 
56  static double xs_pi0_rho_pi(const double s, const double m_rho);
57  static double xs_pi0_rho_pi_rho_mediated(const double s, const double m_rho);
58  static double xs_pi0_rho_pi_omega_mediated(const double s,
59  const double m_rho);
61 
66 
75  static double xs_diff_pi_pi_rho0(const double s, const double t,
76  const double m_rho);
77  static double xs_diff_pi_pi0_rho(const double s, const double t,
78  const double m_rho);
79  static double xs_diff_pi0_rho0_pi0(const double s, const double t,
80  const double m_rho);
81  static double xs_diff_pi_rho0_pi(const double s, const double t,
82  const double m_rho);
83 
84  static double xs_diff_pi_rho_pi0_rho_mediated(const double s, const double t,
85  const double m_rho);
86  static double xs_diff_pi_rho_pi0_omega_mediated(const double s,
87  const double t,
88  const double m_rho);
89 
90  static double xs_diff_pi0_rho_pi_rho_mediated(const double s, const double t,
91  const double m_rho);
92  static double xs_diff_pi0_rho_pi_omega_mediated(const double s,
93  const double t,
94  const double m_rho);
96 
97  // Todo{JR}: Needed for tabulation.
99  static double s_min, s_max, t_min, t_max;
101 
102  private:
111 
115  constexpr static double Const = 0.059;
116  constexpr static double g_POR = 22.6;
117  constexpr static double ghat = 6.4483;
118  constexpr static double eta1 = 2.3920;
119  constexpr static double eta2 = 1.9430;
120  constexpr static double delta = -0.6426;
121  constexpr static double C4 = -0.14095;
122  constexpr static double Gammaa1 = 0.4;
125  constexpr static double Pi = M_PI;
126 };
127 
128 } // namespace smash
129 
130 #endif // SRC_INCLUDE_SMASH_CROSSSECTIONSPHOTON_H_
smash::Extrapolation::Const
smash
Definition: action.h:24
smash::ComputationMethod::Analytic
cxx14compat.h
smash::CrosssectionsPhoton
Definition: crosssectionsphoton.h:24
smash::ComputationMethod
ComputationMethod
Calculation method for the cross sections.
Definition: crosssectionsphoton.h:21
kinematics.h