44 outputMEsInRootFile =
parameters.getParameter<
bool>(
"OutputMEsInRootFile");
65 jetID_ValueMapToken_= consumes< edm::ValueMap<reco::JetID> >(inputJetIDValueMap);
71 ptThreshold_ =
parameters.getParameter<
double>(
"ptThreshold");
75 pfMetToken_= consumes<reco::PFMETCollection>(
edm::InputTag(metCollectionLabel_));
78 caloMetToken_= consumes<reco::CaloMETCollection>(
edm::InputTag(metCollectionLabel_));
84 fill_met_high_level_histo =
parameters.getParameter<
bool>(
"fillMetHighLevel");
86 hTriggerLabelsIsSet_ =
false;
95 bypassAllPVChecks_ = cleaningParameters_.getParameter<
bool>(
"bypassAllPVChecks");
96 bypassAllDCSChecks_ = cleaningParameters_.getParameter<
bool>(
"bypassAllDCSChecks");
97 runcosmics_ =
parameters.getUntrackedParameter<
bool>(
"runcosmics");
98 vertexTag_ = cleaningParameters_.getParameter<
edm::InputTag>(
"vertexCollection");
99 vertexToken_ = consumes<std::vector<reco::Vertex> >(
edm::InputTag(vertexTag_));
102 gtTag_ = cleaningParameters_.getParameter<
edm::InputTag>(
"gtLabel");
103 gtToken_= consumes<L1GlobalTriggerReadoutRecord>(
edm::InputTag(gtTag_));
118 if (isCaloMet_) caloJetsToken_ = consumes<reco::CaloJetCollection>(jetCollectionLabel_);
120 if (isPFMet_) pfJetsToken_ = consumes<reco::PFJetCollection>(jetCollectionLabel_);
123 HcalNoiseRBXToken_ = consumes<reco::HcalNoiseRBXCollection>(hcalNoiseRBXCollectionTag_);
126 beamHaloSummaryToken_ = consumes<BeamHaloSummary>(beamHaloSummaryTag_);
128 hbheNoiseFilterResultToken_=consumes<bool>(hbheNoiseFilterResultTag_);
131 nbinsPV_ =
parameters.getParameter<
int>(
"pVBin");
132 nPVMin_ =
parameters.getParameter<
double>(
"pVMin");
133 nPVMax_ =
parameters.getParameter<
double>(
"pVMax");
136 for (edm::VParameterSet::const_iterator it = triggerSelectedSubFolders_.begin(); it!= triggerSelectedSubFolders_.end(); it++) {
138 triggerFolderExpr_.push_back(it->getParameter<std::vector<std::string> >(
"hltPaths"));
139 triggerFolderLabels_.push_back(it->getParameter<
std::string>(
"label"));
144 verbose_ =
parameters.getParameter<
int>(
"verbose");
152 for (std::vector<GenericTriggerEventFlag *>::const_iterator it = triggerFolderEventFlag_.begin(); it!= triggerFolderEventFlag_.end(); it++) {
165 if(!folderNames_.empty()){
166 folderNames_.clear();
169 folderNames_.push_back(
"Uncleaned");
170 folderNames_.push_back(
"Cleaned");
171 folderNames_.push_back(
"DiJet");
173 for (std::vector<std::string>::const_iterator ic = folderNames_.begin();
174 ic != folderNames_.end(); ic++){
175 bookMESet(DirName+
"/"+*ic, ibooker,map_dijet_MEs);
183 bool bLumiSecPlot=fill_met_high_level_histo;
185 bookMonitorElement(DirName,ibooker,map_of_MEs,bLumiSecPlot);
187 if (DirName.find(
"Cleaned")!=std::string::npos) {
188 for (
unsigned int i = 0;
i<triggerFolderEventFlag_.size();
i++) {
189 if (triggerFolderEventFlag_[
i]->on()) {
190 bookMonitorElement(DirName+
"/"+triggerFolderLabels_[
i],ibooker,map_of_MEs,
false);
199 if (verbose_)
std::cout <<
"bookMonitorElement " << DirName << std::endl;
203 hTrigger = ibooker.
book1D(
"triggerResults",
"triggerResults", 500, 0, 500);
204 hMEx = ibooker.
book1D(
"MEx",
"MEx", 200, -500, 500);
205 hMEy = ibooker.
book1D(
"MEy",
"MEy", 200, -500, 500);
206 hMET = ibooker.
book1D(
"MET",
"MET", 200, 0, 1000);
207 hSumET = ibooker.
book1D(
"SumET",
"SumET", 400, 0, 4000);
208 hMETSig = ibooker.
book1D(
"METSig",
"METSig", 51, 0, 51);
209 hMETPhi = ibooker.
book1D(
"METPhi",
"METPhi", 60, -3.2, 3.2);
210 hMET_logx = ibooker.
book1D(
"MET_logx",
"MET_logx", 40, -1, 7);
211 hSumET_logx = ibooker.
book1D(
"SumET_logx",
"SumET_logx", 40, -1, 7);
214 hMEy ->setAxisTitle(
"MEy [GeV]", 1);
215 hMET ->setAxisTitle(
"MET [GeV]", 1);
216 hSumET ->setAxisTitle(
"SumET [GeV]", 1);
217 hMETSig ->setAxisTitle(
"METSig", 1);
218 hMETPhi ->setAxisTitle(
"METPhi [rad]", 1);
219 hMET_logx ->setAxisTitle(
"log(MET) [GeV]", 1);
220 hSumET_logx->setAxisTitle(
"log(SumET) [GeV]", 1);
222 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"triggerResults",hTrigger));
223 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"MEx",hMEx));
224 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"MEy",hMEy));
225 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"MET",hMET));
226 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"SumET",hSumET));
227 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"METSig",hMETSig));
228 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"METPhi",hMETPhi));
229 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"MET_logx",hMET_logx));
230 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"SumET_logx",hSumET_logx));
234 meMEx_profile = ibooker.
bookProfile(
"MEx_profile",
"met.px()", nbinsPV_, nPVMin_, nPVMax_, 200, -500, 500);
235 meMEy_profile = ibooker.
bookProfile(
"MEy_profile",
"met.py()", nbinsPV_, nPVMin_, nPVMax_, 200, -500, 500);
236 meMET_profile = ibooker.
bookProfile(
"MET_profile",
"met.pt()", nbinsPV_, nPVMin_, nPVMax_, 200, 0, 1000);
237 meSumET_profile = ibooker.
bookProfile(
"SumET_profile",
"met.sumEt()", nbinsPV_, nPVMin_, nPVMax_, 400, 0, 4000);
241 meMEy_profile ->setAxisTitle(
"nvtx", 1);
242 meMET_profile ->setAxisTitle(
"nvtx", 1);
243 meSumET_profile->setAxisTitle(
"nvtx", 1);
245 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"MEx_profile",meMEx_profile));
246 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"MEy_profile",meMEy_profile));
247 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"MET_profile",meMET_profile));
248 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"SumET_profile",meSumET_profile));
252 hCaloMaxEtInEmTowers = ibooker.
book1D(
"CaloMaxEtInEmTowers",
"CaloMaxEtInEmTowers" ,100,0,2000);
253 hCaloMaxEtInEmTowers->
setAxisTitle(
"Et(Max) in EM Tower [GeV]",1);
254 hCaloMaxEtInHadTowers = ibooker.
book1D(
"CaloMaxEtInHadTowers",
"CaloMaxEtInHadTowers" ,100,0,2000);
255 hCaloMaxEtInHadTowers->
setAxisTitle(
"Et(Max) in Had Tower [GeV]",1);
257 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"CaloMaxEtInEmTowers",hCaloMaxEtInEmTowers));
258 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"CaloMaxEtInHadTowers",hCaloMaxEtInHadTowers));
260 hCaloHadEtInHB = ibooker.
book1D(
"CaloHadEtInHB",
"CaloHadEtInHB",100,0,2000);
262 hCaloHadEtInHO = ibooker.
book1D(
"CaloHadEtInHO",
"CaloHadEtInHO",25,0,500);
264 hCaloHadEtInHE = ibooker.
book1D(
"CaloHadEtInHE",
"CaloHadEtInHE",100,0,2000);
266 hCaloHadEtInHF = ibooker.
book1D(
"CaloHadEtInHF",
"CaloHadEtInHF",50,0,1000);
268 hCaloEmEtInHF = ibooker.
book1D(
"CaloEmEtInHF" ,
"CaloEmEtInHF" ,25,0,500);
270 hCaloEmEtInEE = ibooker.
book1D(
"CaloEmEtInEE" ,
"CaloEmEtInEE" ,50,0,1000);
272 hCaloEmEtInEB = ibooker.
book1D(
"CaloEmEtInEB" ,
"CaloEmEtInEB" ,100,0,2000);
275 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"CaloHadEtInHO",hCaloHadEtInHO));
276 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"CaloHadEtInHF",hCaloHadEtInHF));
277 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"CaloHadEtInHE",hCaloHadEtInHE));
278 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"CaloHadEtInHB",hCaloHadEtInHB));
279 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"CaloEmEtInHF",hCaloEmEtInHF));
280 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"CaloEmEtInEE",hCaloEmEtInEE));
281 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"CaloEmEtInEB",hCaloEmEtInEB));
283 hCaloMETPhi020 = ibooker.
book1D(
"CaloMETPhi020",
"CaloMETPhi020", 60, -3.2, 3.2);
284 hCaloMETPhi020 ->
setAxisTitle(
"METPhi [rad] (MET>20 GeV)", 1);
290 hCaloEtFractionHadronic = ibooker.
book1D(
"CaloEtFractionHadronic",
"CaloEtFractionHadronic",100,0,1);
291 hCaloEtFractionHadronic->
setAxisTitle(
"Hadronic Et Fraction",1);
292 hCaloEmEtFraction = ibooker.
book1D(
"CaloEmEtFraction",
"CaloEmEtFraction" ,100,0,1);
299 hCaloEmEtFraction020 = ibooker.
book1D(
"CaloEmEtFraction020",
"CaloEmEtFraction020" ,100,0,1);
300 hCaloEmEtFraction020->
setAxisTitle(
"EM Et Fraction (MET>20 GeV)",1);
302 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"CaloMETPhi020",hCaloMETPhi020));
303 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"CaloEtFractionHadronic",hCaloEtFractionHadronic));
304 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"CaloEmEtFraction", hCaloEmEtFraction));
305 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"CaloEmEtFraction020",hCaloEmEtFraction020));
331 mePhotonEtFraction = ibooker.
book1D(
"PfPhotonEtFraction",
"pfmet.photonEtFraction()", 50, 0, 1);
332 mePhotonEt = ibooker.
book1D(
"PfPhotonEt",
"pfmet.photonEt()", 100, 0, 1000);
333 meNeutralHadronEtFraction = ibooker.
book1D(
"PfNeutralHadronEtFraction",
"pfmet.neutralHadronEtFraction()", 50, 0, 1);
334 meNeutralHadronEt = ibooker.
book1D(
"PfNeutralHadronEt",
"pfmet.neutralHadronEt()", 100, 0, 1000);
335 meElectronEtFraction = ibooker.
book1D(
"PfElectronEtFraction",
"pfmet.electronEtFraction()", 50, 0, 1);
336 meElectronEt = ibooker.
book1D(
"PfElectronEt",
"pfmet.electronEt()", 100, 0, 1000);
337 meChargedHadronEtFraction = ibooker.
book1D(
"PfChargedHadronEtFraction",
"pfmet.chargedHadronEtFraction()", 50, 0, 1);
338 meChargedHadronEt = ibooker.
book1D(
"PfChargedHadronEt",
"pfmet.chargedHadronEt()", 100, 0, 1000);
339 meMuonEtFraction = ibooker.
book1D(
"PfMuonEtFraction",
"pfmet.muonEtFraction()", 50, 0, 1);
340 meMuonEt = ibooker.
book1D(
"PfMuonEt",
"pfmet.muonEt()", 100, 0, 1000);
341 meHFHadronEtFraction = ibooker.
book1D(
"PfHFHadronEtFraction",
"pfmet.HFHadronEtFraction()", 50, 0, 1);
342 meHFHadronEt = ibooker.
book1D(
"PfHFHadronEt",
"pfmet.HFHadronEt()", 100, 0, 1000);
343 meHFEMEtFraction = ibooker.
book1D(
"PfHFEMEtFraction",
"pfmet.HFEMEtFraction()", 50, 0, 1);
344 meHFEMEt = ibooker.
book1D(
"PfHFEMEt",
"pfmet.HFEMEt()", 100, 0, 1000);
346 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfPhotonEtFraction" ,mePhotonEtFraction));
347 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfPhotonEt" ,mePhotonEt));
348 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfNeutralHadronEtFraction",meNeutralHadronEtFraction));
349 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfNeutralHadronEt" ,meNeutralHadronEt));
350 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfElectronEtFraction" ,meElectronEtFraction));
351 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfElectronEt" ,meElectronEt));
352 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfChargedHadronEtFraction",meChargedHadronEtFraction));
353 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfChargedHadronEt" ,meChargedHadronEt));
354 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfMuonEtFraction" ,meMuonEtFraction));
355 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfMuonEt" ,meMuonEt));
356 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfHFHadronEtFraction" ,meHFHadronEtFraction));
357 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfHFHadronEt" ,meHFHadronEt));
358 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfHFEMEtFraction" ,meHFEMEtFraction));
359 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfHFEMEt" ,meHFEMEt));
361 mePhotonEtFraction_profile = ibooker.
bookProfile(
"PfPhotonEtFraction_profile",
"pfmet.photonEtFraction()", nbinsPV_, nPVMin_, nPVMax_, 50, 0, 1);
362 mePhotonEt_profile = ibooker.
bookProfile(
"PfPhotonEt_profile",
"pfmet.photonEt()", nbinsPV_, nPVMin_, nPVMax_, 100, 0, 1000);
363 meNeutralHadronEtFraction_profile = ibooker.
bookProfile(
"PfNeutralHadronEtFraction_profile",
"pfmet.neutralHadronEtFraction()", nbinsPV_, nPVMin_, nPVMax_, 50, 0, 1);
364 meNeutralHadronEt_profile = ibooker.
bookProfile(
"PfNeutralHadronEt_profile",
"pfmet.neutralHadronEt()", nbinsPV_, nPVMin_, nPVMax_, 100, 0, 1000);
365 meElectronEtFraction_profile = ibooker.
bookProfile(
"PfElectronEtFraction_profile",
"pfmet.electronEtFraction()", nbinsPV_, nPVMin_, nPVMax_, 50, 0, 1);
366 meElectronEt_profile = ibooker.
bookProfile(
"PfElectronEt_profile",
"pfmet.electronEt()", nbinsPV_, nPVMin_, nPVMax_, 100, 0, 1000);
367 meChargedHadronEtFraction_profile = ibooker.
bookProfile(
"PfChargedHadronEtFraction_profile",
"pfmet.chargedHadronEtFraction()", nbinsPV_, nPVMin_, nPVMax_, 50, 0, 1);
368 meChargedHadronEt_profile = ibooker.
bookProfile(
"PfChargedHadronEt_profile",
"pfmet.chargedHadronEt()", nbinsPV_, nPVMin_, nPVMax_, 100, 0, 1000);
369 meMuonEtFraction_profile = ibooker.
bookProfile(
"PfMuonEtFraction_profile",
"pfmet.muonEtFraction()", nbinsPV_, nPVMin_, nPVMax_, 50, 0, 1);
370 meMuonEt_profile = ibooker.
bookProfile(
"PfMuonEt_profile",
"pfmet.muonEt()", nbinsPV_, nPVMin_, nPVMax_, 100, 0, 1000);
371 meHFHadronEtFraction_profile = ibooker.
bookProfile(
"PfHFHadronEtFraction_profile",
"pfmet.HFHadronEtFraction()", nbinsPV_, nPVMin_, nPVMax_, 50, 0, 1);
372 meHFHadronEt_profile = ibooker.
bookProfile(
"PfHFHadronEt_profile",
"pfmet.HFHadronEt()", nbinsPV_, nPVMin_, nPVMax_, 100, 0, 1000);
373 meHFEMEtFraction_profile = ibooker.
bookProfile(
"PfHFEMEtFraction_profile",
"pfmet.HFEMEtFraction()", nbinsPV_, nPVMin_, nPVMax_, 50, 0, 1);
374 meHFEMEt_profile = ibooker.
bookProfile(
"PfHFEMEt_profile",
"pfmet.HFEMEt()", nbinsPV_, nPVMin_, nPVMax_, 100, 0, 1000);
377 mePhotonEt_profile ->setAxisTitle(
"nvtx", 1);
378 meNeutralHadronEtFraction_profile->setAxisTitle(
"nvtx", 1);
379 meNeutralHadronEt_profile ->setAxisTitle(
"nvtx", 1);
380 meElectronEtFraction_profile ->setAxisTitle(
"nvtx", 1);
381 meElectronEt_profile ->setAxisTitle(
"nvtx", 1);
382 meChargedHadronEtFraction_profile->setAxisTitle(
"nvtx", 1);
383 meChargedHadronEt_profile ->setAxisTitle(
"nvtx", 1);
384 meMuonEtFraction_profile ->setAxisTitle(
"nvtx", 1);
385 meMuonEt_profile ->setAxisTitle(
"nvtx", 1);
386 meHFHadronEtFraction_profile ->setAxisTitle(
"nvtx", 1);
387 meHFHadronEt_profile ->setAxisTitle(
"nvtx", 1);
388 meHFEMEtFraction_profile ->setAxisTitle(
"nvtx", 1);
389 meHFEMEt_profile ->setAxisTitle(
"nvtx", 1);
391 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfPhotonEtFraction_profile" ,mePhotonEtFraction_profile));
392 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfPhotonEt_profile" ,mePhotonEt_profile));
393 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfNeutralHadronEtFraction_profile" ,meNeutralHadronEtFraction_profile));
394 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfNeutralHadronEt_profile" ,meNeutralHadronEt_profile));
395 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfElectronEtFraction_profile" ,meElectronEtFraction_profile));
396 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfElectronEt_profile" ,meElectronEt_profile));
397 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfChargedHadronEtFraction_profile" ,meChargedHadronEtFraction_profile));
398 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfChargedHadronEt_profile" ,meChargedHadronEt_profile));
399 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfMuonEtFraction_profile" ,meMuonEtFraction_profile));
400 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfMuonEt_profile" ,meMuonEt_profile));
401 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfHFHadronEtFraction_profile" ,meHFHadronEtFraction_profile));
402 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfHFHadronEt_profile" ,meHFHadronEt_profile));
403 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfHFEMEtFraction_profile" ,meHFEMEtFraction_profile));
404 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"PfHFEMEt_profile" ,meHFEMEt_profile));
408 if (fill_met_high_level_histo){
409 hMExLS = ibooker.
book2D(
"MExLS",
"MEx_LS",200,-200,200,250,0.,2500.);
411 hMExLS->setAxisTitle(
"Lumi Section",2);
412 hMExLS->getTH2F()->SetOption(
"colz");
413 hMEyLS = ibooker.
book2D(
"MEyLS",
"MEy_LS",200,-200,200,250,0.,2500.);
415 hMEyLS->setAxisTitle(
"Lumi Section",2);
416 hMEyLS->getTH2F()->SetOption(
"colz");
417 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"MExLS",hMExLS));
418 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"MEyLS",hMEyLS));
459 hMETRate = ibooker.
book1D(
"METRate",
"METRate", 200, 0, 1000);
460 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(DirName+
"/"+
"METRate",hMETRate));
464 lumisecME = ibooker.
book1D(
"lumisec",
"lumisec", 2500, 0., 2500.);
465 map_of_MEs.insert(std::pair<std::string,MonitorElement*>(
"JetMET/lumisec",lumisecME));
476 if (hltConfig_.init(iRun,iSetup,triggerResultsLabel_.process(),changed)) {
478 hltConfig_.dump(
"ProcessName");
479 hltConfig_.dump(
"GlobalTag");
480 hltConfig_.dump(
"TableName");
487 if (verbose_)
std::cout <<
"HLTEventAnalyzerAOD::analyze:"
488 <<
" config extraction failure with process name "
489 << triggerResultsLabel_.process() << std::endl;
492 allTriggerNames_.clear();
493 for (
unsigned i = 0;
i<hltConfig_.size();
i++) {
494 allTriggerNames_.push_back(hltConfig_.triggerName(
i));
499 for ( std::vector<GenericTriggerEventFlag *>::const_iterator it = triggerFolderEventFlag_.begin(); it!= triggerFolderEventFlag_.end(); it++) {
500 int pos = it - triggerFolderEventFlag_.begin();
502 (*it)->initRun( iRun, iSetup );
503 if (triggerSelectedSubFolders_[pos].exists(
std::string(
"hltDBKey"))) {
505 if ((*it)->expressionsFromDB((*it)->hltDBKey(), iSetup)[0] !=
"CONFIG_ERROR")
506 triggerFolderExpr_[pos] = (*it)->expressionsFromDB((*it)->hltDBKey(), iSetup);
524 meLumiSec = map_dijet_MEs[
"JetMET/lumisec"];
530 tlumisec = meLumiSec->
getTH1F();
535 for (
int i=0;
i< (tlumisec->GetNbinsX());
i++){
536 if (tlumisec->GetBinContent(
i)!=0){
538 totlssecsum+=tlumisec->GetBinContent(
i);
541 int num_per_ls=(double)totlssecsum/(
double)totlsec;
542 totlsec=totlsec+tlumisec->GetBinContent(tlumisec->GetNbinsX()+1)/(
double)num_per_ls;
543 totltime = double(totlsec*90);
546 if (totltime==0.) totltime=1.;
555 for (std::vector<std::string>::const_iterator ic = folderNames_.begin(); ic != folderNames_.end(); ic++) {
557 DirName = dirName+*ic;
558 makeRatePlot(DirName,totltime);
559 for ( std::vector<GenericTriggerEventFlag *>::const_iterator it = triggerFolderEventFlag_.begin(); it!= triggerFolderEventFlag_.end(); it++) {
560 int pos = it - triggerFolderEventFlag_.begin();
562 makeRatePlot(DirName+
"/"+triggerFolderLabels_[pos],totltime);
581 if ( meMET && mMETRate){
586 tMETRate = (TH1F*) tMET->Clone(
"METRateHist");
587 for (
int i = tMETRate->GetNbinsX()-1;
i>=0;
i--){
588 mMETRate->
setBinContent(
i+1,tMETRate->GetBinContent(
i+2)+tMET->GetBinContent(
i+1));
590 for (
int i = 0;
i<tMETRate->GetNbinsX();
i++){
591 mMETRate->
setBinContent(
i+1,tMETRate->GetBinContent(
i+1)/double(totltime));
603 int myLuminosityBlock;
605 if(fill_met_high_level_histo){
606 lumisecME=map_dijet_MEs[
"JetMET/lumisec"];
if(lumisecME && lumisecME->getRootObject()) lumisecME->Fill(myLuminosityBlock);
609 if (myLuminosityBlock<LSBegin_)
return;
610 if (myLuminosityBlock>LSEnd_ && LSEnd_>0)
return;
612 if (verbose_)
std::cout <<
"METAnalyzer analyze" << std::endl;
631 std::vector<int> triggerFolderDecisions;
632 triggerFolderDecisions_ = std::vector<int> (triggerFolderEventFlag_.size(), 0);
637 if( triggerResults.isValid()) {
640 int ntrigs = (*triggerResults).size();
641 if (verbose_)
std::cout <<
"ntrigs=" << ntrigs << std::endl;
643 for (std::vector<GenericTriggerEventFlag *>::const_iterator it = triggerFolderEventFlag_.begin(); it!=triggerFolderEventFlag_.end();it++) {
644 unsigned pos = it - triggerFolderEventFlag_.begin();
645 bool fd = (*it)->accept(iEvent, iSetup);
646 triggerFolderDecisions_[pos] = fd;
648 allTriggerDecisions_.clear();
649 for (
unsigned i=0;
i<allTriggerNames_.size();++
i) {
650 allTriggerDecisions_.push_back((*triggerResults).accept(
i));
668 iEvent.
getByToken(caloMetToken_, calometcoll);
669 if(!calometcoll.
isValid())
return;
673 if(!pfmetcoll.
isValid())
return;
683 met=&(pfmetcoll->front());
684 pfmet=&(pfmetcoll->front());
687 met=&(calometcoll->front());
688 calomet=&(calometcoll->front());
716 iEvent.
getByToken(HcalNoiseRBXToken_,HRBXCollection);
717 if (!HRBXCollection.
isValid()) {
718 LogDebug(
"") <<
"METAnalyzer: Could not find HcalNoiseRBX Collection" << std::endl;
719 if (verbose_)
std::cout <<
"METAnalyzer: Could not find HcalNoiseRBX Collection" << std::endl;
723 iEvent.
getByToken(hbheNoiseFilterResultToken_, HBHENoiseFilterResultHandle);
724 bool HBHENoiseFilterResult = *HBHENoiseFilterResultHandle;
725 if (!HBHENoiseFilterResultHandle.
isValid()) {
726 LogDebug(
"") <<
"METAnalyzer: Could not find HBHENoiseFilterResult" << std::endl;
727 if (verbose_)
std::cout <<
"METAnalyzer: Could not find HBHENoiseFilterResult" << std::endl;
732 bool bDiJetID =
false;
745 LogDebug(
"") <<
"METAnalyzer: Could not find calojet product" << std::endl;
746 if (verbose_)
std::cout <<
"METAnalyzer: Could not find calojet product" << std::endl;
748 collsize=caloJets->size();
763 iEvent.
getByToken(jetID_ValueMapToken_,jetID_ValueMap_Handle);
767 if (isPFMet_){ iEvent.
getByToken(pfJetsToken_, pfJets);
769 LogDebug(
"") <<
"METAnalyzer: Could not find pfjet product" << std::endl;
770 if (verbose_)
std::cout <<
"METAnalyzer: Could not find pfjet product" << std::endl;
772 collsize=pfJets->size();
775 unsigned int ind1=-1;
777 bool pass_jetID1=
false;
778 unsigned int ind2=-1;
780 bool pass_jetID2=
false;
783 for (
int ijet=0; ijet<collsize; ijet++) {
786 bool iscleaned=
false;
787 if (!jetCorrectionService_.empty()) {
790 scale = corrector->
correction((*caloJets)[ijet], iEvent, iSetup);
796 scale = corrector->
correction((*pfJets)[ijet], iEvent, iSetup);
800 pt_jet=scale*(*caloJets)[ijet].pt();
801 if(pt_jet> ptThreshold_){
805 iscleaned = jetIDFunctorLoose((*caloJets)[ijet], jetID);
827 pt_jet=scale*(*pfJets)[ijet].pt();
828 if(pt_jet> ptThreshold_){
829 iscleaned = pfjetIDFunctorLoose((*pfJets)[ijet]);
838 pass_jetID2=pass_jetID1;
841 pass_jetID1=iscleaned;
842 }
else if (pt_jet>pt2){
845 pass_jetID2=iscleaned;
848 if(pass_jetID1 && pass_jetID2){
851 dphi=fabs((*caloJets)[ind1].
phi()-(*caloJets)[ind2].
phi());
857 dphi=fabs((*pfJets)[ind1].
phi()-(*pfJets)[ind2].
phi());
860 dphi=2*acos(-1.)-dphi;
870 bool bHBHENoiseFilter = HBHENoiseFilterResult;
875 iEvent.
getByToken(beamHaloSummaryToken_, TheBeamHaloSummary) ;
877 if (!TheBeamHaloSummary.
isValid()) {
878 if (verbose_)
std::cout <<
"BeamHaloSummary doesn't exist" << std::endl;
881 bool bBeamHaloID =
true;
883 if(!TheBeamHaloSummary.
isValid()) {
895 iEvent.
getByToken(vertexToken_, vertexHandle);
898 LogDebug(
"") <<
"CaloMETAnalyzer: Could not find vertex collection" << std::endl;
899 if (verbose_)
std::cout <<
"CaloMETAnalyzer: Could not find vertex collection" << std::endl;
904 numPV_ = vertexCollection.size();
906 bool bPrimaryVertex = (bypassAllPVChecks_ || (numPV_>0));
910 iEvent.
getByToken( gtToken_, gtReadoutRecord);
912 if (!gtReadoutRecord.
isValid()) {
913 LogDebug(
"") <<
"CaloMETAnalyzer: Could not find GT readout record" << std::endl;
914 if (verbose_)
std::cout <<
"CaloMETAnalyzer: Could not find GT readout record product" << std::endl;
917 bool bDCSFilter = (bypassAllDCSChecks_ || DCSFilter_->filter(iEvent, iSetup));
921 for (std::vector<std::string>::const_iterator ic = folderNames_.begin();
922 ic != folderNames_.end(); ic++){
923 if ((*ic==
"Uncleaned") &&(isCaloMet_ || bPrimaryVertex)) fillMESet(iEvent, DirName+
"/"+*ic, *met,*pfmet,*calomet,map_dijet_MEs);
925 if ((*ic==
"Cleaned") &&bDCSFilter&&bHBHENoiseFilter&&bPrimaryVertex&&bBeamHaloID&&bJetID) fillMESet(iEvent, DirName+
"/"+*ic, *met,*pfmet,*calomet,map_dijet_MEs);
926 if ((*ic==
"DiJet" ) &&bDCSFilter&&bHBHENoiseFilter&&bPrimaryVertex&&bBeamHaloID&&bDiJetID) fillMESet(iEvent, DirName+
"/"+*ic, *met,*pfmet,*calomet,map_dijet_MEs);
938 bool bLumiSecPlot=fill_met_high_level_histo;
940 fillMonitorElement(iEvent, DirName,
std::string(
""), met, pfmet, calomet, map_of_MEs,bLumiSecPlot);
941 if (DirName.find(
"Cleaned")) {
942 for (
unsigned i = 0;
i<triggerFolderLabels_.size();
i++) {
943 if (triggerFolderDecisions_[
i]) fillMonitorElement(iEvent, DirName, triggerFolderLabels_[i], met, pfmet, calomet, map_of_MEs,
false);
947 if (DirName.find(
"DiJet")) {
948 for (
unsigned i = 0;
i<triggerFolderLabels_.size();
i++) {
949 if (triggerFolderDecisions_[
i]) fillMonitorElement(iEvent, DirName, triggerFolderLabels_[i], met, pfmet, calomet, map_of_MEs,
false);
1003 double SumET = met.
sumEt();
1004 double METSig = met.
mEtSig();
1006 double MET = met.
pt();
1007 double MEx = met.
px();
1008 double MEy = met.
py();
1009 double METPhi = met.
phi();
1011 int myLuminosityBlock;
1015 if (subFolderName!=
"") DirName = DirName +
"/"+subFolderName;
1018 hTrigger = map_of_MEs[DirName+
"/triggerResults"];
1020 if (hTrigger && hTrigger->getRootObject()) {
1022 for (
unsigned int i = 0;
i<allTriggerDecisions_.size();
i++){
1024 if(
i<(
unsigned int)hTrigger->getNbinsX()){
1025 hTrigger->Fill(
i + .5, allTriggerDecisions_[
i]);
1026 if (!hTriggerLabelsIsSet_) {
1027 hTrigger->setBinLabel(i+1, allTriggerNames_[i]);
1031 if (!hTriggerLabelsIsSet_)
for (
int i = allTriggerDecisions_.size();
i<hTrigger->getNbinsX();
i++){
1032 hTrigger->setBinLabel(
i+1,
"");
1034 hTriggerLabelsIsSet_ =
true;
1039 hMEx = map_of_MEs[DirName+
"/"+
"MEx"];
if (hMEx && hMEx->getRootObject()) hMEx ->
Fill(MEx);
1040 hMEy = map_of_MEs[DirName+
"/"+
"MEy"];
if (hMEy && hMEy->getRootObject()) hMEy ->
Fill(MEy);
1041 hMET = map_of_MEs[DirName+
"/"+
"MET"];
if (hMET && hMET->getRootObject()) hMET ->
Fill(MET);
1042 hMETPhi = map_of_MEs[DirName+
"/"+
"METPhi"];
if (hMETPhi && hMETPhi->getRootObject()) hMETPhi ->
Fill(METPhi);
1043 hSumET = map_of_MEs[DirName+
"/"+
"SumET"];
if (hSumET && hSumET->getRootObject()) hSumET ->
Fill(SumET);
1044 hMETSig = map_of_MEs[DirName+
"/"+
"METSig"];
if (hMETSig && hMETSig->getRootObject()) hMETSig ->
Fill(METSig);
1045 hMET_logx = map_of_MEs[DirName+
"/"+
"MET_logx"];
if (hMET_logx && hMET_logx->getRootObject()) hMET_logx->Fill(log10(MET));
1046 hSumET_logx = map_of_MEs[DirName+
"/"+
"SumET_logx"];
if (hSumET_logx && hSumET_logx->getRootObject()) hSumET_logx->Fill(log10(SumET));
1050 meMEx_profile = map_of_MEs[DirName +
"/MEx_profile"];
1051 meMEy_profile = map_of_MEs[DirName +
"/MEy_profile"];
1052 meMET_profile = map_of_MEs[DirName +
"/MET_profile"];
1053 meSumET_profile = map_of_MEs[DirName +
"/SumET_profile"];
1055 if (meMEx_profile && meMEx_profile ->getRootObject()) meMEx_profile ->Fill(numPV_, MEx);
1056 if (meMEy_profile && meMEy_profile ->getRootObject()) meMEy_profile ->Fill(numPV_, MEy);
1057 if (meMET_profile && meMET_profile ->getRootObject()) meMET_profile ->Fill(numPV_, MET);
1058 if (meSumET_profile && meSumET_profile->getRootObject()) meSumET_profile->Fill(numPV_, SumET);
1071 double caloHadEtInHB = calomet.
hadEtInHB();
1072 double caloHadEtInHO = calomet.
hadEtInHO();
1073 double caloHadEtInHE = calomet.
hadEtInHE();
1074 double caloHadEtInHF = calomet.
hadEtInHF();
1075 double caloEmEtInEB = calomet.
emEtInEB();
1076 double caloEmEtInEE = calomet.
emEtInEE();
1077 double caloEmEtInHF = calomet.
emEtInHF();
1079 hCaloMaxEtInEmTowers = map_of_MEs[DirName+
"/"+
"CaloMaxEtInEmTowers"];
if (hCaloMaxEtInEmTowers && hCaloMaxEtInEmTowers->getRootObject()) hCaloMaxEtInEmTowers->Fill(caloMaxEtInEMTowers);
1080 hCaloMaxEtInHadTowers = map_of_MEs[DirName+
"/"+
"CaloMaxEtInHadTowers"];
if (hCaloMaxEtInHadTowers && hCaloMaxEtInHadTowers->getRootObject()) hCaloMaxEtInHadTowers->Fill(caloMaxEtInHadTowers);
1082 hCaloHadEtInHB = map_of_MEs[DirName+
"/"+
"CaloHadEtInHB"];
if (hCaloHadEtInHB && hCaloHadEtInHB->getRootObject()) hCaloHadEtInHB->Fill(caloHadEtInHB);
1083 hCaloHadEtInHO = map_of_MEs[DirName+
"/"+
"CaloHadEtInHO"];
if (hCaloHadEtInHO && hCaloHadEtInHO->getRootObject()) hCaloHadEtInHO->Fill(caloHadEtInHO);
1084 hCaloHadEtInHE = map_of_MEs[DirName+
"/"+
"CaloHadEtInHE"];
if (hCaloHadEtInHE && hCaloHadEtInHE->getRootObject()) hCaloHadEtInHE->Fill(caloHadEtInHE);
1085 hCaloHadEtInHF = map_of_MEs[DirName+
"/"+
"CaloHadEtInHF"];
if (hCaloHadEtInHF && hCaloHadEtInHF->getRootObject()) hCaloHadEtInHF->Fill(caloHadEtInHF);
1086 hCaloEmEtInEB = map_of_MEs[DirName+
"/"+
"CaloEmEtInEB"];
if (hCaloEmEtInEB && hCaloEmEtInEB->getRootObject()) hCaloEmEtInEB->Fill(caloEmEtInEB);
1087 hCaloEmEtInEE = map_of_MEs[DirName+
"/"+
"CaloEmEtInEE"];
if (hCaloEmEtInEE && hCaloEmEtInEE->getRootObject()) hCaloEmEtInEE->Fill(caloEmEtInEE);
1088 hCaloEmEtInHF = map_of_MEs[DirName+
"/"+
"CaloEmEtInHF"];
if (hCaloEmEtInHF && hCaloEmEtInHF->getRootObject()) hCaloEmEtInHF->Fill(caloEmEtInHF);
1090 hCaloMETPhi020 = map_of_MEs[DirName+
"/"+
"CaloMETPhi020"];
if (MET> 20. && hCaloMETPhi020 && hCaloMETPhi020->getRootObject()) { hCaloMETPhi020->Fill(METPhi);}
1093 hCaloEtFractionHadronic = map_of_MEs[DirName+
"/"+
"CaloEtFractionHadronic"];
if (hCaloEtFractionHadronic && hCaloEtFractionHadronic->getRootObject()) hCaloEtFractionHadronic->Fill(caloEtFractionHadronic);
1094 hCaloEmEtFraction = map_of_MEs[DirName+
"/"+
"CaloEmEtFraction"];
if (hCaloEmEtFraction && hCaloEmEtFraction->getRootObject()) hCaloEmEtFraction->Fill(caloEmEtFraction);
1095 hCaloEmEtFraction020 = map_of_MEs[DirName+
"/"+
"CaloEmEtFraction020"];
if (MET> 20. && hCaloEmEtFraction020 && hCaloEmEtFraction020->getRootObject()) hCaloEmEtFraction020->Fill(caloEmEtFraction);
1129 double pfPhotonEt = pfmet.
photonEt();
1137 double pfMuonEt = pfmet.
muonEt();
1141 double pfHFEMEt = pfmet.
HFEMEt();
1143 mePhotonEtFraction = map_of_MEs[DirName +
"/PfPhotonEtFraction"];
1144 mePhotonEt = map_of_MEs[DirName +
"/PfPhotonEt"];
1145 meNeutralHadronEtFraction = map_of_MEs[DirName +
"/PfNeutralHadronEtFraction"];
1146 meNeutralHadronEt = map_of_MEs[DirName +
"/PfNeutralHadronEt"];
1147 meElectronEtFraction = map_of_MEs[DirName +
"/PfElectronEtFraction"];
1148 meElectronEt = map_of_MEs[DirName +
"/PfElectronEt"];
1149 meChargedHadronEtFraction = map_of_MEs[DirName +
"/PfChargedHadronEtFraction"];
1150 meChargedHadronEt = map_of_MEs[DirName +
"/PfChargedHadronEt"];
1151 meMuonEtFraction = map_of_MEs[DirName +
"/PfMuonEtFraction"];
1152 meMuonEt = map_of_MEs[DirName +
"/PfMuonEt"];
1153 meHFHadronEtFraction = map_of_MEs[DirName +
"/PfHFHadronEtFraction"];
1154 meHFHadronEt = map_of_MEs[DirName +
"/PfHFHadronEt"];
1155 meHFEMEtFraction = map_of_MEs[DirName +
"/PfHFEMEtFraction"];
1156 meHFEMEt = map_of_MEs[DirName +
"/PfHFEMEt"];
1158 if (mePhotonEtFraction && mePhotonEtFraction ->getRootObject()) mePhotonEtFraction ->Fill(pfPhotonEtFraction);
1159 if (mePhotonEt && mePhotonEt ->getRootObject()) mePhotonEt ->Fill(pfPhotonEt);
1160 if (meNeutralHadronEtFraction && meNeutralHadronEtFraction->getRootObject()) meNeutralHadronEtFraction->Fill(pfNeutralHadronEtFraction);
1161 if (meNeutralHadronEt && meNeutralHadronEt ->getRootObject()) meNeutralHadronEt ->Fill(pfNeutralHadronEt);
1162 if (meElectronEtFraction && meElectronEtFraction ->getRootObject()) meElectronEtFraction ->Fill(pfElectronEtFraction);
1163 if (meElectronEt && meElectronEt ->getRootObject()) meElectronEt ->Fill(pfElectronEt);
1164 if (meChargedHadronEtFraction && meChargedHadronEtFraction->getRootObject()) meChargedHadronEtFraction->Fill(pfChargedHadronEtFraction);
1165 if (meChargedHadronEt && meChargedHadronEt ->getRootObject()) meChargedHadronEt ->Fill(pfChargedHadronEt);
1166 if (meMuonEtFraction && meMuonEtFraction ->getRootObject()) meMuonEtFraction ->Fill(pfMuonEtFraction);
1167 if (meMuonEt && meMuonEt ->getRootObject()) meMuonEt ->Fill(pfMuonEt);
1168 if (meHFHadronEtFraction && meHFHadronEtFraction ->getRootObject()) meHFHadronEtFraction ->Fill(pfHFHadronEtFraction);
1169 if (meHFHadronEt && meHFHadronEt ->getRootObject()) meHFHadronEt ->Fill(pfHFHadronEt);
1170 if (meHFEMEtFraction && meHFEMEtFraction ->getRootObject()) meHFEMEtFraction ->Fill(pfHFEMEtFraction);
1171 if (meHFEMEt && meHFEMEt ->getRootObject()) meHFEMEt ->Fill(pfHFEMEt);
1175 mePhotonEtFraction_profile = map_of_MEs[DirName +
"/PfPhotonEtFraction_profile"];
1176 mePhotonEt_profile = map_of_MEs[DirName +
"/PfPhotonEt_profile"];
1177 meNeutralHadronEtFraction_profile = map_of_MEs[DirName +
"/PfNeutralHadronEtFraction_profile"];
1178 meNeutralHadronEt_profile = map_of_MEs[DirName +
"/PfNeutralHadronEt_profile"];
1179 meElectronEtFraction_profile = map_of_MEs[DirName +
"/PfElectronEtFraction_profile"];
1180 meElectronEt_profile = map_of_MEs[DirName +
"/PfElectronEt_profile"];
1181 meChargedHadronEtFraction_profile = map_of_MEs[DirName +
"/PfChargedHadronEtFraction_profile"];
1182 meChargedHadronEt_profile = map_of_MEs[DirName +
"/PfChargedHadronEt_profile"];
1183 meMuonEtFraction_profile = map_of_MEs[DirName +
"/PfMuonEtFraction_profile"];
1184 meMuonEt_profile = map_of_MEs[DirName +
"/PfMuonEt_profile"];
1185 meHFHadronEtFraction_profile = map_of_MEs[DirName +
"/PfHFHadronEtFraction_profile"];
1186 meHFHadronEt_profile = map_of_MEs[DirName +
"/PfHFHadronEt_profile"];
1187 meHFEMEtFraction_profile = map_of_MEs[DirName +
"/PfHFEMEtFraction_profile"];
1188 meHFEMEt_profile = map_of_MEs[DirName +
"/PfHFEMEt_profile"];
1190 if (mePhotonEtFraction_profile && mePhotonEtFraction_profile ->getRootObject()) mePhotonEtFraction_profile ->Fill(numPV_, pfPhotonEtFraction);
1191 if (mePhotonEt_profile && mePhotonEt_profile ->getRootObject()) mePhotonEt_profile ->Fill(numPV_, pfPhotonEt);
1192 if (meNeutralHadronEtFraction_profile && meNeutralHadronEtFraction_profile->getRootObject()) meNeutralHadronEtFraction_profile->Fill(numPV_, pfNeutralHadronEtFraction);
1193 if (meNeutralHadronEt_profile && meNeutralHadronEt_profile ->getRootObject()) meNeutralHadronEt_profile ->Fill(numPV_, pfNeutralHadronEt);
1194 if (meElectronEtFraction_profile && meElectronEtFraction_profile ->getRootObject()) meElectronEtFraction_profile ->Fill(numPV_, pfElectronEtFraction);
1195 if (meElectronEt_profile && meElectronEt_profile ->getRootObject()) meElectronEt_profile ->Fill(numPV_, pfElectronEt);
1196 if (meChargedHadronEtFraction_profile && meChargedHadronEtFraction_profile->getRootObject()) meChargedHadronEtFraction_profile->Fill(numPV_, pfChargedHadronEtFraction);
1197 if (meChargedHadronEt_profile && meChargedHadronEt_profile ->getRootObject()) meChargedHadronEt_profile ->Fill(numPV_, pfChargedHadronEt);
1198 if (meMuonEtFraction_profile && meMuonEtFraction_profile ->getRootObject()) meMuonEtFraction_profile ->Fill(numPV_, pfMuonEtFraction);
1199 if (meMuonEt_profile && meMuonEt_profile ->getRootObject()) meMuonEt_profile ->Fill(numPV_, pfMuonEt);
1200 if (meHFHadronEtFraction_profile && meHFHadronEtFraction_profile ->getRootObject()) meHFHadronEtFraction_profile ->Fill(numPV_, pfHFHadronEtFraction);
1201 if (meHFHadronEt_profile && meHFHadronEt_profile ->getRootObject()) meHFHadronEt_profile ->Fill(numPV_, pfHFHadronEt);
1202 if (meHFEMEtFraction_profile && meHFEMEtFraction_profile ->getRootObject()) meHFEMEtFraction_profile ->Fill(numPV_, pfHFEMEtFraction);
1203 if (meHFEMEt_profile && meHFEMEt_profile ->getRootObject()) meHFEMEt_profile ->Fill(numPV_, pfHFEMEt);
1208 if (fill_met_high_level_histo){
1209 hMExLS = map_of_MEs[DirName+
"/"+
"MExLS"];
if (hMExLS && hMExLS->getRootObject()) hMExLS->Fill(MEx,myLuminosityBlock);
1210 hMEyLS = map_of_MEs[DirName+
"/"+
"MEyLS"];
if (hMEyLS && hMEyLS->getRootObject()) hMEyLS->Fill(MEy,myLuminosityBlock);
const bool EcalTightHaloId() const
T getParameter(std::string const &) const
void setBinContent(int binx, double content)
set content of bin (1-D)
double HFEMEtFraction() const
virtual float pt() const
transverse momentum
const bool HcalTightHaloId() const
MonitorElement * bookProfile(Args &&...args)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
const std::string metname
virtual float phi() const
momentum azimuthal angle
std::vector< ParameterSet > VParameterSet
double maxEtInHadTowers() const
double neutralHadronEtFraction() const
edm::LuminosityBlockNumber_t luminosityBlock() const
std::vector< Vertex > VertexCollection
collection of Vertex objects
double correction(const LorentzVector &fJet) const
get correction using Jet information only
Provides a code based selection for trigger and DCS information in order to have no failing filters i...
const bool GlobalTightHaloId() const
double maxEtInEmTowers() const
triggerResultsToken_(consumes< edm::TriggerResults >(edm::InputTag("TriggerResults")))
const bool CSCTightHaloId() const
double HFHadronEtFraction() const
double muonEtFraction() const
double HFHadronEt() const
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
double photonEtFraction() const
MonitorElement * book1D(Args &&...args)
PF Jet selector for pat::Jets.
double electronEt() const
Jet selector for pat::Jets and for CaloJets.
TObject * getRootObject(void) const
void setCurrentFolder(const std::string &fullpath)
double etFractionHadronic() const
T const * product() const
virtual double px() const
x coordinate of momentum vector
MonitorElement * book2D(Args &&...args)
static std::string const triggerResults("TriggerResults")
static const JetCorrector * getJetCorrector(const std::string &fName, const edm::EventSetup &fSetup)
retrieve corrector from the event setup. troughs exception if something is missing ...
TH1F * getTH1F(void) const
double electronEtFraction() const
double chargedHadronEtFraction() const
double neutralHadronEt() const
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
virtual double py() const
y coordinate of momentum vector
double emEtFraction() const
double chargedHadronEt() const