ROOTPWA
pputil.h
Go to the documentation of this file.
1 #ifndef PPUTIL_H
2 #define PPUTIL_H
3 
4 
5 #include <iostream>
6 #include <string>
7 #include <complex>
8 #include <cstdio>
9 
10 
11 typedef enum {
12  g_Unknown = 0,
13  g_Gamma = 1,
19  g_Pi0 = 7,
20  g_PiPlus = 8,
21  g_PiMinus = 9,
22  g_KLong = 10,
23  g_KPlus = 11,
24  g_KMinus = 12,
25  g_Neutron = 13,
26  g_Proton = 14,
28  g_KShort = 16,
29  g_Eta = 17,
30  g_Lambda = 18,
32  g_Sigma0 = 20,
34  g_Xi0 = 22,
35  g_XiMinus = 23,
42  g_AntiXi0 = 30,
45 
46  g_Deuteron = 45,
47  g_Triton = 49,
48 
49  g_Rho0 = 57,
50  g_RhoPlus = 58,
51  g_RhoMinus = 59,
52  g_omega = 60,
53  g_EtaPrime = 61,
55 } Geant_ID;
56 
57 
58 #define signof(x) (x<0 ? -1 : 1)
59 #define MAX(x,y) (x>y ? x : y)
60 #define MIN(x,y) (x<y ? x : y)
61 
62 
63 inline double tilde(const int l) { return pow(l+1,0.5); }
64 
65 std::complex<double> D(const double alpha,
66  const double beta,
67  const double gamma,
68  const int j,
69  const int n,
70  const int m);
71 double d_jmn_b(int J,
72  int M,
73  int N,
74  double beta);
75 double clebsch(const int j1,
76  const int j2,
77  const int j3,
78  const int m1,
79  const int m2,
80  const int m3);
81 extern "C" void clebs_(int*,
82  int*,
83  int*,
84  int*,
85  int*,
86  int*,
87  int*,
88  int*);
89 int fact(int i);
90 double dfact(const double i);
91 double F(const int n,
92  const double p);
93 double lambda(const double a,
94  const double b,
95  const double c);
96 std::complex<double> q(const double M,
97  const double m1,
98  const double m2);
99 
100 void addtab();
101 void subtab();
102 void ptab();
103 void settab(const int);
104 std::string itos(const int);
105 std::string chargetos(int charge);
106 
107 Geant_ID name2id(const std::string& name,
108  const int q);
109 std::string id2name(const Geant_ID);
110 
111 
112 #endif // PPUTIL_H