]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGLF/totEt/AliAnalysisEtReconstructed.h
adding centrality dimension to cluster energy histo
[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; }
3919b0d0 45 void MakeQATree(){fMakeQATree = kTRUE;}
ef647350 46
2fbf38ac 47protected:
48
49 bool CheckGoodVertex(AliVParticle *track);
50 virtual bool TrackHitsCalorimeter(AliVParticle *track, Double_t magField);
964c8159 51
5881f036 52 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 53
3919b0d0 54 TTree *fQATree; //! Tree for holding information about funny events in PHOS
55 Bool_t fMakeQATree;//boolean for whether or not to make it
56 Int_t fClusterMultiplicity;
57 Int_t fTrackMultiplicity;
58 Int_t fEventID;
59
7d0c8fcf 60 AliAnalysisHadEtCorrections *fCorrections;//!//corrections needed for hadronic et
2fbf38ac 61
87efb15c 62 Double_t fPidCut; // cut on the pid probability
fb116385 63 Float_t nChargedHadronsMeasured;
64 Float_t nChargedHadronsTotal;
ef647350 65
7d0c8fcf 66 TH2F *fHistChargedPionEnergyDeposit;//! /** Energy deposited in calorimeter by charged pions */
67 TH2F *fHistProtonEnergyDeposit;//! /** Energy deposited in calorimeter by protons */
68 TH2F *fHistAntiProtonEnergyDeposit;//! /** Energy deposited in calorimeter by anti-protons */
69 TH2F *fHistChargedKaonEnergyDeposit;//! /** Energy deposited in calorimeter by charged kaons */
70 TH2F *fHistMuonEnergyDeposit;//! /** Energy deposited in calorimeter by muons */
e9da35da 71
7d0c8fcf 72 TH1F *fHistRemovedEnergy;//! // removed energy
ef647350 73
3825c7d6 74 Double_t fGeomCorrection; // geometry correction
75 Double_t fEMinCorrection; // Emin correction
87efb15c 76
ef647350 77 Double_t fRecEffCorrection; // Eff correction
ef647350 78
7d0c8fcf 79 TH2D *fClusterPositionAccepted;//! // Position of clusters
80 TH2D *fClusterPositionAll;//! // Position of clusters
81 TH2D *fClusterPositionAcceptedEnergy;//! // Position of clusters
82 TH2D *fClusterPositionAllEnergy;//! // Position of clusters
83 TH1F *fClusterEnergy;//! // Distribution of cluster energies
84 TH2F *fClusterEnergyCent;//! // Distribution of cluster energies vs centrality bin
d386205e 85 TH2F *fClusterEnergyModifiedTrackMatchesCent;//! // Distribution of cluster energies vs centrality bin
7d0c8fcf 86 TH2F *fClusterEnergyCentMatched;//! // Distribution of cluster energies vs centrality bin
87 TH2F *fClusterEnergyCentNotMatched;//! // Distribution of cluster energies vs centrality bin
02c87d4e 88 TH2F *fClusterEt;//! // Distribution of cluster energies
87efb15c 89
7d0c8fcf 90 TH2D *fHistChargedEnergyRemoved;//! // Charged energy removed
91 TH2D *fHistNeutralEnergyRemoved;//! // Neutral energy removed
92 TH2D *fHistGammaEnergyAdded;//! // gamma energy added
93
94 TH3F *fHistMatchedTracksEvspTvsCent;//! //For measuring hadron deposits
95 TH3F *fHistMatchedTracksEvspTvsCentEffCorr;//! //For measuring hadron deposits
96 TH3F *fHistMatchedTracksEvspTvsCentEffTMCorr;//! //For measuring hadron deposits
97 TH3F *fHistPeripheralMatchedTracksEvspTvsCentEffTMCorr;//! //For measuring hadron deposits - uses peripheral bins and different centralities' efficiences
98 TH3F *fHistMatchedTracksEvspTvsCentEffTMCorr500MeV;//! //For measuring hadron deposits
99 TH2F *fHistFoundHadronsvsCent;//! //For measuring hadron deposits
100 TH2F *fHistNotFoundHadronsvsCent;//! //For measuring hadron deposits
101 TH2F *fHistFoundHadronsEtvsCent;//! //For measuring hadron deposits
102 TH2F *fHistNotFoundHadronsEtvsCent;//! //For measuring hadron deposits
103 TH2F *fHistFoundHadronsvsCent500MeV;//! //For measuring hadron deposits
104 TH2F *fHistNotFoundHadronsvsCent500MeV;//! //For measuring hadron deposits
105 TH2F *fHistFoundHadronsEtvsCent500MeV;//! //For measuring hadron deposits
106 TH2F *fHistNotFoundHadronsEtvsCent500MeV;//! //For measuring hadron deposits
107 TH2D *fHistNominalRawEt;//!//Total ET from clusters with nominal reconstruction efficiency and nonlinearity correction vs centrality
108 TH2D *fHistNominalNonLinHighEt;//!//Total ET from clusters with nominal reconstruction efficiency and high bound of nonlinearity correction vs centrality
109 TH2D *fHistNominalNonLinLowEt;//!//Total ET from clusters with nominal reconstruction efficiency and low bound of nonlinearity correction vs centrality
110 TH2D *fHistNominalEffHighEt;//!//Total ET from clusters with high bound on reconstruction efficiency and nominal nonlinearity correction vs centrality
111 TH2D *fHistNominalEffLowEt;//!//Total ET from clusters with low bound on reconstruction efficiency and nominal nonlinearity correction vs centrality
112
113 TH2F *fHistTotRawEtEffCorr;//! // gamma efficiency applied
114 TH2F *fHistTotRawEt;//! //no gamma efficiency applied
115 TH2F *fHistTotRawEtEffCorr500MeV;//!//Total ET from clusters with nominal reconstruction efficiency and nonlinearity correction vs centrality
116 TH2F *fHistTotAllRawEt;//! // all clusters no reco eff
117 TH2F *fHistTotAllRawEtEffCorr;//! // all clusters reco eff applied
5881f036 118 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 119
eefad699 120 TH2F *fHistNUsedClusters;//! // Distribution of cluster energies vs centrality bin
7d0c8fcf 121 TH3F *fHistNClustersPhosVsEmcal;//! // all clusters no reco eff
122 TH2F *fHistClusterSizeVsCent;//! // all clusters no reco eff
123 TH2F *fHistMatchedClusterSizeVsCent;//! // all clusters no reco eff
124 TH2F *fHistTotAllRawEtVsTotalPt;//! // all clusters no reco eff
9a365626 125 //fHistTotAllRawEtVsTotalPtCent
7d0c8fcf 126 TH3F *fHistTotAllRawEtVsTotalPtVsCent;//! // all clusters no reco eff
127 TH3F *fHistTotMatchedRawEtVsTotalPtVsCent;//! // all clusters no reco eff
128 TH2F *fHistPIDProtonsTrackMatchedDepositedVsNch;//!
129 TH2F *fHistPIDAntiProtonsTrackMatchedDepositedVsNch;//!
130 TH2F *fHistPIDProtonsTrackMatchedDepositedVsNcl;//!
131 TH2F *fHistPIDAntiProtonsTrackMatchedDepositedVsNcl;//!
132 TH2F *fHistPiKPTrackMatchedDepositedVsNch;//!
133 TH2F *fHistPIDProtonsTrackMatchedDepositedVsNchNoEff;//!
134 TH2F *fHistPIDAntiProtonsTrackMatchedDepositedVsNchNoEff;//!
135 TH2F *fHistPIDProtonsTrackMatchedDepositedVsNclNoEff;//!
136 TH2F *fHistPIDAntiProtonsTrackMatchedDepositedVsNclNoEff;//!
137 TH2F *fHistPiKPTrackMatchedDepositedVsNchNoEff;//!
138 TH3F *fHistCentVsNchVsNclReco;//!
139
140 TH1F *fHistRawSignalReco;//!
141 TH1F *fHistEffCorrSignalReco;//!
142 TH3F *fHistRecoRCorrVsPtVsCent;//! // enter comment here
fb116385 143
ef647350 144private:
145
87efb15c 146 AliAnalysisEtReconstructed(const AliAnalysisEtReconstructed& g);
147 AliAnalysisEtReconstructed & operator=(const AliAnalysisEtReconstructed&);
ef647350 148
149
ba136eb4 150
16abb579 151 ClassDef(AliAnalysisEtReconstructed, 1);
2fbf38ac 152};
153
154#endif // ALIANALYSISETRECONSTRUCTED_H