Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-03-17 11:18:58

0001 // Authors: Felice Pantaleo - felice.pantaleo@cern.ch
0002 // Date: 03/2019
0003 
0004 #ifndef RecoLocalCalo_HGCalRecProducer_HGCalTilesConstants_h
0005 #define RecoLocalCalo_HGCalRecProducer_HGCalTilesConstants_h
0006 
0007 #include "DataFormats/Math/interface/constexpr_cmath.h"
0008 #include <cmath>
0009 #include <cstdint>
0010 #include <array>
0011 
0012 struct HGCalTilesConstants {
0013   static constexpr float tileSize = 5.f;
0014   static constexpr float minX = -285.f;
0015   static constexpr float maxX = 285.f;
0016   static constexpr float minY = -285.f;
0017   static constexpr float maxY = 285.f;
0018   static constexpr int nColumns = reco::ceil((maxX - minX) / tileSize);
0019   static constexpr int nRows = reco::ceil((maxY - minY) / tileSize);
0020   static constexpr float tileSizeEtaPhi = 0.15f;
0021   static constexpr float minEta = -3.f;
0022   static constexpr float maxEta = 3.f;
0023   static constexpr int nColumnsEta = reco::ceil((maxEta - minEta) / tileSizeEtaPhi);
0024   static constexpr int nRowsPhi = reco::ceil(2. * M_PI / tileSizeEtaPhi);
0025   static constexpr int nTiles = nColumns * nRows + nColumnsEta * nRowsPhi;
0026 };
0027 
0028 #endif