Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2025-07-09 05:00:26

0001 // Authors: Alessandro Brusamolino
0002 
0003 #ifndef RecoLocalCalo_HGCalRecProducer_BarrelTilesConstants_h
0004 #define RecoLocalCalo_HGCalRecProducer_BarrelTilesConstants_h
0005 
0006 #include "DataFormats/Math/interface/constexpr_cmath.h"
0007 #include <cmath>
0008 #include <cstdint>
0009 #include <array>
0010 
0011 struct EBTilesConstants {
0012   static constexpr float cellWidthEta = 0.0175f;
0013   static constexpr float cellWidthPhi = cellWidthEta;
0014   static constexpr float tileSizeEtaPhi = cellWidthEta;
0015   static constexpr float minDim1 = -1.5f;
0016   static constexpr float maxDim1 = 1.5f;
0017   static constexpr float minDim2 = -M_PI;
0018   static constexpr float maxDim2 = M_PI;
0019   static constexpr int nColumns = reco::ceil((maxDim1 - minDim1) / tileSizeEtaPhi);
0020   static constexpr int nRows = reco::ceil(2. * M_PI / tileSizeEtaPhi);
0021   static constexpr int nTiles = nColumns * nRows;
0022   static constexpr float showerSigma = 0.5f;  // in unit of xtals
0023 };
0024 
0025 struct HBTilesConstants {
0026   static constexpr float cellWidthEta = 0.087f;
0027   static constexpr float cellWidthPhi = cellWidthEta;
0028   static constexpr float tileSizeEtaPhi = 5 * cellWidthEta;
0029   static constexpr float minDim1 = -1.5f;
0030   static constexpr float maxDim1 = 1.5f;
0031   static constexpr float minDim2 = -M_PI;
0032   static constexpr float maxDim2 = M_PI;
0033   static constexpr int nColumns = reco::ceil((maxDim1 - minDim1) / tileSizeEtaPhi);
0034   static constexpr int nRows = reco::ceil(2. * M_PI / tileSizeEtaPhi);
0035   static constexpr int nTiles = nColumns * nRows;
0036   static constexpr float showerSigma = 0.5f;  // in unit of xtals
0037 };
0038 
0039 #endif