]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGLF/totEt/AliAnalysisHadEtReconstructed.h
Exploring task to collect some informations on nuclei in pp
[u/mrichter/AliRoot.git] / PWGLF / totEt / AliAnalysisHadEtReconstructed.h
CommitLineData
cf6522d1 1//_________________________________________________________________________
2// Utility Class for transverse energy studies, charged hadrons
3// Base class for ESD analysis
4// - reconstruction output
5//
6//Created by Christine Nattrass, Rebecca Scott, Irakli Martashvili
641e1e0c 7//University of Tennessee at Knoxville
cf6522d1 8//_________________________________________________________________________
641e1e0c 9#ifndef ALIANALYSISHADETRECONSTRUCTED_H
10#define ALIANALYSISHADETRECONSTRUCTED_H
11
12#include "AliAnalysisHadEt.h"
2c0680a5 13//#include "PWG0/AliPWG0Helper.h"
641e1e0c 14
15class AliVParticle;
3ce6b879 16class AliAnalysisHadEtCorrections;
17class TString;
d6214a64 18class AliESDtrack;
641e1e0c 19
20class AliAnalysisHadEtReconstructed : public AliAnalysisHadEt
21{
22
23public:
24
25 AliAnalysisHadEtReconstructed();
cf6522d1 26 virtual ~AliAnalysisHadEtReconstructed();
641e1e0c 27
2c0680a5 28 virtual Int_t AnalyseEvent(AliVEvent* event, Int_t eventtype);
29 virtual Int_t AnalyseEvent(AliVEvent* event){return AnalyseEvent(event,-1);}
641e1e0c 30
464aa50c 31 //the "Corrected" variables are only corrected for the track-by-track fCorrections
132872f7 32 Float_t GetCorrectedPiKPEtFullAcceptanceTPC() const {return fCorrPiKPEtFullAcceptanceTPC*fCorrectedHadEtFullAcceptanceTPC;}
33 Float_t GetCorrectedPiKPEtFullAcceptanceITS() const {return fCorrPiKPEtFullAcceptanceITS*(fCorrectedHadEtFullAcceptanceTPC+fCorrectedHadEtFullAcceptanceITS);}
464aa50c 34 Float_t GetCorrectedHadEtFullAcceptanceTPC() const {return fCorrHadEtFullAcceptanceTPC*fCorrectedHadEtFullAcceptanceTPC;}
35 Float_t GetCorrectedHadEtFullAcceptanceITS() const {return fCorrHadEtFullAcceptanceITS*(fCorrectedHadEtFullAcceptanceTPC+fCorrectedHadEtFullAcceptanceITS);}
3d1099f3 36 Float_t GetCorrectedHadEtFullAcceptanceTPCAssumingPion() const {return fCorrHadEtFullAcceptanceTPC*fCorrectedHadEtFullAcceptanceTPCAssumingPion;}
37 Float_t GetCorrectedHadEtFullAcceptanceITSAssumingPion() const {return fCorrHadEtFullAcceptanceITS*(fCorrectedHadEtFullAcceptanceTPCAssumingPion+fCorrectedHadEtFullAcceptanceITSAssumingPion);}
38 Float_t GetCorrectedHadEtFullAcceptanceTPCAssumingProton() const {return fCorrHadEtFullAcceptanceTPC*fCorrectedHadEtFullAcceptanceTPCAssumingProton;}
39 Float_t GetCorrectedHadEtFullAcceptanceITSAssumingProton() const {return fCorrHadEtFullAcceptanceITS*(fCorrectedHadEtFullAcceptanceTPCAssumingProton+fCorrectedHadEtFullAcceptanceITSAssumingProton);}
40 Float_t GetCorrectedHadEtFullAcceptanceTPCAssumingKaon() const {return fCorrHadEtFullAcceptanceTPC*fCorrectedHadEtFullAcceptanceTPCAssumingKaon;}
41 Float_t GetCorrectedHadEtFullAcceptanceITSAssumingKaon() const {return fCorrHadEtFullAcceptanceITS*(fCorrectedHadEtFullAcceptanceTPCAssumingKaon+fCorrectedHadEtFullAcceptanceITSAssumingKaon);}
464aa50c 42 Float_t GetCorrectedHadEtEMCALAcceptanceTPC() const{return fCorrHadEtEMCALAcceptanceTPC*fCorrectedHadEtEMCALAcceptanceTPC;}
43 Float_t GetCorrectedHadEtEMCALAcceptanceITS() const {return fCorrHadEtEMCALAcceptanceITS*(fCorrectedHadEtEMCALAcceptanceTPC+fCorrectedHadEtEMCALAcceptanceITS);}
44 Float_t GetCorrectedHadEtPHOSAcceptanceTPC() const {return fCorrHadEtPHOSAcceptanceTPC*fCorrectedHadEtPHOSAcceptanceTPC;}
45 Float_t GetCorrectedHadEtPHOSAcceptanceITS() const {return fCorrHadEtPHOSAcceptanceITS*(fCorrectedHadEtPHOSAcceptanceTPC+fCorrectedHadEtPHOSAcceptanceITS);}
46 Float_t GetCorrectedTotEtFullAcceptanceTPC() const {return fCorrTotEtFullAcceptanceTPC*fCorrectedHadEtFullAcceptanceTPC;}
47 Float_t GetCorrectedTotEtFullAcceptanceITS() const {return fCorrTotEtFullAcceptanceITS*(fCorrectedHadEtFullAcceptanceTPC+fCorrectedHadEtFullAcceptanceITS);}
48 Float_t GetCorrectedTotEtEMCALAcceptanceTPC() const {return fCorrTotEtEMCALAcceptanceTPC*fCorrectedHadEtEMCALAcceptanceTPC;}
49 Float_t GetCorrectedTotEtEMCALAcceptanceITS() const {return fCorrTotEtEMCALAcceptanceITS*(fCorrectedHadEtEMCALAcceptanceTPC+fCorrectedHadEtEMCALAcceptanceITS);}
50 Float_t GetCorrectedTotEtPHOSAcceptanceTPC() const {return fCorrTotEtPHOSAcceptanceTPC*fCorrectedHadEtPHOSAcceptanceTPC;}
51 Float_t GetCorrectedTotEtPHOSAcceptanceITS() const {return fCorrTotEtPHOSAcceptanceTPC*(fCorrectedHadEtPHOSAcceptanceTPC+fCorrectedHadEtPHOSAcceptanceITS);}
7dd7e911 52 Float_t GetRawEtFullAcceptanceTPC() const {return fRawEtFullAcceptanceTPC;}//completely raw, no efficiency correction
464aa50c 53 Float_t GetRawEtFullAcceptanceITS() const {return fRawEtFullAcceptanceITS+fRawEtFullAcceptanceTPC;}
54 Float_t GetRawEtEMCALAcceptanceTPC() const {return fRawEtEMCALAcceptanceTPC;}
55 Float_t GetRawEtEMCALAcceptanceITS() const {return fRawEtEMCALAcceptanceITS+fRawEtEMCALAcceptanceTPC;}
56 Float_t GetRawEtPHOSAcceptanceTPC() const {return fRawEtPHOSAcceptanceTPC;}
57 Float_t GetRawEtPHOSAcceptanceITS()const {return fRawEtPHOSAcceptanceITS+fRawEtPHOSAcceptanceTPC;}
132872f7 58 Float_t GetCorrectedPiKPEtFullAcceptanceTPCNoPID() const {return fCorrPiKPEtFullAcceptanceTPC*fCorrectedHadEtFullAcceptanceTPCNoPID;}
59 Float_t GetCorrectedPiKPEtFullAcceptanceITSNoPID() const {return fCorrPiKPEtFullAcceptanceITS*(fCorrectedHadEtFullAcceptanceTPCNoPID+fCorrectedHadEtFullAcceptanceITSNoPID);}
464aa50c 60 Float_t GetCorrectedHadEtFullAcceptanceTPCNoPID() const {return fCorrHadEtFullAcceptanceTPC*fCorrectedHadEtFullAcceptanceTPCNoPID;}
61 Float_t GetCorrectedHadEtFullAcceptanceITSNoPID() const {return fCorrHadEtFullAcceptanceITS*(fCorrectedHadEtFullAcceptanceTPCNoPID+fCorrectedHadEtFullAcceptanceITSNoPID);}
62 Float_t GetCorrectedHadEtEMCALAcceptanceTPCNoPID() const {return fCorrHadEtEMCALAcceptanceTPC*fCorrectedHadEtEMCALAcceptanceTPCNoPID;}
63 Float_t GetCorrectedHadEtEMCALAcceptanceITSNoPID() const {return fCorrHadEtEMCALAcceptanceITS*(fCorrectedHadEtEMCALAcceptanceTPCNoPID+fCorrectedHadEtEMCALAcceptanceITSNoPID);}
64 Float_t GetCorrectedHadEtPHOSAcceptanceTPCNoPID() const {return fCorrHadEtPHOSAcceptanceTPC*fCorrectedHadEtPHOSAcceptanceTPCNoPID;}
65 Float_t GetCorrectedHadEtPHOSAcceptanceITSNoPID() const {return fCorrHadEtPHOSAcceptanceITS*(fCorrectedHadEtPHOSAcceptanceTPCNoPID+fCorrectedHadEtPHOSAcceptanceITSNoPID);}
66 Float_t GetCorrectedTotEtFullAcceptanceTPCNoPID() const {return fCorrTotEtFullAcceptanceTPC*fCorrectedHadEtFullAcceptanceTPCNoPID;}
67 Float_t GetCorrectedTotEtFullAcceptanceITSNoPID() const {return fCorrTotEtFullAcceptanceITS*(fCorrectedHadEtFullAcceptanceTPCNoPID+fCorrectedHadEtFullAcceptanceITSNoPID);}
68 Float_t GetCorrectedTotEtEMCALAcceptanceTPCNoPID() const {return fCorrTotEtEMCALAcceptanceTPC*fCorrectedHadEtEMCALAcceptanceTPCNoPID;}
69 Float_t GetCorrectedTotEtEMCALAcceptanceITSNoPID() const {return fCorrTotEtEMCALAcceptanceITS*(fCorrectedHadEtEMCALAcceptanceTPCNoPID+fCorrectedHadEtEMCALAcceptanceITSNoPID);}
70 Float_t GetCorrectedTotEtPHOSAcceptanceTPCNoPID() const {return fCorrTotEtPHOSAcceptanceTPC*fCorrectedHadEtPHOSAcceptanceTPCNoPID;}
71 Float_t GetCorrectedTotEtPHOSAcceptanceITSNoPID() const {return fCorrTotEtPHOSAcceptanceITS*(fCorrectedHadEtPHOSAcceptanceTPCNoPID+fCorrectedHadEtPHOSAcceptanceITSNoPID);}
72 Float_t GetRawEtFullAcceptanceTPCNoPID() const {return fRawEtFullAcceptanceTPCNoPID;}
73 Float_t GetRawEtFullAcceptanceITSNoPID() const {return fRawEtFullAcceptanceITSNoPID+fRawEtFullAcceptanceTPCNoPID;}
74 Float_t GetRawEtEMCALAcceptanceTPCNoPID() const {return fRawEtEMCALAcceptanceTPCNoPID;}
75 Float_t GetRawEtEMCALAcceptanceITSNoPID() const {return fRawEtEMCALAcceptanceITSNoPID+fRawEtEMCALAcceptanceTPCNoPID;}
76 Float_t GetRawEtPHOSAcceptanceTPCNoPID() const {return fRawEtPHOSAcceptanceTPCNoPID;}
77 Float_t GetRawEtPHOSAcceptanceITSNoPID() const {return fRawEtPHOSAcceptanceITSNoPID+fRawEtPHOSAcceptanceTPCNoPID;}
132872f7 78/* Float_t GetCorrectedPiKPEtFullAcceptanceTPC() const {return fCorrectedHadEtFullAcceptanceTPC;} */
79/* Float_t GetCorrectedPiKPEtFullAcceptanceITS() const {return fCorrectedHadEtFullAcceptanceITS+fCorrectedHadEtFullAcceptanceTPC;} */
80/* Float_t GetCorrectedPiKPEtFullAcceptanceTPCNoPID() const {return fCorrectedHadEtFullAcceptanceTPCNoPID;} */
81/* Float_t GetCorrectedPiKPEtFullAcceptanceITSNoPID() const {return fCorrectedHadEtFullAcceptanceITSNoPID+fCorrectedHadEtFullAcceptanceTPCNoPID;} */
964c8159 82 void SetCorrections(AliAnalysisHadEtCorrections *corr){fCorrections = corr;}
d35312c9 83 void DoTriggerChecks(){kDoTriggerChecks=kTRUE;}
84 void DoTriggerChecksOnly(){kDoTriggerChecks=kTRUE;}
85 void SetIsOfflineV0AND(Bool_t val){kIsOfflineV0AND = val;}
49b25059 86 AliAnalysisHadEtCorrections *GetCorrections(){return fCorrections;}
d6214a64 87
3ce6b879 88 void CreateHistograms();
4b40b2b1 89 virtual void Init();
641e1e0c 90
91protected:
92
d6214a64 93 Bool_t CheckGoodVertex(AliVParticle *track);
4d8d4e4d 94 AliAnalysisHadEtCorrections *fCorrections;//corrections needed for hadronic et
3ce6b879 95
96 TString fConfigFile; // the name of the ConfigFile
641e1e0c 97 //virtual bool TrackHitsCalorimeter(AliVParticle *track, Double_t magField) = 0;
16abb579 98
d6214a64 99 //correction factors
100 Float_t fCorrTotEtFullAcceptanceTPC;//get the correction for total et for full acceptance, pt>0.15 GeV/c
101 Float_t fCorrTotEtFullAcceptanceITS;//get the correction for total et for full acceptance, pt>0.10 GeV/c
102 Float_t fCorrHadEtFullAcceptanceTPC;//get the correction for hadronic et for full acceptance, pt>0.15 GeV/c
103 Float_t fCorrHadEtFullAcceptanceITS;//get the correction for hadronic et for full acceptance, pt>0.10 GeV/c
132872f7 104 Float_t fCorrPiKPEtFullAcceptanceTPC;//get the correction for hadronic et for full acceptance, pt>0.15 GeV/c
105 Float_t fCorrPiKPEtFullAcceptanceITS;//get the correction for hadronic et for full acceptance, pt>0.10 GeV/c
d6214a64 106 Float_t fCorrTotEtEMCALAcceptanceTPC;//analogous to above for EMCal acceptance
107 Float_t fCorrTotEtEMCALAcceptanceITS;//analogous to above for EMCal acceptance
108 Float_t fCorrHadEtEMCALAcceptanceTPC;//analogous to above for EMCal acceptance
109 Float_t fCorrHadEtEMCALAcceptanceITS;//analogous to above for EMCal acceptance
110 Float_t fCorrTotEtPHOSAcceptanceTPC;//analogous to above for PHOS acceptance
111 Float_t fCorrTotEtPHOSAcceptanceITS;//analogous to above for PHOS acceptance
112 Float_t fCorrHadEtPHOSAcceptanceTPC;//analogous to above for PHOS acceptance
113 Float_t fCorrHadEtPHOSAcceptanceITS;//analogous to above for PHOS acceptance
114 //Et with various parameters...
115 Float_t fCorrectedHadEtFullAcceptanceTPCNoPID;//get the corrected hadronic et for full acceptance, pt>0.15 GeV/c
116 Float_t fCorrectedHadEtFullAcceptanceITSNoPID;//get the corrected hadronic et for full acceptance, pt>0.10 GeV/c
117 Float_t fCorrectedHadEtEMCALAcceptanceTPCNoPID;//analogous to above for EMCal acceptance
118 Float_t fCorrectedHadEtEMCALAcceptanceITSNoPID;//analogous to above for EMCal acceptance
119 Float_t fCorrectedHadEtPHOSAcceptanceTPCNoPID;//analogous to above for PHOS acceptance
120 Float_t fCorrectedHadEtPHOSAcceptanceITSNoPID;//analogous to above for PHOS acceptance
121 Float_t fCorrectedHadEtFullAcceptanceTPC;//get the corrected hadronic et for full acceptance, pt>0.15 GeV/c
122 Float_t fCorrectedHadEtFullAcceptanceITS;//get the corrected hadronic et for full acceptance, pt>0.10 GeV/c
3d1099f3 123 Float_t fCorrectedHadEtFullAcceptanceTPCAssumingPion;//get the corrected hadronic et for full acceptance, pt>0.15 GeV/c
124 Float_t fCorrectedHadEtFullAcceptanceITSAssumingPion;//get the corrected hadronic et for full acceptance, pt>0.10 GeV/c
125 Float_t fCorrectedHadEtFullAcceptanceTPCAssumingProton;//get the corrected hadronic et for full acceptance, pt>0.15 GeV/c
126 Float_t fCorrectedHadEtFullAcceptanceITSAssumingProton;//get the corrected hadronic et for full acceptance, pt>0.10 GeV/c
127 Float_t fCorrectedHadEtFullAcceptanceTPCAssumingKaon;//get the corrected hadronic et for full acceptance, pt>0.15 GeV/c
128 Float_t fCorrectedHadEtFullAcceptanceITSAssumingKaon;//get the corrected hadronic et for full acceptance, pt>0.10 GeV/c
d6214a64 129 Float_t fCorrectedHadEtEMCALAcceptanceTPC;//analogous to above for EMCal acceptance
130 Float_t fCorrectedHadEtEMCALAcceptanceITS;//analogous to above for EMCal acceptance
131 Float_t fCorrectedHadEtPHOSAcceptanceTPC;//analogous to above for PHOS acceptance
132 Float_t fCorrectedHadEtPHOSAcceptanceITS;//analogous to above for PHOS acceptance
133 Float_t fRawEtFullAcceptanceTPC;//uncorrected Et for full acceptance, pT > 0.15 GeV/c
134 Float_t fRawEtFullAcceptanceITS;//uncorrected Et for full acceptance, pT > 0.10 GeV/c
135 Float_t fRawEtEMCALAcceptanceTPC;//uncorrected Et for EMCal acceptance, pT > 0.15 GeV/c
136 Float_t fRawEtEMCALAcceptanceITS;//uncorrected Et for EMCal acceptance, pT > 0.10 GeV/c
137 Float_t fRawEtPHOSAcceptanceTPC;//uncorrected Et for PHOS acceptance, pT > 0.15 GeV/c
138 Float_t fRawEtPHOSAcceptanceITS;//uncorrected Et for PHOS acceptance, pT > 0.10 GeV/c
139 Float_t fRawEtFullAcceptanceTPCNoPID;//uncorrected Et for full acceptance, pT > 0.15 GeV/c
140 Float_t fRawEtFullAcceptanceITSNoPID;//uncorrected Et for full acceptance, pT > 0.10 GeV/c
141 Float_t fRawEtEMCALAcceptanceTPCNoPID;//uncorrected Et for EMCal acceptance, pT > 0.15 GeV/c
142 Float_t fRawEtEMCALAcceptanceITSNoPID;//uncorrected Et for EMCal acceptance, pT > 0.10 GeV/c
143 Float_t fRawEtPHOSAcceptanceTPCNoPID;//uncorrected Et for PHOS acceptance, pT > 0.15 GeV/c
144 Float_t fRawEtPHOSAcceptanceITSNoPID;//uncorrected Et for PHOS acceptance, pT > 0.10 GeV/c
3ce6b879 145
d35312c9 146 Bool_t kIsOfflineV0AND;//Boolean to keep track of whether or not this matches the offline trigger
147 Bool_t kDoTriggerChecks;//Boolean to keep track of whether or not I want to let the physics selection do the work
148 Bool_t kDoTriggerChecksOnly;//Boolean to keep track of whether or not I want to let the physics selection do the work
3ce6b879 149
150 private:
151 //Declare it private to avoid compilation warning
152 AliAnalysisHadEtReconstructed & operator = (const AliAnalysisHadEtReconstructed & g) ;//cpy assignment
153 AliAnalysisHadEtReconstructed(const AliAnalysisHadEtReconstructed & g) ; // cpy ctor
154
3d1099f3 155 void AddEt(Float_t rawEt, Float_t rawEtNoPID, Float_t corrEt, Float_t corrEtPion, Float_t corrEtProton, Float_t corrEtKaon, Float_t corrEtNoPID, Float_t pt, Bool_t IsTPC, Bool_t InPHOS, Bool_t InEMCAL);
d6214a64 156 Bool_t IsInPHOS(AliESDtrack *track);
157 Bool_t IsInEMCAL(AliESDtrack *track);
3ce6b879 158
d6214a64 159 void ResetEventValues();
16abb579 160 ClassDef(AliAnalysisHadEtReconstructed, 1);
641e1e0c 161};
162
163#endif // ALIANALYSISHADETRECONSTRUCTED_H