]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGLF/totEt/AliAnalysisEtReconstructed.h
enabling cross checks of em et
[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
964c8159 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
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 */
ce546038 63 TH2F *fHistMuonEnergyDeposit; /** Energy deposited in calorimeter by muons */
e9da35da 64
3825c7d6 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
43dd5a38 72 TH2D *fClusterPositionAccepted; // Position of clusters
73 TH2D *fClusterPositionAll; // Position of clusters
74 TH2D *fClusterPositionAcceptedEnergy; // Position of clusters
75 TH2D *fClusterPositionAllEnergy; // Position of clusters
fa8489d6 76 TH1F *fClusterEnergy; // Distribution of cluster energies
9a365626 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
fa8489d6 80 TH1F *fClusterEt; // Distribution of cluster energies
87efb15c 81
4d376d01 82 TH2D *fHistChargedEnergyRemoved; // Charged energy removed
83 TH2D *fHistNeutralEnergyRemoved; // Neutral energy removed
84 TH2D *fHistGammaEnergyAdded; // gamma energy added
09fcb185 85
ac610b08 86 TH3F *fHistMatchedTracksEvspTvsCent; //For measuring hadron deposits
87 TH3F *fHistMatchedTracksEvspTvsCentEffCorr; //For measuring hadron deposits
459e9c44 88 TH3F *fHistMatchedTracksEvspTvsCentEffTMCorr; //For measuring hadron deposits
5881f036 89 TH3F *fHistMatchedTracksEvspTvsCentEffTMCorr500MeV; //For measuring hadron deposits
6a152780 90 TH2F *fHistFoundHadronsvsCent; //For measuring hadron deposits
91 TH2F *fHistNotFoundHadronsvsCent; //For measuring hadron deposits
92 TH2F *fHistFoundHadronsEtvsCent; //For measuring hadron deposits
93 TH2F *fHistNotFoundHadronsEtvsCent; //For measuring hadron deposits
43dd5a38 94 TH2F *fHistFoundHadronsvsCent500MeV; //For measuring hadron deposits
95 TH2F *fHistNotFoundHadronsvsCent500MeV; //For measuring hadron deposits
96 TH2F *fHistFoundHadronsEtvsCent500MeV; //For measuring hadron deposits
97 TH2F *fHistNotFoundHadronsEtvsCent500MeV; //For measuring hadron deposits
d3ce32b8 98 TH2D *fHistNominalRawEt;//Total ET from clusters with nominal reconstruction efficiency and nonlinearity correction vs centrality
99 TH2D *fHistNominalNonLinHighEt;//Total ET from clusters with nominal reconstruction efficiency and high bound of nonlinearity correction vs centrality
100 TH2D *fHistNominalNonLinLowEt;//Total ET from clusters with nominal reconstruction efficiency and low bound of nonlinearity correction vs centrality
101 TH2D *fHistNominalEffHighEt;//Total ET from clusters with high bound on reconstruction efficiency and nominal nonlinearity correction vs centrality
102 TH2D *fHistNominalEffLowEt;//Total ET from clusters with low bound on reconstruction efficiency and nominal nonlinearity correction vs centrality
103
43dd5a38 104 TH2F *fHistTotRawEtEffCorr; // gamma efficiency applied
105 TH2F *fHistTotRawEt; //no gamma efficiency applied
106 TH2F *fHistTotRawEtEffCorr500MeV;//Total ET from clusters with nominal reconstruction efficiency and nonlinearity correction vs centrality
107 TH2F *fHistTotAllRawEt; // all clusters no reco eff
108 TH2F *fHistTotAllRawEtEffCorr; // all clusters reco eff applied
5881f036 109 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 110
9a365626 111 TH3F *fHistNClustersPhosVsEmcal; // all clusters no reco eff
112 TH2F *fHistClusterSizeVsCent; // all clusters no reco eff
113 TH2F *fHistMatchedClusterSizeVsCent; // all clusters no reco eff
114 TH2F *fHistTotAllRawEtVsTotalPt; // all clusters no reco eff
115 //fHistTotAllRawEtVsTotalPtCent
116 TH3F *fHistTotAllRawEtVsTotalPtVsCent; // all clusters no reco eff
117 TH3F *fHistTotMatchedRawEtVsTotalPtVsCent; // all clusters no reco eff
118 TH2F *fHistPIDProtonsTrackMatchedDepositedVsNch;
119 TH2F *fHistPIDAntiProtonsTrackMatchedDepositedVsNch;
0fcbed20 120 TH2F *fHistPIDProtonsTrackMatchedDepositedVsNcl;
121 TH2F *fHistPIDAntiProtonsTrackMatchedDepositedVsNcl;
9a365626 122 TH2F *fHistPiKPTrackMatchedDepositedVsNch;
fb116385 123 TH2F *fHistPIDProtonsTrackMatchedDepositedVsNchNoEff;
124 TH2F *fHistPIDAntiProtonsTrackMatchedDepositedVsNchNoEff;
125 TH2F *fHistPIDProtonsTrackMatchedDepositedVsNclNoEff;
126 TH2F *fHistPIDAntiProtonsTrackMatchedDepositedVsNclNoEff;
127 TH2F *fHistPiKPTrackMatchedDepositedVsNchNoEff;
9a365626 128 TH3F *fHistCentVsNchVsNclReco;
129
fb116385 130 TH1F *fHistRawSignalReco;
131 TH1F *fHistEffCorrSignalReco;
132
ef647350 133private:
134
87efb15c 135 AliAnalysisEtReconstructed(const AliAnalysisEtReconstructed& g);
136 AliAnalysisEtReconstructed & operator=(const AliAnalysisEtReconstructed&);
ef647350 137
138
ba136eb4 139
16abb579 140 ClassDef(AliAnalysisEtReconstructed, 1);
2fbf38ac 141};
142
143#endif // ALIANALYSISETRECONSTRUCTED_H