1 //_________________________________________________________________________
2 // Utility Class for transverse energy studies
3 // Selection class for EMCAL
5 //*-- Authors: Oystein Djuvsland (Bergen)
6 //_________________________________________________________________________
9 #include "AliAnalysisEtSelectorEmcal.h"
10 #include "AliAnalysisEtCuts.h"
11 #include "TParticle.h"
12 void AliAnalysisEtSelectorEmcal::SetEvent(const AliESDEvent* event)
15 if(!fInitialized) Init(event);
18 AliAnalysisEtSelectorEmcal::AliAnalysisEtSelectorEmcal(AliAnalysisEtCuts* cuts):AliAnalysisEtSelector(cuts)
24 AliAnalysisEtSelectorEmcal::~AliAnalysisEtSelectorEmcal()
29 void AliAnalysisEtSelectorEmcal::Init()
31 AliAnalysisEtSelector::Init();
34 Int_t AliAnalysisEtSelectorEmcal::Init(const AliESDEvent* event)
37 AliAnalysisEtSelector::Init(event);
38 Printf("Initializing selector for run: %d", event->GetRunNumber());
43 TRefArray* AliAnalysisEtSelectorEmcal::GetClusters()
46 if(!fClusterArray) fClusterArray = new TRefArray;
50 fEvent->GetEMCALClusters(fClusterArray);
54 Printf("Could not initialize cluster array");
59 Bool_t AliAnalysisEtSelectorEmcal::CutMinEnergy(const AliESDCaloCluster& cl) const
61 return cl.E() > fCuts->GetReconstructedEmcalClusterEnergyCut();
64 Bool_t AliAnalysisEtSelectorEmcal::CutMinEnergy(const TParticle& p) const
66 return p.Energy() > fCuts->GetReconstructedEmcalClusterEnergyCut();
69 Bool_t AliAnalysisEtSelectorEmcal::CutDistanceToBadChannel(const AliESDCaloCluster& ) const
74 Bool_t AliAnalysisEtSelectorEmcal::CutTrackMatching(const AliESDCaloCluster& ) const
79 Bool_t AliAnalysisEtSelectorEmcal::CutGeometricalAcceptance(const TParticle& part) const
81 return TMath::Abs(part.Eta()) < fCuts->GetGeometryEmcalEtaAccCut()
82 && part.Phi() < fCuts->GetGeometryEmcalPhiAccMaxCut()*TMath::Pi()/180.
83 && part.Phi() > fCuts->GetGeometryEmcalPhiAccMinCut()*TMath::Pi()/180.;
86 Bool_t AliAnalysisEtSelectorEmcal::CutGeometricalAcceptance(const AliVTrack& part) const
88 return TMath::Abs(part.Eta()) < fCuts->GetGeometryEmcalEtaAccCut()
89 && part.Phi() < fCuts->GetGeometryEmcalPhiAccMaxCut()*TMath::Pi()/180.
90 && part.Phi() > fCuts->GetGeometryEmcalPhiAccMinCut()*TMath::Pi()/180.;