ATLAS Offline Software
EtaPhiLUT.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 // EtaPhi Look-up table for eflowRecClusters
6 // author: Teng Jian Khoo
7 // date: Jun 2020
8 //
9 // Inspired by IParticlesLookUpTable from ParticlesInConeTools
10 // By binning in phi and sorting in eta, extraction of objects in
11 // a small eta/phi region can be accelerated.
12 // Useful to reduce the number of distance computations needed
13 // for e.g. track-cluster matching
14 
15 #ifndef EFLOWREC_ETAPHILOOKUPTABLE_H
16 #define EFLOWREC_ETAPHILOOKUPTABLE_H
17 
18 #include <vector>
19 
22 
23 namespace eflowRec {
24 
26  class EtaPhiLUT {
27  public:
29  EtaPhiLUT( unsigned int nbins = 50 );
30 
31  void fill(eflowRecClusterContainer& clustersin);
32 
34  std::vector<eflowRecCluster*> clustersInCone( float eta, float phi, float dr ) const;
35 
36  private:
37 
38  unsigned int m_nphiBins;
39  float m_phiBinSize;
40  std::vector< std::vector<eflowRecCluster*> > m_phiBinnedLookUpTable;
41  };
42 
43 } // end of namespace
44 
45 #endif
phi
Scalar phi() const
phi method
Definition: AmgMatrixBasePlugin.h:64
eflowRec::EtaPhiLUT::clustersInCone
std::vector< eflowRecCluster * > clustersInCone(float eta, float phi, float dr) const
collect eflowRecClusters in a given cone
Definition: EtaPhiLUT.cxx:43
eflowRec
Definition: EtaPhiLUT.h:23
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:79
eflowRecClusterContainer
Definition: eflowRecCluster.h:275
python.TurnDataReader.dr
dr
Definition: TurnDataReader.py:112
eflowRec::EtaPhiLUT::m_phiBinSize
float m_phiBinSize
number of bins
Definition: EtaPhiLUT.h:39
eflowRec::EtaPhiLUT::m_nphiBins
unsigned int m_nphiBins
Definition: EtaPhiLUT.h:38
SCT_CalibAlgs::nbins
@ nbins
Definition: SCT_CalibNumbers.h:10
CaloCluster.h
eflowRec::EtaPhiLUT::fill
void fill(eflowRecClusterContainer &clustersin)
Definition: EtaPhiLUT.cxx:31
eflowRecCluster.h
eflowRec::EtaPhiLUT
2D look up table for eflowRecClusters
Definition: EtaPhiLUT.h:26
eflowRec::EtaPhiLUT::m_phiBinnedLookUpTable
std::vector< std::vector< eflowRecCluster * > > m_phiBinnedLookUpTable
bin size
Definition: EtaPhiLUT.h:40
eflowRec::EtaPhiLUT::EtaPhiLUT
EtaPhiLUT(unsigned int nbins=50)
constructor taking the desired binsize
Definition: EtaPhiLUT.cxx:25