Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:25:53

0001 
0002 // Authors: Felice Pantaleo - felice.pantaleo@cern.ch
0003 // Date: 03/2019
0004 
0005 #ifndef RecoLocalCalo_HGCalRecProducer_HGCalTilesConstants_h
0006 #define RecoLocalCalo_HGCalRecProducer_HGCalTilesConstants_h
0007 
0008 #include "DataFormats/Math/interface/constexpr_cmath.h"
0009 #include <cmath>
0010 #include <cstdint>
0011 #include <array>
0012 
0013 struct HGCalSiliconTilesConstants {
0014   static constexpr float tileSize = 5.f;
0015   static constexpr float minDim1 = -285.f;
0016   static constexpr float maxDim1 = 285.f;
0017   static constexpr float minDim2 = -285.f;
0018   static constexpr float maxDim2 = 285.f;
0019   static constexpr int nColumns = reco::ceil((maxDim1 - minDim1) / tileSize);
0020   static constexpr int nRows = reco::ceil((maxDim2 - minDim2) / tileSize);
0021   static constexpr int nTiles = nColumns * nRows;
0022 };
0023 
0024 struct HGCalScintillatorTilesConstants {
0025   static constexpr float tileSize = 0.15f;
0026   static constexpr float minDim1 = -3.f;
0027   static constexpr float maxDim1 = 3.f;
0028   static constexpr float minDim2 = -3.f;
0029   static constexpr float maxDim2 = 3.f;
0030   static constexpr int nColumns = reco::ceil((maxDim1 - minDim1) / tileSize);
0031   static constexpr int nRows = reco::ceil(2. * M_PI / tileSize);
0032   static constexpr int nTiles = nColumns * nRows;
0033 };
0034 
0035 #endif