38 const std::vector<HcalGenericDetId>& allCells (
const HcalTopology& hcaltopology,
bool killHE =
false) {
39 static std::vector<HcalGenericDetId>
result;
44 std::cout << std::endl <<
"HcalHardcodeCalibrations: maxDepthHB, maxDepthHE = " 45 << maxDepthHB <<
", " << maxDepthHE << std::endl;
56 if (hcaltopology.
valid(cell)) {
57 result.push_back (cell);
59 std::cout <<
" HcalHardcodedCalibrations: det|eta|phi|depth = " 60 << det <<
"|" <<
eta <<
"|" <<
phi <<
"|" 61 <<
depth << std::endl;
73 if(zdctopology.
valid(zcell)) result.push_back(zcell);
75 if(zdctopology.
valid(zcell)) result.push_back(zcell);
80 if(zdctopology.
valid(zcell)) result.push_back(zcell);
82 if(zdctopology.
valid(zcell)) result.push_back(zcell);
87 if(zdctopology.
valid(zcell)) result.push_back(zcell);
89 if(zdctopology.
valid(zcell)) result.push_back(zcell);
94 if(zdctopology.
valid(zcell)) result.push_back(zcell);
96 if(zdctopology.
valid(zcell)) result.push_back(zcell);
110 if (hcaltopology.
validHT(cell)) {
111 result.push_back (cell);
113 std::cout <<
" HcalHardcodedCalibrations: eta|phi|depth|vers = " 114 <<
eta <<
"|" <<
phi <<
"|" <<
depth <<
"|" << vers
131 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::HcalHardcodeCalibrations->...";
133 if ( iConfig.
exists(
"GainWidthsForTrigPrims") )
161 bool hb_recalib = iConfig.
getParameter<
bool>(
"HBRecalibration");
162 bool he_recalib = iConfig.
getParameter<
bool>(
"HERecalibration");
163 bool hf_recalib = iConfig.
getParameter<
bool>(
"HFRecalibration");
185 std::cout <<
" HcalHardcodeCalibrations: iLumi = " << iLumi << std::endl;
197 findingRecord <HcalPedestalsRcd> ();
201 findingRecord <HcalPedestalWidthsRcd> ();
205 findingRecord <HcalPedestalsRcd> ();
209 findingRecord <HcalPedestalWidthsRcd> ();
213 findingRecord <HcalGainsRcd> ();
217 findingRecord <HcalGainWidthsRcd> ();
221 findingRecord <HcalQIEDataRcd> ();
225 findingRecord <HcalQIETypesRcd> ();
229 findingRecord <HcalChannelQualityRcd> ();
233 findingRecord <HcalElectronicsMapRcd> ();
237 findingRecord <HcalZSThresholdsRcd> ();
241 findingRecord <HcalRespCorrsRcd> ();
245 findingRecord <HcalLUTCorrsRcd> ();
249 findingRecord <HcalPFCorrsRcd> ();
253 findingRecord <HcalTimeCorrsRcd> ();
257 findingRecord <HcalL1TriggerObjectsRcd> ();
261 findingRecord <HcalValidationCorrsRcd> ();
265 findingRecord <HcalLutMetadataRcd> ();
269 findingRecord <HcalDcsRcd> ();
273 findingRecord <HcalDcsMapRcd> ();
277 findingRecord <HcalRecoParamsRcd> ();
281 findingRecord <HcalLongRecoParamsRcd> ();
285 findingRecord <HcalZDCLowGainFractionsRcd> ();
289 findingRecord <HcalMCParamsRcd> ();
293 findingRecord <HcalFlagHFDigiTimeParamsRcd> ();
297 findingRecord <HcalFrontEndMapRcd> ();
301 findingRecord <HcalSiPMParametersRcd> ();
305 findingRecord <HcalSiPMCharacteristicsRcd> ();
309 findingRecord <HcalTPChannelParametersRcd> ();
313 findingRecord <HcalTPParametersRcd> ();
329 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::setIntervalFor-> key: " << record <<
" time: " << iTime.
eventID() <<
'/' << iTime.
time ().
value ();
335 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produce" << seff <<
"Pedestals-> ...";
340 auto result = std::make_unique<HcalPedestals>(topo,
false);
341 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
342 for (
auto cell : cells) {
344 result->addValues(item);
351 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produce" << seff <<
"PedestalWidths-> ...";
356 auto result = std::make_unique<HcalPedestalWidths>(topo,
false);
357 const std::vector <HcalGenericDetId>& cells = allCells(*htopo,
dbHardcode.
killHE());
358 for (
auto cell : cells) {
360 result->addValues(item);
382 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceGains-> ...";
387 auto result = std::make_unique<HcalGains>(topo);
388 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
389 for (
auto cell : cells) {
391 result->addValues(item);
397 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceGainWidths-> ...";
402 auto result = std::make_unique<HcalGainWidths>(topo);
403 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
404 for (
auto cell : cells) {
409 result->addValues(item);
410 }
else if (!cell.isHcalTrigTowerDetId()) {
412 result->addValues(item);
419 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceQIEData-> ...";
430 auto result = std::make_unique<HcalQIEData>(topo);
431 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
432 for (
auto cell : cells) {
434 result->addCoder (coder);
440 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceQIETypes-> ...";
445 auto result = std::make_unique<HcalQIETypes>(topo);
446 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
447 for (
auto cell : cells) {
449 result->addValues(item);
455 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceChannelQuality-> ...";
460 auto result = std::make_unique<HcalChannelQuality>(topo);
461 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
462 for (
auto cell : cells) {
471 if ( !(cell.isHcalZDCDetId())) {
474 int iphi = hid.
iphi();
475 int ieta = hid.
ieta();
480 bool isHEP17 = (iphi >= 63) && (iphi <= 66) && (ieta > 0);
482 bool is18d1 = (absieta == 18) && (depth ==1);
491 result->addValues(item);
501 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceRespCorrs-> ...";
508 std::vector<std::vector<int>> m_segmentation;
510 m_segmentation.resize(maxEta);
528 auto result = std::make_unique<HcalRespCorrs>(topo);
529 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
530 for (
const auto& cell : cells) {
552 std::cout <<
"HB ieta, depth = " << ieta_ <<
", " << depth_ <<
" corr = " << corr << std::endl;
560 std::cout <<
"HE ieta, depth = " << ieta_ <<
", " << depth_ <<
" corr = " << corr << std::endl;
568 std::cout <<
"HF ieta, depth = " << ieta_ <<
", " << depth_ <<
" corr = " << corr << std::endl;
573 result->addValues(item);
579 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceLUTCorrs-> ...";
584 auto result = std::make_unique<HcalLUTCorrs>(topo);
585 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
586 for (
auto cell : cells) {
588 result->addValues(item);
594 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::producePFCorrs-> ...";
599 auto result = std::make_unique<HcalPFCorrs>(topo);
600 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
601 for (
auto cell : cells) {
603 result->addValues(item);
609 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceTimeCorrs-> ...";
614 auto result = std::make_unique<HcalTimeCorrs>(topo);
615 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
616 for (
auto cell : cells) {
618 result->addValues(item);
624 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceZSThresholds-> ...";
629 auto result = std::make_unique<HcalZSThresholds>(topo);
630 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
631 for (
auto cell : cells) {
633 result->addValues(item);
640 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceL1TriggerObjects-> ...";
645 auto result = std::make_unique<HcalL1TriggerObjects>(topo);
646 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
647 for (
auto cell : cells) {
649 result->addValues(item);
652 result->setTagString(
"hardcoded");
653 result->setAlgoString(
"hardcoded");
659 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceElectronicsMap-> ...";
664 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
669 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceValidationCorrs-> ...";
674 auto result = std::make_unique<HcalValidationCorrs>(topo);
675 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
676 for (
auto cell : cells) {
678 result->addValues(item);
684 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceLutMetadata-> ...";
689 auto result = std::make_unique<HcalLutMetadata>(topo);
691 result->setRctLsb( 0.5 );
692 result->setNominalGain(0.177);
694 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
695 for (
const auto& cell: cells) {
700 if (cell.isHcalTrigTowerDetId()) {
705 result->addValues(item);
712 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceDcsValues-> ...";
713 auto result = std::make_unique<HcalDcsValues>();
718 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceDcsMap-> ...";
724 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceRecoParams-> ...";
729 auto result = std::make_unique<HcalRecoParams>(topo);
730 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
731 for (
auto cell : cells) {
733 result->addValues(item);
739 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceTimingParams-> ...";
744 auto result = std::make_unique<HcalTimingParams>(topo);
745 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
746 for (
auto cell : cells) {
748 result->addValues(item);
754 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceLongRecoParams-> ...";
759 auto result = std::make_unique<HcalLongRecoParams>(topo);
760 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
761 std::vector <unsigned int> mSignal;
762 mSignal.push_back(4);
763 mSignal.push_back(5);
764 mSignal.push_back(6);
765 std::vector <unsigned int> mNoise;
769 for (
auto cell : cells) {
770 if (cell.isHcalZDCDetId())
773 result->addValues(item);
780 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceZDCLowGainFractions-> ...";
785 auto result = std::make_unique<HcalZDCLowGainFractions>(topo);
786 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
787 for (
auto cell : cells) {
789 result->addValues(item);
799 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceMCParams-> ...";
803 auto result = std::make_unique<HcalMCParams>(topo);
804 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
805 for (
auto cell : cells) {
807 result->addValues(item);
814 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceFlagHFDigiTimeParams-> ...";
819 auto result = std::make_unique<HcalFlagHFDigiTimeParams>(topo);
820 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
822 std::vector<double> coef;
823 coef.push_back(0.93);
824 coef.push_back(-0.38275);
825 coef.push_back(-0.012667);
827 for (
auto cell : cells) {
835 result->addValues(item);
842 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceFrontEndMap-> ...";
846 const std::vector <HcalGenericDetId>& cells = allCells(*topo,
dbHardcode.
killHE());
853 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceSiPMParameters-> ...";
858 auto result = std::make_unique<HcalSiPMParameters>(topo);
859 const std::vector <HcalGenericDetId>& cells = allCells(*htopo,
dbHardcode.
killHE());
860 for (
auto cell : cells) {
862 result->addValues(item);
868 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceSiPMCharacteristics-> ...";
875 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceTPChannelParameters-> ...";
880 auto result = std::make_unique<HcalTPChannelParameters>(topo);
881 const std::vector <HcalGenericDetId>& cells = allCells(*htopo,
dbHardcode.
killHE());
882 for (
auto cell : cells) {
884 result->addValues(item);
890 edm::LogInfo(
"HCAL") <<
"HcalHardcodeCalibrations::produceTPParameters-> ...";
892 auto result = std::make_unique<HcalTPParameters>();
899 desc.
add<
double>(
"iLumi",-1.);
900 desc.
add<
bool>(
"HBRecalibration",
false);
901 desc.
add<
double>(
"HBreCalibCutoff",20.);
903 desc.
add<
bool>(
"HERecalibration",
false);
904 desc.
add<
double>(
"HEreCalibCutoff",20.);
906 desc.
add<
bool>(
"HFRecalibration",
false);
907 desc.
add<
bool>(
"GainWidthsForTrigPrims",
false);
908 desc.
add<
bool>(
"useHBUpgrade",
false);
909 desc.
add<
bool>(
"useHEUpgrade",
false);
910 desc.
add<
bool>(
"useHFUpgrade",
false);
911 desc.
add<
bool>(
"useHOUpgrade",
true);
912 desc.
add<
bool>(
"testHFQIE10",
false);
913 desc.
add<
bool>(
"testHEPlan1",
false);
914 desc.
add<
bool>(
"killHE",
false);
915 desc.
add<
bool>(
"useLayer0Weight",
false);
916 desc.
add<
bool>(
"useIeta18depth1",
true);
917 desc.
addUntracked<std::vector<std::string> >(
"toGet",std::vector<std::string>());
921 desc_hb.
add<std::vector<double>>(
"gain", std::vector<double>({0.19}));
922 desc_hb.add<std::vector<double>>(
"gainWidth", std::vector<double>({0.0}));
923 desc_hb.add<
double>(
"pedestal", 3.0);
924 desc_hb.add<
double>(
"pedestalWidth", 0.55);
925 desc_hb.add<
int>(
"zsThreshold", 8);
926 desc_hb.add<std::vector<double>>(
"qieOffset", std::vector<double>({-0.49, 1.8, 7.2, 37.9}));
927 desc_hb.add<std::vector<double>>(
"qieSlope", std::vector<double>({0.912, 0.917, 0.922, 0.923}));
928 desc_hb.add<
int>(
"qieType", 0);
929 desc_hb.add<
int>(
"mcShape",125);
930 desc_hb.add<
int>(
"recoShape",105);
931 desc_hb.add<
double>(
"photoelectronsToAnalog",0.0);
932 desc_hb.add<std::vector<double>>(
"darkCurrent",std::vector<double>({0.0}));
933 desc_hb.add<
bool>(
"doRadiationDamage",
false);
937 desc_hbRaddam.
add<
double>(
"temperatureBase",20.0);
938 desc_hbRaddam.add<
double>(
"temperatureNew",-5.0);
939 desc_hbRaddam.add<
double>(
"intlumiOffset",150);
940 desc_hbRaddam.add<
double>(
"depVsTemp",0.0631);
941 desc_hbRaddam.add<
double>(
"intlumiToNeutrons",3.67e8);
942 desc_hbRaddam.add<std::vector<double>>(
"depVsNeutrons",{5.69e-11,7.90e-11});
945 desc_hbUpgrade.
add<std::vector<double>>(
"gain", std::vector<double>({0.00111111111111}));
946 desc_hbUpgrade.add<std::vector<double>>(
"gainWidth", std::vector<double>({0}));
947 desc_hbUpgrade.add<
double>(
"pedestal", 18.0);
948 desc_hbUpgrade.add<
double>(
"pedestalWidth", 5.0);
949 desc_hbUpgrade.add<
int>(
"zsThreshold", 3);
950 desc_hbUpgrade.add<std::vector<double>>(
"qieOffset", std::vector<double>({0.0, 0.0, 0.0, 0.0}));
951 desc_hbUpgrade.add<std::vector<double>>(
"qieSlope", std::vector<double>({0.333, 0.333, 0.333, 0.333}));
952 desc_hbUpgrade.add<
int>(
"qieType", 2);
953 desc_hbUpgrade.add<
int>(
"mcShape",206);
954 desc_hbUpgrade.add<
int>(
"recoShape",206);
955 desc_hbUpgrade.add<
double>(
"photoelectronsToAnalog",57.5);
956 desc_hbUpgrade.add<std::vector<double>>(
"darkCurrent", std::vector<double>({0.055}));
957 desc_hbUpgrade.add<
bool>(
"doRadiationDamage",
true);
962 desc_he.
add<std::vector<double>>(
"gain", std::vector<double>({0.23}));
963 desc_he.add<std::vector<double>>(
"gainWidth", std::vector<double>({0}));
964 desc_he.add<
double>(
"pedestal", 3.0);
965 desc_he.add<
double>(
"pedestalWidth", 0.79);
966 desc_he.add<
int>(
"zsThreshold", 9);
967 desc_he.add<std::vector<double>>(
"qieOffset", std::vector<double>({-0.38, 2.0, 7.6, 39.6}));
968 desc_he.add<std::vector<double>>(
"qieSlope", std::vector<double>({0.912, 0.916, 0.92, 0.922}));
969 desc_he.add<
int>(
"qieType", 0);
970 desc_he.add<
int>(
"mcShape",125);
971 desc_he.add<
int>(
"recoShape",105);
972 desc_he.add<
double>(
"photoelectronsToAnalog",0.0);
973 desc_he.add<std::vector<double>>(
"darkCurrent",std::vector<double>({0.0}));
974 desc_he.add<
bool>(
"doRadiationDamage",
false);
978 desc_heRaddam.
add<
double>(
"temperatureBase",20.0);
979 desc_heRaddam.add<
double>(
"temperatureNew",5.0);
980 desc_heRaddam.add<
double>(
"intlumiOffset",75);
981 desc_heRaddam.add<
double>(
"depVsTemp",0.0631);
982 desc_heRaddam.add<
double>(
"intlumiToNeutrons",2.92e8);
983 desc_heRaddam.add<std::vector<double>>(
"depVsNeutrons",{5.69e-11,7.90e-11});
986 desc_heUpgrade.
add<std::vector<double>>(
"gain", std::vector<double>({0.00111111111111}));
987 desc_heUpgrade.add<std::vector<double>>(
"gainWidth", std::vector<double>({0}));
988 desc_heUpgrade.add<
double>(
"pedestal", 18.0);
989 desc_heUpgrade.add<
double>(
"pedestalWidth", 5.0);
990 desc_heUpgrade.add<
int>(
"zsThreshold", 3);
991 desc_heUpgrade.add<std::vector<double>>(
"qieOffset", std::vector<double>({0.0, 0.0, 0.0, 0.0}));
992 desc_heUpgrade.add<std::vector<double>>(
"qieSlope", std::vector<double>({0.333, 0.333, 0.333, 0.333}));
993 desc_heUpgrade.add<
int>(
"qieType", 2);
994 desc_heUpgrade.add<
int>(
"mcShape",206);
995 desc_heUpgrade.add<
int>(
"recoShape",206);
996 desc_heUpgrade.add<
double>(
"photoelectronsToAnalog",57.5);
997 desc_heUpgrade.add<std::vector<double>>(
"darkCurrent", std::vector<double>({0.055}));
998 desc_heUpgrade.add<
bool>(
"doRadiationDamage",
true);
1003 desc_hf.
add<std::vector<double>>(
"gain", std::vector<double>({0.14, 0.135}));
1004 desc_hf.add<std::vector<double>>(
"gainWidth", std::vector<double>({0.0, 0.0}));
1005 desc_hf.add<
double>(
"pedestal", 3.0);
1006 desc_hf.add<
double>(
"pedestalWidth", 0.84);
1007 desc_hf.add<
int>(
"zsThreshold", -9999);
1008 desc_hf.add<std::vector<double>>(
"qieOffset", std::vector<double>({-0.87, 1.4, 7.8, -29.6}));
1009 desc_hf.add<std::vector<double>>(
"qieSlope", std::vector<double>({0.359, 0.358, 0.36, 0.367}));
1010 desc_hf.add<
int>(
"qieType", 0);
1011 desc_hf.add<
int>(
"mcShape",301);
1012 desc_hf.add<
int>(
"recoShape",301);
1013 desc_hf.add<
double>(
"photoelectronsToAnalog",0.0);
1014 desc_hf.add<std::vector<double>>(
"darkCurrent",std::vector<double>({0.0}));
1015 desc_hf.add<
bool>(
"doRadiationDamage",
false);
1019 desc_hfUpgrade.
add<std::vector<double>>(
"gain", std::vector<double>({0.14, 0.135}));
1020 desc_hfUpgrade.add<std::vector<double>>(
"gainWidth", std::vector<double>({0.0, 0.0}));
1021 desc_hfUpgrade.add<
double>(
"pedestal", 13.33);
1022 desc_hfUpgrade.add<
double>(
"pedestalWidth", 3.33);
1023 desc_hfUpgrade.add<
int>(
"zsThreshold", -9999);
1024 desc_hfUpgrade.add<std::vector<double>>(
"qieOffset", std::vector<double>({0.0697, -0.7405, 12.38, -671.9}));
1025 desc_hfUpgrade.add<std::vector<double>>(
"qieSlope", std::vector<double>({0.297, 0.298, 0.298, 0.313}));
1026 desc_hfUpgrade.add<
int>(
"qieType", 1);
1027 desc_hfUpgrade.add<
int>(
"mcShape",301);
1028 desc_hfUpgrade.add<
int>(
"recoShape",301);
1029 desc_hfUpgrade.add<
double>(
"photoelectronsToAnalog",0.0);
1030 desc_hfUpgrade.add<std::vector<double>>(
"darkCurrent",std::vector<double>({0.0}));
1031 desc_hfUpgrade.add<
bool>(
"doRadiationDamage",
false);
1035 desc_hfrecal.
add<std::vector<double>>(
"HFdepthOneParameterA", std::vector<double>());
1036 desc_hfrecal.add<std::vector<double>>(
"HFdepthOneParameterB", std::vector<double>());
1037 desc_hfrecal.add<std::vector<double>>(
"HFdepthTwoParameterA", std::vector<double>());
1038 desc_hfrecal.add<std::vector<double>>(
"HFdepthTwoParameterB", std::vector<double>());
1042 desc_ho.
add<std::vector<double>>(
"gain", std::vector<double>({0.006, 0.0087}));
1043 desc_ho.add<std::vector<double>>(
"gainWidth", std::vector<double>({0.0, 0.0}));
1044 desc_ho.add<
double>(
"pedestal", 11.0);
1045 desc_ho.add<
double>(
"pedestalWidth", 0.57);
1046 desc_ho.add<
int>(
"zsThreshold", 24);
1047 desc_ho.add<std::vector<double>>(
"qieOffset", std::vector<double>({-0.44, 1.4, 7.1, 38.5}));
1048 desc_ho.add<std::vector<double>>(
"qieSlope", std::vector<double>({0.907, 0.915, 0.92, 0.921}));
1049 desc_ho.add<
int>(
"qieType", 0);
1050 desc_ho.add<
int>(
"mcShape",201);
1051 desc_ho.add<
int>(
"recoShape",201);
1052 desc_ho.add<
double>(
"photoelectronsToAnalog",4.0);
1053 desc_ho.add<std::vector<double>>(
"darkCurrent",std::vector<double>({0.0}));
1054 desc_ho.add<
bool>(
"doRadiationDamage",
false);
1058 validator_sipm.
add<
int>(
"pixels",1);
1059 validator_sipm.add<
double>(
"crosstalk",0);
1060 validator_sipm.add<
double>(
"nonlin1",1);
1061 validator_sipm.add<
double>(
"nonlin2",0);
1062 validator_sipm.add<
double>(
"nonlin3",0);
1063 std::vector<edm::ParameterSet> default_sipm(1);
1064 desc.
addVPSet(
"SiPMCharacteristics",validator_sipm,default_sipm);
std::unique_ptr< HcalPedestals > producePedestals(const HcalPedestalsRcd &rcd)
static const int kHcalVersMask
T getParameter(std::string const &) const
HcalMCParam makeMCParam(HcalGenericDetId fId) const
T getUntrackedParameter(std::string const &, T const &) const
std::unique_ptr< HcalPedestals > producePedestals_(const HcalPedestalsRcd &rcd, bool eff)
std::unique_ptr< HcalGains > produceGains(const HcalGainsRcd &rcd)
void useHBUpgrade(bool b)
void getDepthSegmentation(const unsigned ring, std::vector< int > &readoutDepths, const bool flag=false) const
HcalHardcodeCalibrations(const edm::ParameterSet &)
const bool killHE() const
std::unique_ptr< HcalPedestalWidths > produceEffectivePedestalWidths(const HcalPedestalWidthsRcd &rcd)
ParameterDescriptionBase * addVPSet(U const &iLabel, ParameterSetDescription const &validator, std::vector< ParameterSet > const &defaults)
std::unique_ptr< HcalPFCorrs > producePFCorrs(const HcalPFCorrsRcd &rcd)
std::unique_ptr< HcalQIEData > produceQIEData(const HcalQIEDataRcd &rcd)
ParameterDescriptionBase * addUntracked(U const &iLabel, T const &value)
void setHBUpgrade(HcalHardcodeParameters p)
const EventID & eventID() const
bool valid(const DetId &id) const override
std::unique_ptr< HcalTimeCorrs > produceTimeCorrs(const HcalTimeCorrsRcd &rcd)
void useHFUpgrade(bool b)
std::unique_ptr< HcalLongRecoParams > produceLongRecoParams(const HcalLongRecoParamsRcd &rcd)
std::unique_ptr< HcalPedestals > produceEffectivePedestals(const HcalPedestalsRcd &rcd)
std::unique_ptr< HcalSiPMCharacteristics > produceSiPMCharacteristics(const HcalSiPMCharacteristicsRcd &rcd)
std::unique_ptr< HcalElectronicsMap > produceElectronicsMap(const HcalElectronicsMapRcd &rcd)
std::unique_ptr< HcalElectronicsMap > makeHardcodeMap(const std::vector< HcalGenericDetId > &cells) const
void setHF(HcalHardcodeParameters p)
static const IOVSyncValue & endOfTime()
bool exists(std::string const ¶meterName) const
checks if a parameter exists
std::pair< Time_t, Time_t > ValidityInterval
std::unique_ptr< HcalPedestalWidths > producePedestalWidths_(const HcalPedestalWidthsRcd &rcd, bool eff)
std::unique_ptr< HcalDcsValues > produceDcsValues(const HcalDcsRcd &rcd)
static const int kHcalEtaMask
void setIntervalFor(const edm::eventsetup::EventSetupRecordKey &, const edm::IOVSyncValue &, edm::ValidityInterval &) override
void setWhatProduced(T *iThis, const es::Label &iLabel=es::Label())
std::unique_ptr< HcalPedestalWidths > producePedestalWidths(const HcalPedestalWidthsRcd &rcd)
HcalTimingParam makeTimingParam(HcalGenericDetId fId) const
HcalDbHardcode dbHardcode
HcalRecoParam makeRecoParam(HcalGenericDetId fId) const
int depth() const
get the tower depth
void makeHardcodeFrontEndMap(HcalFrontEndMap &emap, const std::vector< HcalGenericDetId > &cells) const
virtual bool valid(const HcalZDCDetId &id) const
void addDefault(ParameterSetDescription const &psetDescription)
std::unique_ptr< HFRecalibration > hf_recalibration
std::unique_ptr< HcalRespCorrs > produceRespCorrs(const HcalRespCorrsRcd &rcd)
HcalQIECoder makeQIECoder(HcalGenericDetId fId) const
std::unique_ptr< HcalLutMetadata > produceLutMetadata(const HcalLutMetadataRcd &rcd)
void setHO(HcalHardcodeParameters p)
static const IOVSyncValue & beginOfTime()
const DepRecordT getRecord() const
void setHFUpgrade(HcalHardcodeParameters p)
void setHE(HcalHardcodeParameters p)
std::unique_ptr< HcalDcsMap > makeHardcodeDcsMap() const
int ieta() const
get the cell ieta
std::unique_ptr< HcalFlagHFDigiTimeParams > produceFlagHFDigiTimeParams(const HcalFlagHFDigiTimeParamsRcd &rcd)
const char * name() const
std::unique_ptr< HcalFrontEndMap > produceFrontEndMap(const HcalFrontEndMapRcd &rcd)
void makeHardcodeTPParameters(HcalTPParameters &tppar) const
std::unique_ptr< HBHERecalibration > hb_recalibration
static const int kHcalDepthMask
ParameterDescriptionBase * add(U const &iLabel, T const &value)
void useHOUpgrade(bool b)
std::unique_ptr< HcalSiPMParameters > produceSiPMParameters(const HcalSiPMParametersRcd &rcd)
std::unique_ptr< HBHERecalibration > he_recalibration
static const int kHcalPhiMask
int ietaAbs() const
get the absolute value of the cell ieta
Namespace of DDCMS conversion namespace.
~HcalHardcodeCalibrations() override
HcalTPChannelParameter makeHardcodeTPChannelParameter(HcalGenericDetId fId) const
std::unique_ptr< HcalRecoParams > produceRecoParams(const HcalRecoParamsRcd &rcd)
void setHB(HcalHardcodeParameters p)
int iphi() const
get the cell iphi
static const int kHcalPhiMask2
std::unique_ptr< HcalTPParameters > produceTPParameters(const HcalTPParametersRcd &rcd)
HcalGainWidth makeGainWidth(HcalGenericDetId fId) const
std::unique_ptr< HcalSiPMCharacteristics > makeHardcodeSiPMCharacteristics() const
HcalGain makeGain(HcalGenericDetId fId, bool fSmear=false) const
std::unique_ptr< HcalGainWidths > produceGainWidths(const HcalGainWidthsRcd &rcd)
std::unique_ptr< HcalTPChannelParameters > produceTPChannelParameters(const HcalTPChannelParametersRcd &rcd)
std::unique_ptr< HcalL1TriggerObjects > produceL1TriggerObjects(const HcalL1TriggerObjectsRcd &rcd)
bool switchGainWidthsForTrigPrims
std::unique_ptr< HcalZSThresholds > produceZSThresholds(const HcalZSThresholdsRcd &rcd)
HcalQIEType makeQIEType(HcalGenericDetId fId) const
std::unique_ptr< HcalZDCLowGainFractions > produceZDCLowGainFractions(const HcalZDCLowGainFractionsRcd &rcd)
void setSiPMCharacteristics(std::vector< edm::ParameterSet > vps)
std::unique_ptr< HcalMCParams > produceMCParams(const HcalMCParamsRcd &rcd)
void useHEUpgrade(bool b)
std::unique_ptr< HcalTimingParams > produceTimingParams(const HcalTimingParamsRcd &rcd)
std::unique_ptr< HcalQIETypes > produceQIETypes(const HcalQIETypesRcd &rcd)
int getLayersInDepth(int ieta, int depth, const HcalTopology *topo)
std::unique_ptr< HcalChannelQuality > produceChannelQuality(const HcalChannelQualityRcd &rcd)
HcalPedestal makePedestal(HcalGenericDetId fId, bool fSmear, bool eff, const HcalTopology *topo, double intlumi)
static const int kHcalEtaMask2
std::string fullPath() const
const Timestamp & time() const
HcalSiPMParameter makeHardcodeSiPMParameter(HcalGenericDetId fId, const HcalTopology *topo, double intlumi)
void setHEUpgrade(HcalHardcodeParameters p)
std::unique_ptr< HcalDcsMap > produceDcsMap(const HcalDcsMapRcd &rcd)
TimeValue_t value() const
HcalZSThreshold makeZSThreshold(HcalGenericDetId fId) const
std::unique_ptr< HcalLUTCorrs > produceLUTCorrs(const HcalLUTCorrsRcd &rcd)
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
HcalPedestalWidth makePedestalWidth(HcalGenericDetId fId, bool eff, const HcalTopology *topo, double intlumi)
std::unique_ptr< HcalValidationCorrs > produceValidationCorrs(const HcalValidationCorrsRcd &rcd)
bool validHT(const HcalTrigTowerDetId &id) const