67 std::cout <<
">>> Constructor (DataCertificationJetMET) <<<" << std::endl;
77 std::cout <<
">>> Deconstructor (DataCertificationJetMET) <<<" << std::endl;
83 std::vector<std::string> subDirVecMET;
87 bool found_METreco_dir =
false;
88 bool found_METminiaod_dir =
false;
90 for (
int i = 0;
i <
int(subDirVecMET.size());
i++) {
93 found_METreco_dir =
true;
105 MonitorElement* mMET_Reco_HBHENoiseFilter = iget_.
get(rundirMET_reco +
"/" +
"MET_HBHENoiseFilter");
106 MonitorElement* mMET_Reco_CSCTightHaloFilter = iget_.
get(rundirMET_reco +
"/" +
"MET_CSCTightHaloFilter");
107 MonitorElement* mMET_Reco_eeBadScFilter = iget_.
get(rundirMET_reco +
"/" +
"MET_eeBadScFilter");
108 MonitorElement* mMET_Reco_HBHEIsoNoiseFilter = iget_.
get(rundirMET_reco +
"/" +
"MET_HBHEIsoNoiseFilter");
109 MonitorElement* mMET_Reco_CSCTightHalo2015Filter = iget_.
get(rundirMET_reco +
"/" +
"MET_CSCTightHalo2015Filter");
111 iget_.
get(rundirMET_reco +
"/" +
"MET_EcalDeadCellTriggerFilter");
113 iget_.
get(rundirMET_reco +
"/" +
"MET_EcalDeadCellBoundaryFilter");
114 MonitorElement* mMET_Reco_HcalStripHaloFilter = iget_.
get(rundirMET_reco +
"/" +
"MET_HcalStripHaloFilter");
117 ibook_.
book1D(
"MET_EffHBHENoiseFilter", (TH1F*)mMET_Reco_HBHENoiseFilter->
getRootObject());
118 for (
int i = 0; i <= (mMET_Reco->
getNbinsX() + 1); i++) {
127 ibook_.
book1D(
"MET_EffCSCTightHaloFilter", (TH1F*)mMET_Reco_CSCTightHaloFilter->
getRootObject());
128 for (
int i = 0; i <= (mMET_Reco->
getNbinsX() + 1); i++) {
137 for (
int i = 0; i <= (mMET_Reco->
getNbinsX() + 1); i++) {
146 ibook_.
book1D(
"MET_EffHBHEIsoNoiseFilter", (TH1F*)mMET_Reco_HBHEIsoNoiseFilter->
getRootObject());
147 for (
int i = 0; i <= (mMET_Reco->
getNbinsX() + 1); i++) {
156 ibook_.
book1D(
"MET_EffCSCTightHalo2015Filter", (TH1F*)mMET_Reco_CSCTightHalo2015Filter->
getRootObject());
157 for (
int i = 0; i <= (mMET_Reco->
getNbinsX() + 1); i++) {
166 (TH1F*)mMET_Reco_EcalDeadCellTriggerFilter->
getRootObject());
167 for (
int i = 0; i <= (mMET_Reco->
getNbinsX() + 1); i++) {
176 (TH1F*)mMET_Reco_EcalDeadCellBoundaryFilter->
getRootObject());
177 for (
int i = 0; i <= (mMET_Reco->
getNbinsX() + 1); i++) {
186 ibook_.
book1D(
"MET_EffHcalStripHaloFilter", (TH1F*)mMET_Reco_HcalStripHaloFilter->
getRootObject());
187 for (
int i = 0; i <= (mMET_Reco->
getNbinsX() + 1); i++) {
197 found_METminiaod_dir =
true;
200 if (found_METreco_dir && found_METminiaod_dir) {
208 MonitorElement* mSumET_logx_Reco = iget_.
get(rundirMET_reco +
"/" +
"SumET_logx");
209 MonitorElement* mChargedHadronEtFraction_Reco = iget_.
get(rundirMET_reco +
"/" +
"PfChargedHadronEtFraction");
210 MonitorElement* mNeutralHadronEtFraction_Reco = iget_.
get(rundirMET_reco +
"/" +
"PfNeutralHadronEtFraction");
211 MonitorElement* mPhotonEtFraction_Reco = iget_.
get(rundirMET_reco +
"/" +
"PfPhotonEtFraction");
212 MonitorElement* mHFHadronEtFraction_Reco = iget_.
get(rundirMET_reco +
"/" +
"PfHFHadronEtFraction");
213 MonitorElement* mHFEMEtFraction_Reco = iget_.
get(rundirMET_reco +
"/" +
"PfHFEMEtFraction");
214 MonitorElement* mMET_nVtx_profile_Reco = iget_.
get(rundirMET_reco +
"/" +
"MET_profile");
215 MonitorElement* mSumET_nVtx_profile_Reco = iget_.
get(rundirMET_reco +
"/" +
"SumET_profile");
217 iget_.
get(rundirMET_reco +
"/" +
"PfChargedHadronEtFraction_profile");
219 iget_.
get(rundirMET_reco +
"/" +
"PfNeutralHadronEtFraction_profile");
221 iget_.
get(rundirMET_reco +
"/" +
"PfPhotonEtFraction_profile");
223 std::vector<MonitorElement*> me_MET_Reco;
224 me_MET_Reco.push_back(mMET_Reco);
225 me_MET_Reco.push_back(mMEy_Reco);
226 me_MET_Reco.push_back(mSumET_Reco);
227 me_MET_Reco.push_back(mMETPhi_Reco);
228 me_MET_Reco.push_back(mMET_logx_Reco);
229 me_MET_Reco.push_back(mSumET_logx_Reco);
230 me_MET_Reco.push_back(mChargedHadronEtFraction_Reco);
231 me_MET_Reco.push_back(mNeutralHadronEtFraction_Reco);
232 me_MET_Reco.push_back(mPhotonEtFraction_Reco);
233 me_MET_Reco.push_back(mHFHadronEtFraction_Reco);
234 me_MET_Reco.push_back(mHFEMEtFraction_Reco);
235 me_MET_Reco.push_back(mMET_nVtx_profile_Reco);
236 me_MET_Reco.push_back(mSumET_nVtx_profile_Reco);
237 me_MET_Reco.push_back(mChargedHadronEtFraction_nVtx_profile_Reco);
238 me_MET_Reco.push_back(mNeutralHadronEtFraction_nVtx_profile_Reco);
239 me_MET_Reco.push_back(mPhotonEtFraction_nVtx_profile_Reco);
245 MonitorElement* mMET_logx_MiniAOD = iget_.
get(rundirMET_miniaod +
"/" +
"MET_logx");
246 MonitorElement* mSumET_logx_MiniAOD = iget_.
get(rundirMET_miniaod +
"/" +
"SumET_logx");
247 MonitorElement* mChargedHadronEtFraction_MiniAOD = iget_.
get(rundirMET_miniaod +
"/" +
"PfChargedHadronEtFraction");
248 MonitorElement* mNeutralHadronEtFraction_MiniAOD = iget_.
get(rundirMET_miniaod +
"/" +
"PfNeutralHadronEtFraction");
249 MonitorElement* mPhotonEtFraction_MiniAOD = iget_.
get(rundirMET_miniaod +
"/" +
"PfPhotonEtFraction");
250 MonitorElement* mHFHadronEtFraction_MiniAOD = iget_.
get(rundirMET_miniaod +
"/" +
"PfHFHadronEtFraction");
251 MonitorElement* mHFEMEtFraction_MiniAOD = iget_.
get(rundirMET_miniaod +
"/" +
"PfHFEMEtFraction");
252 MonitorElement* mMET_nVtx_profile_MiniAOD = iget_.
get(rundirMET_miniaod +
"/" +
"MET_profile");
253 MonitorElement* mSumET_nVtx_profile_MiniAOD = iget_.
get(rundirMET_miniaod +
"/" +
"SumET_profile");
255 iget_.
get(rundirMET_miniaod +
"/" +
"PfChargedHadronEtFraction_profile");
257 iget_.
get(rundirMET_miniaod +
"/" +
"PfNeutralHadronEtFraction_profile");
259 iget_.
get(rundirMET_miniaod +
"/" +
"PfPhotonEtFraction_profile");
261 std::vector<MonitorElement*> me_MET_MiniAOD;
262 me_MET_MiniAOD.push_back(mMET_MiniAOD);
263 me_MET_MiniAOD.push_back(mMEy_MiniAOD);
264 me_MET_MiniAOD.push_back(mSumET_MiniAOD);
265 me_MET_MiniAOD.push_back(mMETPhi_MiniAOD);
266 me_MET_MiniAOD.push_back(mMET_logx_MiniAOD);
267 me_MET_MiniAOD.push_back(mSumET_logx_MiniAOD);
268 me_MET_MiniAOD.push_back(mChargedHadronEtFraction_MiniAOD);
269 me_MET_MiniAOD.push_back(mNeutralHadronEtFraction_MiniAOD);
270 me_MET_MiniAOD.push_back(mPhotonEtFraction_MiniAOD);
271 me_MET_MiniAOD.push_back(mHFHadronEtFraction_MiniAOD);
272 me_MET_MiniAOD.push_back(mHFEMEtFraction_MiniAOD);
273 me_MET_MiniAOD.push_back(mMET_nVtx_profile_MiniAOD);
274 me_MET_MiniAOD.push_back(mSumET_nVtx_profile_MiniAOD);
275 me_MET_MiniAOD.push_back(mChargedHadronEtFraction_nVtx_profile_MiniAOD);
276 me_MET_MiniAOD.push_back(mNeutralHadronEtFraction_nVtx_profile_MiniAOD);
277 me_MET_MiniAOD.push_back(mPhotonEtFraction_nVtx_profile_MiniAOD);
292 ibook_.
book1D(
"PfPhotonEtFraction_MiniAOD_over_RECO", (TH1F*)mPhotonEtFraction_Reco->
getRootObject());
294 ibook_.
book1D(
"PfHFHadronEtFraction_MiniAOD_over_RECO", (TH1F*)mHFHadronEtFraction_Reco->
getRootObject());
296 ibook_.
book1D(
"PfHFEMEtFraction_MiniAOD_over_RECO", (TH1F*)mHFEMEtFraction_Reco->
getRootObject());
303 ibook_.
book1D(
"PfChargedHadronEtFraction_profile_MiniAOD_over_RECO",
304 "PfChargedHadronEtFraction_vs_nVtx",
309 ibook_.
book1D(
"PfNeutralHadronEtFraction_profile_MiniAOD_over_RECO",
310 "PfNeutralHadronEtFraction_vs_nVtx",
315 "PfPhotonEtFraction_profile_MiniAOD_over_RECO",
"PfPhotonEtFraction_vs_nVtx",
nbinsPV_,
nPVMin_,
nPVMax_);
317 std::vector<MonitorElement*> me_MET_MiniAOD_over_Reco;
335 for (
unsigned int j = 0;
j < me_MET_MiniAOD_over_Reco.size();
j++) {
341 if (monMETMiniAOD_over_RECO && monMETMiniAOD_over_RECO->
getRootObject()) {
342 for (
int i = 0;
i <= (monMETMiniAOD_over_RECO->
getNbinsX() + 1);
i++) {
357 std::vector<std::string> subDirVecJet;
362 bool found_Jetreco_dir =
false;
363 bool found_Jetminiaod_dir =
false;
364 for (
int i = 0;
i <
int(subDirVecJet.size());
i++) {
367 found_Jetreco_dir =
true;
370 found_Jetminiaod_dir =
true;
373 if (found_Jetreco_dir && found_Jetminiaod_dir) {
384 MonitorElement* mJetEnergyCorr_Reco = iget_.
get(rundirJet_reco +
"/" +
"JetEnergyCorr");
385 MonitorElement* mJetEnergyCorrVSeta_Reco = iget_.
get(rundirJet_reco +
"/" +
"JetEnergyCorrVSEta");
387 MonitorElement* mLooseJIDPassFractionVSeta_Reco = iget_.
get(rundirJet_reco +
"/" +
"JetIDPassFractionVSeta");
390 MonitorElement* mPt_Forward_Reco = iget_.
get(rundirJet_reco +
"/" +
"Pt_Forward");
392 iget_.
get(rundirJet_reco +
"/" +
"MVAPUJIDDiscriminant_lowPt_Barrel");
394 iget_.
get(rundirJet_reco +
"/" +
"MVAPUJIDDiscriminant_lowPt_EndCap");
396 iget_.
get(rundirJet_reco +
"/" +
"MVAPUJIDDiscriminant_lowPt_Forward");
398 iget_.
get(rundirJet_reco +
"/" +
"MVAPUJIDDiscriminant_mediumPt_EndCap");
400 iget_.
get(rundirJet_reco +
"/" +
"MVAPUJIDDiscriminant_highPt_Barrel");
401 MonitorElement* mCHFracVSpT_Barrel_Reco = iget_.
get(rundirJet_reco +
"/" +
"CHFracVSpT_Barrel");
402 MonitorElement* mNHFracVSpT_EndCap_Reco = iget_.
get(rundirJet_reco +
"/" +
"NHFracVSpT_EndCap");
403 MonitorElement* mPhFracVSpT_Barrel_Reco = iget_.
get(rundirJet_reco +
"/" +
"PhFracVSpT_Barrel");
404 MonitorElement* mHFHFracVSpT_Forward_Reco = iget_.
get(rundirJet_reco +
"/" +
"HFHFracVSpT_Forward");
405 MonitorElement* mHFEFracVSpT_Forward_Reco = iget_.
get(rundirJet_reco +
"/" +
"HFEFracVSpT_Forward");
409 MonitorElement* mChargedMultiplicity_Reco = iget_.
get(rundirJet_reco +
"/DiJet/" +
"ChargedMultiplicity");
410 MonitorElement* mNeutralMultiplicity_Reco = iget_.
get(rundirJet_reco +
"/DiJet/" +
"NeutralMultiplicity");
411 MonitorElement* mMuonMultiplicity_Reco = iget_.
get(rundirJet_reco +
"/DiJet/" +
"MuonMultiplicity");
412 MonitorElement* mNeutralFraction_Reco = iget_.
get(rundirJet_reco +
"/DiJet/" +
"NeutralConstituentsFraction");
414 std::vector<MonitorElement*> me_Jet_Reco;
415 me_Jet_Reco.push_back(mPt_Reco);
416 me_Jet_Reco.push_back(mEta_Reco);
417 me_Jet_Reco.push_back(mPhi_Reco);
418 me_Jet_Reco.push_back(mNjets_Reco);
419 me_Jet_Reco.push_back(mPt_uncor_Reco);
420 me_Jet_Reco.push_back(mEta_uncor_Reco);
421 me_Jet_Reco.push_back(mPhi_uncor_Reco);
422 me_Jet_Reco.push_back(mJetEnergyCorr_Reco);
423 me_Jet_Reco.push_back(mJetEnergyCorrVSeta_Reco);
424 me_Jet_Reco.push_back(mDPhi_Reco);
425 me_Jet_Reco.push_back(mLooseJIDPassFractionVSeta_Reco);
426 me_Jet_Reco.push_back(mPt_Barrel_Reco);
427 me_Jet_Reco.push_back(mPt_EndCap_Reco);
428 me_Jet_Reco.push_back(mPt_Forward_Reco);
429 me_Jet_Reco.push_back(mMVAPUJIDDiscriminant_lowPt_Barrel_Reco);
430 me_Jet_Reco.push_back(mMVAPUJIDDiscriminant_lowPt_EndCap_Reco);
431 me_Jet_Reco.push_back(mMVAPUJIDDiscriminant_lowPt_Forward_Reco);
432 me_Jet_Reco.push_back(mMVAPUJIDDiscriminant_mediumPt_EndCap_Reco);
433 me_Jet_Reco.push_back(mMVAPUJIDDiscriminant_highPt_Barrel_Reco);
434 me_Jet_Reco.push_back(mCHFracVSpT_Barrel_Reco);
435 me_Jet_Reco.push_back(mNHFracVSpT_EndCap_Reco);
436 me_Jet_Reco.push_back(mPhFracVSpT_Barrel_Reco);
437 me_Jet_Reco.push_back(mHFHFracVSpT_Forward_Reco);
438 me_Jet_Reco.push_back(mHFEFracVSpT_Forward_Reco);
439 me_Jet_Reco.push_back(mCHFrac_Reco);
440 me_Jet_Reco.push_back(mNHFrac_Reco);
441 me_Jet_Reco.push_back(mPhFrac_Reco);
442 me_Jet_Reco.push_back(mChargedMultiplicity_Reco);
443 me_Jet_Reco.push_back(mNeutralMultiplicity_Reco);
444 me_Jet_Reco.push_back(mMuonMultiplicity_Reco);
445 me_Jet_Reco.push_back(mNeutralFraction_Reco);
451 MonitorElement* mPt_uncor_MiniAOD = iget_.
get(rundirJet_miniaod +
"/" +
"Pt_uncor");
452 MonitorElement* mEta_uncor_MiniAOD = iget_.
get(rundirJet_miniaod +
"/" +
"Eta_uncor");
453 MonitorElement* mPhi_uncor_MiniAOD = iget_.
get(rundirJet_miniaod +
"/" +
"Phi_uncor");
454 MonitorElement* mJetEnergyCorr_MiniAOD = iget_.
get(rundirJet_miniaod +
"/" +
"JetEnergyCorr");
455 MonitorElement* mJetEnergyCorrVSeta_MiniAOD = iget_.
get(rundirJet_miniaod +
"/" +
"JetEnergyCorrVSEta");
457 MonitorElement* mLooseJIDPassFractionVSeta_MiniAOD = iget_.
get(rundirJet_miniaod +
"/" +
"JetIDPassFractionVSeta");
458 MonitorElement* mPt_Barrel_MiniAOD = iget_.
get(rundirJet_miniaod +
"/" +
"Pt_Barrel");
459 MonitorElement* mPt_EndCap_MiniAOD = iget_.
get(rundirJet_miniaod +
"/" +
"Pt_EndCap");
460 MonitorElement* mPt_Forward_MiniAOD = iget_.
get(rundirJet_miniaod +
"/" +
"Pt_Forward");
462 iget_.
get(rundirJet_miniaod +
"/" +
"MVAPUJIDDiscriminant_lowPt_Barrel");
464 iget_.
get(rundirJet_miniaod +
"/" +
"MVAPUJIDDiscriminant_lowPt_EndCap");
466 iget_.
get(rundirJet_miniaod +
"/" +
"MVAPUJIDDiscriminant_lowPt_Forward");
468 iget_.
get(rundirJet_miniaod +
"/" +
"MVAPUJIDDiscriminant_mediumPt_EndCap");
470 iget_.
get(rundirJet_miniaod +
"/" +
"MVAPUJIDDiscriminant_highPt_Barrel");
471 MonitorElement* mCHFracVSpT_Barrel_MiniAOD = iget_.
get(rundirJet_miniaod +
"/" +
"CHFracVSpT_Barrel");
472 MonitorElement* mNHFracVSpT_EndCap_MiniAOD = iget_.
get(rundirJet_miniaod +
"/" +
"NHFracVSpT_EndCap");
473 MonitorElement* mPhFracVSpT_Barrel_MiniAOD = iget_.
get(rundirJet_miniaod +
"/" +
"PhFracVSpT_Barrel");
474 MonitorElement* mHFHFracVSpT_Forward_MiniAOD = iget_.
get(rundirJet_miniaod +
"/" +
"HFHFracVSpT_Forward");
475 MonitorElement* mHFEFracVSpT_Forward_MiniAOD = iget_.
get(rundirJet_miniaod +
"/" +
"HFEFracVSpT_Forward");
476 MonitorElement* mCHFrac_MiniAOD = iget_.
get(rundirJet_miniaod +
"/DiJet/" +
"CHFrac");
477 MonitorElement* mNHFrac_MiniAOD = iget_.
get(rundirJet_miniaod +
"/DiJet/" +
"NHFrac");
478 MonitorElement* mPhFrac_MiniAOD = iget_.
get(rundirJet_miniaod +
"/DiJet/" +
"PhFrac");
479 MonitorElement* mChargedMultiplicity_MiniAOD = iget_.
get(rundirJet_miniaod +
"/DiJet/" +
"ChargedMultiplicity");
480 MonitorElement* mNeutralMultiplicity_MiniAOD = iget_.
get(rundirJet_miniaod +
"/DiJet/" +
"NeutralMultiplicity");
481 MonitorElement* mMuonMultiplicity_MiniAOD = iget_.
get(rundirJet_miniaod +
"/DiJet/" +
"MuonMultiplicity");
482 MonitorElement* mNeutralFraction_MiniAOD = iget_.
get(rundirJet_miniaod +
"/DiJet/" +
"NeutralConstituentsFraction");
484 std::vector<MonitorElement*> me_Jet_MiniAOD;
485 me_Jet_MiniAOD.push_back(mPt_MiniAOD);
486 me_Jet_MiniAOD.push_back(mEta_MiniAOD);
487 me_Jet_MiniAOD.push_back(mPhi_MiniAOD);
488 me_Jet_MiniAOD.push_back(mNjets_MiniAOD);
489 me_Jet_MiniAOD.push_back(mPt_uncor_MiniAOD);
490 me_Jet_MiniAOD.push_back(mEta_uncor_MiniAOD);
491 me_Jet_MiniAOD.push_back(mPhi_uncor_MiniAOD);
492 me_Jet_MiniAOD.push_back(mJetEnergyCorr_MiniAOD);
493 me_Jet_MiniAOD.push_back(mJetEnergyCorrVSeta_MiniAOD);
494 me_Jet_MiniAOD.push_back(mDPhi_MiniAOD);
495 me_Jet_MiniAOD.push_back(mLooseJIDPassFractionVSeta_MiniAOD);
496 me_Jet_MiniAOD.push_back(mPt_Barrel_MiniAOD);
497 me_Jet_MiniAOD.push_back(mPt_EndCap_MiniAOD);
498 me_Jet_MiniAOD.push_back(mPt_Forward_MiniAOD);
499 me_Jet_MiniAOD.push_back(mMVAPUJIDDiscriminant_lowPt_Barrel_MiniAOD);
500 me_Jet_MiniAOD.push_back(mMVAPUJIDDiscriminant_lowPt_EndCap_MiniAOD);
501 me_Jet_MiniAOD.push_back(mMVAPUJIDDiscriminant_lowPt_Forward_MiniAOD);
502 me_Jet_MiniAOD.push_back(mMVAPUJIDDiscriminant_mediumPt_EndCap_MiniAOD);
503 me_Jet_MiniAOD.push_back(mMVAPUJIDDiscriminant_highPt_Barrel_MiniAOD);
504 me_Jet_MiniAOD.push_back(mCHFracVSpT_Barrel_MiniAOD);
505 me_Jet_MiniAOD.push_back(mNHFracVSpT_EndCap_MiniAOD);
506 me_Jet_MiniAOD.push_back(mPhFracVSpT_Barrel_MiniAOD);
507 me_Jet_MiniAOD.push_back(mHFHFracVSpT_Forward_MiniAOD);
508 me_Jet_MiniAOD.push_back(mHFEFracVSpT_Forward_MiniAOD);
509 me_Jet_MiniAOD.push_back(mCHFrac_MiniAOD);
510 me_Jet_MiniAOD.push_back(mNHFrac_MiniAOD);
511 me_Jet_MiniAOD.push_back(mPhFrac_MiniAOD);
512 me_Jet_MiniAOD.push_back(mChargedMultiplicity_MiniAOD);
513 me_Jet_MiniAOD.push_back(mNeutralMultiplicity_MiniAOD);
514 me_Jet_MiniAOD.push_back(mMuonMultiplicity_MiniAOD);
515 me_Jet_MiniAOD.push_back(mNeutralFraction_MiniAOD);
528 ibook_.
book1D(
"JetEnergyCorr_MiniAOD_over_RECO", (TH1F*)mJetEnergyCorr_Reco->
getRootObject());
530 "JetEnergyCorrVSEta_MiniAOD_over_RECO",
"jet energy correction factor VS eta",
etaBin_,
etaMin_,
etaMax_);
541 ibook_.
book1D(
"MVAPUJIDDiscriminant_lowPt_Barrel_MiniAOD_over_RECO",
542 (TH1F*)mMVAPUJIDDiscriminant_lowPt_Barrel_Reco->
getRootObject());
544 ibook_.
book1D(
"MVAPUJIDDiscriminant_lowPt_EndCap_MiniAOD_over_RECO",
545 (TH1F*)mMVAPUJIDDiscriminant_lowPt_EndCap_Reco->
getRootObject());
547 ibook_.
book1D(
"MVAPUJIDDiscriminant_lowPt_Forward_MiniAOD_over_RECO",
548 (TH1F*)mMVAPUJIDDiscriminant_lowPt_Forward_Reco->
getRootObject());
550 ibook_.
book1D(
"MVAPUJIDDiscriminant_mediumPt_EndCap_MiniAOD_over_RECO",
551 (TH1F*)mMVAPUJIDDiscriminant_mediumPt_EndCap_Reco->
getRootObject());
553 ibook_.
book1D(
"MVAPUJIDDiscriminant_highPt_Barrel_MiniAOD_over_RECO",
554 (TH1F*)mMVAPUJIDDiscriminant_highPt_Barrel_Reco->
getRootObject());
570 ibook_.
book1D(
"ChargedMultiplicity_MiniAOD_over_RECO", (TH1F*)mChargedMultiplicity_Reco->
getRootObject());
572 ibook_.
book1D(
"NeutralMultiplicity_MiniAOD_over_RECO", (TH1F*)mNeutralMultiplicity_Reco->
getRootObject());
574 ibook_.
book1D(
"MuonMultiplicity_MiniAOD_over_RECO", (TH1F*)mMuonMultiplicity_Reco->
getRootObject());
576 ibook_.
book1D(
"NeutralConstituentsFraction_MiniAOD_over_RECO", (TH1F*)mNeutralFraction_Reco->
getRootObject());
578 std::vector<MonitorElement*> me_Jet_MiniAOD_over_Reco;
611 for (
unsigned int j = 0;
j < me_Jet_MiniAOD_over_Reco.size();
j++) {
617 if (monJetMiniAOD_over_RECO && monJetMiniAOD_over_RECO->
getRootObject()) {
618 for (
int i = 0;
i <= (monJetMiniAOD_over_RECO->
getNbinsX() + 1);
i++) {
633 std::cout <<
">>> EndRun (DataCertificationJetMET) <<<" << std::endl;
635 std::vector<std::string> subDirVec;
671 if (RunDir ==
"Reference")
691 newHistoName =
"JetMET/Jet/";
693 newHistoName = RunDir +
"/JetMET/Runsummary/Jet/";
695 cleaningdir =
"Cleaned";
701 newHistoName =
"JetMET/HIJetValidation/";
705 meJetPhi[0] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"Cs4PFJets/Phi");
706 meJetPhi[1] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"Pu3PFJets/Phi");
707 meJetPhi[2] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"Pu4PFJets/Phi");
708 meJetPhi[3] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"Pu4CaloJets/Phi");
711 meJetEta[0] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"Cs4PFJets/Eta");
712 meJetEta[1] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"Pu3PFJets/Eta");
713 meJetEta[2] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"Pu4PFJets/Eta");
714 meJetEta[3] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"Pu4CaloJets/Eta");
717 meJetPt[0] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"Cs4PFJets/Pt");
718 meJetPt[1] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"Pu3PFJets/Pt");
719 meJetPt[2] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"Pu4PFJets/Pt");
720 meJetPt[3] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"Pu4CaloJets/Pt");
723 meJetConstituents[0] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"Cs4PFJets/Constituents");
724 meJetConstituents[1] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"Pu3PFJets/Constituents");
725 meJetConstituents[2] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"Pu4PFJets/Constituents");
726 meJetConstituents[3] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"Pu4CaloJets/Constituents");
729 meJetEMFrac[0] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"dummy/dummy");
730 meJetEMFrac[1] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"dummy/dummy");
731 meJetEMFrac[2] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"dummy/dummy");
732 meJetEMFrac[3] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"dummy/dummy");
737 meJetPhi[0] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"PFJets/Phi_Barrel");
738 meJetPhi[1] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"PFJets/Phi_EndCap");
739 meJetPhi[2] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"PFJets/Phi_Forward");
740 meJetPhi[3] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"CaloJets/Phi");
744 meJetEta[0] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"PFJets/Eta");
745 meJetEta[1] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"PFJets/Eta");
746 meJetEta[2] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"PFJets/EtaFirst");
747 meJetEta[3] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"CaloJets/Eta");
751 meJetPt[0] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"PFJets/Pt_Barrel");
752 meJetPt[1] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"PFJets/Pt_EndCap");
753 meJetPt[2] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"PFJets/Pt_Forward");
754 meJetPt[3] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"CaloJets/Pt_2");
757 meJetConstituents[0] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"PFJets/Constituents_Barrel");
758 meJetConstituents[1] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"PFJets/Constituents_EndCap");
759 meJetConstituents[2] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"PFJets/Constituents_Forward");
760 meJetConstituents[3] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"CaloJets/Constituents");
763 meJetEMFrac[0] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"PFJets/EFrac_Barrel");
764 meJetEMFrac[1] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"PFJets/EFrac_EndCap");
765 meJetEMFrac[2] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"PFJets/EFrac_Forward");
766 meJetEMFrac[3] = iget_.
get(newHistoName + cleaningdir +
jetAlgo +
"CaloJets/EFrac");
783 const QReport* QReport_JetEta[4] = {
nullptr};
784 const QReport* QReport_JetPhi[4] = {
nullptr};
786 const QReport* QReport_JetConstituents[4][2] = {{
nullptr}};
787 const QReport* QReport_JetEFrac[4][2] = {{
nullptr}};
788 const QReport* QReport_JetPt[4][2] = {{
nullptr}};
792 float qr_Jet_Eta[4] = {-1};
793 float qr_Jet_Phi[4] = {-1};
794 float dc_Jet[4] = {-1};
796 float qr_Jet_Constituents[4][2] = {{-1}};
797 float qr_Jet_EFrac[4][2] = {{-1}};
798 float qr_Jet_Pt[4][2] = {{-1}};
802 for (
int jtyp = 0; jtyp < 4; ++jtyp) {
805 if (meJetConstituents[jtyp] && meJetConstituents[jtyp]->getRootObject()) {
806 QReport_JetConstituents[jtyp][0] = meJetConstituents[jtyp]->
getQReport(
"meanJetConstituentsTest");
807 QReport_JetConstituents[jtyp][1] = meJetConstituents[jtyp]->
getQReport(
"KolmogorovTest");
809 if (meJetEMFrac[jtyp] && meJetEMFrac[jtyp]->getRootObject()) {
810 QReport_JetEFrac[jtyp][0] = meJetEMFrac[jtyp]->
getQReport(
"meanEMFractionTest");
811 QReport_JetEFrac[jtyp][1] = meJetEMFrac[jtyp]->
getQReport(
"KolmogorovTest");
813 if (meJetPt[jtyp] && meJetPt[jtyp]->getRootObject()) {
814 QReport_JetPt[jtyp][0] = meJetPt[jtyp]->
getQReport(
"meanJetPtTest");
815 QReport_JetPt[jtyp][1] = meJetPt[jtyp]->
getQReport(
"KolmogorovTest");
817 if (meJetPhi[jtyp] && meJetPhi[jtyp]->getRootObject()) {
818 QReport_JetPhi[jtyp] = meJetPhi[jtyp]->
getQReport(
"KolmogorovTest");
820 if (meJetEta[jtyp] && meJetEta[jtyp]->getRootObject()) {
821 QReport_JetEta[jtyp] = meJetEta[jtyp]->
getQReport(
"KolmogorovTest");
825 if (QReport_JetPt[jtyp][0]) {
827 if (QReport_JetPt[jtyp][0]->getStatus() == 100 || QReport_JetPt[jtyp][0]->getStatus() == 200)
828 qr_Jet_Pt[jtyp][0] = 1;
829 else if (QReport_JetPt[jtyp][0]->getStatus() == 300)
830 qr_Jet_Pt[jtyp][0] = 0;
832 qr_Jet_Pt[jtyp][0] = -1;
834 qr_Jet_Pt[jtyp][0] = -2;
837 if (QReport_JetPt[jtyp][1]) {
838 if (QReport_JetPt[jtyp][1]->getStatus() == 100 || QReport_JetPt[jtyp][1]->getStatus() == 200)
839 qr_Jet_Pt[jtyp][1] = 1;
840 else if (QReport_JetPt[jtyp][1]->getStatus() == 300)
841 qr_Jet_Pt[jtyp][1] = 0;
843 qr_Jet_Pt[jtyp][1] = -1;
845 qr_Jet_Pt[jtyp][1] = -2;
849 if (QReport_JetPhi[jtyp]) {
850 if (QReport_JetPhi[jtyp]->getStatus() == 100 || QReport_JetPhi[jtyp]->getStatus() == 200)
851 qr_Jet_Phi[jtyp] = 1;
852 else if (QReport_JetPhi[jtyp]->getStatus() == 300)
853 qr_Jet_Phi[jtyp] = 0;
855 qr_Jet_Phi[jtyp] = -1;
857 qr_Jet_Phi[jtyp] = -2;
860 if (QReport_JetEta[jtyp]) {
861 if (QReport_JetEta[jtyp]->getStatus() == 100 || QReport_JetEta[jtyp]->getStatus() == 200)
862 qr_Jet_Eta[jtyp] = 1;
863 else if (QReport_JetEta[jtyp]->getStatus() == 300)
864 qr_Jet_Eta[jtyp] = 0;
866 qr_Jet_Eta[jtyp] = -1;
868 qr_Jet_Eta[jtyp] = -2;
871 if (QReport_JetConstituents[jtyp][0]) {
872 if (QReport_JetConstituents[jtyp][0]->getStatus() == 100 || QReport_JetConstituents[jtyp][0]->getStatus() == 200)
873 qr_Jet_Constituents[jtyp][0] = 1;
874 else if (QReport_JetConstituents[jtyp][0]->getStatus() == 300)
875 qr_Jet_Constituents[jtyp][0] = 0;
877 qr_Jet_Constituents[jtyp][0] = -1;
879 qr_Jet_Constituents[jtyp][0] = -2;
882 if (QReport_JetConstituents[jtyp][1]) {
883 if (QReport_JetConstituents[jtyp][1]->getStatus() == 100 || QReport_JetConstituents[jtyp][1]->getStatus() == 200)
884 qr_Jet_Constituents[jtyp][1] = 1;
885 else if (QReport_JetConstituents[jtyp][1]->getStatus() == 300)
886 qr_Jet_Constituents[jtyp][1] = 0;
888 qr_Jet_Constituents[jtyp][1] = -1;
890 qr_Jet_Constituents[jtyp][1] = -2;
893 if (QReport_JetEFrac[jtyp][0]) {
894 if (QReport_JetEFrac[jtyp][0]->getStatus() == 100 || QReport_JetEFrac[jtyp][0]->getStatus() == 200)
895 qr_Jet_EFrac[jtyp][0] = 1;
896 else if (QReport_JetEFrac[jtyp][0]->getStatus() == 300)
897 qr_Jet_EFrac[jtyp][0] = 0;
899 qr_Jet_EFrac[jtyp][0] = -1;
901 qr_Jet_EFrac[jtyp][0] = -2;
904 if (QReport_JetEFrac[jtyp][1]) {
905 if (QReport_JetEFrac[jtyp][1]->getStatus() == 100 || QReport_JetEFrac[jtyp][1]->getStatus() == 200)
906 qr_Jet_EFrac[jtyp][1] = 1;
907 else if (QReport_JetEFrac[jtyp][1]->getStatus() == 300)
908 qr_Jet_EFrac[jtyp][1] = 0;
910 qr_Jet_EFrac[jtyp][1] = -1;
912 qr_Jet_EFrac[jtyp][1] = -2;
916 printf(
"====================Jet Type %d QTest Report Summary========================\n", jtyp);
917 printf(
"Eta: Phi: Pt 1: 2: Const/Ntracks 1: 2: EFrac/tracknhits 1: 2:\n");
919 printf(
"%2.2f %2.2f %2.2f %2.2f %2.2f %2.2f %2.2f %2.2f\n",
924 qr_Jet_Constituents[jtyp][0],
925 qr_Jet_Constituents[jtyp][1],
926 qr_Jet_EFrac[jtyp][0],
927 qr_Jet_EFrac[jtyp][1]);
932 for (
int ttyp = 0; ttyp < 2; ++ttyp) {
934 qr_Jet_Pt[jtyp][ttyp] = 1;
936 qr_Jet_Eta[jtyp] = 1;
937 qr_Jet_Phi[jtyp] = 1;
939 qr_Jet_EFrac[jtyp][ttyp] = 1;
940 qr_Jet_Constituents[jtyp][ttyp] = 1;
944 if ((qr_Jet_EFrac[jtyp][0] == 0) || (qr_Jet_EFrac[jtyp][1] == 0) || (qr_Jet_Constituents[jtyp][1] == 0) ||
945 (qr_Jet_Constituents[jtyp][0] == 0) || (qr_Jet_Eta[jtyp] == 0) || (qr_Jet_Phi[jtyp] == 0) ||
946 (qr_Jet_Pt[jtyp][0] == 0) || (qr_Jet_Pt[jtyp][1] == 0))
948 else if ((qr_Jet_EFrac[jtyp][0] == -1) && (qr_Jet_EFrac[jtyp][1] == -1) && (qr_Jet_Constituents[jtyp][1] == -1) &&
949 (qr_Jet_Constituents[jtyp][0] == -1) && (qr_Jet_Eta[jtyp] == -1) && (qr_Jet_Phi[jtyp] == -1) &&
950 (qr_Jet_Pt[jtyp][0] == -1) && (qr_Jet_Pt[jtyp][1] == -1))
952 else if ((qr_Jet_EFrac[jtyp][0] == -2) && (qr_Jet_EFrac[jtyp][1] == -2) && (qr_Jet_Constituents[jtyp][1] == -2) &&
953 (qr_Jet_Constituents[jtyp][0] == -2) && (qr_Jet_Eta[jtyp] == -2) && (qr_Jet_Phi[jtyp] == -2) &&
954 (qr_Jet_Pt[jtyp][0] == -2) && (qr_Jet_Pt[jtyp][1] == -2))
960 std::cout <<
"Certifying Jet algo: " << jtyp <<
" with value: " << dc_Jet[jtyp] << std::endl;
985 newHistoName =
"JetMET/MET/";
987 newHistoName = RunDir +
"/JetMET/Runsummary/MET/";
992 meMExy[0][0] = iget_.
get(newHistoName +
"met/" +
metFolder +
"/MEx");
993 meMExy[0][1] = iget_.
get(newHistoName +
"met/" +
metFolder +
"/MEy");
994 meMExy[1][0] = iget_.
get(newHistoName +
"pfMet/" +
metFolder +
"/MEx");
995 meMExy[1][1] = iget_.
get(newHistoName +
"pfMet/" +
metFolder +
"/MEy");
998 meMETPhi[0] = iget_.
get(newHistoName +
"met/" +
metFolder +
"/METPhi");
999 meMETPhi[1] = iget_.
get(newHistoName +
"pfMet/" +
metFolder +
"/METPhi");
1001 meMEt[0] = iget_.
get(newHistoName +
"met/" +
metFolder +
"/MET");
1002 meMEt[1] = iget_.
get(newHistoName +
"pfMet/" +
metFolder +
"/MET");
1004 meSumEt[0] = iget_.
get(newHistoName +
"met/" +
metFolder +
"/SumET");
1005 meSumEt[1] = iget_.
get(newHistoName +
"pfMet/" +
metFolder +
"/SumET");
1014 const QReport* QReport_MExy[2][2][2] = {{{
nullptr}}};
1015 const QReport* QReport_MEt[2][2] = {{
nullptr}};
1016 const QReport* QReport_SumEt[2][2] = {{
nullptr}};
1018 const QReport* QReport_METPhi[2][2] = {{
nullptr}};
1020 float qr_MET_MExy[2][2][2] = {{{-999.}}};
1021 float qr_MET_MEt[2][2] = {{-999.}};
1022 float qr_MET_SumEt[2][2] = {{-999.}};
1023 float qr_MET_METPhi[2][2] = {{-999.}};
1024 float dc_MET[2] = {-999.};
1028 for (
int mtyp = 0; mtyp < 2; ++mtyp) {
1030 if (meMExy[mtyp][0] && meMExy[mtyp][0]->getRootObject()) {
1031 QReport_MExy[mtyp][0][0] = meMExy[mtyp][0]->
getQReport(
"meanMExyTest");
1032 QReport_MExy[mtyp][1][0] = meMExy[mtyp][0]->
getQReport(
"KolmogorovTest");
1034 if (meMExy[mtyp][1] && meMExy[mtyp][1]->getRootObject()) {
1035 QReport_MExy[mtyp][0][1] = meMExy[mtyp][1]->
getQReport(
"meanMExyTest");
1036 QReport_MExy[mtyp][1][1] = meMExy[mtyp][1]->
getQReport(
"KolmogorovTest");
1038 if (meMEt[mtyp] && meMEt[mtyp]->getRootObject()) {
1039 QReport_MEt[mtyp][0] = meMEt[mtyp]->
getQReport(
"meanMETTest");
1040 QReport_MEt[mtyp][1] = meMEt[mtyp]->
getQReport(
"KolmogorovTest");
1043 if (meSumEt[mtyp] && meSumEt[mtyp]->getRootObject()) {
1044 QReport_SumEt[mtyp][0] = meSumEt[mtyp]->
getQReport(
"meanSumETTest");
1045 QReport_SumEt[mtyp][1] = meSumEt[mtyp]->
getQReport(
"KolmogorovTest");
1048 if (meMETPhi[mtyp] && meMETPhi[mtyp]->getRootObject()) {
1049 QReport_METPhi[mtyp][0] = meMETPhi[mtyp]->
getQReport(
"phiQTest");
1050 QReport_METPhi[mtyp][1] = meMETPhi[mtyp]->
getQReport(
"KolmogorovTest");
1052 for (
int testtyp = 0; testtyp < 2; ++testtyp) {
1054 if (QReport_MExy[mtyp][testtyp][0]) {
1055 if (QReport_MExy[mtyp][testtyp][0]->getStatus() == 100 || QReport_MExy[mtyp][testtyp][0]->getStatus() == 200)
1056 qr_MET_MExy[mtyp][testtyp][0] = 1;
1057 else if (QReport_MExy[mtyp][testtyp][0]->getStatus() == 300)
1058 qr_MET_MExy[mtyp][testtyp][0] = 0;
1060 qr_MET_MExy[mtyp][testtyp][0] = -1;
1062 qr_MET_MExy[mtyp][testtyp][0] = -2;
1064 if (QReport_MExy[mtyp][testtyp][1]) {
1065 if (QReport_MExy[mtyp][testtyp][1]->getStatus() == 100 || QReport_MExy[mtyp][testtyp][1]->getStatus() == 200)
1066 qr_MET_MExy[mtyp][testtyp][1] = 1;
1067 else if (QReport_MExy[mtyp][testtyp][1]->getStatus() == 300)
1068 qr_MET_MExy[mtyp][testtyp][1] = 0;
1070 qr_MET_MExy[mtyp][testtyp][1] = -1;
1072 qr_MET_MExy[mtyp][testtyp][1] = -2;
1075 if (QReport_MEt[mtyp][testtyp]) {
1076 if (QReport_MEt[mtyp][testtyp]->getStatus() == 100 || QReport_MEt[mtyp][testtyp]->getStatus() == 200)
1077 qr_MET_MEt[mtyp][testtyp] = 1;
1078 else if (QReport_MEt[mtyp][testtyp]->getStatus() == 300)
1079 qr_MET_MEt[mtyp][testtyp] = 0;
1081 qr_MET_MEt[mtyp][testtyp] = -1;
1083 qr_MET_MEt[mtyp][testtyp] = -2;
1086 if (QReport_SumEt[mtyp][testtyp]) {
1087 if (QReport_SumEt[mtyp][testtyp]->getStatus() == 100 || QReport_SumEt[mtyp][testtyp]->getStatus() == 200)
1088 qr_MET_SumEt[mtyp][testtyp] = 1;
1089 else if (QReport_SumEt[mtyp][testtyp]->getStatus() == 300)
1090 qr_MET_SumEt[mtyp][testtyp] = 0;
1092 qr_MET_SumEt[mtyp][testtyp] = -1;
1094 qr_MET_SumEt[mtyp][testtyp] = -2;
1097 if (QReport_METPhi[mtyp][testtyp]) {
1098 if (QReport_METPhi[mtyp][testtyp]->getStatus() == 100 || QReport_METPhi[mtyp][testtyp]->getStatus() == 200)
1099 qr_MET_METPhi[mtyp][testtyp] = 1;
1100 else if (QReport_METPhi[mtyp][testtyp]->getStatus() == 300)
1101 qr_MET_METPhi[mtyp][testtyp] = 0;
1103 qr_MET_METPhi[mtyp][testtyp] = -1;
1105 qr_MET_METPhi[mtyp][testtyp] = -2;
1111 printf(
"====================MET Type %d QTest Report Summary========================\n", mtyp);
1112 printf(
"MEx test MEy test MEt test: SumEt test: METPhi test:\n");
1113 for (
int tt = 0;
tt < 2; ++
tt) {
1114 printf(
"%2.2f %2.2f %2.2f %2.2f %2.2f\n",
1115 qr_MET_MExy[mtyp][
tt][0],
1116 qr_MET_MExy[mtyp][tt][1],
1117 qr_MET_MEt[mtyp][tt],
1118 qr_MET_SumEt[mtyp][tt],
1119 qr_MET_METPhi[mtyp][tt]);
1121 printf(
"===========================================================================\n");
1125 for (
int ttyp = 0; ttyp < 2; ++ttyp) {
1127 qr_MET_MExy[mtyp][ttyp][0] = 1;
1128 qr_MET_MExy[mtyp][ttyp][1] = 1;
1129 qr_MET_MEt[mtyp][ttyp] = 1;
1130 qr_MET_SumEt[mtyp][ttyp] = 1;
1131 qr_MET_METPhi[mtyp][ttyp] = 1;
1135 if ((qr_MET_MExy[mtyp][0][0] == 0) || (qr_MET_MExy[mtyp][0][1] == 0) || (qr_MET_MEt[mtyp][0] == 0) ||
1136 (qr_MET_SumEt[mtyp][0] == 0) || (qr_MET_METPhi[mtyp][0] == 0) || (qr_MET_MExy[mtyp][1][0] == 0) ||
1137 (qr_MET_MExy[mtyp][1][1] == 0) || (qr_MET_MEt[mtyp][1] == 0) || (qr_MET_SumEt[mtyp][1] == 0) ||
1138 (qr_MET_METPhi[mtyp][1] == 0))
1140 else if ((qr_MET_MExy[mtyp][0][0] == -1) && (qr_MET_MExy[mtyp][0][1] == -1) && (qr_MET_MEt[mtyp][0] == -1) &&
1141 (qr_MET_SumEt[mtyp][0] == -1) && (qr_MET_METPhi[mtyp][0] == -1) && (qr_MET_MExy[mtyp][1][0] == -1) &&
1142 (qr_MET_MExy[mtyp][1][1] == -1) && (qr_MET_MEt[mtyp][1] == -1) && (qr_MET_SumEt[mtyp][1] == -1) &&
1143 (qr_MET_METPhi[mtyp][1] == -1))
1145 else if ((qr_MET_MExy[mtyp][0][0] == -2) && (qr_MET_MExy[mtyp][0][1] == -2) && (qr_MET_MEt[mtyp][0] == -2) &&
1146 (qr_MET_SumEt[mtyp][0] == -2) && (qr_MET_METPhi[mtyp][0] == -2) && (qr_MET_MExy[mtyp][1][0] == -2) &&
1147 (qr_MET_MExy[mtyp][1][1] == -2) && (qr_MET_MEt[mtyp][1] == -2) && (qr_MET_SumEt[mtyp][1] == -2) &&
1148 (qr_MET_METPhi[mtyp][1] == -2))
1154 std::cout <<
"Certifying MET algo: " << mtyp <<
" with value: " << dc_MET[mtyp] << std::endl;
1161 for (
int i = 0;
i < 3;
i++) {
1171 float dc_CT[3] = {-2.};
1176 for (
int cttyp = 0; cttyp < 3; ++cttyp) {
1178 std::cout <<
"Certifying CaloTowers with value: " << dc_CT[cttyp] << std::endl;
MonitorElement * mMVAPUJIDDiscriminant_lowPt_Forward_MiniAOD_over_Reco
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX)
T getParameter(std::string const &) const
MonitorElement * mMET_EffCSCTightHalo2015Filter
T getUntrackedParameter(std::string const &, T const &) const
MonitorElement * mMET_nVtx_profile_MiniAOD_over_Reco
MonitorElement * mMVAPUJIDDiscriminant_lowPt_EndCap_MiniAOD_over_Reco
virtual TH2F * getTH2F() const
MonitorElement * mMET_EffCSCTightHaloFilter
MonitorElement * mPt_MiniAOD_over_Reco
MonitorElement * mMuonMultiplicity_MiniAOD_over_Reco
MonitorElement * bookFloat(TString const &name)
MonitorElement * CertificationSummaryMap
virtual void setOption(const char *option)
MonitorElement * mMVAPUJIDDiscriminant_mediumPt_EndCap_MiniAOD_over_Reco
void setCurrentFolder(std::string const &fullpath)
MonitorElement * reportSummary
MonitorElement * mNeutralHadronEtFraction_MiniAOD_over_Reco
MonitorElement * mHFEFracVSpT_Forward_MiniAOD_over_Reco
MonitorElement * mMET_EffHcalStripHaloFilter
MonitorElement * mPt_Barrel_MiniAOD_over_Reco
MonitorElement * mMET_MiniAOD_over_Reco
MonitorElement * mChargedHadronEtFraction_MiniAOD_over_Reco
MonitorElement * mSumET_logx_MiniAOD_over_Reco
edm::InputTag inputMETLabelRECOUncleaned_
const QReport * getQReport(const std::string &qtname) const
get QReport corresponding to <qtname> (null pointer if QReport does not exist)
MonitorElement * mDPhi_MiniAOD_over_Reco
MonitorElement * mHFHadronEtFraction_MiniAOD_over_Reco
MonitorElement * mLooseJIDPassFractionVSeta_MiniAOD_over_Reco
MonitorElement * mMET_EffEcalDeadCellTriggerFilter
MonitorElement * mMVAPUJIDDiscriminant_highPt_Barrel_MiniAOD_over_Reco
MonitorElement * mCHFrac_MiniAOD_over_Reco
MonitorElement * mPt_uncor_MiniAOD_over_Reco
MonitorElement * mNjets_MiniAOD_over_Reco
MonitorElement * mPt_EndCap_MiniAOD_over_Reco
MonitorElement * mPhotonEtFraction_MiniAOD_over_Reco
MonitorElement * mMETPhi_MiniAOD_over_Reco
virtual int getNbinsX() const
get # of bins in X-axis
MonitorElement * mNHFrac_MiniAOD_over_Reco
MonitorElement * mEta_MiniAOD_over_Reco
~DataCertificationJetMET() override
MonitorElement * mPhi_MiniAOD_over_Reco
MonitorElement * reportSummaryMap
MonitorElement * mNeutralFraction_MiniAOD_over_Reco
virtual void setBinLabel(int bin, const std::string &label, int axis=1)
set bin label for x, y or z axis (axis=1, 2, 3 respectively)
virtual double getBinContent(int binx) const
get content of bin (1-D)
MonitorElement * mMET_EffEcalDeadCellBoundaryFilter
edm::InputTag inputJetLabelRECO_
MonitorElement * mMET_EffHBHENoiseFilter
edm::InputTag inputJetLabelMiniAOD_
MonitorElement * mHFEMEtFraction_MiniAOD_over_Reco
MonitorElement * CertificationSummary
MonitorElement * mPhFracVSpT_Barrel_MiniAOD_over_Reco
MonitorElement * mSumET_MiniAOD_over_Reco
virtual void setBinContent(int binx, double content)
set content of bin (1-D)
MonitorElement * mPt_Forward_MiniAOD_over_Reco
MonitorElement * mCHFracVSpT_Barrel_MiniAOD_over_Reco
MonitorElement * mJetEnergyCorrVSeta_MiniAOD_over_Reco
MonitorElement * mJetEnergyCorr_MiniAOD_over_Reco
MonitorElement * mPhi_uncor_MiniAOD_over_Reco
MonitorElement * mNeutralMultiplicity_MiniAOD_over_Reco
MonitorElement * mMET_EffeeBadScFilter
MonitorElement * mPhFrac_MiniAOD_over_Reco
MonitorElement * mMVAPUJIDDiscriminant_lowPt_Barrel_MiniAOD_over_Reco
void dqmEndJob(DQMStore::IBooker &, DQMStore::IGetter &) override
MonitorElement * mMEy_MiniAOD_over_Reco
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY)
MonitorElement * mChargedMultiplicity_MiniAOD_over_Reco
edm::InputTag inputMETLabelRECO_
MonitorElement * mMET_EffHBHEIsoNoiseFilter
TObject * getRootObject() const override
MonitorElement * mSumET_nVtx_profile_MiniAOD_over_Reco
MonitorElement * mPhotonEtFraction_nVtx_profile_MiniAOD_over_Reco
MonitorElement * mNHFracVSpT_EndCap_MiniAOD_over_Reco
MonitorElement * get(std::string const &path)
MonitorElement * mNeutralHadronEtFraction_nVtx_profile_MiniAOD_over_Reco
MonitorElement * mChargedHadronEtFraction_nVtx_profile_MiniAOD_over_Reco
MonitorElement * mEta_uncor_MiniAOD_over_Reco
MonitorElement * mHFHFracVSpT_Forward_MiniAOD_over_Reco
edm::InputTag inputMETLabelMiniAOD_
MonitorElement * mMET_logx_MiniAOD_over_Reco
void setCurrentFolder(std::string const &fullpath)
std::vector< std::string > getSubdirs()
DataCertificationJetMET(const edm::ParameterSet &)