31 #include "CLHEP/Units/GlobalPhysicalConstants.h"
84 : magneticFieldToken_{esConsumes<edm::Transition::BeginRun>()},
96 consumes<reco::PhotonCollection>(
edm::InputTag(photonCollectionProducer_, photonCollection_));
147 consumes<reco::TrackToTrackingParticleAssociator>(
edm::InputTag(
"trackAssociatorByHitsForPhotonValidation"));
246 h_nSimPho_[0] = iBooker.
book1D(histname,
"# of Sim photons per event ", 20, -0.5, 19.5);
247 histname =
"SimPhoMotherEt";
248 h_SimPhoMotherEt_[0] = iBooker.
book1D(histname,
"Sim photon Mother tranverse energy spectrum", etBin, etMin, etMax);
250 histname =
"SimPhoMotherEtMatched";
252 histname,
"Sim photon matched by a reco Photon: Mother tranverse energy spectrum", etBin, etMin, etMax);
254 "SimPhoMotherEtaMatched",
" Sim Photon matched by a reco Photon: Mother Eta ", etaBin, etaMin, etaMax);
257 histname =
"h_SimPhoEta";
258 h_SimPho_[0] = iBooker.
book1D(histname,
" All photons simulated #eta", etaBin, etaMin, etaMax);
259 histname =
"h_SimPhoPhi";
260 h_SimPho_[1] = iBooker.
book1D(histname,
" All photons simulated #phi", phiBin, phiMin, phiMax);
261 histname =
"h_SimPhoEt";
262 h_SimPho_[2] = iBooker.
book1D(histname,
" All photons simulated Et", etBin, etMin, etMax);
264 histname =
"nOfSimPhotonsMatched";
265 h_nSimPho_[1] = iBooker.
book1D(histname,
"# of Sim photons matched by a reco Photon per event ", 20, -0.5, 19.5);
266 histname =
"h_MatchedSimPhoEta";
267 h_MatchedSimPho_[0] = iBooker.
book1D(histname,
" Matching photons simulated #eta", etaBin, etaMin, etaMax);
268 histname =
"h_MatchedSimPhoPhi";
269 h_MatchedSimPho_[1] = iBooker.
book1D(histname,
" Matching photons simulated #phi", phiBin, phiMin, phiMax);
270 histname =
"h_MatchedSimPhoEt";
273 histname =
"h_MatchedSimPhoBadChEta";
275 histname =
"h_MatchedSimPhoBadChPhi";
277 histname =
"h_MatchedSimPhoBadChEt";
281 histname =
"nOfSimConversions";
283 h_nSimConv_[0] = iBooker.
book1D(histname,
"# of Sim conversions per event ", 20, -0.5, 19.5);
284 histname =
"nOfVisSimConversions";
285 h_nSimConv_[1] = iBooker.
book1D(histname,
"# of Sim conversions per event ", 20, -0.5, 19.5);
288 histname =
"h_AllSimConvEta";
289 h_AllSimConv_[0] = iBooker.
book1D(histname,
" All conversions: simulated #eta", etaBin2, etaMin, etaMax);
290 histname =
"h_AllSimConvPhi";
291 h_AllSimConv_[1] = iBooker.
book1D(histname,
" All conversions: simulated #phi", phiBin, phiMin, phiMax);
292 histname =
"h_AllSimConvR";
293 h_AllSimConv_[2] = iBooker.
book1D(histname,
" All conversions: simulated R", rBin, rMin, rMax);
294 histname =
"h_AllSimConvZ";
295 h_AllSimConv_[3] = iBooker.
book1D(histname,
" All conversions: simulated Z", zBin, zMin, zMax);
296 histname =
"h_AllSimConvEt";
297 h_AllSimConv_[4] = iBooker.
book1D(histname,
" All conversions: simulated Et", etBin, etMin, etMax);
299 histname =
"h_VisSimConvEta";
300 h_VisSimConv_[0] = iBooker.
book1D(histname,
" All vis conversions: simulated #eta", etaBin2, etaMin, etaMax);
301 histname =
"h_VisSimConvPhi";
302 h_VisSimConv_[1] = iBooker.
book1D(histname,
" All vis conversions: simulated #phi", phiBin, phiMin, phiMax);
303 histname =
"h_VisSimConvR";
304 h_VisSimConv_[2] = iBooker.
book1D(histname,
" All vis conversions: simulated R", rBin, rMin, rMax);
305 histname =
"h_VisSimConvZ";
306 h_VisSimConv_[3] = iBooker.
book1D(histname,
" All vis conversions: simulated Z", zBin, zMin, zMax);
307 histname =
"h_VisSimConvEt";
308 h_VisSimConv_[4] = iBooker.
book1D(histname,
" All vis conversions: simulated Et", etBin, etMin, etMax);
310 histname =
"h_SimConvOneTracksEta";
312 iBooker.
book1D(histname,
" All vis conversions with 1 reco tracks: simulated #eta", etaBin2, etaMin, etaMax);
313 histname =
"h_SimConvOneTracksPhi";
315 iBooker.
book1D(histname,
" All vis conversions with 1 reco tracks: simulated #phi", phiBin, phiMin, phiMax);
316 histname =
"h_SimConvOneTracksR";
318 iBooker.
book1D(histname,
" All vis conversions with 1 reco tracks: simulated R", rBin, rMin, rMax);
319 histname =
"h_SimConvOneTracksZ";
321 iBooker.
book1D(histname,
" All vis conversions with 1 reco tracks: simulated Z", zBin, zMin, zMax);
322 histname =
"h_SimConvOneTracksEt";
324 iBooker.
book1D(histname,
" All vis conversions with 1 reco tracks: simulated Et", etBin, etMin, etMax);
326 histname =
"h_SimConvTwoMTracksEta";
328 histname,
" All vis conversions with 2 reco-matching tracks: simulated #eta", etaBin2, etaMin, etaMax);
329 histname =
"h_SimConvTwoMTracksPhi";
331 histname,
" All vis conversions with 2 reco-matching tracks: simulated #phi", phiBin, phiMin, phiMax);
332 histname =
"h_SimConvTwoMTracksR";
334 iBooker.
book1D(histname,
" All vis conversions with 2 reco-matching tracks: simulated R", rBin, rMin, rMax);
335 histname =
"h_SimConvTwoMTracksZ";
337 iBooker.
book1D(histname,
" All vis conversions with 2 reco-matching tracks: simulated Z", zBin, zMin, zMax);
338 histname =
"h_SimConvTwoMTracksEt";
340 iBooker.
book1D(histname,
" All vis conversions with 2 reco-matching tracks: simulated Et", etBin, etMin, etMax);
342 histname =
"h_SimConvTwoTracksEta";
344 iBooker.
book1D(histname,
" All vis conversions with 2 reco tracks: simulated #eta", etaBin2, etaMin, etaMax);
345 histname =
"h_SimConvTwoTracksPhi";
347 iBooker.
book1D(histname,
" All vis conversions with 2 reco tracks: simulated #phi", phiBin, phiMin, phiMax);
348 histname =
"h_SimConvTwoTracksR";
350 iBooker.
book1D(histname,
" All vis conversions with 2 reco tracks: simulated R", rBin, rMin, rMax);
351 histname =
"h_SimConvTwoTracksZ";
353 iBooker.
book1D(histname,
" All vis conversions with 2 reco tracks: simulated Z", zBin, zMin, zMax);
354 histname =
"h_SimConvTwoTracksEt";
356 iBooker.
book1D(histname,
" All vis conversions with 2 reco tracks: simulated Et", etBin, etMin, etMax);
358 histname =
"h_SimConvOneMTracksEta";
360 histname,
" All vis conversions with 1 reco-matching tracks: simulated #eta", etaBin2, etaMin, etaMax);
361 histname =
"h_SimConvOneMTracksPhi";
363 histname,
" All vis conversions with 1 reco-matching tracks: simulated #phi", phiBin, phiMin, phiMax);
364 histname =
"h_SimConvOneMTracksR";
366 iBooker.
book1D(histname,
" All vis conversions with 1 reco-matching tracks: simulated R", rBin, rMin, rMax);
367 histname =
"h_SimConvOneMTracksZ";
369 iBooker.
book1D(histname,
" All vis conversions with 1 reco-matching tracks: simulated Z", zBin, zMin, zMax);
370 histname =
"h_SimConvOneMTracksEt";
372 iBooker.
book1D(histname,
" All vis conversions with 1 reco-matching tracks: simulated Et", etBin, etMin, etMax);
374 histname =
"h_SimConvTwoMTracksEtaAndVtxPGT0";
376 histname,
" All vis conversions with 2 reco-matching tracks + vertex: simulated #eta", etaBin2, etaMin, etaMax);
377 histname =
"h_SimConvTwoMTracksPhiAndVtxPGT0";
379 histname,
" All vis conversions with 2 reco-matching tracks + vertex: simulated #phi", phiBin, phiMin, phiMax);
380 histname =
"h_SimConvTwoMTracksRAndVtxPGT0";
382 histname,
" All vis conversions with 2 reco-matching tracks + vertex: simulated R", rBin, rMin, rMax);
383 histname =
"h_SimConvTwoMTracksZAndVtxPGT0";
385 histname,
" All vis conversions with 2 reco-matching tracks + vertex: simulated Z", zBin, zMin, zMax);
386 histname =
"h_SimConvTwoMTracksEtAndVtxPGT0";
388 histname,
" All vis conversions with 2 reco-matching tracks + vertex: simulated Et", etBin, etMin, etMax);
390 histname =
"h_SimConvTwoMTracksEtaAndVtxPGT0005";
392 histname,
" All vis conversions with 2 reco-matching tracks + vertex: simulated #eta", etaBin2, etaMin, etaMax);
393 histname =
"h_SimConvTwoMTracksPhiAndVtxPGT0005";
395 histname,
" All vis conversions with 2 reco-matching tracks + vertex: simulated #phi", phiBin, phiMin, phiMax);
396 histname =
"h_SimConvTwoMTracksRAndVtxPGT0005";
398 histname,
" All vis conversions with 2 reco-matching tracks + vertex: simulated R", rBin, rMin, rMax);
399 histname =
"h_SimConvTwoMTracksZAndVtxPGT0005";
401 histname,
" All vis conversions with 2 reco-matching tracks + vertex: simulated Z", zBin, zMin, zMax);
402 histname =
"h_SimConvTwoMTracksEtAndVtxPGT0005";
404 histname,
" All vis conversions with 2 reco-matching tracks + vertex: simulated Et", etBin, etMin, etMax);
407 h_SimConvEtaPix_[0] = iBooker.
book1D(
"simConvEtaPix",
" sim converted Photon Eta: Pix ", etaBin, etaMin, etaMax);
408 h_simTkPt_ = iBooker.
book1D(
"simTkPt",
"Sim conversion tracks pt ", etBin * 3, 0., etMax);
409 h_simTkEta_ = iBooker.
book1D(
"simTkEta",
"Sim conversion tracks eta ", etaBin, etaMin, etaMax);
411 " Photon Sim conversion vtx position",
419 " Photon Sim conversion vtx position",
427 " Photon Sim conversion vtx position",
435 "simConvVtxYvsXTrkBarrel",
" Photon Sim conversion vtx position, (x,y) eta<1 ", 100, -80., 80., 100, -80., 80.);
439 histname =
"h_SimJetEta";
440 h_SimJet_[0] = iBooker.
book1D(histname,
" Jet bkg simulated #eta", etaBin, etaMin, etaMax);
441 histname =
"h_SimJetPhi";
442 h_SimJet_[1] = iBooker.
book1D(histname,
" Jet bkg simulated #phi", phiBin, phiMin, phiMax);
443 histname =
"h_SimJetEt";
444 h_SimJet_[2] = iBooker.
book1D(histname,
" Jet bkg simulated Et", etBin, etMin, etMax);
446 histname =
"h_MatchedSimJetEta";
448 histname =
"h_MatchedSimJetPhi";
450 histname =
"h_MatchedSimJetEt";
453 histname =
"h_MatchedSimJetBadChEta";
455 histname =
"h_MatchedSimJetBadChPhi";
457 histname =
"h_MatchedSimJetBadChEt";
462 histname =
"nOfPhotons";
463 h_nPho_ = iBooker.
book1D(histname,
"# of Reco photons per event ", 20, -0.5, 19.5);
465 h_scBkgEta_ = iBooker.
book1D(
"scBkgEta",
" SC Bkg Eta ", etaBin, etaMin, etaMax);
466 h_scBkgPhi_ = iBooker.
book1D(
"scBkgPhi",
" SC Bkg Phi ", phiBin, phiMin, phiMax);
468 h_phoBkgEta_ = iBooker.
book1D(
"phoBkgEta",
" Photon Bkg Eta ", etaBin, etaMin, etaMax);
469 h_phoBkgPhi_ = iBooker.
book1D(
"phoBkgPhi",
" Photon Bkg Phi ", phiBin, phiMin, phiMax);
471 h_phoBkgDEta_ = iBooker.
book1D(
"phoBkgDEta",
" Photon Eta(rec)-Eta(true) ", dEtaBin, dEtaMin, dEtaMax);
472 h_phoBkgDPhi_ = iBooker.
book1D(
"phoBkgDPhi",
" Photon Phi(rec)-Phi(true) ", dPhiBin, dPhiMin, dPhiMax);
474 histname =
"phoBkgE";
475 h_phoBkgE_[0] = iBooker.
book1D(histname +
"All",
" Photon Bkg Energy: All ecal ", eBin, eMin, eMax);
476 h_phoBkgE_[1] = iBooker.
book1D(histname +
"Barrel",
" Photon Bkg Energy: barrel ", eBin, eMin, eMax);
477 h_phoBkgE_[2] = iBooker.
book1D(histname +
"Endcap",
" Photon Bkg Energy: Endcap ", eBin, eMin, eMax);
479 histname =
"phoBkgEt";
480 h_phoBkgEt_[0] = iBooker.
book1D(histname +
"All",
" Photon Bkg Transverse Energy: All ecal ", etBin, etMin, etMax);
481 h_phoBkgEt_[1] = iBooker.
book1D(histname +
"Barrel",
" Photon Bkg Transverse Energy: Barrel ", etBin, etMin, etMax);
482 h_phoBkgEt_[2] = iBooker.
book1D(histname +
"Endcap",
" Photon BkgTransverse Energy: Endcap ", etBin, etMin, etMax);
486 h_scBkgE_[0] = iBooker.
book1D(histname +
"All",
" SC bkg Energy: All Ecal ", eBin, eMin, eMax);
487 h_scBkgE_[1] = iBooker.
book1D(histname +
"Barrel",
" SC bkg Energy: Barrel ", eBin, eMin, eMax);
488 h_scBkgE_[2] = iBooker.
book1D(histname +
"Endcap",
" SC bkg Energy: Endcap ", eBin, eMin, eMax);
489 histname =
"scBkgEt";
490 h_scBkgEt_[0] = iBooker.
book1D(histname +
"All",
" SC bkg Et: All Ecal ", eBin, eMin, eMax);
491 h_scBkgEt_[1] = iBooker.
book1D(histname +
"Barrel",
" SC bkg Et: Barrel ", eBin, eMin, eMax);
492 h_scBkgEt_[2] = iBooker.
book1D(histname +
"Endcap",
" SC bkg Et: Endcap ", eBin, eMin, eMax);
495 h_r9Bkg_[0] = iBooker.
book1D(histname +
"All",
" r9 bkg: All Ecal", r9Bin, r9Min, r9Max);
496 h_r9Bkg_[1] = iBooker.
book1D(histname +
"Barrel",
" r9 bkg: Barrel ", r9Bin, r9Min, r9Max);
497 h_r9Bkg_[2] = iBooker.
book1D(histname +
"Endcap",
" r9 bkg: Endcap ", r9Bin, r9Min, r9Max);
499 histname =
"R9VsEtaBkg";
502 iBooker.
book2D(histname +
"All",
" Bkg r9 vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 1.1);
504 histname =
"R9VsEtBkg";
507 iBooker.
book2D(histname +
"All",
" Bkg photons r9 vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 1.1);
510 h_r1Bkg_[0] = iBooker.
book1D(histname +
"All",
" Bkg photon e1x5/e5x5: All Ecal", r9Bin, r9Min, r9Max);
511 h_r1Bkg_[1] = iBooker.
book1D(histname +
"Barrel",
" Bkg photon e1x5/e5x5: Barrel ", r9Bin, r9Min, r9Max);
512 h_r1Bkg_[2] = iBooker.
book1D(histname +
"Endcap",
" Bkg photon e1x5/e5x5: Endcap ", r9Bin, r9Min, r9Max);
514 histname =
"R1VsEtaBkg";
517 histname +
"All",
" Bkg photons e1x5/e5x5 vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 1.1);
518 histname =
"pR1VsEtaBkg";
521 histname +
"All",
" Bkg photons e1x5/e5x5 vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 1.1);
523 histname =
"R1VsEtBkg";
526 iBooker.
book2D(histname +
"All",
" Bkg photons e1x5/e5x5 vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 1.1);
527 histname =
"pR1VsEtBkg";
530 histname +
"All",
" Bkg photons e2x5/e5x5 vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 1.1);
533 h_r2Bkg_[0] = iBooker.
book1D(histname +
"All",
" Bkg photon e2x5/e5x5: All Ecal", r9Bin, r9Min, r9Max);
534 h_r2Bkg_[1] = iBooker.
book1D(histname +
"Barrel",
" Bkg photon e2x5/e5x5: Barrel ", r9Bin, r9Min, r9Max);
535 h_r2Bkg_[2] = iBooker.
book1D(histname +
"Endcap",
" Bkg photon e2x5/e5x5: Endcap ", r9Bin, r9Min, r9Max);
537 histname =
"R2VsEtaBkg";
540 histname +
"All",
" Bkg photons e2x5/e5x5 vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 1.1);
541 histname =
"pR2VsEtaBkg";
544 histname +
"All",
" Bkg photons e2x5/e5x5 vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 1.1);
546 histname =
"R2VsEtBkg";
549 iBooker.
book2D(histname +
"All",
" Bkg photons e2x5/e5x5 vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 1.1);
550 histname =
"pR2VsEtBkg";
553 histname +
"All",
" Bkg photons e2x5/e5x5 vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 1.1);
555 histname =
"sigmaIetaIetaBkg";
560 histname =
"sigmaIetaIetaVsEtaBkg";
563 histname +
"All",
" Bkg photons sigmaIetaIeta vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 0.1);
564 histname =
"pSigmaIetaIetaVsEtaBkg";
567 histname +
"All",
" Bkg photons sigmaIetaIeta vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 0.1);
569 histname =
"sigmaIetaIetaVsEtBkg";
572 histname +
"All",
" Bkg photons sigmaIetaIeta vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 0.1);
575 histname +
"Barrel",
" Bkg photons sigmaIetaIeta vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 0.1);
578 histname +
"Endcap",
" Bkg photons sigmaIetaIeta vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 0.1);
580 histname =
"pSigmaIetaIetaVsEtBkg";
583 histname +
"All",
" Bkg photons sigmaIetaIeta vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 0.1);
586 histname +
"Barrel",
" Bkg photons sigmaIetaIeta vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 0.1);
589 histname +
"Endcap",
" Bkg photons sigmaIetaIeta vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 0.1);
591 histname =
"hOverEBkg";
593 h_hOverEBkg_[1] = iBooker.
book1D(histname +
"Barrel",
"H/E bkg: Barrel ", 100, 0., 1.);
594 h_hOverEBkg_[2] = iBooker.
book1D(histname +
"Endcap",
"H/E bkg: Endcap ", 100, 0., 1.);
596 histname =
"pHOverEVsEtaBkg";
599 iBooker.
bookProfile(histname +
"All",
" Bkg H/E vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 0.1);
600 histname =
"pHOverEVsEtBkg";
603 iBooker.
bookProfile(histname +
"All",
" Bkg photons H/E vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 0.1);
605 histname =
"hOverEVsEtaBkg";
607 iBooker.
book2D(histname +
"All",
" Bkg H/E vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 0.1);
609 histname =
"hOverEVsEtBkg";
611 iBooker.
book2D(histname +
"All",
" Bkg photons H/E vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 0.1);
614 histname =
"ecalRecHitSumEtConeDR04Bkg";
616 iBooker.
book1D(histname +
"All",
"bkg ecalRecHitSumEtDR04: All Ecal", etBin, etMin, 50.);
618 iBooker.
book1D(histname +
"Barrel",
"bkg ecalRecHitSumEtDR04: Barrel ", etBin, etMin, 50.);
620 iBooker.
book1D(histname +
"Endcap",
"bkg ecalRecHitSumEtDR04: Endcap ", etBin, etMin, 50.);
623 histname =
"ecalRecHitSumEtConeDR04VsEtaBkg";
625 " bkg ecalRecHitSumEtDR04 vs #eta: all Ecal ",
632 histname =
"ecalRecHitSumEtConeDR04VsEtBkg";
634 " Bkg ecalRecHitSumEtDR04 vs Et: all Ecal ",
642 " Bkg ecalRecHitSumEtDR04 vs Et: Barrel ",
650 " Bkg ecalRecHitSumEtDR04 vs Et: Endcap ",
657 histname =
"hcalTowerSumEtConeDR04VsEtaBkg";
659 " bkg hcalTowerSumEtDR04 vs #eta: all Ecal ",
666 histname =
"hcalTowerSumEtConeDR04VsEtBkg";
668 " Bkg hcalTowerSumEtDR04 vs Et: all Ecal ",
676 " Bkg hcalTowerSumEtDR04 vs Et: Barrel ",
684 " Bkg hcalTowerSumEtDR04 vs Et: Endcap ",
693 histname =
"pEcalRecHitSumEtConeDR04VsEtaBkg";
696 "bkg photons ecalRecHitSumEtDR04 vs #eta: all Ecal ",
705 histname =
"pEcalRecHitSumEtConeDR04VsEtBkg";
708 "Bkg ecalRecHitSumEtDR04 vs Et: all Ecal ",
718 "Bkg ecalRecHitSumEtDR04 vs Et: all Ecal ",
728 "Bkg ecalRecHitSumEtDR04 vs Et: all Ecal ",
737 histname =
"hcalTowerSumEtConeDR04Bkg";
739 iBooker.
book1D(histname +
"All",
"bkg hcalTowerSumEtDR04: All Ecal", etBin, etMin, 20.);
741 iBooker.
book1D(histname +
"Barrel",
"bkg hcalTowerSumEtDR04: Barrel ", etBin, etMin, 20.);
743 iBooker.
book1D(histname +
"Endcap",
"bkg hcalTowerSumEtDR04: Endcap ", etBin, etMin, 20.);
745 histname =
"pHcalTowerSumEtConeDR04VsEtaBkg";
748 "bkg photons hcalTowerSumEtDR04 vs #eta: all Ecal ",
757 histname =
"pHcalTowerSumEtConeDR04VsEtBkg";
760 "Bkg hcalTowerSumEtDR04 vs Et: all Ecal ",
770 "Bkg hcalTowerSumEtDR04 vs Et: all Ecal ",
780 "Bkg hcalTowerSumEtDR04 vs Et: all Ecal ",
789 histname =
"isoTrkSolidConeDR04Bkg";
791 iBooker.
book1D(histname +
"All",
"isoTrkSolidConeDR04 Bkg: All Ecal", etBin, etMin, etMax * 0.1);
793 iBooker.
book1D(histname +
"Barrel",
"isoTrkSolidConeDR04 Bkg: Barrel ", etBin, etMin, etMax * 0.1);
795 iBooker.
book1D(histname +
"Endcap",
"isoTrkSolidConeDR04 Bkg: Endcap ", etBin, etMin, etMax * 0.1);
797 histname =
"isoTrkSolidConeDR04VsEtaBkg";
800 " Bkg photons isoTrkSolidConeDR04 vs #eta: all Ecal ",
807 histname =
"pIsoTrkSolidConeDR04VsEtaBkg";
810 " Bkg photons isoTrkSolidConeDR04 vs #eta: all Ecal ",
818 histname =
"isoTrkSolidConeDR04VsEtBkg";
821 " Bkg photons isoTrkSolidConeDR04 vs Et: all Ecal ",
830 " Bkg photons isoTrkSolidConeDR04 vs Et: all Ecal ",
839 " Bkg photons isoTrkSolidConeDR04 vs Et: all Ecal ",
846 histname =
"pIsoTrkSolidConeDR04VsEtBkg";
849 " Bkg photons isoTrkSolidConeDR04 vs Et: all Ecal ",
858 " Bkg photons isoTrkSolidConeDR04 vs Et: all Ecal ",
867 " Bkg photons isoTrkSolidConeDR04 vs Et: all Ecal ",
875 histname =
"nTrkSolidConeDR04Bkg";
880 histname =
"nTrkSolidConeDR04VsEtaBkg";
883 histname +
"All",
" Bkg photons nTrkSolidConeDR04 vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 20, 0., 20);
884 histname =
"p_nTrkSolidConeDR04VsEtaBkg";
887 histname +
"All",
" Bkg photons nTrkSolidConeDR04 vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 20, 0., 20);
889 histname =
"nTrkSolidConeDR04VsEtBkg";
892 histname +
"All",
"Bkg photons nTrkSolidConeDR04 vs Et: all Ecal ", etBin, etMin, etMax, 20, 0., 20);
895 histname +
"Barrel",
"Bkg photons nTrkSolidConeDR04 vs Et: all Ecal ", etBin, etMin, etMax, 20, 0., 20);
898 histname +
"Endcap",
"Bkg photons nTrkSolidConeDR04 vs Et: all Ecal ", etBin, etMin, etMax, 20, 0., 20);
900 histname =
"pnTrkSolidConeDR04VsEtBkg";
903 histname +
"All",
"Bkg photons nTrkSolidConeDR04 vs Et: all Ecal ", etBin, etMin, etMax, 20, 0., 20);
906 histname +
"Barrel",
"Bkg photons nTrkSolidConeDR04 vs Et: all Ecal ", etBin, etMin, etMax, 20, 0., 20);
909 histname +
"Endcap",
"Bkg photons nTrkSolidConeDR04 vs Et: all Ecal ", etBin, etMin, etMax, 20, 0., 20);
911 h_convEtaBkg_ = iBooker.
book1D(
"convEtaBkg",
" converted Photon Bkg Eta 2 tracks", etaBin, etaMin, etaMax);
912 h_convPhiBkg_ = iBooker.
book1D(
"convPhiBkg",
" converted Photon Bkg Phi ", phiBin, phiMin, phiMax);
914 histname =
"mvaOutBkg";
915 h_mvaOutBkg_[0] = iBooker.
book1D(histname +
"All",
" mvaOut conversions bkg : All Ecal", 100, 0., 1.);
916 h_mvaOutBkg_[1] = iBooker.
book1D(histname +
"Barrel",
" mvaOut conversions bkg: Barrel Ecal", 100, 0., 1.);
917 h_mvaOutBkg_[2] = iBooker.
book1D(histname +
"Endcap",
" mvaOut conversions bkg: Endcap Ecal", 100, 0., 1.);
919 histname =
"PoverEtracksBkg";
921 iBooker.
book1D(histname +
"All",
" bkg photons conversion p/E: all Ecal ", povereBin, povereMin, povereMax);
923 iBooker.
book1D(histname +
"Barrel",
"bkg photons conversion p/E: Barrel Ecal", povereBin, povereMin, povereMax);
925 iBooker.
book1D(histname +
"Endcap",
" bkg photons conversion p/E: Endcap Ecal ", povereBin, povereMin, povereMax);
927 histname =
"EoverPtracksBkg";
929 iBooker.
book1D(histname +
"All",
" bkg photons conversion E/p: all Ecal ", eoverpBin, eoverpMin, eoverpMax);
931 iBooker.
book1D(histname +
"Barrel",
"bkg photons conversion E/p: Barrel Ecal", eoverpBin, eoverpMin, eoverpMax);
933 iBooker.
book1D(histname +
"Endcap",
" bkg photons conversion E/p: Endcap Ecal ", eoverpBin, eoverpMin, eoverpMax);
935 histname =
"hDCotTracksBkg";
937 " bkg Photons:Tracks from conversions #delta cotg(#Theta) Tracks: all Ecal ",
942 " bkg Photons:Tracks from conversions #delta cotg(#Theta) Tracks: Barrel Ecal ",
947 " bkg Photons:Tracks from conversions #delta cotg(#Theta) Tracks: Endcap Ecal ",
952 histname =
"hDPhiTracksAtVtxBkg";
954 iBooker.
book1D(histname +
"All",
955 " Bkg Photons:Tracks from conversions: #delta#phi Tracks at vertex: all Ecal",
960 iBooker.
book1D(histname +
"Barrel",
961 " Bkg Photons:Tracks from conversions: #delta#phi Tracks at vertex: Barrel Ecal",
966 iBooker.
book1D(histname +
"Endcap",
967 " Bkg Photons:Tracks from conversions: #delta#phi Tracks at vertex: Endcap Ecal",
974 " Bkg Photon Reco conversion vtx position",
982 " Bkg Photon Reco conversion vtx position",
990 " Bkg Photon Reco conversion vtx position, (x,y) eta<1 ",
1002 histname =
"nOfflineVtx";
1003 h_nRecoVtx_ = iBooker.
book1D(histname,
"# of Offline Vertices", 200, -0.5, 199.5);
1005 h_phoEta_[0] = iBooker.
book1D(
"phoEta",
" Photon Eta ", etaBin, etaMin, etaMax);
1006 h_phoPhi_[0] = iBooker.
book1D(
"phoPhi",
" Photon Phi ", phiBin, phiMin, phiMax);
1008 h_phoDEta_[0] = iBooker.
book1D(
"phoDEta",
" Photon Eta(rec)-Eta(true) ", dEtaBin, dEtaMin, dEtaMax);
1009 h_phoDPhi_[0] = iBooker.
book1D(
"phoDPhi",
" Photon Phi(rec)-Phi(true) ", dPhiBin, dPhiMin, dPhiMax);
1011 h_scEta_[0] = iBooker.
book1D(
"scEta",
" SC Eta ", etaBin, etaMin, etaMax);
1012 h_scPhi_[0] = iBooker.
book1D(
"scPhi",
" SC Phi ", phiBin, phiMin, phiMax);
1020 h_scE_[0][0] = iBooker.
book1D(histname +
"All",
" SC Energy: All Ecal ", eBin, eMin, eMax);
1021 h_scE_[0][1] = iBooker.
book1D(histname +
"Barrel",
" SC Energy: Barrel ", eBin, eMin, eMax);
1022 h_scE_[0][2] = iBooker.
book1D(histname +
"Endcap",
" SC Energy: Endcap ", eBin, eMin, eMax);
1025 h_psE_ = iBooker.
book1D(histname +
"Endcap",
" ES Energy ", eBin, eMin, 50.);
1028 h_scEt_[0][0] = iBooker.
book1D(histname +
"All",
" SC Et: All Ecal ", etBin, etMin, etMax);
1029 h_scEt_[0][1] = iBooker.
book1D(histname +
"Barrel",
" SC Et: Barrel", etBin, etMin, etMax);
1030 h_scEt_[0][2] = iBooker.
book1D(histname +
"Endcap",
" SC Et: Endcap", etBin, etMin, etMax);
1033 h_r9_[0][0] = iBooker.
book1D(histname +
"All",
" r9: All Ecal", r9Bin, r9Min, r9Max);
1034 h_r9_[0][1] = iBooker.
book1D(histname +
"Barrel",
" r9: Barrel ", r9Bin, r9Min, r9Max);
1035 h_r9_[0][2] = iBooker.
book1D(histname +
"Endcap",
" r9: Endcap ", r9Bin, r9Min, r9Max);
1039 histname =
"r9ConvFromMC";
1040 h_r9_[1][0] = iBooker.
book1D(histname +
"All",
" r9: All Ecal", r9Bin, r9Min, r9Max);
1041 h_r9_[1][1] = iBooker.
book1D(histname +
"Barrel",
" r9: Barrel ", r9Bin, r9Min, r9Max);
1042 h_r9_[1][2] = iBooker.
book1D(histname +
"Endcap",
" r9: Endcap ", r9Bin, r9Min, r9Max);
1044 histname =
"r9ConvFromReco";
1045 h_r9_[2][0] = iBooker.
book1D(histname +
"All",
" r9: All Ecal", r9Bin, r9Min, r9Max);
1046 h_r9_[2][1] = iBooker.
book1D(histname +
"Barrel",
" r9: Barrel ", r9Bin, r9Min, r9Max);
1047 h_r9_[2][2] = iBooker.
book1D(histname +
"Endcap",
" r9: Endcap ", r9Bin, r9Min, r9Max);
1049 histname =
"EtR9Less093";
1050 h_EtR9Less093_[0][0] = iBooker.
book1D(histname +
"All",
" r9 < 0.94 or 0.95 : All Ecal", etBin, etMin, etMax);
1051 h_EtR9Less093_[0][1] = iBooker.
book1D(histname +
"Barrel",
" r9 < 0.94 : Barrel ", etBin, etMin, etMax);
1052 h_EtR9Less093_[0][2] = iBooker.
book1D(histname +
"Endcap",
" r9 < 0.95 : Endcap ", etBin, etMin, etMax);
1053 histname =
"EtR9Less093Conv";
1055 iBooker.
book1D(histname +
"All",
" r9 < 0.94, 0.95 and good conv : All Ecal", etBin, etMin, etMax);
1057 iBooker.
book1D(histname +
"Barrel",
" r9 < 0.94 and good conv : Barrel ", etBin, etMin, etMax);
1059 iBooker.
book1D(histname +
"Endcap",
" r9 < 0.95 and good conv : Endcap ", etBin, etMin, etMax);
1063 histname =
"pR9VsEta";
1065 histname +
"All",
" All photons r9 vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 1.1);
1067 histname +
"Unconv",
" Unconv photons r9 vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 1.1);
1069 histname +
"Conv",
" Conv photons r9 vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 1.1);
1071 histname =
"R9VsEt";
1074 iBooker.
book2D(histname +
"All",
" All photons r9 vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 1.1);
1077 iBooker.
book2D(histname +
"Unconv",
" All photons r9 vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 1.1);
1080 h_r1_[0][0] = iBooker.
book1D(histname +
"All",
" e1x5/e5x5: All Ecal", r9Bin, r9Min, r9Max);
1081 h_r1_[0][1] = iBooker.
book1D(histname +
"Barrel",
" e1x5/e5x5: Barrel ", r9Bin, r9Min, r9Max);
1082 h_r1_[0][2] = iBooker.
book1D(histname +
"Endcap",
" e1x5/e5x5: Endcap ", r9Bin, r9Min, r9Max);
1084 histname =
"R1VsEta";
1087 histname +
"All",
" All photons e1x5/e5x5 vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 1.1);
1090 histname +
"Unconv",
" All photons e1x5/e5x5 vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 1.1);
1092 histname =
"R1VsEt";
1095 iBooker.
book2D(histname +
"All",
" All photons e1x5/e5x5 vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 1.1);
1098 histname +
"Unconv",
" All photons e1x5/e5x5 vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 1.1);
1101 h_r2_[0][0] = iBooker.
book1D(histname +
"All",
" e2x5/e5x5: All Ecal", r9Bin, r9Min, r9Max);
1102 h_r2_[0][1] = iBooker.
book1D(histname +
"Barrel",
" e2x5/e5x5: Barrel ", r9Bin, r9Min, r9Max);
1103 h_r2_[0][2] = iBooker.
book1D(histname +
"Endcap",
" e2x5/e5x5: Endcap ", r9Bin, r9Min, r9Max);
1105 histname =
"R2VsEta";
1108 histname +
"All",
" All photons e2x5/e5x5 vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 1.1);
1111 histname +
"Unconv",
" All photons e2x5/e5x5 vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 1.1);
1113 histname =
"R2VsEt";
1116 iBooker.
book2D(histname +
"All",
" All photons e2x5/e5x5 vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 1.1);
1119 histname +
"Unconv",
" All photons e2x5/e5x5 vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 1.1);
1121 histname =
"sigmaIetaIeta";
1126 histname =
"sigmaIetaIetaVsEta";
1129 histname +
"All",
" All photons sigmaIetaIeta vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 0.1);
1132 histname +
"Unconv",
" All photons sigmaIetaIeta vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 0.1);
1134 histname =
"sigmaIetaIetaVsEt";
1137 histname +
"All",
" All photons sigmaIetaIeta vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 0.1);
1140 histname +
"Unconv",
" All photons sigmaIetaIeta vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 0.1);
1142 histname =
"hOverE";
1143 h_hOverE_[0][0] = iBooker.
book1D(histname +
"All",
"H/E: All Ecal", 100, 0., 0.1);
1144 h_hOverE_[0][1] = iBooker.
book1D(histname +
"Barrel",
"H/E: Barrel ", 100, 0., 0.1);
1145 h_hOverE_[0][2] = iBooker.
book1D(histname +
"Endcap",
"H/E: Endcap ", 100, 0., 0.1);
1147 histname =
"newhOverE";
1148 h_newhOverE_[0][0] = iBooker.
book1D(histname +
"All",
"new H/E: All Ecal", 100, 0., 0.1);
1149 h_newhOverE_[0][1] = iBooker.
book1D(histname +
"Barrel",
"new H/E: Barrel ", 100, 0., 0.1);
1150 h_newhOverE_[0][2] = iBooker.
book1D(histname +
"Endcap",
"new H/E: Endcap ", 100, 0., 0.1);
1154 histname =
"hOverEVsEta";
1156 iBooker.
book2D(histname +
"All",
" All photons H/E vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 0.1);
1158 histname +
"Unconv",
" All photons H/E vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 0.1);
1160 histname =
"hOverEVsEt";
1162 iBooker.
book2D(histname +
"All",
" All photons H/E vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 0.1);
1164 iBooker.
book2D(histname +
"Unconv",
" All photons H/E vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 0.1);
1167 histname =
"pHoverEVsEta";
1169 histname +
"All",
" All photons H/E vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 0.1);
1171 histname +
"Unconv",
" All photons H/E vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 0.1);
1173 histname =
"pHoverEVsEt";
1175 iBooker.
bookProfile(histname +
"All",
" All photons H/E vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 0.1);
1177 iBooker.
bookProfile(histname +
"Unconv",
" All photons H/E vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 0.1);
1179 histname =
"pnewHoverEVsEta";
1181 histname +
"All",
" All photons new H/E vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 0.1);
1183 histname +
"Unconv",
" All photons new H/E vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 0.1);
1185 histname =
"pnewHoverEVsEt";
1187 iBooker.
bookProfile(histname +
"All",
" All photons new H/E vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 0.1);
1189 histname +
"Unconv",
" All photons new H/E vs Et: all Ecal ", etBin, etMin, etMax, 100, 0., 0.1);
1191 histname =
"ecalRecHitSumEtConeDR04";
1193 iBooker.
book1D(histname +
"All",
"ecalRecHitSumEtDR04: All Ecal", etBin, etMin, 20.);
1195 iBooker.
book1D(histname +
"Barrel",
"ecalRecHitSumEtDR04: Barrel ", etBin, etMin, 20.);
1197 iBooker.
book1D(histname +
"Endcap",
"ecalRecHitSumEtDR04: Endcap ", etBin, etMin, 20.);
1201 histname =
"ecalRecHitSumEtConeDR04VsEta";
1203 " All photons ecalRecHitSumEtDR04 vs #eta: all Ecal ",
1211 " All photons ecalRecHitSumEtDR04 vs #eta: all Ecal ",
1219 histname =
"pEcalRecHitSumEtConeDR04VsEta";
1221 "All photons ecalRecHitSumEtDR04 vs #eta: all Ecal ",
1230 "All photons ecalRecHitSumEtDR04 vs #eta: all Ecal ",
1240 histname =
"ecalRecHitSumEtConeDR04VsEt";
1242 " All photons ecalRecHitSumEtDR04 vs Et: all Ecal ",
1250 " All photons ecalRecHitSumEtDR04 vs Et: Barrel ",
1258 " All photons ecalRecHitSumEtDR04 vs Et: Endcap ",
1266 histname =
"pEcalRecHitSumEtConeDR04VsEt";
1269 "All photons ecalRecHitSumEtDR04 vs Et: all Ecal ",
1278 "All photons ecalRecHitSumEtDR04 vs Et: all Ecal ",
1287 "All photons ecalRecHitSumEtDR04 vs Et: all Ecal ",
1296 histname =
"hcalTowerSumEtConeDR04";
1298 iBooker.
book1D(histname +
"All",
"hcalTowerSumEtConeDR04: All Ecal", etBin, etMin, 20.);
1300 iBooker.
book1D(histname +
"Barrel",
"hcalTowerSumEtConeDR04: Barrel ", etBin, etMin, 20.);
1302 iBooker.
book1D(histname +
"Endcap",
"hcalTowerSumEtConeDR04: Endcap ", etBin, etMin, 20.);
1304 histname =
"hcalTowerBcSumEtConeDR04";
1307 iBooker.
book1D(histname +
"All",
"hcalTowerBcSumEtConeDR04: All Ecal", etBin, etMin, 20.);
1309 iBooker.
book1D(histname +
"Barrel",
"hcalTowerBcSumEtConeDR04: Barrel ", etBin, etMin, 20.);
1311 iBooker.
book1D(histname +
"Endcap",
"hcalTowerBcSumEtConeDR04: Endcap ", etBin, etMin, 20.);
1315 histname =
"hcalTowerSumEtConeDR04VsEta";
1317 " All photons hcalTowerSumEtConeDR04 vs #eta: all Ecal ",
1325 " All photons hcalTowerSumEtConeDR04 vs #eta: all Ecal ",
1333 histname =
"pHcalTowerSumEtConeDR04VsEta";
1335 "All photons hcalTowerSumEtDR04 vs #eta: all Ecal ",
1344 "All photons hcalTowerSumEtDR04 vs #eta: all Ecal ",
1352 histname =
"pHcalTowerBcSumEtConeDR04VsEta";
1354 "All photons hcalTowerBcSumEtDR04 vs #eta: all Ecal ",
1363 "All photons hcalTowerBcSumEtDR04 vs #eta: all Ecal ",
1373 histname =
"hcalTowerSumEtConeDR04VsEt";
1375 " All photons hcalTowerSumEtConeDR04 vs Et: all Ecal ",
1383 " All photons hcalTowerSumEtConeDR04 vs Et: Barrel ",
1391 " All photons hcalTowerSumEtConeDR04 vs Et: Endcap ",
1399 histname =
"pHcalTowerSumEtConeDR04VsEt";
1402 "All photons hcalTowerSumEtDR04 vs Et: all Ecal ",
1411 "All photons hcalTowerSumEtDR04 vs Et: all Ecal ",
1420 "All photons hcalTowerSumEtDR04 vs Et: all Ecal ",
1429 histname =
"pHcalTowerBcSumEtConeDR04VsEt";
1432 "All photons hcalTowerBcSumEtDR04 vs Et: all Ecal ",
1441 "All photons hcalTowerBcSumEtDR04 vs Et: all Ecal ",
1450 "All photons hcalTowerBcSumEtDR04 vs Et: all Ecal ",
1460 histname =
"isoTrkSolidConeDR04";
1462 iBooker.
book1D(histname +
"All",
"isoTrkSolidConeDR04: All Ecal", etBin, etMin, etMax * 0.1);
1464 iBooker.
book1D(histname +
"Barrel",
"isoTrkSolidConeDR04: Barrel ", etBin, etMin, etMax * 0.1);
1466 iBooker.
book1D(histname +
"Endcap",
"isoTrkSolidConeDR04: Endcap ", etBin, etMin, etMax * 0.1);
1469 histname =
"isoTrkSolidConeDR04VsEta";
1472 " All photons isoTrkSolidConeDR04 vs #eta: all Ecal ",
1481 " All photons isoTrkSolidConeDR04 vs #eta: all Ecal ",
1490 histname =
"isoTrkSolidConeDR04VsEt";
1493 " All photons isoTrkSolidConeDR04 vs Et: all Ecal ",
1502 " All photons isoTrkSolidConeDR04 vs Et: all Ecal ",
1510 histname =
"nTrkSolidConeDR04";
1515 histname =
"nTrkSolidConeDR04VsEta";
1518 histname +
"All",
" All photons nTrkSolidConeDR04 vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 20, 0., 20);
1521 histname +
"Unconv",
" All photons nTrkSolidConeDR04 vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 20, 0., 20);
1523 histname =
"nTrkSolidConeDR04VsEt";
1526 histname +
"All",
" All photons nTrkSolidConeDR04 vs Et: all Ecal ", etBin, etMin, etMax, 20, 0., 20);
1529 histname +
"Unconv",
" All photons nTrkSolidConeDR04 vs Et: all Ecal ", etBin, etMin, etMax, 20, 0., 20);
1532 h_phoE_[0][0] = iBooker.
book1D(histname +
"All",
" Photon Energy: All ecal ", eBin, eMin, eMax);
1533 h_phoE_[0][1] = iBooker.
book1D(histname +
"Barrel",
" Photon Energy: barrel ", eBin, eMin, eMax);
1534 h_phoE_[0][2] = iBooker.
book1D(histname +
"Endcap",
" Photon Energy: Endcap ", eBin, eMin, eMax);
1537 h_phoEt_[0][0] = iBooker.
book1D(histname +
"All",
" Photon Transverse Energy: All ecal ", etBin, etMin, etMax);
1538 h_phoEt_[0][1] = iBooker.
book1D(histname +
"Barrel",
" Photon Transverse Energy: Barrel ", etBin, etMin, etMax);
1539 h_phoEt_[0][2] = iBooker.
book1D(histname +
"Endcap",
" Photon Transverse Energy: Endcap ", etBin, etMin, etMax);
1543 iBooker.
book1D(histname +
"All",
" Photon E/E_{true}: All ecal; E/E_{true} (GeV)", resBin, resMin, resMax);
1545 iBooker.
book1D(histname +
"Barrel",
"Photon E/E_{true}: Barrel; E/E_{true} (GeV)", resBin, resMin, resMax);
1547 iBooker.
book1D(histname +
"Endcap",
" Photon E/E_{true}: Endcap; E/E_{true} (GeV)", resBin, resMin, resMax);
1550 histname +
"unconvAll",
" Photon E/E_{true} if r9>0.94, 0.95: All ecal; E/E_{true} (GeV)", resBin, resMin, resMax);
1552 histname +
"unconvBarrel",
" Photon E/E_{true} if r9>0.94: Barrel; E/E_{true} (GeV)", resBin, resMin, resMax);
1554 histname +
"unconvEndcap",
" Photon E/E_{true} if r9>0.95: Endcap; E/E_{true} (GeV)", resBin, resMin, resMax);
1557 histname +
"convAll",
" Photon E/E_{true} if r9<0.0.94, 0.95: All ecal; E/E_{true} (GeV)", resBin, resMin, resMax);
1559 histname +
"convBarrel",
" Photon E/E_{true} if r9<0.94: Barrel; E/E_{true} (GeV)", resBin, resMin, resMax);
1561 histname +
"convEndcap",
" Photon E/E_{true} if r9<0.95: Endcap; E/E_{true} (GeV)", resBin, resMin, resMax);
1563 histname =
"sigmaEoE";
1564 h_phoSigmaEoE_[0][0] = iBooker.
book1D(histname +
"All",
"#sigma_{E}/E: All ecal; #sigma_{E}/E", 100, 0., 0.08);
1565 h_phoSigmaEoE_[0][1] = iBooker.
book1D(histname +
"Barrel",
"#sigma_{E}/E: Barrel; #sigma_{E}/E", 100, 0., 0.08);
1566 h_phoSigmaEoE_[0][2] = iBooker.
book1D(histname +
"Endcap",
"#sigma_{E}/E: Endcap, #sigma_{E}/E", 100, 0., 0.08);
1569 iBooker.
book1D(histname +
"unconvAll",
"#sigma_{E}/E if r9>0.94, 0.95: All ecal; #sigma_{E}/E", 100, 0., 0.08);
1571 iBooker.
book1D(histname +
"unconvBarrel",
"#sigma_{E}/E if r9>0.94: Barrel; #sigma_{E}/E", 100, 0., 0.08);
1573 iBooker.
book1D(histname +
"unconvEndcap",
"#sigma_{E}/E r9>0.95: Endcap; #sigma_{E}/E", 100, 0., 0.08);
1576 iBooker.
book1D(histname +
"convAll",
"#sigma_{E}/E if r9<0.0.94, 0.95: All ecal, #sigma_{E}/E", 100, 0., 0.08);
1578 iBooker.
book1D(histname +
"convBarrel",
"#sigma_{E}/E if r9<0.94: Barrel, #sigma_{E}/E", 100, 0., 0.08);
1580 iBooker.
book1D(histname +
"convEndcap",
"#sigma_{E}/E if r9<0.95: Endcap, #sigma_{E}/E", 100, 0., 0.08);
1582 histname =
"eResVsEta";
1585 histname +
"All",
" All photons E/Etrue vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 2.5);
1588 histname +
"Unconv",
" Unconv photons E/Etrue vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 2.5);
1590 histname =
"pEResVsEta";
1592 histname +
"All",
"All photons E/Etrue vs #eta: all Ecal ", etaBin2, etaMin, etaMax, resBin, resMin, resMax,
"");
1594 "Unconv photons E/Etrue vs #eta: all Ecal",
1603 histname +
"Conv",
"Conv photons E/Etrue vs #eta: all Ecal", etaBin2, etaMin, etaMax, resBin, resMin, resMax,
"");
1605 histname =
"pSigmaEoEVsEta";
1607 "All photons: #sigma_{E}/E vs #eta: all Ecal; #eta; #sigma_{E}/E",
1616 "Unconv photons #sigma_{E}/E vs #eta: all Ecal; #eta; #sigma_{E}/E ",
1625 "Conv photons #sigma_{E}/E vs #eta: all Ecal; #eta; #sigma_{E}/E",
1634 histname =
"pSigmaEoEVsEt";
1636 "All photons #sigma_{E}/E vs E_{T}: Barrel; E_{T} (GeV); #sigma_{E}/E ",
1646 "Unconv photons #sigma_{E}/E vs E_{T}: Barrel; E_{T} (GeV); #sigma_{E}/E ",
1655 "Conv photons #sigma_{E}/E vs E_{T}: Barrel; E_{T} (GeV); #sigma_{E}/E",
1664 "All photons #sigma_{E}/E vs E_{T}: Endcap; E_{T} (GeV); #sigma_{E}/E ",
1674 "Unconv photons #sigma_{E}/E vs E_{T}: Endcap; E_{T} (GeV); #sigma_{E}/E ",
1683 "Conv photons #sigma_{E}/E vs E_{T}: Endcap; E_{T} (GeV); #sigma_{E}/E",
1692 histname =
"pSigmaEoEVsNVtx";
1694 "All photons: #sigma_{E}/E vs N_{vtx}: Barrel; N_{vtx}; #sigma_{E}/E",
1704 "Unconv photons #sigma_{E}/E vs N_{vtx}: Barrel; N_{vtx}; #sigma_{E}/E ",
1713 "Conv photons #sigma_{E}/E vs N_{vtx}: Barrel; N_{vtx}; #sigma_{E}/E",
1722 "All photons: #sigma_{E}/E vs N_{vtx}: Endcap; N_{vtx}; #sigma_{E}/E",
1732 "Unconv photons #sigma_{E}/E vs N_{vtx}: Endcap; N_{vtx}; #sigma_{E}/E ",
1741 "Conv photons #sigma_{E}/E vs N_{vtx}: Endcap; N_{vtx}; #sigma_{E}/E",
1751 histname =
"eResVsEt";
1753 histname +
"All",
" All photons E/Etrue vs true Et: all Ecal ", etBin, etMin, etMax, 100, 0.9, 1.1);
1755 histname +
"unconv",
" All photons E/Etrue vs true Et: all Ecal ", etBin, etMin, etMax, 100, 0.9, 1.1);
1757 histname +
"conv",
" All photons E/Etrue vs true Et: all Ecal ", etBin, etMin, etMax, 100, 0.9, 1.1);
1759 histname +
"Barrel",
" All photons E/Etrue vs true Et: Barrel ", etBin, etMin, etMax, 100, 0.9, 1.1);
1761 histname +
"unconvBarrel",
" All photons E/Etrue vs true Et: Barrel ", etBin, etMin, etMax, 100, 0.9, 1.1);
1763 histname +
"convBarrel",
" All photons E/Etrue vs true Et: Barrel ", etBin, etMin, etMax, 100, 0.9, 1.1);
1765 histname +
"Endcap",
" All photons E/Etrue vs true Et: Endcap ", etBin, etMin, etMax, 100, 0.9, 1.1);
1767 histname +
"unconvEndcap",
" All photons E/Etrue vs true Et: Endcap ", etBin, etMin, etMax, 100, 0.9, 1.1);
1769 histname +
"convEndcap",
" All photons E/Etrue vs true Et: Endcap ", etBin, etMin, etMax, 100, 0.9, 1.1);
1772 histname =
"pEResVsEt";
1774 histname +
"All",
"All photons E/Etrue vs Et: all Ecal ", etBin, etMin, etMax, resBin, resMin, resMax,
"");
1776 histname +
"unconv",
"All photons E/Etrue vs Et: all Ecal ", etBin, etMin, etMax, resBin, resMin, resMax,
"");
1778 histname +
"conv",
"All photons E/Etrue vs Et: all Ecal ", etBin, etMin, etMax, resBin, resMin, resMax,
"");
1780 histname +
"Barrel",
"All photons E/Etrue vs Et: Barrel ", etBin, etMin, etMax, resBin, resMin, resMax,
"");
1782 histname +
"unconvBarrel",
"All photons E/Etrue vs Et: Barrel ", etBin, etMin, etMax, resBin, resMin, resMax,
"");
1784 histname +
"convBarrel",
"All photons E/Etrue vs Et: Barrel ", etBin, etMin, etMax, resBin, resMin, resMax,
"");
1786 histname +
"Endcap",
"All photons E/Etrue vs Et: Endcap ", etBin, etMin, etMax, resBin, resMin, resMax,
"");
1788 histname +
"unconvEndcap",
"All photons E/Etrue vs Et: Endcap ", etBin, etMin, etMax, resBin, resMin, resMax,
"");
1790 histname +
"convEndcap",
"All photons E/Etrue vs Et: Endcap ", etBin, etMin, etMax, resBin, resMin, resMax,
"");
1792 histname =
"pEResVsNVtx";
1794 "All photons E/E_{true} vs N_{vtx}: Barrel; N_{vtx}; E}/E_{true}",
1804 "Unconverted photons E/E_{true} vs N_{vtx}: Barrel; N_{vtx}; E}/E_{true} ",
1814 " Converted photons E/E_{true} vs N_{vtx}: Barrel; N_{vtx}; E}/E_{true} ",
1823 "All photons E/E_{true} vs N_{vtx}: Endcap; N_{vtx}; E}/E_{true} ",
1833 "Uncoverted photons E/E_{true} vs N_{vtx}: Endcap; N_{vtx}; E}/E_{true} ",
1842 "Converted photons E/E_{true} vs N_{vtx}: Endcap; N_{vtx}; E}/E_{true} ",
1851 histname =
"eResVsR9";
1854 histname +
"All",
" All photons E/Etrue vs R9: all Ecal ", r9Bin * 2, r9Min, r9Max, 100, 0., 2.5);
1857 histname +
"Barrel",
" All photons E/Etrue vs R9: Barrel ", r9Bin * 2, r9Min, r9Max, 100, 0., 2.5);
1860 histname +
"Endcap",
" All photons E/Etrue vs R9: Endcap ", r9Bin * 2, r9Min, r9Max, 100, 0., 2.5);
1861 histname =
"pEResVsR9";
1864 histname +
"All",
" All photons E/Etrue vs R9: all Ecal ", r9Bin * 2, r9Min, r9Max, resBin, resMin, resMax,
"");
1866 histname +
"Barrel",
" All photons E/Etrue vs R9: Barrel ", r9Bin * 2, r9Min, r9Max, resBin, resMin, resMax,
"");
1868 histname +
"Endcap",
" All photons E/Etrue vs R9: Endcap ", r9Bin * 2, r9Min, r9Max, resBin, resMin, resMax,
"");
1869 histname =
"sceResVsR9";
1872 histname +
"All",
" All photons scE/Etrue vs R9: all Ecal ", r9Bin * 2, r9Min, r9Max, 100, 0., 2.5);
1875 histname +
"Barrel",
" All photons scE/Etrue vs R9: Barrel ", r9Bin * 2, r9Min, r9Max, 100, 0., 2.5);
1878 histname +
"Endcap",
" All photons scE/Etrue vs R9: Endcap ", r9Bin * 2, r9Min, r9Max, 100, 0., 2.5);
1879 histname =
"scpEResVsR9";
1882 " All photons scE/Etrue vs R9: all Ecal ",
1891 " All photons scE/Etrue vs R9: Barrel ",
1900 " All photons scE/Etrue vs R9: Endcap ",
1910 histname =
"eResRegr1";
1912 iBooker.
book1D(histname +
"All",
" Photon rec/true Energy from Regression1 : All ecal ", resBin, resMin, resMax);
1914 iBooker.
book1D(histname +
"Barrel",
" Photon rec/true Energy from Regression1: Barrel ", resBin, resMin, resMax);
1916 iBooker.
book1D(histname +
"Endcap",
" Photon rec/true Energy from Regression1: Endcap ", resBin, resMin, resMax);
1919 " Photon rec/true Energy from Regression1 if r9>0.94, 0.95: All ecal ",
1924 histname +
"unconvBarrel",
" Photon rec/true Energy from Regression1 if r9>0.94: Barrel ", resBin, resMin, resMax);
1926 histname +
"unconvEndcap",
" Photon rec/true Energy from Regression1 if r9>0.95: Endcap ", resBin, resMin, resMax);
1929 " Photon rec/true Energy from Regression1if r9<0.0.94, 0.95: All ecal ",
1934 histname +
"convBarrel",
" Photon rec/true Energy from Regression1 if r9<0.94: Barrel ", resBin, resMin, resMax);
1936 histname +
"convEndcap",
" Photon rec/true Energy from Regression1 if r9<0.95: Endcap ", resBin, resMin, resMax);
1938 histname =
"eResRegr2";
1940 iBooker.
book1D(histname +
"All",
" Photon rec/true Energy from Regression2 : All ecal ", resBin, resMin, resMax);
1942 iBooker.
book1D(histname +
"Barrel",
" Photon rec/true Energy from Regression2: Barrel ", resBin, resMin, resMax);
1944 iBooker.
book1D(histname +
"Endcap",
" Photon rec/true Energy from Regression2: Endcap ", resBin, resMin, resMax);
1947 " Photon rec/true Energy from Regression2 if r9>0.94, 0.95: All ecal ",
1952 histname +
"unconvBarrel",
" Photon rec/true Energy from Regression2 if r9>0.94: Barrel ", resBin, resMin, resMax);
1954 histname +
"unconvEndcap",
" Photon rec/true Energy from Regression2 if r9>0.95: Endcap ", resBin, resMin, resMax);
1957 " Photon rec/true Energy from Regression2 if r9<0.0.94, 0.95: All ecal ",
1962 histname +
"convBarrel",
" Photon rec/true Energy from Regression2 if r9<0.94: Barrel ", resBin, resMin, resMax);
1964 histname +
"convEndcap",
" Photon rec/true Energy from Regression2 if r9<0.95: Endcap ", resBin, resMin, resMax);
1966 histname =
"phoPixSeedSize";
1971 histname =
"chargedHadIso";
1972 h_chHadIso_[0] = iBooker.
book1D(histname +
"All",
"PF chargedHadIso: All Ecal", etBin, etMin, 20.);
1973 h_chHadIso_[1] = iBooker.
book1D(histname +
"Barrel",
"PF chargedHadIso: Barrel", etBin, etMin, 20.);
1974 h_chHadIso_[2] = iBooker.
book1D(histname +
"Endcap",
"PF chargedHadIso: Endcap", etBin, etMin, 20.);
1975 histname =
"neutralHadIso";
1976 h_nHadIso_[0] = iBooker.
book1D(histname +
"All",
"PF neutralHadIso: All Ecal", etBin, etMin, 20.);
1977 h_nHadIso_[1] = iBooker.
book1D(histname +
"Barrel",
"PF neutralHadIso: Barrel", etBin, etMin, 20.);
1978 h_nHadIso_[2] = iBooker.
book1D(histname +
"Endcap",
"PF neutralHadIso: Endcap", etBin, etMin, 20.);
1979 histname =
"photonIso";
1980 h_phoIso_[0] = iBooker.
book1D(histname +
"All",
"PF photonIso: All Ecal", etBin, etMin, 20.);
1981 h_phoIso_[1] = iBooker.
book1D(histname +
"Barrel",
"PF photonIso: Barrel", etBin, etMin, 20.);
1982 h_phoIso_[2] = iBooker.
book1D(histname +
"Endcap",
"PF photonIso: Endcap", etBin, etMin, 20.);
1983 histname =
"nCluOutMustache";
1985 iBooker.
book1D(histname +
"All",
"PF number of clusters outside Mustache: All Ecal", 50, 0., 50.);
1987 iBooker.
book1D(histname +
"Barrel",
"PF number of clusters outside Mustache: Barrel", 50, 0., 50.);
1989 iBooker.
book1D(histname +
"Endcap",
"PF number of clusters outside Mustache: Endcap", 50, 0., 50.);
1990 histname =
"etOutMustache";
1995 h_pfMva_[0] = iBooker.
book1D(histname +
"All",
"PF MVA output: All Ecal", 50, -1., 2.);
1996 h_pfMva_[1] = iBooker.
book1D(histname +
"Barrel",
"PF MVA output: Barrel", 50, -1., 2.);
1997 h_pfMva_[2] = iBooker.
book1D(histname +
"Endcap",
"PF MVA output: Endcap", 50, -1, 2.);
1999 histname =
"SumPtOverPhoPt_ChHad_Cleaned";
2001 iBooker.
book1D(histname +
"All",
"Pf Cand SumPt/P_{T}_{#gamma}: Charged Hadrons: All Ecal", etBin, etMin, 2.);
2003 iBooker.
book1D(histname +
"Barrel",
"PF Cand SumPt/P_{T}_{#gamma}: Charged Hadrons: Barrel", etBin, etMin, 2.);
2005 iBooker.
book1D(histname +
"Endcap",
"PF Cand SumPt/P_{T}_{#gamma}: Charged Hadrons: Endcap", etBin, etMin, 2.);
2006 histname =
"SumPtOverPhoPt_NeuHad_Cleaned";
2008 iBooker.
book1D(histname +
"All",
"Pf Cand SumPt/P_{T}_{#gamma}: Neutral Hadrons: All Ecal", etBin, etMin, 2.);
2010 iBooker.
book1D(histname +
"Barrel",
"PF Cand SumPt/P_{T}_{#gamma}: Neutral Hadrons: Barrel", etBin, etMin, 2.);
2012 iBooker.
book1D(histname +
"Endcap",
"PF Cand SumPt/P_{T}_{#gamma}: Neutral Hadrons: Endcap", etBin, etMin, 2.);
2013 histname =
"SumPtOverPhoPt_Pho_Cleaned";
2015 iBooker.
book1D(histname +
"All",
"Pf Cand SumPt/P_{T}_{#gamma}: Photons: All Ecal", etBin, etMin, 2.);
2017 iBooker.
book1D(histname +
"Barrel",
"PF Cand SumPt/P_{T}_{#gamma}: Photons: Barrel", etBin, etMin, 2.);
2019 iBooker.
book1D(histname +
"Endcap",
"PF Cand SumPt/P_{T}_{#gamma}: Photons: Endcap", etBin, etMin, 2.);
2021 histname =
"dRPhoPFcand_ChHad_Cleaned";
2023 iBooker.
book1D(histname +
"All",
"dR(pho,cand) Charged Hadrons : All Ecal", etBin, etMin, 0.7);
2025 iBooker.
book1D(histname +
"Barrel",
"dR(pho,cand) Charged Hadrons : Barrel", etBin, etMin, 0.7);
2027 iBooker.
book1D(histname +
"Endcap",
"dR(pho,cand) Charged Hadrons : Endcap", etBin, etMin, 0.7);
2028 histname =
"dRPhoPFcand_NeuHad_Cleaned";
2030 iBooker.
book1D(histname +
"All",
"dR(pho,cand) Neutral Hadrons : All Ecal", etBin, etMin, 0.7);
2032 iBooker.
book1D(histname +
"Barrel",
"dR(pho,cand) Neutral Hadrons : Barrel", etBin, etMin, 0.7);
2034 iBooker.
book1D(histname +
"Endcap",
"dR(pho,cand) Neutral Hadrons : Endcap", etBin, etMin, 0.7);
2035 histname =
"dRPhoPFcand_Pho_Cleaned";
2037 iBooker.
book1D(histname +
"All",
"dR(pho,cand) Photons : All Ecal", etBin, etMin, 0.7);
2039 iBooker.
book1D(histname +
"Barrel",
"dR(pho,cand) Photons : Barrel", etBin, etMin, 0.7);
2041 iBooker.
book1D(histname +
"Endcap",
"dR(pho,cand) Photons : Endcap", etBin, etMin, 0.7);
2044 histname =
"SumPtOverPhoPt_ChHad_unCleaned";
2046 iBooker.
book1D(histname +
"All",
"Pf Cand Sum Pt Over photon pt Charged Hadrons : All Ecal", etBin, etMin, 2.);
2048 iBooker.
book1D(histname +
"Barrel",
"PF Cand Sum Pt Over photon pt Charged Hadrons: Barrel", etBin, etMin, 2.);
2050 iBooker.
book1D(histname +
"Endcap",
"PF Cand Sum Pt Over photon pt Charged Hadrons: Endcap", etBin, etMin, 2.);
2051 histname =
"SumPtOverPhoPt_NeuHad_unCleaned";
2053 iBooker.
book1D(histname +
"All",
"Pf Cand Sum Pt Over photon pt Neutral Hadrons : All Ecal", etBin, etMin, 2.);
2055 iBooker.
book1D(histname +
"Barrel",
"PF Cand Sum Pt Over photon pt Neutral Hadrons: Barrel", etBin, etMin, 2.);
2057 iBooker.
book1D(histname +
"Endcap",
"PF Cand Sum Pt Over photon pt Neutral Hadrons: Endcap", etBin, etMin, 2.);
2058 histname =
"SumPtOverPhoPt_Pho_unCleaned";
2060 iBooker.
book1D(histname +
"All",
"Pf Cand Sum Pt Over photon pt Photons: All Ecal", etBin, etMin, 2.);
2062 iBooker.
book1D(histname +
"Barrel",
"PF Cand Sum Pt Over photon pt Photons: Barrel", etBin, etMin, 2.);
2064 iBooker.
book1D(histname +
"Endcap",
"PF Cand Sum Pt Over photon pt Photons: Endcap", etBin, etMin, 2.);
2065 histname =
"dRPhoPFcand_ChHad_unCleaned";
2067 iBooker.
book1D(histname +
"All",
"dR(pho,cand) Charged Hadrons : All Ecal", etBin, etMin, 0.7);
2069 iBooker.
book1D(histname +
"Barrel",
"dR(pho,cand) Charged Hadrons : Barrel", etBin, etMin, 0.7);
2071 iBooker.
book1D(histname +
"Endcap",
"dR(pho,cand) Charged Hadrons : Endcap", etBin, etMin, 0.7);
2072 histname =
"dRPhoPFcand_NeuHad_unCleaned";
2074 iBooker.
book1D(histname +
"All",
"dR(pho,cand) Neutral Hadrons : All Ecal", etBin, etMin, 0.7);
2076 iBooker.
book1D(histname +
"Barrel",
"dR(pho,cand) Neutral Hadrons : Barrel", etBin, etMin, 0.7);
2078 iBooker.
book1D(histname +
"Endcap",
"dR(pho,cand) Neutral Hadrons : Endcap", etBin, etMin, 0.7);
2079 histname =
"dRPhoPFcand_Pho_unCleaned";
2081 iBooker.
book1D(histname +
"All",
"dR(pho,cand) Photons: All Ecal", etBin, etMin, 0.7);
2083 iBooker.
book1D(histname +
"Barrel",
"dR(pho,cand) Photons: Barrel", etBin, etMin, 0.7);
2085 iBooker.
book1D(histname +
"Endcap",
"dR(pho,cand) Photons: Endcap", etBin, etMin, 0.7);
2089 histname =
"gamgamMass";
2091 iBooker.
book1D(histname +
"All",
"2 photons invariant mass: All ecal ", ggMassBin, ggMassMin, ggMassMax);
2093 iBooker.
book1D(histname +
"Barrel",
"2 photons invariant mass: Barrel ", ggMassBin, ggMassMin, ggMassMax);
2095 iBooker.
book1D(histname +
"Endcap",
"2 photons invariant mass: Endcap ", ggMassBin, ggMassMin, ggMassMax);
2097 histname =
"gamgamMassNoConv";
2099 histname +
"All",
"2 photons with no conversion invariant mass: All ecal ", ggMassBin, ggMassMin, ggMassMax);
2101 histname +
"Barrel",
"2 photons with no conversion invariant mass: Barrel ", ggMassBin, ggMassMin, ggMassMax);
2103 histname +
"Endcap",
"2 photons with no conversion invariant mass: Endcap ", ggMassBin, ggMassMin, ggMassMax);
2105 histname =
"gamgamMassConv";
2107 histname +
"All",
"2 photons with conversion invariant mass: All ecal ", ggMassBin, ggMassMin, ggMassMax);
2109 histname +
"Barrel",
"2 photons with conversion invariant mass: Barrel ", ggMassBin, ggMassMin, ggMassMax);
2111 histname +
"Endcap",
"2 photons with conversion invariant mass: Endcap ", ggMassBin, ggMassMin, ggMassMax);
2113 histname =
"gamgamMassRegr1";
2115 iBooker.
book1D(histname +
"All",
"2 photons invariant mass Regr1 : All ecal ", ggMassBin, ggMassMin, ggMassMax);
2117 iBooker.
book1D(histname +
"Barrel",
"2 photons invariant mass Regr1 : Barrel ", ggMassBin, ggMassMin, ggMassMax);
2119 iBooker.
book1D(histname +
"Endcap",
"2 photons invariant mass Regr1 : Endcap ", ggMassBin, ggMassMin, ggMassMax);
2121 histname =
"gamgamMassRegr1NoConv";
2123 histname +
"All",
"2 photons with no conversion invariant mass Regr1: All ecal ", ggMassBin, ggMassMin, ggMassMax);
2125 "2 photons with no conversion invariant mass Regr1: Barrel ",
2130 "2 photons with no conversion invariant mass Regr1: Endcap ",
2135 histname =
"gamgamMassRegr1Conv";
2137 histname +
"All",
"2 photons with conversion invariant mass Regr1: All ecal ", ggMassBin, ggMassMin, ggMassMax);
2139 "2 photons with conversion invariant mass Regr1: Barrel ",
2144 "2 photons with conversion invariant mass Regr1: Endcap ",
2149 histname =
"gamgamMassRegr2";
2151 iBooker.
book1D(histname +
"All",
"2 photons invariant mass Regr2 : All ecal ", ggMassBin, ggMassMin, ggMassMax);
2153 iBooker.
book1D(histname +
"Barrel",
"2 photons invariant mass Regr2 : Barrel ", ggMassBin, ggMassMin, ggMassMax);
2155 iBooker.
book1D(histname +
"Endcap",
"2 photons invariant mass Regr2 : Endcap ", ggMassBin, ggMassMin, ggMassMax);
2157 histname =
"gamgamMassRegr2NoConv";
2159 histname +
"All",
"2 photons with no conversion invariant mass Regr2: All ecal ", ggMassBin, ggMassMin, ggMassMax);
2161 "2 photons with no conversion invariant mass Regr2: Barrel ",
2166 "2 photons with no conversion invariant mass Regr2: Endcap ",
2171 histname =
"gamgamMassRegr2Conv";
2173 histname +
"All",
"2 photons with conversion invariant mass Regr2: All ecal ", ggMassBin, ggMassMin, ggMassMax);
2175 "2 photons with conversion invariant mass Regr2: Barrel ",
2180 "2 photons with conversion invariant mass Regr2: Endcap ",
2192 h_phoE_miniAOD_[0][0] = iBooker.
book1D(histname +
"All_miniAOD",
" Photon Energy: All ecal ", eBin, eMin, eMax);
2193 h_phoE_miniAOD_[0][1] = iBooker.
book1D(histname +
"Barrel_miniAOD",
" Photon Energy: barrel ", eBin, eMin, eMax);
2194 h_phoE_miniAOD_[0][2] = iBooker.
book1D(histname +
"Endcap_miniAOD",
" Photon Energy: Endcap ", eBin, eMin, eMax);
2198 iBooker.
book1D(histname +
"All_miniAOD",
" Photon Transverse Energy: All ecal ", etBin, etMin, etMax);
2200 iBooker.
book1D(histname +
"Barrel_miniAOD",
" Photon Transverse Energy: Barrel ", etBin, etMin, etMax);
2202 iBooker.
book1D(histname +
"Endcap_miniAOD",
" Photon Transverse Energy: Endcap ", etBin, etMin, etMax);
2206 histname +
"All_miniAOD",
" Photon E/E_{true}: All ecal; E/E_{true} (GeV)", resBin, resMin, resMax);
2208 histname +
"Barrel_miniAOD",
"Photon E/E_{true}: Barrel; E/E_{true} (GeV)", resBin, resMin, resMax);
2210 histname +
"Endcap_miniAOD",
" Photon E/E_{true}: Endcap; E/E_{true} (GeV)", resBin, resMin, resMax);
2212 histname =
"sigmaEoE";
2214 iBooker.
book1D(histname +
"All_miniAOD",
"#sigma_{E}/E: All ecal; #sigma_{E}/E", 100, 0., 0.08);
2216 iBooker.
book1D(histname +
"Barrel_miniAOD",
"#sigma_{E}/E: Barrel; #sigma_{E}/E", 100, 0., 0.08);
2218 iBooker.
book1D(histname +
"Endcap_miniAOD",
"#sigma_{E}/E: Endcap, #sigma_{E}/E", 100, 0., 0.08);
2221 h_r9_miniAOD_[0][0] = iBooker.
book1D(histname +
"All_miniAOD",
" r9: All Ecal", r9Bin, r9Min, r9Max);
2222 h_r9_miniAOD_[0][1] = iBooker.
book1D(histname +
"Barrel_miniAOD",
" r9: Barrel ", r9Bin, r9Min, r9Max);
2223 h_r9_miniAOD_[0][2] = iBooker.
book1D(histname +
"Endcap_miniAOD",
" r9: Endcap ", r9Bin, r9Min, r9Max);
2224 histname =
"full5x5_r9";
2229 h_r1_miniAOD_[0][0] = iBooker.
book1D(histname +
"All_miniAOD",
" e1x5/e5x5: All Ecal", r9Bin, r9Min, r9Max);
2230 h_r1_miniAOD_[0][1] = iBooker.
book1D(histname +
"Barrel_miniAOD",
" e1x5/e5x5: Barrel ", r9Bin, r9Min, r9Max);
2231 h_r1_miniAOD_[0][2] = iBooker.
book1D(histname +
"Endcap_miniAOD",
" e1x5/e5x5: Endcap ", r9Bin, r9Min, r9Max);
2233 h_r2_miniAOD_[0][0] = iBooker.
book1D(histname +
"All_miniAOD",
" e2x5/e5x5: All Ecal", r9Bin, r9Min, r9Max);
2234 h_r2_miniAOD_[0][1] = iBooker.
book1D(histname +
"Barrel_miniAOD",
" e2x5/e5x5: Barrel ", r9Bin, r9Min, r9Max);
2235 h_r2_miniAOD_[0][2] = iBooker.
book1D(histname +
"Endcap_miniAOD",
" e2x5/e5x5: Endcap ", r9Bin, r9Min, r9Max);
2236 histname =
"hOverE";
2241 histname =
"newhOverE";
2246 histname =
"sigmaIetaIeta";
2250 histname =
"full5x5_sigmaIetaIeta";
2252 iBooker.
book1D(histname +
"All_miniAOD",
"Full5x5 sigmaIetaIeta: All Ecal", 100, 0., 0.1);
2254 iBooker.
book1D(histname +
"Barrel_miniAOD",
"Full5x5 sigmaIetaIeta: Barrel ", 100, 0., 0.05);
2256 iBooker.
book1D(histname +
"Endcap_miniAOD",
"Full5x5 sigmaIetaIeta: Endcap ", 100, 0., 0.1);
2258 histname =
"ecalRecHitSumEtConeDR04";
2260 iBooker.
book1D(histname +
"All_miniAOD",
"ecalRecHitSumEtDR04: All Ecal", etBin, etMin, 20.);
2262 iBooker.
book1D(histname +
"Barrel_miniAOD",
"ecalRecHitSumEtDR04: Barrel ", etBin, etMin, 20.);
2264 iBooker.
book1D(histname +
"Endcap_miniAOD",
"ecalRecHitSumEtDR04: Endcap ", etBin, etMin, 20.);
2265 histname =
"hcalTowerSumEtConeDR04";
2267 iBooker.
book1D(histname +
"All_miniAOD",
"hcalTowerSumEtConeDR04: All Ecal", etBin, etMin, 20.);
2269 iBooker.
book1D(histname +
"Barrel_miniAOD",
"hcalTowerSumEtConeDR04: Barrel ", etBin, etMin, 20.);
2271 iBooker.
book1D(histname +
"Endcap_miniAOD",
"hcalTowerSumEtConeDR04: Endcap ", etBin, etMin, 20.);
2273 histname =
"hcalTowerBcSumEtConeDR04";
2275 iBooker.
book1D(histname +
"All_miniAOD",
"hcalTowerBcSumEtConeDR04: All Ecal", etBin, etMin, 20.);
2277 iBooker.
book1D(histname +
"Barrel_miniAOD",
"hcalTowerBcSumEtConeDR04: Barrel ", etBin, etMin, 20.);
2279 iBooker.
book1D(histname +
"Endcap_miniAOD",
"hcalTowerBcSumEtConeDR04: Endcap ", etBin, etMin, 20.);
2280 histname =
"isoTrkSolidConeDR04";
2282 iBooker.
book1D(histname +
"All_miniAOD",
"isoTrkSolidConeDR04: All Ecal", etBin, etMin, etMax * 0.1);
2284 iBooker.
book1D(histname +
"Barrel_miniAOD",
"isoTrkSolidConeDR04: Barrel ", etBin, etMin, etMax * 0.1);
2286 iBooker.
book1D(histname +
"Endcap_miniAOD",
"isoTrkSolidConeDR04: Endcap ", etBin, etMin, etMax * 0.1);
2287 histname =
"nTrkSolidConeDR04";
2289 iBooker.
book1D(histname +
"All_miniAOD",
"nTrkSolidConeDR04: All Ecal", 20, 0., 20);
2291 iBooker.
book1D(histname +
"Barrel_miniAOD",
"nTrkSolidConeDR04: Barrel ", 20, 0., 20);
2293 iBooker.
book1D(histname +
"Endcap_miniAOD",
"nTrkSolidConeDR04: Endcap ", 20, 0., 20);
2296 histname =
"chargedHadIso";
2300 histname =
"neutralHadIso";
2302 h_nHadIso_miniAOD_[1] = iBooker.
book1D(histname +
"Barrel_miniAOD",
"PF neutralHadIso: Barrel", etBin, etMin, 20.);
2303 h_nHadIso_miniAOD_[2] = iBooker.
book1D(histname +
"Endcap_miniAOD",
"PF neutralHadIso: Endcap", etBin, etMin, 20.);
2304 histname =
"photonIso";
2306 h_phoIso_miniAOD_[1] = iBooker.
book1D(histname +
"Barrel_miniAOD",
"PF photonIso: Barrel", etBin, etMin, 20.);
2307 h_phoIso_miniAOD_[2] = iBooker.
book1D(histname +
"Endcap_miniAOD",
"PF photonIso: Endcap", etBin, etMin, 20.);
2313 "Number Of two-tracks Conversions per isolated candidates per events: All Ecal ",
2318 "Number Of two-tracks Conversions per isolated candidates per events: Ecal Barrel ",
2323 "Number Of two-tracks Conversions per isolated candidates per events: Ecal Endcap ",
2328 "Number Of single leg Conversions per isolated candidates per events: All Ecal ",
2333 "Number Of single leg Conversions per isolated candidates per events: Ecal Barrel ",
2338 "Number Of single leg Conversions per isolated candidates per events: Ecal Endcap ",
2343 h_convEta_[0] = iBooker.
book1D(
"convEta1",
" converted Photon Eta >1 track", etaBin, etaMin, etaMax);
2344 h_convEta_[1] = iBooker.
book1D(
"convEta2",
" converted Photon Eta =2 tracks ", etaBin, etaMin, etaMax);
2345 h_convEta_[2] = iBooker.
book1D(
"convEta2ass",
" converted Photon Eta =2 tracks, both ass ", etaBin, etaMin, etaMax);
2346 h_convPhi_[0] = iBooker.
book1D(
"convPhi",
" converted Photon Phi ", phiBin, phiMin, phiMax);
2348 histname =
"convERes";
2350 iBooker.
book1D(histname +
"All",
" Conversion rec/true Energy: All ecal ", resBin, resMin, resMax);
2352 iBooker.
book1D(histname +
"Barrel",
" Conversion rec/true Energy: Barrel ", resBin, resMin, resMax);
2354 iBooker.
book1D(histname +
"Endcap",
" Conversion rec/true Energy: Endcap ", resBin, resMin, resMax);
2356 histname =
"p_EResVsR";
2358 histname +
"All",
" photons conversion E/Etrue vs R: all Ecal ", rBin, rMin, rMax, 100, 0., 1.5,
"");
2360 histname =
"convPtRes";
2362 iBooker.
book1D(histname +
"All",
" Conversion Pt rec/true from tracks : All ecal ", resBin, 0., 1.5);
2364 iBooker.
book1D(histname +
"Barrel",
" Conversion Pt rec/true from tracks: Barrel ", resBin, 0., 1.5);
2366 iBooker.
book1D(histname +
"Endcap",
" Conversion Pt rec/true from tracks: Endcap ", resBin, 0., 1.5);
2369 histname =
"r9VsTracks";
2371 histname +
"All",
" photons r9 vs nTracks from conversions: All Ecal", r9Bin, r9Min, r9Max, 3, -0.5, 2.5);
2373 histname +
"Barrel",
" photons r9 vs nTracks from conversions: Barrel Ecal", r9Bin, r9Min, r9Max, 3, -0.5, 2.5);
2375 histname +
"Endcap",
" photons r9 vs nTracks from conversions: Endcap Ecal", r9Bin, r9Min, r9Max, 3, -0.5, 2.5);
2378 histname =
"mvaOut";
2379 h_mvaOut_[0] = iBooker.
book1D(histname +
"All",
" mvaOut for all conversions : All Ecal", 100, 0., 1.);
2380 h_mvaOut_[1] = iBooker.
book1D(histname +
"Barrel",
" mvaOut for all conversions : Barrel Ecal", 100, 0., 1.);
2381 h_mvaOut_[2] = iBooker.
book1D(histname +
"Endcap",
" mvaOut for all conversions : Endcap Ecal", 100, 0., 1.);
2383 histname =
"EoverPtracks";
2385 iBooker.
book1D(histname +
"BarrelPix",
" photons conversion E/p: barrel pix", eoverpBin, eoverpMin, eoverpMax);
2387 iBooker.
book1D(histname +
"BarrelTib",
" photons conversion E/p: barrel tib", eoverpBin, eoverpMin, eoverpMax);
2389 iBooker.
book1D(histname +
"BarrelTob",
" photons conversion E/p: barrel tob ", eoverpBin, eoverpMin, eoverpMax);
2391 h_EoverPTracks_[1][0] = iBooker.
book1D(histname +
"All",
" photons conversion E/p: all Ecal ", 100, 0., 5.);
2392 h_EoverPTracks_[1][1] = iBooker.
book1D(histname +
"Barrel",
" photons conversion E/p: Barrel Ecal", 100, 0., 5.);
2393 h_EoverPTracks_[1][2] = iBooker.
book1D(histname +
"Endcap",
" photons conversion E/p: Endcap Ecal ", 100, 0., 5.);
2394 histname =
"EoverP_SL";
2395 h_EoverP_SL_[0] = iBooker.
book1D(histname +
"All",
" photons single leg conversion E/p: all Ecal ", 100, 0., 5.);
2396 h_EoverP_SL_[1] = iBooker.
book1D(histname +
"Barrel",
" photons single leg conversion E/p: Barrel Ecal", 100, 0., 5.);
2398 iBooker.
book1D(histname +
"Endcap",
" photons single leg conversion E/p: Endcap Ecal ", 100, 0., 5.);
2400 histname =
"PoverEtracks";
2402 iBooker.
book1D(histname +
"All",
" photons conversion p/E: all Ecal ", povereBin, povereMin, povereMax);
2404 iBooker.
book1D(histname +
"Barrel",
" photons conversion p/E: Barrel Ecal", povereBin, povereMin, povereMax);
2406 iBooker.
book1D(histname +
"Endcap",
" photons conversion p/E: Endcap Ecal ", povereBin, povereMin, povereMax);
2408 histname =
"pEoverEtrueVsEta";
2411 " photons conversion with 2 (associated) reco tracks E/Etrue vs #eta: all Ecal ",
2420 histname =
"pEoverEtrueVsR";
2422 histname +
"All",
" photons conversion E/Etrue vs R: all Ecal ", rBin, rMin, rMax, 100, 0., 2.5,
"");
2424 histname =
"pEoverEtrueVsEta";
2426 " photons conversion 2 reco tracks E/Etrue vs #eta: all Ecal ",
2435 histname =
"pPoverPtrueVsEta";
2437 histname +
"All",
" photons conversion P/Ptrue vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 5.,
"");
2439 histname =
"pEoverPVsEta";
2441 histname +
"All",
" photons conversion E/P vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 5.,
"");
2444 histname =
"EoverEtrueVsEoverP";
2446 iBooker.
book2D(histname +
"All",
" photons conversion E/Etrue vs E/P: all Ecal ", 100, 0., 5., 100, 0.5, 1.5);
2448 histname +
"Barrel",
" photons conversion E/Etrue vs E/: Barrel Ecal", 100, 0., 5., 100, 0.5, 1.5);
2450 histname +
"Endcap",
" photons conversion E/Etrue vs E/: Endcap Ecal ", 100, 0., 5., 100, 0.5, 1.5);
2451 histname =
"PoverPtrueVsEoverP";
2453 iBooker.
book2D(histname +
"All",
" photons conversion P/Ptrue vs E/P: all Ecal ", 100, 0., 5., 100, 0., 2.5);
2455 histname +
"Barrel",
" photons conversion P/Ptrue vs E/: Barrel Ecal", 100, 0., 5., 100, 0., 2.5);
2457 histname +
"Endcap",
" photons conversion P/Ptrue vs E/: Endcap Ecal ", 100, 0., 5., 100, 0., 2.5);
2459 histname =
"EoverEtrueVsEta";
2461 iBooker.
book2D(histname +
"All",
2462 " photons conversion with 2 (associated) reco tracks E/Etrue vs #eta: all Ecal ",
2470 histname =
"EoverEtrueVsEta";
2472 " photons conversion 2 reco tracks E/Etrue vs #eta: all Ecal ",
2480 histname =
"EoverEtrueVsR";
2482 iBooker.
book2D(histname +
"All",
" photons conversion E/Etrue vs R: all Ecal ", rBin, rMin, rMax, 100, 0., 2.5);
2484 histname =
"PoverPtrueVsEta";
2486 histname +
"All",
" photons conversion P/Ptrue vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 5.);
2488 histname =
"EoverPVsEta";
2490 histname +
"All",
" photons conversion E/P vs #eta: all Ecal ", etaBin2, etaMin, etaMax, 100, 0., 5.);
2492 histname =
"EoverPVsR";
2494 iBooker.
book2D(histname +
"All",
" photons conversion E/P vs R: all Ecal ", rBin, rMin, rMax, 100, 0., 5.);
2496 histname =
"etaVsRsim";
2498 " eta(sim) vs R (sim) for associated conversions: all Ecal ",
2505 histname =
"etaVsRreco";
2507 " eta(reco) vs R (reco) for associated conversions: all Ecal ",
2516 histname =
"pEoverPVsR";
2518 histname +
"All",
" photons conversion E/P vs R: all Ecal ", rBin, rMin, rMax, 100, 0., 5.,
"");
2520 histname =
"hInvMass";
2522 histname +
"All_AllTracks",
" Photons:Tracks from conversion: Pair invariant mass: all Ecal ", 100, 0., 1.5);
2524 histname +
"Barrel_AllTracks",
" Photons:Tracks from conversion: Pair invariant mass: Barrel Ecal ", 100, 0., 1.5);
2526 histname +
"Endcap_AllTracks",
" Photons:Tracks from conversion: Pair invariant mass: Endcap Ecal ", 100, 0., 1.5);
2527 histname =
"hInvMass";
2529 histname +
"All_AssTracks",
" Photons:Tracks from conversion: Pair invariant mass: all Ecal ", 100, 0., 1.5);
2531 histname +
"Barrel_AssTracks",
" Photons:Tracks from conversion: Pair invariant mass: Barrel Ecal ", 100, 0., 1.5);
2533 histname +
"Endcap_AssTracks",
" Photons:Tracks from conversion: Pair invariant mass: Endcap Ecal ", 100, 0., 1.5);
2535 histname =
"hDPhiTracksAtVtx";
2537 " Photons:Tracks from conversions: #delta#phi Tracks at vertex: all Ecal",
2542 iBooker.
book1D(histname +
"Barrel",
2543 " Photons:Tracks from conversions: #delta#phi Tracks at vertex: Barrel Ecal",
2548 iBooker.
book1D(histname +
"Endcap",
2549 " Photons:Tracks from conversions: #delta#phi Tracks at vertex: Endcap Ecal",
2555 histname =
"hDPhiTracksAtVtxVsEta";
2557 " Photons:Tracks from conversions: #delta#phi Tracks at vertex vs #eta",
2565 histname =
"hDPhiTracksAtVtxVsR";
2567 " Photons:Tracks from conversions: #delta#phi Tracks at vertex vs R",
2575 histname =
"hDCotTracksVsEta";
2577 " Photons:Tracks from conversions: #delta cotg(#Theta) Tracks vs #eta",
2585 histname =
"hDCotTracksVsR";
2587 " Photons:Tracks from conversions: #delta cotg(#Theta) Tracks at vertex vs R",
2595 histname =
"h2_DPhiTracksAtEcalVsR";
2596 if (
fName_ !=
"pfPhotonValidator" &&
fName_ !=
"oldpfPhotonValidator")
2598 " Photons:Tracks from conversions: #delta#phi at Ecal vs R : all Ecal ",
2606 histname =
"h2_DPhiTracksAtEcalVsEta";
2607 if (
fName_ !=
"pfPhotonValidator" &&
fName_ !=
"oldpfPhotonValidator")
2609 iBooker.
book2D(histname +
"All",
2610 " Photons:Tracks from conversions: #delta#phi at Ecal vs #eta : all Ecal ",
2619 histname =
"pDPhiTracksAtVtxVsEta";
2622 " Photons:Tracks from conversions: #delta#phi Tracks at vertex vs #eta ",
2631 histname =
"pDPhiTracksAtVtxVsR";
2633 " Photons:Tracks from conversions: #delta#phi Tracks at vertex vs R ",
2642 histname =
"hDCotTracks";
2644 " Photons:Tracks from conversions #delta cotg(#Theta) Tracks: all Ecal ",
2649 " Photons:Tracks from conversions #delta cotg(#Theta) Tracks: Barrel Ecal ",
2654 " Photons:Tracks from conversions #delta cotg(#Theta) Tracks: Endcap Ecal ",
2659 histname =
"pDCotTracksVsEta";
2661 " Photons:Tracks from conversions: #delta cotg(#Theta) Tracks vs #eta ",
2670 histname =
"pDCotTracksVsR";
2673 " Photons:Tracks from conversions: #delta cotg(#Theta) Tracks at vertex vs R ",
2682 histname =
"hDistMinAppTracks";
2684 " Photons:Tracks from conversions Min Approach Dist Tracks: all Ecal ",
2689 " Photons:Tracks from conversions Min Approach Dist Tracks: Barrel Ecal ",
2694 " Photons:Tracks from conversions Min Approach Dist Tracks: Endcap Ecal ",
2700 histname =
"hDPhiTracksAtEcal";
2702 " Photons:Tracks from conversions: #delta#phi at Ecal : all Ecal ",
2707 " Photons:Tracks from conversions: #delta#phi at Ecal : Barrel Ecal ",
2712 " Photons:Tracks from conversions: #delta#phi at Ecal : Endcap Ecal ",
2717 histname =
"pDPhiTracksAtEcalVsR";
2719 " Photons:Tracks from conversions: #delta#phi at Ecal vs R ",
2728 histname =
"pDPhiTracksAtEcalVsEta";
2730 " Photons:Tracks from conversions: #delta#phi at Ecal vs #eta ",
2739 histname =
"hDEtaTracksAtEcal";
2741 " Photons:Tracks from conversions: #delta#eta at Ecal : all Ecal ",
2746 " Photons:Tracks from conversions: #delta#eta at Ecal : Barrel Ecal ",
2751 " Photons:Tracks from conversions: #delta#eta at Ecal : Endcap Ecal ",
2759 " Photon Reco conversion vtx position",
2767 " Photon Reco conversion vtx position",
2775 " Photon Reco conversion vtx position",
2783 "convVtxYvsXTrkBarrel",
" Photon Reco conversion vtx position, (x,y) eta<1 ", 100, -80., 80., 100, -80., 80.);
2786 " Photon Reco single leg conversion innermost hit position",
2794 " Photon Reco single leg conversion innermost hit position",
2802 " Photon Reco single leg conversion innermost hit position",
2813 " Photon Reco conversion vtx position",
2821 " Photon Reco conversion vtx position",
2829 " Photon Reco conversion vtx position, (x,y) eta<1 ",
2837 " Photon Reco conversion vtx position, (x,y) eta<1 ",
2846 h_convVtxdX_ = iBooker.
book1D(
"convVtxdX",
" Photon Reco conversion vtx dX", 100, -20., 20.);
2847 h_convVtxdY_ = iBooker.
book1D(
"convVtxdY",
" Photon Reco conversion vtx dY", 100, -20., 20.);
2848 h_convVtxdZ_ = iBooker.
book1D(
"convVtxdZ",
" Photon Reco conversion vtx dZ", 100, -20., 20.);
2849 h_convVtxdR_ = iBooker.
book1D(
"convVtxdR",
" Photon Reco conversion vtx dR", 100, -20., 20.);
2852 iBooker.
book1D(
"convVtxdX_barrel",
" Photon Reco conversion vtx dX, |eta|<=1.2", 100, -20., 20.);
2854 iBooker.
book1D(
"convVtxdY_barrel",
" Photon Reco conversion vtx dY, |eta|<=1.2 ", 100, -20., 20.);
2856 iBooker.
book1D(
"convVtxdZ_barrel",
" Photon Reco conversion vtx dZ, |eta|<=1.2,", 100, -20., 20.);
2858 iBooker.
book1D(
"convVtxdR_barrel",
" Photon Reco conversion vtx dR, |eta|<=1.2", 100, -20., 20.);
2860 iBooker.
book1D(
"convVtxdX_endcap",
" Photon Reco conversion vtx dX, |eta|>1.2", 100, -20., 20.);
2862 iBooker.
book1D(
"convVtxdY_endcap",
" Photon Reco conversion vtx dY, |eta|>1.2", 100, -20., 20.);
2864 iBooker.
book1D(
"convVtxdZ_endcap",
" Photon Reco conversion vtx dZ, |eta|>1.2", 100, -20., 20.);
2866 iBooker.
book1D(
"convVtxdR_endcap",
" Photon Reco conversion vtx dR, |eta|>1.2 ", 100, -20., 20.);
2868 h_convVtxdPhi_ = iBooker.
book1D(
"convVtxdPhi",
" Photon Reco conversion vtx dPhi", 100, -0.005, 0.005);
2869 h_convVtxdEta_ = iBooker.
book1D(
"convVtxdEta",
" Photon Reco conversion vtx dEta", 100, -0.5, 0.5);
2873 iBooker.
book2D(
"h2ConvVtxdRVsR",
"Photon Reco conversion vtx dR vsR", rBin, rMin, rMax, 100, -20., 20.);
2875 "h2ConvVtxdRVsEta",
"Photon Reco conversion vtx dR vs Eta", etaBin2, etaMin, etaMax, 100, -20., 20.);
2879 iBooker.
bookProfile(
"pConvVtxdRVsR",
"Photon Reco conversion vtx dR vsR", rBin, rMin, rMax, 100, -20., 20.,
"");
2881 "pConvVtxdRVsEta",
"Photon Reco conversion vtx dR vs Eta", etaBin2, etaMin, etaMax, 100, -20., 20.,
"");
2885 iBooker.
bookProfile(
"pConvVtxdZVsZ",
"Conversion vtx dZ vs Z", zBin, zMin, zMax, 100, -20., 20.,
"");
2889 "h2ConvVtxRrecVsTrue",
"Photon Reco conversion vtx R rec vs true", rBin, rMin, rMax, rBin, rMin, rMax);
2892 histname =
"vtxChi2";
2893 h_vtxChi2_[0] = iBooker.
book1D(histname +
"All",
"vertex #chi^{2} all", 100, chi2Min, chi2Max);
2894 h_vtxChi2_[1] = iBooker.
book1D(histname +
"Barrel",
"vertex #chi^{2} barrel", 100, chi2Min, chi2Max);
2895 h_vtxChi2_[2] = iBooker.
book1D(histname +
"Endcap",
"vertex #chi^{2} endcap", 100, chi2Min, chi2Max);
2896 histname =
"vtxChi2Prob";
2898 h_vtxChi2Prob_[1] = iBooker.
book1D(histname +
"Barrel",
"vertex #chi^{2} barrel", 100, 0., 1.);
2899 h_vtxChi2Prob_[2] = iBooker.
book1D(histname +
"Endcap",
"vertex #chi^{2} endcap", 100, 0., 1.);
2901 histname =
"zPVFromTracks";
2902 h_zPVFromTracks_[0] = iBooker.
book1D(histname +
"All",
" Photons: PV z from conversion tracks", 100, -30., 30.);
2903 h_zPVFromTracks_[1] = iBooker.
book1D(histname +
"Barrel",
" Photons: PV z from conversion tracks", 100, -30., 30.);
2904 h_zPVFromTracks_[2] = iBooker.
book1D(histname +
"Endcap",
" Photons: PV z from conversion tracks", 100, -30., 30.);
2905 h_zPVFromTracks_[3] = iBooker.
book1D(histname +
"EndcapP",
" Photons: PV z from conversion tracks", 100, -30., 30.);
2906 h_zPVFromTracks_[4] = iBooker.
book1D(histname +
"EndcapM",
" Photons: PV z from conversion tracks", 100, -30., 30.);
2907 histname =
"dzPVFromTracks";
2909 iBooker.
book1D(histname +
"All",
" Photons: PV Z_rec - Z_true from conversion tracks", 100, -10., 10.);
2911 iBooker.
book1D(histname +
"Barrel",
" Photons: PV Z_rec - Z_true from conversion tracks", 100, -10., 10.);
2913 iBooker.
book1D(histname +
"Endcap",
" Photons: PV Z_rec - Z_true from conversion tracks", 100, -10., 10.);
2915 iBooker.
book1D(histname +
"EndcapP",
" Photons: PV Z_rec - Z_true from conversion tracks", 100, -10., 10.);
2917 iBooker.
book1D(histname +
"EndcapM",
" Photons: PV Z_rec - Z_true from conversion tracks", 100, -10., 10.);
2919 iBooker.
bookProfile(
"pdzPVVsR",
"Photon Reco conversions: dz(PV) vs R", rBin, rMin, rMax, 100, -3., 3.,
"");
2921 "pdzPVVsEta",
"Photon Reco conversions: dz(PV) vs Eta", etaBin, etaMin, etaMax, 100, -3., 3.,
"");
2924 h2_dzPVVsR_ = iBooker.
book2D(
"h2dzPVVsR",
"Photon Reco conversions: dz(PV) vs R", rBin, rMin, rMax, 100, -3., 3.);
2929 histname =
"nHitsVsEta";
2931 "Photons:Tracks from conversions: # of hits vs #eta all tracks",
2939 histname =
"nHitsVsEta";
2941 "Photons:Tracks from conversions: # of hits vs #eta associated tracks",
2949 histname =
"nHitsVsR";
2951 "Photons:Tracks from conversions: # of hits vs radius all tracks",
2959 histname =
"nHitsVsR";
2961 "Photons:Tracks from conversions: # of hits vs radius associated tracks",
2969 histname =
"h2Chi2VsEta";
2971 histname +
"All",
" Reco Track #chi^{2} vs #eta: All ", etaBin2, etaMin, etaMax, 100, chi2Min, chi2Max);
2973 histname =
"h2Chi2VsR";
2975 iBooker.
book2D(histname +
"All",
" Reco Track #chi^{2} vs R: All ", rBin, rMin, rMax, 100, chi2Min, chi2Max);
2978 histname =
"h_nHitsVsEta";
2980 "Photons:Tracks from conversions: # of hits vs #eta all tracks",
2989 histname =
"h_nHitsVsEta";
2991 "Photons:Tracks from conversions: # of hits vs #eta associated tracks",
3000 histname =
"p_nHitsVsEtaSL";
3002 "Photons:Tracks from single leg conversions: # of hits vs #eta all tracks",
3011 histname =
"h_nHitsVsR";
3013 "Photons:Tracks from conversions: # of hits vs radius all tracks",
3021 histname =
"p_nHitsVsRSL";
3023 "Photons:Tracks from single leg conversions: # of hits vs radius all tracks",
3032 histname =
"tkChi2";
3034 histname +
"AllTracks",
"Photons:Tracks from conversions: #chi^{2} of all tracks", 100, chi2Min, chi2Max);
3035 histname =
"tkChi2SL";
3037 "Photons:Tracks from single leg conversions: #chi^{2} of associated tracks",
3041 histname =
"tkChi2Large";
3043 histname +
"AllTracks",
"Photons:Tracks from conversions: #chi^{2} of all tracks", 1000, 0., 5000.0);
3045 histname =
"h_nHitsVsR";
3047 "Photons:Tracks from conversions: # of hits vs radius associated tracks",
3056 histname =
"tkChi2";
3058 histname +
"AssTracks",
"Photons:Tracks from conversions: #chi^{2} of associated tracks", 100, chi2Min, chi2Max);
3059 histname =
"tkChi2Large";
3061 histname +
"AssTracks",
"Photons:Tracks from conversions: #chi^{2} of associated tracks", 1000, 0., 5000.0);
3063 histname =
"pChi2VsEta";
3065 histname +
"All",
" Reco Track #chi^{2} vs #eta : All ", etaBin2, etaMin, etaMax, 100, chi2Min, chi2Max,
"");
3067 histname =
"pChi2VsR";
3069 histname +
"All",
" Reco Track #chi^{2} vas R : All ", rBin, rMin, rMax, 100, chi2Min, chi2Max,
"");
3072 h_TkD0_[0] = iBooker.
book1D(histname +
"All",
" Reco Track D0*q: All ", 100, -0.1, 0.6);
3073 h_TkD0_[1] = iBooker.
book1D(histname +
"Barrel",
" Reco Track D0*q: Barrel ", 100, -0.1, 0.6);
3074 h_TkD0_[2] = iBooker.
book1D(histname +
"Endcap",
" Reco Track D0*q: Endcap ", 100, -0.1, 0.6);
3076 histname =
"hTkPtPull";
3077 h_TkPtPull_[0] = iBooker.
book1D(histname +
"All",
" Reco Track Pt pull: All ", 100, -10., 10.);
3078 histname =
"hTkPtPull";
3079 h_TkPtPull_[1] = iBooker.
book1D(histname +
"Barrel",
" Reco Track Pt pull: Barrel ", 100, -10., 10.);
3080 histname =
"hTkPtPull";
3081 h_TkPtPull_[2] = iBooker.
book1D(histname +
"Endcap",
" Reco Track Pt pull: Endcap ", 100, -10., 10.);
3083 histname =
"pTkPtPullEta";
3085 iBooker.
bookProfile(histname +
"All",
" Reco Track Pt pull: All ", etaBin2, etaMin, etaMax, 100, -10., 10.,
" ");
3088 histname =
"h2TkPtPullEta";
3090 iBooker.
book2D(histname +
"All",
" Reco Track Pt pull: All ", etaBin2, etaMin, etaMax, 100, -10., 10.);
3092 histname =
"PtRecVsPtSim";
3094 iBooker.
book2D(histname +
"All",
"Pt Rec vs Pt sim: All ", etBin, etMin, etMax, etBin, etMin, etMax);
3096 iBooker.
book2D(histname +
"Barrel",
"Pt Rec vs Pt sim: Barrel ", etBin, etMin, etMax, etBin, etMin, etMax);
3098 iBooker.
book2D(histname +
"Endcap",
"Pt Rec vs Pt sim: Endcap ", etBin, etMin, etMax, etBin, etMin, etMax);
3099 histname =
"PtRecVsPtSimMixProv";
3101 histname +
"All",
"Pt Rec vs Pt sim All for mix with general tracks ", etBin, etMin, etMax, etBin, etMin, etMax);
3105 histname =
"eBcOverTkPout";
3116 h_trkProv_[0] = iBooker.
book1D(
"allTrkProv",
" Track pair provenance ", 4, 0., 4.);
3117 h_trkProv_[1] = iBooker.
book1D(
"assTrkProv",
" Track pair provenance ", 4, 0., 4.);
3125 histname =
"h_RecoConvTwoTracksEta";
3127 iBooker.
book1D(histname,
" All reco conversions with 2 reco tracks: simulated #eta", etaBin2, etaMin, etaMax);
3128 histname =
"h_RecoConvTwoTracksPhi";
3130 iBooker.
book1D(histname,
" All reco conversions with 2 reco tracks: simulated #phi", phiBin, phiMin, phiMax);
3131 histname =
"h_RecoConvTwoTracksR";
3133 iBooker.
book1D(histname,
" All reco conversions with 2 reco tracks: simulated R", rBin, rMin, rMax);
3134 histname =
"h_RecoConvTwoTracksZ";
3136 iBooker.
book1D(histname,
" All reco conversions with 2 reco tracks: simulated Z", zBin, zMin, zMax);
3137 histname =
"h_RecoConvTwoTracksEt";
3139 iBooker.
book1D(histname,
" All reco conversions with 2 reco tracks: simulated Et", etBin, etMin, etMax);
3141 histname =
"h_RecoConvTwoMTracksEta";
3143 iBooker.
book1D(histname,
" All reco conversions with 2 reco-ass tracks: simulated #eta", etaBin2, etaMin, etaMax);
3144 histname =
"h_RecoConvTwoMTracksPhi";
3146 iBooker.
book1D(histname,
" All reco conversions with 2 reco-ass tracks: simulated #phi", phiBin, phiMin, phiMax);
3147 histname =
"h_RecoConvTwoMTracksR";
3149 iBooker.
book1D(histname,
" All reco conversions with 2 reco-ass tracks: simulated R", rBin, rMin, rMax);
3150 histname =
"h_RecoConvTwoMTracksZ";
3152 iBooker.
book1D(histname,
" All reco conversions with 2 reco-ass tracks: simulated Z", zBin, zMin, zMax);
3153 histname =
"h_RecoConvTwoMTracksEt";
3155 iBooker.
book1D(histname,
" All reco conversions with 2 reco-ass tracks: simulated Et", etBin, etMin, etMax);
3160 edm::LogInfo(
"ConvertedPhotonProducer") <<
" get magnetic field"
3171 using namespace edm;
3175 const float BARL = 1.4442;
3177 const float END_HI = 2.5;
3182 e.
getByLabel(
"trackAssociatorByHitsForPhotonValidation", theHitsAssociator);
3186 LogInfo(
"PhotonValidator") <<
"PhotonValidator Analyzing event number: " << e.
id() <<
" Global Counter " <<
nEvt_
3203 if (!photonHandle.isValid()) {
3204 edm::LogError(
"PhotonProducer") <<
"Error! Can't get the Photon collection " << std::endl;
3211 if (!pfCandidateHandle.isValid()) {
3212 edm::LogError(
"PhotonValidator") <<
"Error! Can't get the product pfCandidates " << std::endl;
3217 if (
fName_ ==
"pfPhotonValidator") {
3219 if (!phoToParticleBasedIsoMapHandle.isValid()) {
3220 edm::LogInfo(
"PhotonValidator") <<
"Error! Can't get the product: valueMap photons to particle based iso "
3223 phoToParticleBasedIsoMap = *(phoToParticleBasedIsoMapHandle.product());
3241 if ((*itHits)->isValid()) {
3256 if ((*itHits)->isValid()) {
3267 std::vector<SimTrack> theSimTracks;
3268 std::vector<SimVertex> theSimVertices;
3280 theSimTracks.insert(theSimTracks.end(), SimTk->begin(), SimTk->end());
3281 theSimVertices.insert(theSimVertices.end(), SimVtx->begin(), SimVtx->end());
3308 std::vector<reco::PhotonCollection::const_iterator> StoRMatchedConvertedPhotons;
3318 OISimToReco = trackAssociator->associateSimToReco(outInTrkHandle, ElectronTPHandle);
3319 IOSimToReco = trackAssociator->associateSimToReco(inOutTrkHandle, ElectronTPHandle);
3321 OIRecoToSim = trackAssociator->associateRecoToSim(outInTrkHandle, ElectronTPHandle);
3322 IORecoToSim = trackAssociator->associateRecoToSim(inOutTrkHandle, ElectronTPHandle);
3326 vector<reco::SimToRecoCollection*> StoRCollPtrs;
3327 StoRCollPtrs.push_back(&OISimToReco);
3328 StoRCollPtrs.push_back(&IOSimToReco);
3329 vector<reco::RecoToSimCollection*> RtoSCollPtrs;
3330 RtoSCollPtrs.push_back(&OIRecoToSim);
3331 RtoSCollPtrs.push_back(&IORecoToSim);
3333 for (
int i = 0;
i < 2;
i++)
3335 for (
int i = 0;
i < 2;
i++)
3338 std::vector<reco::PhotonRef> myPhotons;
3340 for (
unsigned int iPho = 0; iPho < photonHandle->size(); iPho++) {
3343 if (fabs(phoRef->eta()) > 2.5)
3345 myPhotons.push_back(phoRef);
3348 std::sort(myPhotons.begin(), myPhotons.end(),
sortPhotons());
3350 if (myPhotons.size() >= 2) {
3351 if (myPhotons[0]->et() > 40 && myPhotons[1]->et() > 25) {
3357 float gamgamMass2 = p12.Dot(p12);
3358 float gamgamMass2_regr1 = p12_regr1.Dot(p12_regr1);
3359 float gamgamMass2_regr2 = p12_regr2.Dot(p12_regr2);
3362 if (gamgamMass2 > 0) {
3365 if (myPhotons[0]->isEB() && myPhotons[1]->isEB())
3367 if ((myPhotons[0]->isEE() && myPhotons[1]->isEE()) || (myPhotons[0]->isEE() && myPhotons[1]->isEB()) ||
3368 (myPhotons[0]->isEB() && myPhotons[1]->isEE()))
3371 if (myPhotons[0]->r9() > 0.94 && myPhotons[1]->r9() > 0.94) {
3373 if (myPhotons[0]->isEB() && myPhotons[1]->isEB())
3375 if ((myPhotons[0]->isEE() && myPhotons[1]->isEE()) || (myPhotons[0]->isEE() && myPhotons[1]->isEB()) ||
3376 (myPhotons[0]->isEB() && myPhotons[1]->isEE()))
3386 if (chi2Prob1 > 0.0005 && chi2Prob2 > 0.0005) {
3388 if (myPhotons[0]->isEB() && myPhotons[1]->isEB()) {
3391 if ((myPhotons[0]->isEE() && myPhotons[1]->isEE()) || (myPhotons[0]->isEE() && myPhotons[1]->isEB()) ||
3392 (myPhotons[0]->isEB() && myPhotons[1]->isEE())) {
3398 myPhotons[1]->r9() > 0.93) {
3402 if (chi2Prob1 > 0.0005) {
3404 if (myPhotons[0]->isEB() && myPhotons[1]->isEB()) {
3407 if (myPhotons[0]->isEE() || myPhotons[1]->isEE()) {
3413 myPhotons[0]->r9() > 0.93) {
3417 if (chi2Prob1 > 0.0005) {
3419 if (myPhotons[0]->isEB() && myPhotons[1]->isEB()) {
3422 if (myPhotons[0]->isEE() || myPhotons[1]->isEE()) {
3431 if (gamgamMass2_regr1 > 0) {
3434 if (myPhotons[0]->isEB() && myPhotons[1]->isEB())
3436 if ((myPhotons[0]->isEE() && myPhotons[1]->isEE()) || (myPhotons[0]->isEE() && myPhotons[1]->isEB()) ||
3437 (myPhotons[0]->isEB() && myPhotons[1]->isEE()))
3440 if (myPhotons[0]->r9() > 0.94 && myPhotons[1]->r9() > 0.94) {
3442 if (myPhotons[0]->isEB() && myPhotons[1]->isEB())
3444 if ((myPhotons[0]->isEE() && myPhotons[1]->isEE()) || (myPhotons[0]->isEE() && myPhotons[1]->isEB()) ||
3445 (myPhotons[0]->isEB() && myPhotons[1]->isEE()))
3456 if (chi2Prob1 > 0.0005 && chi2Prob2 > 0.0005) {
3458 if (myPhotons[0]->isEB() && myPhotons[1]->isEB()) {
3461 if ((myPhotons[0]->isEE() && myPhotons[1]->isEE()) || (myPhotons[0]->isEE() && myPhotons[1]->isEB()) ||
3462 (myPhotons[0]->isEB() && myPhotons[1]->isEE())) {
3468 myPhotons[1]->r9() > 0.93) {
3472 if (chi2Prob1 > 0.0005) {
3474 if (myPhotons[0]->isEB() && myPhotons[1]->isEB()) {
3477 if (myPhotons[0]->isEE() || myPhotons[1]->isEE()) {
3483 myPhotons[0]->r9() > 0.93) {
3487 if (chi2Prob1 > 0.0005) {
3489 if (myPhotons[0]->isEB() && myPhotons[1]->isEB()) {
3492 if (myPhotons[0]->isEE() || myPhotons[1]->isEE()) {
3501 if (gamgamMass2_regr2 > 0) {
3504 if (myPhotons[0]->isEB() && myPhotons[1]->isEB())
3506 if ((myPhotons[0]->isEE() && myPhotons[1]->isEE()) || (myPhotons[0]->isEE() && myPhotons[1]->isEB()) ||
3507 (myPhotons[0]->isEB() && myPhotons[1]->isEE()))
3510 if (myPhotons[0]->r9() > 0.94 && myPhotons[1]->r9() > 0.94) {
3512 if (myPhotons[0]->isEB() && myPhotons[1]->isEB())
3514 if ((myPhotons[0]->isEE() && myPhotons[1]->isEE()) || (myPhotons[0]->isEE() && myPhotons[1]->isEB()) ||
3515 (myPhotons[0]->isEB() && myPhotons[1]->isEE()))
3526 if (chi2Prob1 > 0.0005 && chi2Prob2 > 0.0005) {
3528 if (myPhotons[0]->isEB() && myPhotons[1]->isEB()) {
3531 if ((myPhotons[0]->isEE() && myPhotons[1]->isEE()) || (myPhotons[0]->isEE() && myPhotons[1]->isEB()) ||
3532 (myPhotons[0]->isEB() && myPhotons[1]->isEE())) {
3538 myPhotons[1]->r9() > 0.93) {
3542 if (chi2Prob1 > 0.0005) {
3544 if (myPhotons[0]->isEB() && myPhotons[1]->isEB()) {
3547 if (myPhotons[0]->isEE() || myPhotons[1]->isEE()) {
3553 myPhotons[0]->r9() > 0.93) {
3557 if (chi2Prob1 > 0.0005) {
3559 if (myPhotons[0]->isEB() && myPhotons[1]->isEB()) {
3562 if (myPhotons[0]->isEE() || myPhotons[1]->isEE()) {
3573 for (std::vector<PhotonMCTruth>::const_iterator mcPho = mcPhotons.begin(); mcPho != mcPhotons.end(); mcPho++) {
3577 for (HepMC::GenEvent::particle_const_iterator mcIter = myGenEvent->particles_begin();
3578 mcIter != myGenEvent->particles_end();
3580 if ((*mcIter)->pdg_id() != 22)
3582 bool isTheSame =
false;
3584 if ((*mcIter)->production_vertex()) {
3585 if ((*mcIter)->production_vertex()->particles_begin(
HepMC::parents) !=
3587 mother = *((*mcIter)->production_vertex()->particles_begin(
HepMC::parents));
3590 float mcPhi = (*mcPho).fourMomentum().phi();
3592 mcEta_ = (*mcPho).fourMomentum().pseudoRapidity();
3594 mcConvR_ = (*mcPho).vertex().perp();
3601 if (fabs(
mcEta_) > END_HI)
3604 if (mother ==
nullptr || (mother !=
nullptr && mother->pdg_id() == 22) ||
3605 (mother !=
nullptr && mother->pdg_id() == 25) || (mother !=
nullptr && mother->pdg_id() == 35)) {
3606 double dPt = fabs((*mcIter)->momentum().perp() - (*mcPho).fourMomentum().et());
3607 float phiMother = (*mcIter)->momentum().phi();
3609 double dEta = fabs((*mcIter)->momentum().eta() - (*mcPho).fourMomentum().pseudoRapidity());
3611 if (dEta <= 0.0001 && dPhi <= 0.0001 && dPt <= 0.0001)
3629 bool goodSimConversion =
false;
3630 bool visibleConversion =
false;
3631 bool visibleConversionsWithTwoSimTracks =
false;
3632 if ((*mcPho).isAConversion() == 1) {
3645 if ((fabs(
mcEta_) <= BARL && mcConvR_ < 85) ||
3646 (fabs(
mcEta_) > BARL && fabs(
mcEta_) <= END_HI && fabs((*mcPho).vertex().z()) < 210))
3647 visibleConversion =
true;
3652 if (fabs(tp->vx() - (*mcPho).vertex().x()) < 0.001 && fabs(tp->vy() - (*mcPho).vertex().y()) < 0.001 &&
3653 fabs(tp->vz() - (*mcPho).vertex().z()) < 0.001) {
3658 visibleConversionsWithTwoSimTracks =
true;
3659 goodSimConversion =
false;
3661 if (visibleConversion && visibleConversionsWithTwoSimTracks)
3662 goodSimConversion =
true;
3663 if (goodSimConversion) {
3684 float minDelta = 10000.;
3685 std::vector<reco::PhotonRef> thePhotons;
3688 bool matched =
false;
3690 for (
unsigned int iPho = 0; iPho < photonHandle->size(); iPho++) {
3692 thePhotons.push_back(aPho);
3693 float phiPho = aPho->phi();
3694 float etaPho = aPho->eta();
3701 deltaPhi =
pow(deltaPhi, 2);
3702 deltaEta =
pow(deltaEta, 2);
3703 float delta =
sqrt(deltaPhi + deltaEta);
3704 if (delta < 0.1 && delta < minDelta) {
3727 bool phoIsInBarrel =
false;
3728 bool phoIsInEndcap =
false;
3729 bool phoIsInEndcapP =
false;
3730 bool phoIsInEndcapM =
false;
3734 if (fabs(matchingPho->superCluster()->position().eta()) < 1.479) {
3735 phoIsInBarrel =
true;
3737 phoIsInEndcap =
true;
3738 if (matchingPho->superCluster()->position().eta() > 0)
3739 phoIsInEndcapP =
true;
3740 if (matchingPho->superCluster()->position().eta() < 0)
3741 phoIsInEndcapM =
true;
3745 if (phoIsInBarrel) {
3748 if (!ecalRecHitHandle.
isValid()) {
3755 }
else if (phoIsInEndcap) {
3758 if (!ecalRecHitHandle.
isValid()) {
3768 float photonE = matchingPho->energy();
3769 float sigmaEoE = matchingPho->getCorrectedEnergyError(matchingPho->getCandidateP4type()) / matchingPho->energy();
3771 float photonEt = matchingPho->pt();
3774 float r9 = matchingPho->r9();
3776 float r1 = matchingPho->r1x5();
3777 float r2 = matchingPho->r2x5();
3778 float sigmaIetaIeta = matchingPho->sigmaIetaIeta();
3780 float hOverE = matchingPho->hadronicOverEm();
3781 float newhOverE = matchingPho->hadTowOverEm();
3782 float ecalIso = matchingPho->ecalRecHitSumEtConeDR04();
3783 float hcalIso = matchingPho->hcalTowerSumEtConeDR04();
3784 float newhcalIso = matchingPho->hcalTowerSumEtBcConeDR04();
3785 float trkIso = matchingPho->trkSumPtSolidConeDR04();
3786 float nIsoTrk = matchingPho->nTrkSolidConeDR04();
3788 float chargedHadIso = matchingPho->chargedHadronIso();
3789 float neutralHadIso = matchingPho->neutralHadronIso();
3790 float photonIso = matchingPho->photonIso();
3791 float etOutsideMustache = matchingPho->etOutsideMustache();
3792 int nClusterOutsideMustache = matchingPho->nClusterOutsideMustache();
3793 float pfMVA = matchingPho->pfMVA();
3795 std::vector<std::pair<DetId, float> >::const_iterator rhIt;
3796 bool atLeastOneDeadChannel =
false;
3798 bcIt != matchingPho->superCluster()->clustersEnd();
3800 for (rhIt = (*bcIt)->hitsAndFractions().begin(); rhIt != (*bcIt)->hitsAndFractions().end(); ++rhIt) {
3803 if (rhIt->first == (*it).id()) {
3804 if ((*it).recoFlag() == 9) {
3805 atLeastOneDeadChannel =
true;
3813 if (atLeastOneDeadChannel) {
3831 h_scEt_[
type][0]->
Fill(matchingPho->superCluster()->energy() / cosh(matchingPho->superCluster()->eta()));
3833 h_psE_->
Fill(matchingPho->superCluster()->preshowerEnergy());
3906 h_phoDEta_[0]->
Fill(matchingPho->eta() - (*mcPho).fourMomentum().eta());
3910 h_nConv_[0][0]->
Fill(
float(matchingPho->conversions().size()));
3911 h_nConv_[1][0]->
Fill(
float(matchingPho->conversionsOneLeg().size()));
3921 p_eResVsEt_[0][0]->
Fill((*mcPho).fourMomentum().et(), photonE / (*mcPho).fourMomentum().e());
3926 h2_eResVsEt_[0][0]->
Fill((*mcPho).fourMomentum().et(), photonE / (*mcPho).fourMomentum().e());
3930 h2_sceResVsR9_[0]->
Fill(r9, matchingPho->superCluster()->energy() / (*mcPho).fourMomentum().e());
3934 p_sceResVsR9_[0]->
Fill(r9, matchingPho->superCluster()->energy() / (*mcPho).fourMomentum().e());
3936 if ((*mcPho).isAConversion() == 0) {
3967 if (photonE / (*mcPho).fourMomentum().e() < 0.3 && photonE / (*mcPho).fourMomentum().e() > 0.1) {
3970 if ((r9 > 0.94 && phoIsInBarrel) || (r9 > 0.95 && phoIsInEndcap)) {
3976 h2_eResVsEt_[0][1]->
Fill((*mcPho).fourMomentum().et(), photonE / (*mcPho).fourMomentum().e());
3977 p_eResVsEt_[0][1]->
Fill((*mcPho).fourMomentum().et(), photonE / (*mcPho).fourMomentum().e());
3982 }
else if ((r9 <= 0.94 && phoIsInBarrel) || (r9 <= 0.95 && phoIsInEndcap)) {
3987 p_eResVsEt_[0][2]->
Fill((*mcPho).fourMomentum().et(), photonE / (*mcPho).fourMomentum().e());
3993 h2_eResVsEt_[0][2]->
Fill((*mcPho).fourMomentum().et(), photonE / (*mcPho).fourMomentum().e());
3998 if (phoIsInBarrel) {
4000 h_scEt_[
type][1]->
Fill(matchingPho->superCluster()->energy() / cosh(matchingPho->superCluster()->eta()));
4024 h_nConv_[1][1]->
Fill(
float(matchingPho->conversionsOneLeg().size()));
4030 p_sceResVsR9_[1]->
Fill(r9, matchingPho->superCluster()->energy() / (*mcPho).fourMomentum().e());
4033 h2_sceResVsR9_[1]->
Fill(r9, matchingPho->superCluster()->energy() / (*mcPho).fourMomentum().e());
4036 h2_eResVsEt_[1][0]->
Fill((*mcPho).fourMomentum().et(), photonE / (*mcPho).fourMomentum().e());
4038 p_eResVsEt_[1][0]->
Fill((*mcPho).fourMomentum().et(), photonE / (*mcPho).fourMomentum().e());
4039 p_eResVsNVtx_[1][0]->
Fill(
float(vtxH->size()), photonE / (*mcPho).fourMomentum().e());
4049 h2_eResVsEt_[1][1]->
Fill((*mcPho).fourMomentum().et(), photonE / (*mcPho).fourMomentum().e());
4050 p_eResVsEt_[1][1]->
Fill((*mcPho).fourMomentum().et(), photonE / (*mcPho).fourMomentum().e());
4051 p_eResVsNVtx_[1][1]->
Fill(
float(vtxH->size()), photonE / (*mcPho).fourMomentum().e());
4060 p_eResVsEt_[1][2]->
Fill((*mcPho).fourMomentum().et(), photonE / (*mcPho).fourMomentum().e());
4061 p_eResVsNVtx_[1][2]->
Fill(
float(vtxH->size()), photonE / (*mcPho).fourMomentum().e());
4065 h2_eResVsEt_[1][2]->
Fill((*mcPho).fourMomentum().et(), photonE / (*mcPho).fourMomentum().e());
4070 if (phoIsInEndcap) {
4072 h_scEt_[
type][2]->
Fill(matchingPho->superCluster()->energy() / cosh(matchingPho->superCluster()->eta()));
4096 h_nConv_[1][2]->
Fill(
float(matchingPho->conversionsOneLeg().size()));
4102 p_sceResVsR9_[2]->
Fill(r9, matchingPho->superCluster()->energy() / (*mcPho).fourMomentum().e());
4105 h2_sceResVsR9_[2]->
Fill(r9, matchingPho->superCluster()->energy() / (*mcPho).fourMomentum().e());
4108 h2_eResVsEt_[2][0]->
Fill((*mcPho).fourMomentum().et(), photonE / (*mcPho).fourMomentum().e());
4111 p_eResVsEt_[2][0]->
Fill((*mcPho).fourMomentum().et(), photonE / (*mcPho).fourMomentum().e());
4112 p_eResVsNVtx_[2][0]->
Fill(
float(vtxH->size()), photonE / (*mcPho).fourMomentum().e());
4122 h2_eResVsEt_[2][1]->
Fill((*mcPho).fourMomentum().et(), photonE / (*mcPho).fourMomentum().e());
4123 p_eResVsEt_[2][1]->
Fill((*mcPho).fourMomentum().et(), photonE / (*mcPho).fourMomentum().e());
4124 p_eResVsNVtx_[2][1]->
Fill(
float(vtxH->size()), photonE / (*mcPho).fourMomentum().e());
4133 p_eResVsEt_[2][2]->
Fill((*mcPho).fourMomentum().et(), photonE / (*mcPho).fourMomentum().e());
4134 p_eResVsNVtx_[2][2]->
Fill(
float(vtxH->size()), photonE / (*mcPho).fourMomentum().e());
4139 h2_eResVsEt_[2][2]->
Fill((*mcPho).fourMomentum().et(), photonE / (*mcPho).fourMomentum().e());
4146 if (
fName_ ==
"pfPhotonValidator") {
4147 float SumPtIsoValCh = 0.;
4148 float SumPtIsoValNh = 0.;
4149 float SumPtIsoValPh = 0.;
4151 float SumPtIsoValCleanCh = 0.;
4152 float SumPtIsoValCleanNh = 0.;
4153 float SumPtIsoValCleanPh = 0.;
4155 for (
unsigned int lCand = 0; lCand < pfCandidateHandle->size(); lCand++) {
4157 float dR =
deltaR(matchingPho->eta(), matchingPho->phi(), pfCandRef->eta(), pfCandRef->phi());
4167 SumPtIsoValCh += pfCandRef->pt();
4175 SumPtIsoValNh += pfCandRef->pt();
4183 SumPtIsoValPh += pfCandRef->pt();
4192 for (std::vector<reco::PFCandidateRef>::const_iterator
i = phoToParticleBasedIsoMap[matchingPho].
begin();
4193 i != phoToParticleBasedIsoMap[matchingPho].end();
4195 if ((*
i) == pfCandRef) {
4203 SumPtIsoValCleanCh += pfCandRef->pt();
4211 SumPtIsoValCleanNh += pfCandRef->pt();
4219 SumPtIsoValCleanPh += pfCandRef->pt();
4236 if (phoIsInBarrel) {
4254 if (!(visibleConversion && visibleConversionsWithTwoSimTracks))
4265 if (fabs(
mcEta_) <= 1.) {
4275 bool atLeastOneRecoTwoTrackConversion =
false;
4276 for (
unsigned int iConv = 0; iConv < conversions.
size(); iConv++) {
4278 double like = aConv->MVAout();
4287 const std::vector<edm::RefToBase<reco::Track> >
tracks = aConv->tracks();
4288 if (tracks.size() < 2)
4290 atLeastOneRecoTwoTrackConversion =
true;
4294 if (tracks.size() == 2) {
4309 std::map<const reco::Track*, TrackingParticleRef> myAss;
4310 std::map<const reco::Track*, TrackingParticleRef>::const_iterator itAss;
4311 std::map<reco::TrackRef, TrackingParticleRef>::const_iterator itAssMin;
4312 std::map<reco::TrackRef, TrackingParticleRef>::const_iterator itAssMax;
4316 for (
unsigned int i = 0;
i < tracks.size();
i++) {
4333 std::vector<std::pair<RefToBase<reco::Track>,
double> > trackV;
4337 trackV = (std::vector<std::pair<RefToBase<reco::Track>,
double> >)q[
theConvTP_[0]];
4339 trackV = (std::vector<std::pair<RefToBase<reco::Track>,
double> >)q[
theConvTP_[1]];
4353 float refP = -99999.;
4354 float refPt = -99999.;
4355 if (aConv->conversionVertex().isValid()) {
4356 refP =
sqrt(aConv->refittedPairMomentum().Mag2());
4357 refPt =
sqrt(aConv->refittedPairMomentum().perp2());
4359 float invM = aConv->pairInvariantMass();
4368 if (tracks.size() == 2) {
4375 if (!aConv->caloCluster().empty())
4378 float trkProvenance = 3;
4379 if (tracks[0]->algoName() ==
"outInEcalSeededConv" && tracks[1]->algoName() ==
"outInEcalSeededConv")
4381 if (tracks[0]->algoName() ==
"inOutEcalSeededConv" && tracks[1]->algoName() ==
"inOutEcalSeededConv")
4383 if ((tracks[0]->algoName() ==
"outInEcalSeededConv" && tracks[1]->algoName() ==
"inOutEcalSeededConv") ||
4384 (tracks[1]->algoName() ==
"outInEcalSeededConv" && tracks[0]->algoName() ==
"inOutEcalSeededConv"))
4386 if (trkProvenance == 3) {
4403 if (!aConv->caloCluster().empty())
4413 if (aConv->conversionVertex().isValid()) {
4423 if (chi2Prob > 0.0005) {
4431 if (chi2Prob > 0.0005) {
4432 if (!aConv->caloCluster().empty()) {
4435 h_convERes_[0][0]->
Fill(aConv->caloCluster()[0]->energy() / (*mcPho).fourMomentum().e());
4445 if (phoIsInBarrel) {
4446 if (!aConv->caloCluster().empty())
4447 h_convERes_[0][1]->
Fill(aConv->caloCluster()[0]->energy() / (*mcPho).fourMomentum().e());
4452 if (phoIsInEndcap) {
4453 if (!aConv->caloCluster().empty())
4454 h_convERes_[0][2]->
Fill(aConv->caloCluster()[0]->energy() / (*mcPho).fourMomentum().e());
4468 float eoverp = -99999.;
4470 if (aConv->conversionVertex().isValid()) {
4471 eoverp = photonE /
sqrt(aConv->refittedPairMomentum().Mag2());
4478 matchingPho->superCluster()->energy() / (*mcPho).fourMomentum().e());
4487 p_eResVsR_->
Fill(mcConvR_, photonE / (*mcPho).fourMomentum().e());
4495 matchingPho->superCluster()->energy() / (*mcPho).fourMomentum().e());
4498 matchingPho->superCluster()->energy() / (*mcPho).fourMomentum().e());
4500 p_EoverEtrueVsR_[0]->
Fill(mcConvR_, matchingPho->superCluster()->energy() / (*mcPho).fourMomentum().e());
4506 float dPhiTracksAtVtx = aConv->dPhiTracksAtVtx();
4523 if (phoIsInBarrel) {
4525 if (aConv->conversionVertex().isValid()) {
4530 if (mcConvR_ > 15 && mcConvR_ < 58)
4537 eoverp, matchingPho->superCluster()->energy() / (*mcPho).fourMomentum().e());
4545 if (phoIsInEndcap) {
4547 if (aConv->conversionVertex().isValid()) {
4553 eoverp, matchingPho->superCluster()->energy() / (*mcPho).fourMomentum().e());
4561 if (aConv->conversionVertex().isValid()) {
4587 float signX = aConv->refittedPairMomentum().x() / fabs(aConv->refittedPairMomentum().x());
4588 float signY = aConv->refittedPairMomentum().y() / fabs(aConv->refittedPairMomentum().y());
4589 float signZ = aConv->refittedPairMomentum().z() / fabs(aConv->refittedPairMomentum().z());
4598 float thetaConv = aConv->refittedPairMomentum().Theta();
4599 float thetaSC = matchingPho->superCluster()->position().theta();
4601 sqrt(matchingPho->superCluster()->position().x() * matchingPho->superCluster()->position().x() +
4602 matchingPho->superCluster()->position().y() * matchingPho->superCluster()->position().y());
4603 float zSC = matchingPho->superCluster()->position().z();
4604 float zPV =
sqrt(rSC * rSC + zSC * zSC) *
sin(thetaConv - thetaSC) /
sin(thetaConv);
4609 if (phoIsInBarrel) {
4612 }
else if (phoIsInEndcap) {
4615 }
else if (phoIsInEndcapP) {
4618 }
else if (phoIsInEndcapM) {
4629 float dPhiTracksAtEcal = -99;
4630 float dEtaTracksAtEcal = -99;
4631 if (!aConv->bcMatchingWithTracks().empty() && aConv->bcMatchingWithTracks()[0].
isNonnull() &&
4632 aConv->bcMatchingWithTracks()[1].
isNonnull()) {
4634 float recoPhi1 = aConv->ecalImpactPosition()[0].phi();
4635 float recoPhi2 = aConv->ecalImpactPosition()[1].phi();
4636 float recoEta1 = aConv->ecalImpactPosition()[0].eta();
4637 float recoEta2 = aConv->ecalImpactPosition()[1].eta();
4644 dPhiTracksAtEcal = recoPhi1 - recoPhi2;
4646 dEtaTracksAtEcal = recoEta1 - recoEta2;
4658 if (phoIsInBarrel) {
4662 if (phoIsInEndcap) {
4668 for (
unsigned int i = 0;
i < tracks.size();
i++) {
4670 itAss = myAss.find(tfrb.
get());
4671 if (itAss == myAss.end())
4674 float trkProvenance = 3;
4675 if (tracks[0]->algoName() ==
"outInEcalSeededConv" && tracks[1]->algoName() ==
"outInEcalSeededConv")
4677 if (tracks[0]->algoName() ==
"inOutEcalSeededConv" && tracks[1]->algoName() ==
"inOutEcalSeededConv")
4679 if ((tracks[0]->algoName() ==
"outInEcalSeededConv" &&
4680 tracks[1]->algoName() ==
"inOutEcalSeededConv") ||
4681 (tracks[1]->algoName() ==
"outInEcalSeededConv" && tracks[0]->algoName() ==
"inOutEcalSeededConv"))
4699 float simPt =
sqrt(((*itAss).second)->momentum().perp2());
4701 float refPt = -9999.;
4702 float px = 0, py = 0;
4704 if (aConv->conversionVertex().isValid()) {
4705 reco::Track refTrack = aConv->conversionVertex().refittedTracks()[
i];
4708 refPt =
sqrt(px * px + py * py);
4710 float ptres = refPt - simPt;
4712 float pterror = aConv->conversionVertex().refittedTracks()[
i].ptError();
4715 if (trkProvenance == 3)
4726 if (!aConv->bcMatchingWithTracks().empty() && aConv->bcMatchingWithTracks()[
i].
isNonnull())
4728 sqrt(aConv->tracks()[
i]->outerMomentum().Mag2()));
4730 if (phoIsInBarrel) {
4736 if (!aConv->bcMatchingWithTracks().empty() && aConv->bcMatchingWithTracks()[
i].
isNonnull())
4738 sqrt(aConv->tracks()[
i]->outerMomentum().Mag2()));
4740 if (phoIsInEndcap) {
4746 if (!aConv->bcMatchingWithTracks().empty() && aConv->bcMatchingWithTracks()[
i].
isNonnull())
4748 sqrt(aConv->tracks()[
i]->outerMomentum().Mag2()));
4761 if (!atLeastOneRecoTwoTrackConversion) {
4762 for (
unsigned int iConv = 0; iConv < conversionsOneLeg.
size(); iConv++) {
4764 const std::vector<edm::RefToBase<reco::Track> >
tracks = aConv->tracks();
4770 std::map<const reco::Track*, TrackingParticleRef> myAss;
4771 for (
unsigned int i = 0;
i < tracks.size();
i++) {
4776 float eoverp = photonE / tracks[0]->p();
4778 if (phoIsInBarrel) {
4784 if (fabs(
mcEta_) <= 1.) {
4794 std::vector<std::pair<RefToBase<reco::Track>,
double> > trackV;
4798 trackV = (std::vector<std::pair<RefToBase<reco::Track>,
double> >)q[
theConvTP_[0]];
4800 trackV = (std::vector<std::pair<RefToBase<reco::Track>,
double> >)q[
theConvTP_[1]];
4834 for (reco::PhotonCollection::const_iterator iPho = photonCollection.begin(); iPho != photonCollection.end();
4839 for (
unsigned int iConv = 0; iConv < conversions.
size(); iConv++) {
4841 double like = aConv->MVAout();
4845 const std::vector<edm::RefToBase<reco::Track> >
tracks = aConv->tracks();
4846 if (tracks.size() < 2)
4855 bool phoIsInBarrel =
false;
4856 bool phoIsInEndcap =
false;
4857 if (fabs(aPho.
superCluster()->position().eta()) < 1.479) {
4858 phoIsInBarrel =
true;
4860 phoIsInEndcap =
true;
4872 if (aConv->conversionVertex().isValid())
4878 for (std::vector<PhotonMCTruth>::const_iterator mcPho = mcPhotons.begin(); mcPho != mcPhotons.end(); mcPho++) {
4880 float mcPhi = (*mcPho).fourMomentum().phi();
4883 mcEta_ = (*mcPho).fourMomentum().pseudoRapidity();
4891 if (fabs(
mcEta_) > END_HI)
4898 if ((*mcPho).isAConversion() != 1)
4901 (fabs(
mcEta_) > BARL && fabs(
mcEta_) <= END_HI && fabs((*mcPho).vertex().z()) < 210)))
4907 if (fabs(tp->vx() - (*mcPho).vertex().x()) < 0.0001 && fabs(tp->vy() - (*mcPho).vertex().y()) < 0.0001 &&
4908 fabs(tp->vz() - (*mcPho).vertex().z()) < 0.0001) {
4918 std::vector<std::pair<RefToBase<reco::Track>,
double> > trackV1, trackV2;
4920 auto itP1 = p1.
find(tk1);
4921 auto itP2 = p2.
find(tk2);
4922 bool good = (itP1 != p1.
end()) and (not itP1->val.empty()) and (itP2 != p2.
end()) and (not itP2->val.empty());
4924 itP1 = p1.
find(tk2);
4925 itP2 = p2.
find(tk1);
4926 good = (itP1 != p1.
end()) and (not itP1->val.empty()) and (itP2 != p2.
end()) and (not itP2->val.empty());
4929 std::vector<std::pair<TrackingParticleRef, double> >
const& tp1 = itP1->val;
4930 std::vector<std::pair<TrackingParticleRef, double> >
const& tp2 = itP2->val;
4935 if (
abs(tpr1->pdgId()) == 11 &&
abs(tpr2->pdgId()) == 11) {
4936 if ((tpr1->parentVertex()->sourceTracks_end() - tpr1->parentVertex()->sourceTracks_begin() == 1) &&
4937 (tpr2->parentVertex()->sourceTracks_end() - tpr2->parentVertex()->sourceTracks_begin() == 1)) {
4938 if (tpr1->parentVertex().
key() == tpr2->parentVertex().
key() &&
4939 ((*tpr1->parentVertex()->sourceTracks_begin())->pdgId() == 22)) {
4952 if (aConv->conversionVertex().isValid())
4959 if (aConv->conversionVertex().isValid()) {
4960 float chi2Prob =
ChiSquaredProbability(aConv->conversionVertex().chi2(), aConv->conversionVertex().ndof());
4961 double convR =
sqrt(aConv->conversionVertex().position().perp2());
4962 double scalar = aConv->conversionVertex().position().x() * aConv->pairMomentum().x() +
4963 aConv->conversionVertex().position().y() * aConv->pairMomentum().y();
4966 convR = -
sqrt(aConv->conversionVertex().position().perp2());
4968 sqrt(aConv->conversionVertex().position().perp2()));
4970 if (!aConv->caloCluster().empty()) {
4973 sqrt(aConv->conversionVertex().position().perp2()));
4974 if (fabs(aConv->caloCluster()[0]->eta()) <= 1.) {
4975 h_convVtxYvsX_->
Fill(aConv->conversionVertex().position().y(), aConv->conversionVertex().position().x());
4980 aConv->conversionVertex().position().x());
4982 aConv->conversionVertex().position().x());
4987 if (fabs(aConv->caloCluster()[0]->eta()) > 1.)
4993 if (phoIsInBarrel) {
4997 if (phoIsInEndcap) {
5009 for (reco::GenJetCollection::const_iterator genJetIter = genJetCollection.begin();
5010 genJetIter != genJetCollection.end();
5014 if (fabs(genJetIter->eta()) > 2.5)
5017 float mcJetPhi = genJetIter->phi();
5020 float mcJetPt = genJetIter->pt();
5026 std::vector<reco::Photon> thePhotons;
5027 bool matched =
false;
5030 for (reco::PhotonCollection::const_iterator iPho = photonCollection.begin(); iPho != photonCollection.end();
5033 float phiPho = aPho.
phi();
5034 float etaPho = aPho.
eta();
5041 deltaPhi =
pow(deltaPhi, 2);
5042 deltaEta =
pow(deltaEta, 2);
5043 float delta =
sqrt(deltaPhi + deltaEta);
5045 matchingPho = *iPho;
5058 bool phoIsInBarrel =
false;
5059 bool phoIsInEndcap =
false;
5060 if (fabs(matchingPho.
superCluster()->position().eta()) < 1.479) {
5061 phoIsInBarrel =
true;
5063 phoIsInEndcap =
true;
5066 if (phoIsInBarrel) {
5069 if (!ecalRecHitHandle.
isValid()) {
5076 }
else if (phoIsInEndcap) {
5079 if (!ecalRecHitHandle.
isValid()) {
5088 float photonE = matchingPho.
energy();
5089 float photonEt = matchingPho.
et();
5090 float r9 = matchingPho.
r9();
5091 float r1 = matchingPho.
r1x5();
5092 float r2 = matchingPho.
r2x5();
5099 std::vector<std::pair<DetId, float> >::const_iterator rhIt;
5101 bool atLeastOneDeadChannel =
false;
5105 for (rhIt = (*bcIt)->hitsAndFractions().begin(); rhIt != (*bcIt)->hitsAndFractions().end(); ++rhIt) {
5108 if (rhIt->first == (*it).id()) {
5109 if ((*it).recoFlag() == 9) {
5110 atLeastOneDeadChannel =
true;
5118 if (atLeastOneDeadChannel) {
5187 if (phoIsInBarrel) {
5211 }
else if (phoIsInEndcap) {
5240 for (
unsigned int iConv = 0; iConv < conversions.
size(); iConv++) {
5243 const std::vector<edm::RefToBase<reco::Track> >
tracks = aConv->tracks();
5244 double like = aConv->MVAout();
5247 if (tracks.size() < 2)
5249 if (!aConv->caloCluster().empty()) {
5254 float eoverp = aConv->EoverP();
5258 float dPhiTracksAtVtx = aConv->dPhiTracksAtVtx();
5261 if (phoIsInBarrel) {
5267 }
else if (phoIsInEndcap) {
5275 if (aConv->conversionVertex().isValid()) {
5276 double convR =
sqrt(aConv->conversionVertex().position().perp2());
5277 double scalar = aConv->conversionVertex().position().x() * aConv->pairMomentum().x() +
5278 aConv->conversionVertex().position().y() * aConv->pairMomentum().y();
5280 convR = -
sqrt(aConv->conversionVertex().position().perp2());
5284 sqrt(aConv->conversionVertex().position().perp2()));
5285 if (!aConv->caloCluster().empty() && fabs(aConv->caloCluster()[0]->eta()) <= 1.) {
5287 aConv->conversionVertex().position().x());
5301 if (!(mcIter->pdgId() == 22))
5303 if (mcIter->mother() !=
nullptr and !(mcIter->mother()->pdgId() == 25))
5305 if (fabs(mcIter->eta()) > 2.5)
5308 float mcPhi = mcIter->phi();
5309 float mcEta = mcIter->eta();
5311 float mcEnergy = mcIter->energy();
5313 double dR = 9999999.;
5314 float minDr = 10000.;
5316 bool matched =
false;
5318 for (
unsigned int ipho = 0; ipho < photonHandle->size(); ipho++) {
5321 double dphi = pho->phi() - mcPhi;
5323 dphi = dphi < 0 ? (CLHEP::twopi) + dphi : dphi - CLHEP::twopi;
5325 double deta = pho->superCluster()->position().eta() - mcEta;
5328 if (dR < 0.1 && dR < minDr) {
5341 bool phoIsInBarrel =
false;
5342 bool phoIsInEndcap =
false;
5344 float phoEta = matchingPho->superCluster()->position().eta();
5345 if (fabs(phoEta) < 1.479) {
5346 phoIsInBarrel =
true;
5348 phoIsInEndcap =
true;
5351 float photonE = matchingPho->energy();
5352 float sigmaEoE = matchingPho->getCorrectedEnergyError(matchingPho->getCandidateP4type()) / matchingPho->energy();
5353 float photonEt = matchingPho->energy() / cosh(matchingPho->eta());
5356 float r9 = matchingPho->r9();
5357 float full5x5_r9 = matchingPho->full5x5_r9();
5358 float r1 = matchingPho->r1x5();
5359 float r2 = matchingPho->r2x5();
5360 float sigmaIetaIeta = matchingPho->sigmaIetaIeta();
5361 float full5x5_sieie = matchingPho->full5x5_sigmaIetaIeta();
5362 float hOverE = matchingPho->hadronicOverEm();
5363 float newhOverE = matchingPho->hadTowOverEm();
5364 float ecalIso = matchingPho->ecalRecHitSumEtConeDR04();
5365 float hcalIso = matchingPho->hcalTowerSumEtConeDR04();
5366 float newhcalIso = matchingPho->hcalTowerSumEtBcConeDR04();
5367 float trkIso = matchingPho->trkSumPtSolidConeDR04();
5368 float nIsoTrk = matchingPho->nTrkSolidConeDR04();
5370 float chargedHadIso = matchingPho->chargedHadronIso();
5371 float neutralHadIso = matchingPho->neutralHadronIso();
5372 float photonIso = matchingPho->photonIso();
5377 if ((photonEt > 14 && newhOverE < 0.15) || (photonEt > 10 && photonEt < 14 && chargedHadIso < 10)) {
5409 if (phoIsInBarrel) {
5433 if (phoIsInEndcap) {
5465 const float PI = 3.1415927;
5480 const float PI = 3.1415927;
5483 const float R_ECAL = 136.5;
5490 float ZEcal = R_ECAL * sinh(EtaParticle) + Zvertex;
5493 Theta = atan(R_ECAL / ZEcal);
5498 if (fabs(ETA) > etaBarrelEndcap) {
5500 if (EtaParticle < 0.0)
5502 float Zlen = Zend - Zvertex;
5503 float RR = Zlen / sinh(EtaParticle);
5504 Theta = atan(RR / Zend);
5507 ETA = -
log(
tan(0.5 * Theta));
MonitorElement * p_DCotTracksVsR_
MonitorElement * p_sigmaEoEVsEta_[3]
value_type const * get() const
MonitorElement * h_convVtxdX_endcap_
MonitorElement * h_SumPtOverPhoPt_NeuHad_unCleaned_[3]
MonitorElement * h_zPVFromTracks_[5]
MonitorElement * h_hOverE_miniAOD_[3][3]
edm::EDGetTokenT< EcalRecHitCollection > barrelEcalHits_
MonitorElement * h_OIinnermostHitR_
MonitorElement * h2_nTrkSolidConeDR04VsEta_[3]
T getUntrackedParameter(std::string const &, T const &) const
const edm::ESGetToken< CaloGeometry, CaloGeometryRecord > caloGeometryToken_
MonitorElement * p_hOverEVsEtBkg_
MonitorElement * h_nSimPho_[2]
MonitorElement * p_DPhiTracksAtEcalVsR_
MonitorElement * h_scBkgPhi_
MonitorElement * h2_Chi2VsR_[3]
const edm::ESGetToken< MagneticField, IdealMagneticFieldRecord > magneticFieldToken_
MonitorElement * h_sigmaIetaIeta_[3][3]
static std::vector< std::string > checklist log
ParticleType
particle types
MonitorElement * p_sceResVsR9_[3]
MonitorElement * h_DPhiTracksAtEcal_[2][3]
MonitorElement * h_scPhi_miniAOD_[2]
bool isNonnull() const
Checks for non-null.
MonitorElement * h2_hcalTowerSumEtConeDR04VsEta_[3]
MonitorElement * h_IOinnermostHitR_
__device__ WorkSpace float chi2Max
MonitorElement * h_phoBkgDPhi_
MonitorElement * p_nHitsVsEtaSL_[2]
MonitorElement * h_DPhiTracksAtVtx_[2][3]
MonitorElement * p_EoverEtrueVsEta_[3]
MonitorElement * p_EoverPVsEta_[3]
MonitorElement * h_convVtxdZ_
MonitorElement * h_dRPhoPFcand_Pho_Cleaned_[3]
MonitorElement * h_newhOverE_[3][3]
MonitorElement * h_phoBkgPhi_
MonitorElement * h_chHadIso_[3]
MonitorElement * h_phoPhi_[2]
edm::EDGetTokenT< edm::SimVertexContainer > g4_simVtx_Token_
MonitorElement * h_hcalTowerBcSumEtConeDR04_[3][3]
MonitorElement * h2_PoverPtrueVsEoverP_[3]
virtual void setCurrentFolder(std::string const &fullpath)
MonitorElement * h_mvaOut_[3]
MonitorElement * h_scE_[2][3]
edm::EDGetTokenT< reco::VertexCollection > offline_pvToken_
const_iterator end() const
last iterator over the map (read only)
MonitorElement * h_nRecoVtx_
std::string photonCollectionProducer_
MonitorElement * h_convVtxRvsZ_zoom_[2]
std::string photonCollection_
MonitorElement * h2_hOverEVsEt_[3]
MonitorElement * h_hcalTowerSumEtConeDR04_miniAOD_[3][3]
MonitorElement * h_SumPtOverPhoPt_NeuHad_Cleaned_[3]
edm::EDGetTokenT< edm::HepMCProduct > hepMC_Token_
MonitorElement * p_hcalTowerSumEtConeDR04VsEt_[3]
bool getByToken(EDGetToken token, Handle< PROD > &result) const
MonitorElement * p_isoTrkSolidConeDR04VsEtBkg_[3]
MonitorElement * h_DPhiTracksAtVtxBkg_[3]
edm::EDGetTokenT< edm::SimVertexContainer > famos_simVtx_Token_
MonitorElement * h2_EoverPVsR_[3]
MonitorElement * h_phoEt_[2][3]
const edm::ESGetToken< TransientTrackBuilder, TransientTrackRecord > transientTrackBuilderToken_
MonitorElement * h_DEtaTracksAtEcal_[2][3]
edm::EDGetTokenT< reco::PFCandidateCollection > pfCandidates_
MonitorElement * h_phoEResRegr2_[3][3]
MonitorElement * p_convVtxdYVsY_
MonitorElement * h_phoDEta_[2]
float hcalTowerSumEtConeDR04(int depth=0) const
MonitorElement * h_SimJet_[3]
MonitorElement * h2_convVtxdRVsEta_
MonitorElement * h_RecoConvTwoMTracks_[5]
MonitorElement * h_convVtxdY_
double hcalIsolInnRadius_
MonitorElement * h_scEtaWidth_[2]
Sin< T >::type sin(const T &t)
float trkSumPtSolidConeDR04() const
MonitorElement * h2_hOverEVsEtaBkg_
MonitorElement * h2_DCotTracksVsEta_
std::vector< GenJet > GenJetCollection
collection of GenJet objects
const_iterator find(const key_type &k) const
find element with specified reference key
MonitorElement * h2_etaVsRsim_[3]
MonitorElement * h2_PtRecVsPtSim_[3]
MonitorElement * h2_PoverPtrueVsEta_[3]
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
MonitorElement * h_convVtxdZ_endcap_
std::vector< EcalRecHit >::const_iterator const_iterator
MonitorElement * h_scEt_[2][3]
edm::EDGetTokenT< edm::View< reco::Track > > conversionIOTrackPr_Token_
MonitorElement * h_dzPVFromTracks_[5]
MonitorElement * p_EoverEtrueVsR_[3]
MonitorElement * h2_sigmaIetaIetaVsEtBkg_[3]
MonitorElement * h_ecalRecHitSumEtConeDR04Bkg_[3]
MonitorElement * h_simConvVtxRvsZ_[4]
MonitorElement * h2_hcalTowerSumEtConeDR04VsEt_[3]
MonitorElement * h_MatchedSimJet_[3]
MonitorElement * p_nHitsVsRSL_[2]
MonitorElement * p_r2VsEtBkg_
MonitorElement * h_dRPhoPFcand_NeuHad_Cleaned_[3]
float ecalRecHitSumEtConeDR04() const
MonitorElement * h2_isoTrkSolidConeDR04VsEtaBkg_
MonitorElement * h_SimConvTwoMTracksAndVtxPGT0005_[5]
MonitorElement * h2_r1VsEtaBkg_
auto const & tracks
cannot be loose
MonitorElement * h2_isoTrkSolidConeDR04VsEtBkg_[3]
MonitorElement * h_TkD0_[3]
MonitorElement * h_dRPhoPFcand_ChHad_Cleaned_[3]
MonitorElement * h_chHadIso_miniAOD_[3]
MonitorElement * h_convVtxdY_endcap_
MonitorElement * h_EoverP_SL_[3]
std::unique_ptr< PhotonMCTruthFinder > thePhotonMCTruthFinder_
MonitorElement * p_eResVsR9_[3]
MonitorElement * h_etOutsideMustache_[3]
key_type key() const
Accessor for product key.
MonitorElement * h2_DPhiTracksAtVtxVsEta_
MonitorElement * p_DPhiTracksAtVtxVsR_
MonitorElement * h_SumPtOverPhoPt_ChHad_Cleaned_[3]
MonitorElement * p_sigmaEoEVsEt_[3][3]
MonitorElement * h_convVtxdR_endcap_
const Vector & momentum() const
track momentum vector
Log< level::Error, false > LogError
MonitorElement * h_convSLVtxRvsZ_[3]
MonitorElement * h_phoEt_miniAOD_[2][3]
const_iterator end() const
Termination of iteration.
static constexpr float R_ECAL
MonitorElement * p_newhOverEVsEta_[3]
MonitorElement * h2_convVtxRrecVsTrue_
MonitorElement * h2_DCotTracksVsR_
edm::EDGetTokenT< EcalRecHitCollection > endcapEcalHits_
MonitorElement * h2_PtRecVsPtSimMixProv_
MonitorElement * h_SumPtOverPhoPt_ChHad_unCleaned_[3]
MonitorElement * h_convEtaBkg_
edm::EDGetTokenT< edm::ValueMap< std::vector< reco::PFCandidateRef > > > particleBasedIso_token
static const double deltaEta
const_iterator begin() const
Initialize an iterator over the RefVector.
MonitorElement * h_phoE_miniAOD_[2][3]
MonitorElement * h_scPhi_[2]
MonitorElement * h2_r2VsEtaBkg_
MonitorElement * h_convVtxdPhi_
MonitorElement * h_scBkgE_[3]
MonitorElement * h_convERes_[2][3]
MonitorElement * p_Chi2VsR_[3]
MonitorElement * h_SimPho_[3]
Denominator for efficiencies.
MonitorElement * h2_r2VsEtBkg_
MonitorElement * p_r2VsEtaBkg_
MonitorElement * h_convVtxRvsZ_[3]
MonitorElement * h_nTrkSolidConeDR04_miniAOD_[3][3]
MonitorElement * h_convPhi_[2]
MonitorElement * h_nConv_[2][3]
info per conversion
MonitorElement * h2_isoTrkSolidConeDR04VsEt_[3]
MonitorElement * h_full5x5_r9_miniAOD_[3][3]
MonitorElement * h_r9_[3][3]
MonitorElement * h2_sigmaIetaIetaVsEta_[3]
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
MonitorElement * h_dRPhoPFcand_Pho_unCleaned_[3]
MonitorElement * p_EoverPVsR_[3]
edm::ESHandle< MagneticField > theMF_
MonitorElement * h2_sceResVsR9_[3]
MonitorElement * h_phoEta_[2]
MonitorElement * h2_Chi2VsEta_[3]
MonitorElement * h_simTkPt_
MonitorElement * h_mvaOutBkg_[3]
MonitorElement * h_trkAlgo_
MonitorElement * h2_dzPVVsR_
edm::EDGetTokenT< edm::SimTrackContainer > g4_simTk_Token_
MonitorElement * h_scEta_[2]
MonitorElement * h_convVtxdX_barrel_
MonitorElement * h2_hOverEVsEta_[3]
MonitorElement * p_eResVsR_
MonitorElement * p_hcalTowerSumEtConeDR04VsEtBkg_[3]
MonitorElement * h_tkChi2Large_[2]
MonitorElement * h2_r1VsEt_[3]
MonitorElement * h_trkProv_[2]
MonitorElement * p_sigmaIetaIetaVsEtaBkg_
reco::SuperClusterRef superCluster() const override
Ref to SuperCluster.
edm::ParameterSet parameters_
MonitorElement * p_convVtxdRVsEta_
MonitorElement * h_r1_[3][3]
MonitorElement * h_EoverPTracks_[2][3]
MonitorElement * h_phoSigmaEoE_miniAOD_[3][3]
MonitorElement * h_scPhiWidth_[2]
MonitorElement * h2_etaVsRreco_[3]
reco::ConversionRefVector conversions() const
vector of references to Conversion's
MonitorElement * bookProfile(TString const &name, TString const &title, int nchX, double lowX, double highX, int, double lowY, double highY, char const *option="s", FUNC onbooking=NOOP())
MonitorElement * h2_r1VsEta_[3]
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
std::string valueMapPhoPFCandIso_
MonitorElement * p_ecalRecHitSumEtConeDR04VsEtaBkg_
float phiNormalization(float &a)
MonitorElement * h2_r2VsEta_[3]
MonitorElement * h_nHadIso_miniAOD_[3]
MonitorElement * h_isoTrkSolidConeDR04_[3][3]
MonitorElement * p_hOverEVsEt_[3]
MonitorElement * h_EtR9Less093_[3][3]
MonitorElement * h_tkChi2SL_[2]
MonitorElement * h2_eResVsEt_[3][3]
MonitorElement * h_r9VsNofTracks_[2][3]
MonitorElement * h_ecalRecHitSumEtConeDR04_[3][3]
float sigmaIetaIeta() const
MonitorElement * h_ecalRecHitSumEtConeDR04_miniAOD_[3][3]
MonitorElement * h_phoEResRegr1_[3][3]
MonitorElement * h2_r9VsEtBkg_
MonitorElement * p_hOverEVsEta_[3]
MonitorElement * h2_TkPtPull_[3]
Tan< T >::type tan(const T &t)
Abs< T >::type abs(const T &t)
MonitorElement * h_SumPtOverPhoPt_Pho_Cleaned_[3]
MonitorElement * h_MatchedSimPhoBadCh_[3]
MonitorElement * h_MatchedSimJetBadCh_[3]
MonitorElement * h_convVtxdEta_
MonitorElement * h_r2_[3][3]
MonitorElement * p_nHitsVsEta_[2]
MonitorElement * h_convVtxdY_barrel_
float ChiSquaredProbability(double chiSquared, double nrDOF)
~PhotonValidator() override
MonitorElement * p_sigmaIetaIetaVsEtBkg_[3]
MonitorElement * h2_EoverEtrueVsEta_[3]
MonitorElement * h_phoBkgDEta_
MonitorElement * h_phoIso_miniAOD_[3]
MonitorElement * h_simTkEta_
MonitorElement * nHitsVsEta_[2]
static constexpr float etaBarrelEndcap
MonitorElement * p_nTrkSolidConeDR04VsEtaBkg_
MonitorElement * h2_sigmaIetaIetaVsEtaBkg_
MonitorElement * h_gamgamMassRegr1_[3][3]
MonitorElement * p_convVtxdXVsX_
MonitorElement * p_dzPVVsR_
double convTrackMinPtCut_
MonitorElement * hBCEnergyOverTrackPout_[3]
MonitorElement * h_PoverETracksBkg_[3]
MonitorElement * h_invMass_[2][3]
float hadronicOverEm(int depth=0) const
edm::EDGetTokenT< TrackingParticleCollection > token_tp_
MonitorElement * h2_EoverEtrueVsEoverP_[3]
MonitorElement * h_phoE_[2][3]
MonitorElement * h_simConvVtxYvsX_
MonitorElement * h_hOverE_[3][3]
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
MonitorElement * p_TkPtPull_[3]
MonitorElement * h_hOverEBkg_[3]
MonitorElement * h_dRPhoPFcand_NeuHad_unCleaned_[3]
MonitorElement * h_SimPhoMotherEt_[2]
MonitorElement * h2_eResVsR9_[3]
MonitorElement * nHitsVsR_[2]
MonitorElement * h_r1Bkg_[3]
MonitorElement * h_scEta_miniAOD_[2]
Histos for comparison with miniAOD content.
const_iterator end() const
MonitorElement * h_convVtxdX_
MonitorElement * p_isoTrkSolidConeDR04VsEtaBkg_
MonitorElement * h2_DPhiTracksAtVtxVsR_
MonitorElement * h_convVtxYvsXBkg_
MonitorElement * h_TkPtPull_[3]
MonitorElement * h2_EoverPVsEta_[3]
edm::ESHandle< CaloGeometry > theCaloGeom_
MonitorElement * h_nTrkSolidConeDR04Bkg_[3]
Log< level::Info, false > LogInfo
MonitorElement * p_DCotTracksVsEta_
MonitorElement * h_convPtRes_[2][3]
MonitorElement * h2_nTrkSolidConeDR04VsEtaBkg_
MonitorElement * h_r2Bkg_[3]
MonitorElement * h_MatchedSimPho_[3]
Numerator for efficiencies.
MonitorElement * p_convVtxdRVsR_
static constexpr float d0
MonitorElement * h_convVtxRvsZBkg_[2]
MonitorElement * p_Chi2VsEta_[3]
MonitorElement * h_nHadIso_[3]
MonitorElement * h2_hOverEVsEtBkg_
MonitorElement * p_sigmaEoEVsNVtx_[3][3]
MonitorElement * p_eResVsNVtx_[3][3]
MonitorElement * h_SumPtOverPhoPt_Pho_unCleaned_[3]
MonitorElement * h2_ecalRecHitSumEtConeDR04VsEtBkg_[3]
T const * product() const
auto const good
min quality of good
void clear()
Clear the vector.
MonitorElement * h_nSimConv_[2]
MonitorElement * h_nTrkSolidConeDR04_[3][3]
MonitorElement * h_sigmaIetaIetaBkg_[3]
MonitorElement * h2_EoverEtrueVsR_[3]
MonitorElement * p_hcalTowerBcSumEtConeDR04VsEta_[3]
MonitorElement * h_SimConvTwoMTracksAndVtxPGT0_[5]
MonitorElement * h_gamgamMass_[3][3]
MonitorElement * h_distMinAppTracks_[2][3]
std::vector< Photon > PhotonCollection
collectin of Photon objects
MonitorElement * p_PoverPtrueVsEta_[3]
edm::EDGetTokenT< reco::GenParticleCollection > genpartToken_
MonitorElement * h_r9Bkg_[3]
MonitorElement * h_phoERes_[3][3]
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, FUNC onbooking=NOOP())
MonitorElement * h_isoTrkSolidConeDR04Bkg_[3]
MonitorElement * h2_r9VsEtaBkg_
T getParameter(std::string const &) const
MonitorElement * h_convVtxYvsX_zoom_[2]
MonitorElement * h_convAlgo_
MonitorElement * h_nCluOutsideMustache_[3]
edm::EDGetTokenT< reco::GenJetCollection > genjets_Token_
MonitorElement * h_hcalTowerSumEtConeDR04_[3][3]
int nTrkSolidConeDR04() const
MonitorElement * h2_nTrkSolidConeDR04VsEt_[3]
MonitorElement * h2_hcalTowerSumEtConeDR04VsEtBkg_[3]
caConstants::TupleMultiplicity const CAHitNtupletGeneratorKernelsGPU::HitToTuple const cms::cuda::AtomicPairCounter GPUCACell const *__restrict__ uint32_t const *__restrict__ gpuPixelDoublets::CellNeighborsVector const gpuPixelDoublets::CellTracksVector const GPUCACell::OuterHitOfCell const int32_t nHits
MonitorElement * h_convQuality_
MonitorElement * h2_r1VsEtBkg_
MonitorElement * h_DCotTracksBkg_[3]
MonitorElement * h_phoIso_[3]
MonitorElement * p_ecalRecHitSumEtConeDR04VsEta_[3]
MonitorElement * p_r1VsEtaBkg_
MonitorElement * h_PoverETracks_[2][3]
float etaTransformation(float a, float b)
MonitorElement * h2_ecalRecHitSumEtConeDR04VsEt_[3]
MonitorElement * h_phoPixSeedSize_[2]
MonitorElement * h_vtxChi2_[3]
MonitorElement * p_nTrkSolidConeDR04VsEtBkg_[3]
MonitorElement * p_hcalTowerBcSumEtConeDR04VsEt_[3]
MonitorElement * h_pfMva_[3]
edm::InputTag conversionOITrackProducer_
void labelsForToken(EDGetToken iToken, Labels &oLabels) const
edm::EDGetTokenT< reco::PhotonCollection > photonCollectionToken_
MonitorElement * p_ecalRecHitSumEtConeDR04VsEtBkg_[3]
MonitorElement * h_hcalTowerSumEtConeDR04Bkg_[3]
MonitorElement * p_convVtxdZVsZ_
MonitorElement * p_hcalTowerSumEtConeDR04VsEta_[3]
MonitorElement * h_r1_miniAOD_[3][3]
MonitorElement * p_r1VsEtBkg_
MonitorElement * h_phoBkgEt_[3]
double et() const final
transverse energy
MonitorElement * h2_isoTrkSolidConeDR04VsEta_[3]
boost::indirect_iterator< typename seq_t::const_iterator > const_iterator
MonitorElement * h_SimPhoMotherEta_[2]
MonitorElement * h_EoverPTracksBkg_[3]
MonitorElement * h_convVtxdR_barrel_
void push_back(const RefToBase< T > &)
double hcalIsolExtRadius_
static constexpr float ZEcal
MonitorElement * h_VisSimConv_[6]
MonitorElement * h_SimConvTwoMTracks_[5]
MonitorElement * h2_nTrkSolidConeDR04VsEtBkg_[3]
MonitorElement * h2_hcalTowerSumEtConeDR04VsEtaBkg_
MonitorElement * p_eResVsEt_[3][3]
void push_back(value_type const &ref)
Add a Ref<C, T> to the RefVector.
size_type size() const
Size of the RefVector.
MonitorElement * h_convVtxYvsX_
MonitorElement * h_phoBkgE_[3]
MonitorElement * p_hOverEVsEtaBkg_
MonitorElement * h_r2_miniAOD_[3][3]
MonitorElement * h_phoSigmaEoE_[3][3]
MonitorElement * h_RecoConvTwoTracks_[5]
MonitorElement * p_r9VsEta_[3]
MonitorElement * h_DCotTracks_[2][3]
MonitorElement * h_phoERes_miniAOD_[3][3]
MonitorElement * h2_DPhiTracksAtEcalVsR_
std::vector< TrackingParticle > TrackingParticleCollection
MonitorElement * p_eResVsEta_[3]
edm::RefVector< TrackingParticleCollection > theConvTP_
ESHandle< T > getHandle(const ESGetToken< T, R > &iToken) const
MonitorElement * h_newhOverE_miniAOD_[3][3]
void dqmBeginRun(edm::Run const &r, edm::EventSetup const &theEventSetup) override
MonitorElement * h_dRPhoPFcand_ChHad_unCleaned_[3]
MonitorElement * h_AllSimConv_[5]
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
void analyze(const edm::Event &, const edm::EventSetup &) override
MonitorElement * h_vtxChi2Prob_[3]
MonitorElement * h_scBkgEta_
MonitorElement * p_nHitsVsR_[2]
MonitorElement * h_hcalTowerBcSumEtConeDR04_miniAOD_[3][3]
MonitorElement * h_r9_miniAOD_[3][3]
MonitorElement * h2_convVtxdRVsR_
double phi() const final
momentum azimuthal angle
MonitorElement * h_gamgamMassRegr2_[3][3]
MonitorElement * p_newhOverEVsEt_[3]
MonitorElement * h2_r2VsEt_[3]
MonitorElement * h_convVtxdR_
MonitorElement * h_convVtxdZ_barrel_
edm::InputTag conversionIOTrackProducer_
MonitorElement * h_SimConvOneTracks_[5]
MonitorElement * h_full5x5_sigmaIetaIeta_miniAOD_[3][3]
MonitorElement * h_convEta_[3]
MonitorElement * p_hcalTowerSumEtConeDR04VsEtaBkg_
int etaBin(const l1t::HGCalMulticluster *cl)
MonitorElement * p_ecalRecHitSumEtConeDR04VsEt_[3]
double mcPhi_
global variable for the MC photon
Power< A, B >::type pow(const A &a, const B &b)
MonitorElement * h_SimConvTwoTracks_[5]
MonitorElement * h2_sigmaIetaIetaVsEt_[3]
MonitorElement * h2_ecalRecHitSumEtConeDR04VsEtaBkg_
MonitorElement * h_scBkgEt_[3]
MonitorElement * h2_DPhiTracksAtEcalVsEta_
edm::EDGetTokenT< edm::View< reco::Track > > conversionOITrackPr_Token_
MonitorElement * h_sigmaIetaIeta_miniAOD_[3][3]
MonitorElement * h2_ecalRecHitSumEtConeDR04VsEta_[3]
MonitorElement * h_SimConvEtaPix_[2]
static constexpr float Z_Endcap
MonitorElement * h2_eResVsEta_[3]
const_iterator begin() const
MonitorElement * p_DPhiTracksAtVtxVsEta_
MonitorElement * p_DPhiTracksAtEcalVsEta_
MonitorElement * h_phoDPhi_[2]
MonitorElement * h_convPhiBkg_
edm::EDGetTokenT< edm::SimTrackContainer > famos_simTk_Token_
MonitorElement * h_phoBkgEta_
MonitorElement * h2_r9VsEt_[3]
MonitorElement * h_tkChi2_[2]
MonitorElement * p_dzPVVsEta_
double scalar(const CLHEP::HepGenMatrix &m)
Return the matrix as a scalar. Raise an assertion if the matris is not .
PhotonValidator(const edm::ParameterSet &)
MonitorElement * h_SimConvOneMTracks_[5]
double energy() const final
energy
MonitorElement * h_isoTrkSolidConeDR04_miniAOD_[3][3]
double eta() const final
momentum pseudorapidity
void dqmEndRun(edm::Run const &r, edm::EventSetup const &es) override