147 if (
verbose_)
std::cout <<
">>> EndRun (DataCertificationJetMET) <<<" << std::endl;
152 std::vector<MonitorElement*> mes;
153 std::vector<std::string> subDirVec;
158 std::string RefRunDir;
168 if (
verbose_)
std::cout <<
"1 >>> found " << mes.size() <<
" monitoring elements!" << std::endl;
172 for (std::vector<std::string>::const_iterator ic = subDirVec.begin();
173 ic != subDirVec.end(); ic++) {
178 RunNumber = run.
id().
run();
186 if (
verbose_)
std::cout <<
"found " << mes.size() <<
" monitoring elements!" << std::endl;
189 std::string currDir =
dbe_->
pwd();
196 for (std::vector<std::string>::const_iterator ic = subDirVec.begin();
197 ic != subDirVec.end(); ic++) {
207 if (RunDir ==
"JetMET") {
209 if (
verbose_)
std::cout <<
"-XXX- RunDir = >>" << RunDir.c_str() <<
"<<" << std::endl;
213 RunNumber = atoi(RunNum.c_str());
227 MonitorElement* CertificationSummaryMap =
dbe_->
book2D(
"CertificationSummaryMap",
"CertificationSummaryMap",3,0,3,5,0,5);
228 reportSummaryMap->
getTH2F()->SetStats(kFALSE);
229 CertificationSummaryMap->
getTH2F()->SetStats(kFALSE);
230 reportSummaryMap->
getTH2F()->SetOption(
"colz");
231 CertificationSummaryMap->
getTH2F()->SetOption(
"colz");
237 CertificationSummaryMap->
setBinLabel(1,
"CaloTower");
241 reportSummary->
Fill(1.);
242 CertificationSummary->
Fill(1.);
245 if (RunDir==
"Reference") RunDir=
"";
249 std::string refHistoName;
250 std::string newHistoName;
263 if (RunDir ==
"") newHistoName =
"JetMET/Jet/";
264 else newHistoName = RunDir+
"/JetMET/Run summary/Jet/";
265 std::string cleaningdir =
"";
267 cleaningdir =
"Cleaned";
269 meJetPhi[0] =
dbe_->
get(newHistoName+cleaningdir+
"AntiKtJets/Phi_Barrel");
270 meJetPhi[1] =
dbe_->
get(newHistoName+cleaningdir+
"AntiKtJets/Phi_EndCap");
271 meJetPhi[2] =
dbe_->
get(newHistoName+cleaningdir+
"AntiKtJets/Phi_Forward");
272 meJetPhi[3] =
dbe_->
get(newHistoName+
"PFJets/Phi");
273 meJetPhi[4] =
dbe_->
get(newHistoName+
"JPT/Phi");
276 meJetEta[0] =
dbe_->
get(newHistoName+cleaningdir+
"AntiKtJets/Eta");
277 meJetEta[1] =
dbe_->
get(newHistoName+cleaningdir+
"AntiKtJets/Eta");
278 meJetEta[2] =
dbe_->
get(newHistoName+cleaningdir+
"AntiKtJets/Eta");
279 meJetEta[3] =
dbe_->
get(newHistoName+
"PFJets/Eta");
280 meJetEta[4] =
dbe_->
get(newHistoName+
"JPT/Eta");
283 meJetPt[0] =
dbe_->
get(newHistoName+cleaningdir+
"AntiKtJets/Pt_Barrel");
284 meJetPt[1] =
dbe_->
get(newHistoName+cleaningdir+
"AntiKtJets/Pt_EndCap");
285 meJetPt[2] =
dbe_->
get(newHistoName+cleaningdir+
"AntiKtJets/Pt_Forward");
286 meJetPt[3] =
dbe_->
get(newHistoName+
"PFJets/Pt2");
287 meJetPt[4] =
dbe_->
get(newHistoName+
"JPT/Pt2");
290 meJetConstituents[0] =
dbe_->
get(newHistoName+cleaningdir+
"AntiKtJets/Constituents");
291 meJetConstituents[1] =
dbe_->
get(newHistoName+cleaningdir+
"AntiKtJets/Constituents");
292 meJetConstituents[2] =
dbe_->
get(newHistoName+cleaningdir+
"AntiKtJets/Constituents");
293 meJetConstituents[3] =
dbe_->
get(newHistoName+
"PFJets/Constituents");
296 meJetEMFrac[0] =
dbe_->
get(newHistoName+cleaningdir+
"AntiKtJets/EFrac");
297 meJetEMFrac[1] =
dbe_->
get(newHistoName+cleaningdir+
"AntiKtJets/EFrac");
298 meJetEMFrac[2] =
dbe_->
get(newHistoName+cleaningdir+
"AntiKtJets/EFrac");
299 meJetEMFrac[3] =
dbe_->
get(newHistoName+
"PFJets/EFrac");
302 meJetNTracks =
dbe_->
get(newHistoName+
"JPT/nTracks");
318 const QReport * QReport_JetEta[5];
319 const QReport * QReport_JetPhi[5];
322 const QReport * QReport_JetConstituents[4][2];
323 const QReport * QReport_JetEFrac[4][2];
324 const QReport * QReport_JetPt[5][2];
326 const QReport * QReport_JetNTracks[2];
329 float qr_Jet_NTracks[2] = {-1.};
330 float qr_Jet_Constituents[4][2] = {{-1.}};
331 float qr_Jet_EFrac[4][2] = {{-1.}};
332 float qr_Jet_Eta[5] = {-1.};
333 float qr_Jet_Phi[5] = {-1.};
334 float qr_Jet_Pt[5][2] = {{-1.}};
335 float dc_Jet[5] = {-1.};
337 for (
int jtyp = 0; jtyp < 5; ++jtyp){
340 if (meJetConstituents[jtyp]) {
341 QReport_JetConstituents[jtyp][0] = meJetConstituents[jtyp]->
getQReport(
"meanJetConstituentsTest");
342 QReport_JetConstituents[jtyp][1] = meJetConstituents[jtyp]->
getQReport(
"KolmogorovTest");
344 if (meJetEMFrac[jtyp]) {
345 QReport_JetEFrac[jtyp][0] = meJetEMFrac[jtyp]->
getQReport(
"meanEMFractionTest");
346 QReport_JetEFrac[jtyp][1] = meJetEMFrac[jtyp]->
getQReport(
"KolmogorovTest");
351 QReport_JetNTracks[0] = meJetNTracks->
getQReport(
"meanNTracksTest");
352 QReport_JetNTracks[1] = meJetNTracks->
getQReport(
"KolmogorovTest");
356 QReport_JetPt[jtyp][0] = meJetPt[jtyp]->
getQReport(
"meanJetPtTest");
357 QReport_JetPt[jtyp][1] = meJetPt[jtyp]->
getQReport(
"KolmogorovTest");
360 QReport_JetPhi[jtyp] = meJetPhi[jtyp]->
getQReport(
"KolmogorovTest");
362 QReport_JetEta[jtyp] = meJetEta[jtyp]->
getQReport(
"KolmogorovTest");
365 if (QReport_JetPt[jtyp][0]){
366 if (QReport_JetPt[jtyp][0]->
getStatus()==100 ||
367 QReport_JetPt[jtyp][0]->
getStatus()==200)
368 qr_Jet_Pt[jtyp][0] = 1;
369 else if (QReport_JetPt[jtyp][0]->
getStatus()==300)
370 qr_Jet_Pt[jtyp][0] = 0;
372 qr_Jet_Pt[jtyp][0] = -1;
374 else qr_Jet_Pt[jtyp][0] = -2;
376 if (QReport_JetPt[jtyp][1]){
377 if (QReport_JetPt[jtyp][1]->
getStatus()==100 ||
378 QReport_JetPt[jtyp][1]->
getStatus()==200)
379 qr_Jet_Pt[jtyp][1] = 1;
380 else if (QReport_JetPt[jtyp][1]->
getStatus()==300)
381 qr_Jet_Pt[jtyp][1] = 0;
383 qr_Jet_Pt[jtyp][1] = -1;
385 else qr_Jet_Pt[jtyp][1] = -2;
388 if (QReport_JetPhi[jtyp]){
389 if (QReport_JetPhi[jtyp]->
getStatus()==100 ||
391 qr_Jet_Phi[jtyp] = 1;
392 else if (QReport_JetPhi[jtyp]->
getStatus()==300)
393 qr_Jet_Phi[jtyp] = 0;
395 qr_Jet_Phi[jtyp] = -1;
397 else qr_Jet_Phi[jtyp] = -2;
400 if (QReport_JetEta[jtyp]){
401 if (QReport_JetEta[jtyp]->
getStatus()==100 ||
403 qr_Jet_Eta[jtyp] = 1;
404 else if (QReport_JetEta[jtyp]->
getStatus()==300)
405 qr_Jet_Eta[jtyp] = 0;
407 qr_Jet_Eta[jtyp] = -1;
409 else qr_Jet_Eta[jtyp] = -2;
413 if (QReport_JetConstituents[jtyp][0]){
414 if (QReport_JetConstituents[jtyp][0]->
getStatus()==100 ||
415 QReport_JetConstituents[jtyp][0]->
getStatus()==200)
416 qr_Jet_Constituents[jtyp][0] = 1;
417 else if (QReport_JetConstituents[jtyp][0]->
getStatus()==300)
418 qr_Jet_Constituents[jtyp][0] = 0;
420 qr_Jet_Constituents[jtyp][0] = -1;
422 else qr_Jet_Constituents[jtyp][0] = -2;
424 if (QReport_JetConstituents[jtyp][1]){
425 if (QReport_JetConstituents[jtyp][1]->
getStatus()==100 ||
426 QReport_JetConstituents[jtyp][1]->
getStatus()==200)
427 qr_Jet_Constituents[jtyp][1] = 1;
428 else if (QReport_JetConstituents[jtyp][1]->
getStatus()==300)
429 qr_Jet_Constituents[jtyp][1] = 0;
431 qr_Jet_Constituents[jtyp][1] = -1;
433 else qr_Jet_Constituents[jtyp][1] = -2;
436 if (QReport_JetEFrac[jtyp][0]){
437 if (QReport_JetEFrac[jtyp][0]->
getStatus()==100 ||
438 QReport_JetEFrac[jtyp][0]->
getStatus()==200)
439 qr_Jet_EFrac[jtyp][0] = 1;
440 else if (QReport_JetEFrac[jtyp][0]->
getStatus()==300)
441 qr_Jet_EFrac[jtyp][0] = 0;
443 qr_Jet_EFrac[jtyp][0] = -1;
445 else qr_Jet_EFrac[jtyp][0] = -2;
447 if (QReport_JetEFrac[jtyp][1]){
448 if (QReport_JetEFrac[jtyp][1]->
getStatus()==100 ||
449 QReport_JetEFrac[jtyp][1]->
getStatus()==200)
450 qr_Jet_EFrac[jtyp][1] = 1;
451 else if (QReport_JetEFrac[jtyp][1]->
getStatus()==300)
452 qr_Jet_EFrac[jtyp][1] = 0;
454 qr_Jet_EFrac[jtyp][1] = -1;
456 else qr_Jet_EFrac[jtyp][1] = -2;
459 for (
int ii = 0; ii < 2; ++ii) {
461 if (QReport_JetNTracks[ii]){
462 if (QReport_JetNTracks[ii]->
getStatus()==100 ||
463 QReport_JetNTracks[ii]->
getStatus()==200)
464 qr_Jet_NTracks[ii] = 1;
465 else if (QReport_JetNTracks[ii]->
getStatus()==300)
466 qr_Jet_NTracks[ii] = 0;
468 qr_Jet_NTracks[ii] = -1;
470 else qr_Jet_NTracks[ii] = -2;
475 printf(
"====================Jet Type %d QTest Report Summary========================\n",jtyp);
476 printf(
"Eta: Phi: Pt 1: 2: Const/Ntracks 1: 2: EFrac/tracknhits 1: 2:\n");
478 printf(
"%2.2f %2.2f %2.2f %2.2f %2.2f %2.2f %2.2f %2.2f\n", \
481 qr_Jet_Pt[jtyp][0], \
482 qr_Jet_Pt[jtyp][1], \
483 qr_Jet_Constituents[jtyp][0], \
484 qr_Jet_Constituents[jtyp][1], \
485 qr_Jet_EFrac[jtyp][0], \
486 qr_Jet_EFrac[jtyp][1]);
489 printf(
"%2.2f %2.2f %2.2f %2.2f %2.2f %2.2f\n", \
492 qr_Jet_Pt[jtyp][0], \
493 qr_Jet_Pt[jtyp][1], \
497 printf(
"===========================================================================\n");
502 for (
int ttyp = 0; ttyp < 2; ++ttyp) {
504 qr_Jet_Pt[jtyp][ttyp] = 1;
506 qr_Jet_Eta[jtyp] = 1;
507 qr_Jet_Phi[jtyp] = 1;
510 qr_Jet_EFrac[jtyp][ttyp] = 1;
511 qr_Jet_Constituents[jtyp][ttyp] = 1;
514 qr_Jet_NTracks[ttyp] = 1;
521 if ( (qr_Jet_EFrac[jtyp][0] == 0) ||
522 (qr_Jet_EFrac[jtyp][1] == 0) ||
523 (qr_Jet_Constituents[jtyp][1] == 0) ||
524 (qr_Jet_Constituents[jtyp][0] == 0) ||
525 (qr_Jet_Eta[jtyp] == 0) ||
526 (qr_Jet_Phi[jtyp] == 0) ||
527 (qr_Jet_Pt[jtyp][0] == 0) ||
528 (qr_Jet_Pt[jtyp][1] == 0)
531 else if ( (qr_Jet_EFrac[jtyp][0] == -1) &&
532 (qr_Jet_EFrac[jtyp][1] == -1) &&
533 (qr_Jet_Constituents[jtyp][1] == -1) &&
534 (qr_Jet_Constituents[jtyp][0] == -1) &&
535 (qr_Jet_Eta[jtyp] == -1) &&
536 (qr_Jet_Phi[jtyp] == -1) &&
537 (qr_Jet_Pt[jtyp][0] == -1) &&
538 (qr_Jet_Pt[jtyp][1] == -1 )
541 else if ( (qr_Jet_EFrac[jtyp][0] == -2) &&
542 (qr_Jet_EFrac[jtyp][1] == -2) &&
543 (qr_Jet_Constituents[jtyp][1] == -2) &&
544 (qr_Jet_Constituents[jtyp][0] == -2) &&
545 (qr_Jet_Eta[jtyp] == -2) &&
546 (qr_Jet_Phi[jtyp] == -2) &&
547 (qr_Jet_Pt[jtyp][0] == -2) &&
548 (qr_Jet_Pt[jtyp][1] == -2)
555 if ( (qr_Jet_NTracks[0] == 0) ||
556 (qr_Jet_NTracks[1] == 0) ||
557 (qr_Jet_Eta[jtyp] == 0) ||
558 (qr_Jet_Phi[jtyp] == 0) ||
559 (qr_Jet_Pt[jtyp][0] == 0) ||
560 (qr_Jet_Pt[jtyp][1] == 0)
563 else if ( (qr_Jet_NTracks[0] == -1) &&
564 (qr_Jet_NTracks[1] == -1) &&
565 (qr_Jet_Eta[jtyp] == -1) &&
566 (qr_Jet_Phi[jtyp] == -1) &&
567 (qr_Jet_Pt[jtyp][0] == -1) &&
568 (qr_Jet_Pt[jtyp][1] == -1)
571 else if ( (qr_Jet_NTracks[0] == -2) &&
572 (qr_Jet_NTracks[1] == -2) &&
573 (qr_Jet_Eta[jtyp] == -2) &&
574 (qr_Jet_Phi[jtyp] == -2) &&
575 (qr_Jet_Pt[jtyp][0] == -2) &&
576 (qr_Jet_Pt[jtyp][1] == -2)
583 if (
verbose_)
std::cout<<
"Certifying Jet algo: "<<jtyp<<
" with value: "<<dc_Jet[jtyp]<<std::endl;
584 CertificationSummaryMap->
Fill(2, 4-jtyp, dc_Jet[jtyp]);
585 reportSummaryMap->
Fill(2, 4-jtyp, dc_Jet[jtyp]);
605 if (RunDir ==
"") newHistoName =
"JetMET/MET/";
606 else newHistoName = RunDir+
"/JetMET/Run summary/MET/";
609 cleaningdir =
"BasicCleanup";
613 meMExy[0][0] =
dbe_->
get(newHistoName+
"CaloMET/"+cleaningdir+
"/"+
metFolder+
"/METTask_CaloMEx");
614 meMExy[0][1] =
dbe_->
get(newHistoName+
"CaloMET/"+cleaningdir+
"/"+
metFolder+
"/METTask_CaloMEy");
615 meMExy[1][0] =
dbe_->
get(newHistoName+
"CaloMETNoHF/"+cleaningdir+
"/"+
metFolder+
"/METTask_CaloMEx");
616 meMExy[1][1] =
dbe_->
get(newHistoName+
"CaloMETNoHF/"+cleaningdir+
"/"+
metFolder+
"/METTask_CaloMEy");
617 meMExy[2][0] =
dbe_->
get(newHistoName+
"PfMET/"+cleaningdir+
"/"+
metFolder+
"/METTask_PfMEx");
618 meMExy[2][1] =
dbe_->
get(newHistoName+
"PfMET/"+cleaningdir+
"/"+
metFolder+
"/METTask_PfMEy");
619 meMExy[3][0] =
dbe_->
get(newHistoName+
"TcMET/"+cleaningdir+
"/"+
metFolder+
"/METTask_MEx");
620 meMExy[3][1] =
dbe_->
get(newHistoName+
"TcMET/"+cleaningdir+
"/"+
metFolder+
"/METTask_MEy");
621 meMExy[4][0] =
dbe_->
get(newHistoName+
"MuCorrMET/"+cleaningdir+
"/"+
metFolder+
"/METTask_CaloMEx");
622 meMExy[4][1] =
dbe_->
get(newHistoName+
"MuCorrMET/"+cleaningdir+
"/"+
metFolder+
"/METTask_CaloMEy");
624 meMETPhi[0] =
dbe_->
get(newHistoName+
"CaloMET/"+cleaningdir+
"/"+
metFolder+
"/METTask_CaloMETPhi");
625 meMETPhi[1] =
dbe_->
get(newHistoName+
"CaloMETNoHF/"+cleaningdir+
"/"+
metFolder+
"/METTask_CaloMETPhi");
626 meMETPhi[2] =
dbe_->
get(newHistoName+
"PfMET/"+cleaningdir+
"/"+
metFolder+
"/METTask_PfMETPhi");
627 meMETPhi[3] =
dbe_->
get(newHistoName+
"TcMET/"+cleaningdir+
"/"+
metFolder+
"/METTask_METPhi");
628 meMETPhi[4] =
dbe_->
get(newHistoName+
"MuCorrMET/"+cleaningdir+
"/"+
metFolder+
"/METTask_CaloMETPhi");
630 meMEt[0] =
dbe_->
get(newHistoName+
"CaloMET/"+cleaningdir+
"/"+
metFolder+
"/METTask_CaloMET");
631 meMEt[1] =
dbe_->
get(newHistoName+
"CaloMETNoHF/"+cleaningdir+
"/"+
metFolder+
"/METTask_CaloMET");
632 meMEt[2] =
dbe_->
get(newHistoName+
"PfMET/"+cleaningdir+
"/"+
metFolder+
"/METTask_PfMET");
633 meMEt[3] =
dbe_->
get(newHistoName+
"TcMET/"+cleaningdir+
"/"+
metFolder+
"/METTask_MET");
634 meMEt[4] =
dbe_->
get(newHistoName+
"MuCorrMET/"+cleaningdir+
"/"+
metFolder+
"/METTask_CaloMET");
636 meSumEt[0] =
dbe_->
get(newHistoName+
"CaloMET/"+cleaningdir+
"/"+
metFolder+
"/METTask_CaloSumET");
637 meSumEt[1] =
dbe_->
get(newHistoName+
"CaloMETNoHF/"+cleaningdir+
"/"+
metFolder+
"/METTask_CaloSumET");
638 meSumEt[2] =
dbe_->
get(newHistoName+
"PfMET/"+cleaningdir+
"/"+
metFolder+
"/METTask_PfSumET");
639 meSumEt[3] =
dbe_->
get(newHistoName+
"TcMET/"+cleaningdir+
"/"+
metFolder+
"/METTask_SumET");
640 meSumEt[4] =
dbe_->
get(newHistoName+
"MuCorrMET/"+cleaningdir+
"/"+
metFolder+
"/METTask_CaloSumET");
648 const QReport * QReport_MExy[5][2][2];
649 const QReport * QReport_MEt[5][2];
650 const QReport * QReport_SumEt[5][2];
652 const QReport * QReport_METPhi[5][2];
655 float qr_MET_MExy[5][2][2] = {{{-999.}}};
656 float qr_MET_MEt[5][2] = {{-999.}};
657 float qr_MET_SumEt[5][2] = {{-999.}};
658 float qr_MET_METPhi[5][2] = {{-999.}};
659 float dc_MET[5] = {-999.};
661 for (
int mtyp = 0; mtyp < 5; ++mtyp){
668 if (meMExy[mtyp][0]) {
669 QReport_MExy[mtyp][0][0] = meMExy[mtyp][0]->
getQReport(
"meanMExyTest");
670 QReport_MExy[mtyp][1][0] = meMExy[mtyp][0]->
getQReport(
"KolmogorovTest");
672 if (meMExy[mtyp][1]) {
673 QReport_MExy[mtyp][0][1] = meMExy[mtyp][1]->
getQReport(
"meanMExyTest");
674 QReport_MExy[mtyp][1][1] = meMExy[mtyp][1]->
getQReport(
"KolmogorovTest");
677 QReport_MEt[mtyp][0] = meMEt[mtyp]->
getQReport(
"meanMETTest");
678 QReport_MEt[mtyp][1] = meMEt[mtyp]->
getQReport(
"KolmogorovTest");
682 QReport_SumEt[mtyp][0] = meSumEt[mtyp]->
getQReport(
"meanSumETTest");
683 QReport_SumEt[mtyp][1] = meSumEt[mtyp]->
getQReport(
"KolmogorovTest");
686 if (meMETPhi[mtyp]) {
687 QReport_METPhi[mtyp][0] = meMETPhi[mtyp]->
getQReport(
"phiQTest");
688 QReport_METPhi[mtyp][1] = meMETPhi[mtyp]->
getQReport(
"KolmogorovTest");
690 for (
int testtyp = 0; testtyp < 2; ++testtyp) {
692 if (QReport_MExy[mtyp][testtyp][0]){
693 if (QReport_MExy[mtyp][testtyp][0]->
getStatus()==100 ||
694 QReport_MExy[mtyp][testtyp][0]->
getStatus()==200)
695 qr_MET_MExy[mtyp][testtyp][0] = 1;
696 else if (QReport_MExy[mtyp][testtyp][0]->
getStatus()==300)
697 qr_MET_MExy[mtyp][testtyp][0] = 0;
699 qr_MET_MExy[mtyp][testtyp][0] = -1;
701 else qr_MET_MExy[mtyp][testtyp][0] = -2;
704 if (QReport_MExy[mtyp][testtyp][1]){
705 if (QReport_MExy[mtyp][testtyp][1]->
getStatus()==100 ||
706 QReport_MExy[mtyp][testtyp][1]->
getStatus()==200)
707 qr_MET_MExy[mtyp][testtyp][1] = 1;
708 else if (QReport_MExy[mtyp][testtyp][1]->
getStatus()==300)
709 qr_MET_MExy[mtyp][testtyp][1] = 0;
711 qr_MET_MExy[mtyp][testtyp][1] = -1;
713 else qr_MET_MExy[mtyp][testtyp][1] = -2;
716 if (QReport_MEt[mtyp][testtyp]){
717 if (QReport_MEt[mtyp][testtyp]->
getStatus()==100 ||
718 QReport_MEt[mtyp][testtyp]->
getStatus()==200)
719 qr_MET_MEt[mtyp][testtyp] = 1;
720 else if (QReport_MEt[mtyp][testtyp]->
getStatus()==300)
721 qr_MET_MEt[mtyp][testtyp] = 0;
723 qr_MET_MEt[mtyp][testtyp] = -1;
725 else qr_MET_MEt[mtyp][testtyp] = -2;
728 if (QReport_SumEt[mtyp][testtyp]){
729 if (QReport_SumEt[mtyp][testtyp]->
getStatus()==100 ||
730 QReport_SumEt[mtyp][testtyp]->
getStatus()==200)
731 qr_MET_SumEt[mtyp][testtyp] = 1;
732 else if (QReport_SumEt[mtyp][testtyp]->
getStatus()==300)
733 qr_MET_SumEt[mtyp][testtyp] = 0;
735 qr_MET_SumEt[mtyp][testtyp] = -1;
737 else qr_MET_SumEt[mtyp][testtyp] = -2;
740 if (QReport_METPhi[mtyp][testtyp]){
741 if (QReport_METPhi[mtyp][testtyp]->
getStatus()==100 ||
742 QReport_METPhi[mtyp][testtyp]->
getStatus()==200)
743 qr_MET_METPhi[mtyp][testtyp] = 1;
744 else if (QReport_METPhi[mtyp][testtyp]->
getStatus()==300)
745 qr_MET_METPhi[mtyp][testtyp] = 0;
747 qr_MET_METPhi[mtyp][testtyp] = -1;
749 else qr_MET_METPhi[mtyp][testtyp] = -2;
754 printf(
"====================MET Type %d QTest Report Summary========================\n",mtyp);
755 printf(
"MEx test MEy test MEt test: SumEt test: METPhi test:\n");
756 for (
int tt = 0; tt < 2; ++tt) {
757 printf(
"%2.2f %2.2f %2.2f %2.2f %2.2f\n",qr_MET_MExy[mtyp][tt][0], \
758 qr_MET_MExy[mtyp][tt][1], \
759 qr_MET_MEt[mtyp][tt], \
760 qr_MET_SumEt[mtyp][tt], \
761 qr_MET_METPhi[mtyp][tt]);
763 printf(
"===========================================================================\n");
768 for (
int ttyp = 0; ttyp < 2; ++ttyp) {
770 qr_MET_MExy[mtyp][ttyp][0] = 1;
771 qr_MET_MExy[mtyp][ttyp][1] = 1;
772 qr_MET_MEt[mtyp][ttyp] = 1;
773 qr_MET_SumEt[mtyp][ttyp] = 1;
774 qr_MET_METPhi[mtyp][ttyp] = 1;
780 (qr_MET_MExy[mtyp][0][0] == 0) ||
781 (qr_MET_MExy[mtyp][0][1] == 0) ||
782 (qr_MET_MEt[mtyp][0] == 0) ||
783 (qr_MET_SumEt[mtyp][0] == 0) ||
784 (qr_MET_METPhi[mtyp][0] == 0) ||
785 (qr_MET_MExy[mtyp][1][0] == 0) ||
786 (qr_MET_MExy[mtyp][1][1] == 0) ||
787 (qr_MET_MEt[mtyp][1] == 0) ||
788 (qr_MET_SumEt[mtyp][1] == 0) ||
789 (qr_MET_METPhi[mtyp][1] == 0)
793 (qr_MET_MExy[mtyp][0][0] == -1) &&
794 (qr_MET_MExy[mtyp][0][1] == -1) &&
795 (qr_MET_MEt[mtyp][0] == -1) &&
796 (qr_MET_SumEt[mtyp][0] == -1) &&
797 (qr_MET_METPhi[mtyp][0] == -1) &&
798 (qr_MET_MExy[mtyp][1][0] == -1) &&
799 (qr_MET_MExy[mtyp][1][1] == -1) &&
800 (qr_MET_MEt[mtyp][1] == -1) &&
801 (qr_MET_SumEt[mtyp][1] == -1) &&
802 (qr_MET_METPhi[mtyp][1] == -1)
806 (qr_MET_MExy[mtyp][0][0] == -2) &&
807 (qr_MET_MExy[mtyp][0][1] == -2) &&
808 (qr_MET_MEt[mtyp][0] == -2) &&
809 (qr_MET_SumEt[mtyp][0] == -2) &&
810 (qr_MET_METPhi[mtyp][0] == -2) &&
811 (qr_MET_MExy[mtyp][1][0] == -2) &&
812 (qr_MET_MExy[mtyp][1][1] == -2) &&
813 (qr_MET_MEt[mtyp][1] == -2) &&
814 (qr_MET_SumEt[mtyp][1] == -2) &&
815 (qr_MET_METPhi[mtyp][1] == -2)
821 if (
verbose_)
std::cout<<
"Certifying MET algo: "<<mtyp<<
" with value: "<<dc_MET[mtyp]<<std::endl;
822 CertificationSummaryMap->
Fill(1, 4-mtyp, dc_MET[mtyp]);
823 reportSummaryMap->
Fill(1, 4-mtyp, dc_MET[mtyp]);
851 float qr_CT_Occ[3] = {-2.};
852 float dc_CT[3] = {-2.};
857 qr_CT_Occ[0] = dc_CT[0];
858 qr_CT_Occ[1] = dc_CT[1];
859 qr_CT_Occ[2] = dc_CT[2];
861 for (
int cttyp = 0; cttyp < 3; ++cttyp) {
863 if (
verbose_)
std::cout<<
"Certifying CaloTowers with value: "<<dc_CT[cttyp]<<std::endl;
864 CertificationSummaryMap->
Fill(0, 4-cttyp, dc_CT[cttyp]);
865 reportSummaryMap->
Fill(0, 4-cttyp, dc_CT[cttyp]);
const QReport * getQReport(const std::string &qtname) const
get QReport corresponding to <qtname> (null pointer if QReport does not exist)
std::vector< std::string > getSubdirs(void) const
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)
static int getStatus(const HepMC::GenParticle *p)
MonitorElement * bookFloat(const char *name)
Book float.
std::vector< MonitorElement * > getAllContents(const std::string &path) const
MonitorElement * get(const std::string &path) const
get ME from full pathname (e.g. "my/long/dir/my_histo")
void showDirStructure(void) const
TH2F * getTH2F(void) const
MonitorElement * book2D(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY)
Book 2D histogram.
void setCurrentFolder(const std::string &fullpath)
const std::string & pwd(void) const