1 #ifndef AliEbyEParticleRatioFluctuationTask_cxx
2 #define AliEbyEParticleRatioFluctuationTask_cxx
4 //=========================================================================//
6 // AliEbyE Analysis for Particle Ratio Fluctuation //
7 // Author: Deepika Rathee || Satyajit Jena //
8 // drathee@cern.ch || sjena@cern.ch //
10 //=========================================================================//
18 class AliAODMCParticle;
20 class AliESDtrackCuts;
23 #include "AliAnalysisTaskSE.h"
25 #include "THnSparse.h"
27 class AliEbyEParticleRatioFluctuationTask: public AliAnalysisTaskSE {
29 AliEbyEParticleRatioFluctuationTask( const char *name = "HigherMomentAnalysis");
30 virtual ~AliEbyEParticleRatioFluctuationTask();
32 virtual void UserCreateOutputObjects();
33 virtual void UserExec(Option_t *option);
34 virtual void Terminate(Option_t *);
36 static const Int_t kNCentralityBins = 20; //! N centrality bins
37 static const Int_t kNSparseData = 14; //! N Sparse bins
39 void SetVertexDiamond(Double_t vx, Double_t vy, Double_t vz) {fVxMax = vx;fVyMax = vy; fVzMax = vz;}
40 void SetKinematicsCuts(Double_t ptl, Double_t pth, Double_t eta) {fPtLowerLimit = ptl; fPtHigherLimit = pth; fEtaLowerLimit = -eta; fEtaHigherLimit = eta; }
41 void SetAODtrackCutBit(Int_t bit) {fAODtrackCutBit = bit; }
42 void SetDCA(Double_t xy, Double_t z) { fDCAxy = xy; fDCAz = z; }
43 void SetTPCNclus(Int_t nclus) { fTPCNClus = nclus;}
44 void SetCentralityEstimator(const char* cent) { fCentralityEstimator = cent;}
45 void SetAnalysisType(const char* analysisType) {fAnalysisType = analysisType;}
46 void SetAnalysisData(const char* analysisData) {fAnalysisData = analysisData;}
47 void RunQA() {isQA = kTRUE;}
48 void Debug() {fDebug = kTRUE;}
49 void SetHelperPID(AliHelperPID* pid){fHelperPID = pid;}
53 Bool_t AcceptEvent(AliAODEvent *event, Int_t cent) const; //! accept eventc
54 Bool_t AcceptTrack(AliAODTrack *track, Int_t cent) const; //! accept track
55 Bool_t AcceptMCTrack(AliAODMCParticle *track, Int_t cent) const; //! accept track
57 TString fAnalysisType; //! "AOD", "AODMC"
58 TString fAnalysisData; //! "PbPb", "pp", "pA"
59 TString fCentralityEstimator; //! "V0M","TRK","TKL","ZDC","FMD"
60 Double_t fVxMax; //! vxmax
61 Double_t fVyMax; //! vymax
62 Double_t fVzMax; //! vzmax
63 Double_t fDCAxy; //! DCA xy
64 Double_t fDCAz; //! DCA z
65 Double_t fPtLowerLimit;
66 Double_t fPtHigherLimit;
67 Double_t fEtaLowerLimit;
68 Double_t fEtaHigherLimit;
71 Int_t fAODtrackCutBit;
74 AliHelperPID *fHelperPID;
77 THnSparseI *fHistoCorrelation;
79 //________________________________
80 AliEbyEParticleRatioFluctuationTask(const AliEbyEParticleRatioFluctuationTask&);
81 AliEbyEParticleRatioFluctuationTask& operator = (const AliEbyEParticleRatioFluctuationTask&);
82 ClassDef(AliEbyEParticleRatioFluctuationTask, 1);