]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGCF/EBYE/MeanPtFluctuations/AliAnalysisTaskPtFluc.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGCF / EBYE / MeanPtFluctuations / AliAnalysisTaskPtFluc.h
1 #ifndef AliAnalysisTaskPtFluc_cxx
2 #define AliAnalysisTaskPtFluc_cxx
3
4 // Analysis of Pt Fluctuations (pp)
5 // Author: Stefan Heckel
6 // Version of pp task:   11.4, 11.06.2012
7
8
9 class TList;
10 class TH1F;
11 class TH2F;
12 class TRandom;
13
14 class AliESDEvent;
15 class AliESDtrack;
16 class AliESDtrackCuts;
17
18
19 #include "AliAnalysisTaskSE.h"
20
21
22 class AliAnalysisTaskPtFluc : public AliAnalysisTaskSE {
23   public:
24     AliAnalysisTaskPtFluc(const char *name = "AliAnalysisTaskPtFluc");
25     virtual ~AliAnalysisTaskPtFluc();
26
27     virtual void   UserCreateOutputObjects();
28     virtual void   UserExec(Option_t *option);
29     virtual void   Terminate(Option_t *);
30
31     void SetAliESDtrackCuts(AliESDtrackCuts* esdTrackCuts) {fESDTrackCuts = esdTrackCuts;}
32     void SetMaxVertexZ(Float_t vZ) {fMaxVertexZ = vZ;}
33     void SetMaxVertexZDiff1(Float_t vZDiff1) {fMaxVertexZDiff1 = vZDiff1;}
34     void SetNContributors(Int_t nCont) {fNContributors = nCont;}
35     void SetMC(Bool_t bMC) {fMC = bMC;}
36     void SetMCType(Int_t bMCType) {fMCType = bMCType;}
37
38
39   private:
40     AliESDEvent      *fESD;             // ESD object
41     AliMCEvent       *fMCev;            // MC object
42     TRandom          *fRandom3;         // Random generator
43     TList*            fOutputList;      // List where all the output files are stored
44         TH1F*           fPtSpec;        // Pt spectrum - data or MC truth
45         TH1F*           fPtSpec2;       // Pt spectrum 2 - MC ESD
46         TH1F*           fMult;          // Multiplicity distribution
47         TH1F*           fEta;           // Eta distribution
48         TH1F*           fEtaPhiPlus;    // Phi distribution for positive eta
49         TH1F*           fEtaPhiMinus;   // Phi distribution for negative eta
50         TH1F*           fVtxZ;          // Vertex Z distribution after physics selection before any further cuts
51         TH1F*           fVtxZCut;       // Vertex Z dist. after vertex Z cut
52         TH1F*           fVtxZCont;      // Vertex Z dist. after vertex cut on nContributors
53         TH1F*           fVtxZCutDiff;   // Vertex Z dist. after vertex cut on vtx Z Difference
54         TH1F*           fVtxZPileup;    // Vertex Z dist. after pileup rejection
55         TH1F*           fVtxZTrackCuts; // Vertex Z dist. after all event and track cuts
56         TH1F*           fVtxZDiff1;     // Difference 1 between vertex Z distributions
57         TH1F*           fVtxZDiff2;     // Difference 2 between vertex Z distributions
58         TH1F*           fVtxZDiff3;     // Difference 3 between vertex Z distributions
59         TH1F*           fVtxZDiff1b;    // Difference 1 between vertex Z distributions after all cuts
60         TH1F*           fVtxZDiff2b;    // Difference 2 between vertex Z distributions after all cuts
61         TH1F*           fVtxZDiff3b;    // Difference 3 between vertex Z distributions after all cuts
62         TH1F*           fEventMeanPt;           // Event mean pT distribution
63         TH1F*           fEventMeanPtSq;         // Event mean pT squared dist.
64         TH2F*           fEventMeanPtMult;       // Event mean pT distribution vs. multiplicity (scatter plot)
65         TH1F*           fMultEventMeanPt;       // Event mean pT for multiplicity bins
66         TH1F*           fMultEventMeanPtSq;     // Event mean pT squared for mult. bins
67         TH1F*           fTwoPartCorrEv;         // Two-particle correlator for multiplicity bins
68         TH1F*           fTwoPartCorrEvSq;       // Two-part. corr. squared for mult. bins
69         TH1F*           fTwoPartCorrEvSample;   // Two-part. corr. for the whole sample
70         TH1F*           fTwoPartCorrEvSampleSq; // Two-part. corr. squared for the whole sample
71
72     AliESDtrackCuts* fESDTrackCuts;     // Esd track cuts
73     Float_t          fMaxVertexZ;       // Maximum value for Vertex Z position
74     Float_t          fMaxVertexZDiff1;  // Maximum value for Vertex Z difference TPC - global
75     Int_t            fNContributors;    // Minimum contributors to the vertex
76     Bool_t           fMC;               // Check for MC
77     Int_t            fMCType;           // Set MC type: ESD, MC truth (generator level), mod. MC truth
78
79     AliAnalysisTaskPtFluc(const AliAnalysisTaskPtFluc&); // not implemented
80     AliAnalysisTaskPtFluc& operator=(const AliAnalysisTaskPtFluc&); // not implemented
81
82     ClassDef(AliAnalysisTaskPtFluc, 1);
83
84 };
85
86 #endif