]>
Commit | Line | Data |
---|---|---|
f87cfe57 | 1 | #ifndef ALIGENPHOSLIB_H |
2 | #define ALIGENPHOSLIB_H | |
b22ee262 | 3 | #include "AliGenLib.h" |
886b6f73 | 4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | /* $Id$ */ | |
8 | ||
ac3faee4 | 9 | //====================================================================== |
10 | // AliGenPHOSlib class contains parameterizations of the | |
11 | // pion, kaon, eta, omega, etaprime, phi and baryon (proton, | |
12 | // antiproton, neutron and anti-neutron) particles for the | |
13 | // study of the neutral background in PHOS detector. | |
14 | //====================================================================== | |
15 | ||
65fb704d | 16 | class TRandom; |
17 | ||
886b6f73 | 18 | class AliGenPHOSlib : |
b22ee262 | 19 | public AliGenLib |
886b6f73 | 20 | { |
21 | public: | |
74c62c73 | 22 | enum constants{kPion, kPi0Flat, kKaon, kEta, kEtaFlat,kOmega, kEtaPrime, kPhi, kBaryon}; |
886b6f73 | 23 | // pions |
f87cfe57 | 24 | static Double_t PtPion(Double_t *px, Double_t *dummy); |
886b6f73 | 25 | static Double_t PtScal(Double_t pt, Int_t np); |
f87cfe57 | 26 | static Double_t YPion( Double_t *py, Double_t *dummy); |
65fb704d | 27 | static Int_t IpPion(TRandom* ran); |
74c62c73 | 28 | |
29 | // pi0 Flat Distribution | |
30 | static Double_t PtPi0Flat(Double_t *px, Double_t *dummy); | |
31 | static Double_t YPi0Flat( Double_t *py, Double_t *dummy); | |
32 | static Int_t IpPi0Flat(TRandom* ran); | |
33 | ||
886b6f73 | 34 | // kaons |
f87cfe57 | 35 | static Double_t PtKaon(Double_t *px, Double_t *dummy); |
36 | static Double_t YKaon( Double_t *py, Double_t *dummy); | |
65fb704d | 37 | static Int_t IpKaon(TRandom* ran); |
74c62c73 | 38 | |
886b6f73 | 39 | // etas |
f87cfe57 | 40 | static Double_t PtEta(Double_t *px, Double_t *dummy); |
41 | static Double_t YEta( Double_t *py, Double_t *dummy); | |
65fb704d | 42 | static Int_t IpEta(TRandom *ran); |
74c62c73 | 43 | |
44 | // etas Flat Distribution | |
45 | static Double_t PtEtaFlat(Double_t *px, Double_t *dummy); | |
46 | static Double_t YEtaFlat( Double_t *py, Double_t *dummy); | |
47 | static Int_t IpEtaFlat(TRandom *ran); | |
48 | ||
886b6f73 | 49 | // omegas |
f87cfe57 | 50 | static Double_t PtOmega(Double_t *px, Double_t *dummy); |
51 | static Double_t YOmega( Double_t *py, Double_t *dummy); | |
65fb704d | 52 | static Int_t IpOmega(TRandom *ran); |
74c62c73 | 53 | |
886b6f73 | 54 | // etaprime |
f87cfe57 | 55 | static Double_t PtEtaprime(Double_t *px, Double_t *dummy); |
56 | static Double_t YEtaprime( Double_t *py, Double_t *dummy); | |
65fb704d | 57 | static Int_t IpEtaprime(TRandom* ran); |
74c62c73 | 58 | |
886b6f73 | 59 | // phis |
f87cfe57 | 60 | static Double_t PtPhi(Double_t *px, Double_t *dummy); |
61 | static Double_t YPhi( Double_t *py, Double_t *dummy); | |
65fb704d | 62 | static Int_t IpPhi(TRandom* ran); |
74c62c73 | 63 | |
886b6f73 | 64 | // baryons |
f87cfe57 | 65 | static Double_t PtBaryon(Double_t *px, Double_t *dummy); |
66 | static Double_t YBaryon( Double_t *py, Double_t *dummy); | |
65fb704d | 67 | static Int_t IpBaryon(TRandom *ran); |
886b6f73 | 68 | |
a04b490f | 69 | GenFunc GetPt(Int_t param, const char* tname=0) const; |
70 | GenFunc GetY (Int_t param, const char* tname=0) const; | |
71 | GenFuncIp GetIp(Int_t param, const char* tname=0) const; | |
762c0d1d | 72 | ClassDef(AliGenPHOSlib,0) // Library providing y and pT parameterisations |
886b6f73 | 73 | }; |
74 | #endif | |
75 | ||
76 | ||
77 | ||
78 | ||
79 | ||
80 | ||
81 |