]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGLF/totEt/AliAnalysisEtReconstructed.h
Cleaning up streamers
[u/mrichter/AliRoot.git] / PWGLF / totEt / AliAnalysisEtReconstructed.h
CommitLineData
2fbf38ac 1#ifndef ALIANALYSISETRECONSTRUCTED_H
2#define ALIANALYSISETRECONSTRUCTED_H
f61cec2f 3//_________________________________________________________________________
cf6522d1 4// Utility Class for transverse energy studies
5// Base class for ESD analysis
6// - reconstruction output
7//
8//*-- Authors: Oystein Djuvsland (Bergen), David Silvermyr (ORNL)
9//_________________________________________________________________________
2fbf38ac 10
11#include "AliAnalysisEt.h"
4d376d01 12class TH2F;
09fcb185 13class TH3F;
4d376d01 14class TH2D;
ef647350 15class TH2I;
2fbf38ac 16class AliVParticle;
ba136eb4 17class AliESDEvent;
964c8159 18class AliAnalysisHadEtCorrections;
2fbf38ac 19
20class AliAnalysisEtReconstructed : public AliAnalysisEt
21{
22
23public:
ef647350 24
2fbf38ac 25 AliAnalysisEtReconstructed();
cf6522d1 26 virtual ~AliAnalysisEtReconstructed();
27
2fbf38ac 28 virtual Int_t AnalyseEvent(AliVEvent* event);
29
30 virtual void Init();
87efb15c 31
32 /** Fill the objects you want to output, classes which add new histograms should overload this. */
33 virtual void FillOutputList(TList *list);
ef647350 34 void SetCorrections(AliAnalysisHadEtCorrections *corr) {
35 fCorrections = corr;
36 }
87efb15c 37
38 /** Create the histograms, must be overloaded if you want to add your own */
39 virtual void CreateHistograms();
fb116385 40
41 Float_t GetNumberOfChargedHadronsMatched(){return nChargedHadronsMeasured;}
42 Float_t GetTotalNumberOfChargedHadrons(){return nChargedHadronsTotal;}
2fbf38ac 43
ef647350 44 void SetEMinCorrection(const Double_t factor) { fEMinCorrection = factor; }
45
2fbf38ac 46protected:
47
48 bool CheckGoodVertex(AliVParticle *track);
49 virtual bool TrackHitsCalorimeter(AliVParticle *track, Double_t magField);
964c8159 50
5881f036 51 virtual Double_t GetCorrectionModification(const AliESDCaloCluster& cluster,Int_t nonLinCorr, Int_t effCorr, Int_t cent);//nonLinCorr 0 = nominal 1 = high -1 = low, effCorr 0 = nominal 1 = high -1 = low
d3ce32b8 52
7d0c8fcf 53 AliAnalysisHadEtCorrections *fCorrections;//!//corrections needed for hadronic et
2fbf38ac 54
87efb15c 55 Double_t fPidCut; // cut on the pid probability
fb116385 56 Float_t nChargedHadronsMeasured;
57 Float_t nChargedHadronsTotal;
ef647350 58
7d0c8fcf 59 TH2F *fHistChargedPionEnergyDeposit;//! /** Energy deposited in calorimeter by charged pions */
60 TH2F *fHistProtonEnergyDeposit;//! /** Energy deposited in calorimeter by protons */
61 TH2F *fHistAntiProtonEnergyDeposit;//! /** Energy deposited in calorimeter by anti-protons */
62 TH2F *fHistChargedKaonEnergyDeposit;//! /** Energy deposited in calorimeter by charged kaons */
63 TH2F *fHistMuonEnergyDeposit;//! /** Energy deposited in calorimeter by muons */
e9da35da 64
7d0c8fcf 65 TH1F *fHistRemovedEnergy;//! // removed energy
ef647350 66
3825c7d6 67 Double_t fGeomCorrection; // geometry correction
68 Double_t fEMinCorrection; // Emin correction
87efb15c 69
ef647350 70 Double_t fRecEffCorrection; // Eff correction
ef647350 71
7d0c8fcf 72 TH2D *fClusterPositionAccepted;//! // Position of clusters
73 TH2D *fClusterPositionAll;//! // Position of clusters
74 TH2D *fClusterPositionAcceptedEnergy;//! // Position of clusters
75 TH2D *fClusterPositionAllEnergy;//! // Position of clusters
76 TH1F *fClusterEnergy;//! // Distribution of cluster energies
77 TH2F *fClusterEnergyCent;//! // Distribution of cluster energies vs centrality bin
78 TH2F *fClusterEnergyCentMatched;//! // Distribution of cluster energies vs centrality bin
79 TH2F *fClusterEnergyCentNotMatched;//! // Distribution of cluster energies vs centrality bin
80 TH1F *fClusterEt;//! // Distribution of cluster energies
87efb15c 81
7d0c8fcf 82 TH2D *fHistChargedEnergyRemoved;//! // Charged energy removed
83 TH2D *fHistNeutralEnergyRemoved;//! // Neutral energy removed
84 TH2D *fHistGammaEnergyAdded;//! // gamma energy added
85
86 TH3F *fHistMatchedTracksEvspTvsCent;//! //For measuring hadron deposits
87 TH3F *fHistMatchedTracksEvspTvsCentEffCorr;//! //For measuring hadron deposits
88 TH3F *fHistMatchedTracksEvspTvsCentEffTMCorr;//! //For measuring hadron deposits
89 TH3F *fHistPeripheralMatchedTracksEvspTvsCentEffTMCorr;//! //For measuring hadron deposits - uses peripheral bins and different centralities' efficiences
90 TH3F *fHistMatchedTracksEvspTvsCentEffTMCorr500MeV;//! //For measuring hadron deposits
91 TH2F *fHistFoundHadronsvsCent;//! //For measuring hadron deposits
92 TH2F *fHistNotFoundHadronsvsCent;//! //For measuring hadron deposits
93 TH2F *fHistFoundHadronsEtvsCent;//! //For measuring hadron deposits
94 TH2F *fHistNotFoundHadronsEtvsCent;//! //For measuring hadron deposits
95 TH2F *fHistFoundHadronsvsCent500MeV;//! //For measuring hadron deposits
96 TH2F *fHistNotFoundHadronsvsCent500MeV;//! //For measuring hadron deposits
97 TH2F *fHistFoundHadronsEtvsCent500MeV;//! //For measuring hadron deposits
98 TH2F *fHistNotFoundHadronsEtvsCent500MeV;//! //For measuring hadron deposits
99 TH2D *fHistNominalRawEt;//!//Total ET from clusters with nominal reconstruction efficiency and nonlinearity correction vs centrality
100 TH2D *fHistNominalNonLinHighEt;//!//Total ET from clusters with nominal reconstruction efficiency and high bound of nonlinearity correction vs centrality
101 TH2D *fHistNominalNonLinLowEt;//!//Total ET from clusters with nominal reconstruction efficiency and low bound of nonlinearity correction vs centrality
102 TH2D *fHistNominalEffHighEt;//!//Total ET from clusters with high bound on reconstruction efficiency and nominal nonlinearity correction vs centrality
103 TH2D *fHistNominalEffLowEt;//!//Total ET from clusters with low bound on reconstruction efficiency and nominal nonlinearity correction vs centrality
104
105 TH2F *fHistTotRawEtEffCorr;//! // gamma efficiency applied
106 TH2F *fHistTotRawEt;//! //no gamma efficiency applied
107 TH2F *fHistTotRawEtEffCorr500MeV;//!//Total ET from clusters with nominal reconstruction efficiency and nonlinearity correction vs centrality
108 TH2F *fHistTotAllRawEt;//! // all clusters no reco eff
109 TH2F *fHistTotAllRawEtEffCorr;//! // all clusters reco eff applied
5881f036 110 Double_t ApplyModifiedCorrections(const AliESDCaloCluster& cluster,Int_t nonLinCorr, Int_t effCorr, Int_t cent);//nonLinCorr 0 = nominal 1 = high -1 = low, effCorr 0 = nominal 1 = high -1 = low
ef647350 111
7d0c8fcf 112 TH3F *fHistNClustersPhosVsEmcal;//! // all clusters no reco eff
113 TH2F *fHistClusterSizeVsCent;//! // all clusters no reco eff
114 TH2F *fHistMatchedClusterSizeVsCent;//! // all clusters no reco eff
115 TH2F *fHistTotAllRawEtVsTotalPt;//! // all clusters no reco eff
9a365626 116 //fHistTotAllRawEtVsTotalPtCent
7d0c8fcf 117 TH3F *fHistTotAllRawEtVsTotalPtVsCent;//! // all clusters no reco eff
118 TH3F *fHistTotMatchedRawEtVsTotalPtVsCent;//! // all clusters no reco eff
119 TH2F *fHistPIDProtonsTrackMatchedDepositedVsNch;//!
120 TH2F *fHistPIDAntiProtonsTrackMatchedDepositedVsNch;//!
121 TH2F *fHistPIDProtonsTrackMatchedDepositedVsNcl;//!
122 TH2F *fHistPIDAntiProtonsTrackMatchedDepositedVsNcl;//!
123 TH2F *fHistPiKPTrackMatchedDepositedVsNch;//!
124 TH2F *fHistPIDProtonsTrackMatchedDepositedVsNchNoEff;//!
125 TH2F *fHistPIDAntiProtonsTrackMatchedDepositedVsNchNoEff;//!
126 TH2F *fHistPIDProtonsTrackMatchedDepositedVsNclNoEff;//!
127 TH2F *fHistPIDAntiProtonsTrackMatchedDepositedVsNclNoEff;//!
128 TH2F *fHistPiKPTrackMatchedDepositedVsNchNoEff;//!
129 TH3F *fHistCentVsNchVsNclReco;//!
130
131 TH1F *fHistRawSignalReco;//!
132 TH1F *fHistEffCorrSignalReco;//!
133 TH3F *fHistRecoRCorrVsPtVsCent;//! // enter comment here
fb116385 134
ef647350 135private:
136
87efb15c 137 AliAnalysisEtReconstructed(const AliAnalysisEtReconstructed& g);
138 AliAnalysisEtReconstructed & operator=(const AliAnalysisEtReconstructed&);
ef647350 139
140
ba136eb4 141
16abb579 142 ClassDef(AliAnalysisEtReconstructed, 1);
2fbf38ac 143};
144
145#endif // ALIANALYSISETRECONSTRUCTED_H