File indexing completed on 2023-03-17 11:23:50
0001 #include "DataFormats/DetId/interface/DetId.h"
0002 #include "DataFormats/HcalDetId/interface/HcalDetId.h"
0003 #include "DataFormats/HcalDetId/interface/HcalSubdetector.h"
0004 #include "SimCalorimetry/HcalTestBeam/interface/HcalTBSimParameterMap.h"
0005
0006 HcalTBSimParameterMap::HcalTBSimParameterMap()
0007 : theHBParameters(2000., 117, 5, 10, 5, true, false, 1, std::vector<double>(16, 117.), 10.),
0008 theHEParameters(2000., 178, 5, 10, 5, true, false, 16, std::vector<double>(16, 178.), 10.),
0009 theHOParameters(4000., 217, 5, 10, 5, true, false, 1, std::vector<double>(16, 217.), 5.) {}
0010
0011
0012
0013
0014
0015
0016
0017
0018 HcalTBSimParameterMap::HcalTBSimParameterMap(const edm::ParameterSet &p)
0019 : theHBParameters(
0020 p.getUntrackedParameter<double>("photomultiplierGainTBHB", 2000.),
0021 p.getUntrackedParameter<double>("samplingFactorTBHB", 117),
0022 p.getUntrackedParameter<double>("timePhaseTBHB", 5),
0023 p.getUntrackedParameter<int>("readoutFrameSizeTB", 10),
0024 p.getUntrackedParameter<int>("binOfMaximumTBHB", 5),
0025 p.getUntrackedParameter<bool>("doPhotostatisticsTB", true),
0026 p.getUntrackedParameter<bool>("syncPhaseTB", true),
0027 p.getUntrackedParameter<int>("firstRingTBHB", 1),
0028 p.getUntrackedParameter<std::vector<double>>("samplingFactorsTBHB", std::vector<double>(16, 117.)),
0029 p.getUntrackedParameter<double>("sipmTauTBHB", 10.)),
0030 theHEParameters(
0031 p.getUntrackedParameter<double>("photomultiplierGainTBHE", 2000.),
0032 p.getUntrackedParameter<double>("samplingFactorTBHE", 178),
0033 p.getUntrackedParameter<double>("timePhaseTBHE", 5),
0034 p.getUntrackedParameter<int>("readoutFrameSizeTB", 10),
0035 p.getUntrackedParameter<int>("binOfMaximumTBHE", 5),
0036 p.getUntrackedParameter<bool>("doPhotostatisticsTB", true),
0037 p.getUntrackedParameter<bool>("syncPhaseTB", true),
0038 p.getUntrackedParameter<int>("firstRingTBHE", 16),
0039 p.getUntrackedParameter<std::vector<double>>("samplingFactorsTBHE", std::vector<double>(16, 178.)),
0040 p.getUntrackedParameter<double>("sipmTauTBHE", 10.)),
0041 theHOParameters(
0042 p.getUntrackedParameter<double>("photomultiplierGainTBHE", 4000.),
0043 p.getUntrackedParameter<double>("samplingFactorTBHO", 217),
0044 p.getUntrackedParameter<double>("timePhaseTBHO", 5),
0045 p.getUntrackedParameter<int>("readoutFrameSizeTB", 10),
0046 p.getUntrackedParameter<int>("binOfMaximumTBHO", 5),
0047 p.getUntrackedParameter<bool>("doPhotostatisticsTB", true),
0048 p.getUntrackedParameter<bool>("syncPhaseTB", true),
0049 p.getUntrackedParameter<int>("firstRingTBHO", 1),
0050 p.getUntrackedParameter<std::vector<double>>("samplingFactorsTBHO", std::vector<double>(16, 217.)),
0051 p.getUntrackedParameter<double>("sipmTauTBHO", 5.)) {}
0052
0053 const CaloSimParameters &HcalTBSimParameterMap::simParameters(const DetId &detId) const {
0054 HcalDetId hcalDetId(detId);
0055 if (hcalDetId.subdet() == HcalBarrel) {
0056 return theHBParameters;
0057 } else if (hcalDetId.subdet() == HcalEndcap) {
0058 return theHEParameters;
0059 } else {
0060 return theHOParameters;
0061 }
0062 }