Line data Source code
1 : #ifndef ALIGENMUONLIB_H
2 : #define ALIGENMUONLIB_H
3 : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 : * See cxx source for full Copyright notice */
5 :
6 : /* $Id$ */
7 :
8 : // Library class for particle pt and y distributions used for
9 : // muon spectrometer simulations.
10 : // To be used with AliGenParam.
11 : //
12 : // andreas.morsch@cern.ch
13 :
14 : #include "AliGenLib.h"
15 :
16 0 : class AliGenMUONlib :
17 : public AliGenLib
18 : {
19 : public:
20 : enum constants{kPhi, kOmega, kEta, kJpsi, kJpsiFamily, kPsiP, kJpsiFromB, kUpsilon, kUpsilonFamily,
21 : kUpsilonP, kUpsilonPP, kCharm, kBeauty, kPion, kKaon, kChic, kChic0, kChic1, kChic2, kRho };
22 :
23 : GenFunc GetPt(Int_t param, const char* tname=0) const;
24 : GenFunc GetY (Int_t param, const char* tname=0) const;
25 : GenFuncIp GetIp(Int_t param, const char* tname=0) const;
26 : private:
27 :
28 : // pions
29 : static Double_t PtPion(const Double_t *px, const Double_t *dummy);
30 : static Double_t PtScal(Double_t pt, Int_t np);
31 : static Double_t YPion( const Double_t *py, const Double_t *dummy);
32 : static Int_t IpPion(TRandom *ran);
33 : // kaons
34 : static Double_t PtKaon(const Double_t *px, const Double_t *dummy);
35 : static Double_t YKaon( const Double_t *py, const Double_t *dummy);
36 : static Int_t IpKaon(TRandom *ran);
37 : // XZhang 20110621
38 : static Double_t PtPionPos2010PP(const Double_t *px, const Double_t *dummy);
39 : static Double_t PtPionNeg2010PP(const Double_t *px, const Double_t *dummy);
40 : static Double_t PtKaonPos2010PP(const Double_t *px, const Double_t *dummy);
41 : static Double_t PtKaonNeg2010PP(const Double_t *px, const Double_t *dummy);
42 : static Double_t YKaonPion2010PP(const Double_t *px, const Double_t *dummy);
43 : static Int_t IpPionPos(TRandom *ran);
44 : static Int_t IpPionNeg(TRandom *ran);
45 : static Int_t IpKaonPos(TRandom *ran);
46 : static Int_t IpKaonNeg(TRandom *ran);
47 : // Phi
48 : static Double_t PtPhi( const Double_t *px, const Double_t *dummy);
49 : static Double_t YPhi( const Double_t *px, const Double_t *dummy);
50 : static Int_t IpPhi(TRandom *ran);
51 : // Omega
52 : static Double_t PtOmega( const Double_t *px, const Double_t *dummy);
53 : static Double_t YOmega( const Double_t *px, const Double_t *dummy);
54 : static Int_t IpOmega(TRandom *ran);
55 : // Eta
56 : static Double_t PtEta( const Double_t *px, const Double_t *dummy);
57 : static Double_t YEta( const Double_t *px, const Double_t *dummy);
58 : static Int_t IpEta(TRandom *ran);
59 : // Rho
60 : static Double_t PtRho( const Double_t *px, const Double_t *dummy);
61 : static Double_t YRho( const Double_t *px, const Double_t *dummy);
62 : static Int_t IpRho(TRandom *ran);
63 :
64 : // J/Psi
65 : static Double_t PtJpsiPPdummy(Double_t px, Double_t en);
66 : static Double_t PtJpsiPP7000(const Double_t *px, const Double_t *dummy);
67 : static Double_t PtJpsiPP8000(const Double_t *px, const Double_t *dummy);
68 : static Double_t PtJpsiPP2760(const Double_t *px, const Double_t *dummy);
69 : static Double_t PtJpsiPP4400(const Double_t *px, const Double_t *dummy);
70 : static Double_t PtJpsiPP5030(const Double_t *px, const Double_t *dummy);
71 : static Double_t PtJpsiPP8800(const Double_t *px, const Double_t *dummy);
72 : static Double_t PtJpsiPbPb2760ShFdummy(Double_t px, Int_t n);
73 : static Double_t PtJpsiPbPb2760(const Double_t *px, const Double_t *dummy);
74 : static Double_t PtJpsiPbPb2760c1(const Double_t *px, const Double_t *dummy);
75 : static Double_t PtJpsiPbPb2760c2(const Double_t *px, const Double_t *dummy);
76 : static Double_t PtJpsiPbPb2760c3(const Double_t *px, const Double_t *dummy);
77 : static Double_t PtJpsiPbPb2760c4(const Double_t *px, const Double_t *dummy);
78 : static Double_t PtJpsiPbPb2760c5(const Double_t *px, const Double_t *dummy);
79 : static Double_t PtJpsiPbPb2760c6(const Double_t *px, const Double_t *dummy);
80 : static Double_t PtJpsiPbPb2760c7(const Double_t *px, const Double_t *dummy);
81 : static Double_t PtJpsiPbPb2760c8(const Double_t *px, const Double_t *dummy);
82 : static Double_t PtJpsiPbPb2760c9(const Double_t *px, const Double_t *dummy);
83 : static Double_t PtJpsiPbPb2760c10(const Double_t *px, const Double_t *dummy);
84 : static Double_t PtJpsiPbPb2760c11(const Double_t *px, const Double_t *dummy);
85 : static Double_t PtJpsiPPb5030ShFdummy(Double_t px, Int_t n);
86 : static Double_t PtJpsiPPb5030(const Double_t *px, const Double_t *dummy);
87 : static Double_t PtJpsiPPb5030c1(const Double_t *px, const Double_t *dummy);
88 : static Double_t PtJpsiPPb5030c2(const Double_t *px, const Double_t *dummy);
89 : static Double_t PtJpsiPPb5030c3(const Double_t *px, const Double_t *dummy);
90 : static Double_t PtJpsiPPb5030c4(const Double_t *px, const Double_t *dummy);
91 : static Double_t PtJpsiPbP5030ShFdummy(Double_t px, Int_t n);
92 : static Double_t PtJpsiPbP5030(const Double_t *px, const Double_t *dummy);
93 : static Double_t PtJpsiPbP5030c1(const Double_t *px, const Double_t *dummy);
94 : static Double_t PtJpsiPbP5030c2(const Double_t *px, const Double_t *dummy);
95 : static Double_t PtJpsiPbP5030c3(const Double_t *px, const Double_t *dummy);
96 : static Double_t PtJpsiPbP5030c4(const Double_t *px, const Double_t *dummy);
97 : static Double_t PtJpsiPPb8800ShFdummy(Double_t px, Int_t n);
98 : static Double_t PtJpsiPPb8800(const Double_t *px, const Double_t *dummy);
99 : static Double_t PtJpsiPPb8800c1(const Double_t *px, const Double_t *dummy);
100 : static Double_t PtJpsiPPb8800c2(const Double_t *px, const Double_t *dummy);
101 : static Double_t PtJpsiPPb8800c3(const Double_t *px, const Double_t *dummy);
102 : static Double_t PtJpsiPPb8800c4(const Double_t *px, const Double_t *dummy);
103 : static Double_t PtJpsiPbP8800ShFdummy(Double_t px, Int_t n);
104 : static Double_t PtJpsiPbP8800(const Double_t *px, const Double_t *dummy);
105 : static Double_t PtJpsiPbP8800c1(const Double_t *px, const Double_t *dummy);
106 : static Double_t PtJpsiPbP8800c2(const Double_t *px, const Double_t *dummy);
107 : static Double_t PtJpsiPbP8800c3(const Double_t *px, const Double_t *dummy);
108 : static Double_t PtJpsiPbP8800c4(const Double_t *px, const Double_t *dummy);
109 : static Double_t PtJpsi( const Double_t *px, const Double_t *dummy);
110 : static Double_t PtJpsiCDFscaled( const Double_t *px, const Double_t *dummy);
111 : static Double_t PtJpsiCDFscaledPP( const Double_t *px, const Double_t *dummy);
112 : static Double_t PtJpsiCDFscaledPP10( const Double_t *px, const Double_t *dummy);
113 : static Double_t PtJpsiCDFscaledPP9( const Double_t *px, const Double_t *dummy);
114 : static Double_t PtJpsiCDFscaledPP7( const Double_t *px, const Double_t *dummy);
115 : static Double_t PtJpsiCDFscaledPP4( const Double_t *px, const Double_t *dummy);
116 : static Double_t PtJpsiCDFscaledPP3( const Double_t *px, const Double_t *dummy);
117 : static Double_t PtJpsiCDFscaledPP2( const Double_t *px, const Double_t *dummy);
118 : static Double_t PtJpsiCDFscaledPPb9( const Double_t *px, const Double_t *dummy);
119 : static Double_t PtJpsiCDFscaledPbP9( const Double_t *px, const Double_t *dummy);
120 : static Double_t PtJpsiCDFscaledPbPb4( const Double_t *px, const Double_t *dummy);
121 : static Double_t YJpsi(const Double_t *py, const Double_t *dummy);
122 : static Double_t PtJpsiPbPb( const Double_t *px, const Double_t *dummy);
123 : static Double_t PtJpsiBPbPb( const Double_t *px, const Double_t *dummy);
124 :
125 : static Double_t YJpsiPPdummy(Double_t px, Double_t en);
126 : static Double_t YJpsiPPpoly(Double_t px, Double_t en);
127 : static Double_t YJpsiPP7000(const Double_t *px, const Double_t *dummy);
128 : static Double_t YJpsiPP8000(const Double_t *px, const Double_t *dummy);
129 : static Double_t YJpsiPP2760(const Double_t *px, const Double_t *dummy);
130 : static Double_t YJpsiPPpoly7000(const Double_t *px, const Double_t *dummy);
131 : static Double_t YJpsiPPpoly2760(const Double_t *px, const Double_t *dummy);
132 : static Double_t YJpsiPP4400(const Double_t *px, const Double_t *dummy);
133 : static Double_t YJpsiPP5030(const Double_t *px, const Double_t *dummy);
134 : static Double_t YJpsiPP8800(const Double_t *px, const Double_t *dummy);
135 : static Double_t YJpsiPbPb2760ShFdummy(Double_t px, Int_t n);
136 : static Double_t YJpsiPbPb2760(const Double_t *px, const Double_t *dummy);
137 : static Double_t YJpsiPbPb2760c1(const Double_t *px, const Double_t *dummy);
138 : static Double_t YJpsiPbPb2760c2(const Double_t *px, const Double_t *dummy);
139 : static Double_t YJpsiPbPb2760c3(const Double_t *px, const Double_t *dummy);
140 : static Double_t YJpsiPbPb2760c4(const Double_t *px, const Double_t *dummy);
141 : static Double_t YJpsiPbPb2760c5(const Double_t *px, const Double_t *dummy);
142 : static Double_t YJpsiPbPb2760c6(const Double_t *px, const Double_t *dummy);
143 : static Double_t YJpsiPbPb2760c7(const Double_t *px, const Double_t *dummy);
144 : static Double_t YJpsiPbPb2760c8(const Double_t *px, const Double_t *dummy);
145 : static Double_t YJpsiPbPb2760c9(const Double_t *px, const Double_t *dummy);
146 : static Double_t YJpsiPbPb2760c10(const Double_t *px, const Double_t *dummy);
147 : static Double_t YJpsiPbPb2760c11(const Double_t *px, const Double_t *dummy);
148 : static Double_t YJpsiPP5030dummy(Double_t px);
149 : static Double_t YJpsiPPb5030ShFdummy(Double_t px, Int_t n);
150 : static Double_t YJpsiPPb5030(const Double_t *px, const Double_t *dummy);
151 : static Double_t YJpsiPPb5030c1(const Double_t *px, const Double_t *dummy);
152 : static Double_t YJpsiPPb5030c2(const Double_t *px, const Double_t *dummy);
153 : static Double_t YJpsiPPb5030c3(const Double_t *px, const Double_t *dummy);
154 : static Double_t YJpsiPPb5030c4(const Double_t *px, const Double_t *dummy);
155 : static Double_t YJpsiPbP5030(const Double_t *px, const Double_t *dummy);
156 : static Double_t YJpsiPbP5030c1(const Double_t *px, const Double_t *dummy);
157 : static Double_t YJpsiPbP5030c2(const Double_t *px, const Double_t *dummy);
158 : static Double_t YJpsiPbP5030c3(const Double_t *px, const Double_t *dummy);
159 : static Double_t YJpsiPbP5030c4(const Double_t *px, const Double_t *dummy);
160 : static Double_t YJpsiPP8800dummy(Double_t px);
161 : static Double_t YJpsiPPb8800ShFdummy(Double_t px, Int_t n);
162 : static Double_t YJpsiPPb8800(const Double_t *px, const Double_t *dummy);
163 : static Double_t YJpsiPPb8800c1(const Double_t *px, const Double_t *dummy);
164 : static Double_t YJpsiPPb8800c2(const Double_t *px, const Double_t *dummy);
165 : static Double_t YJpsiPPb8800c3(const Double_t *px, const Double_t *dummy);
166 : static Double_t YJpsiPPb8800c4(const Double_t *px, const Double_t *dummy);
167 : static Double_t YJpsiPbP8800(const Double_t *px, const Double_t *dummy);
168 : static Double_t YJpsiPbP8800c1(const Double_t *px, const Double_t *dummy);
169 : static Double_t YJpsiPbP8800c2(const Double_t *px, const Double_t *dummy);
170 : static Double_t YJpsiPbP8800c3(const Double_t *px, const Double_t *dummy);
171 : static Double_t YJpsiPbP8800c4(const Double_t *px, const Double_t *dummy);
172 : static Double_t YJpsiPbPb(const Double_t *py, const Double_t *dummy);
173 : static Double_t YJpsiCDFscaled(const Double_t *py, const Double_t *dummy);
174 : static Double_t YJpsiCDFscaledPP( const Double_t *px, const Double_t *dummy);
175 : static Double_t YJpsiCDFscaledPP10( const Double_t *px, const Double_t *dummy);
176 : static Double_t YJpsiCDFscaledPP9( const Double_t *px, const Double_t *dummy);
177 : static Double_t YJpsiCDFscaledPP9dummy(Double_t px);
178 : static Double_t YJpsiCDFscaledPP7( const Double_t *px, const Double_t *dummy);
179 : static Double_t YJpsiCDFscaledPP4( const Double_t *px, const Double_t *dummy);
180 : static Double_t YJpsiCDFscaledPP3( const Double_t *px, const Double_t *dummy);
181 : static Double_t YJpsiCDFscaledPP2( const Double_t *px, const Double_t *dummy);
182 : static Double_t YJpsiCDFscaledPPb9( const Double_t *px, const Double_t *dummy);
183 : static Double_t YJpsiCDFscaledPbP9( const Double_t *px, const Double_t *dummy);
184 : static Double_t YJpsiCDFscaledPbPb4( const Double_t *px, const Double_t *dummy);
185 : static Double_t PtJpsiPP( const Double_t *px, const Double_t *dummy);
186 : static Double_t YJpsiPP(const Double_t *py, const Double_t *dummy);
187 : static Double_t YJpsiBPbPb(const Double_t *py, const Double_t *dummy);
188 : static Int_t IpJpsi(TRandom *ran);
189 : static Int_t IpJpsiFamily(TRandom *ran);
190 : static Int_t IpPsiP(TRandom *ran);
191 : static Double_t PtJpsiFlat( const Double_t *px, const Double_t *dummy );
192 : static Double_t YJpsiFlat(const Double_t *py, const Double_t *dummy);
193 :
194 : // Upsilon
195 : static Double_t PtUpsilonPPdummy(Double_t px, Double_t en);
196 : static Double_t PtUpsilonPP8000(const Double_t *px, const Double_t *dummy );
197 : static Double_t PtUpsilonPP7000(const Double_t *px, const Double_t *dummy );
198 : static Double_t PtUpsilonPP2760(const Double_t *px, const Double_t *dummy );
199 : static Double_t PtUpsilonPP4400(const Double_t *px, const Double_t *dummy );
200 : static Double_t PtUpsilonPP5030(const Double_t *px, const Double_t *dummy );
201 : static Double_t PtUpsilonPP8800(const Double_t *px, const Double_t *dummy );
202 : static Double_t PtUpsilonPbPb2760ShFdummy(Double_t px, Int_t n);
203 : static Double_t PtUpsilonPbPb2760(const Double_t *px, const Double_t *dummy );
204 : static Double_t PtUpsilonPbPb2760c1(const Double_t *px, const Double_t *dummy );
205 : static Double_t PtUpsilonPbPb2760c2(const Double_t *px, const Double_t *dummy );
206 : static Double_t PtUpsilonPbPb2760c3(const Double_t *px, const Double_t *dummy );
207 : static Double_t PtUpsilonPbPb2760c4(const Double_t *px, const Double_t *dummy );
208 : static Double_t PtUpsilonPbPb2760c5(const Double_t *px, const Double_t *dummy );
209 : static Double_t PtUpsilonPbPb2760c6(const Double_t *px, const Double_t *dummy );
210 : static Double_t PtUpsilonPbPb2760c7(const Double_t *px, const Double_t *dummy );
211 : static Double_t PtUpsilonPbPb2760c8(const Double_t *px, const Double_t *dummy );
212 : static Double_t PtUpsilonPbPb2760c9(const Double_t *px, const Double_t *dummy );
213 : static Double_t PtUpsilonPbPb2760c10(const Double_t *px, const Double_t *dummy );
214 : static Double_t PtUpsilonPbPb2760c11(const Double_t *px, const Double_t *dummy );
215 : static Double_t PtUpsilonPPb5030ShFdummy(Double_t px, Int_t n);
216 : static Double_t PtUpsilonPPb5030(const Double_t *px, const Double_t *dummy );
217 : static Double_t PtUpsilonPPb5030c1(const Double_t *px, const Double_t *dummy );
218 : static Double_t PtUpsilonPPb5030c2(const Double_t *px, const Double_t *dummy );
219 : static Double_t PtUpsilonPPb5030c3(const Double_t *px, const Double_t *dummy );
220 : static Double_t PtUpsilonPPb5030c4(const Double_t *px, const Double_t *dummy );
221 : static Double_t PtUpsilonPbP5030ShFdummy(Double_t px, Int_t n);
222 : static Double_t PtUpsilonPbP5030(const Double_t *px, const Double_t *dummy );
223 : static Double_t PtUpsilonPbP5030c1(const Double_t *px, const Double_t *dummy );
224 : static Double_t PtUpsilonPbP5030c2(const Double_t *px, const Double_t *dummy );
225 : static Double_t PtUpsilonPbP5030c3(const Double_t *px, const Double_t *dummy );
226 : static Double_t PtUpsilonPbP5030c4(const Double_t *px, const Double_t *dummy );
227 : static Double_t PtUpsilonPPb8800ShFdummy(Double_t px, Int_t n);
228 : static Double_t PtUpsilonPPb8800(const Double_t *px, const Double_t *dummy );
229 : static Double_t PtUpsilonPPb8800c1(const Double_t *px, const Double_t *dummy );
230 : static Double_t PtUpsilonPPb8800c2(const Double_t *px, const Double_t *dummy );
231 : static Double_t PtUpsilonPPb8800c3(const Double_t *px, const Double_t *dummy );
232 : static Double_t PtUpsilonPPb8800c4(const Double_t *px, const Double_t *dummy );
233 : static Double_t PtUpsilonPbP8800ShFdummy(Double_t px, Int_t n);
234 : static Double_t PtUpsilonPbP8800(const Double_t *px, const Double_t *dummy );
235 : static Double_t PtUpsilonPbP8800c1(const Double_t *px, const Double_t *dummy );
236 : static Double_t PtUpsilonPbP8800c2(const Double_t *px, const Double_t *dummy );
237 : static Double_t PtUpsilonPbP8800c3(const Double_t *px, const Double_t *dummy );
238 : static Double_t PtUpsilonPbP8800c4(const Double_t *px, const Double_t *dummy );
239 : static Double_t PtUpsilon( const Double_t *px, const Double_t *dummy );
240 : static Double_t PtUpsilonCDFscaled( const Double_t *px, const Double_t *dummy );
241 : static Double_t PtUpsilonCDFscaledPP( const Double_t *px, const Double_t *dummy );
242 : static Double_t PtUpsilonCDFscaledPP10( const Double_t *px, const Double_t *dummy );
243 : static Double_t PtUpsilonCDFscaledPP9( const Double_t *px, const Double_t *dummy );
244 : static Double_t PtUpsilonCDFscaledPP7( const Double_t *px, const Double_t *dummy );
245 : static Double_t PtUpsilonCDFscaledPP4( const Double_t *px, const Double_t *dummy );
246 : static Double_t PtUpsilonCDFscaledPPb9( const Double_t *px, const Double_t *dummy );
247 : static Double_t PtUpsilonCDFscaledPbP9( const Double_t *px, const Double_t *dummy );
248 : static Double_t PtUpsilonCDFscaledPbPb4( const Double_t *px, const Double_t *dummy );
249 :
250 : static Double_t YUpsilonPPdummy(Double_t px, Double_t en);
251 : static Double_t YUpsilonPPpoly(Double_t px, Double_t en);
252 : static Double_t YUpsilonPP7000(const Double_t *px, const Double_t *dummy );
253 : static Double_t YUpsilonPP8000(const Double_t *px, const Double_t *dummy );
254 : static Double_t YUpsilonPP2760(const Double_t *px, const Double_t *dummy );
255 : static Double_t YUpsilonPPpoly7000(const Double_t *px, const Double_t *dummy );
256 : static Double_t YUpsilonPPpoly2760(const Double_t *px, const Double_t *dummy );
257 : static Double_t YUpsilonPP4400(const Double_t *px, const Double_t *dummy );
258 : static Double_t YUpsilonPP5030(const Double_t *px, const Double_t *dummy );
259 : static Double_t YUpsilonPP8800(const Double_t *px, const Double_t *dummy );
260 : static Double_t YUpsilonPbPb2760ShFdummy(Double_t px, Int_t n);
261 : static Double_t YUpsilonPbPb2760(const Double_t *px, const Double_t *dummy );
262 : static Double_t YUpsilonPbPb2760c1(const Double_t *px, const Double_t *dummy );
263 : static Double_t YUpsilonPbPb2760c2(const Double_t *px, const Double_t *dummy );
264 : static Double_t YUpsilonPbPb2760c3(const Double_t *px, const Double_t *dummy );
265 : static Double_t YUpsilonPbPb2760c4(const Double_t *px, const Double_t *dummy );
266 : static Double_t YUpsilonPbPb2760c5(const Double_t *px, const Double_t *dummy );
267 : static Double_t YUpsilonPbPb2760c6(const Double_t *px, const Double_t *dummy );
268 : static Double_t YUpsilonPbPb2760c7(const Double_t *px, const Double_t *dummy );
269 : static Double_t YUpsilonPbPb2760c8(const Double_t *px, const Double_t *dummy );
270 : static Double_t YUpsilonPbPb2760c9(const Double_t *px, const Double_t *dummy );
271 : static Double_t YUpsilonPbPb2760c10(const Double_t *px, const Double_t *dummy );
272 : static Double_t YUpsilonPbPb2760c11(const Double_t *px, const Double_t *dummy );
273 : static Double_t YUpsilonPP5030dummy(Double_t px);
274 : static Double_t YUpsilonPPb5030ShFdummy(Double_t px, Int_t n);
275 : static Double_t YUpsilonPPb5030(const Double_t *px, const Double_t *dummy );
276 : static Double_t YUpsilonPPb5030c1(const Double_t *px, const Double_t *dummy );
277 : static Double_t YUpsilonPPb5030c2(const Double_t *px, const Double_t *dummy );
278 : static Double_t YUpsilonPPb5030c3(const Double_t *px, const Double_t *dummy );
279 : static Double_t YUpsilonPPb5030c4(const Double_t *px, const Double_t *dummy );
280 : static Double_t YUpsilonPbP5030(const Double_t *px, const Double_t *dummy );
281 : static Double_t YUpsilonPbP5030c1(const Double_t *px, const Double_t *dummy );
282 : static Double_t YUpsilonPbP5030c2(const Double_t *px, const Double_t *dummy );
283 : static Double_t YUpsilonPbP5030c3(const Double_t *px, const Double_t *dummy );
284 : static Double_t YUpsilonPbP5030c4(const Double_t *px, const Double_t *dummy );
285 : static Double_t YUpsilonPP8800dummy(Double_t px);
286 : static Double_t YUpsilonPPb8800ShFdummy(Double_t px, Int_t n);
287 : static Double_t YUpsilonPPb8800(const Double_t *px, const Double_t *dummy );
288 : static Double_t YUpsilonPPb8800c1(const Double_t *px, const Double_t *dummy );
289 : static Double_t YUpsilonPPb8800c2(const Double_t *px, const Double_t *dummy );
290 : static Double_t YUpsilonPPb8800c3(const Double_t *px, const Double_t *dummy );
291 : static Double_t YUpsilonPPb8800c4(const Double_t *px, const Double_t *dummy );
292 : static Double_t YUpsilonPbP8800(const Double_t *px, const Double_t *dummy );
293 : static Double_t YUpsilonPbP8800c1(const Double_t *px, const Double_t *dummy );
294 : static Double_t YUpsilonPbP8800c2(const Double_t *px, const Double_t *dummy );
295 : static Double_t YUpsilonPbP8800c3(const Double_t *px, const Double_t *dummy );
296 : static Double_t YUpsilonPbP8800c4(const Double_t *px, const Double_t *dummy );
297 : static Double_t YUpsilon(const Double_t *py, const Double_t *dummy);
298 : static Double_t YUpsilonCDFscaled(const Double_t *py, const Double_t *dummy);
299 : static Double_t YUpsilonCDFscaledPP( const Double_t *px, const Double_t *dummy );
300 : static Double_t YUpsilonCDFscaledPP10( const Double_t *px, const Double_t *dummy );
301 : static Double_t YUpsilonCDFscaledPP9( const Double_t *px, const Double_t *dummy );
302 : static Double_t YUpsilonCDFscaledPP9dummy(Double_t px);
303 : static Double_t YUpsilonCDFscaledPP7( const Double_t *px, const Double_t *dummy );
304 : static Double_t YUpsilonCDFscaledPP4( const Double_t *px, const Double_t *dummy );
305 : static Double_t YUpsilonCDFscaledPPb9( const Double_t *px, const Double_t *dummy );
306 : static Double_t YUpsilonCDFscaledPbP9( const Double_t *px, const Double_t *dummy );
307 : static Double_t YUpsilonCDFscaledPbPb4( const Double_t *px, const Double_t *dummy );
308 : static Double_t PtUpsilonPbPb( const Double_t *px, const Double_t *dummy );
309 : static Double_t YUpsilonPbPb(const Double_t *py, const Double_t *dummy);
310 : static Double_t PtUpsilonPP( const Double_t *px, const Double_t *dummy );
311 : static Double_t YUpsilonPP(const Double_t *py, const Double_t *dummy);
312 : static Int_t IpUpsilon(TRandom *ran);
313 : static Int_t IpUpsilonFamily(TRandom *ran);
314 : static Int_t IpUpsilonP(TRandom *ran);
315 : static Int_t IpUpsilonPP(TRandom *ran);
316 : static Double_t PtUpsilonFlat( const Double_t *px, const Double_t *dummy );
317 : static Double_t YUpsilonFlat(const Double_t *py, const Double_t *dummy);
318 : //
319 : // Charm
320 : static Double_t PtCharm( const Double_t *px, const Double_t *dummy );
321 : static Double_t PtCharmCentral( const Double_t *px, const Double_t *dummy );
322 : static Double_t PtCharmF0M0S0PP( const Double_t *px, const Double_t *dummy );
323 : static Double_t PtCharmF1M0S0PP( const Double_t *px, const Double_t *dummy );
324 : static Double_t PtCharmF2M0S0PP( const Double_t *px, const Double_t *dummy );
325 : static Double_t PtCharmF0M1S0PP( const Double_t *px, const Double_t *dummy );
326 : static Double_t PtCharmF0M2S0PP( const Double_t *px, const Double_t *dummy );
327 : static Double_t PtCharmF0M0S1PP( const Double_t *px, const Double_t *dummy );
328 : static Double_t PtCharmF0M0S2PP( const Double_t *px, const Double_t *dummy );
329 : static Double_t PtCharmF0M0S3PP( const Double_t *px, const Double_t *dummy );
330 : static Double_t PtCharmF0M0S4PP( const Double_t *px, const Double_t *dummy );
331 : static Double_t PtCharmF0M0S5PP( const Double_t *px, const Double_t *dummy );
332 : static Double_t PtCharmF0M0S6PP( const Double_t *px, const Double_t *dummy );
333 : static Double_t YCharm(const Double_t *py, const Double_t *dummy);
334 : static Double_t YCharmF0M0S0PP(const Double_t *py, const Double_t *dummy);
335 : static Double_t YCharmF1M0S0PP(const Double_t *py, const Double_t *dummy);
336 : static Double_t YCharmF2M0S0PP(const Double_t *py, const Double_t *dummy);
337 : static Double_t YCharmF0M1S0PP(const Double_t *py, const Double_t *dummy);
338 : static Double_t YCharmF0M2S0PP(const Double_t *py, const Double_t *dummy);
339 : static Double_t YCharmF0M0S1PP(const Double_t *py, const Double_t *dummy);
340 : static Double_t YCharmF0M0S2PP(const Double_t *py, const Double_t *dummy);
341 : static Double_t YCharmF0M0S3PP(const Double_t *py, const Double_t *dummy);
342 : static Double_t YCharmF0M0S4PP(const Double_t *py, const Double_t *dummy);
343 : static Double_t YCharmF0M0S5PP(const Double_t *py, const Double_t *dummy);
344 : static Double_t YCharmF0M0S6PP(const Double_t *py, const Double_t *dummy);
345 : static Int_t IpCharm(TRandom *ran);
346 : //
347 : // Beauty
348 : static Double_t PtBeauty( const Double_t *px, const Double_t *dummy );
349 : static Double_t PtBeautyF0M0S0PP( const Double_t *px, const Double_t *dummy );
350 : static Double_t PtBeautyF1M0S0PP( const Double_t *px, const Double_t *dummy );
351 : static Double_t PtBeautyF2M0S0PP( const Double_t *px, const Double_t *dummy );
352 : static Double_t PtBeautyF0M1S0PP( const Double_t *px, const Double_t *dummy );
353 : static Double_t PtBeautyF0M2S0PP( const Double_t *px, const Double_t *dummy );
354 : static Double_t PtBeautyF0M0S1PP( const Double_t *px, const Double_t *dummy );
355 : static Double_t PtBeautyF0M0S2PP( const Double_t *px, const Double_t *dummy );
356 : static Double_t PtBeautyF0M0S3PP( const Double_t *px, const Double_t *dummy );
357 : static Double_t PtBeautyF0M0S4PP( const Double_t *px, const Double_t *dummy );
358 : static Double_t PtBeautyF0M0S5PP( const Double_t *px, const Double_t *dummy );
359 : static Double_t PtBeautyF0M0S6PP( const Double_t *px, const Double_t *dummy );
360 : static Double_t YBeauty(const Double_t *py, const Double_t *dummy);
361 : static Double_t YBeautyF0M0S0PP(const Double_t *py, const Double_t *dummy);
362 : static Double_t YBeautyF1M0S0PP(const Double_t *py, const Double_t *dummy);
363 : static Double_t YBeautyF2M0S0PP(const Double_t *py, const Double_t *dummy);
364 : static Double_t YBeautyF0M1S0PP(const Double_t *py, const Double_t *dummy);
365 : static Double_t YBeautyF0M2S0PP(const Double_t *py, const Double_t *dummy);
366 : static Double_t YBeautyF0M0S1PP(const Double_t *py, const Double_t *dummy);
367 : static Double_t YBeautyF0M0S2PP(const Double_t *py, const Double_t *dummy);
368 : static Double_t YBeautyF0M0S3PP(const Double_t *py, const Double_t *dummy);
369 : static Double_t YBeautyF0M0S4PP(const Double_t *py, const Double_t *dummy);
370 : static Double_t YBeautyF0M0S5PP(const Double_t *py, const Double_t *dummy);
371 : static Double_t YBeautyF0M0S6PP(const Double_t *py, const Double_t *dummy);
372 : static Double_t PtBeautyCentral( const Double_t *px, const Double_t *dummy );
373 : static Int_t IpBeauty(TRandom *ran);
374 : //
375 :
376 : // Chi 1c 2c
377 : static Double_t PtChic0( const Double_t *px, const Double_t *dummy);
378 : static Double_t YChic0(const Double_t *py, const Double_t *dummy);
379 : static Int_t IpChic0(TRandom *ran);
380 :
381 : static Double_t PtChic1( const Double_t *px, const Double_t *dummy);
382 : static Double_t YChic1(const Double_t *py, const Double_t *dummy);
383 : static Int_t IpChic1(TRandom *ran);
384 :
385 : static Double_t PtChic2( const Double_t *px, const Double_t *dummy);
386 : static Double_t YChic2(const Double_t *py, const Double_t *dummy);
387 : static Int_t IpChic2(TRandom *ran);
388 :
389 : static Double_t PtChic( const Double_t *px, const Double_t *dummy);
390 : static Double_t YChic(const Double_t *py, const Double_t *dummy);
391 : static Int_t IpChic(TRandom *ran);
392 :
393 : //
394 :
395 :
396 : static Float_t Interpolate(Float_t x, Float_t* y, Float_t x0,
397 : Float_t dx,
398 : Int_t n, Int_t no);
399 :
400 6 : ClassDef(AliGenMUONlib,0) // Library providing y and pT parameterisations
401 : };
402 : #endif
403 :
404 :
405 :
406 :
407 :
408 :
409 :
|