]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGCF/EBYE/MeanPtFluctuations/AliAnalysisTaskPtFlucPbPb.h
end-of-line normalization
[u/mrichter/AliRoot.git] / PWGCF / EBYE / MeanPtFluctuations / AliAnalysisTaskPtFlucPbPb.h
1 #ifndef AliAnalysisTaskPtFlucPbPb_cxx
2 #define AliAnalysisTaskPtFlucPbPb_cxx
3
4 // Analysis of Pt Fluctuations (PbPb)
5 // Author: Stefan Heckel
6 // Version of PbPb task:  9.2, 03.07.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 AliAnalysisTaskPtFlucPbPb : public AliAnalysisTaskSE {
23   public:
24     AliAnalysisTaskPtFlucPbPb(const char *name = "AliAnalysisTaskPtFlucPbPb");
25     virtual ~AliAnalysisTaskPtFlucPbPb();
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 SetUseCentrality(Int_t cent) {fUseCentrality = cent;}
36     void SetMC(Bool_t bMC) {fMC = bMC;}
37     void SetMCType(Int_t bMCType) {fMCType = bMCType;}
38     void SetMCAMPT(Bool_t bMCAMPT) {fMCAMPT = bMCAMPT;}
39
40
41   private:
42     AliESDEvent      *fESD;             // ESD object
43     AliMCEvent       *fMCev;            // MC object
44     TRandom          *fRandom3;         // Random generator
45     TList*            fOutputList;      // List where all the output files are stored
46         TH1F*           fPtSpec;        // Pt spectrum - data or MC truth
47         TH1F*           fPtSpec2;       // Pt spectrum 2 - MC ESD
48         TH1F*           fMult;          // Multiplicity distribution
49         TH1F*           fMultNbins;     // Multiplicity distribution for single mult. bins
50         TH1F*           fMultSum;       // Sum of number of tracks of all events for each multiplicity bin
51         TH1F*           fMultSumPt;     // Sum of pTs for multiplicity bins
52         TH1F*           fMultNrPairs;   // Sum of number of pairs in mult. bins
53         TH1F*           fMult1;         // Multiplicity distribution (first bin divided in 4)
54         TH1F*           fMultSum1;      // Sum of number of tracks of all events for each multiplicity bin (first bin divided in 4)
55         TH1F*           fMultSumPt1;    // Sum of pTs for multiplicity bins (first bin divided in 4)
56         TH1F*           fMultNrPairs1;  // Sum of number of pairs in mult. bins (first bin divided in 4)
57         TH1F*           fMult10;        // Multiplicity distribution (five bins in 0 < Nacc < 50)
58         TH1F*           fMultSum10;     // Sum of number of tracks of all events for each multiplicity bin (five bins in 0 < Nacc < 50)
59         TH1F*           fMultSumPt10;   // Sum of pTs for multiplicity bins (five bins in 0 < Nacc < 50)
60         TH1F*           fMultNrPairs10; // Sum of number of pairs in mult. bins (five bins in 0 < Nacc < 50)
61         TH1F*           fMult80;        // Multiplicity distribution  -- (only for events with centrality < 80%)
62         TH1F*           fMultSum80;     // Sum of number of tracks of all events for each multiplicity bin -- ( " < 80%)
63         TH1F*           fMultSumPt80;   // Sum of pTs for multiplicity bins-- ( " < 80%)
64         TH1F*           fMultNrPairs80; // Sum of number of pairs in mult. bins -- ( " < 80%)
65         TH1F*           fMult801;       // Multiplicity distribution (first bin divided in 4) -- (only for events with centrality < 80%)
66         TH1F*           fMultSum801;    // Sum of number of tracks of all events for each multiplicity bin (first bin divided in 4) -- ( " < 80%)
67         TH1F*           fMultSumPt801;  // Sum of pTs for multiplicity bins (first bin divided in 4) -- ( " < 80%)
68         TH1F*           fMultNrPairs801; // Sum of number of pairs in mult. bins (first bin divided in 4) -- ( " < 80%)
69         TH1F*           fMult810;       // Multiplicity distribution (five bins in 0 < Nacc < 50) -- ( " < 80%)
70         TH1F*           fMultSum810;    // Sum of number of tracks of all events for each multiplicity bin (five bins in 0 < Nacc < 50)--( " < 80%)
71         TH1F*           fMultSumPt810;  // Sum of pTs for multiplicity bins (five bins in 0 < Nacc < 50) -- ( " < 80%)
72         TH1F*           fMultNrPairs810; // Sum of number of pairs in mult. bins (five bins in 0 < Nacc < 50) -- ( " < 80%)
73         TH1F*           fCent;          // Centrality distribution
74         TH1F*           fCentSum;       // Sum of number of tracks of all events for each centrality bin
75         TH1F*           fCentSumPt;     // Sum of pTs for centrality bins
76         TH1F*           fCentNrPairs;   // Sum of number of pairs in cent. bins
77         TH1F*           fEta;           // Eta distribution
78         TH1F*           fEtaPhiPlus;    // Phi distribution for positive eta
79         TH1F*           fEtaPhiMinus;   // Phi distribution for negative eta
80         TH1F*           fVtxZ;          // Vertex Z distribution after physics selection before any further cuts
81         TH1F*           fVtxZCut;       // Vertex Z dist. after vertex Z cut
82         TH1F*           fVtxZCont;      // Vertex Z dist. after vertex cut on nContributors
83         TH1F*           fVtxZCutDiff;   // Vertex Z dist. after vertex cut on vtx Z Difference
84         TH1F*           fVtxZTrackCuts; // Vertex Z dist. after all event and track cuts
85         TH1F*           fVtxZDiff1;     // Difference 1 between vertex Z distributions
86         TH1F*           fVtxZDiff2;     // Difference 2 between vertex Z distributions
87         TH1F*           fVtxZDiff3;     // Difference 3 between vertex Z distributions
88         TH1F*           fVtxZDiff1b;    // Difference 1 between vertex Z distributions after all cuts
89         TH1F*           fVtxZDiff2b;    // Difference 2 between vertex Z distributions after all cuts
90         TH1F*           fVtxZDiff3b;    // Difference 3 between vertex Z distributions after all cuts
91         TH1F*           fEventMeanPt;           // Event mean pT distribution
92         TH1F*           fEventMeanPtSq;         // Event mean pT squared dist.
93         TH2F*           fEventMeanPtMult;       // Event mean pT distribution vs. multiplicity (scatter plot)
94         TH1F*           fMultEventMeanPt;       // Event mean pT for multiplicity bins
95         TH1F*           fMultEventMeanPtSq;     // Event mean pT squared for mult. bins
96         TH1F*           fMultEventMeanPtNbins;  // Event mean pT for single mult. bins
97         TH1F*           fMultEventMeanPtSqNbins;// Event mean pT squared for single mult. bins
98         TH1F*           fCentEventMeanPt;       // Event mean pT for centrality bins
99         TH1F*           fCentEventMeanPtSq;     // Event mean pT squared for cent. bins
100         TH1F*           fEventMeanPtCent05;     // Event mean pT distribution in cent bin 0-5%
101         TH1F*           fEventMeanPtCent2030;   // Event mean pT distribution in cent bin 20-30%
102         TH1F*           fEventMeanPtCent7080;   // Event mean pT distribution in cent bin 70-80%
103         TH1F*           fTwoPartCorrEv;         // Two-particle correlator for multiplicity bins
104         TH1F*           fTwoPartCorrEvSq;       // Two-part. corr. squared for mult. bins
105         TH1F*           fTwoPartCorrEv1;        // Two-particle correlator for multiplicity bins (first bin divided in 4)
106         TH1F*           fTwoPartCorrEvSq1;      // Two-part. corr. squared for mult. bins (first bin divided in 4)
107         TH1F*           fTwoPartCorrEv10;       // Two-particle correlator for multiplicity bins (five bins in 0 < Nacc < 50)
108         TH1F*           fTwoPartCorrEvSq10;     // Two-part. corr. squared for mult. bins (five bins in 0 < Nacc < 50)
109         TH1F*           fTwoPartCorrEv80;       // Two-particle correlator for multiplicity bins -- ( " < 80%)
110         TH1F*           fTwoPartCorrEvSq80;     // Two-part. corr. squared for mult. bins -- ( " < 80%)
111         TH1F*           fTwoPartCorrEv801;      // Two-particle correlator for multiplicity bins (first bin divided in 4) -- ( " < 80%)
112         TH1F*           fTwoPartCorrEvSq801;    // Two-part. corr. squared for mult. bins (first bin divided in 4) -- ( " < 80%)
113         TH1F*           fTwoPartCorrEv810;      // Two-particle correlator for multiplicity bins (five bins in 0 < Nacc < 50) -- ( " < 80%)
114         TH1F*           fTwoPartCorrEvSq810;    // Two-part. corr. squared for mult. bins (five bins in 0 < Nacc < 50) -- ( " < 80%)
115         TH1F*           fTwoPartCorrEvCent;     // Two-particle correlator for centrality bins
116         TH1F*           fTwoPartCorrEvCentSq;   // Two-part. corr. squared for cent. bins
117
118     AliESDtrackCuts* fESDTrackCuts;     // Esd track cuts
119     Float_t          fMaxVertexZ;       // Maximum value for Vertex Z position
120     Float_t          fMaxVertexZDiff1;  // Maximum value for Vertex Z difference TPC - global
121     Int_t            fNContributors;    // Minimum contributors to the vertex
122     Int_t            fUseCentrality;    // Use centrality (0=off, 1=VZERO, 2=SPD(not yet implemented))
123     Bool_t           fMC;               // Check for MC
124     Int_t            fMCType;           // Set MC type: ESD, MC truth (generator level), mod. MC truth
125     Bool_t           fMCAMPT;           // Set MC = AMPT or other
126
127     AliAnalysisTaskPtFlucPbPb(const AliAnalysisTaskPtFlucPbPb&); // not implemented
128     AliAnalysisTaskPtFlucPbPb& operator=(const AliAnalysisTaskPtFlucPbPb&); // not implemented
129
130     ClassDef(AliAnalysisTaskPtFlucPbPb, 1);
131
132 };
133
134 #endif