]>
Commit | Line | Data |
---|---|---|
a65a7e70 | 1 | #ifndef AliEbyEFluctuationAnalysisTaskTrain_cxx |
2 | #define AliEbyEFluctuationAnalysisTaskTrain_cxx | |
3 | ||
4 | // Event by event charge fluctuation analysis | |
5 | // Authors: Satyajit Jena and Panos Cristakoglou | |
6 | ||
7 | class TH1F; | |
8 | class TH2F; | |
9 | class TString; | |
10 | class AliESDEvent; | |
11 | //class AliESDtrackCuts; | |
12 | ||
13 | #include "AliAnalysisTaskSE.h" | |
14 | ||
15 | //const Int_t nCentralityBins = 20; | |
16 | ||
17 | class AliEbyEFluctuationAnalysisTaskTrain : public AliAnalysisTaskSE { | |
18 | public: | |
19 | AliEbyEFluctuationAnalysisTaskTrain() : AliAnalysisTaskSE(), fESD(0), fOutputList(0), fHistEventStats(0), fHistCentrality(0), fHistNMult(0), fHistNPlusNMinus(0), fHistNMultMC(0), fHistNPlusNMinusMC(0), fAnalysisType(0), fAnalysisMode(0), fCentralityEstimator("V0M"), fCentralityPercentileMin(0.0), fCentralityPercentileMax(5.0), fVxMax(3.0),fVyMax(3.0), fVzMax(10.), fMinNumberOfTPCClusters(80), fMaxChi2PerTPCCluster(4.0), fMaxDCAxy(3.0), fMaxDCAz(3.0) {} | |
20 | AliEbyEFluctuationAnalysisTaskTrain(const char *name); | |
21 | virtual ~AliEbyEFluctuationAnalysisTaskTrain() {} | |
22 | ||
23 | virtual void UserCreateOutputObjects(); | |
24 | virtual void UserExec(Option_t *option); | |
25 | virtual void Terminate(Option_t *); | |
26 | ||
27 | //void SetAnalysisCutObject(AliESDtrackCuts *const trackCuts) { | |
28 | //fESDtrackCuts = trackCuts;} | |
29 | void SetVertexDiamond(Double_t vx, Double_t vy, Double_t vz) { | |
30 | fVxMax = vx; | |
31 | fVyMax = vy; | |
32 | fVzMax = vz; | |
33 | } | |
34 | ||
35 | //Centrality | |
36 | void SetCentralityEstimator(const char* centralityEstimator) { | |
37 | fCentralityEstimator = centralityEstimator;} | |
38 | //void SetCentralityBins20() {fCentralityBins20 = kTRUE;} | |
39 | void SetCentralityPercentileRange(Float_t min, Float_t max) { | |
40 | fCentralityPercentileMin=min; | |
41 | fCentralityPercentileMax=max; | |
42 | } | |
43 | ||
44 | void SetAnalysisType(const char* analysisType) { | |
45 | fAnalysisType = analysisType;} | |
46 | void SetAnalysisMode(const char* analysisMode) { | |
47 | fAnalysisMode = analysisMode;} | |
48 | ||
49 | //Track cuts | |
50 | void SetMinNumberOfTPCClusters(Double_t min) { | |
51 | fMinNumberOfTPCClusters = min;} | |
52 | void SetMaxChi2PerTPCCluster(Double_t max) { | |
53 | fMaxChi2PerTPCCluster = max;} | |
54 | void SetMaxDCAxy(Double_t max) { | |
55 | fMaxDCAxy = max;} | |
56 | void SetMaxDCAz(Double_t max) { | |
57 | fMaxDCAz = max;} | |
58 | ||
59 | private: | |
60 | AliESDEvent *fESD; //! ESD object | |
61 | TList *fOutputList; //! Output list | |
62 | TH1F *fHistEventStats; //!event stats | |
63 | TH1F *fHistCentrality; //!centrality | |
64 | TH1F *fHistNMult; //! nmult | |
65 | TH2F *fHistNPlusNMinus;//!nplus vs nminus correlation | |
66 | TH1F *fHistNMultMC; //!nmult MC | |
67 | TH2F *fHistNPlusNMinusMC;//!nplus vs nminus correlation | |
68 | ||
69 | //AliESDtrackCuts *fESDtrackCuts; //ESD track cuts | |
70 | ||
71 | TString fAnalysisType;//"MC", "ESD", "AOD" | |
72 | TString fAnalysisMode;//"TPC", "Global" | |
73 | ||
74 | TString fCentralityEstimator;//"V0M","TRK","TKL","ZDC","FMD" | |
75 | //Bool_t fCentralityBins20;//centrality bins of 5% width | |
76 | Float_t fCentralityPercentileMin, fCentralityPercentileMax; //min-max centrality percentile | |
77 | ||
78 | Double_t fVxMax;//vxmax | |
79 | Double_t fVyMax;//vymax | |
80 | Double_t fVzMax;//vzmax | |
81 | ||
82 | Double_t fMinNumberOfTPCClusters; // | |
83 | Double_t fMaxChi2PerTPCCluster; // | |
84 | Double_t fMaxDCAxy, fMaxDCAz;// | |
85 | ||
86 | AliEbyEFluctuationAnalysisTaskTrain(const AliEbyEFluctuationAnalysisTaskTrain&); // not implemented | |
87 | AliEbyEFluctuationAnalysisTaskTrain& operator=(const AliEbyEFluctuationAnalysisTaskTrain&); // not implemented | |
88 | ||
89 | ClassDef(AliEbyEFluctuationAnalysisTaskTrain, 1); // example of analysis | |
90 | }; | |
91 | ||
92 | #endif |