]>
Commit | Line | Data |
---|---|---|
0e60774c | 1 | #ifndef ALITRDPIDUTIL_H |
2 | #define ALITRDPIDUTIL_H | |
3 | ||
4 | ////////////////////////////////////////////////////// | |
5 | // | |
6 | // Class to calculate PID performance of the TRD | |
7 | // | |
8 | // Author : Alex Wilk <wilka@uni-muenster.de> | |
9 | // | |
10 | /////////////////////////////////////////////////////// | |
11 | ||
422a2dc0 | 12 | class TH1; |
0affc9e5 | 13 | class AliESDtrack; |
0e60774c | 14 | class AliTRDpidUtil : public TObject { |
15 | public: | |
16 | ||
17 | enum { | |
18 | kBins = 10001 | |
19 | }; | |
0affc9e5 | 20 | typedef enum{ |
21 | kLQ = 0 // 2D likelihood method | |
22 | ,kNN = 1 // Neural network method | |
23 | ,kESD = 2 // ESD results - check offline | |
24 | } PIDmethod_t; | |
0e60774c | 25 | |
26 | AliTRDpidUtil(); | |
27 | virtual ~AliTRDpidUtil(){;} | |
28 | ||
c46a7947 | 29 | Bool_t CalculatePionEffi(TH1* histo1, TH1* histo2); |
0e60774c | 30 | |
31 | static Float_t ElectronEfficiency() { return fEleEffi;}; | |
0affc9e5 | 32 | |
33 | static Bool_t IsElectron(const AliESDtrack *track, PIDmethod_t method = kNN); | |
34 | static Double_t GetSystematicError(const AliESDtrack *track, PIDmethod_t method = kNN); | |
0e60774c | 35 | |
36 | Double_t GetCalcElectronEfficiency() {return fCalcEleEffi;}; | |
37 | Double_t GetPionEfficiency() {return fPionEffi;}; | |
38 | Double_t GetError() {return fError;}; | |
39 | Double_t GetThreshold() {return fThreshold;}; | |
40 | ||
0affc9e5 | 41 | static Int_t GetMomentumBin(Double_t p); |
0e60774c | 42 | |
43 | static void SetElectronEfficiency(Float_t eleeffi) {fEleEffi = eleeffi;}; | |
44 | ||
45 | private: | |
46 | AliTRDpidUtil(const AliTRDpidUtil&); // not implemented | |
47 | AliTRDpidUtil& operator=(const AliTRDpidUtil&); // not implemented | |
48 | ||
49 | static Float_t fEleEffi; // electron efficiency | |
50 | ||
51 | Double_t fCalcEleEffi; // electron efficiency after calculation | |
52 | Double_t fPionEffi; // pion efficiency | |
53 | Double_t fError; // pion efficiency error | |
54 | Double_t fThreshold; // threshold for calculated electron efficiency | |
55 | ||
56 | ClassDef(AliTRDpidUtil, 1) // TRD PID efficiency calculator | |
57 | ||
58 | }; | |
59 | ||
60 | #endif |