AliPhysics  66e96a0 (66e96a0)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliAnalysisTaskCLQA.h
Go to the documentation of this file.
1 #ifndef ALIANALYSISTASKCLQA_H
2 #define ALIANALYSISTASKCLQA_H
3 
4 // $Id $
5 
6 class TClonesArray;
7 class TString;
8 class TH1;
9 class TH1F;
10 class TH2F;
11 class TH3F;
12 class TNtuple;
13 class TNtupleD;
14 class TTree;
15 
16 #include "AliAnalysisTaskEmcal.h"
17 
18 class AliNtupCumInfo;
19 class AliNtupZdcInfo;
20 
22  public:
24  AliAnalysisTaskCLQA(const char *name);
25  virtual ~AliAnalysisTaskCLQA();
26 
27  void SetCentCL1In(TH1F *h) { fCentCL1In = h; }
28  void SetCentV0AIn(TH1F *h) { fCentV0AIn = h; }
29  void SetCumParams(Double_t Mmin, Double_t ptmin, Double_t ptmax, Double_t etamin, Double_t etamax);
30  void SetDoCumulants(Bool_t b) { fDoCumulants = b; }
31  void SetDoMuonTracking(Bool_t b) { fDoMuonTracking = b; }
32  void SetDoTracking(Bool_t b) { fDoTracking = b; }
33  void SetDo2013VertexCut(Bool_t b) { fDo2013VertexCut = b; }
34 
36 
37  protected:
38  Bool_t FillHistograms();
39  Bool_t RetrieveEventObjects();
40  Bool_t Run();
41  void RunCumulants(Double_t Mmin, Double_t ptmin, Double_t ptmax, Double_t etamin, Double_t etamax);
42 
43  Bool_t fDo2013VertexCut; // if true then use 2013 pA vertex check (only if 2013 pPb run)
44  Bool_t fDoTracking; // if true run tracking analysis
45  Bool_t fDoMuonTracking; // if true run muon tracking analysis
46  Bool_t fDoCumulants; // if true run cumulant analysis
47  Bool_t fDoCumNtuple; // if true then save cumulant ntuple
48  Double_t fCumPtMin; // minimum pt for cumulants
49  Double_t fCumPtMax; // maximum pt for cumulants
50  Double_t fCumEtaMin; // minimum eta for cumulants
51  Double_t fCumEtaMax; // maximum eta for cumulants
52  Double_t fCumMmin; // minimum number of tracks for cumulants
53  Int_t fCumMbins; // number of bins for M
54  TH1F *fCentCL1In; // input for MC based CL1 centrality
55  TH1F *fCentV0AIn; // input for MC based V0A centrality
56  TTree *fNtupCum;
59  TH1 *fHists[1000];
60 
61  private:
62  Double_t DeltaPhi(Double_t phia, Double_t phib,
63  Double_t rangeMin = -TMath::Pi()/2,
64  Double_t rangeMax = 3*TMath::Pi()/2) const;
65  AliAnalysisTaskCLQA(const AliAnalysisTaskCLQA&); // not implemented
66  AliAnalysisTaskCLQA &operator=(const AliAnalysisTaskCLQA&); // not implemented
67 
68  ClassDef(AliAnalysisTaskCLQA, 6) // Constantin's Task
69 };
70 
72  public:
73  AliNtupCumInfo() : fTrig(0), fRun(0), fVz(0), fIsFEC(0), fIsVSel(0), fIsP(0),
74  fMall(0), fMall2(0), fPtMaxall(0), fMPtall(0),
75  fMPt2all(0), fMPtall2(0), fTSall(0),
76  fM(0), fQ2abs(0), fQ4abs(0), fQ42re(0), fCos2phi(0), fSin2phi(0),
77  fPtMax(0), fMPt(0), fMPt2(0), fTS(0), fMV0M(0),
78  fCl1(0), fV0M(0), fV0MEq(0), fV0A(0), fV0AEq(0), fZNA(0) {;}
79  virtual ~AliNtupCumInfo() {;}
80 
81  public:
82  UInt_t fTrig; // trigger selection
83  Int_t fRun; // run number
84  Double_t fVz; // vertex z
85  Bool_t fIsFEC; // is first event in chunk
86  Bool_t fIsVSel; // is vertex selected
87  Bool_t fIsP; // is SPD pileup
88  Int_t fMall; // multiplicity (tracks in eta range)
89  Int_t fMall2; // multiplicity (tracks above 1 GeV/c in eta range)
90  Double32_t fPtMaxall; //[0,0,16] maximum pT
91  Double32_t fMPtall; //[0,0,16] mean pT
92  Double32_t fMPt2all; //[0,0,16] mean pT2
93  Double32_t fMPtall2; //[0,0,16] mean pT truncated above 1 GeV/c
94  Double32_t fTSall; //[0,0,16] transverse sphericity
95  Int_t fM; // multiplicity (tracks in pT range)
96  Double32_t fQ2abs; // Q2 absolute
97  Double32_t fQ4abs; // Q4 absolute
98  Double32_t fQ42re; // Re(Q2Q*Q*)
99  Double32_t fCos2phi; // Cos(2phi)
100  Double32_t fSin2phi; // Sin(2phi)
101  Double32_t fPtMax; //[0,0,16] maximum pT
102  Double32_t fMPt; //[0,0,16] mean pT
103  Double32_t fMPt2; //[0,0,16] mean pT2
104  Double32_t fTS; //[0,0,16] transverse sphericity
105  Double32_t fMV0M; // V0M amplitude
106  Double32_t fCl1; //[0,0,16] class CL1
107  Double32_t fV0M; //[0,0,16] class V0M
108  Double32_t fV0MEq; //[0,0,16] class V0M Eq
109  Double32_t fV0A; //[0,0,16] class V0A
110  Double32_t fV0AEq; //[0,0,16] class V0A Eq
111  Double32_t fZNA; //[0,0,16] class ZNA
112 
113  ClassDef(AliNtupCumInfo,3) // Cumulant storage class
114 };
115 
117  public:
118  AliNtupZdcInfo() : fZna0(0), fZna1(0), fZna2(0), fZna3(0), fZna4(0) {;}
119  virtual ~AliNtupZdcInfo() {;}
120 
121  public:
122  Double32_t fZna0; // ZNA energy 0
123  Double32_t fZna1; // ZNA energy 1
124  Double32_t fZna2; // ZNA energy 2
125  Double32_t fZna3; // ZNA energy 3
126  Double32_t fZna4; // ZNA energy 4
127 
128  ClassDef(AliNtupZdcInfo,1) // ZDC storage class
129 };
130 #endif
virtual ~AliNtupCumInfo()
Base task in the EMCAL framework.
Double_t DeltaPhi(Double_t phia, Double_t phib, Double_t rangeMin=-TMath::Pi()/2, Double_t rangeMax=3 *TMath::Pi()/2) const
pointers to histograms
AliNtupZdcInfo * fNtupZdcInfo
object holding cumulant results
void SetDo2013VertexCut(Bool_t b)
const Double_t etamin
void SetDoTracking(Bool_t b)
void SetCumParams(Double_t Mmin, Double_t ptmin, Double_t ptmax, Double_t etamin, Double_t etamax)
const Double_t ptmax
void SetCentCL1In(TH1F *h)
AliAnalysisTaskCLQA & operator=(const AliAnalysisTaskCLQA &)
const Double_t ptmin
void SetCentV0AIn(TH1F *h)
TH1 * fHists[1000]
object holding zdc info
const Double_t etamax
void SetDoMuonTracking(Bool_t b)
AliNtupCumInfo * fNtupCumInfo
ntuple for cumulant analysis
void RunCumulants(Double_t Mmin, Double_t ptmin, Double_t ptmax, Double_t etamin, Double_t etamax)
void SetDoCumulants(Bool_t b)