1 #ifndef ALIANALYSISETRECONSTRUCTED_H
2 #define ALIANALYSISETRECONSTRUCTED_H
3 //_________________________________________________________________________
4 // Utility Class for transverse energy studies
5 // Base class for ESD analysis
6 // - reconstruction output
8 //*-- Authors: Oystein Djuvsland (Bergen), David Silvermyr (ORNL)
9 //_________________________________________________________________________
11 #include "AliAnalysisEt.h"
18 class AliAnalysisHadEtCorrections;
20 class AliAnalysisEtReconstructed : public AliAnalysisEt
25 AliAnalysisEtReconstructed();
26 virtual ~AliAnalysisEtReconstructed();
28 virtual Int_t AnalyseEvent(AliVEvent* event);
32 /** Fill the objects you want to output, classes which add new histograms should overload this. */
33 virtual void FillOutputList(TList *list);
34 void SetCorrections(AliAnalysisHadEtCorrections *corr) {
38 /** Create the histograms, must be overloaded if you want to add your own */
39 virtual void CreateHistograms();
41 void SetEMinCorrection(const Double_t factor) { fEMinCorrection = factor; }
45 bool CheckGoodVertex(AliVParticle *track);
46 virtual bool TrackHitsCalorimeter(AliVParticle *track, Double_t magField);
48 virtual Double_t GetCorrectionModification(const AliESDCaloCluster& cluster,Int_t nonLinCorr, Int_t effCorr, Int_t mult);//nonLinCorr 0 = nominal 1 = high -1 = low, effCorr 0 = nominal 1 = high -1 = low
50 AliAnalysisHadEtCorrections *fCorrections;//corrections needed for hadronic et
52 Double_t fPidCut; // cut on the pid probability
54 TH2F *fHistChargedPionEnergyDeposit; /** Energy deposited in calorimeter by charged pions */
55 TH2F *fHistProtonEnergyDeposit; /** Energy deposited in calorimeter by protons */
56 TH2F *fHistAntiProtonEnergyDeposit; /** Energy deposited in calorimeter by anti-protons */
57 TH2F *fHistChargedKaonEnergyDeposit; /** Energy deposited in calorimeter by charged kaons */
58 TH2F *fHistMuonEnergyDeposit; /** Energy deposited in calorimeter by muons */
60 TH1F *fHistRemovedEnergy; // removed energy
62 Double_t fGeomCorrection; // geometry correction
63 Double_t fEMinCorrection; // Emin correction
65 Double_t fRecEffCorrection; // Eff correction
67 TH2D *fClusterPosition; // Position of clusters
68 TH1F *fClusterEnergy; // Distribution of cluster energies
69 TH1F *fClusterEt; // Distribution of cluster energies
71 TH2D *fHistChargedEnergyRemoved; // Charged energy removed
72 TH2D *fHistNeutralEnergyRemoved; // Neutral energy removed
73 TH2D *fHistGammaEnergyAdded; // gamma energy added
75 TH3F *fHistMatchedTracksEvspTvsCent; //For measuring hadron deposits
76 TH3F *fHistMatchedTracksEvspTvsCentEffCorr; //For measuring hadron deposits
77 TH3F *fHistMatchedTracksEvspTvsCentEffTMCorr; //For measuring hadron deposits
78 TH2F *fHistFoundHadronsvsCent; //For measuring hadron deposits
79 TH2F *fHistNotFoundHadronsvsCent; //For measuring hadron deposits
80 TH2F *fHistFoundHadronsEtvsCent; //For measuring hadron deposits
81 TH2F *fHistNotFoundHadronsEtvsCent; //For measuring hadron deposits
82 TH2D *fHistNominalRawEt;//Total ET from clusters with nominal reconstruction efficiency and nonlinearity correction vs centrality
83 TH2D *fHistNominalNonLinHighEt;//Total ET from clusters with nominal reconstruction efficiency and high bound of nonlinearity correction vs centrality
84 TH2D *fHistNominalNonLinLowEt;//Total ET from clusters with nominal reconstruction efficiency and low bound of nonlinearity correction vs centrality
85 TH2D *fHistNominalEffHighEt;//Total ET from clusters with high bound on reconstruction efficiency and nominal nonlinearity correction vs centrality
86 TH2D *fHistNominalEffLowEt;//Total ET from clusters with low bound on reconstruction efficiency and nominal nonlinearity correction vs centrality
88 Double_t ApplyModifiedCorrections(const AliESDCaloCluster& cluster,Int_t nonLinCorr, Int_t effCorr, Int_t mult);//nonLinCorr 0 = nominal 1 = high -1 = low, effCorr 0 = nominal 1 = high -1 = low
92 AliAnalysisEtReconstructed(const AliAnalysisEtReconstructed& g);
93 AliAnalysisEtReconstructed & operator=(const AliAnalysisEtReconstructed&);
97 ClassDef(AliAnalysisEtReconstructed, 1);
100 #endif // ALIANALYSISETRECONSTRUCTED_H