#include <JetMETHLTOfflineSource.h>
Definition at line 65 of file JetMETHLTOfflineSource.h.
JetMETHLTOfflineSource::JetMETHLTOfflineSource | ( | const edm::ParameterSet & | iConfig | ) | [explicit] |
Definition at line 45 of file JetMETHLTOfflineSource.cc.
References _fEMF, _feta, _fHPD, _max_CEMF, _max_CHEF, _max_NEMF, _max_NHEF, _min_CEMF, _min_CHEF, _min_NEMF, _min_NHEF, _n90Hits, CaloJetCorService_, caloJetsTag_, caloMETTag_, custompathnamepairs_, dbe, dirname_, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), jetID, LogDebug, MBTrigPaths_, MuonTrigPaths_, nameForEff_, cppFunctionSkipper::operator, pathFilter_, pathRejectKeyword_, EgammaValidation_cff::paths, PFJetCorService_, pfJetsTag_, pfMETTag_, plotAll_, plotAllwrtMu_, plotEff_, plotEffwrtMB_, plotEffwrtMu_, processname_, runStandalone_, DQMStore::setVerbose(), triggerResultsLabel_, triggerSummaryLabel_, and verbose_.
: isSetup_(false) { LogDebug("JetMETHLTOfflineSource") << "constructor...."; dbe = Service < DQMStore > ().operator->(); if ( ! dbe ) { LogDebug("JetMETHLTOfflineSource") << "unabel to get DQMStore service?"; } if (iConfig.getUntrackedParameter < bool > ("DQMStore", false)) { dbe->setVerbose(0); } // dirname_ = iConfig.getUntrackedParameter("dirname",std::string("HLT/JetMET/")); processname_ = iConfig.getParameter<std::string>("processname"); triggerSummaryLabel_ = iConfig.getParameter<edm::InputTag>("triggerSummaryLabel"); triggerResultsLabel_ = iConfig.getParameter<edm::InputTag>("triggerResultsLabel"); // verbose_ = iConfig.getUntrackedParameter< bool >("verbose", false); runStandalone_ = iConfig.getUntrackedParameter< bool >("runStandalone", false); // plotAll_ = iConfig.getUntrackedParameter< bool >("plotAll", true); plotAllwrtMu_ = iConfig.getUntrackedParameter< bool >("plotAllwrtMu", false); plotEff_ = iConfig.getUntrackedParameter< bool >("plotEff", true); plotEffwrtMu_ = iConfig.getUntrackedParameter< bool >("plotEffwrtMu", false); plotEffwrtMB_ = iConfig.getUntrackedParameter< bool >("plotEffwrtMB", false); nameForEff_ = iConfig.getUntrackedParameter< bool >("nameForEff", true); MuonTrigPaths_ = iConfig.getUntrackedParameter<vector<std::string> >("pathnameMuon"); MBTrigPaths_ = iConfig.getUntrackedParameter<vector<std::string> >("pathnameMB"); //CaloJet, CaloMET caloJetsTag_ = iConfig.getParameter<edm::InputTag>("CaloJetCollectionLabel"); caloMETTag_ = iConfig.getParameter<edm::InputTag>("CaloMETCollectionLabel"); //PFJet, PFMET pfJetsTag_ = iConfig.getParameter<edm::InputTag>("PFJetCollectionLabel"); pfMETTag_ = iConfig.getParameter<edm::InputTag>("PFMETCollectionLabel"); //pfmhtTag_ = iConfig.getParameter<edm::InputTag>("PFMHTCollectionLabel"); // CaloJetCorService_ = iConfig.getParameter<std::string>("CaloJetCorService"); PFJetCorService_ = iConfig.getParameter<std::string>("PFJetCorService"); //JetID jetID = new reco::helper::JetIDHelper(iConfig.getParameter<ParameterSet>("JetIDParams")); _fEMF = iConfig.getUntrackedParameter< double >("fEMF", 0.01); _feta = iConfig.getUntrackedParameter< double >("feta", 2.60); _fHPD = iConfig.getUntrackedParameter< double >("fHPD", 0.98); _n90Hits = iConfig.getUntrackedParameter< double >("n90Hits", 1.0); _min_NHEF = iConfig.getUntrackedParameter< double >("minNHEF",0.); _max_NHEF = iConfig.getUntrackedParameter< double >("maxNHEF",0.99); _min_CHEF = iConfig.getUntrackedParameter< double >("minCHEF",0.); _max_CHEF = iConfig.getUntrackedParameter< double >("maxCHEF",1.); _min_NEMF = iConfig.getUntrackedParameter< double >("minNEMF",0.); _max_NEMF = iConfig.getUntrackedParameter< double >("maxNEMF",0.99); _min_CEMF = iConfig.getUntrackedParameter< double >("minCEMF",0.); _max_CEMF = iConfig.getUntrackedParameter< double >("maxCEMF",0.99); //Paths pathFilter_ = iConfig.getUntrackedParameter<vector<std::string> >("pathFilter"); pathRejectKeyword_ = iConfig.getUntrackedParameter<vector<std::string> >("pathRejectKeyword"); std::vector<edm::ParameterSet> paths = iConfig.getParameter<std::vector<edm::ParameterSet> >("pathPairs"); for(std::vector<edm::ParameterSet>::iterator pathconf = paths.begin() ; pathconf != paths.end(); pathconf++) { custompathnamepairs_.push_back(make_pair( pathconf->getParameter<std::string>("pathname"), pathconf->getParameter<std::string>("denompathname") )); } }
JetMETHLTOfflineSource::~JetMETHLTOfflineSource | ( | ) |
Definition at line 111 of file JetMETHLTOfflineSource.cc.
{ // // do anything here that needs to be done at desctruction time // (e.g. close files, deallocate resources etc.) }
void JetMETHLTOfflineSource::analyze | ( | const edm::Event & | iEvent, |
const edm::EventSetup & | iSetup | ||
) | [private, virtual] |
Implements edm::EDAnalyzer.
Definition at line 120 of file JetMETHLTOfflineSource.cc.
References reco::helper::JetIDHelper::calculate(), calojet, calojetColl_, CaloJetCorService_, CaloJetEMF, CaloJetEta, CaloJetfHPD, CaloJetn90, CaloJetPhi, CaloJetPt, CaloJetPx, CaloJetPy, caloJetsTag_, calometColl_, caloMETTag_, JetCorrector::correction(), gather_cfg::cout, edm::EventID::event(), reco::helper::JetIDHelper::fHPD(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTrigger(), fillMEforMonAllTriggerwrtMuonTrigger(), fillMEforMonTriggerSummary(), fillMEforTriggerNTfired(), edm::Event::getByLabel(), JetCorrector::getJetCorrector(), i, edm::EventBase::id(), edm::InputTag::instance(), edm::HandleBase::isValid(), jetID, edm::InputTag::label(), edm::EventBase::luminosityBlock(), reco::helper::JetIDHelper::n90Hits(), pfjet, PFJetCEMF, PFJetCHEF, pfjetColl_, PFJetCorService_, PFJetEta, PFJetNEMF, PFJetNHEF, PFJetPhi, PFJetPt, PFJetPx, PFJetPy, pfJetsTag_, pfmetColl_, pfMETTag_, pfMHTx_All, pfMHTy_All, plotAll_, plotAllwrtMu_, plotEff_, plotEffwrtMB_, plotEffwrtMu_, edm::EventID::run(), runStandalone_, pileupReCalc_HLTpaths::scale, edm::Event::triggerNames(), triggerNames_, triggerObj_, triggerResults_, triggerResultsLabel_, triggerSummaryLabel_, and verbose_.
{ //---------- triggerResults ---------- iEvent.getByLabel(triggerResultsLabel_, triggerResults_); if(!triggerResults_.isValid()) { edm::InputTag triggerResultsLabelFU(triggerResultsLabel_.label(),triggerResultsLabel_.instance(), "FU"); iEvent.getByLabel(triggerResultsLabelFU,triggerResults_); if(!triggerResults_.isValid()) { edm::LogInfo("FourVectorHLTOffline") << "TriggerResults not found, " "skipping event"; return; } } //---------- triggerResults ---------- //int npath; if(&triggerResults_) { // Check how many HLT triggers are in triggerResults //npath = triggerResults_->size(); triggerNames_ = iEvent.triggerNames(*triggerResults_); } else { edm::LogInfo("CaloMETHLTOfflineSource") << "TriggerResults::HLT not found, " "automatically select events"; return; } //---------- triggerSummary ---------- iEvent.getByLabel(triggerSummaryLabel_,triggerObj_); if(!triggerObj_.isValid()) { edm::InputTag triggerSummaryLabelFU(triggerSummaryLabel_.label(),triggerSummaryLabel_.instance(), "FU"); iEvent.getByLabel(triggerSummaryLabelFU,triggerObj_); if(!triggerObj_.isValid()) { edm::LogInfo("FourVectorHLTOffline") << "TriggerEvent not found, " "skipping event"; return; } } //------------ Offline Objects ------- bool ValidJetColl_ = iEvent.getByLabel(caloJetsTag_,calojetColl_); if(!ValidJetColl_) return; calojet = *calojetColl_; //std::stable_sort( calojet.begin(), calojet.end(), PtSorter() ); bool ValidPFJetColl_ = iEvent.getByLabel(pfJetsTag_,pfjetColl_); if(!ValidPFJetColl_) return; pfjet = *pfjetColl_; //std::stable_sort( pfjet.begin(), pfjet.end(), PtSorter() ); bool ValidMETColl_ = iEvent.getByLabel(caloMETTag_, calometColl_); if(!ValidMETColl_) return; bool ValidPFMETColl_ = iEvent.getByLabel(pfMETTag_, pfmetColl_); if(!ValidPFMETColl_) return; //---------- Event counting (DEBUG) ---------- if(verbose_ && iEvent.id().event()%10000==0) cout<<"Run = "<<iEvent.id().run()<<", LS = "<<iEvent.luminosityBlock()<<", Event = "<<iEvent.id().event()<<endl; //Define on-the-fly correction Jet for(int i=0; i<2; i++){ CaloJetPx[i] = 0.; CaloJetPy[i] = 0.; CaloJetPt[i] = 0.; CaloJetEta[i] = 0.; CaloJetPhi[i] = 0.; CaloJetEMF[i] = 0.; CaloJetfHPD[i] = 0.; CaloJetn90[i] = 0.; PFJetPx[i] = 0.; PFJetPy[i] = 0.; PFJetPt[i] = 0.; PFJetEta[i] = 0.; PFJetPhi[i] = 0.; PFJetNHEF[i] = 0.; PFJetCHEF[i] = 0.; PFJetNEMF[i] = 0.; PFJetCEMF[i] = 0.; } //---------- CaloJet Correction (on-the-fly) ---------- const JetCorrector* calocorrector = JetCorrector::getJetCorrector(CaloJetCorService_,iSetup); CaloJetCollection::const_iterator calojet_ = calojet.begin(); for(; calojet_ != calojet.end(); ++calojet_){ double scale = calocorrector->correction(*calojet_,iEvent, iSetup); jetID->calculate(iEvent, *calojet_); if(scale*calojet_->pt()>CaloJetPt[0]){ CaloJetPt[1] = CaloJetPt[0]; CaloJetPx[1] = CaloJetPx[0]; CaloJetPy[1] = CaloJetPy[0]; CaloJetEta[1] = CaloJetEta[0]; CaloJetPhi[1] = CaloJetPhi[0]; CaloJetEMF[1] = CaloJetEMF[0]; CaloJetfHPD[1] = CaloJetfHPD[0]; CaloJetn90[1] = CaloJetn90[0]; // CaloJetPt[0] = scale*calojet_->pt(); CaloJetPx[0] = scale*calojet_->px(); CaloJetPy[0] = scale*calojet_->py(); CaloJetEta[0] = calojet_->eta(); CaloJetPhi[0] = calojet_->phi(); CaloJetEMF[0] = calojet_->emEnergyFraction(); CaloJetfHPD[0] = jetID->fHPD(); CaloJetn90[0] = jetID->n90Hits(); } else if(scale*calojet_->pt()<CaloJetPt[0] && scale*calojet_->pt()>CaloJetPt[1] ){ CaloJetPt[1] = scale*calojet_->pt(); CaloJetPx[1] = scale*calojet_->px(); CaloJetPy[1] = scale*calojet_->py(); CaloJetEta[1] = calojet_->eta(); CaloJetPhi[1] = calojet_->phi(); CaloJetEMF[1] = calojet_->emEnergyFraction(); CaloJetfHPD[1] = jetID->fHPD(); CaloJetn90[1] = jetID->n90Hits(); } else{} } //---------- PFJet Correction (on-the-fly) ---------- pfMHTx_All = 0.; pfMHTy_All = 0.; const JetCorrector* pfcorrector = JetCorrector::getJetCorrector(PFJetCorService_,iSetup); PFJetCollection::const_iterator pfjet_ = pfjet.begin(); for(; pfjet_ != pfjet.end(); ++pfjet_){ double scale = pfcorrector->correction(*pfjet_,iEvent, iSetup); pfMHTx_All = pfMHTx_All + scale*pfjet_->px(); pfMHTy_All = pfMHTy_All + scale*pfjet_->py(); if(scale*pfjet_->pt()>PFJetPt[0]){ PFJetPt[1] = PFJetPt[0]; PFJetPx[1] = PFJetPx[0]; PFJetPy[1] = PFJetPy[0]; PFJetEta[1] = PFJetEta[0]; PFJetPhi[1] = PFJetPhi[0]; PFJetNHEF[1] = PFJetNHEF[0]; PFJetCHEF[1] = PFJetCHEF[0]; PFJetNEMF[1] = PFJetNEMF[0]; PFJetCEMF[1] = PFJetCEMF[0]; // PFJetPt[0] = scale*pfjet_->pt(); PFJetPx[0] = scale*pfjet_->px(); PFJetPy[0] = scale*pfjet_->py(); PFJetEta[0] = pfjet_->eta(); PFJetPhi[0] = pfjet_->phi(); PFJetNHEF[0] = pfjet_->neutralHadronEnergyFraction(); PFJetCHEF[0] = pfjet_->chargedHadronEnergyFraction(); PFJetNEMF[0] = pfjet_->neutralEmEnergyFraction(); PFJetCEMF[0] = pfjet_->chargedEmEnergyFraction(); } else if(scale*pfjet_->pt()<PFJetPt[0] && scale*pfjet_->pt()>PFJetPt[1] ){ PFJetPt[1] = scale*pfjet_->pt(); PFJetPx[1] = scale*pfjet_->px(); PFJetPy[1] = scale*pfjet_->py(); PFJetEta[1] = pfjet_->eta(); PFJetPhi[1] = pfjet_->phi(); PFJetNHEF[1] = pfjet_->neutralHadronEnergyFraction(); PFJetCHEF[1] = pfjet_->chargedHadronEnergyFraction(); PFJetNEMF[1] = pfjet_->neutralEmEnergyFraction(); PFJetCEMF[1] = pfjet_->chargedEmEnergyFraction(); } else{} } if(verbose_){ for(int i = 0; i<2; i++){ cout<<"CaloJet-0: "<<CaloJetPt[i]<<", Eta = "<<CaloJetEta[i]<<", Phi = "<<CaloJetPhi[i]<<endl; cout<<"fHPD = "<<CaloJetfHPD[0]<<", n90 = "<<CaloJetn90[0]<<endl; } for(int i = 0; i<2; i++){ cout<<"PFJet-0: "<<PFJetPt[i]<<", Eta = "<<PFJetEta[i]<<", Phi = "<<PFJetPhi[i]<<endl; } } //---------- RUN ---------- fillMEforMonTriggerSummary(iEvent, iSetup); if(plotAll_) fillMEforMonAllTrigger(iEvent, iSetup); if(plotAllwrtMu_) fillMEforMonAllTriggerwrtMuonTrigger(iEvent,iSetup); if(plotEff_) fillMEforEffAllTrigger(iEvent,iSetup); if(plotEff_ && plotEffwrtMu_) fillMEforEffWrtMuTrigger(iEvent,iSetup); if(plotEff_ && plotEffwrtMB_) fillMEforEffWrtMBTrigger(iEvent,iSetup); if(runStandalone_) fillMEforTriggerNTfired(); }
void JetMETHLTOfflineSource::beginJob | ( | void | ) | [private, virtual] |
void JetMETHLTOfflineSource::beginLuminosityBlock | ( | const edm::LuminosityBlock & | lumiSeg, |
const edm::EventSetup & | c | ||
) | [private, virtual] |
void JetMETHLTOfflineSource::beginRun | ( | const edm::Run & | run, |
const edm::EventSetup & | c | ||
) | [private, virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 2688 of file JetMETHLTOfflineSource.cc.
References DQMStore::book1D(), DQMStore::book2D(), DQMStore::bookFloat(), config::checkPath, correlation_All, correlation_AllWrtMB, correlation_AllWrtMu, gather_cfg::cout, custompathnamepairs_, dbe, TrackerOfflineValidation_Dqm_cff::dirName, dirname_, reco::tau::disc::Eta(), SingleJetValidation_cfi::foldernm, getL1ConditionModuleName(), MonitorElement::getTH1(), hltConfig_, hltPathsAll_, hltPathsAllTriggerSummary_, hltPathsAllWrtMu_, hltPathsEff_, hltPathsEffWrtMB_, hltPathsEffWrtMu_, i, HLTConfigProvider::init(), isSetup_, reco::tau::disc::JetPt(), LogDebug, MBTrigPaths_, CaloMET_cfi::met, HLTConfigProvider::moduleLabels(), HLTConfigProvider::moduleType(), MuonTrigPaths_, N, n, nameForEff_, pileupCalc::nbins, NVertices, cppFunctionSkipper::operator, pathFilter_, timingPdfMaker::pathname, pathRejectKeyword_, colinearityKinematic::Phi, plotAll_, plotAllwrtMu_, plotEff_, plotEffwrtMB_, plotEffwrtMu_, processname_, reco::tau::disc::Pt(), PVZ, rate_All, rate_AllWrtMB, rate_AllWrtMu, HLTConfigProvider::removeVersion(), DQMStore::rmdir(), runStandalone_, MonitorElement::setBinLabel(), DQMStore::setCurrentFolder(), HLTConfigProvider::size(), indexGen::title, trigger::TriggerJet, trigger::TriggerMET, HLTConfigProvider::triggerName(), trigger::TriggerTET, v, and verbose_.
{ if(!isSetup_){ DQMStore *dbe = 0; dbe = Service<DQMStore>().operator->(); if (dbe) { dbe->setCurrentFolder(dirname_); dbe->rmdir(dirname_); } if (dbe) { dbe->setCurrentFolder(dirname_); } //--- htlConfig_ bool changed(true); if (!hltConfig_.init(run, c, processname_, changed)) { LogDebug("HLTJetMETDQMSource") << "HLTConfigProvider failed to initialize."; } /* Here we select the Single Jet, DiJet, MET trigger. SingleJet and DiJet trigger are saved under same object type "TriggerJet". We can easily separate out sing le and di jet trigger later. For the first trigger in the list, denominator trigger is dummy (empty) whereas for other triggers denom is previous trigger o f same type. e.g. SingleJet50 has singleJet30 as denominator. For defining histos wrt muon trigger, denominator is always set "MuonTrigger". This string later can be checked and condition can be applied on muon triggers . */ const unsigned int n(hltConfig_.size()); int singleJet = 0; int diJet = 0; int met = 0; int tet = 0; for (unsigned int i=0; i!=n; ++i) { bool denomFound = false; bool numFound = false; bool mbFound = false; bool muFound = false; bool checkPath = false; //Look for paths if "path name fraction" is found in the pathname std::string pathname = hltConfig_.triggerName(i); //Filter only paths JetMET triggers are interested in std::vector<std::string>::const_iterator controlPathname = pathFilter_.begin(); for(;controlPathname!=pathFilter_.end(); ++controlPathname){ if(pathname.find((*controlPathname)) != std::string::npos){ checkPath = true; break; } } if(checkPath==false) continue; //Reject if keyword(s) is found in the pathname std::vector<std::string>::const_iterator rejectPathname = pathRejectKeyword_.begin(); for(; rejectPathname!=pathRejectKeyword_.end();++rejectPathname){ if(pathname.find((*rejectPathname)) != std::string::npos){ checkPath = false; break; } } if(checkPath==false) continue; // if(verbose_) cout<<"==pathname=="<<pathname<<endl; std::string dpathname = MuonTrigPaths_[0]; std::string l1pathname = "dummy"; std::string denompathname = ""; unsigned int usedPrescale = 1; unsigned int objectType = 0; std::string triggerType = ""; std::string filtername("dummy"); std::string Denomfiltername("denomdummy"); if(pathname.find("Jet") != std::string::npos && !(pathname.find("DoubleJet") != std::string::npos) && !(pathname.find("DiJet") != std::string::npos) && !(pathname.find("DiPFJet") != std::string::npos) && !(pathname.find("BTag") != std::string::npos) && !(pathname.find("Mu") != std::string::npos) && !(pathname.find("Fwd") != std::string::npos)){ triggerType = "SingleJet_Trigger"; objectType = trigger::TriggerJet; } if(pathname.find("DiJet") != std::string::npos || pathname.find("DiPFJet") != std::string::npos || pathname.find("DoubleJet") != std::string::npos){ triggerType = "DiJet_Trigger"; objectType = trigger::TriggerJet; } if(pathname.find("MET") != std::string::npos){ triggerType = "MET_Trigger"; objectType = trigger::TriggerMET; } if(pathname.find("HT") != std::string::npos) { triggerType = "TET_Trigger"; objectType = trigger::TriggerTET; } // if(objectType == trigger::TriggerJet && !(pathname.find("DiJet") != std::string::npos) && !(pathname.find("DiPFJet") != std::string::npos) && !(pathname.find("DoubleJet") != std::string::npos)){ singleJet++; if(singleJet > 1) dpathname = dpathname = hltConfig_.triggerName(i-1); if(singleJet == 1) dpathname = MuonTrigPaths_[0]; } if(objectType == trigger::TriggerJet && ((pathname.find("DiJet") != std::string::npos) || (pathname.find("DiPFJet") != std::string::npos))){ diJet++; if(diJet > 1) dpathname = dpathname = hltConfig_.triggerName(i-1); if(diJet == 1) dpathname = MuonTrigPaths_[0]; } if(objectType == trigger::TriggerMET ){ met++; if(met > 1) dpathname = dpathname = hltConfig_.triggerName(i-1); if(met == 1) dpathname = MuonTrigPaths_[0]; } if(objectType == trigger::TriggerTET ){ tet++; if(tet > 1) dpathname = dpathname = hltConfig_.triggerName(i-1); if(tet == 1) dpathname = MuonTrigPaths_[0]; } // find L1 condition for numpath with numpath objecttype // find PSet for L1 global seed for numpath,sss // list module labels for numpath // Checking if the trigger exist in HLT table or not for (unsigned int i=0; i!=n; ++i){ std::string HLTname = hltConfig_.triggerName(i); if(HLTname == pathname) numFound = true; if(HLTname == dpathname) denomFound = true; if(HLTname.find(MBTrigPaths_[0]) != std::string::npos) mbFound = true; if(HLTname.find(MuonTrigPaths_[0]) != std::string::npos) muFound = true; //if(HLTname == MBTrigPaths_[0]) mbFound = true; //if(HLTname == MuonTrigPaths_[0]) muFound = true; } if(numFound){ //make trigger exist in the menu //ml needs change l1pathname l1pathname = getL1ConditionModuleName(pathname); //ml added L1conditionmodulename //ml added std::vector<std::string> numpathmodules = hltConfig_.moduleLabels(pathname); for(std::vector<std::string>::iterator numpathmodule = numpathmodules.begin(); numpathmodule!= numpathmodules.end(); ++numpathmodule ) { edm::InputTag testTag(*numpathmodule,"",processname_); if ((hltConfig_.moduleType(*numpathmodule) == "HLT1CaloJet") || (hltConfig_.moduleType(*numpathmodule) == "HLT1PFJet") || (hltConfig_.moduleType(*numpathmodule) == "HLTDiJetAveFilter") || (hltConfig_.moduleType(*numpathmodule) == "HLTDiPFJetAveFilter") || (hltConfig_.moduleType(*numpathmodule) == "HLT1CaloMET") || (hltConfig_.moduleType(*numpathmodule) == "HLTMhtFilter") || (hltConfig_.moduleType(*numpathmodule) == "HLTPrescaler")) filtername = *numpathmodule; } /* std::vector<std::string> numpathmodules = hltConfig_.moduleLabels(pathname); for(std::vector<std::string>::iterator numpathmodule = numpathmodules.begin(); numpathmodule!= numpathmodules.end(); ++numpathmodule ) { edm::InputTag testTag(*numpathmodule,"",processname_); if ((hltConfig_.moduleType(*numpathmodule) == "HLT1CaloJet") || (hltConfig_.moduleType(*numpathmodule) == "HLTDiJetAveFilter") || (hltConfig_.moduleType(*numpathmodule) == "HLT1CaloMET" ) || (hltConfig_.moduleType(*numpathmodule) == "HLTPrescaler")) filtername = *numpathmodule; if (hltConfig_.moduleType(*numpathmodule) == "HLTLevel1GTSeed")l1pathname = *numpathmodule; } */ } if(objectType != 0 && denomFound){ std::vector<std::string> numpathmodules = hltConfig_.moduleLabels(dpathname); for(std::vector<std::string>::iterator numpathmodule = numpathmodules.begin(); numpathmodule!= numpathmodules.end(); ++numpathmodule ) { edm::InputTag testTag(*numpathmodule,"",processname_); if ((hltConfig_.moduleType(*numpathmodule) == "HLT1CaloJet") || (hltConfig_.moduleType(*numpathmodule) == "HLT1PFJet") || (hltConfig_.moduleType(*numpathmodule) == "HLTDiJetAveFilter") || (hltConfig_.moduleType(*numpathmodule) == "HLTDiPFJetAveFilter") || (hltConfig_.moduleType(*numpathmodule) == "HLT1CaloMET" ) || (hltConfig_.moduleType(*numpathmodule) == "HLTMhtFilter") || (hltConfig_.moduleType(*numpathmodule) == "HLTPrescaler") ) Denomfiltername = *numpathmodule; } } if(objectType != 0 && numFound){ if(verbose_) cout<<"=Pathname= "<<pathname <<" | =Denompath= "<<dpathname <<" | =Filtername= "<<filtername <<" | =Denomfiltername= "<<Denomfiltername <<" | =L1pathname= "<<l1pathname <<" | =ObjectType= "<<objectType<<endl; if(!((pathname.find("HT") != std::string::npos) || (pathname.find("Quad") != std::string::npos))){ hltPathsAll_.push_back(PathInfo(usedPrescale, dpathname, pathname, l1pathname, filtername, Denomfiltername, processname_, objectType, triggerType)); if(muFound)hltPathsAllWrtMu_.push_back(PathInfo(usedPrescale, dpathname, pathname, l1pathname, filtername, Denomfiltername, processname_, objectType, triggerType)); if(muFound)hltPathsEffWrtMu_.push_back(PathInfo(usedPrescale, dpathname, pathname, l1pathname, filtername, Denomfiltername, processname_, objectType, triggerType)); if(mbFound)hltPathsEffWrtMB_.push_back(PathInfo(usedPrescale, dpathname, pathname, l1pathname, filtername, Denomfiltername, processname_, objectType, triggerType)); if(!nameForEff_ && denomFound) hltPathsEff_.push_back(PathInfo(usedPrescale, dpathname, pathname, l1pathname, filtername, Denomfiltername, processname_, objectType, triggerType)); } hltPathsAllTriggerSummary_.push_back(PathInfo(usedPrescale, dpathname, pathname, l1pathname, filtername, Denomfiltername, processname_, objectType, triggerType)); } } //Loop over paths if (verbose_) cout << "get names for efficicncy------------------"<< endl; //---------bool to pick trigger names pair from config file------------- if(nameForEff_){ std::string l1pathname = "dummy"; std::string denompathname = ""; unsigned int usedPrescale = 1; unsigned int objectType = 0; std::string triggerType = ""; std::string filtername("dummy"); std::string Denomfiltername("denomdummy"); for (std::vector<std::pair<std::string, std::string> >::iterator custompathnamepair = custompathnamepairs_.begin(); custompathnamepair != custompathnamepairs_.end(); ++custompathnamepair){ std::string pathname = custompathnamepair->first; std::string dpathname = custompathnamepair->second; bool numFound = false; bool denomFound = false; // Checking if the trigger exist in HLT table or not for (unsigned int i=0; i!=n; ++i) { std::string HLTname = hltConfig_.triggerName(i); if(HLTname.find(pathname)!=std::string::npos){numFound = true; pathname = HLTname;} //changed to get versions if(HLTname.find(dpathname)!=std::string::npos){denomFound = true; dpathname = HLTname;} //changed } if(numFound && denomFound){ if (pathname.find("Jet") != std::string::npos && !(pathname.find("DiJet") != std::string::npos) && !(pathname.find("DiPFJet") != std::string::npos) && !(pathname.find("DoubleJet") != std::string::npos) && !(pathname.find("BTag") != std::string::npos) && !(pathname.find("Mu") != std::string::npos) && !(pathname.find("Fwd") != std::string::npos)){ triggerType = "SingleJet_Trigger"; objectType = trigger::TriggerJet; } if (pathname.find("DiJet") != std::string::npos || pathname.find("DiPFJet") != std::string::npos || pathname.find("DoubleJet") != std::string::npos ){ triggerType = "DiJet_Trigger"; objectType = trigger::TriggerJet; } if (pathname.find("MET") != std::string::npos ){ triggerType = "MET_Trigger"; objectType = trigger::TriggerMET; } if (pathname.find("TET") != std::string::npos ){ triggerType = "TET_Trigger"; objectType = trigger::TriggerTET; } l1pathname = getL1ConditionModuleName(pathname); //ml added L1conditionmodulename std::vector<std::string> numpathmodules = hltConfig_.moduleLabels(pathname); for(std::vector<std::string>::iterator numpathmodule = numpathmodules.begin(); numpathmodule!= numpathmodules.end(); ++numpathmodule ) { edm::InputTag testTag(*numpathmodule,"",processname_); if ((hltConfig_.moduleType(*numpathmodule) == "HLT1CaloJet") || (hltConfig_.moduleType(*numpathmodule) == "HLT1PFJet") || (hltConfig_.moduleType(*numpathmodule) == "HLTDiJetAveFilter") || (hltConfig_.moduleType(*numpathmodule) == "HLTDiPFJetAveFilter") || (hltConfig_.moduleType(*numpathmodule) == "HLT1CaloMET" ) || (hltConfig_.moduleType(*numpathmodule) == "HLTMhtFilter") || (hltConfig_.moduleType(*numpathmodule) == "HLTPrescaler") ) filtername = *numpathmodule; } if(objectType != 0){ std::vector<std::string> numpathmodules = hltConfig_.moduleLabels(dpathname); for(std::vector<std::string>::iterator numpathmodule = numpathmodules.begin(); numpathmodule!= numpathmodules.end(); ++numpathmodule ) { edm::InputTag testTag(*numpathmodule,"",processname_); if ((hltConfig_.moduleType(*numpathmodule) == "HLT1CaloJet") || (hltConfig_.moduleType(*numpathmodule) == "HLT1PFJet") || (hltConfig_.moduleType(*numpathmodule) == "HLTDiJetAveFilter") || (hltConfig_.moduleType(*numpathmodule) == "HLTDiPFJetAveFilter") || (hltConfig_.moduleType(*numpathmodule) == "HLT1CaloMET" ) || (hltConfig_.moduleType(*numpathmodule) == "HLTMhtFilter") || (hltConfig_.moduleType(*numpathmodule) == "HLTPrescaler") ) Denomfiltername = *numpathmodule; } if(verbose_)cout<<"==pathname=="<<pathname <<"==denompath=="<<dpathname <<"==filtername=="<<filtername <<"==denomfiltername=="<<Denomfiltername <<"==l1pathname=="<<l1pathname <<"==objectType=="<<objectType<<endl; hltPathsEff_.push_back(PathInfo(usedPrescale, dpathname, pathname, l1pathname, filtername, Denomfiltername, processname_, objectType, triggerType)); } } } } if(verbose_)cout<<"== end hltPathsEff_.push_back ======" << endl; //----------------------------------------------------------------- //---book trigger summary histos if(!isSetup_){ std::string foldernm = "/TriggerSummary/"; if (dbe){ dbe->setCurrentFolder(dirname_ + foldernm); } int TrigBins_ = hltPathsAllTriggerSummary_.size(); double TrigMin_ = -0.5; double TrigMax_ = hltPathsAllTriggerSummary_.size()-0.5; std::string histonm="JetMET_TriggerRate"; std::string histot="JetMET TriggerRate Summary"; rate_All = dbe->book1D(histonm.c_str(),histot.c_str(),TrigBins_,TrigMin_,TrigMax_); histonm = "JetMET_TriggerRate_Correlation"; histot = "JetMET TriggerRate Correlation Summary;y&&!x;x&&y"; correlation_All = dbe->book2D(histonm.c_str(),histot.c_str(),TrigBins_,TrigMin_,TrigMax_,TrigBins_,TrigMin_,TrigMax_); histonm = "JetMET_NVertices"; histot = "No. of vertices"; NVertices = dbe->book1D(histonm.c_str(),histot.c_str(),100,0,50); histonm = "JetMET_PVZ"; histot = "Primary Vertex Z pos"; PVZ = dbe->book1D(histonm.c_str(),histot.c_str(),100,-50.,50.); if(runStandalone_){ histonm="JetMET_TriggerRate_WrtMuTrigger"; histot="JetMET TriggerRate Summary Wrt Muon Trigger "; rate_AllWrtMu = dbe->book1D(histonm.c_str(),histot.c_str(),TrigBins_,TrigMin_,TrigMax_); histonm="JetMET_TriggerRate_Correlation_WrtMuTrigger"; histot="JetMET TriggerRate Correlation Summary Wrt Muon Trigger;y&&!x;x&&y"; correlation_AllWrtMu = dbe->book2D(histonm.c_str(),histot.c_str(),TrigBins_,TrigMin_,TrigMax_,TrigBins_,TrigMin_,TrigMax_); histonm="JetMET_TriggerRate_WrtMBTrigger"; histot="JetMET TriggerRate Summary Wrt MB Trigger"; rate_AllWrtMB = dbe->book1D(histonm.c_str(),histot.c_str(),TrigBins_,TrigMin_,TrigMax_); histonm="JetMET_TriggerRate_Correlation_WrtMBTrigger"; histot="JetMET TriggerRate Correlation Wrt MB Trigger;y&&!x;x&&y"; correlation_AllWrtMB = dbe->book2D(histonm.c_str(),histot.c_str(),TrigBins_,TrigMin_,TrigMax_,TrigBins_,TrigMin_,TrigMax_); } isSetup_ = true; } //---Set bin label for(PathInfoCollection::iterator v = hltPathsAllTriggerSummary_.begin(); v!= hltPathsAllTriggerSummary_.end(); ++v ){ std::string labelnm("dummy"); labelnm = v->getPath(); int nbins = rate_All->getTH1()->GetNbinsX(); for(int ibin=1; ibin<nbins+1; ibin++){ const char * binLabel = rate_All->getTH1()->GetXaxis()->GetBinLabel(ibin); std::string binLabel_str = string(binLabel); if(binLabel_str.compare(labelnm)==0)break; if(binLabel[0]=='\0'){ rate_All->setBinLabel(ibin,labelnm); correlation_All->setBinLabel(ibin,labelnm,1); correlation_All->setBinLabel(ibin,labelnm,2); if(runStandalone_){ rate_AllWrtMu->setBinLabel(ibin,labelnm); rate_AllWrtMB->setBinLabel(ibin,labelnm); correlation_AllWrtMu->setBinLabel(ibin,labelnm,1); correlation_AllWrtMB->setBinLabel(ibin,labelnm,1); correlation_AllWrtMu->setBinLabel(ibin,labelnm,2); correlation_AllWrtMB->setBinLabel(ibin,labelnm,2); } break; } } } // Now define histos for All triggers if(plotAll_){ // int Nbins_ = 10; int Nmin_ = -0.5; int Nmax_ = 9.5; // int Ptbins_ = 100; if(runStandalone_) Ptbins_ = 1000; double PtMin_ = 0.; double PtMax_ = 1000.; // int Etabins_ = 50; if(runStandalone_) Etabins_ = 100; double EtaMin_ = -5.; double EtaMax_ = 5.; // int Phibins_ = 35; double PhiMin_ = -3.5; double PhiMax_ = 3.5; int Resbins_ = 30; double ResMin_ = -1.5; double ResMax_ = 1.5; // std::string dirName = dirname_ + "/MonitorAllTriggers/"; for(PathInfoCollection::iterator v = hltPathsAll_.begin(); v!= hltPathsAll_.end(); ++v ){ // std::string trgPathName = HLTConfigProvider::removeVersion(v->getPath()); std::string subdirName = dirName + trgPathName; std::string trigPath = "("+trgPathName+")"; dbe->setCurrentFolder(subdirName); std::string labelname("ME"); std::string histoname(labelname+""); std::string title(labelname+""); MonitorElement *dummy; dummy = dbe->bookFloat("dummy"); if(v->getObjectType() == trigger::TriggerJet && v->getTriggerType().compare("SingleJet_Trigger") == 0){ histoname = labelname+"_recObjN"; title = labelname+"_recObjN;Reco multiplicity()"+trigPath; MonitorElement * N = dbe->book1D(histoname.c_str(),title.c_str(),Nbins_,Nmin_,Nmax_); N->getTH1(); histoname = labelname+"_recObjPt"; title = labelname+"_recObjPt; Reco Pt[GeV/c]"+trigPath; MonitorElement * Pt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); Pt->getTH1(); histoname = labelname+"_recObjPtBarrel"; title = labelname+"_recObjPtBarrel;Reco Pt[GeV/c]"+trigPath; MonitorElement * PtBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); PtBarrel->getTH1(); histoname = labelname+"_recObjPtEndcap"; title = labelname+"_recObjPtEndcap;Reco Pt[GeV/c]"+trigPath; MonitorElement * PtEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); PtEndcap->getTH1(); histoname = labelname+"_recObjPtForward"; title = labelname+"_recObjPtForward;Reco Pt[GeV/c]"+trigPath; MonitorElement * PtForward = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); PtForward->getTH1(); histoname = labelname+"_recObjEta"; title = labelname+"_recObjEta;Reco #eta"+trigPath; MonitorElement * Eta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); Eta->getTH1(); histoname = labelname+"_recObjPhi"; title = labelname+"_recObjPhi;Reco #Phi"+trigPath; MonitorElement * Phi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); Phi->getTH1(); histoname = labelname+"_recObjEtaPhi"; title = labelname+"_recObjEtaPhi;Reco #eta;Reco #Phi"+trigPath; MonitorElement * EtaPhi = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); EtaPhi->getTH1(); histoname = labelname+"_l1ObjPt"; title = labelname+"_l1ObjPt;L1 Pt[GeV/c]"+trigPath; MonitorElement * Pt_L1 = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); Pt_L1->getTH1(); histoname = labelname+"_l1ObjEta"; title = labelname+"_l1ObjEta;L1 #eta"+trigPath; MonitorElement * Eta_L1 = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); Eta_L1->getTH1(); histoname = labelname+"_l1ObjPhi"; title = labelname+"_l1ObjPhi;L1 #Phi"+trigPath; MonitorElement * Phi_L1 = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); Phi_L1->getTH1(); histoname = labelname+"_l1ObjEtaPhi"; title = labelname+"_l1ObjEtaPhi;L1 #eta;L1 #Phi"+trigPath; MonitorElement * EtaPhi_L1 = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); EtaPhi_L1->getTH1(); histoname = labelname+"_l1ObjN"; title = labelname+"_l1ObjN;L1 multiplicity"+trigPath; MonitorElement * N_L1 = dbe->book1D(histoname.c_str(),title.c_str(),Nbins_,Nmin_,Nmax_); N_L1->getTH1(); histoname = labelname+"_l1ObjPtBarrel"; title = labelname+"_l1ObjPtBarrel;L1 Pt[GeV/c]"+trigPath; MonitorElement * PtBarrel_L1 = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); PtBarrel_L1->getTH1(); histoname = labelname+"_l1ObjPtEndcap"; title = labelname+"_l1ObjPtEndcap;L1 Pt[GeV/c]"+trigPath; MonitorElement * PtEndcap_L1 = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); PtEndcap_L1->getTH1(); histoname = labelname+"_l1ObjPtForward"; title = labelname+"_l1ObjPtForward;L1 Pt[GeV/c]"+trigPath; MonitorElement * PtForward_L1 = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); PtForward_L1->getTH1(); histoname = labelname+"_hltObjN"; title = labelname+"_hltObjN;HLT multiplicity"+trigPath; MonitorElement * N_HLT = dbe->book1D(histoname.c_str(),title.c_str(),Nbins_,Nmin_,Nmax_); N_HLT->getTH1(); histoname = labelname+"_hltObjPtBarrel"; title = labelname+"_hltObjPtBarrel;HLT Pt[GeV/c]"+trigPath; MonitorElement * PtBarrel_HLT = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); PtBarrel_HLT->getTH1(); histoname = labelname+"_hltObjPtEndcap"; title = labelname+"_hltObjPtEndcap;HLT Pt[GeV/c]"+trigPath; MonitorElement * PtEndcap_HLT = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); PtEndcap_HLT->getTH1(); histoname = labelname+"_hltObjPtForward"; title = labelname+"_hltObjPtForward;HLT Pt[GeV/c]"+trigPath; MonitorElement * PtForward_HLT = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); PtForward_HLT->getTH1(); histoname = labelname+"_hltObjPt"; title = labelname+"_hltObjPt;HLT Pt[GeV/c]"+trigPath; MonitorElement * Pt_HLT = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); Pt_HLT->getTH1(); histoname = labelname+"_hltObjEta"; title = labelname+"_hltObjEta;HLT #eta"+trigPath; MonitorElement * Eta_HLT = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); Eta_HLT->getTH1(); histoname = labelname+"_hltObjPhi"; title = labelname+"_hltObjPhi;HLT #Phi"+trigPath; MonitorElement * Phi_HLT = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); Phi_HLT->getTH1(); histoname = labelname+"_hltObjEtaPhi"; title = labelname+"_hltObjEtaPhi;HLT #eta;HLT #Phi"+trigPath; MonitorElement * EtaPhi_HLT = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); EtaPhi_HLT->getTH1(); histoname = labelname+"_l1HLTPtResolution"; title = labelname+"_l1HLTPtResolution;(Pt(L1)-Pt(HLT))/Pt(L1)"+trigPath; MonitorElement * PtResolution_L1HLT = dbe->book1D(histoname.c_str(),title.c_str(),Resbins_,ResMin_,ResMax_); PtResolution_L1HLT->getTH1(); histoname = labelname+"_l1HLTEtaResolution"; title = labelname+"_l1HLTEtaResolution;(#eta(L1)-#eta(HLT))/#eta(L1)"+trigPath; MonitorElement * EtaResolution_L1HLT = dbe->book1D(histoname.c_str(),title.c_str(),Resbins_,ResMin_,ResMax_); EtaResolution_L1HLT->getTH1(); histoname = labelname+"_l1HLTPhiResolution"; title = labelname+"_l1HLTPhiResolution;(#Phi(L1)-#Phi(HLT))/#Phi(L1)"+trigPath; MonitorElement * PhiResolution_L1HLT = dbe->book1D(histoname.c_str(),title.c_str(),Resbins_,ResMin_,ResMax_); PhiResolution_L1HLT->getTH1(); histoname = labelname+"_l1HLTPtCorrelation"; title = labelname+"_l1HLTPtCorrelation;Pt(L1)[GeV/c];Pt(HLT)[GeV/c]"+trigPath; MonitorElement * PtCorrelation_L1HLT = dbe->book2D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_,Ptbins_,PtMin_,PtMax_); PtCorrelation_L1HLT->getTH1(); histoname = labelname+"_l1HLTEtaCorrelation"; title = labelname+"_l1HLTEtaCorrelation;#eta(L1);#eta(HLT)"+trigPath; MonitorElement * EtaCorrelation_L1HLT = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Etabins_,EtaMin_,EtaMax_); EtaCorrelation_L1HLT->getTH1(); histoname = labelname+"_l1HLTPhiCorrelation"; title = labelname+"_l1HLTPhiCorrelation;#Phi(L1);#Phi(HLT)"+trigPath; MonitorElement * PhiCorrelation_L1HLT = dbe->book2D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_,Phibins_,PhiMin_,PhiMax_); PhiCorrelation_L1HLT->getTH1(); histoname = labelname+"_hltRecObjPtResolution"; title = labelname+"_hltRecObjPtResolution;(Pt(HLT)-Pt(Reco))/Pt(HLT)"+trigPath; MonitorElement * PtResolution_HLTRecObj = dbe->book1D(histoname.c_str(),title.c_str(),Resbins_,ResMin_,ResMax_); PtResolution_HLTRecObj->getTH1(); histoname = labelname+"_hltRecObjEtaResolution"; title = labelname+"_hltRecObjEtaResolution;(#eta(HLT)-#eta(Reco))/#eta(HLT)"+trigPath; MonitorElement * EtaResolution_HLTRecObj = dbe->book1D(histoname.c_str(),title.c_str(),Resbins_,ResMin_,ResMax_); EtaResolution_HLTRecObj->getTH1(); histoname = labelname+"_hltRecObjPhiResolution"; title = labelname+"_hltRecObjPhiResolution;(#Phi(HLT)-#Phi(Reco))/#Phi(HLT)"+trigPath; MonitorElement * PhiResolution_HLTRecObj = dbe->book1D(histoname.c_str(),title.c_str(),Resbins_,ResMin_,ResMax_); PhiResolution_HLTRecObj->getTH1(); histoname = labelname+"_hltRecObjPtCorrelation"; title = labelname+"_hltRecObjPtCorrelation;Pt(HLT)[GeV/c];Pt(Reco)[GeV/c]"+trigPath; MonitorElement * PtCorrelation_HLTRecObj = dbe->book2D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_,Ptbins_,PtMin_,PtMax_); PtCorrelation_HLTRecObj->getTH1(); histoname = labelname+"_hltRecObjEtaCorrelation"; title = labelname+"_hltRecObjEtaCorrelation;#eta(HLT);#eta(Reco)"+trigPath; MonitorElement * EtaCorrelation_HLTRecObj = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Etabins_,EtaMin_,EtaMax_); EtaCorrelation_HLTRecObj->getTH1(); histoname = labelname+"_hltRecObjPhiCorrelation"; title = labelname+"_hltRecObjPhiCorrelation;#Phi(HLT);#Phi(Reco)"+trigPath; MonitorElement * PhiCorrelation_HLTRecObj = dbe->book2D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_,Phibins_,PhiMin_,PhiMax_); PhiCorrelation_HLTRecObj->getTH1(); v->setHistos(N, Pt, PtBarrel, PtEndcap, PtForward, Eta, Phi, EtaPhi, N_L1, Pt_L1, PtBarrel_L1, PtEndcap_L1, PtForward_L1, Eta_L1, Phi_L1, EtaPhi_L1, N_HLT, Pt_HLT, PtBarrel_HLT, PtEndcap_HLT, PtForward_HLT, Eta_HLT, Phi_HLT, EtaPhi_HLT, PtResolution_L1HLT, EtaResolution_L1HLT, PhiResolution_L1HLT, PtResolution_HLTRecObj, EtaResolution_HLTRecObj, PhiResolution_HLTRecObj, PtCorrelation_L1HLT, EtaCorrelation_L1HLT, PhiCorrelation_L1HLT, PtCorrelation_HLTRecObj, EtaCorrelation_HLTRecObj, PhiCorrelation_HLTRecObj, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy ); }// histos for SingleJet Triggers if(v->getObjectType() == trigger::TriggerJet && v->getTriggerType().compare("DiJet_Trigger") == 0){ histoname = labelname+"_RecObjAveragePt"; title = labelname+"_RecObjAveragePt;Reco Average Pt[GeV/c]"+trigPath; MonitorElement * jetAveragePt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); jetAveragePt->getTH1(); histoname = labelname+"_RecObjAverageEta"; title = labelname+"_RecObjAverageEta;Reco Average #eta"+trigPath; MonitorElement * jetAverageEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); jetAverageEta->getTH1(); histoname = labelname+"_RecObjPhiDifference"; title = labelname+"_RecObjPhiDifference;Reco #Delta#Phi"+trigPath; MonitorElement * jetPhiDifference = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); jetPhiDifference->getTH1(); histoname = labelname+"_hltObjAveragePt"; title = labelname+"_hltObjAveragePt;HLT Average Pt[GeV/c]"+trigPath; MonitorElement * hltAveragePt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); hltAveragePt->getTH1(); histoname = labelname+"_hltObjAverageEta"; title = labelname+"_hltObjAverageEta;HLT Average #eta"+trigPath; MonitorElement * hltAverageEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); hltAverageEta->getTH1(); histoname = labelname+"_hltObjPhiDifference"; title = labelname+"_hltObjPhiDifference;Reco #Delta#Phi"+trigPath; MonitorElement * hltPhiDifference = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); hltPhiDifference->getTH1(); v->setHistos(dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, jetAveragePt, jetAverageEta, jetPhiDifference, hltAveragePt, hltAverageEta, hltPhiDifference, dummy, dummy, dummy ); }// histos for DiJet Triggers if(v->getObjectType() == trigger::TriggerMET || (v->getObjectType() == trigger::TriggerTET)){ histoname = labelname+"_recObjPt"; title = labelname+"_recObjPt;Reco Pt[GeV/c]"+trigPath; MonitorElement * Pt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); Pt->getTH1(); histoname = labelname+"_recObjPhi"; title = labelname+"_recObjPhi;Reco #Phi"+trigPath; MonitorElement * Phi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); Phi->getTH1(); histoname = labelname+"_l1ObjPt"; title = labelname+"_l1ObjPt;L1 Pt[GeV/c]"+trigPath; MonitorElement * Pt_L1 = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); Pt_L1->getTH1(); histoname = labelname+"_l1ObjPhi"; title = labelname+"_l1ObjPhi;L1 #Phi"+trigPath; MonitorElement * Phi_L1 = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); Phi_L1->getTH1(); histoname = labelname+"_hltObjPt"; title = labelname+"_hltObjPt;HLT Pt[GeV/c]"+trigPath; MonitorElement * Pt_HLT = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); Pt_HLT->getTH1(); histoname = labelname+"_hltObjPhi"; title = labelname+"_hltObjPhi;HLT #Phi"+trigPath; MonitorElement * Phi_HLT = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); Phi_HLT->getTH1(); histoname = labelname+"_l1HLTPtResolution"; title = labelname+"_l1HLTPtResolution;(Pt(L1)-Pt(HLT))/Pt(L1)"+trigPath; MonitorElement * PtResolution_L1HLT = dbe->book1D(histoname.c_str(),title.c_str(),Resbins_,ResMin_,ResMax_); PtResolution_L1HLT->getTH1(); histoname = labelname+"_l1HLTPhiResolution"; title = labelname+"_l1HLTPhiResolution;(#Phi(L1)-#Phi(HLT))/#Phi(L1)"+trigPath; MonitorElement * PhiResolution_L1HLT = dbe->book1D(histoname.c_str(),title.c_str(),Resbins_,ResMin_,ResMax_); PhiResolution_L1HLT->getTH1(); histoname = labelname+"_l1HLTPtCorrelation"; title = labelname+"_l1HLTPtCorrelation;Pt(L1)[GeV/c];Pt(HLT)[GeV/c]"+trigPath; MonitorElement * PtCorrelation_L1HLT = dbe->book2D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_,Ptbins_,PtMin_,PtMax_); PtCorrelation_L1HLT->getTH1(); histoname = labelname+"_l1HLTPhiCorrelation"; title = labelname+"_l1HLTPhiCorrelation;#Phi(L1);#Phi(HLT)"+trigPath; MonitorElement * PhiCorrelation_L1HLT = dbe->book2D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_,Phibins_,PhiMin_,PhiMax_); PhiCorrelation_L1HLT->getTH1(); histoname = labelname+"_hltRecObjPtResolution"; title = labelname+"_hltRecObjPtResolution;(Pt(HLT)-Pt(Reco))/Pt(HLT)"+trigPath; MonitorElement * PtResolution_HLTRecObj = dbe->book1D(histoname.c_str(),title.c_str(),Resbins_,ResMin_,ResMax_); PtResolution_HLTRecObj->getTH1(); histoname = labelname+"_hltRecObjPhiResolution"; title = labelname+"_hltRecObjPhiResolution;(#Phi(HLT)-#Phi(Reco))/#Phi(HLT)"+trigPath; MonitorElement * PhiResolution_HLTRecObj = dbe->book1D(histoname.c_str(),title.c_str(),Resbins_,ResMin_,ResMax_); PhiResolution_HLTRecObj->getTH1(); histoname = labelname+"_hltRecObjPtCorrelation"; title = labelname+"_hltRecObjPtCorrelation;Pt(HLT)[GeV/c];Pt(Reco)[GeV/c]"+trigPath; MonitorElement * PtCorrelation_HLTRecObj = dbe->book2D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_,Ptbins_,PtMin_,PtMax_); PtCorrelation_HLTRecObj->getTH1(); histoname = labelname+"_hltRecObjPhiCorrelation"; title = labelname+"_hltRecObjPhiCorrelation;#Phi(HLT);#Phi(Reco)"+trigPath; MonitorElement * PhiCorrelation_HLTRecObj = dbe->book2D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_,Phibins_,PhiMin_,PhiMax_); PhiCorrelation_HLTRecObj->getTH1(); v->setHistos(dummy, Pt, dummy, dummy, dummy, dummy, Phi, dummy, dummy, Pt_L1, dummy, dummy, dummy, dummy, Phi_L1, dummy, dummy, Pt_HLT, dummy, dummy, dummy, dummy, Phi_HLT, dummy, PtResolution_L1HLT, dummy, PhiResolution_L1HLT, PtResolution_HLTRecObj, dummy, PhiResolution_HLTRecObj, PtCorrelation_L1HLT, dummy, PhiCorrelation_L1HLT, PtCorrelation_HLTRecObj, dummy, PhiCorrelation_HLTRecObj, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy ); }// histos for MET Triggers } } if(plotAllwrtMu_){ int Nbins_ = 10; int Nmin_ = -0.5; int Nmax_ = 9.5; // int Ptbins_ = 100; if(runStandalone_) Ptbins_ = 1000; double PtMin_ = 0.; double PtMax_ = 1000.; // int Etabins_ = 50; double EtaMin_ = -5.; double EtaMax_ = 5.; // int Phibins_ = 35; double PhiMin_ = -3.5; double PhiMax_ = 3.5; // int Resbins_ = 30; double ResMin_ = -1.5; double ResMax_ = 1.5; // Now define histos wrt Muon trigger std::string dirName = dirname_ + "/MonitorAllTriggersWrtMuonTrigger/"; for(PathInfoCollection::iterator v = hltPathsAllWrtMu_.begin(); v!= hltPathsAllWrtMu_.end(); ++v ){ // std::string trgPathName = HLTConfigProvider::removeVersion(v->getPath()); std::string subdirName = dirName + trgPathName; std::string trigPath = "("+trgPathName+")"; dbe->setCurrentFolder(subdirName); // MonitorElement * dummy; dummy = dbe->bookFloat("dummy"); // std::string labelname("ME"); std::string histoname(labelname+""); std::string title(labelname+""); // if(v->getObjectType() == trigger::TriggerJet && v->getTriggerType().compare("SingleJet_Trigger") == 0){ histoname = labelname+"_recObjN"; title = labelname+"_recObjN;Reco multiplicity()"+trigPath; MonitorElement * N = dbe->book1D(histoname.c_str(),title.c_str(),Nbins_,Nmin_,Nmax_); N->getTH1(); histoname = labelname+"_recObjPt"; title = labelname+"_recObjPt; Reco Pt[GeV/c]"+trigPath; MonitorElement * Pt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); Pt->getTH1(); histoname = labelname+"_recObjPtBarrel"; title = labelname+"_recObjPtBarrel;Reco Pt[GeV/c]"+trigPath; MonitorElement * PtBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); PtBarrel->getTH1(); histoname = labelname+"_recObjPtEndcap"; title = labelname+"_recObjPtEndcap;Reco Pt[GeV/c]"+trigPath; MonitorElement * PtEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); PtEndcap->getTH1(); histoname = labelname+"_recObjPtForward"; title = labelname+"_recObjPtForward;Reco Pt[GeV/c]"+trigPath; MonitorElement * PtForward = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); PtForward->getTH1(); histoname = labelname+"_recObjEta"; title = labelname+"_recObjEta;Reco #eta"+trigPath; MonitorElement * Eta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); Eta->getTH1(); histoname = labelname+"_recObjPhi"; title = labelname+"_recObjPhi;Reco #Phi"+trigPath; MonitorElement * Phi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); Phi->getTH1(); histoname = labelname+"_recObjEtaPhi"; title = labelname+"_recObjEtaPhi;Reco #eta;Reco #Phi"+trigPath; MonitorElement * EtaPhi = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); EtaPhi->getTH1(); histoname = labelname+"_l1ObjN"; title = labelname+"_l1ObjN;L1 multiplicity"+trigPath; MonitorElement * N_L1 = dbe->book1D(histoname.c_str(),title.c_str(),Nbins_,Nmin_,Nmax_); N_L1->getTH1(); histoname = labelname+"_l1ObjPt"; title = labelname+"_l1ObjPt;L1 Pt[GeV/c]"+trigPath; MonitorElement * Pt_L1 = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); Pt_L1->getTH1(); histoname = labelname+"_l1ObjPtBarrel"; title = labelname+"_l1ObjPtBarrel;L1 Pt[GeV/c]"+trigPath; MonitorElement * PtBarrel_L1 = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); PtBarrel_L1->getTH1(); histoname = labelname+"_l1ObjPtEndcap"; title = labelname+"_l1ObjPtEndcap;L1 Pt[GeV/c]"+trigPath; MonitorElement * PtEndcap_L1 = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); PtEndcap_L1->getTH1(); histoname = labelname+"_l1ObjPtForward"; title = labelname+"_l1ObjPtForward;L1 Pt[GeV/c]"+trigPath; MonitorElement * PtForward_L1 = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); PtForward_L1->getTH1(); histoname = labelname+"_l1ObjEta"; title = labelname+"_l1ObjEta;L1 #eta"+trigPath; MonitorElement * Eta_L1 = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); Eta_L1->getTH1(); histoname = labelname+"_l1ObjPhi"; title = labelname+"_l1ObjPhi;L1 #Phi"+trigPath; MonitorElement * Phi_L1 = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); Phi_L1->getTH1(); histoname = labelname+"_l1ObjEtaPhi"; title = labelname+"_l1ObjEtaPhi;L1 #eta;L1 #Phi"+trigPath; MonitorElement * EtaPhi_L1 = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); EtaPhi_L1->getTH1(); histoname = labelname+"_hltObjN"; title = labelname+"_hltObjN;HLT multiplicity"+trigPath; MonitorElement * N_HLT = dbe->book1D(histoname.c_str(),title.c_str(),Nbins_,Nmin_,Nmax_); N_HLT->getTH1(); histoname = labelname+"_hltObjPt"; title = labelname+"_hltObjPt;HLT Pt[GeV/c]"+trigPath; MonitorElement * Pt_HLT = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); Pt_HLT->getTH1(); histoname = labelname+"_hltObjPtBarrel"; title = labelname+"_hltObjPtBarrel;HLT Pt[GeV/c]"+trigPath; MonitorElement * PtBarrel_HLT = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); PtBarrel_HLT->getTH1(); histoname = labelname+"_hltObjPtEndcap"; title = labelname+"_hltObjPtEndcap;HLT Pt[GeV/c]"+trigPath; MonitorElement * PtEndcap_HLT = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); PtEndcap_HLT->getTH1(); histoname = labelname+"_hltObjPtForward"; title = labelname+"_hltObjPtForward;HLT Pt[GeV/c]"+trigPath; MonitorElement * PtForward_HLT = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); PtForward_HLT->getTH1(); histoname = labelname+"_hltObjEta"; title = labelname+"_hltObjEta;HLT #eta"+trigPath; MonitorElement * Eta_HLT = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); Eta_HLT->getTH1(); histoname = labelname+"_hltObjPhi"; title = labelname+"_hltObjPhi;HLT #Phi"+trigPath; MonitorElement * Phi_HLT = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); Phi_HLT->getTH1(); histoname = labelname+"_hltObjEtaPhi"; title = labelname+"_hltObjEtaPhi;HLT #eta;HLT #Phi"+trigPath; MonitorElement * EtaPhi_HLT = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); EtaPhi_HLT->getTH1(); histoname = labelname+"_l1HLTPtResolution"; title = labelname+"_l1HLTPtResolution;(Pt(L1)-Pt(HLT))/Pt(L1)"+trigPath; MonitorElement * PtResolution_L1HLT = dbe->book1D(histoname.c_str(),title.c_str(),Resbins_,ResMin_,ResMax_); PtResolution_L1HLT->getTH1(); histoname = labelname+"_l1HLTEtaResolution"; title = labelname+"_l1HLTEtaResolution;(#eta(L1)-#eta(HLT))/#eta(L1)"+trigPath; MonitorElement * EtaResolution_L1HLT = dbe->book1D(histoname.c_str(),title.c_str(),Resbins_,ResMin_,ResMax_); EtaResolution_L1HLT->getTH1(); histoname = labelname+"_l1HLTPhiResolution"; title = labelname+"_l1HLTPhiResolution;(#Phi(L1)-#Phi(HLT))/#Phi(L1)"+trigPath; MonitorElement * PhiResolution_L1HLT = dbe->book1D(histoname.c_str(),title.c_str(),Resbins_,ResMin_,ResMax_); PhiResolution_L1HLT->getTH1(); histoname = labelname+"_l1HLTPtCorrelation"; title = labelname+"_l1HLTPtCorrelation;Pt(L1)[GeV/c];Pt(HLT)[GeV/c]"+trigPath; MonitorElement * PtCorrelation_L1HLT = dbe->book2D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_,Ptbins_,PtMin_,PtMax_); PtCorrelation_L1HLT->getTH1(); histoname = labelname+"_l1HLTEtaCorrelation"; title = labelname+"_l1HLTEtaCorrelation;#eta(L1);#eta(HLT)"+trigPath; MonitorElement * EtaCorrelation_L1HLT = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Etabins_,EtaMin_,EtaMax_); EtaCorrelation_L1HLT->getTH1(); histoname = labelname+"_l1HLTPhiCorrelation"; title = labelname+"_l1HLTPhiCorrelation;#Phi(L1);#Phi(HLT)"+trigPath; MonitorElement * PhiCorrelation_L1HLT = dbe->book2D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_,Phibins_,PhiMin_,PhiMax_); PhiCorrelation_L1HLT->getTH1(); histoname = labelname+"_hltRecObjPtResolution"; title = labelname+"_hltRecObjPtResolution;(Pt(HLT)-Pt(Reco))/Pt(HLT)"+trigPath; MonitorElement * PtResolution_HLTRecObj = dbe->book1D(histoname.c_str(),title.c_str(),Resbins_,ResMin_,ResMax_); PtResolution_HLTRecObj->getTH1(); histoname = labelname+"_hltRecObjEtaResolution"; title = labelname+"_hltRecObjEtaResolution;(#eta(HLT)-#eta(Reco))/#eta(HLT)"+trigPath; MonitorElement * EtaResolution_HLTRecObj = dbe->book1D(histoname.c_str(),title.c_str(),Resbins_,ResMin_,ResMax_); EtaResolution_HLTRecObj->getTH1(); histoname = labelname+"_hltRecObjPhiResolution"; title = labelname+"_hltRecObjPhiResolution;(#Phi(HLT)-#Phi(Reco))/#Phi(HLT)"+trigPath; MonitorElement * PhiResolution_HLTRecObj = dbe->book1D(histoname.c_str(),title.c_str(),Resbins_,ResMin_,ResMax_); PhiResolution_HLTRecObj->getTH1(); histoname = labelname+"_hltRecObjPtCorrelation"; title = labelname+"_hltRecObjPtCorrelation;Pt(HLT)[GeV/c];Pt(Reco)[GeV/c]"+trigPath; MonitorElement * PtCorrelation_HLTRecObj = dbe->book2D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_,Ptbins_,PtMin_,PtMax_); PtCorrelation_HLTRecObj->getTH1(); histoname = labelname+"_hltRecObjEtaCorrelation"; title = labelname+"_hltRecObjEtaCorrelation;#eta(HLT);#eta(Reco)"+trigPath; MonitorElement * EtaCorrelation_HLTRecObj = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Etabins_,EtaMin_,EtaMax_); EtaCorrelation_HLTRecObj->getTH1(); histoname = labelname+"_hltRecObjPhiCorrelation"; title = labelname+"_hltRecObjPhiCorrelation;#Phi(HLT);#Phi(Reco)"+trigPath; MonitorElement * PhiCorrelation_HLTRecObj = dbe->book2D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_,Phibins_,PhiMin_,PhiMax_); PhiCorrelation_HLTRecObj->getTH1(); v->setHistos(N, Pt, PtBarrel, PtEndcap, PtForward, Eta, Phi, EtaPhi, N_L1, Pt_L1, PtBarrel_L1, PtEndcap_L1, PtForward_L1, Eta_L1, Phi_L1, EtaPhi_L1, N_HLT, Pt_HLT, PtBarrel_HLT, PtEndcap_HLT, PtForward_HLT, Eta_HLT, Phi_HLT, EtaPhi_HLT, PtResolution_L1HLT, EtaResolution_L1HLT, PhiResolution_L1HLT, PtResolution_HLTRecObj, EtaResolution_HLTRecObj, PhiResolution_HLTRecObj, PtCorrelation_L1HLT, EtaCorrelation_L1HLT, PhiCorrelation_L1HLT, PtCorrelation_HLTRecObj, EtaCorrelation_HLTRecObj, PhiCorrelation_HLTRecObj, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy ); }// histos for SingleJet Triggers if(v->getObjectType() == trigger::TriggerJet && v->getTriggerType().compare("DiJet_Trigger") == 0){ histoname = labelname+"_RecObjAveragePt"; title = labelname+"_RecObjAveragePt;Reco Average Pt[GeV/c]"+trigPath; MonitorElement * jetAveragePt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); jetAveragePt->getTH1(); histoname = labelname+"_RecObjAverageEta"; title = labelname+"_RecObjAverageEta;Reco Average #eta"+trigPath; MonitorElement * jetAverageEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); jetAverageEta->getTH1(); histoname = labelname+"_RecObjPhiDifference"; title = labelname+"_RecObjPhiDifference;Reco #Delta#Phi"+trigPath; MonitorElement * jetPhiDifference = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); jetPhiDifference->getTH1(); histoname = labelname+"_hltObjAveragePt"; title = labelname+"_hltObjAveragePt;HLT Average Pt[GeV/c]"+trigPath; MonitorElement * hltAveragePt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); hltAveragePt->getTH1(); histoname = labelname+"_hltObjAverageEta"; title = labelname+"_hltObjAverageEta;HLT Average #eta"+trigPath; MonitorElement * hltAverageEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); hltAverageEta->getTH1(); histoname = labelname+"_hltObjPhiDifference"; title = labelname+"_hltObjPhiDifference;Reco #Delta#Phi"+trigPath; MonitorElement * hltPhiDifference = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); hltPhiDifference->getTH1(); v->setHistos(dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, jetAveragePt, jetAverageEta, jetPhiDifference, hltAveragePt, hltAverageEta, hltPhiDifference, dummy, dummy, dummy ); }// histos for DiJet Triggers if(v->getObjectType() == trigger::TriggerMET || (v->getObjectType() == trigger::TriggerTET)){ histoname = labelname+"_recObjPt"; title = labelname+"_recObjPt;Reco Pt[GeV/c]"+trigPath; MonitorElement * Pt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); Pt->getTH1(); histoname = labelname+"_recObjPhi"; title = labelname+"_recObjPhi;Reco #Phi"+trigPath; MonitorElement * Phi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); Phi->getTH1(); histoname = labelname+"_l1ObjPt"; title = labelname+"_l1ObjPt;L1 Pt[GeV/c]"+trigPath; MonitorElement * Pt_L1 = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); Pt_L1->getTH1(); histoname = labelname+"_l1ObjPhi"; title = labelname+"_l1ObjPhi;L1 #Phi"+trigPath; MonitorElement * Phi_L1 = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); Phi_L1->getTH1(); histoname = labelname+"_hltObjPt"; title = labelname+"_hltObjPt;HLT Pt[GeV/c]"+trigPath; MonitorElement * Pt_HLT = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); Pt_HLT->getTH1(); histoname = labelname+"_hltObjPhi"; title = labelname+"_hltObjPhi;HLT #Phi"+trigPath; MonitorElement * Phi_HLT = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); Phi_HLT->getTH1(); histoname = labelname+"_l1HLTPtResolution"; title = labelname+"_l1HLTPtResolution;(Pt(L1)-Pt(HLT))/Pt(L1)"+trigPath; MonitorElement * PtResolution_L1HLT = dbe->book1D(histoname.c_str(),title.c_str(),Resbins_,ResMin_,ResMax_); PtResolution_L1HLT->getTH1(); histoname = labelname+"_l1HLTPhiResolution"; title = labelname+"_l1HLTPhiResolution;(#Phi(L1)-#Phi(HLT))/#Phi(L1)"+trigPath; MonitorElement * PhiResolution_L1HLT = dbe->book1D(histoname.c_str(),title.c_str(),Resbins_,ResMin_,ResMax_); PhiResolution_L1HLT->getTH1(); histoname = labelname+"_l1HLTPtCorrelation"; title = labelname+"_l1HLTPtCorrelation;Pt(L1)[GeV/c];Pt(HLT)[GeV/c]"+trigPath; MonitorElement * PtCorrelation_L1HLT = dbe->book2D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_,Ptbins_,PtMin_,PtMax_); PtCorrelation_L1HLT->getTH1(); histoname = labelname+"_l1HLTPhiCorrelation"; title = labelname+"_l1HLTPhiCorrelation;#Phi(L1);#Phi(HLT)"+trigPath; MonitorElement * PhiCorrelation_L1HLT = dbe->book2D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_,Phibins_,PhiMin_,PhiMax_); PhiCorrelation_L1HLT->getTH1(); histoname = labelname+"_hltRecObjPtResolution"; title = labelname+"_hltRecObjPtResolution;(Pt(HLT)-Pt(Reco))/Pt(HLT)"+trigPath; MonitorElement * PtResolution_HLTRecObj = dbe->book1D(histoname.c_str(),title.c_str(),Resbins_,ResMin_,ResMax_); PtResolution_HLTRecObj->getTH1(); histoname = labelname+"_hltRecObjPhiResolution"; title = labelname+"_hltRecObjPhiResolution;(#Phi(HLT)-#Phi(Reco))/#Phi(HLT)"+trigPath; MonitorElement * PhiResolution_HLTRecObj = dbe->book1D(histoname.c_str(),title.c_str(),Resbins_,ResMin_,ResMax_); PhiResolution_HLTRecObj->getTH1(); histoname = labelname+"_hltRecObjPtCorrelation"; title = labelname+"_hltRecObjPtCorrelation;Pt(HLT)[GeV/c];Pt(Reco)[GeV/c]"+trigPath; MonitorElement * PtCorrelation_HLTRecObj = dbe->book2D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_,Ptbins_,PtMin_,PtMax_); PtCorrelation_HLTRecObj->getTH1(); histoname = labelname+"_hltRecObjPhiCorrelation"; title = labelname+"_hltRecObjPhiCorrelation;#Phi(HLT);#Phi(Reco)"+trigPath; MonitorElement * PhiCorrelation_HLTRecObj = dbe->book2D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_,Phibins_,PhiMin_,PhiMax_); PhiCorrelation_HLTRecObj->getTH1(); v->setHistos(dummy, Pt, dummy, dummy, dummy, dummy, Phi, dummy, dummy, Pt_L1, dummy, dummy, dummy, dummy, Phi_L1, dummy, dummy, Pt_HLT, dummy, dummy, dummy, dummy, Phi_HLT, dummy, PtResolution_L1HLT, dummy, PhiResolution_L1HLT, PtResolution_HLTRecObj, dummy, PhiResolution_HLTRecObj, PtCorrelation_L1HLT, dummy, PhiCorrelation_L1HLT, PtCorrelation_HLTRecObj, dummy, PhiCorrelation_HLTRecObj, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy ); }// histos for MET Triggers } } //-------Now Efficiency histos-------- if(plotEff_){ int Ptbins_ = 100; if(runStandalone_) Ptbins_ = 1000; double PtMin_ = 0.; double PtMax_ = 1000.; // int Etabins_ = 50; double EtaMin_ = -5.; double EtaMax_ = 5.; // int Phibins_ = 35; double PhiMin_ = -3.5; double PhiMax_ = 3.5; // Now define histos wrt lower threshold trigger std::string dirName1 = dirname_ + "/RelativeTriggerEff/"; for(PathInfoCollection::iterator v = hltPathsEff_.begin(); v!= hltPathsEff_.end(); ++v ){ // std::string trgPathName = HLTConfigProvider::removeVersion(v->getPath()); std::string trgPathNameD = HLTConfigProvider::removeVersion(v->getDenomPath()); // std::string labelname("ME") ; std::string subdirName = dirName1 + trgPathName + "_wrt_" + trgPathNameD; dbe->setCurrentFolder(subdirName); std::string histoname(labelname+""); std::string title(labelname+""); MonitorElement *dummy; dummy = dbe->bookFloat("dummy"); if((v->getObjectType() == trigger::TriggerJet) && (v->getTriggerType().compare("SingleJet_Trigger") == 0)){ histoname = labelname+"_NumeratorPt"; title = labelname+"NumeratorPt;Calo Pt[GeV/c]"; MonitorElement * NumeratorPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPt->getTH1(); histoname = labelname+"_NumeratorPtBarrel"; title = labelname+"NumeratorPtBarrel;Calo Pt[GeV/c] "; MonitorElement * NumeratorPtBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPtBarrel->getTH1(); histoname = labelname+"_NumeratorPtEndcap"; title = labelname+"NumeratorPtEndcap;Calo Pt[GeV/c]"; MonitorElement * NumeratorPtEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPtEndcap->getTH1(); histoname = labelname+"_NumeratorPtForward"; title = labelname+"NumeratorPtForward;Calo Pt[GeV/c]"; MonitorElement * NumeratorPtForward = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPtForward->getTH1(); histoname = labelname+"_NumeratorEta"; title = labelname+"NumeratorEta;Calo #eta "; MonitorElement * NumeratorEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEta->getTH1(); histoname = labelname+"_NumeratorPhi"; title = labelname+"NumeratorPhi;Calo #Phi"; MonitorElement * NumeratorPhi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhi->getTH1(); histoname = labelname+"_NumeratorEtaPhi"; title = labelname+"NumeratorEtaPhi;Calo #eta;Calo #Phi"; MonitorElement * NumeratorEtaPhi = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorEtaPhi->getTH1(); histoname = labelname+"_NumeratorEtaBarrel"; title = labelname+"NumeratorEtaBarrel;Calo #eta "; MonitorElement * NumeratorEtaBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEtaBarrel->getTH1(); histoname = labelname+"_NumeratorPhiBarrel"; title = labelname+"NumeratorPhiBarrel;Calo #Phi"; MonitorElement * NumeratorPhiBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhiBarrel->getTH1(); histoname = labelname+"_NumeratorEtaEndcap"; title = labelname+"NumeratorEtaEndcap;Calo #eta "; MonitorElement * NumeratorEtaEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEtaEndcap->getTH1(); histoname = labelname+"_NumeratorPhiEndcap"; title = labelname+"NumeratorPhiEndcap;Calo #Phi"; MonitorElement * NumeratorPhiEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhiEndcap->getTH1(); histoname = labelname+"_NumeratorEtaForward"; title = labelname+"NumeratorEtaForward;Calo #eta "; MonitorElement * NumeratorEtaForward = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEtaForward->getTH1(); histoname = labelname+"_NumeratorPhiForward"; title = labelname+"NumeratorPhiForward;Calo #Phi"; MonitorElement * NumeratorPhiForward = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhiForward->getTH1(); histoname = labelname+"_NumeratorEta_LowpTcut"; title = labelname+"NumeratorEta_LowpTcut;Calo #eta "; MonitorElement * NumeratorEta_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEta_LowpTcut->getTH1(); histoname = labelname+"_NumeratorPhi_LowpTcut"; title = labelname+"NumeratorPhi_LowpTcut;Calo #Phi"; MonitorElement * NumeratorPhi_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhi_LowpTcut->getTH1(); histoname = labelname+"_NumeratorEtaPhi_LowpTcut"; title = labelname+"NumeratorEtaPhi_LowpTcut;Calo #eta;Calo #Phi"; MonitorElement * NumeratorEtaPhi_LowpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorEtaPhi_LowpTcut->getTH1(); histoname = labelname+"_NumeratorEta_MedpTcut"; title = labelname+"NumeratorEta_MedpTcut;Calo #eta "; MonitorElement * NumeratorEta_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEta_MedpTcut->getTH1(); histoname = labelname+"_NumeratorPhi_MedpTcut"; title = labelname+"NumeratorPhi_MedpTcut;Calo #Phi"; MonitorElement * NumeratorPhi_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhi_MedpTcut->getTH1(); histoname = labelname+"_NumeratorEtaPhi_MedpTcut"; title = labelname+"NumeratorEtaPhi_MedpTcut;Calo #eta;Calo #Phi"; MonitorElement * NumeratorEtaPhi_MedpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorEtaPhi_MedpTcut->getTH1(); histoname = labelname+"_NumeratorEta_HighpTcut"; title = labelname+"NumeratorEta_HighpTcut;Calo #eta "; MonitorElement * NumeratorEta_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEta_HighpTcut->getTH1(); histoname = labelname+"_NumeratorPhi_HighpTcut"; title = labelname+"NumeratorPhi_HighpTcut;Calo #Phi"; MonitorElement * NumeratorPhi_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhi_HighpTcut->getTH1(); histoname = labelname+"_NumeratorEtaPhi_HighpTcut"; title = labelname+"NumeratorEtaPhi_HighpTcut;Calo #eta;Calo #Phi"; MonitorElement * NumeratorEtaPhi_HighpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorEtaPhi_HighpTcut->getTH1(); histoname = labelname+"_DenominatorPt"; title = labelname+"DenominatorPt;Calo Pt[GeV/c]"; MonitorElement * DenominatorPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPt->getTH1(); histoname = labelname+"_DenominatorPtBarrel"; title = labelname+"DenominatorPtBarrel;Calo Pt[GeV/c]"; MonitorElement * DenominatorPtBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPtBarrel->getTH1(); histoname = labelname+"_DenominatorPtEndcap"; title = labelname+"DenominatorPtEndcap;Calo Pt[GeV/c]"; MonitorElement * DenominatorPtEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPtEndcap->getTH1(); histoname = labelname+"_DenominatorPtForward"; title = labelname+"DenominatorPtForward;Calo Pt[GeV/c] "; MonitorElement * DenominatorPtForward = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPtForward->getTH1(); histoname = labelname+"_DenominatorEta"; title = labelname+"DenominatorEta;Calo #eta "; MonitorElement * DenominatorEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEta->getTH1(); histoname = labelname+"_DenominatorPhi"; title = labelname+"DenominatorPhi;Calo #Phi"; MonitorElement * DenominatorPhi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhi->getTH1(); histoname = labelname+"_DenominatorEtaPhi"; title = labelname+"DenominatorEtaPhi;Calo #eta; Calo #Phi"; MonitorElement * DenominatorEtaPhi = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorEtaPhi->getTH1(); histoname = labelname+"_DenominatorEtaBarrel"; title = labelname+"DenominatorEtaBarrel;Calo #eta "; MonitorElement * DenominatorEtaBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEtaBarrel->getTH1(); histoname = labelname+"_DenominatorPhiBarrel"; title = labelname+"DenominatorPhiBarrel;Calo #Phi"; MonitorElement * DenominatorPhiBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhiBarrel->getTH1(); histoname = labelname+"_DenominatorEtaEndcap"; title = labelname+"DenominatorEtaEndcap;Calo #eta "; MonitorElement * DenominatorEtaEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEtaEndcap->getTH1(); histoname = labelname+"_DenominatorPhiEndcap"; title = labelname+"DenominatorPhiEndcap;Calo #Phi"; MonitorElement * DenominatorPhiEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhiEndcap->getTH1(); histoname = labelname+"_DenominatorEtaForward"; title = labelname+"DenominatorEtaForward;Calo #eta "; MonitorElement * DenominatorEtaForward = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEtaForward->getTH1(); histoname = labelname+"_DenominatorPhiForward"; title = labelname+"DenominatorPhiForward;Calo #Phi"; MonitorElement * DenominatorPhiForward = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhiForward->getTH1(); histoname = labelname+"_DenominatorEta_LowpTcut"; title = labelname+"DenominatorEta_LowpTcut;Calo #eta "; MonitorElement * DenominatorEta_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEta_LowpTcut->getTH1(); histoname = labelname+"_DenominatorPhi_LowpTcut"; title = labelname+"DenominatorPhi_LowpTcut;Calo #Phi"; MonitorElement * DenominatorPhi_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhi_LowpTcut->getTH1(); histoname = labelname+"_DenominatorEtaPhi_LowpTcut"; title = labelname+"DenominatorEtaPhi_LowpTcut;Calo #eta;Calo #Phi"; MonitorElement * DenominatorEtaPhi_LowpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorEtaPhi_LowpTcut->getTH1(); histoname = labelname+"_DenominatorEta_MedpTcut"; title = labelname+"DenominatorEta_MedpTcut;Calo #eta "; MonitorElement * DenominatorEta_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEta_MedpTcut->getTH1(); histoname = labelname+"_DenominatorPhi_MedpTcut"; title = labelname+"DenominatorPhi_MedpTcut;Calo #Phi"; MonitorElement * DenominatorPhi_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhi_MedpTcut->getTH1(); histoname = labelname+"_DenominatorEtaPhi_MedpTcut"; title = labelname+"DenominatorEtaPhi_MedpTcut;Calo #eta;Calo #Phi"; MonitorElement * DenominatorEtaPhi_MedpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorEtaPhi_MedpTcut->getTH1(); histoname = labelname+"_DenominatorEta_HighpTcut"; title = labelname+"DenominatorEta_HighpTcut;Calo #eta "; MonitorElement * DenominatorEta_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEta_HighpTcut->getTH1(); histoname = labelname+"_DenominatorPhi_HighpTcut"; title = labelname+"DenominatorPhi_HighpTcut;Calo #Phi"; MonitorElement * DenominatorPhi_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhi_HighpTcut->getTH1(); histoname = labelname+"_DenominatorEtaPhi_HighpTcut"; title = labelname+"DenominatorEtaPhi_HighpTcut;Calo #eta;Calo #Phi"; MonitorElement * DenominatorEtaPhi_HighpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorEtaPhi_HighpTcut->getTH1(); histoname = labelname+"_DeltaR"; title = labelname+"DeltaR;"; MonitorElement * DeltaR = dbe->book1D(histoname.c_str(),title.c_str(),100,0.,1.5); DeltaR->getTH1(); histoname = labelname+"_DeltaPhi"; title = labelname+"DeltaPhi;"; MonitorElement * DeltaPhi = dbe->book1D(histoname.c_str(),title.c_str(),500,-5.0,5.0); DeltaPhi->getTH1(); histoname = labelname+"_NumeratorPFMHT"; title = labelname+"NumeratorPFMHT;PFMHT[GeV/c]"; MonitorElement * NumeratorPFMHT = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPFMHT->getTH1(); histoname = labelname+"_NumeratorPFPt"; title = labelname+"NumeratorPFPt;PF Pt[GeV/c]"; MonitorElement * NumeratorPFPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPFPt->getTH1(); histoname = labelname+"_NumeratorPFPtBarrel"; title = labelname+"NumeratorPFPtBarrel;PF Pt[GeV/c] "; MonitorElement * NumeratorPFPtBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPFPtBarrel->getTH1(); histoname = labelname+"_NumeratorPFPtEndcap"; title = labelname+"NumeratorPFPtEndcap;PF Pt[GeV/c]"; MonitorElement * NumeratorPFPtEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPFPtEndcap->getTH1(); histoname = labelname+"_NumeratorPFPtForward"; title = labelname+"NumeratorPFPtForward;PF Pt[GeV/c]"; MonitorElement * NumeratorPFPtForward = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPFPtForward->getTH1(); histoname = labelname+"_NumeratorPFEta"; title = labelname+"NumeratorPFEta;PF #eta "; MonitorElement * NumeratorPFEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEta->getTH1(); histoname = labelname+"_NumeratorPFPhi"; title = labelname+"NumeratorPFPhi;Calo #Phi"; MonitorElement * NumeratorPFPhi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhi->getTH1(); histoname = labelname+"_NumeratorPFEtaPhi"; title = labelname+"NumeratorPFEtaPhi;PF #eta;Calo #Phi"; MonitorElement * NumeratorPFEtaPhi = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorPFEtaPhi->getTH1(); histoname = labelname+"_NumeratorPFEtaBarrel"; title = labelname+"NumeratorPFEtaBarrel;PF #eta "; MonitorElement * NumeratorPFEtaBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEtaBarrel->getTH1(); histoname = labelname+"_NumeratorPFPhiBarrel"; title = labelname+"NumeratorPFPhiBarrel;PF #Phi"; MonitorElement * NumeratorPFPhiBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhiBarrel->getTH1(); histoname = labelname+"_NumeratorPFEtaEndcap"; title = labelname+"NumeratorPFEtaEndcap;Calo #eta "; MonitorElement * NumeratorPFEtaEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEtaEndcap->getTH1(); histoname = labelname+"_NumeratorPFPhiEndcap"; title = labelname+"NumeratorPFPhiEndcap;PF #Phi"; MonitorElement * NumeratorPFPhiEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhiEndcap->getTH1(); histoname = labelname+"_NumeratorPFEtaForward"; title = labelname+"NumeratorPFEtaForward;Calo #eta "; MonitorElement * NumeratorPFEtaForward = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEtaForward->getTH1(); histoname = labelname+"_NumeratorPFPhiForward"; title = labelname+"NumeratorPFPhiForward;PF #Phi"; MonitorElement * NumeratorPFPhiForward = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhiForward->getTH1(); histoname = labelname+"_NumeratorPFEta_LowpTcut"; title = labelname+"NumeratorPFEta_LowpTcut;PF #eta "; MonitorElement * NumeratorPFEta_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEta_LowpTcut->getTH1(); histoname = labelname+"_NumeratorPFPhi_LowpTcut"; title = labelname+"NumeratorPFPhi_LowpTcut;PF #Phi"; MonitorElement * NumeratorPFPhi_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhi_LowpTcut->getTH1(); histoname = labelname+"_NumeratorPFEtaPhi_LowpTcut"; title = labelname+"NumeratorPFEtaPhi_LowpTcut;PF #eta;Calo #Phi"; MonitorElement * NumeratorPFEtaPhi_LowpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorPFEtaPhi_LowpTcut->getTH1(); histoname = labelname+"_NumeratorPFEta_MedpTcut"; title = labelname+"NumeratorPFEta_MedpTcut;PF #eta "; MonitorElement * NumeratorPFEta_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEta_MedpTcut->getTH1(); histoname = labelname+"_NumeratorPFPhi_MedpTcut"; title = labelname+"NumeratorPFPhi_MedpTcut;PF #Phi"; MonitorElement * NumeratorPFPhi_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhi_MedpTcut->getTH1(); histoname = labelname+"_NumeratorPFEtaPhi_MedpTcut"; title = labelname+"NumeratorPFEtaPhi_MedpTcut;PF #eta;PF #Phi"; MonitorElement * NumeratorPFEtaPhi_MedpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorPFEtaPhi_MedpTcut->getTH1(); histoname = labelname+"_NumeratorPFEta_HighpTcut"; title = labelname+"NumeratorPFEta_HighpTcut;Calo #eta "; MonitorElement * NumeratorPFEta_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEta_HighpTcut->getTH1(); histoname = labelname+"_NumeratorPFPhi_HighpTcut"; title = labelname+"NumeratorPFPhi_HighpTcut;PF #Phi"; MonitorElement * NumeratorPFPhi_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhi_HighpTcut->getTH1(); histoname = labelname+"_NumeratorPFEtaPhi_HighpTcut"; title = labelname+"NumeratorPFEtaPhi_HighpTcut;PF #eta;PF #Phi"; MonitorElement * NumeratorPFEtaPhi_HighpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorPFEtaPhi_HighpTcut->getTH1(); histoname = labelname+"_DenominatorPFMHT"; title = labelname+"DenominatorPFMHT;PF Pt[GeV/c]"; MonitorElement * DenominatorPFMHT = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPFMHT->getTH1(); histoname = labelname+"_DenominatorPFPt"; title = labelname+"DenominatorPFPt;PF Pt[GeV/c]"; MonitorElement * DenominatorPFPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPFPt->getTH1(); histoname = labelname+"_DenominatorPFPtBarrel"; title = labelname+"DenominatorPFPtBarrel;Calo Pt[GeV/c]"; MonitorElement * DenominatorPFPtBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPFPtBarrel->getTH1(); histoname = labelname+"_DenominatorPFPtEndcap"; title = labelname+"DenominatorPFPtEndcap;PF Pt[GeV/c]"; MonitorElement * DenominatorPFPtEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPFPtEndcap->getTH1(); histoname = labelname+"_DenominatorPFPtForward"; title = labelname+"DenominatorPFPtForward;PF Pt[GeV/c] "; MonitorElement * DenominatorPFPtForward = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPFPtForward->getTH1(); histoname = labelname+"_DenominatorPFEta"; title = labelname+"DenominatorPFEta;PF #eta "; MonitorElement * DenominatorPFEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEta->getTH1(); histoname = labelname+"_DenominatorPFPhi"; title = labelname+"DenominatorPFPhi;PF #Phi"; MonitorElement * DenominatorPFPhi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhi->getTH1(); histoname = labelname+"_DenominatorPFEtaPhi"; title = labelname+"DenominatorPFEtaPhi;PF #eta; Calo #Phi"; MonitorElement * DenominatorPFEtaPhi = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorPFEtaPhi->getTH1(); histoname = labelname+"_DenominatorPFEtaBarrel"; title = labelname+"DenominatorPFEtaBarrel;Calo #eta "; MonitorElement * DenominatorPFEtaBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEtaBarrel->getTH1(); histoname = labelname+"_DenominatorPFPhiBarrel"; title = labelname+"DenominatorPFPhiBarrel;PF #Phi"; MonitorElement * DenominatorPFPhiBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhiBarrel->getTH1(); histoname = labelname+"_DenominatorPFEtaEndcap"; title = labelname+"DenominatorPFEtaEndcap;PF #eta "; MonitorElement * DenominatorPFEtaEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEtaEndcap->getTH1(); histoname = labelname+"_DenominatorPFPhiEndcap"; title = labelname+"DenominatorPFPhiEndcap;Calo #Phi"; MonitorElement * DenominatorPFPhiEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhiEndcap->getTH1(); histoname = labelname+"_DenominatorPFEtaForward"; title = labelname+"DenominatorPFEtaForward;PF #eta "; MonitorElement * DenominatorPFEtaForward = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEtaForward->getTH1(); histoname = labelname+"_DenominatorPFPhiForward"; title = labelname+"DenominatorPFPhiForward;PF #Phi"; MonitorElement * DenominatorPFPhiForward = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhiForward->getTH1(); histoname = labelname+"_DenominatorPFEta_LowpTcut"; title = labelname+"DenominatorPFEta_LowpTcut;PF #eta "; MonitorElement * DenominatorPFEta_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEta_LowpTcut->getTH1(); histoname = labelname+"_DenominatorPFPhi_LowpTcut"; title = labelname+"DenominatorPFPhi_LowpTcut;PF #Phi"; MonitorElement * DenominatorPFPhi_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhi_LowpTcut->getTH1(); histoname = labelname+"_DenominatorPFEtaPhi_LowpTcut"; title = labelname+"DenominatorPFEtaPhi_LowpTcut;PF #eta;Calo #Phi"; MonitorElement * DenominatorPFEtaPhi_LowpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorPFEtaPhi_LowpTcut->getTH1(); histoname = labelname+"_DenominatorPFEta_MedpTcut"; title = labelname+"DenominatorPFEta_MedpTcut;PF #eta "; MonitorElement * DenominatorPFEta_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEta_MedpTcut->getTH1(); histoname = labelname+"_DenominatorPFPhi_MedpTcut"; title = labelname+"DenominatorPFPhi_MedpTcut;PF #Phi"; MonitorElement * DenominatorPFPhi_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhi_MedpTcut->getTH1(); histoname = labelname+"_DenominatorPFEtaPhi_MedpTcut"; title = labelname+"DenominatorPFEtaPhi_MedpTcut;PF #eta;Calo #Phi"; MonitorElement * DenominatorPFEtaPhi_MedpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorPFEtaPhi_MedpTcut->getTH1(); histoname = labelname+"_DenominatorPFEta_HighpTcut"; title = labelname+"DenominatorPFEta_HighpTcut;PF #eta "; MonitorElement * DenominatorPFEta_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEta_HighpTcut->getTH1(); histoname = labelname+"_DenominatorPFPhi_HighpTcut"; title = labelname+"DenominatorPFPhi_HighpTcut;PF #Phi"; MonitorElement * DenominatorPFPhi_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhi_HighpTcut->getTH1(); histoname = labelname+"_DenominatorPFEtaPhi_HighpTcut"; title = labelname+"DenominatorPFEtaPhi_HighpTcut;PF #eta;Calo #Phi"; MonitorElement * DenominatorPFEtaPhi_HighpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorPFEtaPhi_HighpTcut->getTH1(); histoname = labelname+"_PFDeltaR"; title = labelname+"PFDeltaR;"; MonitorElement * PFDeltaR = dbe->book1D(histoname.c_str(),title.c_str(),100,0.,1.5); PFDeltaR->getTH1(); histoname = labelname+"_PFDeltaPhi"; title = labelname+"PFDeltaPhi;"; MonitorElement * PFDeltaPhi = dbe->book1D(histoname.c_str(),title.c_str(),500,-5.0,5.0); PFDeltaPhi->getTH1(); v->setEffHistos(NumeratorPt, NumeratorPtBarrel, NumeratorPtEndcap, NumeratorPtForward, NumeratorEta, NumeratorPhi, NumeratorEtaPhi, // NumeratorEtaBarrel, NumeratorPhiBarrel, NumeratorEtaEndcap, NumeratorPhiEndcap, NumeratorEtaForward, NumeratorPhiForward, NumeratorEta_LowpTcut, NumeratorPhi_LowpTcut, NumeratorEtaPhi_LowpTcut, NumeratorEta_MedpTcut, NumeratorPhi_MedpTcut, NumeratorEtaPhi_MedpTcut, NumeratorEta_HighpTcut, NumeratorPhi_HighpTcut, NumeratorEtaPhi_HighpTcut, // DenominatorPt, DenominatorPtBarrel, DenominatorPtEndcap, DenominatorPtForward, DenominatorEta, DenominatorPhi, DenominatorEtaPhi, // DenominatorEtaBarrel, DenominatorPhiBarrel, DenominatorEtaEndcap, DenominatorPhiEndcap, DenominatorEtaForward, DenominatorPhiForward, DenominatorEta_LowpTcut, DenominatorPhi_LowpTcut, DenominatorEtaPhi_LowpTcut, DenominatorEta_MedpTcut, DenominatorPhi_MedpTcut, DenominatorEtaPhi_MedpTcut, DenominatorEta_HighpTcut, DenominatorPhi_HighpTcut, DenominatorEtaPhi_HighpTcut, DeltaR, DeltaPhi, // NumeratorPFPt, NumeratorPFMHT, NumeratorPFPtBarrel, NumeratorPFPtEndcap, NumeratorPFPtForward, NumeratorPFEta, NumeratorPFPhi, NumeratorPFEtaPhi, NumeratorPFEtaBarrel, NumeratorPFPhiBarrel, NumeratorPFEtaEndcap, NumeratorPFPhiEndcap, NumeratorPFEtaForward, NumeratorPFPhiForward, NumeratorPFEta_LowpTcut, NumeratorPFPhi_LowpTcut, NumeratorPFEtaPhi_LowpTcut, NumeratorPFEta_MedpTcut, NumeratorPFPhi_MedpTcut, NumeratorPFEtaPhi_MedpTcut, NumeratorPFEta_HighpTcut, NumeratorPFPhi_HighpTcut, NumeratorPFEtaPhi_HighpTcut, DenominatorPFPt, DenominatorPFMHT, DenominatorPFPtBarrel, DenominatorPFPtEndcap, DenominatorPFPtForward, DenominatorPFEta, DenominatorPFPhi, DenominatorPFEtaPhi, DenominatorPFEtaBarrel, DenominatorPFPhiBarrel, DenominatorPFEtaEndcap, DenominatorPFPhiEndcap, DenominatorPFEtaForward, DenominatorPFPhiForward, DenominatorPFEta_LowpTcut, DenominatorPFPhi_LowpTcut, DenominatorPFEtaPhi_LowpTcut, DenominatorPFEta_MedpTcut, DenominatorPFPhi_MedpTcut, DenominatorPFEtaPhi_MedpTcut, DenominatorPFEta_HighpTcut, DenominatorPFPhi_HighpTcut, DenominatorPFEtaPhi_HighpTcut, PFDeltaR, PFDeltaPhi ); }// Loop over Jet Trigger if((v->getObjectType() == trigger::TriggerJet) && (v->getTriggerType().compare("DiJet_Trigger") == 0)){ histoname = labelname+"_NumeratorAvrgPt"; title = labelname+"NumeratorAvrgPt;Calo Pt[GeV/c]"; MonitorElement * NumeratorPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPt->getTH1(); histoname = labelname+"_NumeratorAvrgEta"; title = labelname+"NumeratorAvrgEta;Calo #eta"; MonitorElement * NumeratorEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEta->getTH1(); histoname = labelname+"_DenominatorAvrgPt"; title = labelname+"DenominatorAvrgPt;Calo Pt[GeV/c] "; MonitorElement * DenominatorPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPt->getTH1(); histoname = labelname+"_DenominatorAvrgEta"; title = labelname+"DenominatorAvrgEta;Calo #eta"; MonitorElement * DenominatorEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEta->getTH1(); histoname = labelname+"_DeltaR"; title = labelname+"DeltaR;"; MonitorElement * DeltaR = dbe->book1D(histoname.c_str(),title.c_str(),100,0.,1.5); DeltaR->getTH1(); histoname = labelname+"_DeltaPhi"; title = labelname+"DeltaPhi;"; MonitorElement * DeltaPhi = dbe->book1D(histoname.c_str(),title.c_str(),500,-5.,5.); DeltaPhi->getTH1(); //add PF histo: SJ histoname = labelname+"_NumeratorAvrgPFPt"; title = labelname+"NumeratorAvrgPFPt;PF Pt[GeV/c]"; MonitorElement * NumeratorPFPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPFPt->getTH1(); histoname = labelname+"_NumeratorAvrgPFEta"; title = labelname+"NumeratorAvrgPFEta;PF #eta"; MonitorElement * NumeratorPFEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEta->getTH1(); histoname = labelname+"_DenominatorAvrgPFPt"; title = labelname+"DenominatorAvrgPFPt;PF Pt[GeV/c] "; MonitorElement * DenominatorPFPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPFPt->getTH1(); histoname = labelname+"_DenominatorAvrgPFEta"; title = labelname+"DenominatorAvrgPFEta;PF #eta"; MonitorElement * DenominatorPFEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEta->getTH1(); histoname = labelname+"_PFDeltaR"; title = labelname+"PFDeltaR;"; MonitorElement * PFDeltaR = dbe->book1D(histoname.c_str(),title.c_str(),100,0.,1.5); PFDeltaR->getTH1(); histoname = labelname+"_PFDeltaPhi"; title = labelname+"PFDeltaPhi;"; MonitorElement * PFDeltaPhi = dbe->book1D(histoname.c_str(),title.c_str(),500,-5.,5.); PFDeltaPhi->getTH1(); v->setEffHistos( dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy ); } if(v->getObjectType() == trigger::TriggerMET || (v->getObjectType() == trigger::TriggerTET)){ histoname = labelname+"_NumeratorPt"; if(v->getPath().find("HLT_PFMET")==std::string::npos) title = labelname+"NumeratorPt; CaloMET[GeV/c]"; else title = labelname+"NumeratorPt; PFMET[GeV/c]"; MonitorElement * NumeratorPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPt->getTH1(); histoname = labelname+"_NumeratorPhi"; title = labelname+"NumeratorPhi; #Phi"; MonitorElement * NumeratorPhi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhi->getTH1(); histoname = labelname+"_DenominatorPt"; if(v->getPath().find("HLT_PFMET")==std::string::npos) title = labelname+"DenominatorPt; CaloMET[GeV/c]"; else title = labelname+"DenominatorPt; PFMET[GeV/c]"; MonitorElement * DenominatorPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPt->getTH1(); histoname = labelname+"_DenominatorPhi"; title = labelname+"DenominatorPhi; #Phi"; MonitorElement * DenominatorPhi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhi->getTH1(); v->setEffHistos( NumeratorPt, dummy, dummy, dummy, dummy, NumeratorPhi, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, DenominatorPt, dummy, dummy, dummy, dummy, DenominatorPhi, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy ); }// Loop over MET trigger } //------Efficiency wrt Muon trigger----------------------- if(plotEffwrtMu_){ std::string dirName2 = dirname_ + "/EffWrtMuonTrigger/"; for(PathInfoCollection::iterator v = hltPathsEffWrtMu_.begin(); v!= hltPathsEffWrtMu_.end(); ++v ){ // std::string trgPathName = HLTConfigProvider::removeVersion(v->getPath()); // std::string labelname("ME") ; std::string subdirName = dirName2 + trgPathName; std::string histoname(labelname+""); std::string title(labelname+""); dbe->setCurrentFolder(subdirName); MonitorElement *dummy; dummy = dbe->bookFloat("dummy"); if((v->getObjectType() == trigger::TriggerJet) && (v->getTriggerType().compare("SingleJet_Trigger") == 0)){ histoname = labelname+"_NumeratorPt"; title = labelname+"NumeratorPt;Pt[GeV/c]"; MonitorElement * NumeratorPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPt->getTH1(); histoname = labelname+"_NumeratorPtBarrel"; title = labelname+"NumeratorPtBarrel;Calo Pt[GeV/c]"; MonitorElement * NumeratorPtBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPtBarrel->getTH1(); histoname = labelname+"_NumeratorPtEndcap"; title = labelname+"NumeratorPtEndcap;Calo Pt[GeV/c]"; MonitorElement * NumeratorPtEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPtEndcap->getTH1(); histoname = labelname+"_NumeratorPtForward"; title = labelname+"NumeratorPtForward;Calo Pt[GeV/c]"; MonitorElement * NumeratorPtForward = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPtForward->getTH1(); histoname = labelname+"_NumeratorEta"; title = labelname+"NumeratorEta;Calo #eta "; MonitorElement * NumeratorEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEta->getTH1(); histoname = labelname+"_NumeratorPhi"; title = labelname+"NumeratorPhi;Calo #Phi"; MonitorElement * NumeratorPhi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhi->getTH1(); histoname = labelname+"_NumeratorEtaPhi"; title = labelname+"NumeratorEtaPhi;Calo #eta;Calo #Phi"; MonitorElement * NumeratorEtaPhi = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorEtaPhi->getTH1(); histoname = labelname+"_NumeratorEtaBarrel"; title = labelname+"NumeratorEtaBarrel;Calo #eta "; MonitorElement * NumeratorEtaBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEtaBarrel->getTH1(); histoname = labelname+"_NumeratorPhiBarrel"; title = labelname+"NumeratorPhiBarrel;Calo #Phi"; MonitorElement * NumeratorPhiBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhiBarrel->getTH1(); histoname = labelname+"_NumeratorEtaEndcap"; title = labelname+"NumeratorEtaEndcap;Calo #eta "; MonitorElement * NumeratorEtaEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEtaEndcap->getTH1(); histoname = labelname+"_NumeratorPhiEndcap"; title = labelname+"NumeratorPhiEndcap;Calo #Phi"; MonitorElement * NumeratorPhiEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhiEndcap->getTH1(); histoname = labelname+"_NumeratorEtaForward"; title = labelname+"NumeratorEtaForward;Calo #eta "; MonitorElement * NumeratorEtaForward = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEtaForward->getTH1(); histoname = labelname+"_NumeratorPhiForward"; title = labelname+"NumeratorPhiForward;Calo #Phi"; MonitorElement * NumeratorPhiForward = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhiForward->getTH1(); histoname = labelname+"_NumeratorEta_LowpTcut"; title = labelname+"NumeratorEta_LowpTcut;Calo #eta "; MonitorElement * NumeratorEta_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEta_LowpTcut->getTH1(); histoname = labelname+"_NumeratorPhi_LowpTcut"; title = labelname+"NumeratorPhi_LowpTcut;Calo #Phi"; MonitorElement * NumeratorPhi_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhi_LowpTcut->getTH1(); histoname = labelname+"_NumeratorEtaPhi_LowpTcut"; title = labelname+"NumeratorEtaPhi_LowpTcut;Calo #eta;Calo #Phi"; MonitorElement * NumeratorEtaPhi_LowpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorEtaPhi_LowpTcut->getTH1(); histoname = labelname+"_NumeratorEta_MedpTcut"; title = labelname+"NumeratorEta_MedpTcut;Calo #eta "; MonitorElement * NumeratorEta_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEta_MedpTcut->getTH1(); histoname = labelname+"_NumeratorPhi_MedpTcut"; title = labelname+"NumeratorPhi_MedpTcut;Calo #Phi"; MonitorElement * NumeratorPhi_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhi_MedpTcut->getTH1(); histoname = labelname+"_NumeratorEtaPhi_MedpTcut"; title = labelname+"NumeratorEtaPhi_MedpTcut;Calo #eta;Calo #Phi"; MonitorElement * NumeratorEtaPhi_MedpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorEtaPhi_MedpTcut->getTH1(); histoname = labelname+"_NumeratorEta_HighpTcut"; title = labelname+"NumeratorEta_HighpTcut;Calo #eta "; MonitorElement * NumeratorEta_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEta_HighpTcut->getTH1(); histoname = labelname+"_NumeratorPhi_HighpTcut"; title = labelname+"NumeratorPhi_HighpTcut;Calo #Phi"; MonitorElement * NumeratorPhi_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhi_HighpTcut->getTH1(); histoname = labelname+"_NumeratorEtaPhi_HighpTcut"; title = labelname+"NumeratorEtaPhi_HighpTcut;Calo #eta;Calo #Phi"; MonitorElement * NumeratorEtaPhi_HighpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorEtaPhi_HighpTcut->getTH1(); histoname = labelname+"_DenominatorPt"; title = labelname+"DenominatorPt;Calo Pt[GeV/c]"; MonitorElement * DenominatorPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPt->getTH1(); histoname = labelname+"_DenominatorPtBarrel"; title = labelname+"DenominatorPtBarrel;Calo Pt[GeV/c]"; MonitorElement * DenominatorPtBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPtBarrel->getTH1(); histoname = labelname+"_DenominatorPtEndcap"; title = labelname+"DenominatorPtEndcap;Calo Pt[GeV/c]"; MonitorElement * DenominatorPtEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPtEndcap->getTH1(); histoname = labelname+"_DenominatorPtForward"; title = labelname+"DenominatorPtForward;Calo Pt[GeV/c] "; MonitorElement * DenominatorPtForward = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPtForward->getTH1(); histoname = labelname+"_DenominatorEta"; title = labelname+"DenominatorEta;Calo #eta"; MonitorElement * DenominatorEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEta->getTH1(); histoname = labelname+"_DenominatorPhi"; title = labelname+"DenominatorPhi;Calo #Phi"; MonitorElement * DenominatorPhi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhi->getTH1(); histoname = labelname+"_DenominatorEtaPhi"; title = labelname+"DenominatorEtaPhi;Calo #eta (IC5);Calo #Phi "; MonitorElement * DenominatorEtaPhi = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorEtaPhi->getTH1(); histoname = labelname+"_DenominatorEtaBarrel"; title = labelname+"DenominatorEtaBarrel;Calo #eta "; MonitorElement * DenominatorEtaBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEtaBarrel->getTH1(); histoname = labelname+"_DenominatorPhiBarrel"; title = labelname+"DenominatorPhiBarrel;Calo #Phi"; MonitorElement * DenominatorPhiBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhiBarrel->getTH1(); histoname = labelname+"_DenominatorEtaEndcap"; title = labelname+"DenominatorEtaEndcap;Calo #eta "; MonitorElement * DenominatorEtaEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEtaEndcap->getTH1(); histoname = labelname+"_DenominatorPhiEndcap"; title = labelname+"DenominatorPhiEndcap;Calo #Phi"; MonitorElement * DenominatorPhiEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhiEndcap->getTH1(); histoname = labelname+"_DenominatorEtaForward"; title = labelname+"DenominatorEtaForward;Calo #eta "; MonitorElement * DenominatorEtaForward = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEtaForward->getTH1(); histoname = labelname+"_DenominatorPhiForward"; title = labelname+"DenominatorPhiForward;Calo #Phi"; MonitorElement * DenominatorPhiForward = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhiForward->getTH1(); histoname = labelname+"_DenominatorEta_LowpTcut"; title = labelname+"DenominatorEta_LowpTcut;Calo #eta "; MonitorElement * DenominatorEta_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEta_LowpTcut->getTH1(); histoname = labelname+"_DenominatorPhi_LowpTcut"; title = labelname+"DenominatorPhi_LowpTcut;Calo #Phi"; MonitorElement * DenominatorPhi_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhi_LowpTcut->getTH1(); histoname = labelname+"_DenominatorEtaPhi_LowpTcut"; title = labelname+"DenominatorEtaPhi_LowpTcut;Calo #eta;Calo #Phi"; MonitorElement * DenominatorEtaPhi_LowpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorEtaPhi_LowpTcut->getTH1(); histoname = labelname+"_DenominatorEta_MedpTcut"; title = labelname+"DenominatorEta_MedpTcut;Calo #eta "; MonitorElement * DenominatorEta_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEta_MedpTcut->getTH1(); histoname = labelname+"_DenominatorPhi_MedpTcut"; title = labelname+"DenominatorPhi_MedpTcut;Calo #Phi"; MonitorElement * DenominatorPhi_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhi_MedpTcut->getTH1(); histoname = labelname+"_DenominatorEtaPhi_MedpTcut"; title = labelname+"DenominatorEtaPhi_MedpTcut;Calo #eta;Calo #Phi"; MonitorElement * DenominatorEtaPhi_MedpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorEtaPhi_MedpTcut->getTH1(); histoname = labelname+"_DenominatorEta_HighpTcut"; title = labelname+"DenominatorEta_HighpTcut;Calo #eta "; MonitorElement * DenominatorEta_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEta_HighpTcut->getTH1(); histoname = labelname+"_DenominatorPhi_HighpTcut"; title = labelname+"DenominatorPhi_HighpTcut;Calo #Phi"; MonitorElement * DenominatorPhi_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhi_HighpTcut->getTH1(); histoname = labelname+"_DenominatorEtaPhi_HighpTcut"; title = labelname+"DenominatorEtaPhi_HighpTcut;Calo #eta;Calo #Phi"; MonitorElement * DenominatorEtaPhi_HighpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorEtaPhi_HighpTcut->getTH1(); histoname = labelname+"_DeltaR"; title = labelname+"DeltaR;"; MonitorElement * DeltaR = dbe->book1D(histoname.c_str(),title.c_str(),100,0.,1.5); DeltaR->getTH1(); histoname = labelname+"_DeltaPhi"; title = labelname+"DeltaPhi;"; MonitorElement * DeltaPhi = dbe->book1D(histoname.c_str(),title.c_str(),500,-5.0,5.0); DeltaPhi->getTH1(); histoname = labelname+"_NumeratorPFPt"; title = labelname+"NumeratorPFPt;PFPt[GeV/c]"; MonitorElement * NumeratorPFPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPFPt->getTH1(); histoname = labelname+"_NumeratorPFMHT"; title = labelname+"NumeratorPFMHT;PFMHT[GeV/c]"; MonitorElement * NumeratorPFMHT = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPFMHT->getTH1(); histoname = labelname+"_NumeratorPFPtBarrel"; title = labelname+"NumeratorPFPtBarrel;PF Pt[GeV/c]"; MonitorElement * NumeratorPFPtBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPFPtBarrel->getTH1(); histoname = labelname+"_NumeratorPFPtEndcap"; title = labelname+"NumeratorPFPtEndcap;PF Pt[GeV/c]"; MonitorElement * NumeratorPFPtEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPFPtEndcap->getTH1(); histoname = labelname+"_NumeratorPFPtForward"; title = labelname+"NumeratorPFPtForward;PF Pt[GeV/c]"; MonitorElement * NumeratorPFPtForward = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPFPtForward->getTH1(); histoname = labelname+"_NumeratorPFEta"; title = labelname+"NumeratorPFEta;PF #eta "; MonitorElement * NumeratorPFEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEta->getTH1(); histoname = labelname+"_NumeratorPFPhi"; title = labelname+"NumeratorPFPhi;PF #Phi"; MonitorElement * NumeratorPFPhi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhi->getTH1(); histoname = labelname+"_NumeratorPFEtaPhi"; title = labelname+"NumeratorPFEtaPhi;PF #eta;PF #Phi"; MonitorElement * NumeratorPFEtaPhi = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorPFEtaPhi->getTH1(); histoname = labelname+"_NumeratorPFEtaBarrel"; title = labelname+"NumeratorPFEtaBarrel;PF #eta "; MonitorElement * NumeratorPFEtaBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEtaBarrel->getTH1(); histoname = labelname+"_NumeratorPFPhiBarrel"; title = labelname+"NumeratorPFPhiBarrel;PF #Phi"; MonitorElement * NumeratorPFPhiBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhiBarrel->getTH1(); histoname = labelname+"_NumeratorPFEtaEndcap"; title = labelname+"NumeratorPFEtaEndcap;PF #eta "; MonitorElement * NumeratorPFEtaEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEtaEndcap->getTH1(); histoname = labelname+"_NumeratorPFPhiEndcap"; title = labelname+"NumeratorPFPhiEndcap;PF #Phi"; MonitorElement * NumeratorPFPhiEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhiEndcap->getTH1(); histoname = labelname+"_NumeratorPFEtaForward"; title = labelname+"NumeratorPFEtaForward;PF #eta "; MonitorElement * NumeratorPFEtaForward = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEtaForward->getTH1(); histoname = labelname+"_NumeratorPFPhiForward"; title = labelname+"NumeratorPFPhiForward;PF #Phi"; MonitorElement * NumeratorPFPhiForward = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhiForward->getTH1(); histoname = labelname+"_NumeratorPFEta_LowpTcut"; title = labelname+"NumeratorPFEta_LowpTcut;PF #eta "; MonitorElement * NumeratorPFEta_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEta_LowpTcut->getTH1(); histoname = labelname+"_NumeratorPFPhi_LowpTcut"; title = labelname+"NumeratorPFPhi_LowpTcut;PF #Phi"; MonitorElement * NumeratorPFPhi_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhi_LowpTcut->getTH1(); histoname = labelname+"_NumeratorPFEtaPhi_LowpTcut"; title = labelname+"NumeratorPFEtaPhi_LowpTcut;PF #eta;PF #Phi"; MonitorElement * NumeratorPFEtaPhi_LowpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorPFEtaPhi_LowpTcut->getTH1(); histoname = labelname+"_NumeratorPFEta_MedpTcut"; title = labelname+"NumeratorPFEta_MedpTcut;PF #eta "; MonitorElement * NumeratorPFEta_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEta_MedpTcut->getTH1(); histoname = labelname+"_NumeratorPFPhi_MedpTcut"; title = labelname+"NumeratorPFPhi_MedpTcut;PF #Phi"; MonitorElement * NumeratorPFPhi_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhi_MedpTcut->getTH1(); histoname = labelname+"_NumeratorPFEtaPhi_MedpTcut"; title = labelname+"NumeratorPFEtaPhi_MedpTcut;PF #eta;PF #Phi"; MonitorElement * NumeratorPFEtaPhi_MedpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorPFEtaPhi_MedpTcut->getTH1(); histoname = labelname+"_NumeratorPFEta_HighpTcut"; title = labelname+"NumeratorPFEta_HighpTcut;PF #eta "; MonitorElement * NumeratorPFEta_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEta_HighpTcut->getTH1(); histoname = labelname+"_NumeratorPFPhi_HighpTcut"; title = labelname+"NumeratorPFPhi_HighpTcut;PF #Phi"; MonitorElement * NumeratorPFPhi_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhi_HighpTcut->getTH1(); histoname = labelname+"_NumeratorPFEtaPhi_HighpTcut"; title = labelname+"NumeratorPFEtaPhi_HighpTcut;PF #eta;PF #Phi"; MonitorElement * NumeratorPFEtaPhi_HighpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorPFEtaPhi_HighpTcut->getTH1(); histoname = labelname+"_DenominatorPFMHT"; title = labelname+"DenominatorPFMHT;PF Pt[GeV/c]"; MonitorElement * DenominatorPFMHT = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPFMHT->getTH1(); histoname = labelname+"_DenominatorPFPt"; title = labelname+"DenominatorPFPt;PF Pt[GeV/c]"; MonitorElement * DenominatorPFPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPFPt->getTH1(); histoname = labelname+"_DenominatorPFPtBarrel"; title = labelname+"DenominatorPFPtBarrel;PF Pt[GeV/c]"; MonitorElement * DenominatorPFPtBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPFPtBarrel->getTH1(); histoname = labelname+"_DenominatorPFPtEndcap"; title = labelname+"DenominatorPFPtEndcap;PF Pt[GeV/c]"; MonitorElement * DenominatorPFPtEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPFPtEndcap->getTH1(); histoname = labelname+"_DenominatorPFPtForward"; title = labelname+"DenominatorPFPtForward;PF Pt[GeV/c] "; MonitorElement * DenominatorPFPtForward = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPFPtForward->getTH1(); histoname = labelname+"_DenominatorPFEta"; title = labelname+"DenominatorPFEta;PF #eta"; MonitorElement * DenominatorPFEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEta->getTH1(); histoname = labelname+"_DenominatorPFPhi"; title = labelname+"DenominatorPFPhi;PF #Phi"; MonitorElement * DenominatorPFPhi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhi->getTH1(); histoname = labelname+"_DenominatorPFEtaPhi"; title = labelname+"DenominatorPFEtaPhi;PF #eta (IC5);PF #Phi "; MonitorElement * DenominatorPFEtaPhi = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorPFEtaPhi->getTH1(); histoname = labelname+"_DenominatorPFEtaBarrel"; title = labelname+"DenominatorPFEtaBarrel;PF #eta "; MonitorElement * DenominatorPFEtaBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEtaBarrel->getTH1(); histoname = labelname+"_DenominatorPFPhiBarrel"; title = labelname+"DenominatorPFPhiBarrel;PF #Phi"; MonitorElement * DenominatorPFPhiBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhiBarrel->getTH1(); histoname = labelname+"_DenominatorPFEtaEndcap"; title = labelname+"DenominatorPFEtaEndcap;PF #eta "; MonitorElement * DenominatorPFEtaEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEtaEndcap->getTH1(); histoname = labelname+"_DenominatorPFPhiEndcap"; title = labelname+"DenominatorPFPhiEndcap;PF #Phi"; MonitorElement * DenominatorPFPhiEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhiEndcap->getTH1(); histoname = labelname+"_DenominatorPFEtaForward"; title = labelname+"DenominatorPFEtaForward;PF #eta "; MonitorElement * DenominatorPFEtaForward = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEtaForward->getTH1(); histoname = labelname+"_DenominatorPFPhiForward"; title = labelname+"DenominatorPFPhiForward;PF #Phi"; MonitorElement * DenominatorPFPhiForward = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhiForward->getTH1(); histoname = labelname+"_DenominatorPFEta_LowpTcut"; title = labelname+"DenominatorPFEta_LowpTcut;PF #eta "; MonitorElement * DenominatorPFEta_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEta_LowpTcut->getTH1(); histoname = labelname+"_DenominatorPFPhi_LowpTcut"; title = labelname+"DenominatorPFPhi_LowpTcut;PF #Phi"; MonitorElement * DenominatorPFPhi_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhi_LowpTcut->getTH1(); histoname = labelname+"_DenominatorPFEtaPhi_LowpTcut"; title = labelname+"DenominatorPFEtaPhi_LowpTcut;PF #eta;PF #Phi"; MonitorElement * DenominatorPFEtaPhi_LowpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorPFEtaPhi_LowpTcut->getTH1(); histoname = labelname+"_DenominatorPFEta_MedpTcut"; title = labelname+"DenominatorPFEta_MedpTcut;PF #eta "; MonitorElement * DenominatorPFEta_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEta_MedpTcut->getTH1(); histoname = labelname+"_DenominatorPFPhi_MedpTcut"; title = labelname+"DenominatorPFPhi_MedpTcut;PF #Phi"; MonitorElement * DenominatorPFPhi_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhi_MedpTcut->getTH1(); histoname = labelname+"_DenominatorPFEtaPhi_MedpTcut"; title = labelname+"DenominatorPFEtaPhi_MedpTcut;PF #eta;PF #Phi"; MonitorElement * DenominatorPFEtaPhi_MedpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorPFEtaPhi_MedpTcut->getTH1(); histoname = labelname+"_DenominatorPFEta_HighpTcut"; title = labelname+"DenominatorPFEta_HighpTcut;PF #eta "; MonitorElement * DenominatorPFEta_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEta_HighpTcut->getTH1(); histoname = labelname+"_DenominatorPFPhi_HighpTcut"; title = labelname+"DenominatorPFPhi_HighpTcut;PF #Phi"; MonitorElement * DenominatorPFPhi_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhi_HighpTcut->getTH1(); histoname = labelname+"_DenominatorPFEtaPhi_HighpTcut"; title = labelname+"DenominatorPFEtaPhi_HighpTcut;PF #eta;PF #Phi"; MonitorElement * DenominatorPFEtaPhi_HighpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorPFEtaPhi_HighpTcut->getTH1(); histoname = labelname+"_PFDeltaR"; title = labelname+"PFDeltaR;"; MonitorElement * PFDeltaR = dbe->book1D(histoname.c_str(),title.c_str(),100,0.,1.5); PFDeltaR->getTH1(); histoname = labelname+"_PFDeltaPhi"; title = labelname+"PFDeltaPhi;"; MonitorElement * PFDeltaPhi = dbe->book1D(histoname.c_str(),title.c_str(),500,-5.0,5.0); PFDeltaPhi->getTH1(); v->setEffHistos(NumeratorPt, NumeratorPtBarrel, NumeratorPtEndcap, NumeratorPtForward, NumeratorEta, NumeratorPhi, NumeratorEtaPhi, //ml Additional Phi and Eta histos NumeratorEtaBarrel, NumeratorPhiBarrel, NumeratorEtaEndcap, NumeratorPhiEndcap, NumeratorEtaForward, NumeratorPhiForward, NumeratorEta_LowpTcut, NumeratorPhi_LowpTcut, NumeratorEtaPhi_LowpTcut, NumeratorEta_MedpTcut, NumeratorPhi_MedpTcut, NumeratorEtaPhi_MedpTcut, NumeratorEta_HighpTcut, NumeratorPhi_HighpTcut, NumeratorEtaPhi_HighpTcut, //ml 15 new numerator histograms. DenominatorPt, DenominatorPtBarrel, DenominatorPtEndcap, DenominatorPtForward, DenominatorEta, DenominatorPhi, DenominatorEtaPhi, //ml new denom histos DenominatorEtaBarrel, DenominatorPhiBarrel, DenominatorEtaEndcap, DenominatorPhiEndcap, DenominatorEtaForward, DenominatorPhiForward, DenominatorEta_LowpTcut, DenominatorPhi_LowpTcut, DenominatorEtaPhi_LowpTcut, DenominatorEta_MedpTcut, DenominatorPhi_MedpTcut, DenominatorEtaPhi_MedpTcut, DenominatorEta_HighpTcut, DenominatorPhi_HighpTcut, DenominatorEtaPhi_HighpTcut, DeltaR, DeltaPhi, //ml //adding PF histograms SJ: NumeratorPFPt, NumeratorPFMHT, NumeratorPFPtBarrel, NumeratorPFPtEndcap, NumeratorPFPtForward, NumeratorPFEta, NumeratorPFPhi, NumeratorPFEtaPhi, NumeratorPFEtaBarrel, NumeratorPFPhiBarrel, NumeratorPFEtaEndcap, NumeratorPFPhiEndcap, NumeratorPFEtaForward, NumeratorPFPhiForward, NumeratorPFEta_LowpTcut, NumeratorPFPhi_LowpTcut, NumeratorPFEtaPhi_LowpTcut, NumeratorPFEta_MedpTcut, NumeratorPFPhi_MedpTcut, NumeratorPFEtaPhi_MedpTcut, NumeratorPFEta_HighpTcut, NumeratorPFPhi_HighpTcut, NumeratorPFEtaPhi_HighpTcut, DenominatorPFPt, DenominatorPFMHT, DenominatorPFPtBarrel, DenominatorPFPtEndcap, DenominatorPFPtForward, DenominatorPFEta, DenominatorPFPhi, DenominatorPFEtaPhi, DenominatorPFEtaBarrel, DenominatorPFPhiBarrel, DenominatorPFEtaEndcap, DenominatorPFPhiEndcap, DenominatorPFEtaForward, DenominatorPFPhiForward, DenominatorPFEta_LowpTcut, DenominatorPFPhi_LowpTcut, DenominatorPFEtaPhi_LowpTcut, DenominatorPFEta_MedpTcut, DenominatorPFPhi_MedpTcut, DenominatorPFEtaPhi_MedpTcut, DenominatorPFEta_HighpTcut, DenominatorPFPhi_HighpTcut, DenominatorPFEtaPhi_HighpTcut, PFDeltaR, PFDeltaPhi ); } if((v->getObjectType() == trigger::TriggerJet) && (v->getTriggerType().compare("DiJet_Trigger") == 0)){ histoname = labelname+"_NumeratorAvrgPt"; title = labelname+"NumeratorAvrgPt;Calo Pt[GeV/c] "; MonitorElement * NumeratorPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPt->getTH1(); histoname = labelname+"_NumeratorAvrgEta"; title = labelname+"NumeratorAvrgEta;Calo #eta"; MonitorElement * NumeratorEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEta->getTH1(); histoname = labelname+"_DenominatorAvrgPt"; title = labelname+"DenominatorAvrgPt;Calo Pt[GeV/c]"; MonitorElement * DenominatorPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPt->getTH1(); histoname = labelname+"_DenominatorAvrgEta"; title = labelname+"DenominatorAvrgEta;Calo #eta "; MonitorElement * DenominatorEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEta->getTH1(); histoname = labelname+"_DeltaR"; title = labelname+"DeltaR;"; MonitorElement * DeltaR = dbe->book1D(histoname.c_str(),title.c_str(),100,0.,1.5); DeltaR->getTH1(); histoname = labelname+"_DeltaPhi"; title = labelname+"DeltaPhi;"; MonitorElement * DeltaPhi = dbe->book1D(histoname.c_str(),title.c_str(),500,-5.,5.); DeltaPhi->getTH1(); histoname = labelname+"_NumeratorAvrgPFPt"; title = labelname+"NumeratorAvrgPFPt;PF Pt[GeV/c] "; MonitorElement * NumeratorPFPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPFPt->getTH1(); histoname = labelname+"_NumeratorAvrgPFEta"; title = labelname+"NumeratorAvrgPFEta;PF #eta"; MonitorElement * NumeratorPFEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEta->getTH1(); histoname = labelname+"_DenominatorAvrgPFPt"; title = labelname+"DenominatorAvrgPFPt;PF Pt[GeV/c]"; MonitorElement * DenominatorPFPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPFPt->getTH1(); histoname = labelname+"_DenominatorAvrgPFEta"; title = labelname+"DenominatorAvrgPFEta;PF #eta "; MonitorElement * DenominatorPFEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEta->getTH1(); histoname = labelname+"_PFDeltaR"; title = labelname+"PFDeltaR;"; MonitorElement * PFDeltaR = dbe->book1D(histoname.c_str(),title.c_str(),100,0.,1.5); PFDeltaR->getTH1(); histoname = labelname+"_PFDeltaPhi"; title = labelname+"PFDeltaPhi;"; MonitorElement * PFDeltaPhi = dbe->book1D(histoname.c_str(),title.c_str(),500,-5.,5.); PFDeltaPhi->getTH1(); v->setEffHistos( dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy ); } if(v->getObjectType() == trigger::TriggerMET || (v->getObjectType() == trigger::TriggerTET)){ histoname = labelname+"_NumeratorPt"; if(v->getPath().find("HLT_PFMET")==std::string::npos) title = labelname+"NumeratorPt; CaloMET[GeV/c]"; else title = labelname+"NumeratorPt; PFMET[GeV/c]"; MonitorElement * NumeratorPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPt->getTH1(); histoname = labelname+"_NumeratorPhi"; title = labelname+"NumeratorPhi; #Phi"; MonitorElement * NumeratorPhi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhi->getTH1(); histoname = labelname+"_DenominatorPt"; if(v->getPath().find("HLT_PFMET")==std::string::npos) title = labelname+"DenominatorPt; CaloMET[GeV/c]"; else title = labelname+"DenominatorPt; PFMET[GeV/c]"; MonitorElement * DenominatorPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPt->getTH1(); histoname = labelname+"_DenominatorPhi"; title = labelname+"DenominatorPhi; #Phi"; MonitorElement * DenominatorPhi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhi->getTH1(); v->setEffHistos( NumeratorPt, dummy, dummy, dummy, dummy, NumeratorPhi, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, DenominatorPt, dummy, dummy, dummy, dummy, DenominatorPhi, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy ); }// Loop over MET trigger } } //--------Efficiency wrt MiniBias trigger--------- if(plotEffwrtMB_){ std::string dirName3 = dirname_ + "/EffWrtMBTrigger/"; for(PathInfoCollection::iterator v = hltPathsEffWrtMB_.begin(); v!= hltPathsEffWrtMB_.end(); ++v ){ // std::string trgPathName = HLTConfigProvider::removeVersion(v->getPath()); // std::string labelname("ME") ; std::string subdirName = dirName3 + trgPathName ; std::string histoname(labelname+""); std::string title(labelname+""); dbe->setCurrentFolder(subdirName); MonitorElement *dummy; dummy = dbe->bookFloat("dummy"); if((v->getObjectType() == trigger::TriggerJet) && (v->getTriggerType().compare("SingleJet_Trigger") == 0)){ histoname = labelname+"_NumeratorPt"; title = labelname+"NumeratorPt;Calo Pt[GeV/c] "; MonitorElement * NumeratorPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPt->getTH1(); histoname = labelname+"_NumeratorPtBarrel"; title = labelname+"NumeratorPtBarrel;Calo Pt[GeV/c]"; MonitorElement * NumeratorPtBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPtBarrel->getTH1(); histoname = labelname+"_NumeratorPtEndcap"; title = labelname+"NumeratorPtEndcap; Calo Pt[GeV/c] "; MonitorElement * NumeratorPtEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPtEndcap->getTH1(); histoname = labelname+"_NumeratorPtForward"; title = labelname+"NumeratorPtForward;Calo Pt[GeV/c]"; MonitorElement * NumeratorPtForward = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPtForward->getTH1(); histoname = labelname+"_NumeratorEta"; title = labelname+"NumeratorEta;Calo #eta "; MonitorElement * NumeratorEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEta->getTH1(); histoname = labelname+"_NumeratorPhi"; title = labelname+"NumeratorPhi;Calo #Phi"; MonitorElement * NumeratorPhi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhi->getTH1(); histoname = labelname+"_NumeratorEtaPhi"; title = labelname+"NumeratorEtaPhi;Calo #eta;Calo #Phi "; MonitorElement * NumeratorEtaPhi = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorEtaPhi->getTH1(); histoname = labelname+"_NumeratorEtaBarrel"; title = labelname+"NumeratorEtaBarrel;Calo #eta "; MonitorElement * NumeratorEtaBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEtaBarrel->getTH1(); histoname = labelname+"_NumeratorPhiBarrel"; title = labelname+"NumeratorPhiBarrel;Calo #Phi"; MonitorElement * NumeratorPhiBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhiBarrel->getTH1(); histoname = labelname+"_NumeratorEtaEndcap"; title = labelname+"NumeratorEtaEndcap;Calo #eta "; MonitorElement * NumeratorEtaEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEtaEndcap->getTH1(); histoname = labelname+"_NumeratorPhiEndcap"; title = labelname+"NumeratorPhiEndcap;Calo #Phi"; MonitorElement * NumeratorPhiEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhiEndcap->getTH1(); histoname = labelname+"_NumeratorEtaForward"; title = labelname+"NumeratorEtaForward;Calo #eta "; MonitorElement * NumeratorEtaForward = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEtaForward->getTH1(); histoname = labelname+"_NumeratorPhiForward"; title = labelname+"NumeratorPhiForward;Calo #Phi"; MonitorElement * NumeratorPhiForward = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhiForward->getTH1(); histoname = labelname+"_NumeratorEta_LowpTcut"; title = labelname+"NumeratorEta_LowpTcut;Calo #eta "; MonitorElement * NumeratorEta_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEta_LowpTcut->getTH1(); histoname = labelname+"_NumeratorPhi_LowpTcut"; title = labelname+"NumeratorPhi_LowpTcut;Calo #Phi"; MonitorElement * NumeratorPhi_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhi_LowpTcut->getTH1(); histoname = labelname+"_NumeratorEtaPhi_LowpTcut"; title = labelname+"NumeratorEtaPhi_LowpTcut;Calo #eta;Calo #Phi"; MonitorElement * NumeratorEtaPhi_LowpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorEtaPhi_LowpTcut->getTH1(); histoname = labelname+"_NumeratorEta_MedpTcut"; title = labelname+"NumeratorEta_MedpTcut;Calo #eta "; MonitorElement * NumeratorEta_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEta_MedpTcut->getTH1(); histoname = labelname+"_NumeratorPhi_MedpTcut"; title = labelname+"NumeratorPhi_MedpTcut;Calo #Phi"; MonitorElement * NumeratorPhi_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhi_MedpTcut->getTH1(); histoname = labelname+"_NumeratorEtaPhi_MedpTcut"; title = labelname+"NumeratorEtaPhi_MedpTcut;Calo #eta;Calo #Phi"; MonitorElement * NumeratorEtaPhi_MedpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorEtaPhi_MedpTcut->getTH1(); histoname = labelname+"_NumeratorEta_HighpTcut"; title = labelname+"NumeratorEta_HighpTcut;Calo #eta "; MonitorElement * NumeratorEta_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEta_HighpTcut->getTH1(); histoname = labelname+"_NumeratorPhi_HighpTcut"; title = labelname+"NumeratorPhi_HighpTcut;Calo #Phi"; MonitorElement * NumeratorPhi_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhi_HighpTcut->getTH1(); histoname = labelname+"_NumeratorEtaPhi_HighpTcut"; title = labelname+"NumeratorEtaPhi_HighpTcut;Calo #eta;Calo #Phi"; MonitorElement * NumeratorEtaPhi_HighpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorEtaPhi_HighpTcut->getTH1(); histoname = labelname+"_DenominatorPt"; title = labelname+"DenominatorPt;Calo Pt[GeV/c]"; MonitorElement * DenominatorPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPt->getTH1(); histoname = labelname+"_DenominatorPtBarrel"; title = labelname+"DenominatorPtBarrel;Calo Pt[GeV/c]"; MonitorElement * DenominatorPtBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPtBarrel->getTH1(); histoname = labelname+"_DenominatorPtEndcap"; title = labelname+"DenominatorPtEndcap;Calo Pt[GeV/c]"; MonitorElement * DenominatorPtEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPtEndcap->getTH1(); histoname = labelname+"_DenominatorPtForward"; title = labelname+"DenominatorPtForward;Calo Pt[GeV/c]"; MonitorElement * DenominatorPtForward = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPtForward->getTH1(); histoname = labelname+"_DenominatorEta"; title = labelname+"DenominatorEta;Calo #eta "; MonitorElement * DenominatorEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEta->getTH1(); histoname = labelname+"_DenominatorPhi"; title = labelname+"DenominatorPhi;Calo #Phi"; MonitorElement * DenominatorPhi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhi->getTH1(); histoname = labelname+"_DenominatorEtaPhi"; title = labelname+"DenominatorEtaPhi;Calo #eta ;Calo #Phi "; MonitorElement * DenominatorEtaPhi = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorEtaPhi->getTH1(); histoname = labelname+"_DenominatorEtaBarrel"; title = labelname+"DenominatorEtaBarrel;Calo #eta "; MonitorElement * DenominatorEtaBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEtaBarrel->getTH1(); histoname = labelname+"_DenominatorPhiBarrel"; title = labelname+"DenominatorPhiBarrel;Calo #Phi"; MonitorElement * DenominatorPhiBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhiBarrel->getTH1(); histoname = labelname+"_DenominatorEtaEndcap"; title = labelname+"DenominatorEtaEndcap;Calo #eta "; MonitorElement * DenominatorEtaEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEtaEndcap->getTH1(); histoname = labelname+"_DenominatorPhiEndcap"; title = labelname+"DenominatorPhiEndcap;Calo #Phi"; MonitorElement * DenominatorPhiEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhiEndcap->getTH1(); histoname = labelname+"_DenominatorEtaForward"; title = labelname+"DenominatorEtaForward;Calo #eta "; MonitorElement * DenominatorEtaForward = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEtaForward->getTH1(); histoname = labelname+"_DenominatorPhiForward"; title = labelname+"DenominatorPhiForward;Calo #Phi"; MonitorElement * DenominatorPhiForward = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhiForward->getTH1(); histoname = labelname+"_DenominatorEta_LowpTcut"; title = labelname+"DenominatorEta_LowpTcut;Calo #eta "; MonitorElement * DenominatorEta_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEta_LowpTcut->getTH1(); histoname = labelname+"_DenominatorPhi_LowpTcut"; title = labelname+"DenominatorPhi_LowpTcut;Calo #Phi"; MonitorElement * DenominatorPhi_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhi_LowpTcut->getTH1(); histoname = labelname+"_DenominatorEtaPhi_LowpTcut"; title = labelname+"DenominatorEtaPhi_LowpTcut;Calo #eta;Calo #Phi"; MonitorElement * DenominatorEtaPhi_LowpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorEtaPhi_LowpTcut->getTH1(); histoname = labelname+"_DenominatorEta_MedpTcut"; title = labelname+"DenominatorEta_MedpTcut;Calo #eta "; MonitorElement * DenominatorEta_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEta_MedpTcut->getTH1(); histoname = labelname+"_DenominatorPhi_MedpTcut"; title = labelname+"DenominatorPhi_MedpTcut;Calo #Phi"; MonitorElement * DenominatorPhi_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhi_MedpTcut->getTH1(); histoname = labelname+"_DenominatorEtaPhi_MedpTcut"; title = labelname+"DenominatorEtaPhi_MedpTcut;Calo #eta;Calo #Phi"; MonitorElement * DenominatorEtaPhi_MedpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorEtaPhi_MedpTcut->getTH1(); histoname = labelname+"_DenominatorEta_HighpTcut"; title = labelname+"DenominatorEta_HighpTcut;Calo #eta "; MonitorElement * DenominatorEta_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEta_HighpTcut->getTH1(); histoname = labelname+"_DenominatorPhi_HighpTcut"; title = labelname+"DenominatorPhi_HighpTcut;Calo #Phi"; MonitorElement * DenominatorPhi_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhi_HighpTcut->getTH1(); histoname = labelname+"_DenominatorEtaPhi_HighpTcut"; title = labelname+"DenominatorEtaPhi_HighpTcut;Calo #eta;Calo #Phi"; MonitorElement * DenominatorEtaPhi_HighpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorEtaPhi_HighpTcut->getTH1(); histoname = labelname+"_DeltaR"; title = labelname+"DeltaR;"; MonitorElement * DeltaR = dbe->book1D(histoname.c_str(),title.c_str(),100,0.,1.5); DeltaR->getTH1(); histoname = labelname+"_DeltaPhi"; title = labelname+"DeltaPhi;"; MonitorElement * DeltaPhi = dbe->book1D(histoname.c_str(),title.c_str(),500,-5.,5.); DeltaPhi->getTH1(); histoname = labelname+"_NumeratorPFPt"; title = labelname+"NumeratorPFPt;PF Pt[GeV/c] "; MonitorElement * NumeratorPFPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPFPt->getTH1(); histoname = labelname+"_NumeratorPFMHT"; title = labelname+"NumeratorPFPt;PFMHT[GeV/c] "; MonitorElement * NumeratorPFMHT = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPFMHT->getTH1(); histoname = labelname+"_NumeratorPFPtBarrel"; title = labelname+"NumeratorPFPtBarrel;PF Pt[GeV/c]"; MonitorElement * NumeratorPFPtBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPFPtBarrel->getTH1(); histoname = labelname+"_NumeratorPFPtEndcap"; title = labelname+"NumeratorPFPtEndcap; PF Pt[GeV/c] "; MonitorElement * NumeratorPFPtEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPFPtEndcap->getTH1(); histoname = labelname+"_NumeratorPFPtForward"; title = labelname+"NumeratorPFPtForward;PF Pt[GeV/c]"; MonitorElement * NumeratorPFPtForward = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPFPtForward->getTH1(); histoname = labelname+"_NumeratorPFEta"; title = labelname+"NumeratorPFEta;PF #eta "; MonitorElement * NumeratorPFEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEta->getTH1(); histoname = labelname+"_NumeratorPFPhi"; title = labelname+"NumeratorPFPhi;PF #Phi"; MonitorElement * NumeratorPFPhi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhi->getTH1(); histoname = labelname+"_NumeratorPFEtaPhi"; title = labelname+"NumeratorPFEtaPhi;PF #eta;PF #Phi "; MonitorElement * NumeratorPFEtaPhi = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorPFEtaPhi->getTH1(); histoname = labelname+"_NumeratorPFEtaBarrel"; title = labelname+"NumeratorPFEtaBarrel;PF #eta "; MonitorElement * NumeratorPFEtaBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEtaBarrel->getTH1(); histoname = labelname+"_NumeratorPFPhiBarrel"; title = labelname+"NumeratorPFPhiBarrel;PF #Phi"; MonitorElement * NumeratorPFPhiBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhiBarrel->getTH1(); histoname = labelname+"_NumeratorPFEtaEndcap"; title = labelname+"NumeratorPFEtaEndcap;PF #eta "; MonitorElement * NumeratorPFEtaEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEtaEndcap->getTH1(); histoname = labelname+"_NumeratorPFPhiEndcap"; title = labelname+"NumeratorPFPhiEndcap;PF #Phi"; MonitorElement * NumeratorPFPhiEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhiEndcap->getTH1(); histoname = labelname+"_NumeratorPFEtaForward"; title = labelname+"NumeratorPFEtaForward;PF #eta "; MonitorElement * NumeratorPFEtaForward = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEtaForward->getTH1(); histoname = labelname+"_NumeratorPFPhiForward"; title = labelname+"NumeratorPFPhiForward;PF #Phi"; MonitorElement * NumeratorPFPhiForward = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhiForward->getTH1(); histoname = labelname+"_NumeratorPFEta_LowpTcut"; title = labelname+"NumeratorPFEta_LowpTcut;PF #eta "; MonitorElement * NumeratorPFEta_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEta_LowpTcut->getTH1(); histoname = labelname+"_NumeratorPFPhi_LowpTcut"; title = labelname+"NumeratorPFPhi_LowpTcut;PF #Phi"; MonitorElement * NumeratorPFPhi_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhi_LowpTcut->getTH1(); histoname = labelname+"_NumeratorPFEtaPhi_LowpTcut"; title = labelname+"NumeratorPFEtaPhi_LowpTcut;PF #eta;PF #Phi"; MonitorElement * NumeratorPFEtaPhi_LowpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorPFEtaPhi_LowpTcut->getTH1(); histoname = labelname+"_NumeratorPFEta_MedpTcut"; title = labelname+"NumeratorPFEta_MedpTcut;PF #eta "; MonitorElement * NumeratorPFEta_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEta_MedpTcut->getTH1(); histoname = labelname+"_NumeratorPFPhi_MedpTcut"; title = labelname+"NumeratorPFPhi_MedpTcut;PF #Phi"; MonitorElement * NumeratorPFPhi_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhi_MedpTcut->getTH1(); histoname = labelname+"_NumeratorPFEtaPhi_MedpTcut"; title = labelname+"NumeratorPFEtaPhi_MedpTcut;PF #eta;PF #Phi"; MonitorElement * NumeratorPFEtaPhi_MedpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorPFEtaPhi_MedpTcut->getTH1(); histoname = labelname+"_NumeratorPFEta_HighpTcut"; title = labelname+"NumeratorPFEta_HighpTcut;PF #eta "; MonitorElement * NumeratorPFEta_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEta_HighpTcut->getTH1(); histoname = labelname+"_NumeratorPFPhi_HighpTcut"; title = labelname+"NumeratorPFPhi_HighpTcut;PF #Phi"; MonitorElement * NumeratorPFPhi_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPFPhi_HighpTcut->getTH1(); histoname = labelname+"_NumeratorPFEtaPhi_HighpTcut"; title = labelname+"NumeratorPFEtaPhi_HighpTcut;PF #eta;PF #Phi"; MonitorElement * NumeratorPFEtaPhi_HighpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); NumeratorPFEtaPhi_HighpTcut->getTH1(); histoname = labelname+"_DenominatorPFMHT"; title = labelname+"DenominatorPFMHT;PFMHT[GeV/c]"; MonitorElement * DenominatorPFMHT = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPFMHT->getTH1(); histoname = labelname+"_DenominatorPFPt"; title = labelname+"DenominatorPFPt;PF Pt[GeV/c]"; MonitorElement * DenominatorPFPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPFPt->getTH1(); histoname = labelname+"_DenominatorPFPtBarrel"; title = labelname+"DenominatorPFPtBarrel;PF Pt[GeV/c]"; MonitorElement * DenominatorPFPtBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPFPtBarrel->getTH1(); histoname = labelname+"_DenominatorPFPtEndcap"; title = labelname+"DenominatorPFPtEndcap;PF Pt[GeV/c]"; MonitorElement * DenominatorPFPtEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPFPtEndcap->getTH1(); histoname = labelname+"_DenominatorPFPtForward"; title = labelname+"DenominatorPFPtForward;PF Pt[GeV/c]"; MonitorElement * DenominatorPFPtForward = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPFPtForward->getTH1(); histoname = labelname+"_DenominatorPFEta"; title = labelname+"DenominatorPFEta;PF #eta "; MonitorElement * DenominatorPFEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEta->getTH1(); histoname = labelname+"_DenominatorPFPhi"; title = labelname+"DenominatorPFPhi;PF #Phi"; MonitorElement * DenominatorPFPhi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhi->getTH1(); histoname = labelname+"_DenominatorPFEtaPhi"; title = labelname+"DenominatorPFEtaPhi;PF #eta ;PF #Phi "; MonitorElement * DenominatorPFEtaPhi = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorPFEtaPhi->getTH1(); histoname = labelname+"_DenominatorPFEtaBarrel"; title = labelname+"DenominatorPFEtaBarrel;PF #eta "; MonitorElement * DenominatorPFEtaBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEtaBarrel->getTH1(); histoname = labelname+"_DenominatorPFPhiBarrel"; title = labelname+"DenominatorPFPhiBarrel;PF #Phi"; MonitorElement * DenominatorPFPhiBarrel = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhiBarrel->getTH1(); histoname = labelname+"_DenominatorPFEtaEndcap"; title = labelname+"DenominatorPFEtaEndcap;PF #eta "; MonitorElement * DenominatorPFEtaEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEtaEndcap->getTH1(); histoname = labelname+"_DenominatorPFPhiEndcap"; title = labelname+"DenominatorPFPhiEndcap;PF #Phi"; MonitorElement * DenominatorPFPhiEndcap = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhiEndcap->getTH1(); histoname = labelname+"_DenominatorPFEtaForward"; title = labelname+"DenominatorPFEtaForward;PF #eta "; MonitorElement * DenominatorPFEtaForward = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEtaForward->getTH1(); histoname = labelname+"_DenominatorPFPhiForward"; title = labelname+"DenominatorPFPhiForward;PF #Phi"; MonitorElement * DenominatorPFPhiForward = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhiForward->getTH1(); histoname = labelname+"_DenominatorPFEta_LowpTcut"; title = labelname+"DenominatorPFEta_LowpTcut;PF #eta "; MonitorElement * DenominatorPFEta_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEta_LowpTcut->getTH1(); histoname = labelname+"_DenominatorPFPhi_LowpTcut"; title = labelname+"DenominatorPFPhi_LowpTcut;PF #Phi"; MonitorElement * DenominatorPFPhi_LowpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhi_LowpTcut->getTH1(); histoname = labelname+"_DenominatorPFEtaPhi_LowpTcut"; title = labelname+"DenominatorPFEtaPhi_LowpTcut;PF #eta;PF #Phi"; MonitorElement * DenominatorPFEtaPhi_LowpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorPFEtaPhi_LowpTcut->getTH1(); histoname = labelname+"_DenominatorPFEta_MedpTcut"; title = labelname+"DenominatorPFEta_MedpTcut;PF #eta "; MonitorElement * DenominatorPFEta_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEta_MedpTcut->getTH1(); histoname = labelname+"_DenominatorPFPhi_MedpTcut"; title = labelname+"DenominatorPFPhi_MedpTcut;PF #Phi"; MonitorElement * DenominatorPFPhi_MedpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhi_MedpTcut->getTH1(); histoname = labelname+"_DenominatorPFEtaPhi_MedpTcut"; title = labelname+"DenominatorPFEtaPhi_MedpTcut;PF #eta;PF #Phi"; MonitorElement * DenominatorPFEtaPhi_MedpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorPFEtaPhi_MedpTcut->getTH1(); histoname = labelname+"_DenominatorPFEta_HighpTcut"; title = labelname+"DenominatorPFEta_HighpTcut;PF #eta "; MonitorElement * DenominatorPFEta_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEta_HighpTcut->getTH1(); histoname = labelname+"_DenominatorPFPhi_HighpTcut"; title = labelname+"DenominatorPFPhi_HighpTcut;PF #Phi"; MonitorElement * DenominatorPFPhi_HighpTcut = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPFPhi_HighpTcut->getTH1(); histoname = labelname+"_DenominatorPFEtaPhi_HighpTcut"; title = labelname+"DenominatorPFEtaPhi_HighpTcut;PF #eta;PF #Phi"; MonitorElement * DenominatorPFEtaPhi_HighpTcut = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Phibins_,PhiMin_,PhiMax_); DenominatorPFEtaPhi_HighpTcut->getTH1(); histoname = labelname+"_PFDeltaR"; title = labelname+"PFDeltaR;"; MonitorElement * PFDeltaR = dbe->book1D(histoname.c_str(),title.c_str(),100,0.,1.5); PFDeltaR->getTH1(); histoname = labelname+"_PFDeltaPhi"; title = labelname+"PFDeltaPhi;"; MonitorElement * PFDeltaPhi = dbe->book1D(histoname.c_str(),title.c_str(),500,-5.,5.); PFDeltaPhi->getTH1(); v->setEffHistos(NumeratorPt, NumeratorPtBarrel, NumeratorPtEndcap, NumeratorPtForward, NumeratorEta, NumeratorPhi, NumeratorEtaPhi, // NumeratorEtaBarrel, NumeratorPhiBarrel, NumeratorEtaEndcap, NumeratorPhiEndcap, NumeratorEtaForward, NumeratorPhiForward, NumeratorEta_LowpTcut, NumeratorPhi_LowpTcut, NumeratorEtaPhi_LowpTcut, NumeratorEta_MedpTcut, NumeratorPhi_MedpTcut, NumeratorEtaPhi_MedpTcut, NumeratorEta_HighpTcut, NumeratorPhi_HighpTcut, NumeratorEtaPhi_HighpTcut, // DenominatorPt, DenominatorPtBarrel, DenominatorPtEndcap, DenominatorPtForward, DenominatorEta, DenominatorPhi, DenominatorEtaPhi, // DenominatorEtaBarrel, DenominatorPhiBarrel, DenominatorEtaEndcap, DenominatorPhiEndcap, DenominatorEtaForward, DenominatorPhiForward, DenominatorEta_LowpTcut, DenominatorPhi_LowpTcut, DenominatorEtaPhi_LowpTcut, DenominatorEta_MedpTcut, DenominatorPhi_MedpTcut, DenominatorEtaPhi_MedpTcut, DenominatorEta_HighpTcut, DenominatorPhi_HighpTcut, DenominatorEtaPhi_HighpTcut, DeltaR, DeltaPhi, // NumeratorPFPt, NumeratorPFMHT, NumeratorPFPtBarrel, NumeratorPFPtEndcap, NumeratorPFPtForward, NumeratorPFEta, NumeratorPFPhi, NumeratorPFEtaPhi, NumeratorPFEtaBarrel, NumeratorPFPhiBarrel, NumeratorPFEtaEndcap, NumeratorPFPhiEndcap, NumeratorPFEtaForward, NumeratorPFPhiForward, NumeratorPFEta_LowpTcut, NumeratorPFPhi_LowpTcut, NumeratorPFEtaPhi_LowpTcut, NumeratorPFEta_MedpTcut, NumeratorPFPhi_MedpTcut, NumeratorPFEtaPhi_MedpTcut, NumeratorPFEta_HighpTcut, NumeratorPFPhi_HighpTcut, NumeratorPFEtaPhi_HighpTcut, DenominatorPFPt, DenominatorPFMHT, DenominatorPFPtBarrel, DenominatorPFPtEndcap, DenominatorPFPtForward, DenominatorPFEta, DenominatorPFPhi, DenominatorPFEtaPhi, DenominatorPFEtaBarrel, DenominatorPFPhiBarrel, DenominatorPFEtaEndcap, DenominatorPFPhiEndcap, DenominatorPFEtaForward, DenominatorPFPhiForward, DenominatorPFEta_LowpTcut, DenominatorPFPhi_LowpTcut, DenominatorPFEtaPhi_LowpTcut, DenominatorPFEta_MedpTcut, DenominatorPFPhi_MedpTcut, DenominatorPFEtaPhi_MedpTcut, DenominatorPFEta_HighpTcut, DenominatorPFPhi_HighpTcut, DenominatorPFEtaPhi_HighpTcut, PFDeltaR, PFDeltaPhi ); }// Loop over Jet Trigger if((v->getObjectType() == trigger::TriggerJet) && (v->getTriggerType().compare("DiJet_Trigger") == 0)){ histoname = labelname+"_NumeratorAvrgPt"; title = labelname+"NumeratorAvrgPt;Calo Pt[GeV/c] "; MonitorElement * NumeratorPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPt->getTH1(); histoname = labelname+"_NumeratorAvrgEta"; title = labelname+"NumeratorAvrgEta;Calo #eta "; MonitorElement * NumeratorEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorEta->getTH1(); histoname = labelname+"_DenominatorAvrgPt"; title = labelname+"DenominatorAvrgPt;Calo Pt[GeV/c] "; MonitorElement * DenominatorPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPt->getTH1(); histoname = labelname+"_DenominatorAvrgEta"; title = labelname+"DenominatorAvrgEta;Calo #eta "; MonitorElement * DenominatorEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorEta->getTH1(); histoname = labelname+"_DeltaR"; title = labelname+"DeltaR;"; MonitorElement * DeltaR = dbe->book1D(histoname.c_str(),title.c_str(),100,0.,1.5); DeltaR->getTH1(); histoname = labelname+"_DeltaPhi"; title = labelname+"DeltaPhi;"; MonitorElement * DeltaPhi = dbe->book1D(histoname.c_str(),title.c_str(),100,0.,1.5); DeltaPhi->getTH1(); histoname = labelname+"_NumeratorAvrgPFPt"; title = labelname+"NumeratorAvrgPFPt;PF pT [GeV/c] "; MonitorElement * NumeratorPFPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPFPt->getTH1(); histoname = labelname+"_NumeratorAvrgPFEta"; title = labelname+"NumeratorAvrgPFEta;PF #eta "; MonitorElement * NumeratorPFEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); NumeratorPFEta->getTH1(); histoname = labelname+"_DenominatorAvrgPFPt"; title = labelname+"DenominatorAvrgPFPt;PF Pt[GeV/c] "; MonitorElement * DenominatorPFPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPFPt->getTH1(); histoname = labelname+"_DenominatorAvrgPFEta"; title = labelname+"DenominatorAvrgPFEta;PF #eta "; MonitorElement * DenominatorPFEta = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); DenominatorPFEta->getTH1(); histoname = labelname+"_PFDeltaR"; title = labelname+"PFDeltaR;"; MonitorElement * PFDeltaR = dbe->book1D(histoname.c_str(),title.c_str(),100,0.,1.5); PFDeltaR->getTH1(); histoname = labelname+"_PFDeltaPhi"; title = labelname+"PFDeltaPhi;"; MonitorElement * PFDeltaPhi = dbe->book1D(histoname.c_str(),title.c_str(),100,0.,1.5); PFDeltaPhi->getTH1(); v->setEffHistos( dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy ); } if(v->getObjectType() == trigger::TriggerMET || (v->getObjectType() == trigger::TriggerTET)){ histoname = labelname+"_NumeratorPt"; if(v->getPath().find("HLT_PFMET")==std::string::npos) title = labelname+"NumeratorPt;CaloMET[GeV/c]"; else title = labelname+"NumeratorPt;PFMET[GeV/c]"; MonitorElement * NumeratorPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); NumeratorPt->getTH1(); histoname = labelname+"_NumeratorPhi"; title = labelname+"NumeratorPhi;#Phi"; MonitorElement * NumeratorPhi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); NumeratorPhi->getTH1(); histoname = labelname+"_DenominatorPt"; if(v->getPath().find("HLT_PFMET")==std::string::npos) title = labelname+"DenominatorPt;CaloMET[GeV/c]"; else title = labelname+"DenominatorPt;PFMET[GeV/c]"; MonitorElement * DenominatorPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); DenominatorPt->getTH1(); histoname = labelname+"_DenominatorPhi"; title = labelname+"DenominatorPhi;#Phi"; MonitorElement * DenominatorPhi = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); DenominatorPhi->getTH1(); v->setEffHistos( NumeratorPt, dummy, dummy, dummy, dummy, NumeratorPhi, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, DenominatorPt, dummy, dummy, dummy, dummy, DenominatorPhi, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy, dummy ); }// Loop over MET trigger } } }// This is loop over all efficiency plots if(runStandalone_){ //--------Histos to see WHY trigger is NOT fired---------- int Nbins_ = 10; int Nmin_ = 0; int Nmax_ = 10; int Ptbins_ = 1000; int Etabins_ = 40; int Phibins_ = 35; double PtMin_ = 0.; double PtMax_ = 1000.; double EtaMin_ = -5.; double EtaMax_ = 5.; double PhiMin_ = -3.14159; double PhiMax_ = 3.14159; std::string dirName4_ = dirname_ + "/TriggerNotFired/"; for(PathInfoCollection::iterator v = hltPathsAll_.begin(); v!= hltPathsAll_.end(); ++v ){ MonitorElement *dummy; dummy = dbe->bookFloat("dummy"); std::string labelname("ME") ; std::string histoname(labelname+""); std::string title(labelname+""); dbe->setCurrentFolder(dirName4_ + v->getPath()); histoname = labelname+"_TriggerSummary"; title = labelname+"Summary of trigger levels"; MonitorElement * TriggerSummary = dbe->book1D(histoname.c_str(),title.c_str(),7, -0.5,6.5); std::vector<std::string> trigger; trigger.push_back("Nevt"); trigger.push_back("L1 failed"); trigger.push_back("L1 & HLT failed"); trigger.push_back("L1 failed but not HLT"); trigger.push_back("L1 passed"); trigger.push_back("L1 & HLT passed"); trigger.push_back("L1 passed but not HLT"); for(unsigned int i =0; i < trigger.size(); i++) TriggerSummary->setBinLabel(i+1, trigger[i]); if((v->getTriggerType().compare("SingleJet_Trigger") == 0)){ histoname = labelname+"_JetPt"; title = labelname+"Leading jet pT;Pt[GeV/c]"; MonitorElement * JetPt = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); JetPt->getTH1(); histoname = labelname+"_JetEtaVsPt"; title = labelname+"Leading jet #eta vs pT;#eta;Pt[GeV/c]"; MonitorElement * JetEtaVsPt = dbe->book2D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_,Ptbins_,PtMin_,PtMax_); JetEtaVsPt->getTH1(); histoname = labelname+"_JetPhiVsPt"; title = labelname+"Leading jet #Phi vs pT;#Phi;Pt[GeV/c]"; MonitorElement * JetPhiVsPt = dbe->book2D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_,Ptbins_,PtMin_,PtMax_); JetPhiVsPt->getTH1(); v->setDgnsHistos( TriggerSummary, dummy, JetPt, JetEtaVsPt, JetPhiVsPt, dummy, dummy, dummy, dummy, dummy, dummy); }// single Jet trigger if((v->getTriggerType().compare("DiJet_Trigger") == 0)){ histoname = labelname+"_JetSize"; title = labelname+"Jet Size;multiplicity"; MonitorElement * JetSize = dbe->book1D(histoname.c_str(),title.c_str(),Nbins_,Nmin_,Nmax_); JetSize->getTH1(); histoname = labelname+"_AvergPt"; title = labelname+"Average Pt;Pt[GeV/c]"; MonitorElement * Pt12 = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); Pt12->getTH1(); histoname = labelname+"_AvergEta"; title = labelname+"Average Eta;#eta"; MonitorElement * Eta12 = dbe->book1D(histoname.c_str(),title.c_str(),Etabins_,EtaMin_,EtaMax_); Eta12->getTH1(); histoname = labelname+"_PhiDifference"; title = labelname+"#Delta#Phi;#Delta#Phi"; MonitorElement * Phi12 = dbe->book1D(histoname.c_str(),title.c_str(),Phibins_,PhiMin_,PhiMax_); Phi12->getTH1(); histoname = labelname+"_Pt3Jet"; title = labelname+"Pt of 3rd Jet;Pt[GeV/c]"; MonitorElement * Pt3 = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); Pt3->getTH1(); histoname = labelname+"_Pt12VsPt3Jet"; title = labelname+"Pt of 3rd Jet vs Average Pt of leading jets;Avergage Pt[GeV/c]; Pt of 3rd Jet [GeV/c]"; MonitorElement * Pt12Pt3 = dbe->book2D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_,Ptbins_,PtMin_,PtMax_); Pt12Pt3->getTH1(); histoname = labelname+"_Pt12VsPhi12"; title = labelname+"Average Pt of leading jets vs #Delta#Phi between leading jets;Avergage Pt[GeV/c]; #Delta#Phi"; MonitorElement * Pt12Phi12 = dbe->book2D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_,Phibins_,PhiMin_,PhiMax_); Pt12Phi12->getTH1(); v->setDgnsHistos( TriggerSummary, JetSize, dummy, dummy, dummy, Pt12, Eta12, Phi12, Pt3, Pt12Pt3, Pt12Phi12); }// Dijet Jet trigger if((v->getTriggerType().compare("MET_Trigger") == 0)){ histoname = labelname+"_MET"; title = labelname+"MET;Pt[GeV/c]"; MonitorElement * MET = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); MET->getTH1(); v->setDgnsHistos(TriggerSummary, dummy, MET, dummy, dummy, dummy, dummy, dummy,dummy,dummy,dummy); } // MET trigger if((v->getTriggerType().compare("TET_Trigger") == 0)){ histoname = labelname+"_TET"; title = labelname+"TET;Pt[GeV/c]"; MonitorElement * TET = dbe->book1D(histoname.c_str(),title.c_str(),Ptbins_,PtMin_,PtMax_); TET->getTH1(); v->setDgnsHistos(TriggerSummary, dummy, TET, dummy, dummy, dummy, dummy, dummy,dummy,dummy,dummy); } // TET trigger } }//runStandalone } }
void JetMETHLTOfflineSource::endJob | ( | void | ) | [private, virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 6300 of file JetMETHLTOfflineSource.cc.
References jetID.
{ delete jetID; }
void JetMETHLTOfflineSource::endLuminosityBlock | ( | const edm::LuminosityBlock & | lumiSeg, |
const edm::EventSetup & | c | ||
) | [private, virtual] |
DQM Client Diagnostic.
Reimplemented from edm::EDAnalyzer.
Definition at line 6272 of file JetMETHLTOfflineSource.cc.
{ }
void JetMETHLTOfflineSource::endRun | ( | const edm::Run & | run, |
const edm::EventSetup & | c | ||
) | [private, virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 6305 of file JetMETHLTOfflineSource.cc.
References gather_cfg::cout, edm::RunBase::id(), and verbose_.
void JetMETHLTOfflineSource::fillMEforEffAllTrigger | ( | const edm::Event & | iEvent, |
const edm::EventSetup & | iSetup | ||
) | [private, virtual] |
Definition at line 1148 of file JetMETHLTOfflineSource.cc.
References _fEMF, _feta, _fHPD, _max_CEMF, _max_CHEF, _max_NEMF, _max_NHEF, _min_CEMF, _min_CHEF, _min_NEMF, _min_NHEF, _n90Hits, _pfMHT, abs, calojet, calojetColl_, CaloJetEMF, CaloJetEta, CaloJetfHPD, CaloJetn90, CaloJetPhi, CaloJetPt, calometColl_, gather_cfg::cout, SiPixelRawToDigiRegional_cfi::deltaPhi, deltaR(), dPhi(), reco::LeafCandidate::et(), eta(), hltPathsEff_, patRefSel_triggerSelection_cff::hltTag, isBarrel(), isEndCap(), isForward(), edm::HandleBase::isValid(), patRefSel_triggerSelection_cff::l1Tag, CaloMET_cfi::met, pfjet, PFJetCEMF, PFJetCHEF, pfjetColl_, PFJetEta, PFJetNEMF, PFJetNHEF, PFJetPhi, PFJetPt, pfmetColl_, pfMHTx_All, pfMHTy_All, reco::LeafCandidate::phi(), phi, processname_, edm::Handle< T >::product(), edm::TriggerNames::size(), mathSSE::sqrt(), edm::TriggerNames::triggerIndex(), trigger::TriggerJet, trigger::TriggerMET, triggerNames_, triggerObj_, triggerResults_, trigger::TriggerTET, v, and verbose_.
Referenced by analyze().
{ //int npath; if(&triggerResults_){ /*npath = triggerResults_->size();*/ } else return; int num = -1; int denom = -1; bool denompassed = false; bool numpassed = false; const trigger::TriggerObjectCollection & toc(triggerObj_->getObjects()); for(PathInfoCollection::iterator v = hltPathsEff_.begin(); v!= hltPathsEff_.end(); ++v ){ num++; denom++; denompassed = false; numpassed = false; unsigned indexNum = triggerNames_.triggerIndex(v->getPath()); unsigned indexDenom = triggerNames_.triggerIndex(v->getDenomPath()); if(indexNum < triggerNames_.size() && triggerResults_->accept(indexNum)) numpassed = true; if(indexDenom < triggerNames_.size() && triggerResults_->accept(indexDenom)) denompassed = true; if(denompassed==false) continue; //if(numpassed==true){ edm::InputTag hltTag(v->getLabel(),"",processname_); const int hltIndex = triggerObj_->filterIndex(hltTag); edm::InputTag l1Tag(v->getl1Path(),"",processname_); const int l1Index = triggerObj_->filterIndex(l1Tag); //} //---------------------------------------------------------------------- //double pTcut = 0; double trigLowpTcut = 0; double trigMedpTcut = 0; double trigHighpTcut = 0; double trigLowpTcutFwd = 0; double trigMedpTcutFwd = 0; double trigHighpTcutFwd = 0; // //double pTPFcut = 0 ; double trigLowpTPFcut = 0; double trigMedpTPFcut = 0; double trigHighpTPFcut = 0; double trigLowpTPFcutFwd = 0; double trigMedpTPFcutFwd = 0; double trigHighpTPFcutFwd = 0; // //cout<<"pre-path" << v->getPath()<<endl; size_t jetstrfound = v->getPath().find("Jet"); //size_t censtrfound = v->getPath().find("Central"); //shoouldn't be needed? string tpath = v->getPath(); string jetTrigVal; float jetVal = 0.; // if(jetstrfound != string::npos){// && ustrfound != string::npos ){ //cout<<v->getPath()<<endl; for(int trig = int(jetstrfound)+3; trig < int(jetstrfound)+7; trig++){// int(ustrfound); trig++){ if(!isdigit(tpath[trig])) break; jetTrigVal+=tpath[trig]; } char *cjetTrigVal = (char*)jetTrigVal.c_str(); jetVal=atof(cjetTrigVal); // if(jetVal>0.){ if(jetVal<50.){ //pTcut = jetVal / 2.; trigMedpTcut = jetVal + 5.; trigHighpTcut = jetVal + 10.; // trigLowpTcutFwd = jetVal + 9.; trigMedpTcutFwd = jetVal + 15.; trigHighpTcutFwd = jetVal + 21.; } else{ //pTcut = jetVal - 20. ; trigMedpTcut = jetVal + 2.; trigHighpTcut = jetVal + 60.; // trigLowpTcutFwd = jetVal + 22.; trigMedpTcutFwd = jetVal + 25.; trigHighpTcutFwd = jetVal + 110.; } trigLowpTcut = jetVal; } // if(jetVal>0.){ if(jetVal<50.){ //pTPFcut = jetVal ; trigMedpTPFcut = jetVal + 20.; trigHighpTPFcut = jetVal + 40.; // trigLowpTPFcutFwd = jetVal + 60.; trigMedpTPFcutFwd = jetVal + 80.; trigHighpTPFcutFwd = jetVal + 100.; } else{ //pTPFcut = jetVal ; trigMedpTPFcut = jetVal + 40.; trigHighpTPFcut = jetVal + 140.; // trigLowpTPFcutFwd = jetVal + 110.; trigMedpTPFcutFwd = jetVal + 130.; trigHighpTPFcutFwd = jetVal + 190.; } trigLowpTPFcut = jetVal; } } //---------------------------------------------------------------------- //CaloJet paths if(verbose_) std::cout << "fillMEforEffAllTrigger: CaloJet -------------------" << std::endl; if(calojetColl_.isValid() && (v->getObjectType() == trigger::TriggerJet)){ //cout<<" - CaloJet "<<endl; //&& (v->getPath().find("HLT_PFJet")==std::string::npos) //&& (v->getPath().find("HLT_DiPFJet")==std::string::npos)){ bool jetIDbool = false; double leadjpt = CaloJetPt[0]; double leadjeta = CaloJetEta[0]; double leadjphi = CaloJetPhi[0]; //double ljemf = CaloJetEMF[0]; double ljfhpd = CaloJetfHPD[0]; double ljn90 = CaloJetn90[0]; if((v->getTriggerType().compare("SingleJet_Trigger") == 0) && calojet.size()){ //this line stops the central jets if( (ljfhpd < _fHPD) && (ljn90 > _n90Hits )){ if(verbose_) cout<<"Passed CaloJet ID -------------------" << endl; jetIDbool = true; //Denominator fill v->getMEhisto_DenominatorPt()->Fill(leadjpt); if (isBarrel(leadjeta)) v->getMEhisto_DenominatorPtBarrel()->Fill(leadjpt); if (isEndCap(leadjeta)) v->getMEhisto_DenominatorPtEndcap()->Fill(leadjpt); if (isForward(leadjeta)) v->getMEhisto_DenominatorPtForward()->Fill(leadjpt); v->getMEhisto_DenominatorEta()->Fill(leadjeta); v->getMEhisto_DenominatorPhi()->Fill(leadjphi); v->getMEhisto_DenominatorEtaPhi()->Fill(leadjeta,leadjphi); if (isBarrel(leadjeta)){ v->getMEhisto_DenominatorEtaBarrel()->Fill(leadjeta); v->getMEhisto_DenominatorPhiBarrel()->Fill(leadjphi); } if (isEndCap(leadjeta)){ v->getMEhisto_DenominatorEtaEndcap()->Fill(leadjeta); v->getMEhisto_DenominatorPhiEndcap()->Fill(leadjphi); } if (isForward(leadjeta)){ v->getMEhisto_DenominatorEtaForward()->Fill(leadjeta); v->getMEhisto_DenominatorPhiForward()->Fill(leadjphi); } if((leadjpt > trigLowpTcut && !isForward(leadjeta)) || (leadjpt > trigLowpTcutFwd && isForward(leadjeta))){ v->getMEhisto_DenominatorEta_LowpTcut()->Fill(leadjeta); v->getMEhisto_DenominatorPhi_LowpTcut()->Fill(leadjphi); v->getMEhisto_DenominatorEtaPhi_LowpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigMedpTcut && !isForward(leadjeta)) || (leadjpt > trigMedpTcutFwd && isForward(leadjeta))){ v->getMEhisto_DenominatorEta_MedpTcut()->Fill(leadjeta); v->getMEhisto_DenominatorPhi_MedpTcut()->Fill(leadjphi); v->getMEhisto_DenominatorEtaPhi_MedpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigHighpTcut && !isForward(leadjeta)) || (leadjpt > trigHighpTcutFwd && isForward(leadjeta))){ v->getMEhisto_DenominatorEta_HighpTcut()->Fill(leadjeta); v->getMEhisto_DenominatorPhi_HighpTcut()->Fill(leadjphi); v->getMEhisto_DenominatorEtaPhi_HighpTcut()->Fill(leadjeta,leadjphi); } //Numerator fill if(numpassed){ // double dRmin = 99999.; double dPhimin = 9999.; if(v->getPath().find("L1") != std::string::npos){ if ( l1Index >= triggerObj_->sizeFilters() ) { edm::LogInfo("JetMETHLTOfflineSource") << "no index hlt"<< hltIndex << " of that name "; } else { const trigger::Keys & kl1 = triggerObj_->filterKeys(l1Index); for(trigger::Keys::const_iterator ki = kl1.begin();ki != kl1.end(); ++ki){ double dR = deltaR(toc[*ki].eta(), toc[*ki].phi(), leadjeta, leadjphi); if(dR < dRmin){ dRmin = dR; } } } } else{ if ( hltIndex >= triggerObj_->sizeFilters() ) { edm::LogInfo("JetMETHLTOfflineSource") << "no index hlt"<< hltIndex << " of that name "; } else { const trigger::Keys & khlt = triggerObj_->filterKeys(hltIndex); trigger::Keys::const_iterator kj = khlt.begin(); for(;kj != khlt.end(); ++kj){ double dR = deltaR(toc[*kj].eta(), toc[*kj].phi(), leadjeta, leadjphi); if(dR < dRmin){ dRmin = dR; } double dPhi = deltaPhi(toc[*kj].phi(), leadjphi); if(dPhi < dPhimin){ dPhimin = dPhi; } } //v->getMEhisto_DeltaPhi()->Fill(dPhimin); v->getMEhisto_DeltaPhi()->Fill(dPhimin); v->getMEhisto_DeltaR()->Fill(dRmin); } } if(dRmin < 0.1 || (v->getPath().find("L1") != std::string::npos && dRmin < 0.4)){ v->getMEhisto_NumeratorPt()->Fill(leadjpt); if (isBarrel(leadjeta)) v->getMEhisto_NumeratorPtBarrel()->Fill(leadjpt); if (isEndCap(leadjeta)) v->getMEhisto_NumeratorPtEndcap()->Fill(leadjpt); if (isForward(leadjeta)) v->getMEhisto_NumeratorPtForward()->Fill(leadjpt); v->getMEhisto_NumeratorEta()->Fill(leadjeta); v->getMEhisto_NumeratorPhi()->Fill(leadjphi); v->getMEhisto_NumeratorEtaPhi()->Fill(leadjeta,leadjphi); if (isBarrel(leadjeta)){ v->getMEhisto_NumeratorEtaBarrel()->Fill(leadjeta); v->getMEhisto_NumeratorPhiBarrel()->Fill(leadjphi); } if (isEndCap(leadjeta)){ v->getMEhisto_NumeratorEtaEndcap()->Fill(leadjeta); v->getMEhisto_NumeratorPhiEndcap()->Fill(leadjphi); } if (isForward(leadjeta)){ v->getMEhisto_NumeratorEtaForward()->Fill(leadjeta); v->getMEhisto_NumeratorPhiForward()->Fill(leadjphi); } if((leadjpt > trigLowpTcut && !isForward(leadjeta)) || (leadjpt > trigLowpTcutFwd && isForward(leadjeta))){ v->getMEhisto_NumeratorEta_LowpTcut()->Fill(leadjeta); v->getMEhisto_NumeratorPhi_LowpTcut()->Fill(leadjphi); v->getMEhisto_NumeratorEtaPhi_LowpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigMedpTcut && !isForward(leadjeta)) || (leadjpt > trigMedpTcutFwd && isForward(leadjeta))){ v->getMEhisto_NumeratorEta_MedpTcut()->Fill(leadjeta); v->getMEhisto_NumeratorPhi_MedpTcut()->Fill(leadjphi); v->getMEhisto_NumeratorEtaPhi_MedpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigHighpTcut && !isForward(leadjeta)) || (leadjpt > trigHighpTcutFwd && isForward(leadjeta))){ v->getMEhisto_NumeratorEta_HighpTcut()->Fill(leadjeta); v->getMEhisto_NumeratorPhi_HighpTcut()->Fill(leadjphi); v->getMEhisto_NumeratorEtaPhi_HighpTcut()->Fill(leadjeta,leadjphi); } } }//numpassed }//CalojetID filter } if(jetIDbool == true && (v->getTriggerType().compare("DiJet_Trigger") == 0) && calojet.size()>1){ if(((CaloJetEMF[1] > _fEMF || std::abs(CaloJetEta[1]) > _feta) && CaloJetfHPD[0] < _fHPD && CaloJetn90[0] > _n90Hits)){ v->getMEhisto_DenominatorPt()->Fill((CaloJetPt[0] + CaloJetPt[1])/2.); v->getMEhisto_DenominatorEta()->Fill((CaloJetEta[0] + CaloJetEta[1])/2.); if(numpassed==true){ v->getMEhisto_NumeratorPt()->Fill((CaloJetPt[0] + CaloJetPt[1])/2.); v->getMEhisto_NumeratorEta()->Fill((CaloJetEta[0] + CaloJetEta[1])/2.); } } } }// Jet trigger and valid jet collection //PFJet paths if(verbose_) std::cout << "fillMEforEffAllTrigger: PFJet -------------------" << std::endl; if(pfjetColl_.isValid() && (v->getObjectType() == trigger::TriggerJet)){ //cout<<" - PFJet "<<endl; //&& (v->getPath().find("HLT_PFJet")!=std::string::npos) //&& (v->getPath().find("HLT_DiPFJet")!=std::string::npos)){ bool jetIDbool = false; double leadjpt = PFJetPt[0]; double leadjeta = PFJetEta[0]; double leadjphi = PFJetPhi[0]; double ljNHEF = PFJetNHEF[0]; double ljCHEF = PFJetCHEF[0]; double ljNEMF = PFJetNEMF[0]; double ljCEMF = PFJetCEMF[0]; //double sleadjpt = PFJetPt[1]; //double sleadjeta = PFJetEta[1]; //double sleadjphi = PFJetPhi[1]; double sljNHEF = PFJetNHEF[1]; double sljCHEF = PFJetCHEF[1]; double sljNEMF = PFJetNEMF[1]; double sljCEMF = PFJetCEMF[1]; // double pfMHTx = pfMHTx_All; double pfMHTy = pfMHTy_All; // if((v->getTriggerType().compare("SingleJet_Trigger") == 0) && pfjet.size()){ //this line stops the central jets //======get pfmht _pfMHT = sqrt(pfMHTx*pfMHTx + pfMHTy*pfMHTy); v->getMEhisto_DenominatorPFMHT()->Fill(_pfMHT); if( ljNHEF >= _min_NHEF && ljNHEF <= _max_NHEF && ljCHEF >= _min_CHEF && ljCHEF <= _max_CHEF && ljNEMF >= _min_NEMF && ljNEMF <= _max_NEMF && ljCEMF >= _min_CEMF && ljCEMF <= _max_CEMF){ if(verbose_) cout<<"Passed PFJet ID -------------------" << endl; jetIDbool = true; v->getMEhisto_DenominatorPFPt()->Fill(leadjpt); if (isBarrel(leadjeta)) v->getMEhisto_DenominatorPFPtBarrel()->Fill(leadjpt); if (isEndCap(leadjeta)) v->getMEhisto_DenominatorPFPtEndcap()->Fill(leadjpt); if (isForward(leadjeta)) v->getMEhisto_DenominatorPFPtForward()->Fill(leadjpt); v->getMEhisto_DenominatorPFEta()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhi()->Fill(leadjphi); v->getMEhisto_DenominatorPFEtaPhi()->Fill(leadjeta,leadjphi); if(isBarrel(leadjeta)){ v->getMEhisto_DenominatorPFEtaBarrel()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhiBarrel()->Fill(leadjphi); } if (isEndCap(leadjeta)){ v->getMEhisto_DenominatorPFEtaEndcap()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhiEndcap()->Fill(leadjphi); } if (isForward(leadjeta)){ v->getMEhisto_DenominatorPFEtaForward()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhiForward()->Fill(leadjphi); } if((leadjpt > trigLowpTPFcut && !isForward(leadjeta)) || (leadjpt > trigLowpTPFcutFwd && isForward(leadjeta))){ v->getMEhisto_DenominatorPFEta_LowpTcut()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhi_LowpTcut()->Fill(leadjphi); v->getMEhisto_DenominatorPFEtaPhi_LowpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigMedpTPFcut && !isForward(leadjeta)) || (leadjpt > trigMedpTPFcutFwd && isForward(leadjeta))){ v->getMEhisto_DenominatorPFEta_MedpTcut()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhi_MedpTcut()->Fill(leadjphi); v->getMEhisto_DenominatorPFEtaPhi_MedpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigHighpTPFcut && !isForward(leadjeta)) || (leadjpt > trigHighpTPFcutFwd && isForward(leadjeta))){ v->getMEhisto_DenominatorPFEta_HighpTcut()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhi_HighpTcut()->Fill(leadjphi); v->getMEhisto_DenominatorPFEtaPhi_HighpTcut()->Fill(leadjeta,leadjphi); } //Numerator fill if(numpassed){ double dRmin = 99999.; double dPhimin = 9999.; if(v->getPath().find("L1") != std::string::npos){ if ( l1Index >= triggerObj_->sizeFilters() ) { edm::LogInfo("JetMETHLTOfflineSource") << "no index hlt"<< hltIndex << " of that name "; } else{ const trigger::Keys & kl1 = triggerObj_->filterKeys(l1Index); for(trigger::Keys::const_iterator ki = kl1.begin();ki != kl1.end(); ++ki){ double dR = deltaR(toc[*ki].eta(), toc[*ki].phi(), leadjeta, leadjphi); if(dR < dRmin){ dRmin = dR; } } } } else{ if ( hltIndex >= triggerObj_->sizeFilters() ) { edm::LogInfo("JetMETHLTOfflineSource") << "no index hlt"<< hltIndex << " of that name "; } else{ const trigger::Keys & khlt = triggerObj_->filterKeys(hltIndex); for(trigger::Keys::const_iterator kj = khlt.begin();kj != khlt.end(); ++kj){ double dR = deltaR(toc[*kj].eta(), toc[*kj].phi(), leadjeta, leadjphi); if(dR < dRmin){ dRmin = dR; } double dPhi = deltaPhi(toc[*kj].phi(), leadjphi); if(dPhi < dPhimin){ dPhimin = dPhi; } } v->getMEhisto_PFDeltaPhi()->Fill(dPhimin); v->getMEhisto_PFDeltaR()->Fill(dRmin); } } if(dRmin < 0.1 || (v->getPath().find("L1") != std::string::npos && dRmin < 0.4)){ v->getMEhisto_NumeratorPFPt()->Fill(leadjpt); if (isBarrel(leadjeta)) v->getMEhisto_NumeratorPFPtBarrel()->Fill(leadjpt); if (isEndCap(leadjeta)) v->getMEhisto_NumeratorPFPtEndcap()->Fill(leadjpt); if (isForward(leadjeta)) v->getMEhisto_NumeratorPFPtForward()->Fill(leadjpt); v->getMEhisto_NumeratorPFEta()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhi()->Fill(leadjphi); v->getMEhisto_NumeratorPFEtaPhi()->Fill(leadjeta,leadjphi); if (isBarrel(leadjeta)){ v->getMEhisto_NumeratorPFEtaBarrel()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhiBarrel()->Fill(leadjphi); } if (isEndCap(leadjeta)){ v->getMEhisto_NumeratorPFEtaEndcap()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhiEndcap()->Fill(leadjphi); } if (isForward(leadjeta)){ v->getMEhisto_NumeratorPFEtaForward()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhiForward()->Fill(leadjphi); } if((leadjpt > trigLowpTPFcut && !isForward(leadjeta)) || (leadjpt > trigLowpTPFcutFwd && isForward(leadjeta))){ v->getMEhisto_NumeratorPFEta_LowpTcut()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhi_LowpTcut()->Fill(leadjphi); v->getMEhisto_NumeratorPFEtaPhi_LowpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigMedpTPFcut && !isForward(leadjeta)) || (leadjpt > trigMedpTPFcutFwd && isForward(leadjeta))){ v->getMEhisto_NumeratorPFEta_MedpTcut()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhi_MedpTcut()->Fill(leadjphi); v->getMEhisto_NumeratorPFEtaPhi_MedpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigHighpTPFcut && !isForward(leadjeta)) || (leadjpt > trigHighpTPFcutFwd && isForward(leadjeta))){ v->getMEhisto_NumeratorPFEta_HighpTcut()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhi_HighpTcut()->Fill(leadjphi); v->getMEhisto_NumeratorPFEtaPhi_HighpTcut()->Fill(leadjeta,leadjphi); } } } } } if(jetIDbool == true && (v->getTriggerType().compare("DiJet_Trigger") == 0) && pfjet.size()>1){ if( ljNHEF >= _min_NHEF && ljNHEF <= _max_NHEF && ljCHEF >= _min_CHEF && ljCHEF <= _max_CHEF && ljNEMF >= _min_NEMF && ljNEMF <= _max_NEMF && ljCEMF >= _min_CEMF && ljCEMF <= _max_CEMF && sljNHEF >= _min_NHEF && sljNHEF <= _max_NHEF && sljCHEF >= _min_CHEF && sljCHEF <= _max_CHEF && sljNEMF >= _min_NEMF && sljNEMF <= _max_NEMF && sljCEMF >= _min_CEMF && sljCEMF <= _max_CEMF ){ v->getMEhisto_DenominatorPFPt()->Fill((PFJetPt[0] + PFJetPt[1])/2.); v->getMEhisto_DenominatorPFEta()->Fill((PFJetEta[0] + PFJetEta[1])/2.); if(numpassed){ v->getMEhisto_NumeratorPFPt()->Fill((PFJetPt[0] + PFJetPt[1])/2.); v->getMEhisto_NumeratorPFEta()->Fill((PFJetEta[0] + PFJetEta[1])/2.); } } } }// PF Jet trigger and valid jet collection //CaloMET path if(verbose_) std::cout << "fillMEforEffAllTrigger: CaloMET -------------------" << std::endl; if(calometColl_.isValid() && ((v->getObjectType() == trigger::TriggerMET) || (v->getObjectType() == trigger::TriggerTET)) && (v->getPath().find("HLT_PFMET")==std::string::npos)){ const CaloMETCollection *calometcol = calometColl_.product(); const CaloMET met = calometcol->front(); v->getMEhisto_DenominatorPt()->Fill(met.et()); v->getMEhisto_DenominatorPhi()->Fill(met.phi()); if(numpassed){ v->getMEhisto_NumeratorPt()->Fill(met.et()); v->getMEhisto_NumeratorPhi()->Fill(met.phi()); if(hltIndex >= triggerObj_->sizeFilters()){ edm::LogInfo("JetMETHLTOfflineSource") << "no index hlt"<< hltIndex << " of that name "; } else{ double dPhimin = 9999.;// const trigger::Keys & khlt = triggerObj_->filterKeys(hltIndex); for(trigger::Keys::const_iterator kj = khlt.begin();kj != khlt.end(); ++kj){ double dPhi = deltaPhi(toc[*kj].phi(), met.phi()); if(dPhi < dPhimin){ dPhimin = dPhi; } } v->getMEhisto_DeltaPhi()->Fill(dPhimin); } } } //PFMET if(verbose_) std::cout << "fillMEforEffAllTrigger: PFMET -------------------" << std::endl; if(pfmetColl_.isValid() && ((v->getObjectType() == trigger::TriggerMET) || (v->getObjectType() == trigger::TriggerTET)) && (v->getPath().find("HLT_PFMET")!=std::string::npos)){ const PFMETCollection *pfmetcol = pfmetColl_.product(); const PFMET met = pfmetcol->front(); v->getMEhisto_DenominatorPt()->Fill(met.et()); v->getMEhisto_DenominatorPhi()->Fill(met.phi()); if(numpassed){ v->getMEhisto_NumeratorPt()->Fill(met.et()); v->getMEhisto_NumeratorPhi()->Fill(met.phi()); if(hltIndex >= triggerObj_->sizeFilters()){ edm::LogInfo("JetMETHLTOfflineSource") << "no index hlt"<< hltIndex << " of that name "; } else{ double dPhimin = 9999.;// const trigger::Keys & khlt = triggerObj_->filterKeys(hltIndex); for(trigger::Keys::const_iterator kj = khlt.begin();kj != khlt.end(); ++kj){ double dPhi = deltaPhi(toc[*kj].phi(), met.phi()); if(dPhi < dPhimin){ dPhimin = dPhi; } } v->getMEhisto_DeltaPhi()->Fill(dPhimin); } } } /* if(pfmhtColl_.isValid() && ((v->getObjectType() == trigger::TriggerMET)|| (v->getObjectType() == trigger::TriggerTET))){ const PFMHTCollection *pfmhtcol = pfmhtColl_.product(); const PFMHT met = pfmhtcol->front(); v->getMEhisto_DenominatorPFPt()->Fill(met.pt()); v->getMEhisto_DenominatorPFPhi()->Fill(met.phi()); }// PFMHT trigger and valid MET collection */ }// trigger under study }
void JetMETHLTOfflineSource::fillMEforEffWrtMBTrigger | ( | const edm::Event & | iEvent, |
const edm::EventSetup & | iSetup | ||
) | [private, virtual] |
Definition at line 2163 of file JetMETHLTOfflineSource.cc.
References _fEMF, _feta, _fHPD, _max_CEMF, _max_CHEF, _max_NEMF, _max_NHEF, _min_CEMF, _min_CHEF, _min_NEMF, _min_NHEF, _n90Hits, _pfMHT, abs, calojet, calojetColl_, CaloJetEMF, CaloJetEta, CaloJetfHPD, CaloJetn90, CaloJetPhi, CaloJetPt, calometColl_, gather_cfg::cout, SiPixelRawToDigiRegional_cfi::deltaPhi, deltaR(), dPhi(), reco::LeafCandidate::et(), eta(), hltConfig_, hltPathsEffWrtMB_, patRefSel_triggerSelection_cff::hltTag, i, isBarrel(), isEndCap(), isForward(), isHLTPathAccepted(), edm::HandleBase::isValid(), j, patRefSel_triggerSelection_cff::l1Tag, MBTrigPaths_, CaloMET_cfi::met, timingPdfMaker::pathname, pfjet, PFJetCEMF, PFJetCHEF, pfjetColl_, PFJetEta, PFJetNEMF, PFJetNHEF, PFJetPhi, PFJetPt, pfmetColl_, pfMHTx_All, pfMHTy_All, reco::LeafCandidate::phi(), phi, processname_, edm::Handle< T >::product(), edm::TriggerNames::size(), HLTConfigProvider::size(), mathSSE::sqrt(), edm::TriggerNames::triggerIndex(), trigger::TriggerJet, trigger::TriggerMET, HLTConfigProvider::triggerName(), triggerNames_, triggerObj_, triggerResults_, trigger::TriggerTET, v, and verbose_.
Referenced by analyze().
{ //int npath; if(&triggerResults_) { /*npath = triggerResults_->size();*/ } else { return; } bool mbTrig = false; bool numpassed = false; //bool denompassed = false; for(size_t i=0;i<MBTrigPaths_.size();++i){ const unsigned int nPath(hltConfig_.size()); for (unsigned int j=0; j!=nPath; ++j) { std::string pathname = hltConfig_.triggerName(j); if(pathname.find(MBTrigPaths_[i]) != std::string::npos){ if(isHLTPathAccepted(pathname)){ mbTrig = true; if(verbose_) cout<<"fillMEforEffWrtMBTrigger: MinBias Match"<<endl; } } if(mbTrig) break; } if(mbTrig) break; } if(mbTrig){ const trigger::TriggerObjectCollection & toc(triggerObj_->getObjects()); PathInfoCollection::iterator v = hltPathsEffWrtMB_.begin(); for(; v!= hltPathsEffWrtMB_.end(); ++v ){ numpassed = false; unsigned indexNum = triggerNames_.triggerIndex(v->getPath()); if(indexNum < triggerNames_.size() && triggerResults_->accept(indexNum)) numpassed = true; //if(numpassed==true){ edm::InputTag hltTag(v->getLabel(),"",processname_); const int hltIndex = triggerObj_->filterIndex(hltTag); edm::InputTag l1Tag(v->getl1Path(),"",processname_); const int l1Index = triggerObj_->filterIndex(l1Tag); //} //---------------------------------------------------------------------- //double pTcut = 0; double trigLowpTcut = 0; double trigMedpTcut = 0; double trigHighpTcut = 0; double trigLowpTcutFwd = 0; double trigMedpTcutFwd = 0; double trigHighpTcutFwd = 0; // //double pTPFcut = 0 ; double trigLowpTPFcut = 0; double trigMedpTPFcut = 0; double trigHighpTPFcut = 0; double trigLowpTPFcutFwd = 0; double trigMedpTPFcutFwd = 0; double trigHighpTPFcutFwd = 0; // //cout<<"pre-path" << v->getPath()<<endl; size_t jetstrfound = v->getPath().find("Jet"); //size_t censtrfound = v->getPath().find("Central"); //shoouldn't be needed? string tpath = v->getPath(); string jetTrigVal; float jetVal = 0.; // if(jetstrfound != string::npos){// && ustrfound != string::npos ){ //cout<<v->getPath()<<endl; for(int trig = int(jetstrfound)+3; trig < int(jetstrfound)+7; trig++){// int(ustrfound); trig++){ if(!isdigit(tpath[trig])) break; jetTrigVal+=tpath[trig]; } char *cjetTrigVal = (char*)jetTrigVal.c_str(); jetVal=atof(cjetTrigVal); //cout<<jetVal<<endl; // if(jetVal>0.){ if(jetVal<50.){ //pTcut = jetVal / 2.; trigMedpTcut = jetVal + 5.; trigHighpTcut = jetVal + 10.; // trigLowpTcutFwd = jetVal + 9.; trigMedpTcutFwd = jetVal + 15.; trigHighpTcutFwd = jetVal + 21.; } else{ //pTcut = jetVal - 20. ; trigMedpTcut = jetVal + 2.; trigHighpTcut = jetVal + 60.; // trigLowpTcutFwd = jetVal + 22.; trigMedpTcutFwd = jetVal + 25.; trigHighpTcutFwd = jetVal + 110.; } trigLowpTcut = jetVal; //cout<<pTcut<<" "<<trigLowpTcut<<" "<<trigMedptcut<<" "<<trigHighpTcut<<" "<<trigLowpTcutFwd<<" "<<trigMedptcutFwd<<" "<<trigHighpTcutFwd<<endl; } // if(jetVal>0.){ if(jetVal<50.){ //pTPFcut = jetVal ; trigMedpTPFcut = jetVal + 20.; trigHighpTPFcut = jetVal + 40.; // trigLowpTPFcutFwd = jetVal + 60.; trigMedpTPFcutFwd = jetVal + 80.; trigHighpTPFcutFwd = jetVal + 100.; } else{ //pTPFcut = jetVal ; trigMedpTPFcut = jetVal + 40.; trigHighpTPFcut = jetVal + 140.; // trigLowpTPFcutFwd = jetVal + 110.; trigMedpTPFcutFwd = jetVal + 130.; trigHighpTPFcutFwd = jetVal + 190.; } trigLowpTPFcut = jetVal; //cout<<pTcut<<" "<<trigLowpTcut<<" "<<trigMedptcut<<" "<<trigHighpTcut<<" "<<trigLowpTcutFwd<<" "<<trigMedptcutFwd<<" "<<trigHighpTcutFwd<<endl; } } //---------------------------------------------------------------------- //CaloJet paths if(verbose_) std::cout << "fillMEforEffWrtMuTrigger: CaloJet -------------------" << std::endl; if(calojetColl_.isValid() && (v->getObjectType() == trigger::TriggerJet)){ //cout<<" - CaloJet "<<endl; //&& (v->getPath().find("HLT_PFJet")==std::string::npos) //&& (v->getPath().find("HLT_DiPFJet")==std::string::npos)){ bool jetIDbool = false; double leadjpt = CaloJetPt[0]; double leadjeta = CaloJetEta[0]; double leadjphi = CaloJetPhi[0]; //double ljemf = CaloJetEMF[0]; double ljfhpd = CaloJetfHPD[0]; double ljn90 = CaloJetn90[0]; if((v->getTriggerType().compare("SingleJet_Trigger") == 0) && calojet.size()){ //this line stops the central jets if( (ljfhpd < _fHPD) && (ljn90 > _n90Hits )){ if(verbose_) cout<<"passed CaloJet ID -------------------" << endl; jetIDbool = true; //Denominator fill v->getMEhisto_DenominatorPt()->Fill(leadjpt); if (isBarrel(leadjeta)) v->getMEhisto_DenominatorPtBarrel()->Fill(leadjpt); if (isEndCap(leadjeta)) v->getMEhisto_DenominatorPtEndcap()->Fill(leadjpt); if (isForward(leadjeta)) v->getMEhisto_DenominatorPtForward()->Fill(leadjpt); v->getMEhisto_DenominatorEta()->Fill(leadjeta); v->getMEhisto_DenominatorPhi()->Fill(leadjphi); v->getMEhisto_DenominatorEtaPhi()->Fill(leadjeta,leadjphi); if (isBarrel(leadjeta)){ v->getMEhisto_DenominatorEtaBarrel()->Fill(leadjeta); v->getMEhisto_DenominatorPhiBarrel()->Fill(leadjphi); } if (isEndCap(leadjeta)){ v->getMEhisto_DenominatorEtaEndcap()->Fill(leadjeta); v->getMEhisto_DenominatorPhiEndcap()->Fill(leadjphi); } if (isForward(leadjeta)){ v->getMEhisto_DenominatorEtaForward()->Fill(leadjeta); v->getMEhisto_DenominatorPhiForward()->Fill(leadjphi); } if((leadjpt > trigLowpTcut && !isForward(leadjeta)) || (leadjpt > trigLowpTcutFwd && isForward(leadjeta))){ v->getMEhisto_DenominatorEta_LowpTcut()->Fill(leadjeta); v->getMEhisto_DenominatorPhi_LowpTcut()->Fill(leadjphi); v->getMEhisto_DenominatorEtaPhi_LowpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigMedpTcut && !isForward(leadjeta)) || (leadjpt > trigMedpTcutFwd && isForward(leadjeta))){ v->getMEhisto_DenominatorEta_MedpTcut()->Fill(leadjeta); v->getMEhisto_DenominatorPhi_MedpTcut()->Fill(leadjphi); v->getMEhisto_DenominatorEtaPhi_MedpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigHighpTcut && !isForward(leadjeta)) || (leadjpt > trigHighpTcutFwd && isForward(leadjeta))){ v->getMEhisto_DenominatorEta_HighpTcut()->Fill(leadjeta); v->getMEhisto_DenominatorPhi_HighpTcut()->Fill(leadjphi); v->getMEhisto_DenominatorEtaPhi_HighpTcut()->Fill(leadjeta,leadjphi); } //Numerator fill if(numpassed){ // double dRmin = 99999.; double dPhimin = 9999.; if(v->getPath().find("L1") != std::string::npos){ if ( l1Index >= triggerObj_->sizeFilters() ) { edm::LogInfo("JetMETHLTOfflineSource") << "no index hlt"<< hltIndex << " of that name "; } else { const trigger::Keys & kl1 = triggerObj_->filterKeys(l1Index); for(trigger::Keys::const_iterator ki = kl1.begin();ki != kl1.end(); ++ki){ double dR = deltaR(toc[*ki].eta(), toc[*ki].phi(), leadjeta, leadjphi); if(dR < dRmin){ dRmin = dR; } } } } else{ if ( hltIndex >= triggerObj_->sizeFilters() ) { edm::LogInfo("JetMETHLTOfflineSource") << "no index hlt"<< hltIndex << " of that name "; } else { const trigger::Keys & khlt = triggerObj_->filterKeys(hltIndex); trigger::Keys::const_iterator kj = khlt.begin(); for(;kj != khlt.end(); ++kj){ double dR = deltaR(toc[*kj].eta(), toc[*kj].phi(), leadjeta, leadjphi); if(dR < dRmin){ dRmin = dR; } double dPhi = deltaPhi(toc[*kj].phi(), leadjphi); if(dPhi < dPhimin){ dPhimin = dPhi; } } //v->getMEhisto_DeltaPhi()->Fill(dPhimin); v->getMEhisto_DeltaPhi()->Fill(dPhimin); v->getMEhisto_DeltaR()->Fill(dRmin); } } if(dRmin < 0.1 || (v->getPath().find("L1") != std::string::npos && dRmin < 0.4)){ v->getMEhisto_NumeratorPt()->Fill(leadjpt); if (isBarrel(leadjeta)) v->getMEhisto_NumeratorPtBarrel()->Fill(leadjpt); if (isEndCap(leadjeta)) v->getMEhisto_NumeratorPtEndcap()->Fill(leadjpt); if (isForward(leadjeta)) v->getMEhisto_NumeratorPtForward()->Fill(leadjpt); v->getMEhisto_NumeratorEta()->Fill(leadjeta); v->getMEhisto_NumeratorPhi()->Fill(leadjphi); v->getMEhisto_NumeratorEtaPhi()->Fill(leadjeta,leadjphi); if (isBarrel(leadjeta)){ v->getMEhisto_NumeratorEtaBarrel()->Fill(leadjeta); v->getMEhisto_NumeratorPhiBarrel()->Fill(leadjphi); } if (isEndCap(leadjeta)){ v->getMEhisto_NumeratorEtaEndcap()->Fill(leadjeta); v->getMEhisto_NumeratorPhiEndcap()->Fill(leadjphi); } if (isForward(leadjeta)){ v->getMEhisto_NumeratorEtaForward()->Fill(leadjeta); v->getMEhisto_NumeratorPhiForward()->Fill(leadjphi); } if((leadjpt > trigLowpTcut && !isForward(leadjeta)) || (leadjpt > trigLowpTcutFwd && isForward(leadjeta))){ v->getMEhisto_NumeratorEta_LowpTcut()->Fill(leadjeta); v->getMEhisto_NumeratorPhi_LowpTcut()->Fill(leadjphi); v->getMEhisto_NumeratorEtaPhi_LowpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigMedpTcut && !isForward(leadjeta)) || (leadjpt > trigMedpTcutFwd && isForward(leadjeta))){ v->getMEhisto_NumeratorEta_MedpTcut()->Fill(leadjeta); v->getMEhisto_NumeratorPhi_MedpTcut()->Fill(leadjphi); v->getMEhisto_NumeratorEtaPhi_MedpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigHighpTcut && !isForward(leadjeta)) || (leadjpt > trigHighpTcutFwd && isForward(leadjeta))){ v->getMEhisto_NumeratorEta_HighpTcut()->Fill(leadjeta); v->getMEhisto_NumeratorPhi_HighpTcut()->Fill(leadjphi); v->getMEhisto_NumeratorEtaPhi_HighpTcut()->Fill(leadjeta,leadjphi); } } }//numpassed }//CalojetID filter } if(jetIDbool == true && (v->getTriggerType().compare("DiJet_Trigger") == 0) && calojet.size()>1){ if(((CaloJetEMF[1] > _fEMF || std::abs(CaloJetEta[1]) > _feta) && CaloJetfHPD[0] < _fHPD && CaloJetn90[0] > _n90Hits)){ v->getMEhisto_DenominatorPt()->Fill((CaloJetPt[0] + CaloJetPt[1])/2.); v->getMEhisto_DenominatorEta()->Fill((CaloJetEta[0] + CaloJetEta[1])/2.); if(numpassed==true){ v->getMEhisto_NumeratorPt()->Fill((CaloJetPt[0] + CaloJetPt[1])/2.); v->getMEhisto_NumeratorEta()->Fill((CaloJetEta[0] + CaloJetEta[1])/2.); } } } }// Jet trigger and valid jet collection //PFJet paths if(verbose_) std::cout << "fillMEforEffWrtMuTrigger: PFJet -------------------" << std::endl; if(pfjetColl_.isValid() && (v->getObjectType() == trigger::TriggerJet)){ //cout<<" - PFJet "<<endl; //&& (v->getPath().find("HLT_PFJet")!=std::string::npos) //&& (v->getPath().find("HLT_DiPFJet")!=std::string::npos)){ bool jetIDbool = false; double leadjpt = PFJetPt[0]; double leadjeta = PFJetEta[0]; double leadjphi = PFJetPhi[0]; double ljNHEF = PFJetNHEF[0]; double ljCHEF = PFJetCHEF[0]; double ljNEMF = PFJetNEMF[0]; double ljCEMF = PFJetCEMF[0]; //double sleadjpt = PFJetPt[1]; //double sleadjeta = PFJetEta[1]; //double sleadjphi = PFJetPhi[1]; double sljNHEF = PFJetNHEF[1]; double sljCHEF = PFJetCHEF[1]; double sljNEMF = PFJetNEMF[1]; double sljCEMF = PFJetCEMF[1]; // double pfMHTx = pfMHTx_All; double pfMHTy = pfMHTy_All; // if((v->getTriggerType().compare("SingleJet_Trigger") == 0) && pfjet.size()){ //this line stops the central jets //======get pfmht _pfMHT = sqrt(pfMHTx*pfMHTx + pfMHTy*pfMHTy); v->getMEhisto_DenominatorPFMHT()->Fill(_pfMHT); if( ljNHEF >= _min_NHEF && ljNHEF <= _max_NHEF && ljCHEF >= _min_CHEF && ljCHEF <= _max_CHEF && ljNEMF >= _min_NEMF && ljNEMF <= _max_NEMF && ljCEMF >= _min_CEMF && ljCEMF <= _max_CEMF){ if(verbose_) cout<<"passed PFJet ID -------------------" << endl; jetIDbool = true; v->getMEhisto_DenominatorPFPt()->Fill(leadjpt); if (isBarrel(leadjeta)) v->getMEhisto_DenominatorPFPtBarrel()->Fill(leadjpt); if (isEndCap(leadjeta)) v->getMEhisto_DenominatorPFPtEndcap()->Fill(leadjpt); if (isForward(leadjeta)) v->getMEhisto_DenominatorPFPtForward()->Fill(leadjpt); v->getMEhisto_DenominatorPFEta()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhi()->Fill(leadjphi); v->getMEhisto_DenominatorPFEtaPhi()->Fill(leadjeta,leadjphi); if(isBarrel(leadjeta)){ v->getMEhisto_DenominatorPFEtaBarrel()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhiBarrel()->Fill(leadjphi); } if (isEndCap(leadjeta)){ v->getMEhisto_DenominatorPFEtaEndcap()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhiEndcap()->Fill(leadjphi); } if (isForward(leadjeta)){ v->getMEhisto_DenominatorPFEtaForward()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhiForward()->Fill(leadjphi); } if((leadjpt > trigLowpTPFcut && !isForward(leadjeta)) || (leadjpt > trigLowpTPFcutFwd && isForward(leadjeta))){ v->getMEhisto_DenominatorPFEta_LowpTcut()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhi_LowpTcut()->Fill(leadjphi); v->getMEhisto_DenominatorPFEtaPhi_LowpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigMedpTPFcut && !isForward(leadjeta)) || (leadjpt > trigMedpTPFcutFwd && isForward(leadjeta))){ v->getMEhisto_DenominatorPFEta_MedpTcut()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhi_MedpTcut()->Fill(leadjphi); v->getMEhisto_DenominatorPFEtaPhi_MedpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigHighpTPFcut && !isForward(leadjeta)) || (leadjpt > trigHighpTPFcutFwd && isForward(leadjeta))){ v->getMEhisto_DenominatorPFEta_HighpTcut()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhi_HighpTcut()->Fill(leadjphi); v->getMEhisto_DenominatorPFEtaPhi_HighpTcut()->Fill(leadjeta,leadjphi); } //Numerator fill if(numpassed){ double dRmin = 99999.; double dPhimin = 9999.; if(v->getPath().find("L1") != std::string::npos){ if ( l1Index >= triggerObj_->sizeFilters() ) { edm::LogInfo("JetMETHLTOfflineSource") << "no index hlt"<< hltIndex << " of that name "; } else{ const trigger::Keys & kl1 = triggerObj_->filterKeys(l1Index); for(trigger::Keys::const_iterator ki = kl1.begin();ki != kl1.end(); ++ki){ double dR = deltaR(toc[*ki].eta(), toc[*ki].phi(), leadjeta, leadjphi); if(dR < dRmin){ dRmin = dR; } } } } else{ if ( hltIndex >= triggerObj_->sizeFilters() ) { edm::LogInfo("JetMETHLTOfflineSource") << "no index hlt"<< hltIndex << " of that name "; } else{ const trigger::Keys & khlt = triggerObj_->filterKeys(hltIndex); for(trigger::Keys::const_iterator kj = khlt.begin();kj != khlt.end(); ++kj){ double dR = deltaR(toc[*kj].eta(), toc[*kj].phi(), leadjeta, leadjphi); if(dR < dRmin){ dRmin = dR; } double dPhi = deltaPhi(toc[*kj].phi(), leadjphi); if(dPhi < dPhimin){ dPhimin = dPhi; } } v->getMEhisto_PFDeltaPhi()->Fill(dPhimin); v->getMEhisto_PFDeltaR()->Fill(dRmin); } } if(dRmin < 0.1 || (v->getPath().find("L1") != std::string::npos && dRmin < 0.4)){ v->getMEhisto_NumeratorPFPt()->Fill(leadjpt); if (isBarrel(leadjeta)) v->getMEhisto_NumeratorPFPtBarrel()->Fill(leadjpt); if (isEndCap(leadjeta)) v->getMEhisto_NumeratorPFPtEndcap()->Fill(leadjpt); if (isForward(leadjeta)) v->getMEhisto_NumeratorPFPtForward()->Fill(leadjpt); v->getMEhisto_NumeratorPFEta()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhi()->Fill(leadjphi); v->getMEhisto_NumeratorPFEtaPhi()->Fill(leadjeta,leadjphi); if (isBarrel(leadjeta)){ v->getMEhisto_NumeratorPFEtaBarrel()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhiBarrel()->Fill(leadjphi); } if (isEndCap(leadjeta)){ v->getMEhisto_NumeratorPFEtaEndcap()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhiEndcap()->Fill(leadjphi); } if (isForward(leadjeta)){ v->getMEhisto_NumeratorPFEtaForward()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhiForward()->Fill(leadjphi); } if((leadjpt > trigLowpTPFcut && !isForward(leadjeta)) || (leadjpt > trigLowpTPFcutFwd && isForward(leadjeta))){ v->getMEhisto_NumeratorPFEta_LowpTcut()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhi_LowpTcut()->Fill(leadjphi); v->getMEhisto_NumeratorPFEtaPhi_LowpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigMedpTPFcut && !isForward(leadjeta)) || (leadjpt > trigMedpTPFcutFwd && isForward(leadjeta))){ v->getMEhisto_NumeratorPFEta_MedpTcut()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhi_MedpTcut()->Fill(leadjphi); v->getMEhisto_NumeratorPFEtaPhi_MedpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigHighpTPFcut && !isForward(leadjeta)) || (leadjpt > trigHighpTPFcutFwd && isForward(leadjeta))){ v->getMEhisto_NumeratorPFEta_HighpTcut()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhi_HighpTcut()->Fill(leadjphi); v->getMEhisto_NumeratorPFEtaPhi_HighpTcut()->Fill(leadjeta,leadjphi); } } } } } if(jetIDbool == true && (v->getTriggerType().compare("DiJet_Trigger") == 0) && pfjet.size()>1){ if( ljNHEF >= _min_NHEF && ljNHEF <= _max_NHEF && ljCHEF >= _min_CHEF && ljCHEF <= _max_CHEF && ljNEMF >= _min_NEMF && ljNEMF <= _max_NEMF && ljCEMF >= _min_CEMF && ljCEMF <= _max_CEMF && sljNHEF >= _min_NHEF && sljNHEF <= _max_NHEF && sljCHEF >= _min_CHEF && sljCHEF <= _max_CHEF && sljNEMF >= _min_NEMF && sljNEMF <= _max_NEMF && sljCEMF >= _min_CEMF && sljCEMF <= _max_CEMF ){ v->getMEhisto_DenominatorPFPt()->Fill((PFJetPt[0] + PFJetPt[1])/2.); v->getMEhisto_DenominatorPFEta()->Fill((PFJetEta[0] + PFJetEta[1])/2.); if(numpassed){ v->getMEhisto_NumeratorPFPt()->Fill((PFJetPt[0] + PFJetPt[1])/2.); v->getMEhisto_NumeratorPFEta()->Fill((PFJetEta[0] + PFJetEta[1])/2.); } } } }// PF Jet trigger and valid jet collection //CaloMET path if(verbose_) std::cout << "fillMEforEffWrtMuTrigger: CaloMET -------------------" << std::endl; if(calometColl_.isValid() && ((v->getObjectType() == trigger::TriggerMET) || (v->getObjectType() == trigger::TriggerTET)) && (v->getPath().find("HLT_PFMET")==std::string::npos)){ //cout<<" - CaloMET "<<endl; const CaloMETCollection *calometcol = calometColl_.product(); const CaloMET met = calometcol->front(); v->getMEhisto_DenominatorPt()->Fill(met.et()); v->getMEhisto_DenominatorPhi()->Fill(met.phi()); if(numpassed){ v->getMEhisto_NumeratorPt()->Fill(met.et()); v->getMEhisto_NumeratorPhi()->Fill(met.phi()); if(hltIndex >= triggerObj_->sizeFilters()){ edm::LogInfo("JetMETHLTOfflineSource") << "no index hlt"<< hltIndex << " of that name "; } else{ double dPhimin = 9999.;// const trigger::Keys & khlt = triggerObj_->filterKeys(hltIndex); for(trigger::Keys::const_iterator kj = khlt.begin();kj != khlt.end(); ++kj){ double dPhi = deltaPhi(toc[*kj].phi(), met.phi()); if(dPhi < dPhimin){ dPhimin = dPhi; } } v->getMEhisto_DeltaPhi()->Fill(dPhimin); } } } //PFMET if(verbose_) std::cout << "fillMEforEffWrtMuTrigger: PFMET -------------------" << std::endl; if(pfmetColl_.isValid() && ((v->getObjectType() == trigger::TriggerMET) || (v->getObjectType() == trigger::TriggerTET)) && (v->getPath().find("HLT_PFMET")!=std::string::npos)){ //cout<<" - PFMET "<<endl; const PFMETCollection *pfmetcol = pfmetColl_.product(); const PFMET met = pfmetcol->front(); v->getMEhisto_DenominatorPt()->Fill(met.et()); v->getMEhisto_DenominatorPhi()->Fill(met.phi()); if(numpassed){ v->getMEhisto_NumeratorPt()->Fill(met.et()); v->getMEhisto_NumeratorPhi()->Fill(met.phi()); if(hltIndex >= triggerObj_->sizeFilters()){ edm::LogInfo("JetMETHLTOfflineSource") << "no index hlt"<< hltIndex << " of that name "; } else{ double dPhimin = 9999.;// const trigger::Keys & khlt = triggerObj_->filterKeys(hltIndex); for(trigger::Keys::const_iterator kj = khlt.begin();kj != khlt.end(); ++kj){ double dPhi = deltaPhi(toc[*kj].phi(), met.phi()); if(dPhi < dPhimin){ dPhimin = dPhi; } } v->getMEhisto_DeltaPhi()->Fill(dPhimin); } } } /* if(pfmhtColl_.isValid() && ((v->getObjectType() == trigger::TriggerMET)|| (v->getObjectType() == trigger::TriggerTET))){ const PFMHTCollection *pfmhtcol = pfmhtColl_.product(); const PFMHT met = pfmhtcol->front(); v->getMEhisto_DenominatorPFPt()->Fill(met.pt()); v->getMEhisto_DenominatorPFPhi()->Fill(met.phi()); }// PFMHT trigger and valid MET collection */ }// trigger under study } }
void JetMETHLTOfflineSource::fillMEforEffWrtMuTrigger | ( | const edm::Event & | iEvent, |
const edm::EventSetup & | iSetup | ||
) | [private, virtual] |
Definition at line 1649 of file JetMETHLTOfflineSource.cc.
References _fEMF, _feta, _fHPD, _max_CEMF, _max_CHEF, _max_NEMF, _max_NHEF, _min_CEMF, _min_CHEF, _min_NEMF, _min_NHEF, _n90Hits, _pfMHT, abs, calojet, calojetColl_, CaloJetEMF, CaloJetEta, CaloJetfHPD, CaloJetn90, CaloJetPhi, CaloJetPt, calometColl_, gather_cfg::cout, SiPixelRawToDigiRegional_cfi::deltaPhi, deltaR(), dPhi(), reco::LeafCandidate::et(), eta(), hltConfig_, hltPathsEffWrtMu_, patRefSel_triggerSelection_cff::hltTag, i, isBarrel(), isEndCap(), isForward(), isHLTPathAccepted(), edm::HandleBase::isValid(), j, patRefSel_triggerSelection_cff::l1Tag, CaloMET_cfi::met, MuonTrigPaths_, timingPdfMaker::pathname, pfjet, PFJetCEMF, PFJetCHEF, pfjetColl_, PFJetEta, PFJetNEMF, PFJetNHEF, PFJetPhi, PFJetPt, pfmetColl_, pfMHTx_All, pfMHTy_All, reco::LeafCandidate::phi(), phi, processname_, edm::Handle< T >::product(), edm::TriggerNames::size(), HLTConfigProvider::size(), mathSSE::sqrt(), edm::TriggerNames::triggerIndex(), trigger::TriggerJet, trigger::TriggerMET, HLTConfigProvider::triggerName(), triggerNames_, triggerObj_, triggerResults_, trigger::TriggerTET, v, and verbose_.
Referenced by analyze().
{ //int npath; if(&triggerResults_){ /*npath = triggerResults_->size();*/ } else{ return; } bool muTrig = false; bool numpassed = false; //bool denompassed = false; for(size_t i=0;i<MuonTrigPaths_.size();++i){ const unsigned int nPath(hltConfig_.size()); for (unsigned int j=0; j!=nPath; ++j) { std::string pathname = hltConfig_.triggerName(j); if(pathname.find(MuonTrigPaths_[i]) != std::string::npos){ if(isHLTPathAccepted(pathname)){ muTrig = true; if(verbose_) cout<<"fillMEforEffWrtMuTrigger: Muon Match"<<endl; } } if(muTrig) break; } if(muTrig) break; } if(muTrig){ const trigger::TriggerObjectCollection & toc(triggerObj_->getObjects()); PathInfoCollection::iterator v = hltPathsEffWrtMu_.begin(); for(; v!= hltPathsEffWrtMu_.end(); ++v ){ numpassed = false; unsigned indexNum = triggerNames_.triggerIndex(v->getPath()); if(indexNum < triggerNames_.size() && triggerResults_->accept(indexNum)) numpassed = true; //if(numpassed==true){ edm::InputTag hltTag(v->getLabel(),"",processname_); const int hltIndex = triggerObj_->filterIndex(hltTag); edm::InputTag l1Tag(v->getl1Path(),"",processname_); const int l1Index = triggerObj_->filterIndex(l1Tag); //} //---------------------------------------------------------------------- //double pTcut = 0; double trigLowpTcut = 0; double trigMedpTcut = 0; double trigHighpTcut = 0; double trigLowpTcutFwd = 0; double trigMedpTcutFwd = 0; double trigHighpTcutFwd = 0; // //double pTPFcut = 0 ; double trigLowpTPFcut = 0; double trigMedpTPFcut = 0; double trigHighpTPFcut = 0; double trigLowpTPFcutFwd = 0; double trigMedpTPFcutFwd = 0; double trigHighpTPFcutFwd = 0; // //cout<<"pre-path" << v->getPath()<<endl; size_t jetstrfound = v->getPath().find("Jet"); //size_t censtrfound = v->getPath().find("Central"); //shoouldn't be needed? string tpath = v->getPath(); string jetTrigVal; float jetVal = 0.; // if(jetstrfound != string::npos){// && ustrfound != string::npos ){ //cout<<v->getPath()<<endl; for(int trig = int(jetstrfound)+3; trig < int(jetstrfound)+7; trig++){// int(ustrfound); trig++){ if(!isdigit(tpath[trig])) break; jetTrigVal+=tpath[trig]; } char *cjetTrigVal = (char*)jetTrigVal.c_str(); jetVal=atof(cjetTrigVal); //cout<<jetVal<<endl; // if(jetVal>0.){ if(jetVal<50.){ //pTcut = jetVal / 2.; trigMedpTcut = jetVal + 5.; trigHighpTcut = jetVal + 10.; // trigLowpTcutFwd = jetVal + 9.; trigMedpTcutFwd = jetVal + 15.; trigHighpTcutFwd = jetVal + 21.; } else{ //pTcut = jetVal - 20. ; trigMedpTcut = jetVal + 2.; trigHighpTcut = jetVal + 60.; // trigLowpTcutFwd = jetVal + 22.; trigMedpTcutFwd = jetVal + 25.; trigHighpTcutFwd = jetVal + 110.; } trigLowpTcut = jetVal; } // if(jetVal>0.){ if(jetVal<50.){ //pTPFcut = jetVal ; trigMedpTPFcut = jetVal + 20.; trigHighpTPFcut = jetVal + 40.; // trigLowpTPFcutFwd = jetVal + 60.; trigMedpTPFcutFwd = jetVal + 80.; trigHighpTPFcutFwd = jetVal + 100.; } else{ //pTPFcut = jetVal ; trigMedpTPFcut = jetVal + 40.; trigHighpTPFcut = jetVal + 140.; // trigLowpTPFcutFwd = jetVal + 110.; trigMedpTPFcutFwd = jetVal + 130.; trigHighpTPFcutFwd = jetVal + 190.; } trigLowpTPFcut = jetVal; } } //---------------------------------------------------------------------- //CaloJet paths if(verbose_) std::cout << "fillMEforEffWrtMuTrigger: CaloJet -------------------" << std::endl; if(calojetColl_.isValid() && (v->getObjectType() == trigger::TriggerJet)){ //cout<<" - CaloJet "<<endl; //&& (v->getPath().find("HLT_PFJet")==std::string::npos) //&& (v->getPath().find("HLT_DiPFJet")==std::string::npos)){ bool jetIDbool = false; double leadjpt = CaloJetPt[0]; double leadjeta = CaloJetEta[0]; double leadjphi = CaloJetPhi[0]; //double ljemf = CaloJetEMF[0]; double ljfhpd = CaloJetfHPD[0]; double ljn90 = CaloJetn90[0]; if((v->getTriggerType().compare("SingleJet_Trigger") == 0) && calojet.size()){ //this line stops the central jets if( (ljfhpd < _fHPD) && (ljn90 > _n90Hits )){ if(verbose_) cout<<"passed CaloJet ID -------------------" << endl; jetIDbool = true; //Denominator fill v->getMEhisto_DenominatorPt()->Fill(leadjpt); if (isBarrel(leadjeta)) v->getMEhisto_DenominatorPtBarrel()->Fill(leadjpt); if (isEndCap(leadjeta)) v->getMEhisto_DenominatorPtEndcap()->Fill(leadjpt); if (isForward(leadjeta)) v->getMEhisto_DenominatorPtForward()->Fill(leadjpt); v->getMEhisto_DenominatorEta()->Fill(leadjeta); v->getMEhisto_DenominatorPhi()->Fill(leadjphi); v->getMEhisto_DenominatorEtaPhi()->Fill(leadjeta,leadjphi); if (isBarrel(leadjeta)){ v->getMEhisto_DenominatorEtaBarrel()->Fill(leadjeta); v->getMEhisto_DenominatorPhiBarrel()->Fill(leadjphi); } if (isEndCap(leadjeta)){ v->getMEhisto_DenominatorEtaEndcap()->Fill(leadjeta); v->getMEhisto_DenominatorPhiEndcap()->Fill(leadjphi); } if (isForward(leadjeta)){ v->getMEhisto_DenominatorEtaForward()->Fill(leadjeta); v->getMEhisto_DenominatorPhiForward()->Fill(leadjphi); } if((leadjpt > trigLowpTcut && !isForward(leadjeta)) || (leadjpt > trigLowpTcutFwd && isForward(leadjeta))){ v->getMEhisto_DenominatorEta_LowpTcut()->Fill(leadjeta); v->getMEhisto_DenominatorPhi_LowpTcut()->Fill(leadjphi); v->getMEhisto_DenominatorEtaPhi_LowpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigMedpTcut && !isForward(leadjeta)) || (leadjpt > trigMedpTcutFwd && isForward(leadjeta))){ v->getMEhisto_DenominatorEta_MedpTcut()->Fill(leadjeta); v->getMEhisto_DenominatorPhi_MedpTcut()->Fill(leadjphi); v->getMEhisto_DenominatorEtaPhi_MedpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigHighpTcut && !isForward(leadjeta)) || (leadjpt > trigHighpTcutFwd && isForward(leadjeta))){ v->getMEhisto_DenominatorEta_HighpTcut()->Fill(leadjeta); v->getMEhisto_DenominatorPhi_HighpTcut()->Fill(leadjphi); v->getMEhisto_DenominatorEtaPhi_HighpTcut()->Fill(leadjeta,leadjphi); } //Numerator fill if(numpassed){ // double dRmin = 99999.; double dPhimin = 9999.; if(v->getPath().find("L1") != std::string::npos){ if ( l1Index >= triggerObj_->sizeFilters() ) { edm::LogInfo("JetMETHLTOfflineSource") << "no index hlt"<< hltIndex << " of that name "; } else { const trigger::Keys & kl1 = triggerObj_->filterKeys(l1Index); for(trigger::Keys::const_iterator ki = kl1.begin();ki != kl1.end(); ++ki){ double dR = deltaR(toc[*ki].eta(), toc[*ki].phi(), leadjeta, leadjphi); if(dR < dRmin){ dRmin = dR; } } } } else{ if ( hltIndex >= triggerObj_->sizeFilters() ) { edm::LogInfo("JetMETHLTOfflineSource") << "no index hlt"<< hltIndex << " of that name "; } else { const trigger::Keys & khlt = triggerObj_->filterKeys(hltIndex); trigger::Keys::const_iterator kj = khlt.begin(); for(;kj != khlt.end(); ++kj){ double dR = deltaR(toc[*kj].eta(), toc[*kj].phi(), leadjeta, leadjphi); if(dR < dRmin){ dRmin = dR; } double dPhi = deltaPhi(toc[*kj].phi(), leadjphi); if(dPhi < dPhimin){ dPhimin = dPhi; } } //v->getMEhisto_DeltaPhi()->Fill(dPhimin); v->getMEhisto_DeltaPhi()->Fill(dPhimin); v->getMEhisto_DeltaR()->Fill(dRmin); } } if(dRmin < 0.1 || (v->getPath().find("L1") != std::string::npos && dRmin < 0.4)){ v->getMEhisto_NumeratorPt()->Fill(leadjpt); if (isBarrel(leadjeta)) v->getMEhisto_NumeratorPtBarrel()->Fill(leadjpt); if (isEndCap(leadjeta)) v->getMEhisto_NumeratorPtEndcap()->Fill(leadjpt); if (isForward(leadjeta)) v->getMEhisto_NumeratorPtForward()->Fill(leadjpt); v->getMEhisto_NumeratorEta()->Fill(leadjeta); v->getMEhisto_NumeratorPhi()->Fill(leadjphi); v->getMEhisto_NumeratorEtaPhi()->Fill(leadjeta,leadjphi); if (isBarrel(leadjeta)){ v->getMEhisto_NumeratorEtaBarrel()->Fill(leadjeta); v->getMEhisto_NumeratorPhiBarrel()->Fill(leadjphi); } if (isEndCap(leadjeta)){ v->getMEhisto_NumeratorEtaEndcap()->Fill(leadjeta); v->getMEhisto_NumeratorPhiEndcap()->Fill(leadjphi); } if (isForward(leadjeta)){ v->getMEhisto_NumeratorEtaForward()->Fill(leadjeta); v->getMEhisto_NumeratorPhiForward()->Fill(leadjphi); } if((leadjpt > trigLowpTcut && !isForward(leadjeta)) || (leadjpt > trigLowpTcutFwd && isForward(leadjeta))){ v->getMEhisto_NumeratorEta_LowpTcut()->Fill(leadjeta); v->getMEhisto_NumeratorPhi_LowpTcut()->Fill(leadjphi); v->getMEhisto_NumeratorEtaPhi_LowpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigMedpTcut && !isForward(leadjeta)) || (leadjpt > trigMedpTcutFwd && isForward(leadjeta))){ v->getMEhisto_NumeratorEta_MedpTcut()->Fill(leadjeta); v->getMEhisto_NumeratorPhi_MedpTcut()->Fill(leadjphi); v->getMEhisto_NumeratorEtaPhi_MedpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigHighpTcut && !isForward(leadjeta)) || (leadjpt > trigHighpTcutFwd && isForward(leadjeta))){ v->getMEhisto_NumeratorEta_HighpTcut()->Fill(leadjeta); v->getMEhisto_NumeratorPhi_HighpTcut()->Fill(leadjphi); v->getMEhisto_NumeratorEtaPhi_HighpTcut()->Fill(leadjeta,leadjphi); } } }//numpassed }//CalojetID filter } if(jetIDbool == true && (v->getTriggerType().compare("DiJet_Trigger") == 0) && calojet.size()>1){ if(((CaloJetEMF[1] > _fEMF || std::abs(CaloJetEta[1]) > _feta) && CaloJetfHPD[0] < _fHPD && CaloJetn90[0] > _n90Hits)){ v->getMEhisto_DenominatorPt()->Fill((CaloJetPt[0] + CaloJetPt[1])/2.); v->getMEhisto_DenominatorEta()->Fill((CaloJetEta[0] + CaloJetEta[1])/2.); if(numpassed==true){ v->getMEhisto_NumeratorPt()->Fill((CaloJetPt[0] + CaloJetPt[1])/2.); v->getMEhisto_NumeratorEta()->Fill((CaloJetEta[0] + CaloJetEta[1])/2.); } } } }// Jet trigger and valid jet collection //PFJet paths if(verbose_) std::cout << "fillMEforEffWrtMuTrigger: PFJet -------------------" << std::endl; if(pfjetColl_.isValid() && (v->getObjectType() == trigger::TriggerJet)){ //cout<<" - PFJet "<<endl; //&& (v->getPath().find("HLT_PFJet")!=std::string::npos) //&& (v->getPath().find("HLT_DiPFJet")!=std::string::npos)){ bool jetIDbool = false; double leadjpt = PFJetPt[0]; double leadjeta = PFJetEta[0]; double leadjphi = PFJetPhi[0]; double ljNHEF = PFJetNHEF[0]; double ljCHEF = PFJetCHEF[0]; double ljNEMF = PFJetNEMF[0]; double ljCEMF = PFJetCEMF[0]; //double sleadjpt = PFJetPt[1]; //double sleadjeta = PFJetEta[1]; //double sleadjphi = PFJetPhi[1]; double sljNHEF = PFJetNHEF[1]; double sljCHEF = PFJetCHEF[1]; double sljNEMF = PFJetNEMF[1]; double sljCEMF = PFJetCEMF[1]; // double pfMHTx = pfMHTx_All; double pfMHTy = pfMHTy_All; // if((v->getTriggerType().compare("SingleJet_Trigger") == 0) && pfjet.size()){ //this line stops the central jets //======get pfmht _pfMHT = sqrt(pfMHTx*pfMHTx + pfMHTy*pfMHTy); v->getMEhisto_DenominatorPFMHT()->Fill(_pfMHT); if( ljNHEF >= _min_NHEF && ljNHEF <= _max_NHEF && ljCHEF >= _min_CHEF && ljCHEF <= _max_CHEF && ljNEMF >= _min_NEMF && ljNEMF <= _max_NEMF && ljCEMF >= _min_CEMF && ljCEMF <= _max_CEMF){ if(verbose_) cout<<"passed PFJet ID -------------------" << endl; jetIDbool = true; v->getMEhisto_DenominatorPFPt()->Fill(leadjpt); if (isBarrel(leadjeta)) v->getMEhisto_DenominatorPFPtBarrel()->Fill(leadjpt); if (isEndCap(leadjeta)) v->getMEhisto_DenominatorPFPtEndcap()->Fill(leadjpt); if (isForward(leadjeta)) v->getMEhisto_DenominatorPFPtForward()->Fill(leadjpt); v->getMEhisto_DenominatorPFEta()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhi()->Fill(leadjphi); v->getMEhisto_DenominatorPFEtaPhi()->Fill(leadjeta,leadjphi); if(isBarrel(leadjeta)){ v->getMEhisto_DenominatorPFEtaBarrel()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhiBarrel()->Fill(leadjphi); } if (isEndCap(leadjeta)){ v->getMEhisto_DenominatorPFEtaEndcap()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhiEndcap()->Fill(leadjphi); } if (isForward(leadjeta)){ v->getMEhisto_DenominatorPFEtaForward()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhiForward()->Fill(leadjphi); } if((leadjpt > trigLowpTPFcut && !isForward(leadjeta)) || (leadjpt > trigLowpTPFcutFwd && isForward(leadjeta))){ v->getMEhisto_DenominatorPFEta_LowpTcut()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhi_LowpTcut()->Fill(leadjphi); v->getMEhisto_DenominatorPFEtaPhi_LowpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigMedpTPFcut && !isForward(leadjeta)) || (leadjpt > trigMedpTPFcutFwd && isForward(leadjeta))){ v->getMEhisto_DenominatorPFEta_MedpTcut()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhi_MedpTcut()->Fill(leadjphi); v->getMEhisto_DenominatorPFEtaPhi_MedpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigHighpTPFcut && !isForward(leadjeta)) || (leadjpt > trigHighpTPFcutFwd && isForward(leadjeta))){ v->getMEhisto_DenominatorPFEta_HighpTcut()->Fill(leadjeta); v->getMEhisto_DenominatorPFPhi_HighpTcut()->Fill(leadjphi); v->getMEhisto_DenominatorPFEtaPhi_HighpTcut()->Fill(leadjeta,leadjphi); } //Numerator fill if(numpassed){ double dRmin = 99999.; double dPhimin = 9999.; if(v->getPath().find("L1") != std::string::npos){ if ( l1Index >= triggerObj_->sizeFilters() ) { edm::LogInfo("JetMETHLTOfflineSource") << "no index hlt"<< hltIndex << " of that name "; } else{ const trigger::Keys & kl1 = triggerObj_->filterKeys(l1Index); for(trigger::Keys::const_iterator ki = kl1.begin();ki != kl1.end(); ++ki){ double dR = deltaR(toc[*ki].eta(), toc[*ki].phi(), leadjeta, leadjphi); if(dR < dRmin){ dRmin = dR; } } } } else{ if ( hltIndex >= triggerObj_->sizeFilters() ) { edm::LogInfo("JetMETHLTOfflineSource") << "no index hlt"<< hltIndex << " of that name "; } else{ const trigger::Keys & khlt = triggerObj_->filterKeys(hltIndex); for(trigger::Keys::const_iterator kj = khlt.begin();kj != khlt.end(); ++kj){ double dR = deltaR(toc[*kj].eta(), toc[*kj].phi(), leadjeta, leadjphi); if(dR < dRmin){ dRmin = dR; } double dPhi = deltaPhi(toc[*kj].phi(), leadjphi); if(dPhi < dPhimin){ dPhimin = dPhi; } } v->getMEhisto_PFDeltaPhi()->Fill(dPhimin); v->getMEhisto_PFDeltaR()->Fill(dRmin); } } if(dRmin < 0.1 || (v->getPath().find("L1") != std::string::npos && dRmin < 0.4)){ v->getMEhisto_NumeratorPFPt()->Fill(leadjpt); if (isBarrel(leadjeta)) v->getMEhisto_NumeratorPFPtBarrel()->Fill(leadjpt); if (isEndCap(leadjeta)) v->getMEhisto_NumeratorPFPtEndcap()->Fill(leadjpt); if (isForward(leadjeta)) v->getMEhisto_NumeratorPFPtForward()->Fill(leadjpt); v->getMEhisto_NumeratorPFEta()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhi()->Fill(leadjphi); v->getMEhisto_NumeratorPFEtaPhi()->Fill(leadjeta,leadjphi); if (isBarrel(leadjeta)){ v->getMEhisto_NumeratorPFEtaBarrel()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhiBarrel()->Fill(leadjphi); } if (isEndCap(leadjeta)){ v->getMEhisto_NumeratorPFEtaEndcap()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhiEndcap()->Fill(leadjphi); } if (isForward(leadjeta)){ v->getMEhisto_NumeratorPFEtaForward()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhiForward()->Fill(leadjphi); } if((leadjpt > trigLowpTPFcut && !isForward(leadjeta)) || (leadjpt > trigLowpTPFcutFwd && isForward(leadjeta))){ v->getMEhisto_NumeratorPFEta_LowpTcut()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhi_LowpTcut()->Fill(leadjphi); v->getMEhisto_NumeratorPFEtaPhi_LowpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigMedpTPFcut && !isForward(leadjeta)) || (leadjpt > trigMedpTPFcutFwd && isForward(leadjeta))){ v->getMEhisto_NumeratorPFEta_MedpTcut()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhi_MedpTcut()->Fill(leadjphi); v->getMEhisto_NumeratorPFEtaPhi_MedpTcut()->Fill(leadjeta,leadjphi); } if((leadjpt > trigHighpTPFcut && !isForward(leadjeta)) || (leadjpt > trigHighpTPFcutFwd && isForward(leadjeta))){ v->getMEhisto_NumeratorPFEta_HighpTcut()->Fill(leadjeta); v->getMEhisto_NumeratorPFPhi_HighpTcut()->Fill(leadjphi); v->getMEhisto_NumeratorPFEtaPhi_HighpTcut()->Fill(leadjeta,leadjphi); } } } } } if(jetIDbool == true && (v->getTriggerType().compare("DiJet_Trigger") == 0) && pfjet.size()>1){ if( ljNHEF >= _min_NHEF && ljNHEF <= _max_NHEF && ljCHEF >= _min_CHEF && ljCHEF <= _max_CHEF && ljNEMF >= _min_NEMF && ljNEMF <= _max_NEMF && ljCEMF >= _min_CEMF && ljCEMF <= _max_CEMF && sljNHEF >= _min_NHEF && sljNHEF <= _max_NHEF && sljCHEF >= _min_CHEF && sljCHEF <= _max_CHEF && sljNEMF >= _min_NEMF && sljNEMF <= _max_NEMF && sljCEMF >= _min_CEMF && sljCEMF <= _max_CEMF ){ v->getMEhisto_DenominatorPFPt()->Fill((PFJetPt[0] + PFJetPt[1])/2.); v->getMEhisto_DenominatorPFEta()->Fill((PFJetEta[0] + PFJetEta[1])/2.); if(numpassed){ v->getMEhisto_NumeratorPFPt()->Fill((PFJetPt[0] + PFJetPt[1])/2.); v->getMEhisto_NumeratorPFEta()->Fill((PFJetEta[0] + PFJetEta[1])/2.); } } } }// PF Jet trigger and valid jet collection //CaloMET path if(verbose_) std::cout << "fillMEforEffWrtMuTrigger: CaloMET -------------------" << std::endl; if(calometColl_.isValid() && ((v->getObjectType() == trigger::TriggerMET) || (v->getObjectType() == trigger::TriggerTET)) && (v->getPath().find("HLT_PFMET")==std::string::npos)){ //cout<<" - CaloMET "<<endl; const CaloMETCollection *calometcol = calometColl_.product(); const CaloMET met = calometcol->front(); v->getMEhisto_DenominatorPt()->Fill(met.et()); v->getMEhisto_DenominatorPhi()->Fill(met.phi()); if(numpassed){ v->getMEhisto_NumeratorPt()->Fill(met.et()); v->getMEhisto_NumeratorPhi()->Fill(met.phi()); if(hltIndex >= triggerObj_->sizeFilters()){ edm::LogInfo("JetMETHLTOfflineSource") << "no index hlt"<< hltIndex << " of that name "; } else{ double dPhimin = 9999.;// const trigger::Keys & khlt = triggerObj_->filterKeys(hltIndex); for(trigger::Keys::const_iterator kj = khlt.begin();kj != khlt.end(); ++kj){ double dPhi = deltaPhi(toc[*kj].phi(), met.phi()); if(dPhi < dPhimin){ dPhimin = dPhi; } } v->getMEhisto_DeltaPhi()->Fill(dPhimin); } } } //PFMET if(verbose_) std::cout << "fillMEforEffWrtMuTrigger: PFMET -------------------" << std::endl; if(pfmetColl_.isValid() && ((v->getObjectType() == trigger::TriggerMET) || (v->getObjectType() == trigger::TriggerTET)) && (v->getPath().find("HLT_PFMET")!=std::string::npos)){ //cout<<" - PFMET "<<endl; const PFMETCollection *pfmetcol = pfmetColl_.product(); const PFMET met = pfmetcol->front(); v->getMEhisto_DenominatorPt()->Fill(met.et()); v->getMEhisto_DenominatorPhi()->Fill(met.phi()); if(numpassed){ v->getMEhisto_NumeratorPt()->Fill(met.et()); v->getMEhisto_NumeratorPhi()->Fill(met.phi()); if(hltIndex >= triggerObj_->sizeFilters()){ edm::LogInfo("JetMETHLTOfflineSource") << "no index hlt"<< hltIndex << " of that name "; } else{ double dPhimin = 9999.;// const trigger::Keys & khlt = triggerObj_->filterKeys(hltIndex); for(trigger::Keys::const_iterator kj = khlt.begin();kj != khlt.end(); ++kj){ double dPhi = deltaPhi(toc[*kj].phi(), met.phi()); if(dPhi < dPhimin){ dPhimin = dPhi; } } v->getMEhisto_DeltaPhi()->Fill(dPhimin); } } } /* if(pfmhtColl_.isValid() && ((v->getObjectType() == trigger::TriggerMET)|| (v->getObjectType() == trigger::TriggerTET))){ const PFMHTCollection *pfmhtcol = pfmhtColl_.product(); const PFMHT met = pfmhtcol->front(); v->getMEhisto_DenominatorPFPt()->Fill(met.pt()); v->getMEhisto_DenominatorPFPhi()->Fill(met.phi()); }// PFMHT trigger and valid MET collection */ }// trigger under study } }
void JetMETHLTOfflineSource::fillMEforMonAllTrigger | ( | const edm::Event & | iEvent, |
const edm::EventSetup & | iSetup | ||
) | [private, virtual] |
Definition at line 453 of file JetMETHLTOfflineSource.cc.
References calojetColl_, CaloJetEta, CaloJetPhi, CaloJetPt, CaloJetPx, CaloJetPy, calometColl_, SiPixelRawToDigiRegional_cfi::deltaPhi, deltaR(), reco::LeafCandidate::et(), eta(), hltPathsAll_, patRefSel_triggerSelection_cff::hltTag, isBarrel(), isEndCap(), isForward(), isHLTPathAccepted(), edm::HandleBase::isValid(), patRefSel_triggerSelection_cff::l1Tag, CaloMET_cfi::met, pfjetColl_, PFJetEta, PFJetPhi, PFJetPt, PFJetPx, PFJetPy, pfmetColl_, reco::LeafCandidate::phi(), phi, processname_, edm::Handle< T >::product(), trigger::TriggerJet, trigger::TriggerMET, triggerObj_, triggerResults_, trigger::TriggerTET, and v.
Referenced by analyze().
{ //int npath; if(&triggerResults_) { /*npath = triggerResults_->size();*/ } else { return; } const trigger::TriggerObjectCollection & toc(triggerObj_->getObjects()); PathInfoCollection::iterator v = hltPathsAll_.begin(); for(; v!= hltPathsAll_.end(); ++v ){ if(isHLTPathAccepted(v->getPath())==false) continue; //New jet collection (after apply JEC) std::vector<double>jetPtVec; std::vector<double>jetPhiVec; std::vector<double>jetEtaVec; std::vector<double>jetPxVec; std::vector<double>jetPyVec; std::vector<double>hltPtVec; std::vector<double>hltPhiVec; std::vector<double>hltEtaVec; std::vector<double>hltPxVec; std::vector<double>hltPyVec; //This will be used to find out punch through trigger //bool fillL1HLT = false; //L1 and HLT indices edm::InputTag l1Tag(v->getl1Path(),"",processname_); const int l1Index = triggerObj_->filterIndex(l1Tag); edm::InputTag hltTag(v->getLabel(),"",processname_); const int hltIndex = triggerObj_->filterIndex(hltTag); //bool l1TrigBool = false; bool hltTrigBool = false; bool diJetFire = false; int jetsize = 0; if ( l1Index >= triggerObj_->sizeFilters() ) { edm::LogInfo("JetMETHLTOfflineSource") << "no index "<< l1Index << " of that name "<<l1Tag; } else { //l1TrigBool = true; const trigger::Keys & kl1 = triggerObj_->filterKeys(l1Index); // if(v->getObjectType() == trigger::TriggerJet && v->getTriggerType().compare("SingleJet_Trigger") == 0) v->getMEhisto_N_L1()->Fill(kl1.size()); // trigger::Keys::const_iterator ki = kl1.begin(); for(; ki != kl1.end(); ++ki){ double l1TrigEta = -100; double l1TrigPhi = -100; // if(v->getObjectType() == trigger::TriggerJet){ l1TrigEta = toc[*ki].eta(); l1TrigPhi = toc[*ki].phi(); if(v->getTriggerType().compare("SingleJet_Trigger") == 0){ v->getMEhisto_Pt_L1()->Fill(toc[*ki].pt()); if (isBarrel(toc[*ki].eta())) v->getMEhisto_PtBarrel_L1()->Fill(toc[*ki].pt()); if (isEndCap(toc[*ki].eta())) v->getMEhisto_PtEndcap_L1()->Fill(toc[*ki].pt()); if (isForward(toc[*ki].eta())) v->getMEhisto_PtForward_L1()->Fill(toc[*ki].pt()); v->getMEhisto_Eta_L1()->Fill(toc[*ki].eta()); v->getMEhisto_Phi_L1()->Fill(toc[*ki].phi()); v->getMEhisto_EtaPhi_L1()->Fill(toc[*ki].eta(),toc[*ki].phi()); } } if(v->getObjectType() == trigger::TriggerMET || v->getObjectType() == trigger::TriggerTET){ v->getMEhisto_Pt_L1()->Fill(toc[*ki].pt()); v->getMEhisto_Phi_L1()->Fill(toc[*ki].phi()); } //----------------------------------------------- if ( hltIndex >= triggerObj_->sizeFilters() ) { edm::LogInfo("JetMETHLTOfflineSource") << "no index hlt"<< hltIndex << " of that name "; } else { const trigger::Keys & khlt = triggerObj_->filterKeys(hltIndex); if(v->getObjectType() == trigger::TriggerJet && ki == kl1.begin() && v->getTriggerType().compare("SingleJet_Trigger") == 0) v->getMEhisto_N_HLT()->Fill(khlt.size()); // trigger::Keys::const_iterator kj = khlt.begin(); //Define hltTrigBool for(;kj != khlt.end(); ++kj){ if(v->getObjectType() == trigger::TriggerJet){ double hltTrigEta = -100; double hltTrigPhi = -100; hltTrigEta = toc[*kj].eta(); hltTrigPhi = toc[*kj].phi(); if((deltaR(hltTrigEta, hltTrigPhi, l1TrigEta, l1TrigPhi)) < 0.4 && (v->getTriggerType().compare("DiJet_Trigger") == 0)) hltTrigBool = true; } } // kj = khlt.begin(); for(;kj != khlt.end(); ++kj){ double hltTrigEta = -100.; double hltTrigPhi = -100.; //fillL1HLT = true; //MET Triggers if(v->getObjectType() == trigger::TriggerMET || (v->getObjectType() == trigger::TriggerTET)){ v->getMEhisto_Pt_HLT()->Fill(toc[*kj].pt()); v->getMEhisto_Phi_HLT()->Fill(toc[*kj].phi()); v->getMEhisto_PtCorrelation_L1HLT()->Fill(toc[*ki].pt(),toc[*kj].pt()); v->getMEhisto_PhiCorrelation_L1HLT()->Fill(toc[*ki].phi(),toc[*kj].phi()); v->getMEhisto_PtResolution_L1HLT()->Fill((toc[*ki].pt()-toc[*kj].pt())/(toc[*ki].pt())); v->getMEhisto_PhiResolution_L1HLT()->Fill((toc[*ki].phi()-toc[*kj].phi())/(toc[*ki].phi())); } //Jet Triggers if(v->getObjectType() == trigger::TriggerJet){ hltTrigEta = toc[*kj].eta(); hltTrigPhi = toc[*kj].phi(); if((deltaR(hltTrigEta, hltTrigPhi, l1TrigEta, l1TrigPhi)) < 0.4){ if(v->getTriggerType().compare("SingleJet_Trigger") == 0){ v->getMEhisto_PtCorrelation_L1HLT()->Fill(toc[*ki].pt(),toc[*kj].pt()); v->getMEhisto_EtaCorrelation_L1HLT()->Fill(toc[*ki].eta(),toc[*kj].eta()); v->getMEhisto_PhiCorrelation_L1HLT()->Fill(toc[*ki].phi(),toc[*kj].phi()); v->getMEhisto_PtResolution_L1HLT()->Fill((toc[*ki].pt()-toc[*kj].pt())/(toc[*ki].pt())); v->getMEhisto_EtaResolution_L1HLT()->Fill((toc[*ki].eta()-toc[*kj].eta())/(toc[*ki].eta())); v->getMEhisto_PhiResolution_L1HLT()->Fill((toc[*ki].phi()-toc[*kj].phi())/(toc[*ki].phi())); } } if(((deltaR(hltTrigEta, hltTrigPhi, l1TrigEta, l1TrigPhi) < 0.4 ) || ((v->getTriggerType().compare("DiJet_Trigger") == 0) && hltTrigBool)) && !diJetFire){ if(v->getTriggerType().compare("SingleJet_Trigger") == 0){ v->getMEhisto_Pt_HLT()->Fill(toc[*kj].pt()); if (isBarrel(toc[*kj].eta())) v->getMEhisto_PtBarrel_HLT()->Fill(toc[*kj].pt()); if (isEndCap(toc[*kj].eta())) v->getMEhisto_PtEndcap_HLT()->Fill(toc[*kj].pt()); if (isForward(toc[*kj].eta())) v->getMEhisto_PtForward_HLT()->Fill(toc[*kj].pt()); v->getMEhisto_Eta_HLT()->Fill(toc[*kj].eta()); v->getMEhisto_Phi_HLT()->Fill(toc[*kj].phi()); v->getMEhisto_EtaPhi_HLT()->Fill(toc[*kj].eta(),toc[*kj].phi()); } //Calojet if(calojetColl_.isValid() && (v->getObjectType() == trigger::TriggerJet) && (v->getPath().compare("PFJet") == 0)){ //CaloJetCollection::const_iterator jet = calojet.begin(); //for(; jet != calojet.end(); ++jet) { for(int iCalo=0; iCalo<2; iCalo++){ if(deltaR(hltTrigEta, hltTrigPhi, CaloJetEta[iCalo], CaloJetPhi[iCalo]) < 0.4){ jetsize++; if(v->getTriggerType().compare("SingleJet_Trigger") == 0){ v->getMEhisto_Pt()->Fill(CaloJetPt[iCalo]); if (isBarrel(CaloJetEta[iCalo])) v->getMEhisto_PtBarrel()->Fill(CaloJetPt[iCalo]); if (isEndCap(CaloJetEta[iCalo])) v->getMEhisto_PtEndcap()->Fill(CaloJetPt[iCalo]); if (isForward(CaloJetEta[iCalo])) v->getMEhisto_PtForward()->Fill(CaloJetPt[iCalo]); // v->getMEhisto_Eta()->Fill(CaloJetEta[iCalo]); v->getMEhisto_Phi()->Fill(CaloJetPhi[iCalo]); v->getMEhisto_EtaPhi()->Fill(CaloJetEta[iCalo],CaloJetPhi[iCalo]); // v->getMEhisto_PtCorrelation_HLTRecObj()->Fill(toc[*kj].pt(),CaloJetPt[iCalo]); v->getMEhisto_EtaCorrelation_HLTRecObj()->Fill(toc[*kj].eta(),CaloJetEta[iCalo]); v->getMEhisto_PhiCorrelation_HLTRecObj()->Fill(toc[*kj].phi(),CaloJetPhi[iCalo]); // v->getMEhisto_PtResolution_HLTRecObj()->Fill((toc[*kj].pt()-CaloJetPt[iCalo])/(toc[*kj].pt())); v->getMEhisto_EtaResolution_HLTRecObj()->Fill((toc[*kj].eta()-CaloJetEta[iCalo])/(toc[*kj].eta())); v->getMEhisto_PhiResolution_HLTRecObj()->Fill((toc[*kj].phi()-CaloJetPhi[iCalo])/(toc[*kj].phi())); } //------------------------------------------------------- if((v->getTriggerType().compare("DiJet_Trigger") == 0)){ jetPhiVec.push_back(CaloJetPhi[iCalo]); jetPtVec.push_back(CaloJetPt[iCalo]); jetEtaVec.push_back(CaloJetEta[iCalo]); jetPxVec.push_back(CaloJetPx[iCalo]); jetPyVec.push_back(CaloJetPy[iCalo]); // hltPhiVec.push_back(toc[*kj].phi()); hltPtVec.push_back(toc[*kj].pt()); hltEtaVec.push_back(toc[*kj].eta()); hltPxVec.push_back(toc[*kj].px()); hltPyVec.push_back(toc[*kj].py()); } }// matching jet }// Jet Loop }// valid calojet collection, with calojet trigger //PFJet trigger if(pfjetColl_.isValid() && (v->getObjectType() == trigger::TriggerJet) && (v->getPath().compare("PFJet") != 0)){ //PFJetCollection::const_iterator jet = pfjet.begin(); //for(; jet != pfjet.end(); ++jet){ for(int iPF=0; iPF<2; iPF++){ if(deltaR(hltTrigEta, hltTrigPhi, PFJetEta[iPF], PFJetPhi[iPF]) < 0.4){ jetsize++; if(v->getTriggerType().compare("SingleJet_Trigger") == 0){ v->getMEhisto_Pt()->Fill(PFJetPt[iPF]); if (isBarrel(PFJetEta[iPF])) v->getMEhisto_PtBarrel()->Fill(PFJetPt[iPF]); if (isEndCap(PFJetEta[iPF])) v->getMEhisto_PtEndcap()->Fill(PFJetPt[iPF]); if (isForward(PFJetEta[iPF])) v->getMEhisto_PtForward()->Fill(PFJetPt[iPF]); // v->getMEhisto_Eta()->Fill(PFJetEta[iPF]); v->getMEhisto_Phi()->Fill(PFJetPhi[iPF]); v->getMEhisto_EtaPhi()->Fill(PFJetEta[iPF],PFJetPhi[iPF]); // v->getMEhisto_PtCorrelation_HLTRecObj()->Fill(toc[*kj].pt(),PFJetPt[iPF]); v->getMEhisto_EtaCorrelation_HLTRecObj()->Fill(toc[*kj].eta(),PFJetEta[iPF]); v->getMEhisto_PhiCorrelation_HLTRecObj()->Fill(toc[*kj].phi(),PFJetPhi[iPF]); // v->getMEhisto_PtResolution_HLTRecObj()->Fill((toc[*kj].pt()-PFJetPt[iPF])/(toc[*kj].pt())); v->getMEhisto_EtaResolution_HLTRecObj()->Fill((toc[*kj].eta()-PFJetEta[iPF])/(toc[*kj].eta())); v->getMEhisto_PhiResolution_HLTRecObj()->Fill((toc[*kj].phi()-PFJetPhi[iPF])/(toc[*kj].phi())); } //------------------------------------------------------- if((v->getTriggerType().compare("DiJet_Trigger") == 0)){ jetPhiVec.push_back(PFJetPhi[iPF]); jetPtVec.push_back(PFJetPt[iPF]); jetEtaVec.push_back(PFJetEta[iPF]); jetPxVec.push_back(PFJetPx[iPF]); jetPyVec.push_back(PFJetPy[iPF]); // hltPhiVec.push_back(toc[*kj].phi()); hltPtVec.push_back(toc[*kj].pt()); hltEtaVec.push_back(toc[*kj].eta()); hltPxVec.push_back(toc[*kj].px()); hltPyVec.push_back(toc[*kj].py()); } }// matching jet }//PFJet loop }//valid pfjet collection, with pfjet trigger // }// hlt matching with l1 }// jet trigger //------------------------------------------------------ if(calometColl_.isValid() && ((v->getObjectType() == trigger::TriggerMET) || (v->getObjectType() == trigger::TriggerTET)) && (v->getPath().find("HLT_PFMET")==std::string::npos)){ const CaloMETCollection *calometcol = calometColl_.product(); const CaloMET met = calometcol->front(); // v->getMEhisto_Pt()->Fill(met.et()); v->getMEhisto_Phi()->Fill(met.phi()); // v->getMEhisto_PtCorrelation_HLTRecObj()->Fill(toc[*kj].et(),met.et()); v->getMEhisto_PhiCorrelation_HLTRecObj()->Fill(toc[*kj].phi(),met.phi()); v->getMEhisto_PtResolution_HLTRecObj()->Fill((toc[*kj].et()-met.et())/(toc[*kj].et())); v->getMEhisto_PhiResolution_HLTRecObj()->Fill((toc[*kj].phi()-met.phi())/(toc[*kj].phi())); } //-------------------------------------------------------- if(pfmetColl_.isValid() && ((v->getObjectType() == trigger::TriggerMET) || (v->getObjectType() == trigger::TriggerTET)) && (v->getPath().find("HLT_PFMET")!=std::string::npos)){ const PFMETCollection *pfmetcol = pfmetColl_.product(); const PFMET pfmet = pfmetcol->front(); // v->getMEhisto_Pt()->Fill(pfmet.et()); v->getMEhisto_Phi()->Fill(pfmet.phi()); // v->getMEhisto_PtCorrelation_HLTRecObj()->Fill(toc[*kj].et(),pfmet.et()); v->getMEhisto_PhiCorrelation_HLTRecObj()->Fill(toc[*kj].phi(),pfmet.phi()); v->getMEhisto_PtResolution_HLTRecObj()->Fill((toc[*kj].et()-pfmet.et())/(toc[*kj].et())); v->getMEhisto_PhiResolution_HLTRecObj()->Fill((toc[*kj].phi()-pfmet.phi())/(toc[*kj].phi())); } }//Loop over HLT trigger candidates if((v->getTriggerType().compare("DiJet_Trigger") == 0)) diJetFire = true; }// Valid hlt trigger object }// Loop over L1 objects }// Valid L1 trigger object v->getMEhisto_N()->Fill(jetsize); //-------------------------------------------------------- if((v->getTriggerType().compare("DiJet_Trigger") == 0) && jetPtVec.size() >1){ double AveJetPt = (jetPtVec[0] + jetPtVec[1])/2; double AveJetEta = (jetEtaVec[0] + jetEtaVec[1])/2; double JetDelPhi = deltaPhi(jetPhiVec[0],jetPhiVec[1]); double AveHLTPt = (hltPtVec[0] + hltPtVec[1])/2; double AveHLTEta = (hltEtaVec[0] + hltEtaVec[1])/2; double HLTDelPhi = deltaPhi(hltPhiVec[0],hltPhiVec[1]); v->getMEhisto_AveragePt_RecObj()->Fill(AveJetPt); v->getMEhisto_AverageEta_RecObj()->Fill(AveJetEta); v->getMEhisto_DeltaPhi_RecObj()->Fill(JetDelPhi); // v->getMEhisto_AveragePt_HLTObj()->Fill(AveHLTPt); v->getMEhisto_AverageEta_HLTObj()->Fill(AveHLTEta); v->getMEhisto_DeltaPhi_HLTObj()->Fill(HLTDelPhi); } //----------------------------------------------------- /* if(v->getPath().find("L1") != std::string::npos && !fillL1HLT){ if ( l1Index >= triggerObj_->sizeFilters() ) { edm::LogInfo("JetMETHLTOfflineSource") << "no index "<< l1Index << " of that name "<<l1Tag; } else { //l1TrigBool = true; const trigger::Keys & kl1 = triggerObj_->filterKeys(l1Index); for( trigger::Keys::const_iterator ki = kl1.begin(); ki != kl1.end(); ++ki){ double l1TrigEta = toc[*ki].eta(); double l1TrigPhi = toc[*ki].phi(); if(calojetColl_.isValid() && (v->getObjectType() == trigger::TriggerJet) && (v->getTriggerType().compare("SingleJet_Trigger") == 0) ){ for(CaloJetCollection::const_iterator jet = calojet.begin(); jet != calojet.end(); ++jet ) { double jetEta = jet->eta(); double jetPhi = jet->phi(); if(deltaR(l1TrigEta, l1TrigPhi, jetEta, jetPhi) < 0.4){ jetsize++; v->getMEhisto_Pt()->Fill(jet->pt()); if (isBarrel(jet->eta())) v->getMEhisto_PtBarrel()->Fill(jet->pt()); if (isEndCap(jet->eta())) v->getMEhisto_PtEndcap()->Fill(jet->pt()); if (isForward(jet->eta())) v->getMEhisto_PtForward()->Fill(jet->pt()); // v->getMEhisto_Eta()->Fill(jet->eta()); v->getMEhisto_Phi()->Fill(jet->phi()); v->getMEhisto_EtaPhi()->Fill(jet->eta(),jet->phi()); // v->getMEhisto_PtCorrelation_HLTRecObj()->Fill(toc[*ki].pt(),jet->pt()); v->getMEhisto_EtaCorrelation_HLTRecObj()->Fill(toc[*ki].eta(),jet->eta()); v->getMEhisto_PhiCorrelation_HLTRecObj()->Fill(toc[*ki].phi(),jet->phi()); // v->getMEhisto_PtResolution_HLTRecObj()->Fill((toc[*ki].pt()-jet->pt())/(toc[*ki].pt())); v->getMEhisto_EtaResolution_HLTRecObj()->Fill((toc[*ki].eta()-jet->eta())/(toc[*ki].eta())); v->getMEhisto_PhiResolution_HLTRecObj()->Fill((toc[*ki].phi()-jet->phi())/(toc[*ki].phi())); }// matching jet }// Jet Loop v->getMEhisto_N()->Fill(jetsize); }// valid Jet collection if(calometColl_.isValid() && ((v->getObjectType() == trigger::TriggerMET)|| (v->getObjectType() == trigger::TriggerTET))){ const CaloMETCollection *calometcol = calometColl_.product(); const CaloMET met = calometcol->front(); v->getMEhisto_Pt()->Fill(met.pt()); v->getMEhisto_Phi()->Fill(met.phi()); // v->getMEhisto_PtCorrelation_HLTRecObj()->Fill(toc[*ki].pt(),met.pt()); v->getMEhisto_PhiCorrelation_HLTRecObj()->Fill(toc[*ki].phi(),met.phi()); v->getMEhisto_PtResolution_HLTRecObj()->Fill((toc[*ki].pt()-met.pt())/(toc[*ki].pt())); v->getMEhisto_PhiResolution_HLTRecObj()->Fill((toc[*ki].phi()-met.phi())/(toc[*ki].phi())); }// valid MET Collection }// Loop over keys }// valid object }// L1 is fired but not HLT */ } }
void JetMETHLTOfflineSource::fillMEforMonAllTriggerwrtMuonTrigger | ( | const edm::Event & | iEvent, |
const edm::EventSetup & | iSetup | ||
) | [private, virtual] |
Definition at line 799 of file JetMETHLTOfflineSource.cc.
References calojet, calojetColl_, CaloJetEta, CaloJetPhi, CaloJetPt, CaloJetPx, CaloJetPy, calometColl_, gather_cfg::cout, SiPixelRawToDigiRegional_cfi::deltaPhi, deltaR(), reco::LeafCandidate::et(), eta(), hltConfig_, hltPathsAllWrtMu_, patRefSel_triggerSelection_cff::hltTag, i, isBarrel(), isEndCap(), isForward(), isHLTPathAccepted(), edm::HandleBase::isValid(), j, metsig::jet, reco::btau::jetEta, reco::btau::jetPhi, patRefSel_triggerSelection_cff::l1Tag, CaloMET_cfi::met, MuonTrigPaths_, timingPdfMaker::pathname, pfjetColl_, PFJetEta, PFJetPhi, PFJetPt, PFJetPx, PFJetPy, pfmetColl_, reco::LeafCandidate::phi(), phi, processname_, edm::Handle< T >::product(), reco::LeafCandidate::pt(), HLTConfigProvider::size(), trigger::TriggerJet, trigger::TriggerMET, HLTConfigProvider::triggerName(), triggerObj_, triggerResults_, trigger::TriggerTET, v, and verbose_.
Referenced by analyze().
{ //int npath; if(&triggerResults_) { /*npath = triggerResults_->size();*/ } else { return; } bool muTrig = false; for(size_t i=0;i<MuonTrigPaths_.size();++i){ const unsigned int nPath(hltConfig_.size()); for (unsigned int j=0; j!=nPath; ++j) { std::string pathname = hltConfig_.triggerName(j); if(pathname.find(MuonTrigPaths_[i]) != std::string::npos){ if(isHLTPathAccepted(pathname)){ muTrig = true; if(verbose_) cout<<"fillMEforMonAllTriggerwrtMuonTrigger: Muon Match"<<endl; } } if(muTrig) break; } if(muTrig) break; } if(muTrig){ const trigger::TriggerObjectCollection & toc(triggerObj_->getObjects()); PathInfoCollection::iterator v = hltPathsAllWrtMu_.begin(); for(; v!= hltPathsAllWrtMu_.end(); ++v ){ if(isHLTPathAccepted(v->getPath())==false) continue; //New jet collection (after apply JEC) std::vector<double>jetPtVec; std::vector<double>jetPhiVec; std::vector<double>jetEtaVec; std::vector<double>jetPxVec; std::vector<double>jetPyVec; std::vector<double>hltPtVec; std::vector<double>hltPhiVec; std::vector<double>hltEtaVec; std::vector<double>hltPxVec; std::vector<double>hltPyVec; //This will be used to find out punch throgh trigger bool fillL1HLT = false; //L1 and HLT indices edm::InputTag l1Tag(v->getl1Path(),"",processname_); const int l1Index = triggerObj_->filterIndex(l1Tag); edm::InputTag hltTag(v->getLabel(),"",processname_); const int hltIndex = triggerObj_->filterIndex(hltTag); //bool l1TrigBool = false; bool hltTrigBool = false; bool diJetFire = false; int jetsize = 0; if ( l1Index >= triggerObj_->sizeFilters() ) { edm::LogInfo("JetMETHLTOfflineSource") << "no index "<< l1Index << " of that name "<<l1Tag; } else { //l1TrigBool = true; const trigger::Keys & kl1 = triggerObj_->filterKeys(l1Index); if(v->getObjectType() == trigger::TriggerJet)v->getMEhisto_N_L1()->Fill(kl1.size()); trigger::Keys::const_iterator ki = kl1.begin(); for(; ki != kl1.end(); ++ki){ double l1TrigEta = -100; double l1TrigPhi = -100; //------------------------------------------- if(v->getObjectType() == trigger::TriggerJet){ l1TrigEta = toc[*ki].eta(); l1TrigPhi = toc[*ki].phi(); v->getMEhisto_Pt_L1()->Fill(toc[*ki].pt()); if (isBarrel(toc[*ki].eta())) v->getMEhisto_PtBarrel_L1()->Fill(toc[*ki].pt()); if (isEndCap(toc[*ki].eta())) v->getMEhisto_PtEndcap_L1()->Fill(toc[*ki].pt()); if (isForward(toc[*ki].eta())) v->getMEhisto_PtForward_L1()->Fill(toc[*ki].pt()); v->getMEhisto_Eta_L1()->Fill(toc[*ki].eta()); v->getMEhisto_Phi_L1()->Fill(toc[*ki].phi()); v->getMEhisto_EtaPhi_L1()->Fill(toc[*ki].eta(),toc[*ki].phi()); } if(v->getObjectType() == trigger::TriggerMET || (v->getObjectType() == trigger::TriggerTET)){ v->getMEhisto_Pt_L1()->Fill(toc[*ki].pt()); v->getMEhisto_Phi_L1()->Fill(toc[*ki].phi()); } //----------------------------------------------- if ( hltIndex >= triggerObj_->sizeFilters() ) { edm::LogInfo("JetMETHLTOfflineSource") << "no index hlt"<< hltIndex << " of that name "; } else { const trigger::Keys & khlt = triggerObj_->filterKeys(hltIndex); if((v->getObjectType() == trigger::TriggerJet) && (ki == kl1.begin())) v->getMEhisto_N_HLT()->Fill(khlt.size()); trigger::Keys::const_iterator kj = khlt.begin(); //Define hltTrigBool for(;kj != khlt.end(); ++kj){ if(v->getObjectType() == trigger::TriggerJet){ double hltTrigEta = -100; double hltTrigPhi = -100; hltTrigEta = toc[*kj].eta(); hltTrigPhi = toc[*kj].phi(); if((deltaR(hltTrigEta, hltTrigPhi, l1TrigEta, l1TrigPhi)) < 0.4 && (v->getTriggerType().compare("DiJet_Trigger") == 0)) hltTrigBool = true; } } // kj = khlt.begin(); for(;kj != khlt.end(); ++kj){ double hltTrigEta = -100.; double hltTrigPhi = -100.; fillL1HLT = true; //MET Triggers if(v->getObjectType() == trigger::TriggerMET || (v->getObjectType() == trigger::TriggerTET)){ v->getMEhisto_Pt_HLT()->Fill(toc[*kj].pt()); v->getMEhisto_Phi_HLT()->Fill(toc[*kj].phi()); v->getMEhisto_PtCorrelation_L1HLT()->Fill(toc[*ki].pt(),toc[*kj].pt()); v->getMEhisto_PhiCorrelation_L1HLT()->Fill(toc[*ki].phi(),toc[*kj].phi()); v->getMEhisto_PtResolution_L1HLT()->Fill((toc[*ki].pt()-toc[*kj].pt())/(toc[*ki].pt())); v->getMEhisto_PhiResolution_L1HLT()->Fill((toc[*ki].phi()-toc[*kj].phi())/(toc[*ki].phi())); } //Jet Triggers if(v->getObjectType() == trigger::TriggerJet){ hltTrigEta = toc[*kj].eta(); hltTrigPhi = toc[*kj].phi(); if((deltaR(hltTrigEta, hltTrigPhi, l1TrigEta, l1TrigPhi)) < 0.4){ v->getMEhisto_PtCorrelation_L1HLT()->Fill(toc[*ki].pt(),toc[*kj].pt()); v->getMEhisto_EtaCorrelation_L1HLT()->Fill(toc[*ki].eta(),toc[*kj].eta()); v->getMEhisto_PhiCorrelation_L1HLT()->Fill(toc[*ki].phi(),toc[*kj].phi()); v->getMEhisto_PtResolution_L1HLT()->Fill((toc[*ki].pt()-toc[*kj].pt())/(toc[*ki].pt())); v->getMEhisto_EtaResolution_L1HLT()->Fill((toc[*ki].eta()-toc[*kj].eta())/(toc[*ki].eta())); v->getMEhisto_PhiResolution_L1HLT()->Fill((toc[*ki].phi()-toc[*kj].phi())/(toc[*ki].phi())); } if(((deltaR(hltTrigEta, hltTrigPhi, l1TrigEta, l1TrigPhi) < 0.4 ) || ((v->getTriggerType().compare("DiJet_Trigger") == 0) && hltTrigBool)) && !diJetFire){ v->getMEhisto_Pt_HLT()->Fill(toc[*kj].pt()); if (isBarrel(toc[*kj].eta())) v->getMEhisto_PtBarrel_HLT()->Fill(toc[*kj].pt()); if (isEndCap(toc[*kj].eta())) v->getMEhisto_PtEndcap_HLT()->Fill(toc[*kj].pt()); if (isForward(toc[*kj].eta())) v->getMEhisto_PtForward_HLT()->Fill(toc[*kj].pt()); v->getMEhisto_Eta_HLT()->Fill(toc[*kj].eta()); v->getMEhisto_Phi_HLT()->Fill(toc[*kj].phi()); v->getMEhisto_EtaPhi_HLT()->Fill(toc[*kj].eta(),toc[*kj].phi()); //Calojet if(calojetColl_.isValid() && (v->getObjectType() == trigger::TriggerJet) && (v->getPath().compare("PFJet") == 0)){ //CaloJetCollection::const_iterator jet = calojet.begin(); //for(; jet != calojet.end(); ++jet) { for(int iCalo=0; iCalo<2; iCalo++){ if(deltaR(hltTrigEta, hltTrigPhi, CaloJetEta[iCalo], CaloJetPhi[iCalo]) < 0.4){ jetsize++; if(v->getTriggerType().compare("SingleJet_Trigger") == 0){ v->getMEhisto_Pt()->Fill(CaloJetPt[iCalo]); if (isBarrel(CaloJetEta[iCalo])) v->getMEhisto_PtBarrel()->Fill(CaloJetPt[iCalo]); if (isEndCap(CaloJetEta[iCalo])) v->getMEhisto_PtEndcap()->Fill(CaloJetPt[iCalo]); if (isForward(CaloJetEta[iCalo])) v->getMEhisto_PtForward()->Fill(CaloJetPt[iCalo]); // v->getMEhisto_Eta()->Fill(CaloJetEta[iCalo]); v->getMEhisto_Phi()->Fill(CaloJetPhi[iCalo]); v->getMEhisto_EtaPhi()->Fill(CaloJetEta[iCalo],CaloJetPhi[iCalo]); // v->getMEhisto_PtCorrelation_HLTRecObj()->Fill(toc[*kj].pt(),CaloJetPt[iCalo]); v->getMEhisto_EtaCorrelation_HLTRecObj()->Fill(toc[*kj].eta(),CaloJetEta[iCalo]); v->getMEhisto_PhiCorrelation_HLTRecObj()->Fill(toc[*kj].phi(),CaloJetPhi[iCalo]); // v->getMEhisto_PtResolution_HLTRecObj()->Fill((toc[*kj].pt()-CaloJetPt[iCalo])/(toc[*kj].pt())); v->getMEhisto_EtaResolution_HLTRecObj()->Fill((toc[*kj].eta()-CaloJetEta[iCalo])/(toc[*kj].eta())); v->getMEhisto_PhiResolution_HLTRecObj()->Fill((toc[*kj].phi()-CaloJetPhi[iCalo])/(toc[*kj].phi())); } //------------------------------------------------------- if((v->getTriggerType().compare("DiJet_Trigger") == 0)){ jetPhiVec.push_back(CaloJetPhi[iCalo]); jetPtVec.push_back(CaloJetPt[iCalo]); jetEtaVec.push_back(CaloJetEta[iCalo]); jetPxVec.push_back(CaloJetPx[iCalo]); jetPyVec.push_back(CaloJetPy[iCalo]); // hltPhiVec.push_back(toc[*kj].phi()); hltPtVec.push_back(toc[*kj].pt()); hltEtaVec.push_back(toc[*kj].eta()); hltPxVec.push_back(toc[*kj].px()); hltPyVec.push_back(toc[*kj].py()); } }// matching jet }// CaloJet Loop }// valid calojet collection, with calojet trigger //PFJet trigger if(pfjetColl_.isValid() && (v->getObjectType() == trigger::TriggerJet) && (v->getPath().compare("PFJet") != 0)){ //PFJetCollection::const_iterator jet = pfjet.begin(); //for(; jet != pfjet.end(); ++jet){ for(int iPF=0; iPF<2; iPF++){ if(deltaR(hltTrigEta, hltTrigPhi, PFJetEta[iPF], PFJetPhi[iPF]) < 0.4){ jetsize++; if(v->getTriggerType().compare("SingleJet_Trigger") == 0){ v->getMEhisto_Pt()->Fill(PFJetPt[iPF]); if (isBarrel(PFJetEta[iPF])) v->getMEhisto_PtBarrel()->Fill(PFJetPt[iPF]); if (isEndCap(PFJetEta[iPF])) v->getMEhisto_PtEndcap()->Fill(PFJetPt[iPF]); if (isForward(PFJetEta[iPF])) v->getMEhisto_PtForward()->Fill(PFJetPt[iPF]); // v->getMEhisto_Eta()->Fill(PFJetEta[iPF]); v->getMEhisto_Phi()->Fill(PFJetPhi[iPF]); v->getMEhisto_EtaPhi()->Fill(PFJetEta[iPF],PFJetPhi[iPF]); // v->getMEhisto_PtCorrelation_HLTRecObj()->Fill(toc[*kj].pt(),PFJetPt[iPF]); v->getMEhisto_EtaCorrelation_HLTRecObj()->Fill(toc[*kj].eta(),PFJetEta[iPF]); v->getMEhisto_PhiCorrelation_HLTRecObj()->Fill(toc[*kj].phi(),PFJetPhi[iPF]); // v->getMEhisto_PtResolution_HLTRecObj()->Fill((toc[*kj].pt()-PFJetPt[iPF])/(toc[*kj].pt())); v->getMEhisto_EtaResolution_HLTRecObj()->Fill((toc[*kj].eta()-PFJetEta[iPF])/(toc[*kj].eta())); v->getMEhisto_PhiResolution_HLTRecObj()->Fill((toc[*kj].phi()-PFJetPhi[iPF])/(toc[*kj].phi())); } //------------------------------------------------------- if((v->getTriggerType().compare("DiJet_Trigger") == 0)){ jetPhiVec.push_back(PFJetPhi[iPF]); jetPtVec.push_back(PFJetPt[iPF]); jetEtaVec.push_back(PFJetEta[iPF]); jetPxVec.push_back(PFJetPx[iPF]); jetPyVec.push_back(PFJetPy[iPF]); // hltPhiVec.push_back(toc[*kj].phi()); hltPtVec.push_back(toc[*kj].pt()); hltEtaVec.push_back(toc[*kj].eta()); hltPxVec.push_back(toc[*kj].px()); hltPyVec.push_back(toc[*kj].py()); } }// matching jet }//PFJet loop }//valid pfjet collection, with pfjet trigger // }// hlt matching with l1 }// jet trigger //------------------------------------------------------ if(calometColl_.isValid() && ((v->getObjectType() == trigger::TriggerMET) || (v->getObjectType() == trigger::TriggerTET)) && (v->getPath().find("HLT_PFMET")==std::string::npos)){ const CaloMETCollection *calometcol = calometColl_.product(); const CaloMET met = calometcol->front(); // v->getMEhisto_Pt()->Fill(met.et()); v->getMEhisto_Phi()->Fill(met.phi()); // v->getMEhisto_PtCorrelation_HLTRecObj()->Fill(toc[*kj].et(),met.et()); v->getMEhisto_PhiCorrelation_HLTRecObj()->Fill(toc[*kj].phi(),met.phi()); v->getMEhisto_PtResolution_HLTRecObj()->Fill((toc[*kj].et()-met.et())/(toc[*kj].et())); v->getMEhisto_PhiResolution_HLTRecObj()->Fill((toc[*kj].phi()-met.phi())/(toc[*kj].phi())); } //-------------------------------------------------------- if(pfmetColl_.isValid() && ((v->getObjectType() == trigger::TriggerMET) || (v->getObjectType() == trigger::TriggerTET)) && (v->getPath().find("HLT_PFMET")!=std::string::npos)){ const PFMETCollection *pfmetcol = pfmetColl_.product(); const PFMET pfmet = pfmetcol->front(); // v->getMEhisto_Pt()->Fill(pfmet.et()); v->getMEhisto_Phi()->Fill(pfmet.phi()); // v->getMEhisto_PtCorrelation_HLTRecObj()->Fill(toc[*kj].et(),pfmet.et()); v->getMEhisto_PhiCorrelation_HLTRecObj()->Fill(toc[*kj].phi(),pfmet.phi()); v->getMEhisto_PtResolution_HLTRecObj()->Fill((toc[*kj].et()-pfmet.et())/(toc[*kj].et())); v->getMEhisto_PhiResolution_HLTRecObj()->Fill((toc[*kj].phi()-pfmet.phi())/(toc[*kj].phi())); } }//Loop over HLT trigger candidates if((v->getTriggerType().compare("DiJet_Trigger") == 0)) diJetFire = true; }// Valid hlt trigger object }// Loop over L1 objects }// Valid L1 trigger object v->getMEhisto_N()->Fill(jetsize); //-------------------------------------------------------- if((v->getTriggerType().compare("DiJet_Trigger") == 0) && jetPtVec.size() >1){ double AveJetPt = (jetPtVec[0] + jetPtVec[1])/2; double AveJetEta = (jetEtaVec[0] + jetEtaVec[1])/2; double JetDelPhi = deltaPhi(jetPhiVec[0],jetPhiVec[1]); double AveHLTPt = (hltPtVec[0] + hltPtVec[1])/2; double AveHLTEta = (hltEtaVec[0] + hltEtaVec[1])/2; double HLTDelPhi = deltaPhi(hltPhiVec[0],hltPhiVec[1]); v->getMEhisto_AveragePt_RecObj()->Fill(AveJetPt); v->getMEhisto_AverageEta_RecObj()->Fill(AveJetEta); v->getMEhisto_DeltaPhi_RecObj()->Fill(JetDelPhi); // v->getMEhisto_AveragePt_HLTObj()->Fill(AveHLTPt); v->getMEhisto_AverageEta_HLTObj()->Fill(AveHLTEta); v->getMEhisto_DeltaPhi_HLTObj()->Fill(HLTDelPhi); } //----------------------------------------------------- if(v->getPath().find("L1") != std::string::npos && !fillL1HLT){ if ( l1Index >= triggerObj_->sizeFilters() ) { edm::LogInfo("JetMETHLTOfflineSource") << "no index "<< l1Index << " of that name "<<l1Tag; } else { //l1TrigBool = true; const trigger::Keys & kl1 = triggerObj_->filterKeys(l1Index); for( trigger::Keys::const_iterator ki = kl1.begin(); ki != kl1.end(); ++ki){ double l1TrigEta = toc[*ki].eta(); double l1TrigPhi = toc[*ki].phi(); if(calojetColl_.isValid() && (v->getObjectType() == trigger::TriggerJet) && (v->getTriggerType().compare("SingleJet_Trigger") == 0) ){ for(CaloJetCollection::const_iterator jet = calojet.begin(); jet != calojet.end(); ++jet ) { double jetEta = jet->eta(); double jetPhi = jet->phi(); if(deltaR(l1TrigEta, l1TrigPhi, jetEta, jetPhi) < 0.4){ jetsize++; v->getMEhisto_Pt()->Fill(jet->pt()); if (isBarrel(jet->eta())) v->getMEhisto_PtBarrel()->Fill(jet->pt()); if (isEndCap(jet->eta())) v->getMEhisto_PtEndcap()->Fill(jet->pt()); if (isForward(jet->eta())) v->getMEhisto_PtForward()->Fill(jet->pt()); // v->getMEhisto_Eta()->Fill(jet->eta()); v->getMEhisto_Phi()->Fill(jet->phi()); v->getMEhisto_EtaPhi()->Fill(jet->eta(),jet->phi()); // v->getMEhisto_PtCorrelation_HLTRecObj()->Fill(toc[*ki].pt(),jet->pt()); v->getMEhisto_EtaCorrelation_HLTRecObj()->Fill(toc[*ki].eta(),jet->eta()); v->getMEhisto_PhiCorrelation_HLTRecObj()->Fill(toc[*ki].phi(),jet->phi()); // v->getMEhisto_PtResolution_HLTRecObj()->Fill((toc[*ki].pt()-jet->pt())/(toc[*ki].pt())); v->getMEhisto_EtaResolution_HLTRecObj()->Fill((toc[*ki].eta()-jet->eta())/(toc[*ki].eta())); v->getMEhisto_PhiResolution_HLTRecObj()->Fill((toc[*ki].phi()-jet->phi())/(toc[*ki].phi())); }// matching jet }// Jet Loop v->getMEhisto_N()->Fill(jetsize); }// valid Jet collection if(calometColl_.isValid() && ((v->getObjectType() == trigger::TriggerMET)|| (v->getObjectType() == trigger::TriggerTET))){ const CaloMETCollection *calometcol = calometColl_.product(); const CaloMET met = calometcol->front(); v->getMEhisto_Pt()->Fill(met.pt()); v->getMEhisto_Phi()->Fill(met.phi()); // v->getMEhisto_PtCorrelation_HLTRecObj()->Fill(toc[*ki].pt(),met.pt()); v->getMEhisto_PhiCorrelation_HLTRecObj()->Fill(toc[*ki].phi(),met.phi()); v->getMEhisto_PtResolution_HLTRecObj()->Fill((toc[*ki].pt()-met.pt())/(toc[*ki].pt())); v->getMEhisto_PhiResolution_HLTRecObj()->Fill((toc[*ki].phi()-met.phi())/(toc[*ki].phi())); }// valid MET Collection }// Loop over keys }// valid object }// L1 is fired but not HLT }//Loop all paths }//if(muTrig) }
void JetMETHLTOfflineSource::fillMEforMonTriggerSummary | ( | const edm::Event & | iEvent, |
const edm::EventSetup & | iSetup | ||
) | [private, virtual] |
Definition at line 306 of file JetMETHLTOfflineSource.cc.
References correlation_All, correlation_AllWrtMB, correlation_AllWrtMu, gather_cfg::cout, MonitorElement::Fill(), edm::Event::getByLabel(), hltConfig_, hltPathsAll_, i, isHLTPathAccepted(), j, MBTrigPaths_, MuonTrigPaths_, NVertices, timingPdfMaker::pathname, PVZ, rate_All, rate_AllWrtMB, rate_AllWrtMu, runStandalone_, HLTConfigProvider::size(), HLTConfigProvider::triggerName(), TriggerPosition(), v, verbose_, and w().
Referenced by analyze().
{ bool muTrig = false; for(size_t i=0;i<MuonTrigPaths_.size();++i){ const unsigned int nPath(hltConfig_.size()); for (unsigned int j=0; j!=nPath; ++j) { std::string pathname = hltConfig_.triggerName(j); if(pathname.find(MuonTrigPaths_[i]) != std::string::npos){ if(isHLTPathAccepted(pathname)){ muTrig = true; if(verbose_) cout<<"fillMEforMonTriggerSummary: Muon Match"<<endl; } } if(muTrig) break; } if(muTrig) break; } bool mbTrig = false; for(size_t i=0;i<MBTrigPaths_.size();++i){ const unsigned int nPath(hltConfig_.size()); for (unsigned int j=0; j!=nPath; ++j) { std::string pathname = hltConfig_.triggerName(j); if(pathname.find(MBTrigPaths_[i]) != std::string::npos){ if(isHLTPathAccepted(pathname)){ mbTrig = true; if(verbose_) cout<<"fillMEforMonTriggerSummary: MinBias Match"<<endl; } } if(mbTrig) break; } if(mbTrig) break; } PathInfoCollection::iterator v = hltPathsAll_.begin(); for(; v!= hltPathsAll_.end(); ++v ){ bool trigFirst= false; double binV = TriggerPosition(v->getPath()); if(isHLTPathAccepted(v->getPath())) trigFirst = true; if(!trigFirst)continue; if(trigFirst){ rate_All->Fill(binV); correlation_All->Fill(binV,binV); if(muTrig && runStandalone_){ rate_AllWrtMu->Fill(binV); correlation_AllWrtMu->Fill(binV,binV); } if(mbTrig && runStandalone_){ rate_AllWrtMB->Fill(binV); correlation_AllWrtMB->Fill(binV,binV); } } for(PathInfoCollection::iterator w = v+1; w!= hltPathsAll_.end(); ++w ){ bool trigSec = false; double binW = TriggerPosition(w->getPath()); if(isHLTPathAccepted(w->getPath()))trigSec = true; if(trigSec && trigFirst){ correlation_All->Fill(binV,binW); if(muTrig && runStandalone_) correlation_AllWrtMu->Fill(binV,binW); if(mbTrig && runStandalone_) correlation_AllWrtMB->Fill(binV,binW); } if(!trigSec && trigFirst){ correlation_All->Fill(binW,binV); if(muTrig && runStandalone_) correlation_AllWrtMu->Fill(binW,binV); if(mbTrig && runStandalone_) correlation_AllWrtMB->Fill(binW,binV); } } } //Vertex edm::Handle<VertexCollection> Vtx; iEvent.getByLabel ("offlinePrimaryVertices",Vtx); int vtxcnt=0; for (VertexCollection::const_iterator itv=Vtx->begin(); itv!=Vtx->end(); itv++){ //if(vtxcnt>=20) break; PVZ->Fill(itv->z()); //chi2vtx[vtxcnt] = itv->chi2(); //ndofvtx[vtxcnt] = itv->ndof(); //ntrkvtx[vtxcnt] = itv->tracksSize(); vtxcnt++; } NVertices->Fill(vtxcnt); }
void JetMETHLTOfflineSource::fillMEforTriggerNTfired | ( | ) | [private, virtual] |
Definition at line 392 of file JetMETHLTOfflineSource.cc.
References calojet, calojetColl_, calometColl_, SiPixelRawToDigiRegional_cfi::deltaPhi, hltPathsAll_, getHLTprescales::index, edm::HandleBase::isValid(), metsig::jet, patRefSel_triggerSelection_cff::l1Tag, CaloMET_cfi::met, processname_, edm::Handle< T >::product(), reco::LeafCandidate::pt(), edm::TriggerNames::size(), edm::TriggerNames::triggerIndex(), triggerNames_, triggerObj_, triggerResults_, and v.
Referenced by analyze().
{ //int npath; if(&triggerResults_) { /*npath = triggerResults_->size();*/ } else { return; } // for(PathInfoCollection::iterator v = hltPathsAll_.begin(); v!= hltPathsAll_.end(); ++v ){ unsigned index = triggerNames_.triggerIndex(v->getPath()); if (index < triggerNames_.size() ){ v->getMEhisto_TriggerSummary()->Fill(0.); edm::InputTag l1Tag(v->getl1Path(),"",processname_); const int l1Index = triggerObj_->filterIndex(l1Tag); bool l1found = false; if(l1Index < triggerObj_->sizeFilters() ) l1found = true; if(!l1found)v->getMEhisto_TriggerSummary()->Fill(1.); if(!l1found && !(triggerResults_->accept(index)))v->getMEhisto_TriggerSummary()->Fill(2.); if(!l1found && (triggerResults_->accept(index)))v->getMEhisto_TriggerSummary()->Fill(3.); if(l1found)v->getMEhisto_TriggerSummary()->Fill(4.); if(l1found && (triggerResults_->accept(index)))v->getMEhisto_TriggerSummary()->Fill(5.); if(l1found && !(triggerResults_->accept(index)))v->getMEhisto_TriggerSummary()->Fill(6.); if(!(triggerResults_->accept(index)) && l1found){ //cout<<v->getTriggerType()<<endl; if((v->getTriggerType().compare("SingleJet_Trigger") == 0) && (calojetColl_.isValid()) && calojet.size()){ CaloJetCollection::const_iterator jet = calojet.begin(); v->getMEhisto_JetPt()->Fill(jet->pt()); v->getMEhisto_EtavsPt()->Fill(jet->eta(),jet->pt()); v->getMEhisto_PhivsPt()->Fill(jet->phi(),jet->pt()); } // single jet trigger is not fired if((v->getTriggerType().compare("DiJet_Trigger") == 0) && calojetColl_.isValid() && calojet.size()){ v->getMEhisto_JetSize()->Fill(calojet.size()); if (calojet.size()>=2){ CaloJetCollection::const_iterator jet = calojet.begin(); CaloJetCollection::const_iterator jet2= calojet.begin(); jet2++; double jet3pt = 0.; if(calojet.size()>2){ CaloJetCollection::const_iterator jet3 = jet2++; jet3pt = jet3->pt(); } v->getMEhisto_Pt12()->Fill((jet->pt()+jet2->pt())/2.); v->getMEhisto_Eta12()->Fill((jet->eta()+jet2->eta())/2.); v->getMEhisto_Phi12()->Fill(deltaPhi(jet->phi(),jet2->phi())); v->getMEhisto_Pt3()->Fill(jet3pt); v->getMEhisto_Pt12Pt3()->Fill((jet->pt()+jet2->pt())/2., jet3pt); v->getMEhisto_Pt12Phi12()->Fill((jet->pt()+jet2->pt())/2., deltaPhi(jet->phi(),jet2->phi())); } }// di jet trigger is not fired if(((v->getTriggerType().compare("MET_Trigger") == 0)|| (v->getTriggerType().compare("TET_Trigger") == 0)) && calometColl_.isValid() ){ const CaloMETCollection *calometcol = calometColl_.product(); const CaloMET met = calometcol->front(); v->getMEhisto_JetPt()->Fill(met.pt()); }//MET trigger is not fired } // L1 is fired }// }// trigger not fired }
const std::string JetMETHLTOfflineSource::getL1ConditionModuleName | ( | const std::string & | pathname | ) | [private] |
Definition at line 2510 of file TrigResRateMon.cc.
References TrigResRateMon::hltConfig_, HLTConfigProvider::moduleLabels(), and HLTConfigProvider::moduleType().
Referenced by beginRun().
{ // find L1 condition for numpath with numpath objecttype // find PSet for L1 global seed for numpath, // list module labels for numpath string l1pathname = "dummy"; vector<string> numpathmodules = hltConfig_.moduleLabels(pathname); for(vector<string>::iterator numpathmodule = numpathmodules.begin(); numpathmodule!= numpathmodules.end(); ++numpathmodule ) { if (hltConfig_.moduleType(*numpathmodule) == "HLTLevel1GTSeed") { l1pathname = *numpathmodule; break; } } // end for return l1pathname; }
void JetMETHLTOfflineSource::histobooking | ( | const edm::EventSetup & | c | ) | [private] |
bool JetMETHLTOfflineSource::isBarrel | ( | double | eta | ) | [private, virtual] |
Definition at line 6310 of file JetMETHLTOfflineSource.cc.
References convertSQLitetoXML_cfg::output.
Referenced by fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTrigger(), and fillMEforMonAllTriggerwrtMuonTrigger().
bool JetMETHLTOfflineSource::isEndCap | ( | double | eta | ) | [private, virtual] |
Definition at line 6317 of file JetMETHLTOfflineSource.cc.
References convertSQLitetoXML_cfg::output.
Referenced by fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTrigger(), and fillMEforMonAllTriggerwrtMuonTrigger().
bool JetMETHLTOfflineSource::isForward | ( | double | eta | ) | [private, virtual] |
Definition at line 6324 of file JetMETHLTOfflineSource.cc.
References convertSQLitetoXML_cfg::output.
Referenced by fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTrigger(), and fillMEforMonAllTriggerwrtMuonTrigger().
bool JetMETHLTOfflineSource::isHLTPathAccepted | ( | std::string | pathName | ) | [private, virtual] |
Definition at line 6342 of file JetMETHLTOfflineSource.cc.
References getHLTprescales::index, convertSQLitetoXML_cfg::output, edm::TriggerNames::size(), edm::TriggerNames::triggerIndex(), triggerNames_, and triggerResults_.
Referenced by fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTrigger(), fillMEforMonAllTriggerwrtMuonTrigger(), and fillMEforMonTriggerSummary().
{ // triggerResults_, triggerNames_ has to be defined first before calling this method bool output=false; if(&triggerResults_) { unsigned index = triggerNames_.triggerIndex(pathName); if(index < triggerNames_.size() && triggerResults_->accept(index)) output = true; } return output; }
bool JetMETHLTOfflineSource::isTriggerObjectFound | ( | std::string | objectName | ) | [private, virtual] |
Definition at line 6373 of file JetMETHLTOfflineSource.cc.
References getHLTprescales::index, gen::k, convertSQLitetoXML_cfg::output, processname_, and triggerObj_.
{ // processname_, triggerObj_ has to be defined before calling this method bool output=false; edm::InputTag testTag(objectName,"",processname_); const int index = triggerObj_->filterIndex(testTag); if ( index >= triggerObj_->sizeFilters() ) { edm::LogInfo("JetMETHLTOfflineSource") << "no index "<< index << " of that name "; } else { const trigger::Keys & k = triggerObj_->filterKeys(index); if (k.size()) output=true; } return output; }
double JetMETHLTOfflineSource::TriggerPosition | ( | std::string | trigName | ) | [private, virtual] |
Definition at line 6353 of file JetMETHLTOfflineSource.cc.
References MonitorElement::getTH1(), pileupCalc::nbins, and rate_All.
Referenced by fillMEforMonTriggerSummary().
{ int nbins = rate_All->getTH1()->GetNbinsX(); double binVal = -100; for(int ibin=1; ibin<nbins+1; ibin++) { const char * binLabel = rate_All->getTH1()->GetXaxis()->GetBinLabel(ibin); if(binLabel[0]=='\0')continue; // std::string binLabel_str = string(binLabel); // if(binLabel_str.compare(trigName)!=0)continue; if(trigName.compare(binLabel)!=0)continue; if(trigName.compare(binLabel)==0){ binVal = rate_All->getTH1()->GetBinCenter(ibin); break; } } return binVal; }
bool JetMETHLTOfflineSource::validPathHLT | ( | std::string | path | ) | [private, virtual] |
Definition at line 6331 of file JetMETHLTOfflineSource.cc.
References hltConfig_, j, convertSQLitetoXML_cfg::output, timingPdfMaker::pathname, HLTConfigProvider::size(), and HLTConfigProvider::triggerName().
{ // hltConfig_ has to be defined first before calling this method bool output=false; for (unsigned int j=0; j!=hltConfig_.size(); ++j) { if (hltConfig_.triggerName(j) == pathname ) output=true; } return output; }
double JetMETHLTOfflineSource::_fEMF [private] |
Definition at line 126 of file JetMETHLTOfflineSource.h.
Referenced by fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), and JetMETHLTOfflineSource().
double JetMETHLTOfflineSource::_feta [private] |
Definition at line 127 of file JetMETHLTOfflineSource.h.
Referenced by fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), and JetMETHLTOfflineSource().
double JetMETHLTOfflineSource::_fHPD [private] |
Definition at line 128 of file JetMETHLTOfflineSource.h.
Referenced by fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), and JetMETHLTOfflineSource().
double JetMETHLTOfflineSource::_max_CEMF [private] |
Definition at line 138 of file JetMETHLTOfflineSource.h.
Referenced by fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), and JetMETHLTOfflineSource().
double JetMETHLTOfflineSource::_max_CHEF [private] |
Definition at line 134 of file JetMETHLTOfflineSource.h.
Referenced by fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), and JetMETHLTOfflineSource().
double JetMETHLTOfflineSource::_max_NEMF [private] |
Definition at line 136 of file JetMETHLTOfflineSource.h.
Referenced by fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), and JetMETHLTOfflineSource().
double JetMETHLTOfflineSource::_max_NHEF [private] |
Definition at line 132 of file JetMETHLTOfflineSource.h.
Referenced by fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), and JetMETHLTOfflineSource().
double JetMETHLTOfflineSource::_min_CEMF [private] |
Definition at line 137 of file JetMETHLTOfflineSource.h.
Referenced by fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), and JetMETHLTOfflineSource().
double JetMETHLTOfflineSource::_min_CHEF [private] |
Definition at line 133 of file JetMETHLTOfflineSource.h.
Referenced by fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), and JetMETHLTOfflineSource().
double JetMETHLTOfflineSource::_min_NEMF [private] |
Definition at line 135 of file JetMETHLTOfflineSource.h.
Referenced by fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), and JetMETHLTOfflineSource().
double JetMETHLTOfflineSource::_min_NHEF [private] |
Definition at line 131 of file JetMETHLTOfflineSource.h.
Referenced by fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), and JetMETHLTOfflineSource().
double JetMETHLTOfflineSource::_n90Hits [private] |
Definition at line 129 of file JetMETHLTOfflineSource.h.
Referenced by fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), and JetMETHLTOfflineSource().
double JetMETHLTOfflineSource::_pfMHT [private] |
Definition at line 130 of file JetMETHLTOfflineSource.h.
Referenced by fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), and fillMEforEffWrtMuTrigger().
Definition at line 159 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTriggerwrtMuonTrigger(), and fillMEforTriggerNTfired().
Definition at line 147 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTrigger(), fillMEforMonAllTriggerwrtMuonTrigger(), and fillMEforTriggerNTfired().
std::string JetMETHLTOfflineSource::CaloJetCorService_ [private] |
Definition at line 152 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), and JetMETHLTOfflineSource().
double JetMETHLTOfflineSource::CaloJetEMF[2] [private] |
Definition at line 171 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), and fillMEforEffWrtMuTrigger().
double JetMETHLTOfflineSource::CaloJetEta[2] [private] |
Definition at line 169 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTrigger(), and fillMEforMonAllTriggerwrtMuonTrigger().
double JetMETHLTOfflineSource::CaloJetfHPD[2] [private] |
Definition at line 172 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), and fillMEforEffWrtMuTrigger().
double JetMETHLTOfflineSource::CaloJetn90[2] [private] |
Definition at line 173 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), and fillMEforEffWrtMuTrigger().
double JetMETHLTOfflineSource::CaloJetPhi[2] [private] |
Definition at line 170 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTrigger(), and fillMEforMonAllTriggerwrtMuonTrigger().
double JetMETHLTOfflineSource::CaloJetPt[2] [private] |
Definition at line 168 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTrigger(), and fillMEforMonAllTriggerwrtMuonTrigger().
double JetMETHLTOfflineSource::CaloJetPx[2] [private] |
Definition at line 166 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforMonAllTrigger(), and fillMEforMonAllTriggerwrtMuonTrigger().
double JetMETHLTOfflineSource::CaloJetPy[2] [private] |
Definition at line 167 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforMonAllTrigger(), and fillMEforMonAllTriggerwrtMuonTrigger().
Definition at line 142 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), and JetMETHLTOfflineSource().
Definition at line 148 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTrigger(), fillMEforMonAllTriggerwrtMuonTrigger(), and fillMEforTriggerNTfired().
Definition at line 143 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), and JetMETHLTOfflineSource().
Definition at line 999 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), and fillMEforMonTriggerSummary().
Definition at line 1001 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), and fillMEforMonTriggerSummary().
Definition at line 1000 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), and fillMEforMonTriggerSummary().
std::vector<std::pair<std::string, std::string> > JetMETHLTOfflineSource::custompathnamepairs_ [private] |
Definition at line 157 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), and JetMETHLTOfflineSource().
DQMStore* JetMETHLTOfflineSource::dbe [private] |
Definition at line 102 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), and JetMETHLTOfflineSource().
std::string JetMETHLTOfflineSource::dirname_ [private] |
Definition at line 110 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), and JetMETHLTOfflineSource().
Definition at line 161 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTriggerwrtMuonTrigger(), fillMEforMonTriggerSummary(), and validPathHLT().
Definition at line 989 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), fillMEforMonAllTrigger(), fillMEforMonTriggerSummary(), and fillMEforTriggerNTfired().
Definition at line 988 of file JetMETHLTOfflineSource.h.
Referenced by beginRun().
Definition at line 990 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), and fillMEforMonAllTriggerwrtMuonTrigger().
Definition at line 991 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), and fillMEforEffAllTrigger().
Definition at line 993 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), and fillMEforEffWrtMBTrigger().
Definition at line 992 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), and fillMEforEffWrtMuTrigger().
bool JetMETHLTOfflineSource::isSetup_ [private] |
Definition at line 123 of file JetMETHLTOfflineSource.h.
Referenced by beginRun().
Definition at line 113 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), endJob(), and JetMETHLTOfflineSource().
std::vector<std::string> JetMETHLTOfflineSource::MBTrigPaths_ [private] |
Definition at line 107 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), fillMEforEffWrtMBTrigger(), fillMEforMonTriggerSummary(), and JetMETHLTOfflineSource().
std::vector<std::string> JetMETHLTOfflineSource::MuonTrigPaths_ [private] |
Definition at line 106 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTriggerwrtMuonTrigger(), fillMEforMonTriggerSummary(), and JetMETHLTOfflineSource().
bool JetMETHLTOfflineSource::nameForEff_ [private] |
Definition at line 124 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), and JetMETHLTOfflineSource().
int JetMETHLTOfflineSource::nev_ [private] |
Definition at line 101 of file JetMETHLTOfflineSource.h.
MonitorElement* JetMETHLTOfflineSource::NVertices [private] |
Definition at line 1003 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), and fillMEforMonTriggerSummary().
std::vector<std::string> JetMETHLTOfflineSource::pathFilter_ [private] |
Definition at line 155 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), and JetMETHLTOfflineSource().
std::vector<std::string> JetMETHLTOfflineSource::pathRejectKeyword_ [private] |
Definition at line 156 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), and JetMETHLTOfflineSource().
Definition at line 160 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), and fillMEforEffWrtMuTrigger().
double JetMETHLTOfflineSource::PFJetCEMF[2] [private] |
Definition at line 183 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), and fillMEforEffWrtMuTrigger().
double JetMETHLTOfflineSource::PFJetCHEF[2] [private] |
Definition at line 181 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), and fillMEforEffWrtMuTrigger().
Definition at line 149 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTrigger(), and fillMEforMonAllTriggerwrtMuonTrigger().
std::string JetMETHLTOfflineSource::PFJetCorService_ [private] |
Definition at line 153 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), and JetMETHLTOfflineSource().
double JetMETHLTOfflineSource::PFJetEta[2] [private] |
Definition at line 178 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTrigger(), and fillMEforMonAllTriggerwrtMuonTrigger().
double JetMETHLTOfflineSource::PFJetNEMF[2] [private] |
Definition at line 182 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), and fillMEforEffWrtMuTrigger().
double JetMETHLTOfflineSource::PFJetNHEF[2] [private] |
Definition at line 180 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), and fillMEforEffWrtMuTrigger().
double JetMETHLTOfflineSource::PFJetPhi[2] [private] |
Definition at line 179 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTrigger(), and fillMEforMonAllTriggerwrtMuonTrigger().
double JetMETHLTOfflineSource::PFJetPt[2] [private] |
Definition at line 177 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTrigger(), and fillMEforMonAllTriggerwrtMuonTrigger().
double JetMETHLTOfflineSource::PFJetPx[2] [private] |
Definition at line 175 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforMonAllTrigger(), and fillMEforMonAllTriggerwrtMuonTrigger().
double JetMETHLTOfflineSource::PFJetPy[2] [private] |
Definition at line 176 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforMonAllTrigger(), and fillMEforMonAllTriggerwrtMuonTrigger().
Definition at line 144 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), and JetMETHLTOfflineSource().
Definition at line 150 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTrigger(), and fillMEforMonAllTriggerwrtMuonTrigger().
Definition at line 145 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), and JetMETHLTOfflineSource().
double JetMETHLTOfflineSource::pfMHTx_All [private] |
Definition at line 185 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), and fillMEforEffWrtMuTrigger().
double JetMETHLTOfflineSource::pfMHTy_All [private] |
Definition at line 186 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), and fillMEforEffWrtMuTrigger().
bool JetMETHLTOfflineSource::plotAll_ [private] |
Definition at line 117 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), beginRun(), and JetMETHLTOfflineSource().
bool JetMETHLTOfflineSource::plotAllwrtMu_ [private] |
Definition at line 118 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), beginRun(), and JetMETHLTOfflineSource().
bool JetMETHLTOfflineSource::plotEff_ [private] |
Definition at line 119 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), beginRun(), and JetMETHLTOfflineSource().
bool JetMETHLTOfflineSource::plotEffwrtMB_ [private] |
Definition at line 121 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), beginRun(), and JetMETHLTOfflineSource().
bool JetMETHLTOfflineSource::plotEffwrtMu_ [private] |
Definition at line 120 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), beginRun(), and JetMETHLTOfflineSource().
std::vector<int> JetMETHLTOfflineSource::prescUsed_ [private] |
Definition at line 108 of file JetMETHLTOfflineSource.h.
std::string JetMETHLTOfflineSource::processname_ [private] |
Definition at line 111 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTrigger(), fillMEforMonAllTriggerwrtMuonTrigger(), fillMEforTriggerNTfired(), isTriggerObjectFound(), and JetMETHLTOfflineSource().
MonitorElement* JetMETHLTOfflineSource::PVZ [private] |
Definition at line 1002 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), and fillMEforMonTriggerSummary().
MonitorElement* JetMETHLTOfflineSource::rate_All [private] |
Definition at line 995 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), fillMEforMonTriggerSummary(), and TriggerPosition().
Definition at line 997 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), and fillMEforMonTriggerSummary().
Definition at line 996 of file JetMETHLTOfflineSource.h.
Referenced by beginRun(), and fillMEforMonTriggerSummary().
bool JetMETHLTOfflineSource::runStandalone_ [private] |
Definition at line 116 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), beginRun(), fillMEforMonTriggerSummary(), and JetMETHLTOfflineSource().
Definition at line 190 of file JetMETHLTOfflineSource.h.
MonitorElement* JetMETHLTOfflineSource::total_ [private] |
Definition at line 104 of file JetMETHLTOfflineSource.h.
Definition at line 163 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforTriggerNTfired(), and isHLTPathAccepted().
Definition at line 164 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTrigger(), fillMEforMonAllTriggerwrtMuonTrigger(), fillMEforTriggerNTfired(), and isTriggerObjectFound().
Definition at line 162 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTrigger(), fillMEforMonAllTriggerwrtMuonTrigger(), fillMEforTriggerNTfired(), and isHLTPathAccepted().
Definition at line 141 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), and JetMETHLTOfflineSource().
Definition at line 140 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), and JetMETHLTOfflineSource().
bool JetMETHLTOfflineSource::verbose_ [private] |
Definition at line 115 of file JetMETHLTOfflineSource.h.
Referenced by analyze(), beginRun(), endRun(), fillMEforEffAllTrigger(), fillMEforEffWrtMBTrigger(), fillMEforEffWrtMuTrigger(), fillMEforMonAllTriggerwrtMuonTrigger(), fillMEforMonTriggerSummary(), and JetMETHLTOfflineSource().