File indexing completed on 2026-09-27 09:14:54
0001
0002
0003
0004
0005
0006
0007
0008
0009 #ifndef _DEBUG_
0010 #define _DEBUG_
0011
0012 #include <iostream>
0013 #include <iomanip>
0014
0015 namespace jpacPhoto
0016 {
0017
0018 template<typename T>
0019 inline void debug(T x)
0020 {
0021 std::cout << x << std::endl;
0022 };
0023
0024 template<typename T, typename F>
0025 inline void debug(T x, F y)
0026 {
0027 std::cout << std::left << std::setw(15) << x;
0028 std::cout << std::left << std::setw(15) << y << std::endl;
0029 };
0030
0031 template<typename T, typename F, typename G>
0032 inline void debug(T x, F y, G z)
0033 {
0034 std::cout << std::left << std::setw(15) << x;
0035 std::cout << std::left << std::setw(15) << y;
0036 std::cout << std::left << std::setw(15) << z << std::endl;
0037 };
0038 };
0039
0040 #endif
0041
0042 #ifndef CONSTANT
0043 #define CONSTANT
0044
0045 #include <cmath>
0046 #include <complex>
0047
0048 namespace jpacPhoto
0049 {
0050
0051 const double PI = M_PI;
0052 const double DEG2RAD = (M_PI / 180.);
0053 const double EPS = 1.e-6;
0054 const double ALPHA = 1. / 137.;
0055 const double E = sqrt(4. * PI * ALPHA);
0056
0057 const std::complex<double> XR(1., 0.);
0058 const std::complex<double> XI(0., 1.);
0059 const std::complex<double> IEPS(0., EPS);
0060
0061
0062 const double M_PION = 0.13957000;
0063 const double M_KAON = 0.49367700;
0064 const double M_ETA = 0.54753;
0065 const double M_RHO = 0.77526;
0066 const double M_OMEGA = 0.78265;
0067 const double M_PHI = 1.01956;
0068 const double M_JPSI = 3.0969160;
0069 const double M_PSI2S = 3.686;
0070 const double M_D = 1.86965;
0071 const double M_DSTAR = 2.01026;
0072 const double M_UPSILON1S = 9.4603;
0073 const double M_UPSILON2S = 10.02336;
0074 const double M_UPSILON3S = 10.3552;
0075 const double M_CHIC1 = 3.51067;
0076
0077
0078 const double M_X3872 = 3.87169;
0079 const double M_Y4260 = 4.220;
0080 const double M_ZC3900 = 3.8884;
0081 const double M_ZB10610 = 10.6072;
0082 const double M_ZB10650 = 10.6522;
0083
0084
0085 const double M2_PION = M_PION * M_PION;
0086 const double M2_JPSI = M_JPSI * M_JPSI;
0087 const double M2_D = M_D * M_D;
0088 const double M2_DSTAR = M_DSTAR * M_DSTAR;
0089
0090
0091 const double M_PROTON = 0.938272;
0092 const double M_LAMBDAC = 2.28646;
0093
0094
0095 const double M2_PROTON = M_PROTON * M_PROTON;
0096 const double M2_LAMBDAC = M_LAMBDAC * M_LAMBDAC;
0097
0098
0099 const double F_JPSI = 0.278;
0100 const double F_UPSILON1S = 0.23345;
0101 const double F_UPSILON2S = 0.16563;
0102 const double F_UPSILON3S = 0.1431;
0103
0104
0105 inline double E_beam(double W)
0106 {
0107 return (W*W / M_PROTON - M_PROTON) / 2.;
0108 };
0109
0110
0111 inline double W_cm(double egam)
0112 {
0113 return sqrt(M_PROTON * (2. * egam + M_PROTON));
0114 };
0115
0116 };
0117
0118
0119 #endif