1 //_________________________________________________________________________
2 // Utility Class for transverse energy studies
3 // Base class for ESD analysis, for PHOS
4 // - reconstruction output
7 //*-- Authors: Oystein Djuvsland (Bergen), David Silvermyr (ORNL)
8 //_________________________________________________________________________
9 #include "AliAnalysisEtReconstructedPhos.h"
10 #include "AliAnalysisEtCuts.h"
11 #include "AliESDtrack.h"
14 ClassImp(AliAnalysisEtReconstructedPhos);
16 /*// Worst case (protons and neutrons):
17 const Double_t kMEANCHARGED = 0.335;
18 const Double_t kMEANNEUTRAL = 0.434;
19 const Double_t kMEANGAMMA = 0.374;
21 // Best case (pions and K0s):
22 const Double_t kMEANCHARGED = 0.304;
23 const Double_t kMEANNEUTRAL = 0.3356;
24 const Double_t kMEANGAMMA = 0.374;
27 const Double_t kMEANCHARGED = 0.307;
28 const Double_t kMEANNEUTRAL = 0.407;
29 const Double_t kMEANGAMMA = 0.374;
32 AliAnalysisEtReconstructedPhos::AliAnalysisEtReconstructedPhos() :
33 AliAnalysisEtReconstructed()
35 fHistogramNameSuffix = TString("PhosRec");
38 AliAnalysisEtReconstructedPhos::~AliAnalysisEtReconstructedPhos()
42 void AliAnalysisEtReconstructedPhos::Init()
44 AliAnalysisEtReconstructed::Init();
46 fDetectorRadius = fCuts->GetGeometryPhosDetectorRadius();
47 fEtaCutAcc = fCuts->GetGeometryPhosEtaAccCut();
48 fPhiCutAccMax = fCuts->GetGeometryPhosPhiAccMaxCut() * TMath::Pi()/180.;
49 fPhiCutAccMin = fCuts->GetGeometryPhosPhiAccMinCut() * TMath::Pi()/180.;
50 fClusterEnergyCut = fCuts->GetReconstructedPhosClusterEnergyCut();
51 fSingleCellEnergyCut = fCuts->GetReconstructedPhosSingleCellEnergyCut();
53 fClusterType = fCuts->GetReconstructedPhosClusterType();
54 fTrackDistanceCut = fCuts->GetPhosTrackDistanceCut();
55 fTrackDxCut = fCuts->GetPhosTrackDxCut();
56 fTrackDzCut = fCuts->GetPhosTrackDzCut();
58 fDetector = fCuts->GetDetectorPhos();
60 fGeomCorrection = 1.0/0.036;
62 fEMinCorrection = 1.0;
66 bool AliAnalysisEtReconstructedPhos::TrackHitsCalorimeter(AliVParticle* track, Double_t magField)
68 return AliAnalysisEtReconstructed::TrackHitsCalorimeter(track, magField);
71 Double_t AliAnalysisEtReconstructedPhos::GetChargedContribution(Int_t clusterMult)
75 Double_t nPart = 0.067 + 0.137*clusterMult;
77 Double_t contr = nPart*kMEANCHARGED;
85 Double_t AliAnalysisEtReconstructedPhos::GetNeutralContribution(Int_t clusterMult)
89 Double_t nPart = 0.012 + 0.024*clusterMult - 0.00006*clusterMult*clusterMult;
91 Double_t contr = nPart*kMEANNEUTRAL;
98 Double_t AliAnalysisEtReconstructedPhos::GetGammaContribution(Int_t clusterMult)
102 Double_t nPart = -0.008 + 0.0057*clusterMult + 0.0002*clusterMult*clusterMult;
104 Double_t contr = nPart*kMEANGAMMA;