AliPhysics  7f1bdba (7f1bdba)
AliAnalysisTaskCLQA.h
Go to the documentation of this file.
1 #ifndef ALIANALYSISTASKCLQA_H
2 #define ALIANALYSISTASKCLQA_H
3 
4 class TClonesArray;
5 class TString;
6 class TH1;
7 class TH1F;
8 class TH2F;
9 class TH3F;
10 class TNtuple;
11 class TNtupleD;
12 class TTree;
13 
14 #include "AliAnalysisTaskEmcal.h"
15 #include "Cumulants.h"
16 
17 class AliNtupHetInfo;
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; }
30  void SetDoCumulants(Bool_t b, Bool_t bn=0) { fDoCumulants = b; fDoCumNtuple = bn; }
32  void SetDoTrackProp(Bool_t b) { fDoProp = b; }
33  void SetDoTracking(Bool_t b) { fDoTracking = b; }
35  void SetHetParams(Double_t Etmin);
36  void SetDoHet(Bool_t b) { fDoHet = b; }
37  void SetQCEtaGap(Double_t e) { fQC4EG = e; }
38 
40 
41  protected:
44  Bool_t Run();
45  void RunCumulants();
46  void RunCumulants(Double_t Mmin, Double_t ptmin, Double_t ptmax, Double_t etamin, Double_t etamax);
47  void RunHet(Double_t Etmin);
48 
49  Bool_t fDoVertexCut; // if true then use special (pileup) vertex checks
50  Bool_t fDoTracking; // if true run tracking analysis
51  Bool_t fDoMuonTracking; // if true run muon tracking analysis
52  Bool_t fDoCumulants; // if true run cumulant analysis
53  Bool_t fDoCumNtuple; // if true save cumulant ntuple
54  Bool_t fDoProp; // if true do track propagation
55  Bool_t fDoHet; // if true run het analysis
56  Double_t fCumPtMin; // minimum pt for cumulants
57  Double_t fCumPtMax; // maximum pt for cumulants
58  Double_t fCumEtaMin; // minimum eta for cumulants
59  Double_t fCumEtaMax; // maximum eta for cumulants
60  Double_t fCumMmin; // minimum number of tracks for cumulants
61  Int_t fCumMbins; // number of bins for M
62  Double_t fQC4EG; // value for etagap (+-fQC4EG)
63  Double_t fHetEtmin; // minimum et cut for het
64  TH1F *fCentCL1In; // input for MC based CL1 centrality
65  TH1F *fCentV0AIn; // input for MC based V0A centrality
71  TH1 *fHists[1000];
73  private:
75  Double_t rangeMin = -TMath::Pi()/2,
76  Double_t rangeMax = 3*TMath::Pi()/2) const;
77  AliAnalysisTaskCLQA(const AliAnalysisTaskCLQA&); // not implemented
78  AliAnalysisTaskCLQA &operator=(const AliAnalysisTaskCLQA&); // not implemented
79 
80  ClassDef(AliAnalysisTaskCLQA, 9) // Constantin's Task
81 };
82 
84  public:
85  AliNtupHetInfo() : fTrig(0), fRun(0), fVz(0), fIsFEC(0), fIsVSel(0), fIsP(0)
86  {;}
87  virtual ~AliNtupHetInfo() {;}
88 
89  public:
90  UInt_t fTrig; // trigger bits
91  Int_t fRun; // run number
92  Double32_t fVz; //[-32,32,8] vertex z
93  Bool_t fIsFEC; // is first event in chunk
94  Bool_t fIsVSel; // is vertex selected
95  Bool_t fIsP; // is SPD pileup
96 
97  ClassDef(AliNtupHetInfo,3) // High energy cluster info
98 };
99 
101  public:
102  AliNtupCumInfo() : fTrig(0), fRun(0), fVz(0), fIsFEC(0), fIsVSel(0), fIsP(0),
103  fMall(0), fMall2(0), fPtMaxall(0), fMPtall(0),
104  fMPt2all(0), fMPtall2(0), fTSall(0),
105  fM(0), fQ2abs(0), fQ4abs(0), fQ42re(0), fCos2phi(0), fSin2phi(0),
106  fPtMax(0), fMPt(0), fMPt2(0), fTS(0), fMV0M(0),
107  fCl1(0), fV0M(0), fV0MEq(0), fV0A(0), fV0AEq(0), fZNA(0) {;}
108  virtual ~AliNtupCumInfo() {;}
109 
110  public:
111  UInt_t fTrig; // trigger selection
112  Int_t fRun; // run number
113  Double_t fVz; // vertex z
114  Bool_t fIsFEC; // is first event in chunk
115  Bool_t fIsVSel; // is vertex selected
116  Bool_t fIsP; // is SPD pileup
117  Int_t fMall; // multiplicity (tracks in eta range)
118  Int_t fMall2; // multiplicity (tracks above 1 GeV/c in eta range)
119  Double32_t fPtMaxall; //[0,0,16] maximum pT
120  Double32_t fMPtall; //[0,0,16] mean pT
121  Double32_t fMPt2all; //[0,0,16] mean pT2
122  Double32_t fMPtall2; //[0,0,16] mean pT truncated above 1 GeV/c
123  Double32_t fTSall; //[0,0,16] transverse sphericity
124  Int_t fM; // multiplicity (tracks in pT range)
125  Double32_t fQ2abs; // Q2 absolute
126  Double32_t fQ4abs; // Q4 absolute
127  Double32_t fQ42re; // Re(Q2Q*Q*)
128  Double32_t fCos2phi; // Cos(2phi)
129  Double32_t fSin2phi; // Sin(2phi)
130  Double32_t fPtMax; //[0,0,16] maximum pT
131  Double32_t fMPt; //[0,0,16] mean pT
132  Double32_t fMPt2; //[0,0,16] mean pT2
133  Double32_t fTS; //[0,0,16] transverse sphericity
134  Double32_t fMV0M; // V0M amplitude
135  Double32_t fCl1; //[0,0,16] class CL1
136  Double32_t fV0M; //[0,0,16] class V0M
137  Double32_t fV0MEq; //[0,0,16] class V0M Eq
138  Double32_t fV0A; //[0,0,16] class V0A
139  Double32_t fV0AEq; //[0,0,16] class V0A Eq
140  Double32_t fZNA; //[0,0,16] class ZNA
141 
142  ClassDef(AliNtupCumInfo,3) // Cumulant storage class
143 };
144 
146  public:
147  AliNtupZdcInfo() : fZna0(0), fZna1(0), fZna2(0), fZna3(0), fZna4(0) {;}
148  virtual ~AliNtupZdcInfo() {;}
149 
150  public:
151  Double32_t fZna0; // ZNA energy 0
152  Double32_t fZna1; // ZNA energy 1
153  Double32_t fZna2; // ZNA energy 2
154  Double32_t fZna3; // ZNA energy 3
155  Double32_t fZna4; // ZNA energy 4
156 
157  ClassDef(AliNtupZdcInfo,1) // ZDC storage class
158 };
159 #endif
void RunHet(Double_t Etmin)
double Double_t
Definition: External.C:58
Definition: External.C:260
Definition: External.C:236
void SetHetParams(Double_t Etmin)
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
pointer to cumulant class
AliNtupZdcInfo * fNtupZdcInfo
object holding cumulant results
virtual ~AliNtupHetInfo()
void SetDoTrackProp(Bool_t b)
const Double_t etamin
void SetQCEtaGap(Double_t e)
void SetDoTracking(Bool_t b)
int Int_t
Definition: External.C:63
unsigned int UInt_t
Definition: External.C:33
void SetCumParams(Double_t Mmin, Double_t ptmin, Double_t ptmax, Double_t etamin, Double_t etamax)
Bool_t Run()
Run function. This is the core function of the analysis and contains the user code. Therefore users have to implement this function.
const Double_t ptmax
void SetCentCL1In(TH1F *h)
AliAnalysisTaskCLQA & operator=(const AliAnalysisTaskCLQA &)
const Double_t ptmin
void SetCentV0AIn(TH1F *h)
AliNtupHetInfo * fNtupHetInfo
ntuple for het analysis
Bool_t FillHistograms()
Function filling histograms.
Bool_t RetrieveEventObjects()
Retrieve common objects from event.
TH1 * fHists[1000]
object holding het info
const Double_t etamax
void SetDoVertexCut(Bool_t b)
Cumulants * fCum
pointers to histograms
void SetDoMuonTracking(Bool_t b)
bool Bool_t
Definition: External.C:53
AliNtupCumInfo * fNtupCumInfo
ntuple for cumulant analysis
void SetDoCumulants(Bool_t b, Bool_t bn=0)
Definition: External.C:196
TTree * fNtupHet
object holding zdc info