143 double p1 =
pset->getParameter<std::vector<double>>(
"nvtx_params").at(0);
144 double p2 =
pset->getParameter<std::vector<double>>(
"nvtx_params").at(1);
157 for (
unsigned int abs_eta = 0; abs_eta <
absEtaBinsBarrel.size() - 1; abs_eta++) {
158 std::vector<double> pt_bin_calibs;
167 for (
unsigned int abs_eta = 0; abs_eta <
absEtaBinsHGCal.size() - 1; abs_eta++) {
168 std::vector<double> pt_bin_calibs;
177 for (
unsigned int abs_eta = 0; abs_eta <
absEtaBinsHF.size() - 1; abs_eta++) {
178 std::vector<double> pt_bin_calibs;
196 std::vector<double> pt_bin_calibs;
206 std::vector<double> pt_bin_calibs;
214 produces<l1tp2::Phase2L1CaloJetCollection>(
"GCTJet");
226 std::unique_ptr<l1tp2::Phase2L1CaloJetCollection> jetCands(make_unique<l1tp2::Phase2L1CaloJetCollection>());
231 edm::LogError(
"Phase2L1CaloJetEmulator") <<
"Failed to get towers from caloTowerCollection!";
238 int ieta =
i.towerIEta();
239 int iphi =
i.towerIPhi();
240 if (
i.ecalTowerEt() > 1.)
241 GCTintTowers[
ieta][
iphi] =
i.ecalTowerEt();
253 edm::LogError(
"Phase2L1CaloJetEmulator") <<
"Failed to get towers from hgcalTowerCollection!";
256 hgcalTowerColl = (*hgcalTowerCollection.
product());
260 edm::LogError(
"Phase2L1CaloJetEmulator") <<
"Failed to get HcalTrigPrimDigi for HF!";
263 int i_hgcalEM_hits_leq_threshold = 0;
264 int i_hgcalHad_hits_leq_threshold = 0;
265 int i_hf_hits_leq_threshold = 0;
266 for (
auto it = hgcalTowerColl.
begin(0);
it != hgcalTowerColl.
end(0);
it++) {
267 if (
it->etEm() <= 1.75 &&
it->etEm() >= 1.25) {
268 i_hgcalEM_hits_leq_threshold++;
270 if (
it->etHad() <= 1.25 &&
it->etHad() >= 0.75) {
271 i_hgcalHad_hits_leq_threshold++;
276 double et = decoder.hcaletValue(
hit.
id(),
hit.t0());
281 if (et <= 15.0 && et >= 10.0)
282 i_hf_hits_leq_threshold++;
286 if (hgcalEM_nvtx < 0)
288 double hgcalHad_nvtx =
nHits_to_nvtx_funcs[
"hgcalHad"].Eval(i_hgcalHad_hits_leq_threshold);
289 if (hgcalHad_nvtx < 0)
294 double EstimatedNvtx = (hgcalEM_nvtx + hgcalHad_nvtx + hf_nvtx) / 3.;
312 for (
auto it = hgcalTowerColl.
begin(0);
it != hgcalTowerColl.
end(0);
it++) {
313 float eta =
it->eta();
316 ieta = 19 -
it->id().iEta();
318 ieta = 20 +
it->id().iEta();
321 int iphi =
it->id().iPhi();
323 float hgcal_etEm =
it->etEm();
324 float hgcal_etHad =
it->etHad();
327 etaKey =
"er1p4to1p8";
329 etaKey =
"er1p8to2p1";
331 etaKey =
"er2p1to2p4";
333 etaKey =
"er2p4to2p7";
335 etaKey =
"er2p7to3p1";
336 if (!etaKey.empty()) {
345 if ((
it->etEm() +
it->etHad() > 1.) &&
abs(
eta) > 1.479)
370 double et = decoder.hcaletValue(
hit.
id(),
hit.t0());
393 if ((ieta < 2 || ieta >=
nHfEta - 2) &&
iphi % 4 == 2) {
399 hfTowers[2 *
ieta][0] =
et / 8;
400 hfTowers[2 *
ieta + 1][0] =
et / 8;
401 hfTowers[2 *
ieta][1] =
et / 8;
402 hfTowers[2 *
ieta + 1][1] =
et / 8;
423 vector<l1tp2::Phase2L1CaloJet> halfBarrelJets, halfHgcalJets, halfHfJets;
424 halfBarrelJets.clear();
425 halfHgcalJets.clear();
427 vector<l1tp2::Phase2L1CaloJet>
allJets;
430 for (
int k = 0;
k < 2;
k++) {
431 halfBarrelJets.clear();
432 halfHgcalJets.clear();
448 float TTseedThresholdBarrel = 5.;
453 int gctjeteta =
jet[
i].etaCenter;
454 int gctjetphi =
jet[
i].phiCenter;
457 float jeteta = realEta[gctjeteta +
k *
nBarrelEta / 2][gctjetphi];
458 float jetphi = realPhi[gctjeteta +
k *
nBarrelEta / 2][gctjetphi];
464 int gcttowereta =
jet[
i].etaMax;
465 int gcttowerphi =
jet[
i].phiMax;
468 float towereta = realEta[gcttowereta +
k *
nBarrelEta / 2][gcttowerphi];
469 float towerphi = realPhi[gcttowereta +
k *
nBarrelEta / 2][gcttowerphi];
473 tempJetp4.SetPt(tempJet.
jetEt());
474 tempJetp4.SetEta(tempJet.
jetEta());
475 tempJetp4.SetPhi(tempJet.
jetPhi());
477 tempJet.
setP4(tempJetp4);
480 halfBarrelJets.push_back(tempJet);
495 float TTseedThresholdEndcap = 3.;
499 int hgcaljeteta =
jet[
i].etaCenter;
500 int hgcaljetphi =
jet[
i].phiCenter;
503 float jeteta = hgcalEta[hgcaljeteta +
k *
nHgcalEta / 2][hgcaljetphi];
504 float jetphi = hgcalPhi[hgcaljeteta +
k *
nHgcalEta / 2][hgcaljetphi];
510 int hgcaltowereta =
jet[
i].etaMax;
511 int hgcaltowerphi =
jet[
i].phiMax;
514 float towereta = hgcalEta[hgcaltowereta +
k *
nHgcalEta / 2][hgcaltowerphi];
515 float towerphi = hgcalPhi[hgcaltowereta +
k *
nHgcalEta / 2][hgcaltowerphi];
519 tempJetp4.SetPt(tempJet.
jetEt());
520 tempJetp4.SetEta(tempJet.
jetEta());
521 tempJetp4.SetPhi(tempJet.
jetPhi());
523 tempJet.
setP4(tempJetp4);
526 halfHgcalJets.push_back(tempJet);
541 float TTseedThresholdHF = 3.;
545 int hfjeteta =
jet[
i].etaCenter / 2;
546 int hfjetphi =
jet[
i].phiCenter;
549 float jeteta = hfEta[hfjeteta +
k *
nHfEta / 2][hfjetphi];
550 float jetphi = hfPhi[hfjeteta +
k *
nHfEta / 2][hfjetphi];
556 int hftowereta =
jet[
i].etaMax / 2;
557 int hftowerphi =
jet[
i].phiMax;
560 float towereta = hfEta[hftowereta +
k *
nHfEta / 2][hftowerphi];
561 float towerphi = hfPhi[hftowereta +
k *
nHfEta / 2][hftowerphi];
565 tempJetp4.SetPt(tempJet.
jetEt());
566 tempJetp4.SetEta(tempJet.
jetEta());
567 tempJetp4.SetPhi(tempJet.
jetPhi());
569 tempJet.
setP4(tempJetp4);
572 halfHfJets.push_back(tempJet);
580 for (
size_t i = 0;
i < halfHgcalJets.size();
i++) {
581 if (halfHgcalJets.at(
i).jetIEta() >= (
nHgcalEta / 2 - 2) && halfHgcalJets.at(
i).jetIEta() < (
nHgcalEta / 2 + 2)) {
582 float hgcal_ieta =
k *
nBarrelEta + halfHgcalJets.at(
i).jetIEta();
583 for (
size_t j = 0;
j < halfBarrelJets.size();
j++) {
584 float barrel_ieta =
nHgcalEta / 2 + halfBarrelJets.at(
j).jetIEta();
585 if (
abs(barrel_ieta - hgcal_ieta) <= 2 &&
586 abs(halfBarrelJets.at(
j).jetIPhi() - halfHgcalJets.at(
i).jetIPhi()) <= 2) {
587 float totalet = halfBarrelJets.at(
j).jetEt() + halfHgcalJets.at(
i).jetEt();
588 float totalTauEt = halfBarrelJets.at(
j).tauEt() + halfHgcalJets.at(
i).tauEt();
589 if (halfBarrelJets.at(
j).jetEt() > halfHgcalJets.at(
i).jetEt()) {
590 halfHgcalJets.at(
i).setJetEt(0.);
591 halfHgcalJets.at(
i).setTauEt(0.);
592 halfBarrelJets.at(
j).setJetEt(totalet);
593 halfBarrelJets.at(
j).setTauEt(totalTauEt);
595 tempJetp4.SetPt(totalet);
596 tempJetp4.SetEta(halfBarrelJets.at(
j).jetEta());
597 tempJetp4.SetPhi(halfBarrelJets.at(
j).jetPhi());
599 halfBarrelJets.at(
j).setP4(tempJetp4);
601 halfHgcalJets.at(
i).setJetEt(totalet);
602 halfHgcalJets.at(
i).setTauEt(totalTauEt);
603 halfBarrelJets.at(
j).setJetEt(0.);
604 halfBarrelJets.at(
j).setTauEt(0.);
606 tempJetp4.SetPt(totalet);
607 tempJetp4.SetEta(halfHgcalJets.at(
i).jetEta());
608 tempJetp4.SetPhi(halfHgcalJets.at(
i).jetPhi());
610 halfHgcalJets.at(
i).setP4(tempJetp4);
614 }
else if (halfHgcalJets.at(
i).jetIEta() < 2 || halfHgcalJets.at(
i).jetIEta() >= (
nHgcalEta - 2)) {
616 for (
size_t j = 0;
j < halfHfJets.size();
j++) {
618 if (
abs(hgcal_ieta - hf_ieta) < 3 &&
abs(halfHfJets.at(
j).jetIPhi() - halfHgcalJets.at(
i).jetIPhi()) < 3) {
619 float totalet = halfHfJets.at(
j).jetEt() + halfHgcalJets.at(
i).jetEt();
620 float totalTauEt = halfHfJets.at(
j).tauEt() + halfHgcalJets.at(
i).tauEt();
621 if (halfHfJets.at(
j).jetEt() > halfHgcalJets.at(
i).jetEt()) {
622 halfHgcalJets.at(
i).setJetEt(0.);
623 halfHgcalJets.at(
i).setTauEt(0.);
624 halfHfJets.at(
j).setJetEt(totalet);
625 halfHfJets.at(
j).setTauEt(totalTauEt);
627 tempJetp4.SetPt(totalet);
628 tempJetp4.SetEta(halfHfJets.at(
j).jetEta());
629 tempJetp4.SetPhi(halfHfJets.at(
j).jetPhi());
631 halfHfJets.at(
j).setP4(tempJetp4);
633 halfHgcalJets.at(
i).setJetEt(totalet);
634 halfHgcalJets.at(
i).setTauEt(totalTauEt);
635 halfHfJets.at(
j).setJetEt(0.);
636 halfHfJets.at(
j).setTauEt(0.);
638 tempJetp4.SetPt(totalet);
639 tempJetp4.SetEta(halfHgcalJets.at(
i).jetEta());
640 tempJetp4.SetPhi(halfHgcalJets.at(
i).jetPhi());
642 halfHgcalJets.at(
i).setP4(tempJetp4);
651 vector<l1tp2::Phase2L1CaloJet> halfAllJets;
655 for (
size_t i = 0;
i < halfBarrelJets.size();
i++) {
656 if (halfBarrelJets.at(
i).jetEt() > 0. &&
i < 6)
657 halfAllJets.push_back(halfBarrelJets.at(
i));
661 for (
size_t i = 0;
i < halfHgcalJets.size();
i++) {
662 if (halfHgcalJets.at(
i).jetEt() > 0. &&
i < 6)
663 halfAllJets.push_back(halfHgcalJets.at(
i));
667 for (
size_t i = 0;
i < halfHfJets.size();
i++) {
668 if (halfHfJets.at(
i).jetEt() > 0. &&
i < 6)
669 halfAllJets.push_back(halfHfJets.at(
i));
673 for (
size_t i = 0;
i < halfAllJets.size();
i++) {
674 if (halfAllJets.at(
i).jetEt() > 0. &&
i < 6)
675 allJets.push_back(halfAllJets.at(
i));
690 float tmp_jet_pt = jet_pt;
691 if (tmp_jet_pt > 499)
696 size_t eta_index = 0;
699 if (abs_eta <= 1.5) {
714 else if (abs_eta <= 3.0)
747 return jet_pt *
calib;
753 float tmp_tau_pt =
tau_pt;
754 if (tmp_tau_pt > 199)
759 size_t eta_index = 0;
762 if (abs_eta <= 1.5) {
777 else if (abs_eta <= 3.0)
805 nHits_params_validator.
add<
string>(
"fit",
"type");
806 nHits_params_validator.add<vector<double>>(
"nHits_params", {1., 1.});
807 std::vector<edm::ParameterSet> nHits_params_default;
810 nHits_params1.
addParameter<vector<double>>(
"nHits_params", {157.522, 0.090});
811 nHits_params_default.push_back(nHits_params1);
814 nHits_params2.
addParameter<vector<double>>(
"nHits_params", {159.295, 0.178});
815 nHits_params_default.push_back(nHits_params2);
818 nHits_params3.
addParameter<vector<double>>(
"nHits_params", {165.706, 0.153});
819 nHits_params_default.push_back(nHits_params3);
820 desc.addVPSet(
"nHits_to_nvtx_params", nHits_params_validator, nHits_params_default);
823 nvtx_params_validator.
add<
string>(
"calo",
"type");
824 nvtx_params_validator.
add<
string>(
"iEta",
"etaregion");
825 nvtx_params_validator.
add<vector<double>>(
"nvtx_params", {1., 1.});
826 std::vector<edm::ParameterSet> nvtx_params_default;
829 nvtx_params1.
addParameter<
string>(
"iEta",
"er1p4to1p8");
830 nvtx_params1.
addParameter<vector<double>>(
"nvtx_params", {-0.011772, 0.004142});
831 nvtx_params_default.push_back(nvtx_params1);
834 nvtx_params2.
addParameter<
string>(
"iEta",
"er1p8to2p1");
835 nvtx_params2.
addParameter<vector<double>>(
"nvtx_params", {-0.015488, 0.005410});
836 nvtx_params_default.push_back(nvtx_params2);
839 nvtx_params3.
addParameter<
string>(
"iEta",
"er2p1to2p4");
840 nvtx_params3.
addParameter<vector<double>>(
"nvtx_params", {-0.021150, 0.006078});
841 nvtx_params_default.push_back(nvtx_params3);
844 nvtx_params4.
addParameter<
string>(
"iEta",
"er2p4to2p7");
845 nvtx_params4.
addParameter<vector<double>>(
"nvtx_params", {-0.015705, 0.005339});
846 nvtx_params_default.push_back(nvtx_params4);
849 nvtx_params5.
addParameter<
string>(
"iEta",
"er2p7to3p1");
850 nvtx_params5.
addParameter<vector<double>>(
"nvtx_params", {-0.018492, 0.005620});
851 nvtx_params_default.push_back(nvtx_params5);
854 nvtx_params6.
addParameter<
string>(
"iEta",
"er1p4to1p8");
855 nvtx_params6.
addParameter<vector<double>>(
"nvtx_params", {0.005675, 0.000615});
856 nvtx_params_default.push_back(nvtx_params6);
859 nvtx_params7.
addParameter<
string>(
"iEta",
"er1p8to2p1");
860 nvtx_params7.
addParameter<vector<double>>(
"nvtx_params", {0.004560, 0.001099});
861 nvtx_params_default.push_back(nvtx_params7);
864 nvtx_params8.
addParameter<
string>(
"iEta",
"er2p1to2p4");
865 nvtx_params8.
addParameter<vector<double>>(
"nvtx_params", {0.000036, 0.001608});
866 nvtx_params_default.push_back(nvtx_params8);
869 nvtx_params9.
addParameter<
string>(
"iEta",
"er2p4to2p7");
870 nvtx_params9.
addParameter<vector<double>>(
"nvtx_params", {0.000869, 0.001754});
871 nvtx_params_default.push_back(nvtx_params9);
874 nvtx_params10.
addParameter<
string>(
"iEta",
"er2p7to3p1");
875 nvtx_params10.
addParameter<vector<double>>(
"nvtx_params", {-0.006574, 0.003134});
876 nvtx_params_default.push_back(nvtx_params10);
880 nvtx_params11.
addParameter<vector<double>>(
"nvtx_params", {-0.203291, 0.044096});
881 nvtx_params_default.push_back(nvtx_params11);
885 nvtx_params12.
addParameter<vector<double>>(
"nvtx_params", {-0.210922, 0.045628});
886 nvtx_params_default.push_back(nvtx_params12);
890 nvtx_params13.
addParameter<vector<double>>(
"nvtx_params", {-0.229562, 0.050560});
891 nvtx_params_default.push_back(nvtx_params13);
892 desc.addVPSet(
"nvtx_to_PU_sub_params", nvtx_params_validator, nvtx_params_default);
894 desc.add<vector<double>>(
"jetPtBins", {0.0, 5.0, 7.5, 10.0, 12.5, 15.0, 17.5, 20.0, 22.5, 25.0, 27.5,
895 30.0, 35.0, 40.0, 45.0, 50.0, 55.0, 60.0, 65.0, 70.0, 75.0, 80.0,
896 85.0, 90.0, 95.0, 100.0, 110.0, 120.0, 130.0, 140.0, 150.0, 160.0, 170.0,
897 180.0, 190.0, 200.0, 225.0, 250.0, 275.0, 300.0, 325.0, 400.0, 500.0});
898 desc.add<vector<double>>(
"absEtaBinsBarrel", {0.00, 0.30, 0.60, 1.00, 1.50});
899 desc.add<vector<double>>(
900 "jetCalibrationsBarrel",
901 {2.459, 2.320, 2.239, 2.166, 2.100, 2.040, 1.986, 1.937, 1.892, 1.852, 1.816, 1.768, 1.714, 1.670, 1.633, 1.603,
902 1.578, 1.557, 1.540, 1.525, 1.513, 1.502, 1.493, 1.486, 1.479, 1.470, 1.460, 1.452, 1.445, 1.439, 1.433, 1.427,
903 1.422, 1.417, 1.411, 1.403, 1.390, 1.377, 1.365, 1.352, 1.327, 1.284, 4.695, 3.320, 2.751, 2.361, 2.093, 1.908,
904 1.781, 1.694, 1.633, 1.591, 1.562, 1.533, 1.511, 1.499, 1.492, 1.486, 1.482, 1.478, 1.474, 1.470, 1.467, 1.463,
905 1.459, 1.456, 1.452, 1.447, 1.440, 1.433, 1.425, 1.418, 1.411, 1.404, 1.397, 1.390, 1.382, 1.370, 1.352, 1.334,
906 1.316, 1.298, 1.262, 1.200, 5.100, 3.538, 2.892, 2.448, 2.143, 1.933, 1.789, 1.689, 1.620, 1.572, 1.539, 1.506,
907 1.482, 1.469, 1.460, 1.455, 1.450, 1.446, 1.442, 1.438, 1.434, 1.431, 1.427, 1.423, 1.420, 1.414, 1.407, 1.400,
908 1.392, 1.385, 1.378, 1.370, 1.363, 1.356, 1.348, 1.336, 1.317, 1.299, 1.281, 1.263, 1.226, 1.162, 3.850, 3.438,
909 3.211, 3.017, 2.851, 2.708, 2.585, 2.479, 2.388, 2.310, 2.243, 2.159, 2.072, 2.006, 1.956, 1.917, 1.887, 1.863,
910 1.844, 1.828, 1.814, 1.802, 1.791, 1.782, 1.773, 1.760, 1.744, 1.729, 1.714, 1.699, 1.685, 1.670, 1.656, 1.641,
911 1.627, 1.602, 1.566, 1.530, 1.494, 1.458, 1.386, 1.260});
912 desc.add<vector<double>>(
"absEtaBinsHGCal", {1.50, 1.90, 2.40, 3.00});
913 desc.add<vector<double>>(
914 "jetCalibrationsHGCal",
915 {5.604, 4.578, 4.061, 3.647, 3.314, 3.047, 2.832, 2.660, 2.521, 2.410, 2.320, 2.216, 2.120, 2.056,
916 2.013, 1.983, 1.961, 1.945, 1.932, 1.922, 1.913, 1.905, 1.898, 1.891, 1.884, 1.874, 1.861, 1.848,
917 1.835, 1.822, 1.810, 1.797, 1.784, 1.771, 1.759, 1.736, 1.704, 1.673, 1.641, 1.609, 1.545, 1.434,
918 4.385, 3.584, 3.177, 2.849, 2.584, 2.370, 2.197, 2.057, 1.944, 1.853, 1.780, 1.695, 1.616, 1.564,
919 1.530, 1.507, 1.491, 1.480, 1.472, 1.466, 1.462, 1.459, 1.456, 1.453, 1.451, 1.447, 1.443, 1.439,
920 1.435, 1.431, 1.427, 1.423, 1.419, 1.416, 1.412, 1.405, 1.395, 1.385, 1.376, 1.366, 1.346, 1.312,
921 562.891, 68.647, 17.648, 5.241, 2.223, 1.490, 1.312, 1.270, 1.260, 1.259, 1.259, 1.260, 1.263, 1.265,
922 1.267, 1.269, 1.271, 1.273, 1.275, 1.277, 1.279, 1.281, 1.283, 1.285, 1.287, 1.290, 1.295, 1.299,
923 1.303, 1.307, 1.311, 1.315, 1.319, 1.323, 1.328, 1.335, 1.345, 1.355, 1.366, 1.376, 1.397, 1.433});
924 desc.add<vector<double>>(
"absEtaBinsHF", {3.00, 3.60, 6.00});
925 desc.add<vector<double>>(
927 {8.169, 6.873, 6.155, 5.535, 5.001, 4.539, 4.141, 3.798, 3.501, 3.245, 3.024, 2.748, 2.463, 2.249,
928 2.090, 1.971, 1.881, 1.814, 1.763, 1.725, 1.695, 1.673, 1.655, 1.642, 1.631, 1.618, 1.605, 1.596,
929 1.588, 1.581, 1.575, 1.569, 1.563, 1.557, 1.551, 1.541, 1.527, 1.513, 1.498, 1.484, 1.456, 1.406,
930 2.788, 2.534, 2.388, 2.258, 2.141, 2.037, 1.945, 1.862, 1.788, 1.722, 1.664, 1.587, 1.503, 1.436,
931 1.382, 1.339, 1.305, 1.277, 1.255, 1.237, 1.223, 1.211, 1.201, 1.193, 1.186, 1.178, 1.170, 1.164,
932 1.159, 1.154, 1.151, 1.147, 1.144, 1.141, 1.138, 1.133, 1.126, 1.118, 1.111, 1.104, 1.090, 1.064});
933 desc.add<vector<double>>(
"tauPtBins", {0.0, 5.0, 7.5, 10.0, 12.5, 15.0, 20.0, 25.0, 30.0, 35.0,
934 40.0, 45.0, 50.0, 55.0, 60.0, 70.0, 80.0, 100.0, 150.0, 200.0});
935 desc.add<vector<double>>(
"tauAbsEtaBinsBarrel", {0.00, 0.30, 0.60, 1.00, 1.50});
936 desc.add<vector<double>>(
"tauCalibrationsBarrel",
937 {1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.067,
938 1.067, 1.067, 1.067, 1.067, 1.067, 1.067, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106,
939 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.106, 1.102,
940 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102, 1.102,
941 1.102, 1.102, 1.102, 1.102, 1.102, 1.139, 1.139, 1.139, 1.139, 1.139, 1.139, 1.139, 1.139});
942 desc.add<vector<double>>(
"tauAbsEtaBinsHGCal", {1.50, 1.90, 2.40, 3.00});
943 desc.add<vector<double>>(
944 "tauCalibrationsHGCal",
945 {1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384, 1.384,
946 1.384, 1.384, 1.384, 1.384, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473,
947 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.473, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133,
948 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133, 1.133});
std::vector< reco::JetBaseRef > allJets(const Container &)
fill list of all jets associated with values. Return # of jets in the list
void addWithDefaultLabel(ParameterSetDescription const &psetDescription)
std::vector< double > jetPtBins
std::map< std::string, TF1 > hgcalEM_nvtx_to_PU_sub_funcs
std::map< std::string, TF1 > hgcalHad_nvtx_to_PU_sub_funcs
std::map< std::string, std::map< std::string, TF1 > > all_nvtx_to_PU_sub_funcs
static constexpr int nBarrelPhi
void setTowerEt(float towerEtIn)
std::vector< double > tauPtBins
void setTowerIEta(int towerIEtaIn)
std::vector< double > jetCalibrationsBarrel
T const & getData(const ESGetToken< T, R > &iToken) const noexcept(false)
std::vector< std::vector< double > > calibrationsBarrel
void makeST_hf(const float hfTowers[nHfEta][nHfPhi], GCTsupertower_t supertower_return[nSTEta][nSTPhi])
static constexpr int nSTEta
void produce(edm::Event &, const edm::EventSetup &) override
T const * product() const
std::map< std::string, TF1 > nHits_to_nvtx_funcs
static constexpr int nHgcalEta
std::vector< double > tauCalibrationsHGCal
static constexpr int nJets
std::vector< double > absEtaBinsHGCal
edm::EDGetTokenT< l1t::HGCalTowerBxCollection > hgcalTowerToken_
const_iterator begin(int bx) const
static constexpr int nHfPhi
std::vector< edm::ParameterSet > nHits_to_nvtx_params
BXVector< HGCalTower > HGCalTowerBxCollection
float get_tau_pt_calibration(const float &tau_pt, const float &tau_eta) const
std::vector< std::vector< double > > calibrationsHGCal
static constexpr int nSTPhi
void addParameter(std::string const &name, T const &value)
Abs< T >::type abs(const T &t)
std::vector< double > jetCalibrationsHF
#define DEFINE_FWK_MODULE(type)
std::vector< std::vector< double > > calibrationsHF
void setTauEt(float tauEtIn)
ParameterDescriptionBase * add(U const &iLabel, T const &value)
void setTowerPhi(float towerPhiIn)
void setJetIPhi(int jetIPhiIn)
std::vector< double > tauAbsEtaBinsHGCal
edm::ESGetToken< CaloTPGTranscoder, CaloTPGRecord > decoderTag_
std::map< std::string, TF1 > hf_nvtx_to_PU_sub_funcs
std::vector< std::vector< double > > tauPtCalibrationsHGCal
void makeST(const float GCTintTowers[nBarrelEta/2][nBarrelPhi], GCTsupertower_t supertower_return[nSTEta][nSTPhi])
static constexpr int nHgcalPhi
void setTowerEta(float towerEtaIn)
const_iterator end(int bx) const
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
void makeST_hgcal(const float hgcalTowers[nHgcalEta/2][nHgcalPhi], GCTsupertower_t supertower_return[nSTEta][nSTPhi])
edm::EDGetTokenT< HcalTrigPrimDigiCollection > hfToken_
std::vector< double > absEtaBinsBarrel
static constexpr int nBarrelEta
std::vector< double > tauCalibrationsBarrel
static constexpr int nHfEta
Phase2L1CaloJetEmulator(const edm::ParameterSet &)
std::vector< double > tauAbsEtaBinsBarrel
~Phase2L1CaloJetEmulator() override
std::vector< edm::ParameterSet > nvtx_to_PU_sub_params
jetInfo getRegion(GCTsupertower_t temp[nSTEta][nSTPhi], float TTseedThreshold)
std::vector< double > absEtaBinsHF
void setTowerIPhi(int towerIPhiIn)
void setJetEt(float jetEtIn)
void setJetIEta(int jetIEtaIn)
std::vector< std::vector< double > > tauPtCalibrationsBarrel
edm::EDGetTokenT< l1tp2::CaloTowerCollection > caloTowerToken_
bool compareByEt(l1tp2::Phase2L1CaloJet i, l1tp2::Phase2L1CaloJet j)
void setP4(const LorentzVector &p4) final
set 4-momentum
void setJetPhi(float jetPhiIn)
float get_jet_pt_calibration(const float &jet_pt, const float &jet_eta) const
std::vector< double > jetCalibrationsHGCal
void setJetEta(float jetEtaIn)
math::PtEtaPhiMLorentzVector PolarLorentzVector
Lorentz vector.