271 std::stringstream
text;
278 for (
int ibx = gmuons->getFirstBX(); ibx <= gmuons->getLastBX(); ++ibx) {
279 for (
auto itr = gmuons->begin(ibx); itr != gmuons->end(ibx); ++itr) {
281 het_.at(
gMU)->Fill(itr->hwPt());
282 heta_.at(
gMU)->Fill(itr->hwEtaAtVtx());
283 hphi_.at(
gMU)->Fill(itr->hwPhiAtVtx());
284 hetaphi_.at(
gMU)->Fill(itr->hwEtaAtVtx(), itr->hwPhiAtVtx(), itr->hwPt());
287 <<
" BX=" << ibx <<
" ipt=" << itr->hwPt() <<
" ieta=" << itr->hwEtaAtVtx()
288 <<
" iphi=" << itr->hwPhiAtVtx() << std::endl;
298 for (
int ibx = dmxegs->getFirstBX(); ibx <= dmxegs->getLastBX(); ++ibx) {
299 for (
auto itr = dmxegs->begin(ibx); itr != dmxegs->end(ibx); ++itr) {
304 hetaphi_.at(
DmxEG)->Fill(itr->hwEta(), itr->hwPhi(), itr->hwPt());
307 <<
" BX=" << ibx <<
" ipt=" << itr->hwPt() <<
" ieta=" << itr->hwEta() <<
" iphi=" << itr->hwPhi()
318 for (
int ibx = dmxtaus->getFirstBX(); ibx <= dmxtaus->getLastBX(); ++ibx) {
319 for (
auto itr = dmxtaus->begin(ibx); itr != dmxtaus->end(ibx); ++itr) {
324 hetaphi_.at(
DmxTau)->Fill(itr->hwEta(), itr->hwPhi(), itr->hwPt());
327 <<
" BX=" << ibx <<
" ipt=" << itr->hwPt() <<
" ieta=" << itr->hwEta() <<
" iphi=" << itr->hwPhi()
338 for (
int ibx = dmxjets->getFirstBX(); ibx <= dmxjets->getLastBX(); ++ibx) {
339 for (
auto itr = dmxjets->begin(ibx); itr != dmxjets->end(ibx); ++itr) {
344 hetaphi_.at(
DmxJet)->Fill(itr->hwEta(), itr->hwPhi(), itr->hwPt());
347 <<
" BX=" << ibx <<
" ipt=" << itr->hwPt() <<
" ieta=" << itr->hwEta() <<
" iphi=" << itr->hwPhi()
358 for (
int ibx = dmxsums->getFirstBX(); ibx <= dmxsums->getLastBX(); ++ibx) {
359 for (
auto itr = dmxsums->begin(ibx); itr != dmxsums->end(ibx); ++itr) {
364 hetaphi_.at(
DmxSum)->Fill(itr->hwEta(), itr->hwPhi(), itr->hwPt());
367 <<
" type=" << itr->getType() <<
" BX=" << ibx <<
" ipt=" << itr->hwPt() <<
" ieta=" << itr->hwEta()
368 <<
" iphi=" << itr->hwPhi() << std::endl;
378 for (
int ibx =
muons->getFirstBX(); ibx <=
muons->getLastBX(); ++ibx) {
379 for (
auto itr =
muons->begin(ibx); itr !=
muons->end(ibx); ++itr) {
381 het_.at(
MU)->Fill(itr->hwPt());
382 heta_.at(
MU)->Fill(itr->hwEtaAtVtx());
383 hphi_.at(
MU)->Fill(itr->hwPhiAtVtx());
384 hetaphi_.at(
MU)->Fill(itr->hwEtaAtVtx(), itr->hwPhiAtVtx(), itr->hwPt());
387 <<
" BX=" << ibx <<
" ipt=" << itr->hwPt() <<
" ieta=" << itr->hwEtaAtVtx()
388 <<
" iphi=" << itr->hwPhiAtVtx() << std::endl;
398 for (
int ibx = egs->getFirstBX(); ibx <= egs->getLastBX(); ++ibx) {
399 for (
auto itr = egs->begin(ibx); itr != egs->end(ibx); ++itr) {
401 het_.at(
EG)->Fill(itr->hwPt());
402 heta_.at(
EG)->Fill(itr->hwEta());
403 hphi_.at(
EG)->Fill(itr->hwPhi());
404 hetaphi_.at(
EG)->Fill(itr->hwEta(), itr->hwPhi(), itr->hwPt());
407 <<
" BX=" << ibx <<
" ipt=" << itr->hwPt() <<
" ieta=" << itr->hwEta() <<
" iphi=" << itr->hwPhi()
418 for (
int ibx =
taus->getFirstBX(); ibx <=
taus->getLastBX(); ++ibx) {
419 for (
auto itr =
taus->begin(ibx); itr !=
taus->end(ibx); ++itr) {
421 het_.at(
Tau)->Fill(itr->hwPt());
424 hetaphi_.at(
Tau)->Fill(itr->hwEta(), itr->hwPhi(), itr->hwPt());
427 <<
" BX=" << ibx <<
" ipt=" << itr->hwPt() <<
" ieta=" << itr->hwEta() <<
" iphi=" << itr->hwPhi()
438 for (
int ibx =
jets->getFirstBX(); ibx <=
jets->getLastBX(); ++ibx) {
439 for (
auto itr =
jets->begin(ibx); itr !=
jets->end(ibx); ++itr) {
441 het_.at(
Jet)->Fill(itr->hwPt());
444 hetaphi_.at(
Jet)->Fill(itr->hwEta(), itr->hwPhi(), itr->hwPt());
447 <<
" BX=" << ibx <<
" ipt=" << itr->hwPt() <<
" ieta=" << itr->hwEta() <<
" iphi=" << itr->hwPhi()
458 for (
int ibx = sums->getFirstBX(); ibx <= sums->getLastBX(); ++ibx) {
459 for (
auto itr = sums->begin(ibx); itr != sums->end(ibx); ++itr) {
461 het_.at(
Sum)->Fill(itr->hwPt());
464 hetaphi_.at(
Sum)->Fill(itr->hwEta(), itr->hwPhi(), itr->hwPt());
466 <<
" type=" << itr->getType() <<
" BX=" << ibx <<
" ipt=" << itr->hwPt() <<
" ieta=" << itr->hwEta()
467 <<
" iphi=" << itr->hwPhi() << std::endl;
477 for (
int ibx = algs->getFirstBX(); ibx <= algs->getLastBX(); ++ibx) {
478 for (
auto itr = algs->begin(ibx); itr != algs->end(ibx); ++itr) {
479 for (
int algBit = 0; algBit < 128;
481 if (itr->getAlgoDecisionFinal(algBit)) {
483 text <<
"HW Fired Alg Bit : " << algBit << std::endl;
495 for (
int ibx = emulGtAlgs->getFirstBX(); ibx <= emulGtAlgs->getLastBX(); ++ibx) {
496 for (
auto itr = emulGtAlgs->begin(ibx); itr != emulGtAlgs->end(ibx); ++itr) {
497 for (
int algBit = 0; algBit < 128;
499 if (itr->getAlgoDecisionFinal(algBit)) {
501 text <<
"Emul w/ GTInput Fired Alg Bit : " << algBit << std::endl;
513 for (
int ibx = emulDxAlgs->getFirstBX(); ibx <= emulDxAlgs->getLastBX(); ++ibx) {
514 for (
auto itr = emulDxAlgs->begin(ibx); itr != emulDxAlgs->end(ibx); ++itr) {
515 for (
int algBit = 0; algBit < 128;
517 if (itr->getAlgoDecisionFinal(algBit)) {
519 text <<
"Emul w/ Demux output Fired Alg Bit : " << algBit << std::endl;
534 for (
int ibx = mus->getFirstBX(); ibx <= mus->getLastBX(); ++ibx) {
536 for (
unsigned int igtMU = 0; igtMU < mus->size(ibx); igtMU++) {
537 double gtMUEt = mus->at(ibx, igtMU).hwPt();
538 double gmtMUEt = 0.0;
539 if (gmtmus->size(ibx) > igtMU)
540 gmtMUEt = gmtmus->at(ibx, igtMU).hwPt();
543 double gtMUEta = mus->at(ibx, igtMU).hwEtaAtVtx();
544 double gmtMUEta = 0.0;
545 if (gmtmus->size(ibx) > igtMU)
546 gmtMUEta = gmtmus->at(ibx, igtMU).hwEtaAtVtx();
549 double gtMUPhi = mus->at(ibx, igtMU).hwPhiAtVtx();
550 double gmtMUPhi = 0.0;
551 if (gmtmus->size(ibx) > igtMU)
552 gmtMUPhi = gmtmus->at(ibx, igtMU).hwPhiAtVtx();
556 for (
unsigned int igmtMU = mus->size(ibx); igmtMU < gmtmus->size(ibx); igmtMU++) {
558 double gmtMUEt = gmtmus->at(ibx, igmtMU).hwPt();
561 double gtMUEta = 0.0;
562 double gmtMUEta = gmtmus->at(ibx, igmtMU).hwEtaAtVtx();
565 double gtMUPhi = 0.0;
566 double gmtMUPhi = gmtmus->at(ibx, igmtMU).hwPhiAtVtx();
580 for (
int ibx = egs->getFirstBX(); ibx <= egs->getLastBX(); ++ibx) {
582 for (
unsigned int igtEG = 0; igtEG < egs->size(ibx); igtEG++) {
583 double gtEGEt = egs->at(ibx, igtEG).hwPt();
584 double dmxEGEt = 0.0;
585 if (dmxegs->size(ibx) > igtEG)
586 dmxEGEt = dmxegs->at(ibx, igtEG).hwPt();
589 double gtEGEta = egs->at(ibx, igtEG).hwEta();
590 double dmxEGEta = 0.0;
591 if (dmxegs->size(ibx) > igtEG)
592 dmxEGEta = dmxegs->at(ibx, igtEG).hwEta();
595 double gtEGPhi = egs->at(ibx, igtEG).hwPhi();
596 double dmxEGPhi = 0.0;
597 if (dmxegs->size(ibx) > igtEG)
598 dmxEGPhi = dmxegs->at(ibx, igtEG).hwPhi();
602 for (
unsigned int idmEG = egs->size(ibx); idmEG < dmxegs->size(ibx); idmEG++) {
604 double dmxEGEt = dmxegs->at(ibx, idmEG).hwPt();
607 double gtEGEta = 0.0;
608 double dmxEGEta = dmxegs->at(ibx, idmEG).hwEta();
611 double gtEGPhi = 0.0;
612 double dmxEGPhi = dmxegs->at(ibx, idmEG).hwPhi();
626 for (
int ibx =
taus->getFirstBX(); ibx <=
taus->getLastBX(); ++ibx) {
628 for (
unsigned int igtTau = 0; igtTau <
taus->size(ibx); igtTau++) {
629 double gtTauEt =
taus->at(ibx, igtTau).hwPt();
630 double dmxTauEt = 0.0;
631 if (dmxtaus->size(ibx) > igtTau)
632 dmxTauEt = dmxtaus->at(ibx, igtTau).hwPt();
635 double gtTauEta =
taus->at(ibx, igtTau).hwEta();
636 double dmxTauEta = 0.0;
637 if (dmxtaus->size(ibx) > igtTau)
638 dmxTauEta = dmxtaus->at(ibx, igtTau).hwEta();
641 double gtTauPhi =
taus->at(ibx, igtTau).hwPhi();
642 double dmxTauPhi = 0.0;
643 if (dmxtaus->size(ibx) > igtTau)
644 dmxTauPhi = dmxtaus->at(ibx, igtTau).hwPhi();
648 for (
unsigned int idmTau =
taus->size(ibx); idmTau < dmxtaus->size(ibx); idmTau++) {
649 double gtTauEt = 0.0;
650 double dmxTauEt = dmxtaus->at(ibx, idmTau).hwPt();
653 double gtTauEta = 0.0;
654 double dmxTauEta = dmxtaus->at(ibx, idmTau).hwEta();
657 double gtTauPhi = 0.0;
658 double dmxTauPhi = dmxtaus->at(ibx, idmTau).hwPhi();
672 for (
int ibx =
jets->getFirstBX(); ibx <=
jets->getLastBX(); ++ibx) {
674 for (
unsigned int igtJ = 0; igtJ <
jets->size(ibx); igtJ++) {
675 double gtJetEt =
jets->at(ibx, igtJ).hwPt();
676 double dmxJetEt = 0.0;
677 if (dmxjets->size(ibx) > igtJ)
678 dmxJetEt = dmxjets->at(ibx, igtJ).hwPt();
681 double gtJetEta =
jets->at(ibx, igtJ).hwEta();
682 double dmxJetEta = 0.0;
683 if (dmxjets->size(ibx) > igtJ)
684 dmxJetEta = dmxjets->at(ibx, igtJ).hwEta();
687 double gtJetPhi =
jets->at(ibx, igtJ).hwPhi();
688 double dmxJetPhi = 0.0;
689 if (dmxjets->size(ibx) > igtJ)
690 dmxJetPhi = dmxjets->at(ibx, igtJ).hwPhi();
694 for (
unsigned int idmJ =
jets->size(ibx); idmJ < dmxjets->size(ibx); idmJ++) {
695 double gtJetEt = 0.0;
696 double dmxJetEt = dmxjets->at(ibx, idmJ).hwPt();
699 double gtJetEta = 0.0;
700 double dmxJetEta = dmxjets->at(ibx, idmJ).hwEta();
703 double gtJetPhi = 0.0;
704 double dmxJetPhi = dmxjets->at(ibx, idmJ).hwPhi();
718 for (
int ibx = sums->getFirstBX(); ibx <= sums->getLastBX(); ++ibx) {
720 for (
unsigned int igtS = 0; igtS < sums->size(ibx); igtS++) {
721 double gtSumEt = sums->at(ibx, igtS).hwPt();
722 double dmxSumEt = 0.0;
723 if (dmxSums->size(ibx) > igtS)
724 dmxSumEt = dmxSums->at(ibx, igtS).hwPt();
726 double gtSumPhi = sums->at(ibx, igtS).hwPhi();
727 double dmxSumPhi = 0.0;
728 if (dmxSums->size(ibx) > igtS)
729 dmxSumPhi = dmxSums->at(ibx, igtS).hwPhi();
731 if (sums->at(ibx, igtS).getType() == dmxSums->at(ibx, igtS).getType()) {
732 switch (sums->at(ibx, igtS).getType()) {
773 text <<
"WARNING: EtSum Types do not line up between DeMux and uGT " << std::endl;
777 for (
unsigned int idmS = sums->size(ibx); idmS < dmxSums->size(ibx); idmS++) {
778 double gtSumEt = -1.0;
779 double dmxSumEt = dmxSums->at(ibx, idmS).hwPt();
781 double gtSumPhi = -1.0;
782 double dmxSumPhi = dmxSums->at(ibx, idmS).hwPhi();
784 switch (dmxSums->at(ibx, idmS).getType()) {
827 auto itr = hwalgs->begin(ibx);
828 auto itr_emul = emulAlgs->begin(ibx);
830 for (
int algBit = 0; algBit < 128;
832 bool hw = itr->getAlgoDecisionFinal(algBit);
833 bool em = itr_emul->getAlgoDecisionFinal(algBit);
836 }
else if (hw & !em) {
838 text <<
"WARNING: HW Fnd Alg Bit " << algBit <<
" but emulation did not " << std::endl;
839 }
else if (!hw & em) {
841 text <<
"WARNING: Emul. Fnd Alg Bit " << algBit <<
" but hardware did not " << std::endl;
859 auto itr = hwalgs->begin(ibx);
860 auto itr_emul = emulAlgs->begin(ibx);
862 for (
int algBit = 0; algBit < 128;
864 bool hw = itr->getAlgoDecisionFinal(algBit);
865 bool em = itr_emul->getAlgoDecisionFinal(algBit);
868 }
else if (hw & !em) {
870 }
else if (!hw & em) {
TH2F * hAlgoBitsEmulGtVsHw_
TH2F * hDmxVsGTSumEt_ETMHF_
edm::EDGetToken m_emulDxAlgToken
std::map< ObjectType, TH1F * > het_
edm::EDGetToken m_dmxEGToken
TH2F * hDmxVsGTSumEt_HTM_
edm::EDGetToken m_egToken
TH2F * hDmxVsGTSumPhi_ETM_
std::map< ObjectType, TH1F * > hphi_
edm::EDGetToken m_emulGtAlgToken
edm::EDGetToken m_muToken
TH2F * hDmxVsGTSumEt_HFP1_
TH2F * hDmxVsGTSumEt_ETT_
edm::EDGetToken m_gmuToken
TH2F * hDmxVsGTSumPhi_ETMHF_
edm::EDGetToken m_dmxTauToken
edm::EDGetToken m_gtAlgToken
TH2F * hDmxVsGTSumEt_ETM_
edm::EDGetToken m_sumToken
std::map< ObjectType, TH1F * > hbx_
Log< level::Info, false > LogInfo
std::map< ObjectType, TH2F * > hetaphi_
TH2F * hDmxVsGTSumEt_HTT_
TH2F * hAlgoBitsEmulDxVsHw_
TH2F * hDmxVsGTSumEt_HFM0_
TH2F * hDmxVsGTSumEt_HFM1_
edm::EDGetToken m_dmxSumToken
edm::EDGetToken m_tauToken
TH2F * hDmxVsGTSumEt_ETTem_
TH2F * hDmxVsGTSumPhi_HTM_
edm::EDGetToken m_jetToken
edm::EDGetToken m_dmxJetToken
TH2F * hDmxVsGTSumEt_HFP0_
std::map< ObjectType, TH1F * > heta_