Version: SMASH-2.2
crosssectionsphoton.h
Go to the documentation of this file.
1 /*
2  *
3  * Copyright (c) 2016-2021
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 {
32 double cut_off(const double sigma_mb);
33 
38 enum class ComputationMethod { Analytic };
39 
40 template <ComputationMethod method>
42 
48 template <>
50  public:
56 
63  static double xs_pi_pi_rho0(const double s, const double m_rho);
64  static double xs_pi_pi0_rho(const double s, const double m_rho);
65  static double xs_pi0_rho0_pi0(const double s, const double m_rho);
66  static double xs_pi_rho0_pi(const double s, const double m_rho);
67 
68  static double xs_pi_rho_pi0(const double s, const double m_rho);
69  static double xs_pi_rho_pi0_rho_mediated(const double s, const double m_rho);
70  static double xs_pi_rho_pi0_omega_mediated(const double s,
71  const double m_rho);
72 
73  static double xs_pi0_rho_pi(const double s, const double m_rho);
74  static double xs_pi0_rho_pi_rho_mediated(const double s, const double m_rho);
75  static double xs_pi0_rho_pi_omega_mediated(const double s,
76  const double m_rho);
78 
84 
92  static double xs_diff_pi_pi_rho0(const double s, const double t,
93  const double m_rho);
94  static double xs_diff_pi_pi0_rho(const double s, const double t,
95  const double m_rho);
96  static double xs_diff_pi0_rho0_pi0(const double s, const double t,
97  const double m_rho);
98  static double xs_diff_pi_rho0_pi(const double s, const double t,
99  const double m_rho);
100 
101  static double xs_diff_pi_rho_pi0_rho_mediated(const double s, const double t,
102  const double m_rho);
103  static double xs_diff_pi_rho_pi0_omega_mediated(const double s,
104  const double t,
105  const double m_rho);
106 
107  static double xs_diff_pi0_rho_pi_rho_mediated(const double s, const double t,
108  const double m_rho);
109  static double xs_diff_pi0_rho_pi_omega_mediated(const double s,
110  const double t,
111  const double m_rho);
113 
114  // Todo{JR}: Needed for tabulation.
116  static double s_min, s_max, t_min, t_max;
118 
119  private:
129 
132  constexpr static double Const = 0.059;
133  constexpr static double g_POR = 22.6;
134  constexpr static double ghat = 6.4483;
135  constexpr static double eta1 = 2.3920;
136  constexpr static double eta2 = 1.9430;
137  constexpr static double delta = -0.6426;
138  constexpr static double C4 = -0.14095;
139  constexpr static double Gammaa1 = 0.4;
142  constexpr static double Pi = M_PI;
143 };
144 
145 } // namespace smash
146 
147 #endif // SRC_INCLUDE_SMASH_CROSSSECTIONSPHOTON_H_
Definition: action.h:24
ComputationMethod
Calculation method for the cross sections.
double cut_off(const double sigma_mb)
Cross section after cut off.