]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/JetTasks/AliPWG4HighPtQATPConly.h
Possibility to copy the number of the TPC clusters from an AOD track to an ESD track...
[u/mrichter/AliRoot.git] / PWG4 / JetTasks / AliPWG4HighPtQATPConly.h
CommitLineData
fdceab34 1/**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 * *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
6 * *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
15
16//-----------------------------------------------------------------------
17// This class compares the global reconstruction with the TPConly reconstruction
18// Author : Marta Verweij - UU
19//-----------------------------------------------------------------------
20
21#ifndef ALIPWG4HIGHPTQATPCONLY_H
22#define ALIPWG4HIGHPTQATPCONLY_H
23
24#include "AliAnalysisTask.h"
25
26class TH1F;
27class TH2F;
28class TH3F;
29class TList;
30class AliESDEvent;
f4d11ac8 31class AliESDfriend;
32class AliESDfriendTrack;
33class AliMCEvent;
b5cc0c6d 34class AliVEvent;
fdceab34 35class AliESDtrackCuts;
65e8ecdd 36class AliESDtrack;
fdceab34 37
38class AliPWG4HighPtQATPConly: public AliAnalysisTask {
39
40 public:
41 AliPWG4HighPtQATPConly();
42 AliPWG4HighPtQATPConly(const char *name);
43 ~AliPWG4HighPtQATPConly() {;}
44
cc89bb69 45 virtual void LocalInit();
fdceab34 46 virtual void ConnectInputData(Option_t *);
47 virtual void CreateOutputObjects();
48 virtual void Exec(Option_t *option);
65e8ecdd 49 Bool_t IsCosmic(const AliESDtrack* track1 = 0x0, Int_t trackNumber = 0, Double_t ptMin = 6.);
fdceab34 50 virtual void Terminate(Option_t *);
51
cc89bb69 52 void SetCutType(Int_t ctype) {fCutType = ctype;}
fdceab34 53 void SetCuts(AliESDtrackCuts* trackCuts) {fTrackCuts = trackCuts;}
54 void SetCutsITS(AliESDtrackCuts* trackCutsITS) {fTrackCutsITS = trackCutsITS;}
65e8ecdd 55 void SetMaxCosmicAngle(Double_t angle) {fMaxCosmicAngle = angle;}
fdceab34 56
cc89bb69 57 Int_t GetCutType() {return fCutType;}
58
fdceab34 59 protected:
60
61 private:
62
63 void InitHistPointers();
64 AliPWG4HighPtQATPConly(const AliPWG4HighPtQATPConly&);
65 AliPWG4HighPtQATPConly& operator=(const AliPWG4HighPtQATPConly&);
66
67 AliESDEvent *fESD; //! ESD object
f4d11ac8 68 AliESDfriend *fESDfriend; //! ESD friend object
69 AliMCEvent *fMC; //! MC event object
cc89bb69 70 Int_t fCutType; // Cut Type set in AddTask*
fdceab34 71 AliESDtrackCuts *fTrackCuts; // TrackCuts for global vs TPConly comparison
72 AliESDtrackCuts *fTrackCutsITS; // TrackCuts including ITSrefit
fdceab34 73
65e8ecdd 74 Double_t fMaxCosmicAngle; // Max deviation from pi (angle between two tracks) in case of cosmic candidate
75
b5cc0c6d 76 TH1F *fNEventAll; //! Event counter
77 TH1F *fNEventSel; //! Event counter: Selected events for analysis
fdceab34 78 TH1F *fPtAll; //! Pt spectrum all charged particles
79 TH1F *fPtSel; //! Pt spectrum all selected charged particles by fTrackCuts
80 TH2F *fPtAllminPtTPCvsPtAll; //! Momentum resolution (global vs TPConly)
9f54dd56 81 TH3F *fPtAllminPtTPCvsPtAllEtaPos; //! Momentum resolution (global vs TPConly) vs Eta for positive particles
82 TH3F *fPtAllminPtTPCvsPtAllEtaNeg; //! Momentum resolution (global vs TPConly) vs Eta for negative particles
fdceab34 83 TH3F *fPtAllminPtTPCvsPtAllNPointTPC; //! Momentum resolution vs NPointTPC
65e8ecdd 84 TH3F *fPtAllminPtTPCvsPtAllNPointTPCS; //! Momentum resolution vs NPointTPCShared/NPointTPC
fdceab34 85 TH3F *fPtAllminPtTPCvsPtAllDCAR; //! Momentum resolution vs DCAR
86 TH3F *fPtAllminPtTPCvsPtAllDCAZ; //! Momentum resolution vs DCAZ
87 TH3F *fPtAllminPtTPCvsPtAllPhi; //! Momentum resolution vs Phi
88 TH3F *fPtAllminPtTPCvsPtAllNPointITS; //! Momentum resolution vs NPointITS
89 TH3F *fPtAllminPtTPCvsPtAllNSigmaToVertex; //! Momentum resolution vs NSigmaToVertes
90 TH3F *fPtAllminPtTPCvsPtAllChi2C; //! Momentum resolution vs Chi2Constrained
91 TH3F *fPtAllminPtTPCvsPtAllRel1PtUncertainty; //! Momentum resolution vs relUncertainty1Pt
f4d11ac8 92 TH3F *fPtAllminPtTPCvsPtAllChi2PerNClusTPC; //! Momentum resolution vs Chi2PerNClusTPC
93 TH3F *fPtAllminPtTPCvsPtAllChi2PerNClusITS; //! Momentum resolution vs Chi2PerNClusITS
65e8ecdd 94
9c8dfcb5 95 TH3F *fPtAllminPtTPCvsNPointTPCPhi; //! Momentum resolution vs NPointTPC vs Phi
96 TH3F *fPtAllminPtTPCvsNPointITSPhi; //! Momentum resolution vs NPointITS vs Phi
97 TH3F *fPtAllminPtTPCvsRel1PtUncertaintyPhi; //! Momentum resolution vs Rel1PtUncertainty vs Phi
98
f4d11ac8 99 TH2F *fEtaPhiOutliers; //! Eta Phi for outliers in momentum resolution
65e8ecdd 100
f4d11ac8 101 TH1F *fPtSelITSouter; //! Pt at ITS outer wall for all selected charged particles by fTrackCuts
102 TH2F *fPtITSouterminPtTPCvsPtAll; //! Momentum resolution (global vs ITSouter-TPCinner)
9f54dd56 103 TH3F *fPtITSouterminPtTPCvsPtAllEtaPos; //! Momentum resolution (global vs ITSouter-TPCinner) vs Eta for positive particles
104 TH3F *fPtITSouterminPtTPCvsPtAllEtaNeg; //! Momentum resolution (global vs ITSouter-TPCinner) vs Eta for negative particles
f4d11ac8 105 TH3F *fPtITSouterminPtTPCvsPtAllNPointTPC; //! Momentum resolution vs NPointTPC
65e8ecdd 106 TH3F *fPtITSouterminPtTPCvsPtAllNPointTPCS; //! Momentum resolution vs NPointTPCS
f4d11ac8 107 TH3F *fPtITSouterminPtTPCvsPtAllDCAR; //! Momentum resolution vs DCAR
108 TH3F *fPtITSouterminPtTPCvsPtAllDCAZ; //! Momentum resolution vs DCAZ
109 TH3F *fPtITSouterminPtTPCvsPtAllPhi; //! Momentum resolution vs Phi
110 TH3F *fPtITSouterminPtTPCvsPtAllNPointITS; //! Momentum resolution vs NPointITS
111 TH3F *fPtITSouterminPtTPCvsPtAllNSigmaToVertex; //! Momentum resolution vs NSigmaToVertes
112 TH3F *fPtITSouterminPtTPCvsPtAllChi2C; //! Momentum resolution vs Chi2Constrained
113 TH3F *fPtITSouterminPtTPCvsPtAllRel1PtUncertainty; //! Momentum resolution vs relUncertainty1Pt
114 TH3F *fPtITSouterminPtTPCvsPtAllChi2PerNClusTPC; //! Momentum resolution vs Chi2PerNClusTPC
115 TH3F *fPtITSouterminPtTPCvsPtAllChi2PerNClusITS; //! Momentum resolution vs Chi2PerNClusITS
116
3adc85ec 117 TH2F *fPtITSouterminPtTPCvsPtAllITSLayer0; //! Track has at least 1st SPD layer
118 TH2F *fPtITSouterminPtTPCvsPtAllITSLayer1; //! Track has at least 2nd SPD layer and not 1st SPD
119 TH2F *fPtITSouterminPtTPCvsPtAllITSLayer2; //! Track has at least 1st SDD layer and not SPD layers
120 TH2F *fPtITSouterminPtTPCvsPtAllITSLayer3; //! Track has at least 1st SDD layer and not SPD layers and not 1st SDD
121 TH2F *fPtITSouterminPtTPCvsPtAllITSLayer4; //! Track has at least 1st SSD layer and not SPD or SDD layers
122 TH2F *fPtITSouterminPtTPCvsPtAllITSLayer5; //! Track has at least 1st SSD layer and not SPD or SDD layers or 1st SSD
123
124 TH2F *fPtITSouterminPtTPCvsPtAllNoSPD; //! Track has no signal in SPD layers
125 TH2F *fPtITSouterminPtTPCvsPtAllNoSDD; //! Track has no signal in SDD layers
126 TH2F *fPtITSouterminPtTPCvsPtAllNoSSD; //! Track has no signal in SSD layers
127
128 TH3F *fPtITSouterminPtTPCvsPtAllChi2PerNClusITSLayer0; //! Track has at least 1st SPD layer
129 TH3F *fPtITSouterminPtTPCvsPtAllChi2PerNClusITSLayer1; //! Track has at least 2nd SPD layer and not 1st SPD
130 TH3F *fPtITSouterminPtTPCvsPtAllChi2PerNClusITSLayer2; //! Track has at least 1st SDD layer and not SPD layers
131 TH3F *fPtITSouterminPtTPCvsPtAllChi2PerNClusITSLayer3; //! Track has at least 1st SDD layer and not SPD layers and not 1st SDD
132 TH3F *fPtITSouterminPtTPCvsPtAllChi2PerNClusITSLayer4; //! Track has at least 1st SSD layer and not SPD or SDD layers
133 TH3F *fPtITSouterminPtTPCvsPtAllChi2PerNClusITSLayer5; //! Track has at least 1st SSD layer and not SPD or SDD layers or 1st SSD
134
135 TH3F *fPtITSouterminPtTPCvsPtAllChi2PerNClusITSNoSPD; //! Track has no signal in SPD layers
136 TH3F *fPtITSouterminPtTPCvsPtAllChi2PerNClusITSNoSDD; //! Track has no signal in SDD layers
137 TH3F *fPtITSouterminPtTPCvsPtAllChi2PerNClusITSNoSSD; //! Track has no signal in SSD layers
fdceab34 138
139 TList *fHistList; //! List of Histograms
140
141 TH1F *fPtAllTPC; //! Pt spectrum all charged particles
142 TH1F *fPtSelTPC; //! Pt spectrum all selected charged particles by fTrackCuts
143 TH1F *fPtSelTPCITS; //! Pt spectrum all selected charged particles by fTrackCutsITS
144 TList *fHistListTPC; //! List of Histograms
145
146 TH1F *fPtSelITS; //! Pt spectrum all selected charged particles by fTrackCutsITS
147 TH2F *fPtITSminPtTPCvsPtITS; //! Momentum resolution (global with ITSrefit vs TPConly)
9f54dd56 148 TH3F *fPtITSminPtTPCvsPtITSEtaPos; //! Momentum resolution (global with ITSrefit vs TPConly) vs Eta for positive particles
149 TH3F *fPtITSminPtTPCvsPtITSEtaNeg; //! Momentum resolution (global with ITSrefit vs TPConly) vs Eta for negative particles
fdceab34 150 TH3F *fPtITSminPtTPCvsPtITSNPointTPC; //! Momentum resolution vs NPointTPC
65e8ecdd 151 TH3F *fPtITSminPtTPCvsPtITSNPointTPCS; //! Momentum resolution vs NPointTPCS
fdceab34 152 TH3F *fPtITSminPtTPCvsPtITSDCAR; //! Momentum resolution vs DCAR
153 TH3F *fPtITSminPtTPCvsPtITSDCAZ; //! Momentum resolution vs DCAZ
154 TH3F *fPtITSminPtTPCvsPtITSPhi; //! Momentum resolution vs Phi
155 TH3F *fPtITSminPtTPCvsPtITSNPointITS; //! Momentum resolution vs NPointITS
156 TH3F *fPtITSminPtTPCvsPtITSNSigmaToVertex; //! Momentum resolution vs NSigmaToVertex
157 TH3F *fPtITSminPtTPCvsPtITSChi2C; //! Momentum resolution vs Chi2Constrained
158 TH3F *fPtITSminPtTPCvsPtITSRel1PtUncertainty; //! Momentum resolution vs relUncertainty1Pt
f4d11ac8 159 TH3F *fPtITSminPtTPCvsPtITSChi2PerNClusTPC; //! Momentum resolution vs Chi2PerNClusTPC
9c8dfcb5 160 TH3F *fPtITSminPtTPCvsPtITSChi2PerNClusITS; //! Momentum resolution vs Chi2PerNClusITS
161
162 TH3F *fPtITSminPtTPCvsNPointTPCPhi; //! Momentum resolution vs NPointTPC vs Phi
163 TH3F *fPtITSminPtTPCvsNPointITSPhi; //! Momentum resolution vs NPointITS vs Phi
164 TH3F *fPtITSminPtTPCvsRel1PtUncertaintyPhi; //! Momentum resolution vs Rel1PtUncertainty vs Phi
f4d11ac8 165
f4d11ac8 166 TH3F *fPtRel1PtUncertaintyChi2PerClusTPC; //! Global Pt vs relUncertainty1Pt vs Chi2PerClusTPC
65e8ecdd 167 TH3F *fPtNPointTPCSChi2PerClusTPC; //! Global Pt vs NPointTPCShared/NPointTPC vs Chi2PerClusTPC
168 TH3F *fPtNPointTPCSRel1PtUncertainty; //! Global Pt vs NPointTPCShared/NPointTPC vs relUncertainty1Pt
3adc85ec 169 TH3F *fPtRel1PtUncertaintyChi2PerClusTPCSharedSel; //! Global Pt vs relUncertainty1Pt vs Chi2PerClusTPC for NPointTPCShared/NPointTPC>0.05
fdceab34 170
171 TList *fHistListITS; //! List of Histograms
172
cc89bb69 173 TH1F *fPtSignedCosmicCandidates; //! Cosmic Candidates
65e8ecdd 174 TH1F *fDeltaPtCosmicCandidates; //! Cosmic Candidates Delta Pt
cc89bb69 175 TH2F *fDeltaPhiSumEta; //! Cosmic Candidates Delta Phi vs Sum Eta
176 TH2F *fDCAZCosmicCandidates; //! Cosmic Candidates DCAZ track1 vs track2
177 TH2F *fDCARCosmicCandidates; //! Cosmic Candidates DCAR track1 vs track2
e5abcde9 178 TH1F *fTheta; //! Angle \theta between cosmic candidates in 3D space
add06ceb 179 TH1F *fThetaZoom; //! Angle between cosmic candidates in 3D space zoomed into back-to-back region
e5abcde9 180 TH3F *fThetaPt1Pt2; //! Angle theta vs Pt1 vs Pt2
181 TH3F *fDeltaPhiSumEtaPt1; //! Delta Phi vs Sum Eta vs Pt1
182 TH3F *fDeltaPhiSumEtaPt2; //! Delta Phi vs Sum Eta vs Pt2
183 TH3F *fThetaDCAZ1DCAZ2; //! Angle theta vs DCAZ1 vs DCAZ2
65e8ecdd 184
185 TList *fHistListCosmics; //! List of Histograms for cosmic candidates
186
fdceab34 187 ClassDef(AliPWG4HighPtQATPConly,1)
188
189};
190#endif