|
|
#include <L1TEGammaOffline.h>
|
| L1TEGammaOffline (const edm::ParameterSet &ps) |
|
| ~L1TEGammaOffline () override |
|
void | accumulate (edm::Event const &event, edm::EventSetup const &setup) override |
|
void | beginRun (edm::Run const &run, edm::EventSetup const &setup) final |
|
| DQMOneEDAnalyzer () |
|
void | endRun (edm::Run const &, edm::EventSetup const &) final |
|
void | endRunProduce (edm::Run &run, edm::EventSetup const &setup) final |
|
virtual bool | getCanSaveByLumi () |
|
| EDProducer ()=default |
|
SerialTaskQueue * | globalLuminosityBlocksQueue () final |
|
SerialTaskQueue * | globalRunsQueue () final |
|
bool | hasAbilityToProduceInBeginLumis () const final |
|
bool | hasAbilityToProduceInBeginRuns () const final |
|
bool | hasAbilityToProduceInEndLumis () const final |
|
bool | hasAbilityToProduceInEndRuns () const final |
|
bool | wantsGlobalLuminosityBlocks () const final |
|
bool | wantsGlobalRuns () const final |
|
| EDProducerBase () |
|
ModuleDescription const & | moduleDescription () const |
|
bool | wantsStreamLuminosityBlocks () const |
|
bool | wantsStreamRuns () const |
|
| ~EDProducerBase () override |
|
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
|
std::vector< edm::ProductResolverIndex > const & | indiciesForPutProducts (BranchType iBranchType) const |
|
| ProducerBase () |
|
std::vector< edm::ProductResolverIndex > const & | putTokenIndexToProductResolverIndex () const |
|
std::vector< bool > const & | recordProvenanceList () const |
|
void | registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &) |
|
std::function< void(BranchDescription const &)> | registrationCallback () const |
| used by the fwk to register list of products More...
|
|
void | resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel) |
|
TypeLabelList const & | typeLabelList () const |
| used by the fwk to register the list of products of this module More...
|
|
| ~ProducerBase () noexcept(false) override |
|
std::vector< ConsumesInfo > | consumesInfo () const |
|
void | convertCurrentProcessAlias (std::string const &processName) |
| Convert "@currentProcess" in InputTag process names to the actual current process name. More...
|
|
| EDConsumerBase () |
|
| EDConsumerBase (EDConsumerBase &&)=default |
|
| EDConsumerBase (EDConsumerBase const &)=delete |
|
ESProxyIndex const * | esGetTokenIndices (edm::Transition iTrans) const |
|
ProductResolverIndexAndSkipBit | indexFrom (EDGetToken, BranchType, TypeID const &) const |
|
void | itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
|
void | itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
|
std::vector< ProductResolverIndexAndSkipBit > const & | itemsToGetFrom (BranchType iType) const |
|
void | labelsForToken (EDGetToken iToken, Labels &oLabels) const |
|
void | modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const |
|
EDConsumerBase & | operator= (EDConsumerBase &&)=default |
|
EDConsumerBase const & | operator= (EDConsumerBase const &)=delete |
|
bool | registeredToConsume (ProductResolverIndex, bool, BranchType) const |
|
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
|
ProductResolverIndexAndSkipBit | uncheckedIndexFrom (EDGetToken) const |
|
void | updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet) |
|
void | updateLookup (eventsetup::ESRecordsToProxyIndices const &) |
|
virtual | ~EDConsumerBase () noexcept(false) |
|
|
void | analyze (edm::Event const &e, edm::EventSetup const &eSetup) override |
|
void | bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override |
|
void | dqmBeginRun (edm::Run const &, edm::EventSetup const &) override |
|
void | dqmEndRun (edm::Run const &run, edm::EventSetup const &eSetup) override |
|
virtual void | bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &)=0 |
|
template<class ProductType > |
BranchAliasSetterT< ProductType > | produces () |
| declare what type of product will make and with which optional label More...
|
|
template<typename ProductType , BranchType B> |
BranchAliasSetterT< ProductType > | produces () |
|
template<typename ProductType , Transition B> |
BranchAliasSetterT< ProductType > | produces () |
|
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
|
template<BranchType B> |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
|
template<Transition B> |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
|
template<typename ProductType , Transition B> |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
|
template<class ProductType > |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
|
template<typename ProductType , BranchType B> |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
|
ProducesCollector | producesCollector () |
|
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
|
template<typename ProductType , BranchType B = InEvent> |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
|
template<BranchType B> |
EDGetToken | consumes (TypeToGet const &id, edm::InputTag const &tag) |
|
ConsumesCollector | consumesCollector () |
| Use a ConsumesCollector to gather consumes information from helper functions. More...
|
|
template<typename ProductType , BranchType B = InEvent> |
void | consumesMany () |
|
void | consumesMany (const TypeToGet &id) |
|
template<BranchType B> |
void | consumesMany (const TypeToGet &id) |
|
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> |
auto | esConsumes () |
|
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> |
auto | esConsumes (ESInputTag const &tag) |
|
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
|
template<BranchType B> |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
|
template<typename ProductType , BranchType B = InEvent> |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
|
|
std::vector< double > | deepInspectionElectronThresholds_ |
|
std::string | efficiencyFolder_ |
|
std::vector< double > | electronEfficiencyBins_ |
|
std::vector< double > | electronEfficiencyThresholds_ |
|
std::map< double, MonitorElement * > | h_efficiencyElectronET_EB_EE_pass_ |
|
std::map< double, MonitorElement * > | h_efficiencyElectronET_EB_EE_total_ |
|
std::map< double, MonitorElement * > | h_efficiencyElectronET_EB_pass_ |
|
std::map< double, MonitorElement * > | h_efficiencyElectronET_EB_total_ |
|
std::map< double, MonitorElement * > | h_efficiencyElectronET_EE_pass_ |
|
std::map< double, MonitorElement * > | h_efficiencyElectronET_EE_total_ |
|
std::map< double, MonitorElement * > | h_efficiencyElectronEta_pass_ |
|
std::map< double, MonitorElement * > | h_efficiencyElectronEta_total_ |
|
std::map< double, MonitorElement * > | h_efficiencyElectronNVertex_pass_ |
|
std::map< double, MonitorElement * > | h_efficiencyElectronNVertex_total_ |
|
std::map< double, MonitorElement * > | h_efficiencyElectronPhi_pass_ |
|
std::map< double, MonitorElement * > | h_efficiencyElectronPhi_total_ |
|
std::map< double, MonitorElement * > | h_efficiencyElectronPhi_vs_Eta_pass_ |
|
std::map< double, MonitorElement * > | h_efficiencyElectronPhi_vs_Eta_total_ |
|
std::map< double, MonitorElement * > | h_efficiencyPhotonET_EB_EE_pass_ |
|
std::map< double, MonitorElement * > | h_efficiencyPhotonET_EB_EE_total_ |
|
std::map< double, MonitorElement * > | h_efficiencyPhotonET_EB_pass_ |
|
std::map< double, MonitorElement * > | h_efficiencyPhotonET_EB_total_ |
|
std::map< double, MonitorElement * > | h_efficiencyPhotonET_EE_pass_ |
|
std::map< double, MonitorElement * > | h_efficiencyPhotonET_EE_total_ |
|
MonitorElement * | h_L1EGammaEtavsElectronEta_ |
|
MonitorElement * | h_L1EGammaEtavsPhotonEta_ |
|
MonitorElement * | h_L1EGammaETvsElectronET_EB_ |
|
MonitorElement * | h_L1EGammaETvsElectronET_EB_EE_ |
|
MonitorElement * | h_L1EGammaETvsElectronET_EE_ |
|
MonitorElement * | h_L1EGammaETvsPhotonET_EB_ |
|
MonitorElement * | h_L1EGammaETvsPhotonET_EB_EE_ |
|
MonitorElement * | h_L1EGammaETvsPhotonET_EE_ |
|
MonitorElement * | h_L1EGammaPhivsElectronPhi_EB_ |
|
MonitorElement * | h_L1EGammaPhivsElectronPhi_EB_EE_ |
|
MonitorElement * | h_L1EGammaPhivsElectronPhi_EE_ |
|
MonitorElement * | h_L1EGammaPhivsPhotonPhi_EB_ |
|
MonitorElement * | h_L1EGammaPhivsPhotonPhi_EB_EE_ |
|
MonitorElement * | h_L1EGammaPhivsPhotonPhi_EE_ |
|
MonitorElement * | h_nVertex_ |
|
MonitorElement * | h_resolutionElectronET_EB_ |
|
MonitorElement * | h_resolutionElectronET_EB_EE_ |
|
MonitorElement * | h_resolutionElectronET_EE_ |
|
MonitorElement * | h_resolutionElectronEta_ |
|
MonitorElement * | h_resolutionElectronPhi_EB_ |
|
MonitorElement * | h_resolutionElectronPhi_EB_EE_ |
|
MonitorElement * | h_resolutionElectronPhi_EE_ |
|
MonitorElement * | h_resolutionPhotonET_EB_ |
|
MonitorElement * | h_resolutionPhotonET_EB_EE_ |
|
MonitorElement * | h_resolutionPhotonET_EE_ |
|
MonitorElement * | h_resolutionPhotonEta_ |
|
MonitorElement * | h_resolutionPhotonPhi_EB_ |
|
MonitorElement * | h_resolutionPhotonPhi_EB_EE_ |
|
MonitorElement * | h_resolutionPhotonPhi_EE_ |
|
MonitorElement * | h_tagAndProbeMass_ |
|
dqmoffline::l1t::HistDefinitions | histDefinitions_ |
|
std::string | histFolder_ |
|
HLTConfigProvider | hltConfig_ |
|
double | maxDeltaRForHLTMatching_ |
|
double | maxDeltaRForL1Matching_ |
|
std::vector< double > | photonEfficiencyBins_ |
|
std::vector< double > | photonEfficiencyThresholds_ |
|
reco::GsfElectron | probeElectron_ |
|
double | probeToL1Offset_ |
|
math::XYZPoint | PVPoint_ |
|
double | recoToL1TThresholdFactor_ |
|
edm::EDGetTokenT< l1t::EGammaBxCollection > | stage2CaloLayer2EGammaToken_ |
|
double | tagAndProbleInvariantMass_ |
|
reco::GsfElectron | tagElectron_ |
|
edm::EDGetTokenT< reco::BeamSpot > | theBSCollection_ |
|
edm::EDGetTokenT< reco::GsfElectronCollection > | theGsfElectronCollection_ |
|
edm::EDGetTokenT< std::vector< reco::Photon > > | thePhotonCollection_ |
|
edm::EDGetTokenT< reco::VertexCollection > | thePVCollection_ |
|
trigger::TriggerEvent | triggerEvent_ |
|
std::vector< unsigned int > | triggerIndices_ |
|
edm::EDGetTokenT< trigger::TriggerEvent > | triggerInputTag_ |
|
std::vector< std::string > | triggerNames_ |
|
std::string | triggerProcess_ |
|
edm::TriggerResults | triggerResults_ |
|
edm::EDGetTokenT< edm::TriggerResults > | triggerResultsInputTag_ |
|
Definition at line 38 of file L1TEGammaOffline.h.
◆ PlotConfig
◆ L1TEGammaOffline()
Definition at line 28 of file L1TEGammaOffline.cc.
104 <<
"L1TEGammaOffline::L1TEGammaOffline " << std::endl;
◆ ~L1TEGammaOffline()
L1TEGammaOffline::~L1TEGammaOffline |
( |
| ) |
|
|
override |
◆ analyze()
Reimplemented from DQMOneEDAnalyzer<>.
Definition at line 143 of file L1TEGammaOffline.cc.
144 edm::LogInfo(
"L1TEGammaOffline") <<
"L1TEGammaOffline::analyze" << std::endl;
148 if (!triggerResultHandle.
isValid()) {
149 edm::LogWarning(
"L1TEGammaOffline") <<
"invalid edm::TriggerResults handle" << std::endl;
156 if (!triggerEventHandle.
isValid()) {
157 edm::LogWarning(
"L1TEGammaOffline") <<
"invalid trigger::TriggerEvent handle" << std::endl;
165 edm::LogWarning(
"L1TEGammaOffline") <<
"invalid collection: vertex " << std::endl;
169 unsigned int nVertex = vertexHandle->size();
References MillePedeFileConverter_cfg::e, fillElectrons(), dqmoffline::l1t::fillWithinLimits(), h_nVertex_, edm::HandleBase::isValid(), nVertex, dqmoffline::l1t::passesAnyTriggerFromList(), thePVCollection_, triggerEvent_, triggerIndices_, triggerInputTag_, triggerResults_, and triggerResultsInputTag_.
◆ bookElectronHistos()
Definition at line 581 of file L1TEGammaOffline.cc.
585 ibooker.setScope(MonitorElementData::Scope::RUN);
589 h_tagAndProbeMass_ = ibooker.book1D(
"tagAndProbeMass",
"Invariant mass of tag & probe pair", 100, 40, 140);
593 ibooker.book2D(
"L1EGammaETvsElectronET_EB",
594 "L1 EGamma E_{T} vs GSF Electron E_{T} (EB); GSF Electron E_{T} (GeV); L1 EGamma E_{T} (GeV)",
596 &templateETvsET.
binsX[0],
598 &templateETvsET.
binsY[0]);
600 ibooker.book2D(
"L1EGammaETvsElectronET_EE",
601 "L1 EGamma E_{T} vs GSF Electron E_{T} (EE); GSF Electron E_{T} (GeV); L1 EGamma E_{T} (GeV)",
603 &templateETvsET.
binsX[0],
605 &templateETvsET.
binsY[0]);
607 ibooker.book2D(
"L1EGammaETvsElectronET_EB_EE",
608 "L1 EGamma E_{T} vs GSF Electron E_{T} (EB+EE); GSF Electron E_{T} (GeV); L1 EGamma E_{T} (GeV)",
610 &templateETvsET.
binsX[0],
612 &templateETvsET.
binsY[0]);
616 "L1EGammaPhivsElectronPhi_EB",
617 "#phi_{electron}^{L1} vs #phi_{electron}^{offline} (EB); #phi_{electron}^{offline}; #phi_{electron}^{L1}",
619 templatePHIvsPHI.
xmin,
620 templatePHIvsPHI.
xmax,
622 templatePHIvsPHI.
ymin,
623 templatePHIvsPHI.
ymax);
625 "L1EGammaPhivsElectronPhi_EE",
626 "#phi_{electron}^{L1} vs #phi_{electron}^{offline} (EE); #phi_{electron}^{offline}; #phi_{electron}^{L1}",
628 templatePHIvsPHI.
xmin,
629 templatePHIvsPHI.
xmax,
631 templatePHIvsPHI.
ymin,
632 templatePHIvsPHI.
ymax);
634 "L1EGammaPhivsElectronPhi_EB_EE",
635 "#phi_{electron}^{L1} vs #phi_{electron}^{offline} (EB+EE); #phi_{electron}^{offline}; #phi_{electron}^{L1}",
637 templatePHIvsPHI.
xmin,
638 templatePHIvsPHI.
xmax,
640 templatePHIvsPHI.
ymin,
641 templatePHIvsPHI.
ymax);
644 "L1 EGamma #eta vs GSF Electron #eta; GSF Electron #eta; L1 EGamma #eta",
654 ibooker.book1D(
"resolutionElectronET_EB",
655 "electron ET resolution (EB); (L1 EGamma E_{T} - GSF Electron E_{T})/GSF Electron E_{T}; events",
660 ibooker.book1D(
"resolutionElectronET_EE",
661 "electron ET resolution (EE); (L1 EGamma E_{T} - GSF Electron E_{T})/GSF Electron E_{T}; events",
666 "resolutionElectronET_EB_EE",
667 "electron ET resolution (EB+EE); (L1 EGamma E_{T} - GSF Electron E_{T})/GSF Electron E_{T}; events",
673 ibooker.book1D(
"resolutionElectronPhi_EB",
674 "#phi_{electron} resolution (EB); #phi_{electron}^{L1} - #phi_{electron}^{offline}; events",
679 ibooker.book1D(
"resolutionElectronPhi_EE",
680 "electron #phi resolution (EE); #phi_{electron}^{L1} - #phi_{electron}^{offline}; events",
685 ibooker.book1D(
"resolutionElectronPhi_EB_EE",
686 "electron #phi resolution (EB+EE); #phi_{electron}^{L1} - #phi_{electron}^{offline}; events",
692 ibooker.book1D(
"resolutionElectronEta",
693 "electron #eta resolution (EB); L1 EGamma #eta - GSF Electron #eta; events",
701 int nBins = electronBins.size() - 1;
702 float* electronBinArray = &(electronBins[0]);
707 ibooker.book1D(
"efficiencyElectronET_EB_threshold_" + str_threshold +
"_Num",
708 "electron efficiency (EB) (numerator); GSF Electron E_{T} (GeV); events",
712 ibooker.book1D(
"efficiencyElectronET_EE_threshold_" + str_threshold +
"_Num",
713 "electron efficiency (EE) (numerator); GSF Electron E_{T} (GeV); events",
717 ibooker.book1D(
"efficiencyElectronET_EB_EE_threshold_" + str_threshold +
"_Num",
718 "electron efficiency (EB+EE) (numerator); GSF Electron E_{T} (GeV); events",
722 ibooker.book2D(
"efficiencyElectronPhi_vs_Eta_threshold_" + str_threshold +
"_Num",
723 "electron efficiency (numerator); GSF Electron #eta; GSF Electron #phi",
732 ibooker.book1D(
"efficiencyElectronET_EB_threshold_" + str_threshold +
"_Den",
733 "electron efficiency (EB) (denominator); GSF Electron E_{T} (GeV); events",
737 ibooker.book1D(
"efficiencyElectronET_EE_threshold_" + str_threshold +
"_Den",
738 "electron efficiency (EE) (denominator); GSF Electron E_{T} (GeV); events",
742 ibooker.book1D(
"efficiencyElectronET_EB_EE_threshold_" + str_threshold +
"_Den",
743 "electron efficiency (EB+EE) (denominator); GSF Electron E_{T} (GeV); events",
747 ibooker.book2D(
"efficiencyElectronPhi_vs_Eta_threshold_" + str_threshold +
"_Den",
748 "electron efficiency (denominator); GSF Electron #eta; GSF Electron #phi",
760 ibooker.book1D(
"efficiencyElectronEta_threshold_" + str_threshold +
"_Num",
761 "electron efficiency (numerator); GSF Electron #eta; events",
766 ibooker.book1D(
"efficiencyElectronPhi_threshold_" + str_threshold +
"_Num",
767 "electron efficiency (numerator); GSF Electron #phi; events",
772 ibooker.book1D(
"efficiencyElectronNVertex_threshold_" + str_threshold +
"_Num",
773 "electron efficiency (numerator); Nvtx; events",
779 ibooker.book1D(
"efficiencyElectronEta_threshold_" + str_threshold +
"_Den",
780 "electron efficiency (denominator); GSF Electron #eta; events",
785 ibooker.book1D(
"efficiencyElectronPhi_threshold_" + str_threshold +
"_Den",
786 "electron efficiency (denominator); GSF Electron #phi; events",
791 ibooker.book1D(
"efficiencyElectronNVertex_threshold_" + str_threshold +
"_Den",
792 "electron efficiency (denominator); Nvtx; events",
References dqmoffline::l1t::HistDefinition::binsX, dqmoffline::l1t::HistDefinition::binsY, deepInspectionElectronThresholds_, efficiencyFolder_, electronEfficiencyBins_, electronEfficiencyThresholds_, L1TEGammaOffline_cfi::ETvsET, h_efficiencyElectronET_EB_EE_pass_, h_efficiencyElectronET_EB_EE_total_, h_efficiencyElectronET_EB_pass_, h_efficiencyElectronET_EB_total_, h_efficiencyElectronET_EE_pass_, h_efficiencyElectronET_EE_total_, h_efficiencyElectronEta_pass_, h_efficiencyElectronEta_total_, h_efficiencyElectronNVertex_pass_, h_efficiencyElectronNVertex_total_, h_efficiencyElectronPhi_pass_, h_efficiencyElectronPhi_total_, h_efficiencyElectronPhi_vs_Eta_pass_, h_efficiencyElectronPhi_vs_Eta_total_, h_L1EGammaEtavsElectronEta_, h_L1EGammaETvsElectronET_EB_, h_L1EGammaETvsElectronET_EB_EE_, h_L1EGammaETvsElectronET_EE_, h_L1EGammaPhivsElectronPhi_EB_, h_L1EGammaPhivsElectronPhi_EB_EE_, h_L1EGammaPhivsElectronPhi_EE_, h_nVertex_, h_resolutionElectronET_EB_, h_resolutionElectronET_EB_EE_, h_resolutionElectronET_EE_, h_resolutionElectronEta_, h_resolutionElectronPhi_EB_, h_resolutionElectronPhi_EB_EE_, h_resolutionElectronPhi_EE_, h_tagAndProbeMass_, histDefinitions_, histFolder_, dqmoffline::l1t::HistDefinition::name, seedmultiplicitymonitor_newtracking_cfi::nBins, dqmoffline::l1t::HistDefinition::nbinsX, dqmoffline::l1t::HistDefinition::nbinsY, L1TEGammaOffline_cfi::nVertex, L1TEGammaOffline_cfi::PHIvsPHI, AlCaHLTBitMon_QueryRunRegistry::string, remoteMonitoring_LED_IterMethod_cfg::threshold, dqmoffline::l1t::HistDefinition::title, dqmoffline::l1t::HistDefinition::xmax, dqmoffline::l1t::HistDefinition::xmin, dqmoffline::l1t::HistDefinition::ymax, and dqmoffline::l1t::HistDefinition::ymin.
Referenced by bookHistograms().
◆ bookHistograms()
◆ bookPhotonHistos()
Definition at line 801 of file L1TEGammaOffline.cc.
807 ibooker.book2D(
"L1EGammaETvsPhotonET_EB",
808 "L1 EGamma E_{T} vs Photon E_{T} (EB); Photon E_{T} (GeV); L1 EGamma E_{T} (GeV)",
810 &templateETvsET.
binsX[0],
812 &templateETvsET.
binsY[0]);
814 ibooker.book2D(
"L1EGammaETvsPhotonET_EE",
815 "L1 EGamma E_{T} vs Photon E_{T} (EE); Photon E_{T} (GeV); L1 EGamma E_{T} (GeV)",
817 &templateETvsET.
binsX[0],
819 &templateETvsET.
binsY[0]);
821 ibooker.book2D(
"L1EGammaETvsPhotonET_EB_EE",
822 "L1 EGamma E_{T} vs Photon E_{T} (EB+EE); Photon E_{T} (GeV); L1 EGamma E_{T} (GeV)",
824 &templateETvsET.
binsX[0],
826 &templateETvsET.
binsY[0]);
830 ibooker.book2D(
"L1EGammaPhivsPhotonPhi_EB",
831 "#phi_{photon}^{L1} vs #phi_{photon}^{offline} (EB); #phi_{photon}^{offline}; #phi_{photon}^{L1}",
833 templatePHIvsPHI.
xmin,
834 templatePHIvsPHI.
xmax,
836 templatePHIvsPHI.
ymin,
837 templatePHIvsPHI.
ymax);
839 ibooker.book2D(
"L1EGammaPhivsPhotonPhi_EE",
840 "#phi_{photon}^{L1} vs #phi_{photon}^{offline} (EE); #phi_{photon}^{offline}; #phi_{photon}^{L1}",
842 templatePHIvsPHI.
xmin,
843 templatePHIvsPHI.
xmax,
845 templatePHIvsPHI.
ymin,
846 templatePHIvsPHI.
ymax);
848 "L1EGammaPhivsPhotonPhi_EB_EE",
849 "#phi_{photon}^{L1} vs #phi_{photon}^{offline} (EB+EE); #phi_{photon}^{offline}; #phi_{photon}^{L1}",
851 templatePHIvsPHI.
xmin,
852 templatePHIvsPHI.
xmax,
854 templatePHIvsPHI.
ymin,
855 templatePHIvsPHI.
ymax);
858 "L1EGammaEtavsPhotonEta",
"L1 EGamma #eta vs Photon #eta; Photon #eta; L1 EGamma #eta", 100, -3, 3, 100, -3, 3);
862 ibooker.book1D(
"resolutionPhotonET_EB",
863 "photon ET resolution (EB); (L1 EGamma E_{T} - Photon E_{T})/ Photon E_{T}; events",
868 ibooker.book1D(
"resolutionPhotonET_EE",
869 "photon ET resolution (EE); (L1 EGamma E_{T} - Photon E_{T})/ Photon E_{T}; events",
874 ibooker.book1D(
"resolutionPhotonET_EB_EE",
875 "photon ET resolution (EB+EE); (L1 EGamma E_{T} - Photon E_{T})/ Photon E_{T}; events",
881 ibooker.book1D(
"resolutionPhotonPhi_EB",
882 "#phi_{photon} resolution (EB); #phi_{photon}^{L1} - #phi_{photon}^{offline}; events",
887 ibooker.book1D(
"resolutionPhotonPhi_EE",
888 "photon #phi resolution (EE); #phi_{photon}^{L1} - #phi_{photon}^{offline}; events",
893 ibooker.book1D(
"resolutionPhotonPhi_EB_EE",
894 "photon #phi resolution (EB+EE); #phi_{photon}^{L1} - #phi_{photon}^{offline}; events",
900 "resolutionPhotonEta",
"photon #eta resolution (EB); L1 EGamma #eta - Photon #eta; events", 120, -0.3, 0.3);
905 int nBins = photonBins.size() - 1;
906 float* photonBinArray = &(photonBins[0]);
911 ibooker.book1D(
"efficiencyPhotonET_EB_threshold_" + str_threshold +
"_Num",
912 "photon efficiency (EB) (numerator); Photon E_{T} (GeV); events",
916 ibooker.book1D(
"efficiencyPhotonET_EE_threshold_" + str_threshold +
"_Num",
917 "photon efficiency (EE) (numerator); Photon E_{T} (GeV); events",
921 ibooker.book1D(
"efficiencyPhotonET_EB_EE_threshold_" + str_threshold +
"_Num",
922 "photon efficiency (EB+EE) (numerator); Photon E_{T} (GeV); events",
927 ibooker.book1D(
"efficiencyPhotonET_EB_threshold_" + str_threshold +
"_Den",
928 "photon efficiency (EB) (denominator); Photon E_{T} (GeV); events",
932 ibooker.book1D(
"efficiencyPhotonET_EE_threshold_" + str_threshold +
"_Den",
933 "photon efficiency (EE) (denominator); Photon E_{T} (GeV); events",
937 ibooker.book1D(
"efficiencyPhotonET_EB_EE_threshold_" + str_threshold +
"_Den",
938 "photon efficiency (EB+EE) (denominator); Photon E_{T} (GeV); events",
References dqmoffline::l1t::HistDefinition::binsX, dqmoffline::l1t::HistDefinition::binsY, efficiencyFolder_, L1TEGammaOffline_cfi::ETvsET, h_efficiencyPhotonET_EB_EE_pass_, h_efficiencyPhotonET_EB_EE_total_, h_efficiencyPhotonET_EB_pass_, h_efficiencyPhotonET_EB_total_, h_efficiencyPhotonET_EE_pass_, h_efficiencyPhotonET_EE_total_, h_L1EGammaEtavsPhotonEta_, h_L1EGammaETvsPhotonET_EB_, h_L1EGammaETvsPhotonET_EB_EE_, h_L1EGammaETvsPhotonET_EE_, h_L1EGammaPhivsPhotonPhi_EB_, h_L1EGammaPhivsPhotonPhi_EB_EE_, h_L1EGammaPhivsPhotonPhi_EE_, h_resolutionPhotonET_EB_, h_resolutionPhotonET_EB_EE_, h_resolutionPhotonET_EE_, h_resolutionPhotonEta_, h_resolutionPhotonPhi_EB_, h_resolutionPhotonPhi_EB_EE_, h_resolutionPhotonPhi_EE_, histDefinitions_, histFolder_, seedmultiplicitymonitor_newtracking_cfi::nBins, dqmoffline::l1t::HistDefinition::nbinsX, dqmoffline::l1t::HistDefinition::nbinsY, L1TEGammaOffline_cfi::PHIvsPHI, photonEfficiencyBins_, photonEfficiencyThresholds_, AlCaHLTBitMon_QueryRunRegistry::string, remoteMonitoring_LED_IterMethod_cfg::threshold, dqmoffline::l1t::HistDefinition::xmax, dqmoffline::l1t::HistDefinition::xmin, dqmoffline::l1t::HistDefinition::ymax, and dqmoffline::l1t::HistDefinition::ymin.
◆ calcDeltaPhi()
double L1TEGammaOffline::calcDeltaPhi |
( |
double |
phi1, |
|
|
double |
phi2 |
|
) |
| |
|
private |
◆ Distance()
◆ DistancePhi()
◆ dqmBeginRun()
◆ dqmEndRun()
◆ fillElectrons()
void L1TEGammaOffline::fillElectrons |
( |
edm::Event const & |
e, |
|
|
const unsigned int |
nVertex |
|
) |
| |
|
private |
Definition at line 180 of file L1TEGammaOffline.cc.
188 edm::LogWarning(
"L1TEGammaOffline") <<
"invalid collection: GSF electrons " << std::endl;
192 LogDebug(
"L1TEGammaOffline") <<
"empty collection: GSF electrons " << std::endl;
196 edm::LogWarning(
"L1TEGammaOffline") <<
"invalid collection: L1 EGamma " << std::endl;
200 LogDebug(
"L1TEGammaOffline") <<
"Could not find a tag & probe pair" << std::endl;
209 bool foundMatch =
false;
211 int bunchCrossing = 0;
213 double currentDeltaR =
deltaR(
egamma->eta(),
egamma->phi(), probeElectron.eta(), probeElectron.phi());
218 closestL1EGamma = *
egamma;
224 LogDebug(
"L1TEGammaOffline") <<
"Could not find a matching L1 EGamma " << std::endl;
228 double recoEt = probeElectron.et();
229 double recoEta = probeElectron.eta();
230 double recoPhi = probeElectron.phi();
232 double l1Et = closestL1EGamma.
et();
233 double l1Eta = closestL1EGamma.
eta();
234 double l1Phi = closestL1EGamma.
phi();
237 double outOfBounds = 9999;
238 double resolutionEt = recoEt > 0 ? (l1Et - recoEt) / recoEt : outOfBounds;
References funct::abs(), BXVector< T >::begin(), deepInspectionElectronThresholds_, reco::deltaPhi(), PbPb_ZMuSkimMuonDPG_cff::deltaR, MillePedeFileConverter_cfg::e, electronEfficiencyThresholds_, BXVector< T >::end(), reco::LeafCandidate::et(), reco::LeafCandidate::eta(), dqmoffline::l1t::fill2DWithinLimits(), dqmoffline::l1t::fillWithinLimits(), findTagAndProbePair(), electronIsolatorFromEffectiveArea_cfi::gsfElectrons, h_efficiencyElectronET_EB_EE_pass_, h_efficiencyElectronET_EB_EE_total_, h_efficiencyElectronET_EB_pass_, h_efficiencyElectronET_EB_total_, h_efficiencyElectronET_EE_pass_, h_efficiencyElectronET_EE_total_, h_efficiencyElectronEta_pass_, h_efficiencyElectronEta_total_, h_efficiencyElectronNVertex_pass_, h_efficiencyElectronNVertex_total_, h_efficiencyElectronPhi_pass_, h_efficiencyElectronPhi_total_, h_efficiencyElectronPhi_vs_Eta_pass_, h_efficiencyElectronPhi_vs_Eta_total_, h_L1EGammaEtavsElectronEta_, h_L1EGammaETvsElectronET_EB_, h_L1EGammaETvsElectronET_EB_EE_, h_L1EGammaETvsElectronET_EE_, h_L1EGammaPhivsElectronPhi_EB_, h_L1EGammaPhivsElectronPhi_EB_EE_, h_L1EGammaPhivsElectronPhi_EE_, h_resolutionElectronET_EB_, h_resolutionElectronET_EB_EE_, h_resolutionElectronET_EE_, h_resolutionElectronEta_, h_resolutionElectronPhi_EB_, h_resolutionElectronPhi_EB_EE_, h_resolutionElectronPhi_EE_, edm::HandleBase::isValid(), LogDebug, maxDeltaRForL1Matching_, HLT_2018_cff::minDeltaR, nVertex, reco::LeafCandidate::phi(), probeElectron_, probeToL1Offset_, recoToL1TThresholdFactor_, HLTMuonOfflineAnalyzer_cfi::resolutionEta, HLTMuonOfflineAnalyzer_cfi::resolutionPhi, stage2CaloLayer2EGammaToken_, theGsfElectronCollection_, and remoteMonitoring_LED_IterMethod_cfg::threshold.
Referenced by analyze().
◆ fillPhotons()
void L1TEGammaOffline::fillPhotons |
( |
edm::Event const & |
e, |
|
|
const unsigned int |
nVertex |
|
) |
| |
|
private |
Definition at line 458 of file L1TEGammaOffline.cc.
467 edm::LogWarning(
"L1TEGammaOffline") <<
"invalid collection: reco::Photons " << std::endl;
471 edm::LogWarning(
"L1TEGammaOffline") <<
"invalid collection: L1 EGamma " << std::endl;
476 LogDebug(
"L1TEGammaOffline") <<
"No photons found in event." << std::endl;
480 auto probePhoton =
photons->at(0);
484 bool foundMatch =
false;
486 int bunchCrossing = 0;
488 double currentDeltaR =
deltaR(
egamma->eta(),
egamma->phi(), probePhoton.eta(), probePhoton.phi());
493 closestL1EGamma = *
egamma;
499 LogDebug(
"L1TEGammaOffline") <<
"Could not find a matching L1 EGamma " << std::endl;
503 double recoEt = probePhoton.et();
504 double recoEta = probePhoton.eta();
505 double recoPhi = probePhoton.phi();
507 double l1Et = closestL1EGamma.
et();
508 double l1Eta = closestL1EGamma.
eta();
509 double l1Phi = closestL1EGamma.
phi();
512 double outOfBounds = 9999;
513 double resolutionEt = recoEt > 0 ? (l1Et - recoEt) / recoEt : outOfBounds;
References funct::abs(), BXVector< T >::begin(), reco::deltaPhi(), PbPb_ZMuSkimMuonDPG_cff::deltaR, MillePedeFileConverter_cfg::e, BXVector< T >::end(), reco::LeafCandidate::et(), reco::LeafCandidate::eta(), dqmoffline::l1t::fill2DWithinLimits(), dqmoffline::l1t::fillWithinLimits(), h_efficiencyPhotonET_EB_EE_pass_, h_efficiencyPhotonET_EB_EE_total_, h_efficiencyPhotonET_EB_pass_, h_efficiencyPhotonET_EB_total_, h_efficiencyPhotonET_EE_pass_, h_efficiencyPhotonET_EE_total_, h_L1EGammaEtavsPhotonEta_, h_L1EGammaETvsPhotonET_EB_, h_L1EGammaETvsPhotonET_EB_EE_, h_L1EGammaETvsPhotonET_EE_, h_L1EGammaPhivsPhotonPhi_EB_, h_L1EGammaPhivsPhotonPhi_EB_EE_, h_L1EGammaPhivsPhotonPhi_EE_, h_resolutionPhotonET_EB_, h_resolutionPhotonET_EB_EE_, h_resolutionPhotonET_EE_, h_resolutionPhotonEta_, h_resolutionPhotonPhi_EB_, h_resolutionPhotonPhi_EB_EE_, h_resolutionPhotonPhi_EE_, edm::HandleBase::isValid(), LogDebug, HLT_2018_cff::minDeltaR, reco::LeafCandidate::phi(), photonEfficiencyThresholds_, BPHMonitor_cfi::photons, HLTMuonOfflineAnalyzer_cfi::resolutionEta, HLTMuonOfflineAnalyzer_cfi::resolutionPhi, stage2CaloLayer2EGammaToken_, thePhotonCollection_, and remoteMonitoring_LED_IterMethod_cfg::threshold.
◆ findTagAndProbePair()
From https://cds.cern.ch/record/2202966/files/DP2016_044.pdf slide 8 Filter on HLT_Ele30WP60_Ele8_Mass55 (TODO) HLT_Ele30WP60_SC4_Mass55 (TODO) Seeded by L1SingleEG, unprescaled required
Tag & probe selection Electron required to be within ECAL fiducial volume (|η|<1.4442 || 1.566<|η|<2.5). 60 < m(ee) < 120 GeV. Opposite charge requirement. Tag required to pass medium electron ID and ET > 30 GeV. Probe required to pass loose electron ID.
- Parameters
-
- Returns
Definition at line 337 of file L1TEGammaOffline.cc.
338 bool foundBoth(
false);
345 if (tagElectron.p4() == probeElectron.p4())
348 auto combined(tagElectron.p4() + probeElectron.p4());
349 auto tagAbsEta =
std::abs(tagElectron.eta());
350 auto probeAbsEta =
std::abs(probeElectron.eta());
353 bool isEBEEGap = tagElectron.isEBEEGap() || probeElectron.isEBEEGap();
354 bool passesEta = !isEBEEGap && tagAbsEta < 2.5 && probeAbsEta < 2.5;
355 bool passesCharge = tagElectron.charge() == -probeElectron.charge();
358 bool tagPassesMediumID =
passesMediumEleId(tagElectron) && tagElectron.et() > 30.;
360 bool passesInvariantMass = combined.M() > 60 && combined.M() < 120;
363 if (passesEta && passesInvariantMass && passesCharge && tagPassesMediumID && probePassesLooseID &&
364 tagMatchesHLTObject) {
References funct::abs(), pwdgSkimBPark_cfi::electrons, dqmoffline::l1t::fillWithinLimits(), h_tagAndProbeMass_, matchesAnHLTObject(), jets_cff::nElectrons, passesLooseEleId(), passesMediumEleId(), probeElectron_, and tagElectron_.
Referenced by fillElectrons().
◆ matchesAnHLTObject()
bool L1TEGammaOffline::matchesAnHLTObject |
( |
double |
eta, |
|
|
double |
phi |
|
) |
| const |
|
private |
Definition at line 445 of file L1TEGammaOffline.cc.
455 return !matchedObjects.empty();
References PVValHelper::eta, dqmoffline::l1t::getFiredTriggerIndices(), dqmoffline::l1t::getHLTFilters(), dqmoffline::l1t::getMatchedTriggerObjects(), dqmoffline::l1t::getTriggerObjects(), dqmoffline::l1t::getTriggerResults(), hltConfig_, maxDeltaRForHLTMatching_, phi, bookConverter::results, triggerEvent_, triggerIndices_, triggerProcess_, and triggerResults_.
Referenced by findTagAndProbePair().
◆ normalise2DHistogramsToBinArea()
void L1TEGammaOffline::normalise2DHistogramsToBinArea |
( |
| ) |
|
|
private |
Definition at line 946 of file L1TEGammaOffline.cc.
962 for (
auto mon : monElementstoNormalize) {
963 if (
mon !=
nullptr) {
964 auto h =
mon->getTH2F();
966 h->Scale(1,
"width");
References h_L1EGammaEtavsElectronEta_, h_L1EGammaEtavsPhotonEta_, h_L1EGammaETvsElectronET_EB_, h_L1EGammaETvsElectronET_EB_EE_, h_L1EGammaETvsElectronET_EE_, h_L1EGammaETvsPhotonET_EB_, h_L1EGammaETvsPhotonET_EB_EE_, h_L1EGammaETvsPhotonET_EE_, h_L1EGammaPhivsElectronPhi_EB_, h_L1EGammaPhivsElectronPhi_EB_EE_, h_L1EGammaPhivsElectronPhi_EE_, h_L1EGammaPhivsPhotonPhi_EB_, h_L1EGammaPhivsPhotonPhi_EB_EE_, h_L1EGammaPhivsPhotonPhi_EE_, and LaserDQM_cfi::mon.
Referenced by dqmEndRun().
◆ passesLooseEleId()
◆ passesMediumEleId()
◆ deepInspectionElectronThresholds_
std::vector<double> L1TEGammaOffline::deepInspectionElectronThresholds_ |
|
private |
◆ efficiencyFolder_
std::string L1TEGammaOffline::efficiencyFolder_ |
|
private |
◆ electronEfficiencyBins_
std::vector<double> L1TEGammaOffline::electronEfficiencyBins_ |
|
private |
◆ electronEfficiencyThresholds_
std::vector<double> L1TEGammaOffline::electronEfficiencyThresholds_ |
|
private |
◆ h_efficiencyElectronET_EB_EE_pass_
std::map<double, MonitorElement*> L1TEGammaOffline::h_efficiencyElectronET_EB_EE_pass_ |
|
private |
◆ h_efficiencyElectronET_EB_EE_total_
std::map<double, MonitorElement*> L1TEGammaOffline::h_efficiencyElectronET_EB_EE_total_ |
|
private |
◆ h_efficiencyElectronET_EB_pass_
std::map<double, MonitorElement*> L1TEGammaOffline::h_efficiencyElectronET_EB_pass_ |
|
private |
◆ h_efficiencyElectronET_EB_total_
std::map<double, MonitorElement*> L1TEGammaOffline::h_efficiencyElectronET_EB_total_ |
|
private |
◆ h_efficiencyElectronET_EE_pass_
std::map<double, MonitorElement*> L1TEGammaOffline::h_efficiencyElectronET_EE_pass_ |
|
private |
◆ h_efficiencyElectronET_EE_total_
std::map<double, MonitorElement*> L1TEGammaOffline::h_efficiencyElectronET_EE_total_ |
|
private |
◆ h_efficiencyElectronEta_pass_
std::map<double, MonitorElement*> L1TEGammaOffline::h_efficiencyElectronEta_pass_ |
|
private |
◆ h_efficiencyElectronEta_total_
std::map<double, MonitorElement*> L1TEGammaOffline::h_efficiencyElectronEta_total_ |
|
private |
◆ h_efficiencyElectronNVertex_pass_
std::map<double, MonitorElement*> L1TEGammaOffline::h_efficiencyElectronNVertex_pass_ |
|
private |
◆ h_efficiencyElectronNVertex_total_
std::map<double, MonitorElement*> L1TEGammaOffline::h_efficiencyElectronNVertex_total_ |
|
private |
◆ h_efficiencyElectronPhi_pass_
std::map<double, MonitorElement*> L1TEGammaOffline::h_efficiencyElectronPhi_pass_ |
|
private |
◆ h_efficiencyElectronPhi_total_
std::map<double, MonitorElement*> L1TEGammaOffline::h_efficiencyElectronPhi_total_ |
|
private |
◆ h_efficiencyElectronPhi_vs_Eta_pass_
std::map<double, MonitorElement*> L1TEGammaOffline::h_efficiencyElectronPhi_vs_Eta_pass_ |
|
private |
◆ h_efficiencyElectronPhi_vs_Eta_total_
std::map<double, MonitorElement*> L1TEGammaOffline::h_efficiencyElectronPhi_vs_Eta_total_ |
|
private |
◆ h_efficiencyPhotonET_EB_EE_pass_
std::map<double, MonitorElement*> L1TEGammaOffline::h_efficiencyPhotonET_EB_EE_pass_ |
|
private |
◆ h_efficiencyPhotonET_EB_EE_total_
std::map<double, MonitorElement*> L1TEGammaOffline::h_efficiencyPhotonET_EB_EE_total_ |
|
private |
◆ h_efficiencyPhotonET_EB_pass_
std::map<double, MonitorElement*> L1TEGammaOffline::h_efficiencyPhotonET_EB_pass_ |
|
private |
◆ h_efficiencyPhotonET_EB_total_
std::map<double, MonitorElement*> L1TEGammaOffline::h_efficiencyPhotonET_EB_total_ |
|
private |
◆ h_efficiencyPhotonET_EE_pass_
std::map<double, MonitorElement*> L1TEGammaOffline::h_efficiencyPhotonET_EE_pass_ |
|
private |
◆ h_efficiencyPhotonET_EE_total_
std::map<double, MonitorElement*> L1TEGammaOffline::h_efficiencyPhotonET_EE_total_ |
|
private |
◆ h_L1EGammaEtavsElectronEta_
◆ h_L1EGammaEtavsPhotonEta_
◆ h_L1EGammaETvsElectronET_EB_
◆ h_L1EGammaETvsElectronET_EB_EE_
◆ h_L1EGammaETvsElectronET_EE_
◆ h_L1EGammaETvsPhotonET_EB_
◆ h_L1EGammaETvsPhotonET_EB_EE_
◆ h_L1EGammaETvsPhotonET_EE_
◆ h_L1EGammaPhivsElectronPhi_EB_
◆ h_L1EGammaPhivsElectronPhi_EB_EE_
◆ h_L1EGammaPhivsElectronPhi_EE_
◆ h_L1EGammaPhivsPhotonPhi_EB_
◆ h_L1EGammaPhivsPhotonPhi_EB_EE_
◆ h_L1EGammaPhivsPhotonPhi_EE_
◆ h_nVertex_
◆ h_resolutionElectronET_EB_
◆ h_resolutionElectronET_EB_EE_
◆ h_resolutionElectronET_EE_
◆ h_resolutionElectronEta_
◆ h_resolutionElectronPhi_EB_
◆ h_resolutionElectronPhi_EB_EE_
◆ h_resolutionElectronPhi_EE_
◆ h_resolutionPhotonET_EB_
◆ h_resolutionPhotonET_EB_EE_
◆ h_resolutionPhotonET_EE_
◆ h_resolutionPhotonEta_
◆ h_resolutionPhotonPhi_EB_
◆ h_resolutionPhotonPhi_EB_EE_
◆ h_resolutionPhotonPhi_EE_
◆ h_tagAndProbeMass_
◆ histDefinitions_
◆ histFolder_
std::string L1TEGammaOffline::histFolder_ |
|
private |
◆ hltConfig_
◆ maxDeltaRForHLTMatching_
double L1TEGammaOffline::maxDeltaRForHLTMatching_ |
|
private |
◆ maxDeltaRForL1Matching_
double L1TEGammaOffline::maxDeltaRForL1Matching_ |
|
private |
◆ photonEfficiencyBins_
std::vector<double> L1TEGammaOffline::photonEfficiencyBins_ |
|
private |
◆ photonEfficiencyThresholds_
std::vector<double> L1TEGammaOffline::photonEfficiencyThresholds_ |
|
private |
◆ PlotConfigNames
const std::map< std::string, unsigned int > L1TEGammaOffline::PlotConfigNames |
|
static |
◆ probeElectron_
◆ probeToL1Offset_
double L1TEGammaOffline::probeToL1Offset_ |
|
private |
◆ PVPoint_
◆ recoToL1TThresholdFactor_
double L1TEGammaOffline::recoToL1TThresholdFactor_ |
|
private |
◆ stage2CaloLayer2EGammaToken_
◆ tagAndProbleInvariantMass_
double L1TEGammaOffline::tagAndProbleInvariantMass_ |
|
private |
◆ tagElectron_
◆ theBSCollection_
◆ theGsfElectronCollection_
◆ thePhotonCollection_
◆ thePVCollection_
◆ triggerEvent_
◆ triggerIndices_
std::vector<unsigned int> L1TEGammaOffline::triggerIndices_ |
|
private |
◆ triggerInputTag_
◆ triggerNames_
std::vector<std::string> L1TEGammaOffline::triggerNames_ |
|
private |
◆ triggerProcess_
std::string L1TEGammaOffline::triggerProcess_ |
|
private |
◆ triggerResults_
◆ triggerResultsInputTag_
HistDefinitions readHistDefinitions(const edm::ParameterSet &ps, const std::map< std::string, unsigned int > &mapping)
edm::EDGetTokenT< reco::GsfElectronCollection > theGsfElectronCollection_
std::string efficiencyFolder_
bool passesMediumEleId(reco::GsfElectron const &electron) const
MonitorElement * h_resolutionElectronET_EE_
MonitorElement * h_L1EGammaETvsPhotonET_EE_
std::vector< double > electronEfficiencyBins_
MonitorElement * h_L1EGammaETvsElectronET_EB_EE_
trigger::TriggerEvent triggerEvent_
std::map< double, MonitorElement * > h_efficiencyPhotonET_EB_pass_
MonitorElement * h_L1EGammaPhivsPhotonPhi_EB_
MonitorElement * h_L1EGammaETvsPhotonET_EB_
constexpr double deltaPhi(double phi1, double phi2)
MonitorElement * h_L1EGammaEtavsElectronEta_
edm::TriggerResults triggerResults_
std::vector< double > photonEfficiencyBins_
MonitorElement * h_L1EGammaETvsPhotonET_EB_EE_
MonitorElement * h_resolutionElectronPhi_EB_EE_
MonitorElement * h_tagAndProbeMass_
std::vector< unsigned int > getTriggerIndices(const std::vector< std::string > &requestedTriggers, const std::vector< std::string > &triggersInEvent)
double tagAndProbleInvariantMass_
MonitorElement * h_resolutionPhotonET_EB_EE_
MonitorElement * h_L1EGammaEtavsPhotonEta_
std::vector< float > binsY
std::map< double, MonitorElement * > h_efficiencyPhotonET_EB_EE_total_
MonitorElement * h_resolutionPhotonET_EE_
std::map< double, MonitorElement * > h_efficiencyPhotonET_EB_EE_pass_
MonitorElement * h_resolutionPhotonPhi_EE_
MonitorElement * h_resolutionElectronET_EB_
std::map< double, MonitorElement * > h_efficiencyElectronEta_pass_
void fillElectrons(edm::Event const &e, const unsigned int nVertex)
std::map< double, MonitorElement * > h_efficiencyPhotonET_EE_total_
std::map< double, MonitorElement * > h_efficiencyElectronPhi_pass_
std::vector< float > binsX
edm::EDGetTokenT< std::vector< reco::Photon > > thePhotonCollection_
void bookElectronHistos(DQMStore::IBooker &)
std::map< double, MonitorElement * > h_efficiencyElectronET_EB_EE_pass_
MonitorElement * h_L1EGammaPhivsElectronPhi_EE_
MonitorElement * h_L1EGammaETvsElectronET_EB_
std::map< double, MonitorElement * > h_efficiencyElectronNVertex_total_
trigger::TriggerObjectCollection getTriggerObjects(const std::vector< edm::InputTag > &hltFilters, const trigger::TriggerEvent &triggerEvent)
std::map< double, MonitorElement * > h_efficiencyElectronET_EB_total_
edm::EDGetTokenT< l1t::EGammaBxCollection > stage2CaloLayer2EGammaToken_
double maxDeltaRForHLTMatching_
double maxDeltaRForL1Matching_
std::map< double, MonitorElement * > h_efficiencyElectronPhi_vs_Eta_total_
std::vector< std::string > triggerNames_
bool passesAnyTriggerFromList(const std::vector< unsigned int > &triggers, const edm::TriggerResults &triggerResults)
std::map< double, MonitorElement * > h_efficiencyElectronPhi_vs_Eta_pass_
std::vector< bool > getTriggerResults(const std::vector< unsigned int > &triggers, const edm::TriggerResults &triggerResults)
void normalise2DHistogramsToBinArea()
std::vector< edm::InputTag > getHLTFilters(const std::vector< unsigned int > &triggers, const HLTConfigProvider &hltConfig, const std::string triggerProcess)
bool matchesAnHLTObject(double eta, double phi) const
const_iterator begin(int bx) const
static const std::map< std::string, unsigned int > PlotConfigNames
MonitorElement * h_resolutionElectronEta_
reco::GsfElectron tagElectron_
bool passesLooseEleId(reco::GsfElectron const &electron) const
std::string triggerProcess_
const_iterator end(int bx) const
std::map< double, MonitorElement * > h_efficiencyElectronET_EB_pass_
MonitorElement * h_resolutionPhotonEta_
std::vector< double > deepInspectionElectronThresholds_
double eta() const final
momentum pseudorapidity
void fillWithinLimits(MonitorElement *mon, double value, double weight=1.)
std::vector< TriggerObject > TriggerObjectCollection
collection of trigger physics objects (e.g., all isolated muons)
std::vector< unsigned int > getFiredTriggerIndices(const std::vector< unsigned int > &triggers, const std::vector< bool > &triggerResults)
edm::EDGetTokenT< trigger::TriggerEvent > triggerInputTag_
HLTConfigProvider hltConfig_
void fill2DWithinLimits(MonitorElement *mon, double valueX, double valueY, double weight=1.)
MonitorElement * h_resolutionPhotonET_EB_
std::vector< double > photonEfficiencyThresholds_
std::map< double, MonitorElement * > h_efficiencyPhotonET_EB_total_
std::map< double, MonitorElement * > h_efficiencyElectronET_EE_pass_
reco::GsfElectron probeElectron_
MonitorElement * h_nVertex_
trigger::TriggerObjectCollection getMatchedTriggerObjects(double eta, double phi, double maxDeltaR, const trigger::TriggerObjectCollection triggerObjects)
edm::EDGetTokenT< reco::BeamSpot > theBSCollection_
bool findTagAndProbePair(edm::Handle< reco::GsfElectronCollection > const &electrons)
edm::EDGetTokenT< edm::TriggerResults > triggerResultsInputTag_
MonitorElement * h_resolutionPhotonPhi_EB_EE_
std::map< double, MonitorElement * > h_efficiencyElectronET_EB_EE_total_
T getParameter(std::string const &) const
double et() const final
transverse energy
std::map< double, MonitorElement * > h_efficiencyElectronET_EE_total_
std::vector< unsigned int > triggerIndices_
bool init(const edm::Run &iRun, const edm::EventSetup &iSetup, const std::string &processName, bool &changed)
d'tor
double phi() const final
momentum azimuthal angle
MonitorElement * h_L1EGammaPhivsPhotonPhi_EB_EE_
std::vector< double > electronEfficiencyThresholds_
std::map< double, MonitorElement * > h_efficiencyElectronPhi_total_
std::map< double, MonitorElement * > h_efficiencyPhotonET_EE_pass_
MonitorElement * h_resolutionElectronPhi_EE_
MonitorElement * h_resolutionPhotonPhi_EB_
MonitorElement * h_L1EGammaETvsElectronET_EE_
edm::EDGetTokenT< reco::VertexCollection > thePVCollection_
MonitorElement * h_resolutionElectronET_EB_EE_
std::map< double, MonitorElement * > h_efficiencyElectronEta_total_
Abs< T >::type abs(const T &t)
MonitorElement * h_resolutionElectronPhi_EB_
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
std::map< double, MonitorElement * > h_efficiencyElectronNVertex_pass_
MonitorElement * h_L1EGammaPhivsElectronPhi_EB_
const std::vector< std::string > & triggerNames() const
names of trigger paths
MonitorElement * h_L1EGammaPhivsPhotonPhi_EE_
MonitorElement * h_L1EGammaPhivsElectronPhi_EB_EE_
ParameterSet const & getParameterSet(std::string const &) const
double recoToL1TThresholdFactor_
dqmoffline::l1t::HistDefinitions histDefinitions_