CMS 3D CMS Logo

GsfElectronMCFakeAnalyzer.cc
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: RecoEgamma/Examples
4 // Class: GsfElectronMCFakeAnalyzer
5 //
13 //
14 // Original Author: Ursula Berthon, Claude Charlot
15 // Created: Mon Mar 27 13:22:06 CEST 2006
16 //
17 //
18 
38 
39 #include "CLHEP/Units/GlobalPhysicalConstants.h"
40 
41 #include "TMath.h"
42 #include "TFile.h"
43 #include "TH1F.h"
44 #include "TH1I.h"
45 #include "TH2F.h"
46 #include "TProfile.h"
47 #include "TTree.h"
48 
49 #include <iostream>
50 
52 public:
53  explicit GsfElectronMCFakeAnalyzer(const edm::ParameterSet &conf);
54 
55  ~GsfElectronMCFakeAnalyzer() override;
56 
57  void beginJob() override;
58  void endJob() override;
59  void analyze(const edm::Event &e, const edm::EventSetup &c) override;
60 
61 private:
65  bool readAOD_;
67 
71 
72  float mcEnergy[10], mcEta[10], mcPhi[10], mcPt[10], mcQ[10];
74  float seedMomentum[10], seedEta[10], seedPhi[10], seedPt[10], seedQ[10];
75 
76  double maxPt_;
77  double maxAbsEta_;
78  double deltaR_;
79 
80  TFile *histfile_;
81  TTree *tree_;
82 
83  // histos limits and binning
84 
85  int nbinxyz;
86  int nbinp;
87  int nbinp2D;
88  double pmax;
89  int nbinpt;
90  int nbinpt2D;
91  int nbinpteff;
92  double ptmax;
93  int nbinfhits;
94  double fhitsmax;
95  int nbinlhits;
96  double lhitsmax;
97  int nbineta;
98  int nbineta2D;
99  double etamin;
100  double etamax;
101  int nbindeta;
102  double detamin;
103  double detamax;
106  double detamatchmin;
107  double detamatchmax;
108  int nbinphi;
110  double phimin;
111  double phimax;
112  int nbindphi;
113  double dphimin;
114  double dphimax;
117  double dphimatchmin;
118  double dphimatchmax;
119  int nbineop;
121  double eopmax;
122  double eopmaxsht;
123  int nbinmee;
124  double meemin;
125  double meemax;
126  int nbinhoe;
127  double hoemin;
128  double hoemax;
129 
130  // histos
131 
133 
140 
155 
158 
164 
184 
185  TH1F *histNum_;
186 
187  TH1F *histSclEn_;
190  TH1F *histSclEt_;
194  TH1F *histSclEta_;
195  TH1F *histSclPhi_;
211 
228  TH1F *h_ele_chi2;
234 
250 
258 
267  TH1F *h_ele_EoP;
303 
358 
366 
368  TH1F *h_ele_eta;
373 
374  TH1F *h_ele_HoE;
384 
385  TH1F *h_ele_fbrem;
388 
401 
402  TH1F *h_ele_mva;
404 
413 };
414 
417 
418 using namespace reco;
419 
421  : beamSpot_(conf.getParameter<edm::InputTag>("beamSpot")) {
422  outputFile_ = conf.getParameter<std::string>("outputFile");
423  histfile_ = new TFile(outputFile_.c_str(), "RECREATE");
424  electronCollection_ = conf.getParameter<edm::InputTag>("electronCollection");
425  matchingObjectCollection_ = conf.getParameter<edm::InputTag>("matchingObjectCollection");
426  readAOD_ = conf.getParameter<bool>("readAOD");
427  maxPt_ = conf.getParameter<double>("MaxPt");
428  maxAbsEta_ = conf.getParameter<double>("MaxAbsEta");
429  deltaR_ = conf.getParameter<double>("DeltaR");
430 
431  edm::ParameterSet pset = conf.getParameter<edm::ParameterSet>("HistosConfigurationFake");
432 
433  etamin = pset.getParameter<double>("Etamin");
434  etamax = pset.getParameter<double>("Etamax");
435  phimin = pset.getParameter<double>("Phimin");
436  phimax = pset.getParameter<double>("Phimax");
437  ptmax = pset.getParameter<double>("Ptmax");
438  pmax = pset.getParameter<double>("Pmax");
439  eopmax = pset.getParameter<double>("Eopmax");
440  eopmaxsht = pset.getParameter<double>("Eopmaxsht");
441  detamin = pset.getParameter<double>("Detamin");
442  detamax = pset.getParameter<double>("Detamax");
443  dphimin = pset.getParameter<double>("Dphimin");
444  dphimax = pset.getParameter<double>("Dphimax");
445  detamatchmin = pset.getParameter<double>("Detamatchmin");
446  detamatchmax = pset.getParameter<double>("Detamatchmax");
447  dphimatchmin = pset.getParameter<double>("Dphimatchmin");
448  dphimatchmax = pset.getParameter<double>("Dphimatchmax");
449  fhitsmax = pset.getParameter<double>("Fhitsmax");
450  lhitsmax = pset.getParameter<double>("Lhitsmax");
451  nbineta = pset.getParameter<int>("Nbineta");
452  nbineta2D = pset.getParameter<int>("Nbineta2D");
453  nbinp = pset.getParameter<int>("Nbinp");
454  nbinpt = pset.getParameter<int>("Nbinpt");
455  nbinp2D = pset.getParameter<int>("Nbinp2D");
456  nbinpt2D = pset.getParameter<int>("Nbinpt2D");
457  nbinpteff = pset.getParameter<int>("Nbinpteff");
458  nbinphi = pset.getParameter<int>("Nbinphi");
459  nbinphi2D = pset.getParameter<int>("Nbinphi2D");
460  nbineop = pset.getParameter<int>("Nbineop");
461  nbineop2D = pset.getParameter<int>("Nbineop2D");
462  nbinfhits = pset.getParameter<int>("Nbinfhits");
463  nbinlhits = pset.getParameter<int>("Nbinlhits");
464  nbinxyz = pset.getParameter<int>("Nbinxyz");
465  nbindeta = pset.getParameter<int>("Nbindeta");
466  nbindphi = pset.getParameter<int>("Nbindphi");
467  nbindetamatch = pset.getParameter<int>("Nbindetamatch");
468  nbindphimatch = pset.getParameter<int>("Nbindphimatch");
469  nbindetamatch2D = pset.getParameter<int>("Nbindetamatch2D");
470  nbindphimatch2D = pset.getParameter<int>("Nbindphimatch2D");
471  nbinmee = pset.getParameter<int>("Nbinmee");
472  meemin = pset.getParameter<double>("Meemin");
473  meemax = pset.getParameter<double>("Meemax");
474  nbinhoe = pset.getParameter<int>("Nbinhoe");
475  hoemin = pset.getParameter<double>("Hoemin");
476  hoemax = pset.getParameter<double>("Hoemax");
477 }
478 
480  // do anything here that needs to be done at desctruction time
481  // (e.g. close files, deallocate resources etc.)
482  histfile_->Write();
483  histfile_->Close();
484 }
485 
487  histfile_->cd();
488 
489  // matching object
490  std::string::size_type locJet = matchingObjectCollection_.label().find("ak4GenJets", 0);
491  std::string type_;
492  if (locJet != std::string::npos) {
493  std::cout << "Matching objects are GenJets " << std::endl;
494  type_ = "GenJet";
495  } else {
496  std::cout << "Didn't recognize input matching objects!! " << std::endl;
497  }
498 
499  std::string htitle, hlabel;
500  hlabel = "h_" + type_ + "Num";
501  htitle = "# " + type_ + "s";
502  h_matchingObjectNum = new TH1F(hlabel.c_str(), htitle.c_str(), nbinfhits, 0., fhitsmax);
503 
504  // rec event
505  histNum_ = new TH1F("h_recEleNum", "# rec electrons", 20, 0., 20.);
506 
507  // matching object distributions
508  hlabel = "h_matchingObject_eta";
509  htitle = type_ + " #eta";
510  h_matchingObjectEta = new TH1F(hlabel.c_str(), htitle.c_str(), nbineta, etamin, etamax);
511  hlabel = "h_matchingObject_abseta";
512  htitle = type_ + " |#eta|";
513  h_matchingObjectAbsEta = new TH1F(hlabel.c_str(), htitle.c_str(), nbineta / 2, 0., etamax);
514  hlabel = "h_matchingObject_P";
515  htitle = type_ + " p";
516  h_matchingObjectP = new TH1F(hlabel.c_str(), htitle.c_str(), nbinp, 0., pmax);
517  hlabel = "h_matchingObject_Pt";
518  htitle = type_ + " pt";
519  h_matchingObjectPt = new TH1F(hlabel.c_str(), htitle.c_str(), nbinpteff, 5., ptmax);
520  hlabel = "h_matchingObject_phi";
521  htitle = type_ + " phi";
522  h_matchingObjectPhi = new TH1F(hlabel.c_str(), htitle.c_str(), nbinphi, phimin, phimax);
523  hlabel = "h_matchingObject_z";
524  htitle = type_ + " z";
525  h_matchingObjectZ = new TH1F(hlabel.c_str(), htitle.c_str(), nbinxyz, -25, 25);
526 
527  // all electrons
528  h_ele_EoverP_all = new TH1F("h_ele_EoverP_all", "ele E/P_{vertex}, all reco electrons", nbineop, 0., eopmax);
529  h_ele_EseedOP_all = new TH1F("h_ele_EseedOP_all", "ele E_{seed}/P_{vertex}, all reco electrons", nbineop, 0., eopmax);
530  h_ele_EoPout_all = new TH1F("h_ele_EoPout_all", "ele E_{seed}/P_{out}, all reco electrons", nbineop, 0., eopmax);
531  h_ele_EeleOPout_all = new TH1F("h_ele_EeleOPout_all", "ele E_{ele}/P_{out}, all reco electrons", nbineop, 0., eopmax);
532  h_ele_dEtaSc_propVtx_all = new TH1F("h_ele_dEtaSc_propVtx_all",
533  "ele #eta_{sc} - #eta_{tr}, prop from vertex, all reco electrons",
535  detamatchmin,
536  detamatchmax);
537  h_ele_dPhiSc_propVtx_all = new TH1F("h_ele_dPhiSc_propVtx_all",
538  "ele #phi_{sc} - #phi_{tr}, prop from vertex, all reco electrons",
540  dphimatchmin,
541  dphimatchmax);
542  h_ele_dEtaCl_propOut_all = new TH1F("h_ele_dEtaCl_propOut_all",
543  "ele #eta_{cl} - #eta_{tr}, prop from outermost, all reco electrons",
545  detamatchmin,
546  detamatchmax);
547  h_ele_dPhiCl_propOut_all = new TH1F("h_ele_dPhiCl_propOut_all",
548  "ele #phi_{cl} - #phi_{tr}, prop from outermost, all reco electrons",
550  dphimatchmin,
551  dphimatchmax);
552  h_ele_TIP_all = new TH1F("h_ele_TIP_all", "ele vertex transverse radius, all reco electrons", 100, 0., 0.2);
553  h_ele_HoE_all =
554  new TH1F("h_ele_HoE_all", "ele hadronic energy / em energy, all reco electrons", nbinhoe, hoemin, hoemax);
555  h_ele_vertexEta_all = new TH1F("h_ele_vertexEta_all", "ele eta, all reco electrons", nbineta, etamin, etamax);
556  h_ele_vertexEta_all->Sumw2();
557  h_ele_vertexPt_all = new TH1F("h_ele_vertexPt_all", "ele p_{T}, all reco electrons", nbinpteff, 5., ptmax);
558  h_ele_vertexPt_all->Sumw2();
559  h_ele_mee_all = new TH1F("h_ele_mee_all", "ele pairs invariant mass, all reco electrons", nbinmee, meemin, meemax);
560  h_ele_mee_os = new TH1F("h_ele_mee_os", "ele pairs invariant mass, opp. sign", nbinmee, meemin, meemax);
561 
562  // duplicates
563  h_ele_E2mnE1vsMee_all = new TH2F("h_ele_E2mnE1vsMee_all",
564  "E2 - E1 vs ele pairs invariant mass, all electrons",
565  nbinmee,
566  meemin,
567  meemax,
568  100,
569  -50.,
570  50.);
571  h_ele_E2mnE1vsMee_egeg_all = new TH2F("h_ele_E2mnE1vsMee_egeg_all",
572  "E2 - E1 vs ele pairs invariant mass, ecal driven pairs, all electrons",
573  nbinmee,
574  meemin,
575  meemax,
576  100,
577  -50.,
578  50.);
579 
580  // matched electrons
581 
583  new TH1F("h_ele_matchingObjectPt_matched", "Efficiency vs matching jet p_{T}", nbinpteff, 5., ptmax);
586  new TH1F("h_ele_matchingObjectAbsEta_matched", "Efficiency vs matching jet |#eta|", nbineta / 2, 0., 2.5);
589  new TH1F("h_ele_matchingObjectEta_matched", "Efficiency vs matching jet #eta", nbineta, etamin, etamax);
592  new TH1F("h_ele_matchingObjectPhi_matched", "Efficiency vs matching jet phi", nbinphi, phimin, phimax);
595  new TH1F("h_ele_matchingObjectZ_matched", "Efficiency vs matching jet z", nbinxyz, -25, 25);
597 
598  h_ele_charge = new TH1F("h_ele_charge", "ele charge", 5, -2., 2.);
599  h_ele_chargeVsEta = new TH2F("h_ele_chargeVsEta", "ele charge vs eta", nbineta2D, etamin, etamax, 5, -2., 2.);
600  h_ele_chargeVsPhi = new TH2F("h_ele_chargeVsPhi", "ele charge vs phi", nbinphi2D, phimin, phimax, 5, -2., 2.);
601  h_ele_chargeVsPt = new TH2F("h_ele_chargeVsPt", "ele charge vs pt", nbinpt, 0., 100., 5, -2., 2.);
602  h_ele_vertexP = new TH1F("h_ele_vertexP", "ele momentum", nbinp, 0., pmax);
603  h_ele_vertexPt = new TH1F("h_ele_vertexPt", "ele transverse momentum", nbinpt, 0., ptmax);
605  new TH2F("h_ele_vertexPtVsEta", "ele transverse momentum vs eta", nbineta2D, etamin, etamax, nbinpt2D, 0., ptmax);
607  new TH2F("h_ele_vertexPtVsPhi", "ele transverse momentum vs phi", nbinphi2D, phimin, phimax, nbinpt2D, 0., ptmax);
608  h_ele_vertexEta = new TH1F("h_ele_vertexEta", "ele momentum eta", nbineta, etamin, etamax);
610  new TH2F("h_ele_vertexEtaVsPhi", "ele momentum eta vs phi", nbineta2D, etamin, etamax, nbinphi2D, phimin, phimax);
611  h_ele_vertexPhi = new TH1F("h_ele_vertexPhi", "ele momentum #phi", nbinphi, phimin, phimax);
612  h_ele_vertexX = new TH1F("h_ele_vertexX", "ele vertex x", nbinxyz, -0.1, 0.1);
613  h_ele_vertexY = new TH1F("h_ele_vertexY", "ele vertex y", nbinxyz, -0.1, 0.1);
614  h_ele_vertexZ = new TH1F("h_ele_vertexZ", "ele vertex z", nbinxyz, -25, 25);
615  h_ele_vertexTIP = new TH1F("h_ele_vertexTIP", "ele transverse impact parameter (wrt bs)", 90, 0., 0.15);
616  h_ele_vertexTIPVsEta = new TH2F("h_ele_vertexTIPVsEta",
617  "ele transverse impact parameter (wrt bs) vs eta",
618  nbineta2D,
619  etamin,
620  etamax,
621  45,
622  0.,
623  0.15);
624  h_ele_vertexTIPVsPhi = new TH2F("h_ele_vertexTIPVsPhi",
625  "ele transverse impact parameter (wrt bs) vs phi",
626  nbinphi2D,
627  phimin,
628  phimax,
629  45,
630  0.,
631  0.15);
632  h_ele_vertexTIPVsPt = new TH2F(
633  "h_ele_vertexTIPVsPt", "ele transverse impact parameter (wrt bs) vs Pt", nbinpt2D, 0., ptmax, 45, 0., 0.15);
634 
635  h_ele_PoPmatchingObject = new TH1F("h_ele_PoPmatchingObject", "ele momentum / matching jet momentum", 75, 0., 1.5);
636  h_ele_PoPmatchingObjectVsEta = new TH2F("h_ele_PoPmatchingObjectVsEta",
637  "ele momentum / matching jet momentum vs eta",
638  nbineta2D,
639  etamin,
640  etamax,
641  50,
642  0.,
643  1.5);
644  h_ele_PoPmatchingObjectVsPhi = new TH2F("h_ele_PoPmatchingObjectVsPhi",
645  "ele momentum / matching jet momentum vs phi",
646  nbinphi2D,
647  phimin,
648  phimax,
649  50,
650  0.,
651  1.5);
652  h_ele_PoPmatchingObjectVsPt = new TH2F(
653  "h_ele_PoPmatchingObjectVsPt", "ele momentum / matching jet momentum vs eta", nbinpt2D, 0., ptmax, 50, 0., 1.5);
655  new TH1F("h_ele_PoPmatchingObject_barrel", "ele momentum / matching jet momentum, barrel", 75, 0., 1.5);
657  new TH1F("h_ele_PoPmatchingObject_endcaps", "ele momentum / matching jet momentum, endcaps", 75, 0., 1.5);
658 
660  new TH1F("h_ele_EtaMnEtamatchingObject", "ele momentum eta - matching jet eta", nbindeta, detamin, detamax);
661  h_ele_EtaMnEtamatchingObjectVsEta = new TH2F("h_ele_EtaMnEtamatchingObjectVsEta",
662  "ele momentum eta - matching jet eta vs eta",
663  nbineta2D,
664  etamin,
665  etamax,
666  nbindeta / 2,
667  detamin,
668  detamax);
669  h_ele_EtaMnEtamatchingObjectVsPhi = new TH2F("h_ele_EtaMnEtamatchingObjectVsPhi",
670  "ele momentum eta - matching jet eta vs phi",
671  nbinphi2D,
672  phimin,
673  phimax,
674  nbindeta / 2,
675  detamin,
676  detamax);
677  h_ele_EtaMnEtamatchingObjectVsPt = new TH2F("h_ele_EtaMnEtamatchingObjectVsPt",
678  "ele momentum eta - matching jet eta vs pt",
679  nbinpt,
680  0.,
681  ptmax,
682  nbindeta / 2,
683  detamin,
684  detamax);
686  new TH1F("h_ele_PhiMnPhimatchingObject", "ele momentum phi - matching jet phi", nbindphi, dphimin, dphimax);
687  h_ele_PhiMnPhimatchingObject2 = new TH1F("h_ele_PhiMnPhimatchingObject2",
688  "ele momentum phi - matching jet phi",
690  dphimatchmin,
691  dphimatchmax);
692  h_ele_PhiMnPhimatchingObjectVsEta = new TH2F("h_ele_PhiMnPhimatchingObjectVsEta",
693  "ele momentum phi - matching SC phi vs eta",
694  nbineta2D,
695  etamin,
696  etamax,
697  nbindphi / 2,
698  dphimin,
699  dphimax);
700  h_ele_PhiMnPhimatchingObjectVsPhi = new TH2F("h_ele_PhiMnPhimatchingObjectVsPhi",
701  "ele momentum phi - matching SC phi vs phi",
702  nbinphi2D,
703  phimin,
704  phimax,
705  nbindphi / 2,
706  dphimin,
707  dphimax);
708  h_ele_PhiMnPhimatchingObjectVsPt = new TH2F("h_ele_PhiMnPhimatchingObjectVsPt",
709  "ele momentum phi - matching SC phi vs pt",
710  nbinpt2D,
711  0.,
712  ptmax,
713  nbindphi / 2,
714  dphimin,
715  dphimax);
716 
717  // matched electron, superclusters
718  histSclEn_ = new TH1F("h_scl_energy", "ele supercluster energy", nbinp, 0., pmax);
720  new TH1F("h_scl_EoEmatchingObject_barrel", "ele supercluster energy / matching jet energy, barrel", 50, 0.2, 1.2);
722  "h_scl_EoEmatchingObject_endcaps", "ele supercluster energy / matching jet energy, endcaps", 50, 0.2, 1.2);
723  histSclEt_ = new TH1F("h_scl_et", "ele supercluster transverse energy", nbinpt, 0., ptmax);
724  histSclEtVsEta_ = new TH2F(
725  "h_scl_etVsEta", "ele supercluster transverse energy vs eta", nbineta2D, etamin, etamax, nbinpt, 0., ptmax);
726  histSclEtVsPhi_ = new TH2F(
727  "h_scl_etVsPhi", "ele supercluster transverse energy vs phi", nbinphi2D, phimin, phimax, nbinpt, 0., ptmax);
729  new TH2F("h_scl_etaVsPhi", "ele supercluster eta vs phi", nbinphi2D, phimin, phimax, nbineta2D, etamin, etamax);
730  histSclEta_ = new TH1F("h_scl_eta", "ele supercluster eta", nbineta, etamin, etamax);
731  histSclPhi_ = new TH1F("h_scl_phi", "ele supercluster phi", nbinphi, phimin, phimax);
732 
733  histSclSigIEtaIEta_ = new TH1F("h_scl_sigietaieta", "ele supercluster sigma ieta ieta", 100, 0., 0.05);
735  new TH1F("h_scl_sigietaieta_barrel", "ele supercluster sigma ieta ieta, barrel", 100, 0., 0.05);
737  new TH1F("h_scl_sigietaieta_endcaps", "ele supercluster sigma ieta ieta, endcaps", 100, 0., 0.05);
738  histSclE1x5_ = new TH1F("h_scl_E1x5", "ele supercluster energy in 1x5", nbinp, 0., pmax);
739  histSclE1x5_barrel_ = new TH1F("h_scl_E1x5_barrel", "ele supercluster energy in 1x5 barrel", nbinp, 0., pmax);
740  histSclE1x5_endcaps_ = new TH1F("h_scl_E1x5_endcaps", "ele supercluster energy in 1x5 endcaps", nbinp, 0., pmax);
741  histSclE2x5max_ = new TH1F("h_scl_E2x5max", "ele supercluster energy in 2x5 max", nbinp, 0., pmax);
743  new TH1F("h_scl_E2x5max_barrel", "ele supercluster energy in 2x5 max barrel", nbinp, 0., pmax);
745  new TH1F("h_scl_E2x5max_endcaps", "ele supercluster energy in 2x5 max endcaps", nbinp, 0., pmax);
746  histSclE5x5_ = new TH1F("h_scl_E5x5", "ele supercluster energy in 5x5", nbinp, 0., pmax);
747  histSclE5x5_barrel_ = new TH1F("h_scl_E5x5_barrel", "ele supercluster energy in 5x5 barrel", nbinp, 0., pmax);
748  histSclE5x5_endcaps_ = new TH1F("h_scl_E5x5_endcaps", "ele supercluster energy in 5x5 endcaps", nbinp, 0., pmax);
749 
750  // matched electron, gsf tracks
751  h_ele_ambiguousTracks = new TH1F("h_ele_ambiguousTracks", "ele # ambiguous tracks", 5, 0., 5.);
753  new TH2F("h_ele_ambiguousTracksVsEta", "ele # ambiguous tracks vs eta", nbineta2D, etamin, etamax, 5, 0., 5.);
755  new TH2F("h_ele_ambiguousTracksVsPhi", "ele # ambiguous tracks vs phi", nbinphi2D, phimin, phimax, 5, 0., 5.);
757  new TH2F("h_ele_ambiguousTracksVsPt", "ele # ambiguous tracks vs pt", nbinpt2D, 0., ptmax, 5, 0., 5.);
758  h_ele_foundHits = new TH1F("h_ele_foundHits", "ele track # found hits", nbinfhits, 0., fhitsmax);
759  h_ele_foundHitsVsEta = new TH2F(
760  "h_ele_foundHitsVsEta", "ele track # found hits vs eta", nbineta2D, etamin, etamax, nbinfhits, 0., fhitsmax);
761  h_ele_foundHitsVsPhi = new TH2F(
762  "h_ele_foundHitsVsPhi", "ele track # found hits vs phi", nbinphi2D, phimin, phimax, nbinfhits, 0., fhitsmax);
764  new TH2F("h_ele_foundHitsVsPt", "ele track # found hits vs pt", nbinpt2D, 0., ptmax, nbinfhits, 0., fhitsmax);
765  h_ele_lostHits = new TH1F("h_ele_lostHits", "ele track # lost hits", 5, 0., 5.);
766  h_ele_lostHitsVsEta = new TH2F(
767  "h_ele_lostHitsVsEta", "ele track # lost hits vs eta", nbineta2D, etamin, etamax, nbinlhits, 0., lhitsmax);
768  h_ele_lostHitsVsPhi = new TH2F(
769  "h_ele_lostHitsVsPhi", "ele track # lost hits vs eta", nbinphi2D, phimin, phimax, nbinlhits, 0., lhitsmax);
771  new TH2F("h_ele_lostHitsVsPt", "ele track # lost hits vs eta", nbinpt2D, 0., ptmax, nbinlhits, 0., lhitsmax);
772  h_ele_chi2 = new TH1F("h_ele_chi2", "ele track #chi^{2}", 100, 0., 15.);
773  h_ele_chi2VsEta = new TH2F("h_ele_chi2VsEta", "ele track #chi^{2} vs eta", nbineta2D, etamin, etamax, 50, 0., 15.);
774  h_ele_chi2VsPhi = new TH2F("h_ele_chi2VsPhi", "ele track #chi^{2} vs phi", nbinphi2D, phimin, phimax, 50, 0., 15.);
775  h_ele_chi2VsPt = new TH2F("h_ele_chi2VsPt", "ele track #chi^{2} vs pt", nbinpt2D, 0., ptmax, 50, 0., 15.);
776  h_ele_PinMnPout = new TH1F("h_ele_PinMnPout", "ele track inner p - outer p, mean", nbinp, 0., 200.);
777  h_ele_PinMnPout_mode = new TH1F("h_ele_PinMnPout_mode", "ele track inner p - outer p, mode", nbinp, 0., 100.);
778  h_ele_PinMnPoutVsEta_mode = new TH2F("h_ele_PinMnPoutVsEta_mode",
779  "ele track inner p - outer p vs eta, mode",
780  nbineta2D,
781  etamin,
782  etamax,
783  nbinp2D,
784  0.,
785  100.);
786  h_ele_PinMnPoutVsPhi_mode = new TH2F("h_ele_PinMnPoutVsPhi_mode",
787  "ele track inner p - outer p vs phi, mode",
788  nbinphi2D,
789  phimin,
790  phimax,
791  nbinp2D,
792  0.,
793  100.);
794  h_ele_PinMnPoutVsPt_mode = new TH2F(
795  "h_ele_PinMnPoutVsPt_mode", "ele track inner p - outer p vs pt, mode", nbinpt2D, 0., ptmax, nbinp2D, 0., 100.);
796  h_ele_PinMnPoutVsE_mode = new TH2F(
797  "h_ele_PinMnPoutVsE_mode", "ele track inner p - outer p vs E, mode", nbinp2D, 0., 200., nbinp2D, 0., 100.);
798  h_ele_PinMnPoutVsChi2_mode = new TH2F(
799  "h_ele_PinMnPoutVsChi2_mode", "ele track inner p - outer p vs track chi2, mode", 50, 0., 20., nbinp2D, 0., 100.);
800  h_ele_outerP = new TH1F("h_ele_outerP", "ele track outer p, mean", nbinp, 0., pmax);
801  h_ele_outerP_mode = new TH1F("h_ele_outerP_mode", "ele track outer p, mode", nbinp, 0., pmax);
803  new TH2F("h_ele_outerPVsEta_mode", "ele track outer p vs eta mode", nbineta2D, etamin, etamax, 50, 0., pmax);
804  h_ele_outerPt = new TH1F("h_ele_outerPt", "ele track outer p_{T}, mean", nbinpt, 0., ptmax);
805  h_ele_outerPt_mode = new TH1F("h_ele_outerPt_mode", "ele track outer p_{T}, mode", nbinpt, 0., ptmax);
806  h_ele_outerPtVsEta_mode = new TH2F(
807  "h_ele_outerPtVsEta_mode", "ele track outer p_{T} vs eta, mode", nbineta2D, etamin, etamax, nbinpt2D, 0., ptmax);
808  h_ele_outerPtVsPhi_mode = new TH2F(
809  "h_ele_outerPtVsPhi_mode", "ele track outer p_{T} vs phi, mode", nbinphi2D, phimin, phimax, nbinpt2D, 0., ptmax);
811  new TH2F("h_ele_outerPtVsPt_mode", "ele track outer p_{T} vs pt, mode", nbinpt2D, 0., 100., nbinpt2D, 0., ptmax);
812 
813  // matched electrons,cluster-track matching
814  h_ele_EoP = new TH1F("h_ele_EoP", "ele E/P_{vertex}", nbineop, 0., eopmax);
815  h_ele_EoP->Sumw2();
816  h_ele_EoP_eg = new TH1F("h_ele_EoP_eg", "ele E/P_{vertex}, ecal driven", nbineop, 0., eopmax);
817  h_ele_EoP_eg->Sumw2();
818  h_ele_EoP_barrel = new TH1F("h_ele_EoP_barrel", "ele E/P_{vertex} barrel", nbineop, 0., eopmax);
819  h_ele_EoP_barrel->Sumw2();
820  h_ele_EoP_eg_barrel = new TH1F("h_ele_EoP_eg_barrel", "ele E/P_{vertex}, ecal driven barrel", nbineop, 0., eopmax);
821  h_ele_EoP_eg_barrel->Sumw2();
822  h_ele_EoP_endcaps = new TH1F("h_ele_EoP_endcaps", "ele E/P_{vertex} endcaps", nbineop, 0., eopmax);
823  h_ele_EoP_endcaps->Sumw2();
824  h_ele_EoP_eg_endcaps = new TH1F("h_ele_EoP_eg_endcaps", "ele E/P_{vertex}, ecal driven endcaps", nbineop, 0., eopmax);
825  h_ele_EoP_eg_endcaps->Sumw2();
827  new TH2F("h_ele_EoPVsEta", "ele E/P_{vertex} vs eta", nbineta2D, etamin, etamax, nbineop2D, 0., eopmaxsht);
829  new TH2F("h_ele_EoPVsPhi", "ele E/P_{vertex} vs phi", nbinphi2D, phimin, phimax, nbineop2D, 0., eopmaxsht);
830  h_ele_EoPVsE = new TH2F("h_ele_EoPVsE", "ele E/P_{vertex} vs E", 50, 0., pmax, 50, 0., 5.);
831  h_ele_EseedOP = new TH1F("h_ele_EseedOP", "ele E_{seed}/P_{vertex}", nbineop, 0., eopmax);
832  h_ele_EseedOP->Sumw2();
833  h_ele_EseedOP_eg = new TH1F("h_ele_EseedOP_eg", "ele E_{seed}/P_{vertex}, ecal driven", nbineop, 0., eopmax);
834  h_ele_EseedOP_eg->Sumw2();
835  h_ele_EseedOP_barrel = new TH1F("h_ele_EseedOP_barrel", "ele E_{seed}/P_{vertex} barrel", nbineop, 0., eopmax);
836  h_ele_EseedOP_barrel->Sumw2();
838  new TH1F("h_ele_EseedOP_eg_barrel", "ele E_{seed}/P_{vertex}, ecal driven barrel", nbineop, 0., eopmax);
839  h_ele_EseedOP_eg_barrel->Sumw2();
840  h_ele_EseedOP_endcaps = new TH1F("h_ele_EseedOP_endcaps", "ele E_{seed}/P_{vertex} endcaps", nbineop, 0., eopmax);
841  h_ele_EseedOP_endcaps->Sumw2();
843  new TH1F("h_ele_EseedOP_eg_endcaps", "ele E_{seed}/P_{vertex}, ecal driven, endcaps", nbineop, 0., eopmax);
844  h_ele_EseedOP_eg_endcaps->Sumw2();
845  h_ele_EseedOPVsEta = new TH2F(
846  "h_ele_EseedOPVsEta", "ele E_{seed}/P_{vertex} vs eta", nbineta2D, etamin, etamax, nbineop2D, 0., eopmaxsht);
847  h_ele_EseedOPVsPhi = new TH2F(
848  "h_ele_EseedOPVsPhi", "ele E_{seed}/P_{vertex} vs phi", nbinphi2D, phimin, phimax, nbineop2D, 0., eopmaxsht);
849  h_ele_EseedOPVsE = new TH2F("h_ele_EseedOPVsE", "ele E_{seed}/P_{vertex} vs E", 50, 0., pmax, 50, 0., 5.);
850  h_ele_EoPout = new TH1F("h_ele_EoPout", "ele E_{seed}/P_{out}", nbineop, 0., eopmax);
851  h_ele_EoPout->Sumw2();
852  h_ele_EoPout_eg = new TH1F("h_ele_EoPout_eg", "ele E_{seed}/P_{out}, ecal driven", nbineop, 0., eopmax);
853  h_ele_EoPout_eg->Sumw2();
854  h_ele_EoPout_barrel = new TH1F("h_ele_EoPout_barrel", "ele E_{seed}/P_{out} barrel", nbineop, 0., eopmax);
855  h_ele_EoPout_barrel->Sumw2();
857  new TH1F("h_ele_EoPout_eg_barrel", "ele E_{seed}/P_{out}, ecal driven, barrel", nbineop, 0., eopmax);
858  h_ele_EoPout_eg_barrel->Sumw2();
859  h_ele_EoPout_endcaps = new TH1F("h_ele_EoPout_endcaps", "ele E_{seed}/P_{out} endcaps", nbineop, 0., eopmax);
860  h_ele_EoPout_endcaps->Sumw2();
862  new TH1F("h_ele_EoPout_eg_endcaps", "ele E_{seed}/P_{out}, ecal driven, endcaps", nbineop, 0., eopmax);
863  h_ele_EoPout_eg_endcaps->Sumw2();
865  new TH2F("h_ele_EoPoutVsEta", "ele E/P_{out} vs eta", nbineta2D, etamin, etamax, nbineop2D, 0., eopmaxsht);
867  new TH2F("h_ele_EoPoutVsPhi", "ele E/P_{out} vs phi", nbinphi2D, phimin, phimax, nbineop2D, 0., eopmaxsht);
868  h_ele_EoPoutVsE = new TH2F("h_ele_EoPoutVsE", "ele E/P_{out} vs E", nbinp2D, 0., pmax, nbineop2D, 0., eopmaxsht);
869  h_ele_EeleOPout = new TH1F("h_ele_EeleOPout", "ele E_{ele}/P_{out}", nbineop, 0., eopmax);
870  h_ele_EeleOPout->Sumw2();
871  h_ele_EeleOPout_eg = new TH1F("h_ele_EeleOPout_eg", "ele E_{ele}/P_{out}, ecal driven", nbineop, 0., eopmax);
872  h_ele_EeleOPout_eg->Sumw2();
873  h_ele_EeleOPout_barrel = new TH1F("h_ele_EeleOPout_barrel", "ele E_{ele}/P_{out} barrel", nbineop, 0., eopmax);
874  h_ele_EeleOPout_barrel->Sumw2();
876  new TH1F("h_ele_EeleOPout_eg_barrel", "ele E_{ele}/P_{out}, ecal driven, barrel", nbineop, 0., eopmax);
877  h_ele_EeleOPout_eg_barrel->Sumw2();
878  h_ele_EeleOPout_endcaps = new TH1F("h_ele_EeleOPout_endcaps", "ele E_{ele}/P_{out} endcaps", nbineop, 0., eopmax);
879  h_ele_EeleOPout_endcaps->Sumw2();
881  new TH1F("h_ele_EeleOPout_eg_endcaps", "ele E_{ele}/P_{out}, ecal driven, endcaps", nbineop, 0., eopmax);
883  h_ele_EeleOPoutVsEta = new TH2F(
884  "h_ele_EeleOPoutVsEta", "ele E_{ele}/P_{out} vs eta", nbineta2D, etamin, etamax, nbineop2D, 0., eopmaxsht);
885  h_ele_EeleOPoutVsPhi = new TH2F(
886  "h_ele_EeleOPoutVsPhi", "ele E_{ele}/P_{out} vs phi", nbinphi2D, phimin, phimax, nbineop2D, 0., eopmaxsht);
888  new TH2F("h_ele_EeleOPoutVsE", "ele E_{ele}/P_{out} vs E", nbinp2D, 0., pmax, nbineop2D, 0., eopmaxsht);
889  h_ele_dEtaSc_propVtx = new TH1F(
890  "h_ele_dEtaSc_propVtx", "ele #eta_{sc} - #eta_{tr}, prop from vertex", nbindetamatch, detamatchmin, detamatchmax);
891  h_ele_dEtaSc_propVtx->Sumw2();
892  h_ele_dEtaSc_propVtx_eg = new TH1F("h_ele_dEtaSc_propVtx_eg",
893  "ele #eta_{sc} - #eta_{tr}, prop from vertex, ecal driven",
895  detamatchmin,
896  detamatchmax);
897  h_ele_dEtaSc_propVtx_eg->Sumw2();
898  h_ele_dEtaSc_propVtx_barrel = new TH1F("h_ele_dEtaSc_propVtx_barrel",
899  "ele #eta_{sc} - #eta_{tr}, prop from vertex, barrel",
901  detamatchmin,
902  detamatchmax);
904  h_ele_dEtaSc_propVtx_eg_barrel = new TH1F("h_ele_dEtaSc_propVtx_eg_barrel",
905  "ele #eta_{sc} - #eta_{tr}, prop from vertex, ecal driven, barrel",
907  detamatchmin,
908  detamatchmax);
910  h_ele_dEtaSc_propVtx_endcaps = new TH1F("h_ele_dEtaSc_propVtx_endcaps",
911  "ele #eta_{sc} - #eta_{tr}, prop from vertex, endcaps",
913  detamatchmin,
914  detamatchmax);
916  h_ele_dEtaSc_propVtx_eg_endcaps = new TH1F("h_ele_dEtaSc_propVtx_eg_endcaps",
917  "ele #eta_{sc} - #eta_{tr}, prop from vertex, ecal driven, endcaps",
919  detamatchmin,
920  detamatchmax);
922  h_ele_dEtaScVsEta_propVtx = new TH2F("h_ele_dEtaScVsEta_propVtx",
923  "ele #eta_{sc} - #eta_{tr} vs eta, prop from vertex",
924  nbineta2D,
925  etamin,
926  etamax,
928  detamatchmin,
929  detamatchmax);
930  h_ele_dEtaScVsPhi_propVtx = new TH2F("h_ele_dEtaScVsPhi_propVtx",
931  "ele #eta_{sc} - #eta_{tr} vs phi, prop from vertex",
932  nbinphi2D,
933  phimin,
934  phimax,
936  detamatchmin,
937  detamatchmax);
938  h_ele_dEtaScVsPt_propVtx = new TH2F("h_ele_dEtaScVsPt_propVtx",
939  "ele #eta_{sc} - #eta_{tr} vs pt, prop from vertex",
940  nbinpt2D,
941  0.,
942  ptmax,
944  detamatchmin,
945  detamatchmax);
946  h_ele_dPhiSc_propVtx = new TH1F(
947  "h_ele_dPhiSc_propVtx", "ele #phi_{sc} - #phi_{tr}, prop from vertex", nbindphimatch, dphimatchmin, dphimatchmax);
948  h_ele_dPhiSc_propVtx->Sumw2();
949  h_ele_dPhiSc_propVtx_eg = new TH1F("h_ele_dPhiSc_propVtx_eg",
950  "ele #phi_{sc} - #phi_{tr}, prop from vertex, ecal driven",
952  dphimatchmin,
953  dphimatchmax);
954  h_ele_dPhiSc_propVtx_eg->Sumw2();
955  h_ele_dPhiSc_propVtx_barrel = new TH1F("h_ele_dPhiSc_propVtx_barrel",
956  "ele #phi_{sc} - #phi_{tr}, prop from vertex, barrel",
958  dphimatchmin,
959  dphimatchmax);
961  h_ele_dPhiSc_propVtx_eg_barrel = new TH1F("h_ele_dPhiSc_propVtx_eg_barrel",
962  "ele #phi_{sc} - #phi_{tr}, prop from vertex, ecal driven, barrel",
964  dphimatchmin,
965  dphimatchmax);
967  h_ele_dPhiSc_propVtx_endcaps = new TH1F("h_ele_dPhiSc_propVtx_endcaps",
968  "ele #phi_{sc} - #phi_{tr}, prop from vertex, endcaps",
970  dphimatchmin,
971  dphimatchmax);
973  h_ele_dPhiSc_propVtx_eg_endcaps = new TH1F("h_ele_dPhiSc_propVtx_eg_endcaps",
974  "ele #phi_{sc} - #phi_{tr}, prop from vertex, ecal driven, endcaps",
976  dphimatchmin,
977  dphimatchmax);
979  h_ele_dPhiScVsEta_propVtx = new TH2F("h_ele_dPhiScVsEta_propVtx",
980  "ele #phi_{sc} - #phi_{tr} vs eta, prop from vertex",
981  nbineta2D,
982  etamin,
983  etamax,
985  dphimatchmin,
986  dphimatchmax);
987  h_ele_dPhiScVsPhi_propVtx = new TH2F("h_ele_dPhiScVsPhi_propVtx",
988  "ele #phi_{sc} - #phi_{tr} vs phi, prop from vertex",
989  nbinphi2D,
990  phimin,
991  phimax,
993  dphimatchmin,
994  dphimatchmax);
995  h_ele_dPhiScVsPt_propVtx = new TH2F("h_ele_dPhiScVsPt_propVtx",
996  "ele #phi_{sc} - #phi_{tr} vs pt, prop from vertex",
997  nbinpt2D,
998  0.,
999  ptmax,
1001  dphimatchmin,
1002  dphimatchmax);
1003  h_ele_dEtaCl_propOut = new TH1F("h_ele_dEtaCl_propOut",
1004  "ele #eta_{cl} - #eta_{tr}, prop from outermost",
1005  nbindetamatch,
1006  detamatchmin,
1007  detamatchmax);
1008  h_ele_dEtaCl_propOut->Sumw2();
1009  h_ele_dEtaCl_propOut_eg = new TH1F("h_ele_dEtaCl_propOut_eg",
1010  "ele #eta_{cl} - #eta_{tr}, prop from outermost, ecal driven",
1011  nbindetamatch,
1012  detamatchmin,
1013  detamatchmax);
1014  h_ele_dEtaCl_propOut_eg->Sumw2();
1015  h_ele_dEtaCl_propOut_barrel = new TH1F("h_ele_dEtaCl_propOut_barrel",
1016  "ele #eta_{cl} - #eta_{tr}, prop from outermost, barrel",
1017  nbindetamatch,
1018  detamatchmin,
1019  detamatchmax);
1020  h_ele_dEtaCl_propOut_barrel->Sumw2();
1021  h_ele_dEtaCl_propOut_eg_barrel = new TH1F("h_ele_dEtaCl_propOut_eg_barrel",
1022  "ele #eta_{cl} - #eta_{tr}, prop from outermost, ecal driven, barrel",
1023  nbindetamatch,
1024  detamatchmin,
1025  detamatchmax);
1027  h_ele_dEtaCl_propOut_endcaps = new TH1F("h_ele_dEtaCl_propOut_endcaps",
1028  "ele #eta_{cl} - #eta_{tr}, prop from outermost, endcaps",
1029  nbindetamatch,
1030  detamatchmin,
1031  detamatchmax);
1033  h_ele_dEtaCl_propOut_eg_endcaps = new TH1F("h_ele_dEtaCl_propOut_eg_endcaps",
1034  "ele #eta_{cl} - #eta_{tr}, prop from outermost, ecal driven, endcaps",
1035  nbindetamatch,
1036  detamatchmin,
1037  detamatchmax);
1039  h_ele_dEtaClVsEta_propOut = new TH2F("h_ele_dEtaClVsEta_propOut",
1040  "ele #eta_{cl} - #eta_{tr} vs eta, prop from out",
1041  nbineta2D,
1042  etamin,
1043  etamax,
1045  detamatchmin,
1046  detamatchmax);
1047  h_ele_dEtaClVsPhi_propOut = new TH2F("h_ele_dEtaClVsPhi_propOut",
1048  "ele #eta_{cl} - #eta_{tr} vs phi, prop from out",
1049  nbinphi2D,
1050  phimin,
1051  phimax,
1053  detamatchmin,
1054  detamatchmax);
1055  h_ele_dEtaClVsPt_propOut = new TH2F("h_ele_dEtaScVsPt_propOut",
1056  "ele #eta_{cl} - #eta_{tr} vs pt, prop from out",
1057  nbinpt2D,
1058  0.,
1059  ptmax,
1061  detamatchmin,
1062  detamatchmax);
1063  h_ele_dPhiCl_propOut = new TH1F("h_ele_dPhiCl_propOut",
1064  "ele #phi_{cl} - #phi_{tr}, prop from outermost",
1065  nbindphimatch,
1066  dphimatchmin,
1067  dphimatchmax);
1068  h_ele_dPhiCl_propOut->Sumw2();
1069  h_ele_dPhiCl_propOut_eg = new TH1F("h_ele_dPhiCl_propOut_eg",
1070  "ele #phi_{cl} - #phi_{tr}, prop from outermost, ecal driven",
1071  nbindphimatch,
1072  dphimatchmin,
1073  dphimatchmax);
1074  h_ele_dPhiCl_propOut_eg->Sumw2();
1075  h_ele_dPhiCl_propOut_barrel = new TH1F("h_ele_dPhiCl_propOut_barrel",
1076  "ele #phi_{cl} - #phi_{tr}, prop from outermost, barrel",
1077  nbindphimatch,
1078  dphimatchmin,
1079  dphimatchmax);
1080  h_ele_dPhiCl_propOut_barrel->Sumw2();
1081  h_ele_dPhiCl_propOut_eg_barrel = new TH1F("h_ele_dPhiCl_propOut_eg_barrel",
1082  "ele #phi_{cl} - #phi_{tr}, prop from outermost, ecal driven, barrel",
1083  nbindphimatch,
1084  dphimatchmin,
1085  dphimatchmax);
1087  h_ele_dPhiCl_propOut_endcaps = new TH1F("h_ele_dPhiCl_propOut_endcaps",
1088  "ele #phi_{cl} - #phi_{tr}, prop from outermost, endcaps",
1089  nbindphimatch,
1090  dphimatchmin,
1091  dphimatchmax);
1093  h_ele_dPhiCl_propOut_eg_endcaps = new TH1F("h_ele_dPhiCl_propOut_eg_endcaps",
1094  "ele #phi_{cl} - #phi_{tr}, prop from outermost, ecal driven, endcaps",
1095  nbindphimatch,
1096  dphimatchmin,
1097  dphimatchmax);
1099  h_ele_dPhiClVsEta_propOut = new TH2F("h_ele_dPhiClVsEta_propOut",
1100  "ele #phi_{cl} - #phi_{tr} vs eta, prop from out",
1101  nbineta2D,
1102  etamin,
1103  etamax,
1105  dphimatchmin,
1106  dphimatchmax);
1107  h_ele_dPhiClVsPhi_propOut = new TH2F("h_ele_dPhiClVsPhi_propOut",
1108  "ele #phi_{cl} - #phi_{tr} vs phi, prop from out",
1109  nbinphi2D,
1110  phimin,
1111  phimax,
1113  dphimatchmin,
1114  dphimatchmax);
1115  h_ele_dPhiClVsPt_propOut = new TH2F("h_ele_dPhiSClsPt_propOut",
1116  "ele #phi_{cl} - #phi_{tr} vs pt, prop from out",
1117  nbinpt2D,
1118  0.,
1119  ptmax,
1121  dphimatchmin,
1122  dphimatchmax);
1123  h_ele_dEtaEleCl_propOut = new TH1F("h_ele_dEtaEleCl_propOut",
1124  "ele #eta_{EleCl} - #eta_{tr}, prop from outermost",
1125  nbindetamatch,
1126  detamatchmin,
1127  detamatchmax);
1128  h_ele_dEtaEleCl_propOut->Sumw2();
1129  h_ele_dEtaEleCl_propOut_eg = new TH1F("h_ele_dEtaEleCl_propOut_eg",
1130  "ele #eta_{EleCl} - #eta_{tr}, prop from outermost, ecal driven",
1131  nbindetamatch,
1132  detamatchmin,
1133  detamatchmax);
1134  h_ele_dEtaEleCl_propOut_eg->Sumw2();
1135  h_ele_dEtaEleCl_propOut_barrel = new TH1F("h_ele_dEtaEleCl_propOut_barrel",
1136  "ele #eta_{EleCl} - #eta_{tr}, prop from outermost, barrel",
1137  nbindetamatch,
1138  detamatchmin,
1139  detamatchmax);
1141  h_ele_dEtaEleCl_propOut_eg_barrel = new TH1F("h_ele_dEtaEleCl_propOut_eg_barrel",
1142  "ele #eta_{EleCl} - #eta_{tr}, prop from outermost, ecal driven, barrel",
1143  nbindetamatch,
1144  detamatchmin,
1145  detamatchmax);
1147  h_ele_dEtaEleCl_propOut_endcaps = new TH1F("h_ele_dEtaEleCl_propOut_endcaps",
1148  "ele #eta_{EleCl} - #eta_{tr}, prop from outermost, endcaps",
1149  nbindetamatch,
1150  detamatchmin,
1151  detamatchmax);
1154  new TH1F("h_ele_dEtaEleCl_propOut_eg_endcaps",
1155  "ele #eta_{EleCl} - #eta_{tr}, prop from outermost, ecal driven, endcaps",
1156  nbindetamatch,
1157  detamatchmin,
1158  detamatchmax);
1160  h_ele_dEtaEleClVsEta_propOut = new TH2F("h_ele_dEtaEleClVsEta_propOut",
1161  "ele #eta_{EleCl} - #eta_{tr} vs eta, prop from out",
1162  nbineta2D,
1163  etamin,
1164  etamax,
1166  detamatchmin,
1167  detamatchmax);
1168  h_ele_dEtaEleClVsPhi_propOut = new TH2F("h_ele_dEtaEleClVsPhi_propOut",
1169  "ele #eta_{EleCl} - #eta_{tr} vs phi, prop from out",
1170  nbinphi2D,
1171  phimin,
1172  phimax,
1174  detamatchmin,
1175  detamatchmax);
1176  h_ele_dEtaEleClVsPt_propOut = new TH2F("h_ele_dEtaScVsPt_propOut",
1177  "ele #eta_{EleCl} - #eta_{tr} vs pt, prop from out",
1178  nbinpt2D,
1179  0.,
1180  ptmax,
1182  detamatchmin,
1183  detamatchmax);
1184  h_ele_dPhiEleCl_propOut = new TH1F("h_ele_dPhiEleCl_propOut",
1185  "ele #phi_{EleCl} - #phi_{tr}, prop from outermost",
1186  nbindphimatch,
1187  dphimatchmin,
1188  dphimatchmax);
1189  h_ele_dPhiEleCl_propOut->Sumw2();
1190  h_ele_dPhiEleCl_propOut_eg = new TH1F("h_ele_dPhiEleCl_propOut_eg",
1191  "ele #phi_{EleCl} - #phi_{tr}, prop from outermost, ecal driven",
1192  nbindphimatch,
1193  dphimatchmin,
1194  dphimatchmax);
1195  h_ele_dPhiEleCl_propOut_eg->Sumw2();
1196  h_ele_dPhiEleCl_propOut_barrel = new TH1F("h_ele_dPhiEleCl_propOut_barrel",
1197  "ele #phi_{EleCl} - #phi_{tr}, prop from outermost, barrel",
1198  nbindphimatch,
1199  dphimatchmin,
1200  dphimatchmax);
1202  h_ele_dPhiEleCl_propOut_eg_barrel = new TH1F("h_ele_dPhiEleCl_propOut_eg_barrel",
1203  "ele #phi_{EleCl} - #phi_{tr}, prop from outermost, ecal driven, barrel",
1204  nbindphimatch,
1205  dphimatchmin,
1206  dphimatchmax);
1208  h_ele_dPhiEleCl_propOut_endcaps = new TH1F("h_ele_dPhiEleCl_propOut_endcaps",
1209  "ele #phi_{EleCl} - #phi_{tr}, prop from outermost, endcaps",
1210  nbindphimatch,
1211  dphimatchmin,
1212  dphimatchmax);
1215  new TH1F("h_ele_dPhiEleCl_propOut_eg_endcaps",
1216  "ele #phi_{EleCl} - #phi_{tr}, prop from outermost, ecal driven, endcaps",
1217  nbindphimatch,
1218  dphimatchmin,
1219  dphimatchmax);
1221  h_ele_dPhiEleClVsEta_propOut = new TH2F("h_ele_dPhiEleClVsEta_propOut",
1222  "ele #phi_{EleCl} - #phi_{tr} vs eta, prop from out",
1223  nbineta2D,
1224  etamin,
1225  etamax,
1227  dphimatchmin,
1228  dphimatchmax);
1229  h_ele_dPhiEleClVsPhi_propOut = new TH2F("h_ele_dPhiEleClVsPhi_propOut",
1230  "ele #phi_{EleCl} - #phi_{tr} vs phi, prop from out",
1231  nbinphi2D,
1232  phimin,
1233  phimax,
1235  dphimatchmin,
1236  dphimatchmax);
1237  h_ele_dPhiEleClVsPt_propOut = new TH2F("h_ele_dPhiSEleClsPt_propOut",
1238  "ele #phi_{EleCl} - #phi_{tr} vs pt, prop from out",
1239  nbinpt2D,
1240  0.,
1241  ptmax,
1243  dphimatchmin,
1244  dphimatchmax);
1245 
1246  h_ele_HoE = new TH1F("h_ele_HoE", "ele hadronic energy / em energy", nbinhoe, hoemin, hoemax);
1247  h_ele_HoE->Sumw2();
1248  h_ele_HoE_eg = new TH1F("h_ele_HoE_eg", "ele hadronic energy / em energy, ecal driven", nbinhoe, hoemin, hoemax);
1249  h_ele_HoE_eg->Sumw2();
1250  h_ele_HoE_barrel = new TH1F("h_ele_HoE_barrel", "ele hadronic energy / em energy, barrel", nbinhoe, hoemin, hoemax);
1251  h_ele_HoE_barrel->Sumw2();
1253  new TH1F("h_ele_HoE_eg_barrel", "ele hadronic energy / em energy, ecal driven, barrel", nbinhoe, hoemin, hoemax);
1254  h_ele_HoE_eg_barrel->Sumw2();
1256  new TH1F("h_ele_HoE_endcaps", "ele hadronic energy / em energy, endcaps", nbinhoe, hoemin, hoemax);
1257  h_ele_HoE_endcaps->Sumw2();
1258  h_ele_HoE_eg_endcaps = new TH1F(
1259  "h_ele_HoE_eg_endcaps", "ele hadronic energy / em energy, ecal driven, endcaps", nbinhoe, hoemin, hoemax);
1260  h_ele_HoE_eg_endcaps->Sumw2();
1261  h_ele_HoE_fiducial = new TH1F("h_ele_HoE_fiducial", "ele hadronic energy / em energy", nbinhoe, hoemin, hoemax);
1262  h_ele_HoEVsEta = new TH2F(
1263  "h_ele_HoEVsEta", "ele hadronic energy / em energy vs eta", nbineta, etamin, etamax, nbinhoe, hoemin, hoemax);
1264  h_ele_HoEVsPhi = new TH2F(
1265  "h_ele_HoEVsPhi", "ele hadronic energy / em energy vs phi", nbinphi2D, phimin, phimax, nbinhoe, hoemin, hoemax);
1266  h_ele_HoEVsE =
1267  new TH2F("h_ele_HoEVsE", "ele hadronic energy / em energy vs E", nbinp, 0., 300., nbinhoe, hoemin, hoemax);
1268 
1269  h_ele_seed_dphi2_ = new TH1F("h_ele_seedDphi2", "ele seed dphi 2nd layer", 50, -0.003, +0.003);
1271  new TH2F("h_ele_seedDphi2VsEta", "ele seed dphi 2nd layer vs eta", nbineta2D, etamin, etamax, 50, -0.003, +0.003);
1273  new TH2F("h_ele_seedDphi2VsPt", "ele seed dphi 2nd layer vs pt", nbinpt2D, 0., ptmax, 50, -0.003, +0.003);
1274  h_ele_seed_drz2_ = new TH1F("h_ele_seedDrz2", "ele seed dr/dz 2nd layer", 50, -0.03, +0.03);
1276  new TH2F("h_ele_seedDrz2VsEta", "ele seed dr/dz 2nd layer vs eta", nbineta2D, etamin, etamax, 50, -0.03, +0.03);
1278  new TH2F("h_ele_seedDrz2VsPt", "ele seed dr/dz 2nd layer vs pt", nbinpt2D, 0., ptmax, 50, -0.03, +0.03);
1279  h_ele_seed_subdet2_ = new TH1F("h_ele_seedSubdet2", "ele seed subdet 2nd layer", 10, 0., 10.);
1280 
1281  // classes
1282  h_ele_classes = new TH1F("h_ele_classes", "electron classes", 20, 0.0, 20.);
1283  h_ele_eta = new TH1F("h_ele_eta", "ele electron eta", nbineta / 2, 0.0, etamax);
1284  h_ele_eta_golden = new TH1F("h_ele_eta_golden", "ele electron eta golden", nbineta / 2, 0.0, etamax);
1285  h_ele_eta_bbrem = new TH1F("h_ele_eta_bbrem", "ele electron eta bbrem", nbineta / 2, 0.0, etamax);
1286  h_ele_eta_narrow = new TH1F("h_ele_eta_narrow", "ele electron eta narrow", nbineta / 2, 0.0, etamax);
1287  h_ele_eta_shower = new TH1F("h_ele_eta_show", "el, electron eta showering", nbineta / 2, 0.0, etamax);
1288  h_ele_PinVsPoutGolden_mode = new TH2F(
1289  "h_ele_PinVsPoutGolden_mode", "ele track inner p vs outer p, golden, mode", nbinp2D, 0., pmax, 50, 0., pmax);
1290  h_ele_PinVsPoutShowering_mode = new TH2F("h_ele_PinVsPoutShowering_mode",
1291  "ele track inner p vs outer p vs eta, showering, mode",
1292  nbinp2D,
1293  0.,
1294  pmax,
1295  50,
1296  0.,
1297  pmax);
1298  h_ele_PinVsPoutGolden_mean = new TH2F(
1299  "h_ele_PinVsPoutGolden_mean", "ele track inner p vs outer p, golden, mean", nbinp2D, 0., pmax, 50, 0., pmax);
1300  h_ele_PinVsPoutShowering_mean = new TH2F(
1301  "h_ele_PinVsPoutShowering_mean", "ele track inner p vs outer p, showering, mean", nbinp2D, 0., pmax, 50, 0., pmax);
1302  h_ele_PtinVsPtoutGolden_mode = new TH2F("h_ele_PtinVsPtoutGolden_mode",
1303  "ele track inner pt vs outer pt, golden, mode",
1304  nbinpt2D,
1305  0.,
1306  ptmax,
1307  50,
1308  0.,
1309  ptmax);
1310  h_ele_PtinVsPtoutShowering_mode = new TH2F("h_ele_PtinVsPtoutShowering_mode",
1311  "ele track inner pt vs outer pt, showering, mode",
1312  nbinpt2D,
1313  0.,
1314  ptmax,
1315  50,
1316  0.,
1317  ptmax);
1318  h_ele_PtinVsPtoutGolden_mean = new TH2F("h_ele_PtinVsPtoutGolden_mean",
1319  "ele track inner pt vs outer pt, golden, mean",
1320  nbinpt2D,
1321  0.,
1322  ptmax,
1323  50,
1324  0.,
1325  ptmax);
1326  h_ele_PtinVsPtoutShowering_mean = new TH2F("h_ele_PtinVsPtoutShowering_mean",
1327  "ele track inner pt vs outer pt, showering, mean",
1328  nbinpt2D,
1329  0.,
1330  ptmax,
1331  50,
1332  0.,
1333  ptmax);
1335  "h_scl_EoEmatchingObject golden, barrel", "ele SC energy over matching jet energy, golden, barrel", 100, 0.2, 1.2);
1336  histSclEoEmatchingObjectGolden_endcaps = new TH1F("h_scl_EoEmatchingObject golden, endcaps",
1337  "ele SC energy over matching jet energy, golden, endcaps",
1338  100,
1339  0.2,
1340  1.2);
1341  histSclEoEmatchingObjectShowering_barrel = new TH1F("h_scl_EoEmatchingObject showering, barrel",
1342  "ele SC energy over matching jet energy, showering, barrel",
1343  100,
1344  0.2,
1345  1.2);
1346  histSclEoEmatchingObjectShowering_endcaps = new TH1F("h_scl_EoEmatchingObject showering, endcaps",
1347  "ele SC energy over matching jet energy, showering, endcaps",
1348  100,
1349  0.2,
1350  1.2);
1351 
1352  // isolation
1353  h_ele_tkSumPt_dr03 = new TH1F("h_ele_tkSumPt_dr03", "tk isolation sum, dR=0.3", 100, 0.0, 20.);
1354  h_ele_ecalRecHitSumEt_dr03 = new TH1F("h_ele_ecalRecHitSumEt_dr03", "ecal isolation sum, dR=0.3", 100, 0.0, 20.);
1356  new TH1F("h_ele_hcalDepth1TowerSumEt_dr03", "hcal depth1 isolation sum, dR=0.3", 100, 0.0, 20.);
1358  new TH1F("h_ele_hcalDepth2TowerSumEt_dr03", "hcal depth2 isolation sum, dR=0.3", 100, 0.0, 20.);
1359  h_ele_tkSumPt_dr04 = new TH1F("h_ele_tkSumPt_dr04", "hcal isolation sum", 100, 0.0, 20.);
1360  h_ele_ecalRecHitSumEt_dr04 = new TH1F("h_ele_ecalRecHitSumEt_dr04", "ecal isolation sum, dR=0.4", 100, 0.0, 20.);
1362  new TH1F("h_ele_hcalDepth1TowerSumEt_dr04", "hcal depth1 isolation sum, dR=0.4", 100, 0.0, 20.);
1364  new TH1F("h_ele_hcalDepth2TowerSumEt_dr04", "hcal depth2 isolation sum, dR=0.4", 100, 0.0, 20.);
1365 
1366  // fbrem
1367  h_ele_fbrem = new TH1F("h_ele_fbrem", "ele brem fraction, mode", 100, 0., 1.);
1369  new TProfile("h_ele_fbremvsEtamode", "mean ele brem fraction vs eta, mode", nbineta2D, etamin, etamax, 0., 1.);
1371  new TProfile("h_ele_fbremvsEtamean", "mean ele brem fraction vs eta, mean", nbineta2D, etamin, etamax, 0., 1.);
1372 
1373  // e/g et pflow electrons
1374  h_ele_mva = new TH1F("h_ele_mva", "ele mva", 100, -1., 1.);
1375  h_ele_provenance = new TH1F("h_ele_provenance", "ele provenance", 5, -2., 3.);
1376 
1377  // histos titles
1378  h_matchingObjectNum->GetXaxis()->SetTitle("N_{GenJet}");
1379  h_matchingObjectNum->GetYaxis()->SetTitle("Events");
1380  h_matchingObjectEta->GetXaxis()->SetTitle("#eta_{GenJet}");
1381  h_matchingObjectEta->GetYaxis()->SetTitle("Events");
1382  h_matchingObjectP->GetXaxis()->SetTitle("E_{GenJet} (GeV)");
1383  h_matchingObjectP->GetYaxis()->SetTitle("Events");
1384  h_ele_foundHits->GetXaxis()->SetTitle("N_{hits}");
1385  h_ele_foundHits->GetYaxis()->SetTitle("Events");
1386  h_ele_ambiguousTracks->GetXaxis()->SetTitle("N_{ambiguous tracks}");
1387  h_ele_ambiguousTracks->GetYaxis()->SetTitle("Events");
1388  h_ele_lostHits->GetXaxis()->SetTitle("N_{lost hits}");
1389  h_ele_lostHits->GetYaxis()->SetTitle("Events");
1390  h_ele_chi2->GetXaxis()->SetTitle("#Chi^{2}");
1391  h_ele_chi2->GetYaxis()->SetTitle("Events");
1392  h_ele_charge->GetXaxis()->SetTitle("charge");
1393  h_ele_charge->GetYaxis()->SetTitle("Events");
1394  h_ele_vertexP->GetXaxis()->SetTitle("p_{vertex} (GeV/c)");
1395  h_ele_vertexP->GetYaxis()->SetTitle("Events");
1396  h_ele_vertexPt->GetXaxis()->SetTitle("p_{T vertex} (GeV/c)");
1397  h_ele_vertexPt->GetYaxis()->SetTitle("Events");
1398  h_ele_vertexEta->GetXaxis()->SetTitle("#eta");
1399  h_ele_vertexEta->GetYaxis()->SetTitle("Events");
1400  h_ele_vertexPhi->GetXaxis()->SetTitle("#phi (rad)");
1401  h_ele_vertexPhi->GetYaxis()->SetTitle("Events");
1402  h_ele_PoPmatchingObject->GetXaxis()->SetTitle("P/P_{gen jet}");
1403  h_ele_PoPmatchingObject->GetYaxis()->SetTitle("Events");
1404  h_ele_PoPmatchingObject_barrel->GetXaxis()->SetTitle("P/P_{gen jet}");
1405  h_ele_PoPmatchingObject_barrel->GetYaxis()->SetTitle("Events");
1406  h_ele_PoPmatchingObject_endcaps->GetXaxis()->SetTitle("P/P_{gen jet}");
1407  h_ele_PoPmatchingObject_endcaps->GetYaxis()->SetTitle("Events");
1408  histSclSigIEtaIEta_->GetXaxis()->SetTitle("#sigma_{i#eta i#eta}");
1409  histSclSigIEtaIEta_->GetYaxis()->SetTitle("Events");
1410  histSclSigIEtaIEta_barrel_->GetXaxis()->SetTitle("#sigma_{i#eta i#eta}");
1411  histSclSigIEtaIEta_barrel_->GetYaxis()->SetTitle("Events");
1412  histSclSigIEtaIEta_endcaps_->GetXaxis()->SetTitle("#sigma_{i#eta i#eta}");
1413  histSclSigIEtaIEta_endcaps_->GetYaxis()->SetTitle("Events");
1414  histSclE1x5_->GetXaxis()->SetTitle("E1x5 (GeV)");
1415  histSclE1x5_->GetYaxis()->SetTitle("Events");
1416  histSclE1x5_barrel_->GetXaxis()->SetTitle("E1x5 (GeV)");
1417  histSclE1x5_barrel_->GetYaxis()->SetTitle("Events");
1418  histSclE1x5_endcaps_->GetXaxis()->SetTitle("E1x5 (GeV)");
1419  histSclE1x5_endcaps_->GetYaxis()->SetTitle("Events");
1420  histSclE2x5max_->GetXaxis()->SetTitle("E2x5 (GeV)");
1421  histSclE2x5max_->GetYaxis()->SetTitle("Events");
1422  histSclE2x5max_barrel_->GetXaxis()->SetTitle("E2x5 (GeV)");
1423  histSclE2x5max_barrel_->GetYaxis()->SetTitle("Events");
1424  histSclE2x5max_endcaps_->GetXaxis()->SetTitle("E2x5 (GeV)");
1425  histSclE2x5max_endcaps_->GetYaxis()->SetTitle("Events");
1426  histSclE5x5_->GetXaxis()->SetTitle("E5x5 (GeV)");
1427  histSclE5x5_->GetYaxis()->SetTitle("Events");
1428  histSclE5x5_barrel_->GetXaxis()->SetTitle("E5x5 (GeV)");
1429  histSclE5x5_barrel_->GetYaxis()->SetTitle("Events");
1430  histSclE5x5_endcaps_->GetXaxis()->SetTitle("E5x5 (GeV)");
1431  histSclE5x5_endcaps_->GetYaxis()->SetTitle("Events");
1432  h_ele_EtaMnEtamatchingObject->GetXaxis()->SetTitle("#eta_{rec} - #eta_{jet}");
1433  h_ele_EtaMnEtamatchingObject->GetYaxis()->SetTitle("Events");
1434  h_ele_PhiMnPhimatchingObject->GetXaxis()->SetTitle("#phi_{rec} - #phi_{jet} (rad)");
1435  h_ele_PhiMnPhimatchingObject->GetYaxis()->SetTitle("Events");
1436  h_ele_PinMnPout->GetXaxis()->SetTitle("P_{vertex} - P_{out} (GeV/c)");
1437  h_ele_PinMnPout->GetYaxis()->SetTitle("Events");
1438  h_ele_PinMnPout_mode->GetXaxis()->SetTitle("P_{vertex} - P_{out}, mode (GeV/c)");
1439  h_ele_PinMnPout_mode->GetYaxis()->SetTitle("Events");
1440  h_ele_outerP->GetXaxis()->SetTitle("P_{out} (GeV/c)");
1441  h_ele_outerP->GetYaxis()->SetTitle("Events");
1442  h_ele_outerP_mode->GetXaxis()->SetTitle("P_{out} (GeV/c)");
1443  h_ele_outerP_mode->GetYaxis()->SetTitle("Events");
1444  h_ele_outerPt->GetXaxis()->SetTitle("P_{T out} (GeV/c)");
1445  h_ele_outerPt->GetYaxis()->SetTitle("Events");
1446  h_ele_outerPt_mode->GetXaxis()->SetTitle("P_{T out} (GeV/c)");
1447  h_ele_outerPt_mode->GetYaxis()->SetTitle("Events");
1448  h_ele_EoP->GetXaxis()->SetTitle("E/P_{vertex}");
1449  h_ele_EoP->GetYaxis()->SetTitle("Events");
1450  h_ele_EseedOP->GetXaxis()->SetTitle("E_{seed}/P_{vertex}");
1451  h_ele_EseedOP->GetYaxis()->SetTitle("Events");
1452  h_ele_EoPout->GetXaxis()->SetTitle("E_{seed}/P_{out}");
1453  h_ele_EoPout->GetYaxis()->SetTitle("Events");
1454  h_ele_EeleOPout->GetXaxis()->SetTitle("E_{ele}/P_{out}");
1455  h_ele_EeleOPout->GetYaxis()->SetTitle("Events");
1456  h_ele_EoP_barrel->GetXaxis()->SetTitle("E/P_{vertex}");
1457  h_ele_EoP_barrel->GetYaxis()->SetTitle("Events");
1458  h_ele_EseedOP_barrel->GetXaxis()->SetTitle("E_{seed}/P_{vertex}");
1459  h_ele_EseedOP_barrel->GetYaxis()->SetTitle("Events");
1460  h_ele_EoPout_barrel->GetXaxis()->SetTitle("E_{seed}/P_{out}");
1461  h_ele_EoPout_barrel->GetYaxis()->SetTitle("Events");
1462  h_ele_EeleOPout_barrel->GetXaxis()->SetTitle("E_{ele}/P_{out}");
1463  h_ele_EeleOPout_barrel->GetYaxis()->SetTitle("Events");
1464  h_ele_EoP_endcaps->GetXaxis()->SetTitle("E/P_{vertex}");
1465  h_ele_EoP_endcaps->GetYaxis()->SetTitle("Events");
1466  h_ele_EseedOP_endcaps->GetXaxis()->SetTitle("E_{seed}/P_{vertex}");
1467  h_ele_EseedOP_endcaps->GetYaxis()->SetTitle("Events");
1468  h_ele_EoPout_endcaps->GetXaxis()->SetTitle("E_{seed}/P_{out}");
1469  h_ele_EoPout_endcaps->GetYaxis()->SetTitle("Events");
1470  h_ele_EeleOPout_endcaps->GetXaxis()->SetTitle("E_{ele}/P_{out}");
1471  h_ele_EeleOPout_endcaps->GetYaxis()->SetTitle("Events");
1472  h_ele_vertexX->GetXaxis()->SetTitle("x (cm)");
1473  h_ele_vertexX->GetYaxis()->SetTitle("Events");
1474  h_ele_vertexY->GetXaxis()->SetTitle("y (cm)");
1475  h_ele_vertexY->GetYaxis()->SetTitle("Events");
1476  h_ele_vertexZ->GetXaxis()->SetTitle("z (cm)");
1477  h_ele_vertexZ->GetYaxis()->SetTitle("Events");
1478  h_ele_vertexTIP->GetXaxis()->SetTitle("TIP (cm)");
1479  h_ele_vertexTIP->GetYaxis()->SetTitle("Events");
1480  h_ele_TIP_all->GetXaxis()->SetTitle("r_{T} (cm)");
1481  h_ele_TIP_all->GetYaxis()->SetTitle("Events");
1482  h_ele_vertexTIPVsEta->GetYaxis()->SetTitle("TIP (cm)");
1483  h_ele_vertexTIPVsEta->GetXaxis()->SetTitle("#eta");
1484  h_ele_vertexTIPVsPhi->GetYaxis()->SetTitle("TIP (cm)");
1485  h_ele_vertexTIPVsPhi->GetXaxis()->SetTitle("#phi (rad)");
1486  h_ele_vertexTIPVsPt->GetYaxis()->SetTitle("TIP (cm)");
1487  h_ele_vertexTIPVsPt->GetXaxis()->SetTitle("p_{T} (GeV/c)");
1488  h_ele_dEtaSc_propVtx->GetXaxis()->SetTitle("#eta_{sc} - #eta_{tr}");
1489  h_ele_dEtaSc_propVtx->GetXaxis()->SetTitle("#eta_{sc} - #eta_{tr}");
1490  h_ele_dEtaSc_propVtx->GetYaxis()->SetTitle("Events");
1491  h_ele_dEtaCl_propOut->GetXaxis()->SetTitle("#eta_{seedcl} - #eta_{tr}");
1492  h_ele_dEtaCl_propOut->GetYaxis()->SetTitle("Events");
1493  h_ele_dEtaEleCl_propOut->GetXaxis()->SetTitle("#eta_{elecl} - #eta_{tr}");
1494  h_ele_dEtaEleCl_propOut->GetYaxis()->SetTitle("Events");
1495  h_ele_dPhiSc_propVtx->GetXaxis()->SetTitle("#phi_{sc} - #phi_{tr} (rad)");
1496  h_ele_dPhiSc_propVtx->GetYaxis()->SetTitle("Events");
1497  h_ele_dPhiCl_propOut->GetXaxis()->SetTitle("#phi_{seedcl} - #phi_{tr} (rad)");
1498  h_ele_dPhiCl_propOut->GetYaxis()->SetTitle("Events");
1499  h_ele_dPhiEleCl_propOut->GetXaxis()->SetTitle("#phi_{elecl} - #phi_{tr} (rad)");
1500  h_ele_dPhiEleCl_propOut->GetYaxis()->SetTitle("Events");
1501  h_ele_dEtaSc_propVtx_barrel->GetXaxis()->SetTitle("#eta_{sc} - #eta_{tr}");
1502  h_ele_dEtaSc_propVtx_barrel->GetYaxis()->SetTitle("Events");
1503  h_ele_dEtaCl_propOut_barrel->GetXaxis()->SetTitle("#eta_{seedcl} - #eta_{tr}");
1504  h_ele_dEtaCl_propOut_barrel->GetYaxis()->SetTitle("Events");
1505  h_ele_dEtaEleCl_propOut_barrel->GetXaxis()->SetTitle("#eta_{elecl} - #eta_{tr}");
1506  h_ele_dEtaEleCl_propOut_barrel->GetYaxis()->SetTitle("Events");
1507  h_ele_dPhiSc_propVtx_barrel->GetXaxis()->SetTitle("#phi_{sc} - #phi_{tr} (rad)");
1508  h_ele_dPhiSc_propVtx_barrel->GetYaxis()->SetTitle("Events");
1509  h_ele_dPhiCl_propOut_barrel->GetXaxis()->SetTitle("#phi_{seedcl} - #phi_{tr} (rad)");
1510  h_ele_dPhiCl_propOut_barrel->GetYaxis()->SetTitle("Events");
1511  h_ele_dPhiEleCl_propOut_barrel->GetXaxis()->SetTitle("#phi_{elecl} - #phi_{tr} (rad)");
1512  h_ele_dPhiEleCl_propOut_barrel->GetYaxis()->SetTitle("Events");
1513  h_ele_dEtaSc_propVtx_endcaps->GetXaxis()->SetTitle("#eta_{sc} - #eta_{tr}");
1514  h_ele_dEtaSc_propVtx_endcaps->GetYaxis()->SetTitle("Events");
1515  h_ele_dEtaCl_propOut_endcaps->GetXaxis()->SetTitle("#eta_{seedcl} - #eta_{tr}");
1516  h_ele_dEtaCl_propOut_endcaps->GetYaxis()->SetTitle("Events");
1517  h_ele_dEtaEleCl_propOut_endcaps->GetXaxis()->SetTitle("#eta_{elecl} - #eta_{tr}");
1518  h_ele_dEtaEleCl_propOut_endcaps->GetYaxis()->SetTitle("Events");
1519  h_ele_dPhiSc_propVtx_endcaps->GetXaxis()->SetTitle("#phi_{sc} - #phi_{tr} (rad)");
1520  h_ele_dPhiSc_propVtx_endcaps->GetYaxis()->SetTitle("Events");
1521  h_ele_dPhiCl_propOut_endcaps->GetXaxis()->SetTitle("#phi_{seedcl} - #phi_{tr} (rad)");
1522  h_ele_dPhiCl_propOut_endcaps->GetYaxis()->SetTitle("Events");
1523  h_ele_dPhiEleCl_propOut_endcaps->GetXaxis()->SetTitle("#phi_{elecl} - #phi_{tr} (rad)");
1524  h_ele_dPhiEleCl_propOut_endcaps->GetYaxis()->SetTitle("Events");
1525  h_ele_HoE->GetXaxis()->SetTitle("H/E");
1526  h_ele_HoE->GetYaxis()->SetTitle("Events");
1527  h_ele_HoE_barrel->GetXaxis()->SetTitle("H/E");
1528  h_ele_HoE_barrel->GetYaxis()->SetTitle("Events");
1529  h_ele_HoE_endcaps->GetXaxis()->SetTitle("H/E");
1530  h_ele_HoE_endcaps->GetYaxis()->SetTitle("Events");
1531  h_ele_HoE_fiducial->GetXaxis()->SetTitle("H/E");
1532  h_ele_HoE_fiducial->GetYaxis()->SetTitle("Events");
1533  h_ele_fbrem->GetXaxis()->SetTitle("P_{in} - P_{out} / P_{in}");
1534  h_ele_fbrem->GetYaxis()->SetTitle("Events");
1535  h_ele_seed_dphi2_->GetXaxis()->SetTitle("#phi_{hit}-#phi_{pred} (rad)");
1536  h_ele_seed_dphi2_->GetYaxis()->SetTitle("Events");
1537  h_ele_seed_drz2_->GetXaxis()->SetTitle("r(z)_{hit}-r(z)_{pred} (cm)");
1538  h_ele_seed_drz2_->GetYaxis()->SetTitle("Events");
1539  h_ele_seed_subdet2_->GetXaxis()->SetTitle("2nd hit subdet Id");
1540  h_ele_seed_subdet2_->GetYaxis()->SetTitle("Events");
1541  h_ele_classes->GetXaxis()->SetTitle("class Id");
1542  h_ele_classes->GetYaxis()->SetTitle("Events");
1543  h_ele_EoverP_all->GetXaxis()->SetTitle("E/P_{vertex}");
1544  h_ele_EoverP_all->GetYaxis()->SetTitle("Events");
1545  h_ele_EseedOP_all->GetXaxis()->SetTitle("E_{seed}/P_{vertex}");
1546  h_ele_EseedOP_all->GetYaxis()->SetTitle("Events");
1547  h_ele_EoPout_all->GetXaxis()->SetTitle("E_{seed}/P_{out}");
1548  h_ele_EoPout_all->GetYaxis()->SetTitle("Events");
1549  h_ele_EeleOPout_all->GetXaxis()->SetTitle("E_{ele}/P_{out}");
1550  h_ele_EeleOPout_all->GetYaxis()->SetTitle("Events");
1551  h_ele_dEtaSc_propVtx_all->GetXaxis()->SetTitle("#eta_{sc} - #eta_{tr}");
1552  h_ele_dEtaSc_propVtx_all->GetYaxis()->SetTitle("Events");
1553  h_ele_dPhiSc_propVtx_all->GetXaxis()->SetTitle("#phi_{sc} - #phi_{tr} (rad)");
1554  h_ele_dPhiSc_propVtx_all->GetYaxis()->SetTitle("Events");
1555  h_ele_dEtaCl_propOut_all->GetXaxis()->SetTitle("#eta_{sc} - #eta_{tr}");
1556  h_ele_dEtaCl_propOut_all->GetYaxis()->SetTitle("Events");
1557  h_ele_dPhiCl_propOut_all->GetXaxis()->SetTitle("#phi_{sc} - #phi_{tr} (rad)");
1558  h_ele_dPhiCl_propOut_all->GetYaxis()->SetTitle("Events");
1559  h_ele_HoE_all->GetXaxis()->SetTitle("H/E");
1560  h_ele_HoE_all->GetYaxis()->SetTitle("Events");
1561  h_ele_mee_all->GetXaxis()->SetTitle("m_{ee} (GeV/c^{2})");
1562  h_ele_mee_all->GetYaxis()->SetTitle("Events");
1563  h_ele_mee_os->GetXaxis()->SetTitle("m_{e^{+}e^{-}} (GeV/c^{2})");
1564  h_ele_mee_os->GetYaxis()->SetTitle("Events");
1565  h_ele_E2mnE1vsMee_all->GetXaxis()->SetTitle("m_{e^{+}e^{-}} (GeV/c^{2})");
1566  h_ele_E2mnE1vsMee_all->GetYaxis()->SetTitle("E2 - E1 (GeV)");
1567  h_ele_E2mnE1vsMee_egeg_all->GetXaxis()->SetTitle("m_{e^{+}e^{-}} (GeV/c^{2})");
1568  h_ele_E2mnE1vsMee_egeg_all->GetYaxis()->SetTitle("E2 - E1 (GeV)");
1569  histNum_->GetXaxis()->SetTitle("N_{ele}");
1570  histNum_->GetYaxis()->SetTitle("Events");
1571  h_ele_fbremVsEta_mode->GetXaxis()->SetTitle("#eta");
1572  h_ele_fbremVsEta_mean->GetXaxis()->SetTitle("#eta");
1573 }
1574 
1576  histfile_->cd();
1577  std::cout << "efficiency calculation " << std::endl;
1578  // efficiency vs eta
1579  TH1F *h_ele_etaEff = (TH1F *)h_ele_matchingObjectEta_matched->Clone("h_ele_etaEff");
1580  h_ele_etaEff->Reset();
1581  h_ele_etaEff->Divide(h_ele_matchingObjectEta_matched, h_matchingObjectEta, 1, 1, "b");
1582  h_ele_etaEff->Print();
1583  h_ele_etaEff->GetXaxis()->SetTitle("#eta");
1584  h_ele_etaEff->GetYaxis()->SetTitle("Efficiency");
1585 
1586  // efficiency vs z
1587  TH1F *h_ele_zEff = (TH1F *)h_ele_matchingObjectZ_matched->Clone("h_ele_zEff");
1588  h_ele_zEff->Reset();
1589  h_ele_zEff->Divide(h_ele_matchingObjectZ_matched, h_matchingObjectZ, 1, 1, "b");
1590  h_ele_zEff->Print();
1591  h_ele_zEff->GetXaxis()->SetTitle("z (cm)");
1592  h_ele_zEff->GetYaxis()->SetTitle("Efficiency");
1593 
1594  // efficiency vs |eta|
1595  TH1F *h_ele_absetaEff = (TH1F *)h_ele_matchingObjectAbsEta_matched->Clone("h_ele_absetaEff");
1596  h_ele_absetaEff->Reset();
1597  h_ele_absetaEff->Divide(h_ele_matchingObjectAbsEta_matched, h_matchingObjectAbsEta, 1, 1, "b");
1598  h_ele_absetaEff->GetXaxis()->SetTitle("|#eta|");
1599  h_ele_absetaEff->GetYaxis()->SetTitle("Efficiency");
1600 
1601  // efficiency vs pt
1602  TH1F *h_ele_ptEff = (TH1F *)h_ele_matchingObjectPt_matched->Clone("h_ele_ptEff");
1603  h_ele_ptEff->Reset();
1604  h_ele_ptEff->Divide(h_ele_matchingObjectPt_matched, h_matchingObjectPt, 1, 1, "b");
1605  h_ele_ptEff->GetXaxis()->SetTitle("p_{T} (GeV/c)");
1606  h_ele_ptEff->GetYaxis()->SetTitle("Efficiency");
1607 
1608  // efficiency vs phi
1609  TH1F *h_ele_phiEff = (TH1F *)h_ele_matchingObjectPhi_matched->Clone("h_ele_phiEff");
1610  h_ele_phiEff->Reset();
1611  h_ele_phiEff->Divide(h_ele_matchingObjectPhi_matched, h_matchingObjectPhi, 1, 1, "b");
1612  h_ele_phiEff->GetXaxis()->SetTitle("#phi (rad)");
1613  h_ele_phiEff->GetYaxis()->SetTitle("Efficiency");
1614 
1615  // rec/matching objects all electrons
1616  TH1F *h_ele_etaEff_all = (TH1F *)h_ele_vertexEta_all->Clone("h_ele_etaEff_all");
1617  h_ele_etaEff_all->Reset();
1618  h_ele_etaEff_all->Divide(h_ele_vertexEta_all, h_matchingObjectEta, 1, 1, "b");
1619  h_ele_etaEff_all->Print();
1620  h_ele_etaEff_all->GetXaxis()->SetTitle("#eta");
1621  h_ele_etaEff_all->GetYaxis()->SetTitle("N_{rec}/N_{matching jet}");
1622 
1623  TH1F *h_ele_ptEff_all = (TH1F *)h_ele_vertexPt_all->Clone("h_ele_ptEff_all");
1624  h_ele_ptEff_all->Reset();
1625  h_ele_ptEff_all->Divide(h_ele_vertexPt_all, h_matchingObjectPt, 1, 1, "b");
1626  h_ele_ptEff_all->Print();
1627  h_ele_ptEff_all->GetXaxis()->SetTitle("p_{T} (GeV/c)");
1628  h_ele_ptEff_all->GetYaxis()->SetTitle("N_{rec}/N_{matching gen jet}");
1629 
1630  // classes
1631  TH1F *h_ele_eta_goldenFrac = (TH1F *)h_ele_eta_golden->Clone("h_ele_eta_goldenFrac");
1632  h_ele_eta_goldenFrac->Reset();
1633  h_ele_eta_goldenFrac->GetXaxis()->SetTitle("|#eta|");
1634  h_ele_eta_goldenFrac->GetYaxis()->SetTitle("Fraction of electrons");
1635  h_ele_eta_goldenFrac->Divide(h_ele_eta_golden, h_ele_eta, 1, 1);
1636  h_ele_eta_goldenFrac->SetTitle("fraction of golden electrons vs eta");
1637  TH1F *h_ele_eta_bbremFrac = (TH1F *)h_ele_eta_bbrem->Clone("h_ele_eta_bbremFrac");
1638  h_ele_eta_bbremFrac->Reset();
1639  h_ele_eta_bbremFrac->Divide(h_ele_eta_bbrem, h_ele_eta, 1, 1);
1640  h_ele_eta_bbremFrac->GetXaxis()->SetTitle("|#eta|");
1641  h_ele_eta_bbremFrac->GetYaxis()->SetTitle("Fraction of electrons");
1642  h_ele_eta_bbremFrac->SetTitle("fraction of big brem electrons vs eta");
1643  TH1F *h_ele_eta_narrowFrac = (TH1F *)h_ele_eta_narrow->Clone("h_ele_eta_narrowFrac");
1644  h_ele_eta_narrowFrac->Reset();
1645  h_ele_eta_narrowFrac->Divide(h_ele_eta_narrow, h_ele_eta, 1, 1);
1646  h_ele_eta_narrowFrac->GetXaxis()->SetTitle("|#eta|");
1647  h_ele_eta_narrowFrac->GetYaxis()->SetTitle("Fraction of electrons");
1648  h_ele_eta_narrowFrac->SetTitle("fraction of narrow electrons vs eta");
1649  TH1F *h_ele_eta_showerFrac = (TH1F *)h_ele_eta_shower->Clone("h_ele_eta_showerFrac");
1650  h_ele_eta_showerFrac->Reset();
1651  h_ele_eta_showerFrac->Divide(h_ele_eta_shower, h_ele_eta, 1, 1);
1652  h_ele_eta_showerFrac->GetXaxis()->SetTitle("|#eta|");
1653  h_ele_eta_showerFrac->GetYaxis()->SetTitle("Fraction of electrons");
1654  h_ele_eta_showerFrac->SetTitle("fraction of showering electrons vs eta");
1655 
1656  // fbrem
1657  TH1F *h_ele_xOverX0VsEta = new TH1F("h_ele_xOverx0VsEta", "mean X/X_0 vs eta", nbineta / 2, 0.0, 2.5);
1658  for (int ibin = 1; ibin < h_ele_fbremVsEta_mean->GetNbinsX() + 1; ibin++) {
1659  double xOverX0 = 0.;
1660  if (h_ele_fbremVsEta_mean->GetBinContent(ibin) > 0.)
1661  xOverX0 = -log(h_ele_fbremVsEta_mean->GetBinContent(ibin));
1662  h_ele_xOverX0VsEta->SetBinContent(ibin, xOverX0);
1663  }
1664 
1665  //profiles from 2D histos
1666  TProfile *p_ele_PoPmatchingObjectVsEta = h_ele_PoPmatchingObjectVsEta->ProfileX();
1667  p_ele_PoPmatchingObjectVsEta->SetTitle("mean ele momentum / matching SC energy vs eta");
1668  p_ele_PoPmatchingObjectVsEta->GetXaxis()->SetTitle("#eta");
1669  p_ele_PoPmatchingObjectVsEta->GetYaxis()->SetTitle("<P/E_{matching gen jet}>");
1670  p_ele_PoPmatchingObjectVsEta->Write();
1671  TProfile *p_ele_PoPmatchingObjectVsPhi = h_ele_PoPmatchingObjectVsPhi->ProfileX();
1672  p_ele_PoPmatchingObjectVsPhi->SetTitle("mean ele momentum / gen momentum vs phi");
1673  p_ele_PoPmatchingObjectVsPhi->GetXaxis()->SetTitle("#phi (rad)");
1674  p_ele_PoPmatchingObjectVsPhi->GetYaxis()->SetTitle("<P/E_{matching gen jet}>");
1675  p_ele_PoPmatchingObjectVsPhi->Write();
1676  TProfile *p_ele_EtaMnEtamatchingObjectVsEta = h_ele_EtaMnEtamatchingObjectVsEta->ProfileX();
1677  p_ele_EtaMnEtamatchingObjectVsEta->GetXaxis()->SetTitle("#eta");
1678  p_ele_EtaMnEtamatchingObjectVsEta->GetYaxis()->SetTitle("<#eta_{rec} - #eta_{matching gen jet}>");
1679  p_ele_EtaMnEtamatchingObjectVsEta->Write();
1680  TProfile *p_ele_EtaMnEtamatchingObjectVsPhi = h_ele_EtaMnEtamatchingObjectVsPhi->ProfileX();
1681  p_ele_EtaMnEtamatchingObjectVsPhi->GetXaxis()->SetTitle("#phi");
1682  p_ele_EtaMnEtamatchingObjectVsPhi->GetYaxis()->SetTitle("<#eta_{rec} - #eta_{matching gen jet}>");
1683  p_ele_EtaMnEtamatchingObjectVsPhi->Write();
1684  TProfile *p_ele_PhiMnPhimatchingObjectVsEta = h_ele_PhiMnPhimatchingObjectVsEta->ProfileX();
1685  p_ele_PhiMnPhimatchingObjectVsEta->GetXaxis()->SetTitle("#eta");
1686  p_ele_PhiMnPhimatchingObjectVsEta->GetYaxis()->SetTitle("<#phi_{rec} - #phi_{matching gen jet}> (rad)");
1687  p_ele_PhiMnPhimatchingObjectVsEta->Write();
1688  TProfile *p_ele_PhiMnPhimatchingObjectVsPhi = h_ele_PhiMnPhimatchingObjectVsPhi->ProfileX();
1689  p_ele_PhiMnPhimatchingObjectVsPhi->GetXaxis()->SetTitle("#phi");
1690  p_ele_PhiMnPhimatchingObjectVsPhi->GetYaxis()->SetTitle("<#phi_{rec} - #phi_{matching gen jet}> (rad)");
1691  p_ele_PhiMnPhimatchingObjectVsPhi->Write();
1692  TProfile *p_ele_vertexPtVsEta = h_ele_vertexPtVsEta->ProfileX();
1693  p_ele_vertexPtVsEta->GetXaxis()->SetTitle("#eta");
1694  p_ele_vertexPtVsEta->GetYaxis()->SetTitle("<p_{T}> (GeV/c)");
1695  p_ele_vertexPtVsEta->Write();
1696  TProfile *p_ele_vertexPtVsPhi = h_ele_vertexPtVsPhi->ProfileX();
1697  p_ele_vertexPtVsPhi->GetXaxis()->SetTitle("#phi (rad)");
1698  p_ele_vertexPtVsPhi->GetYaxis()->SetTitle("<p_{T}> (GeV/c)");
1699  p_ele_vertexPtVsPhi->Write();
1700  TProfile *p_ele_EoPVsEta = h_ele_EoPVsEta->ProfileX();
1701  p_ele_EoPVsEta->GetXaxis()->SetTitle("#eta");
1702  p_ele_EoPVsEta->GetYaxis()->SetTitle("<E/P_{vertex}>");
1703  p_ele_EoPVsEta->Write();
1704  TProfile *p_ele_EoPVsPhi = h_ele_EoPVsPhi->ProfileX();
1705  p_ele_EoPVsPhi->GetXaxis()->SetTitle("#phi (rad)");
1706  p_ele_EoPVsPhi->GetYaxis()->SetTitle("<E/P_{vertex}>");
1707  p_ele_EoPVsPhi->Write();
1708  TProfile *p_ele_EoPoutVsEta = h_ele_EoPoutVsEta->ProfileX();
1709  p_ele_EoPoutVsEta->GetXaxis()->SetTitle("#eta");
1710  p_ele_EoPoutVsEta->GetYaxis()->SetTitle("<E_{seed}/P_{out}>");
1711  p_ele_EoPoutVsEta->Write();
1712  TProfile *p_ele_EoPoutVsPhi = h_ele_EoPoutVsPhi->ProfileX();
1713  p_ele_EoPoutVsPhi->GetXaxis()->SetTitle("#phi (rad)");
1714  p_ele_EoPoutVsPhi->GetYaxis()->SetTitle("<E_{seed}/P_{out}>");
1715  p_ele_EoPoutVsPhi->Write();
1716  TProfile *p_ele_EeleOPoutVsEta = h_ele_EeleOPoutVsEta->ProfileX();
1717  p_ele_EeleOPoutVsEta->SetTitle("mean ele Eele/pout vs eta");
1718  p_ele_EeleOPoutVsEta->GetXaxis()->SetTitle("#eta");
1719  p_ele_EeleOPoutVsEta->GetYaxis()->SetTitle("<E_{ele}/P_{out}>");
1720  p_ele_EeleOPoutVsEta->Write();
1721  TProfile *p_ele_EeleOPoutVsPhi = h_ele_EeleOPoutVsPhi->ProfileX();
1722  p_ele_EeleOPoutVsPhi->SetTitle("mean ele Eele/pout vs phi");
1723  p_ele_EeleOPoutVsPhi->GetXaxis()->SetTitle("#phi (rad)");
1724  p_ele_EeleOPoutVsPhi->GetYaxis()->SetTitle("<E_{ele}/P_{out}>");
1725  p_ele_EeleOPoutVsPhi->Write();
1726  TProfile *p_ele_HoEVsEta = h_ele_HoEVsEta->ProfileX();
1727  p_ele_HoEVsEta->GetXaxis()->SetTitle("#eta");
1728  p_ele_HoEVsEta->GetYaxis()->SetTitle("<H/E>");
1729  p_ele_HoEVsEta->Write();
1730  TProfile *p_ele_HoEVsPhi = h_ele_HoEVsPhi->ProfileX();
1731  p_ele_HoEVsPhi->GetXaxis()->SetTitle("#phi (rad)");
1732  p_ele_HoEVsPhi->GetYaxis()->SetTitle("<H/E>");
1733  p_ele_HoEVsPhi->Write();
1734  TProfile *p_ele_chi2VsEta = h_ele_chi2VsEta->ProfileX();
1735  p_ele_chi2VsEta->GetXaxis()->SetTitle("#eta");
1736  p_ele_chi2VsEta->GetYaxis()->SetTitle("<#Chi^{2}>");
1737  p_ele_chi2VsEta->Write();
1738  TProfile *p_ele_chi2VsPhi = h_ele_chi2VsPhi->ProfileX();
1739  p_ele_chi2VsPhi->GetXaxis()->SetTitle("#phi (rad)");
1740  p_ele_chi2VsPhi->GetYaxis()->SetTitle("<#Chi^{2}>");
1741  p_ele_chi2VsPhi->Write();
1742  TProfile *p_ele_foundHitsVsEta = h_ele_foundHitsVsEta->ProfileX();
1743  p_ele_foundHitsVsEta->GetXaxis()->SetTitle("#eta");
1744  p_ele_foundHitsVsEta->GetYaxis()->SetTitle("<N_{hits}>");
1745  p_ele_foundHitsVsEta->Write();
1746  TProfile *p_ele_foundHitsVsPhi = h_ele_foundHitsVsPhi->ProfileX();
1747  p_ele_foundHitsVsPhi->GetXaxis()->SetTitle("#phi (rad)");
1748  p_ele_foundHitsVsPhi->GetYaxis()->SetTitle("<N_{hits}>");
1749  p_ele_foundHitsVsPhi->Write();
1750  TProfile *p_ele_lostHitsVsEta = h_ele_lostHitsVsEta->ProfileX();
1751  p_ele_lostHitsVsEta->GetXaxis()->SetTitle("#eta");
1752  p_ele_lostHitsVsEta->GetYaxis()->SetTitle("<N_{hits}>");
1753  p_ele_lostHitsVsEta->Write();
1754  TProfile *p_ele_lostHitsVsPhi = h_ele_lostHitsVsPhi->ProfileX();
1755  p_ele_lostHitsVsPhi->GetXaxis()->SetTitle("#phi (rad)");
1756  p_ele_lostHitsVsPhi->GetYaxis()->SetTitle("<N_{hits}>");
1757  p_ele_lostHitsVsPhi->Write();
1758  TProfile *p_ele_vertexTIPVsEta = h_ele_vertexTIPVsEta->ProfileX();
1759  p_ele_vertexTIPVsEta->SetTitle("mean tip (wrt gen vtx) vs eta");
1760  p_ele_vertexTIPVsEta->GetXaxis()->SetTitle("#eta");
1761  p_ele_vertexTIPVsEta->GetYaxis()->SetTitle("<TIP> (cm)");
1762  p_ele_vertexTIPVsEta->Write();
1763  TProfile *p_ele_vertexTIPVsPhi = h_ele_vertexTIPVsPhi->ProfileX();
1764  p_ele_vertexTIPVsPhi->SetTitle("mean tip (wrt gen vtx) vs phi");
1765  p_ele_vertexTIPVsPhi->GetXaxis()->SetTitle("#phi");
1766  p_ele_vertexTIPVsPhi->GetYaxis()->SetTitle("<TIP> (cm)");
1767  p_ele_vertexTIPVsPhi->Write();
1768  TProfile *p_ele_vertexTIPVsPt = h_ele_vertexTIPVsPt->ProfileX();
1769  p_ele_vertexTIPVsPt->SetTitle("mean tip (wrt gen vtx) vs phi");
1770  p_ele_vertexTIPVsPt->GetXaxis()->SetTitle("p_{T} (GeV/c)");
1771  p_ele_vertexTIPVsPt->GetYaxis()->SetTitle("<TIP> (cm)");
1772  p_ele_vertexTIPVsPt->Write();
1773 
1774  // mc truth
1775 
1776  h_matchingObjectNum->Write();
1777 
1778  // rec event
1779 
1780  histNum_->Write();
1781 
1782  // mc
1783  h_matchingObjectEta->Write();
1784  h_matchingObjectAbsEta->Write();
1785  h_matchingObjectP->Write();
1786  h_matchingObjectPt->Write();
1787  h_matchingObjectPhi->Write();
1788  h_matchingObjectZ->Write();
1789 
1790  // all electrons
1791  h_ele_EoverP_all->Write();
1792  h_ele_EseedOP_all->Write();
1793  h_ele_EoPout_all->Write();
1794  h_ele_EeleOPout_all->Write();
1795  h_ele_dEtaSc_propVtx_all->Write();
1796  h_ele_dPhiSc_propVtx_all->Write();
1797  h_ele_dEtaCl_propOut_all->Write();
1798  h_ele_dPhiCl_propOut_all->Write();
1799  h_ele_HoE_all->Write();
1800  h_ele_TIP_all->Write();
1801  h_ele_vertexPt_all->Write();
1802  h_ele_vertexEta_all->Write();
1803  h_ele_mee_all->Write();
1804  h_ele_mee_os->Write();
1805  h_ele_E2mnE1vsMee_all->Write();
1806  h_ele_E2mnE1vsMee_egeg_all->Write();
1807 
1808  // matched electrons
1809  h_ele_charge->Write();
1810  h_ele_chargeVsEta->Write();
1811  h_ele_chargeVsPhi->Write();
1812  h_ele_chargeVsPt->Write();
1813  h_ele_vertexP->Write();
1814  h_ele_vertexPt->Write();
1815  h_ele_vertexPtVsEta->Write();
1816  h_ele_vertexPtVsPhi->Write();
1818  h_ele_vertexEta->Write();
1819  h_ele_vertexEtaVsPhi->Write();
1822  h_ele_vertexPhi->Write();
1824  h_ele_vertexX->Write();
1825  h_ele_vertexY->Write();
1826  h_ele_vertexZ->Write();
1827  h_ele_vertexTIP->Write();
1829  h_ele_vertexTIPVsEta->Write();
1830  h_ele_vertexTIPVsPhi->Write();
1831  h_ele_vertexTIPVsPt->Write();
1832  h_ele_PoPmatchingObject->Write();
1835  h_ele_PoPmatchingObjectVsPt->Write();
1847 
1848  // matched electron, superclusters
1849  histSclEn_->Write();
1852  histSclEt_->Write();
1853  histSclEtVsEta_->Write();
1854  histSclEtVsPhi_->Write();
1855  histSclEtaVsPhi_->Write();
1856  histSclEta_->Write();
1857  histSclPhi_->Write();
1858  histSclSigIEtaIEta_->Write();
1859  histSclSigIEtaIEta_barrel_->Write();
1860  histSclSigIEtaIEta_endcaps_->Write();
1861  histSclE1x5_->Write();
1862  histSclE1x5_barrel_->Write();
1863  histSclE1x5_endcaps_->Write();
1864  histSclE2x5max_->Write();
1865  histSclE2x5max_barrel_->Write();
1866  histSclE2x5max_endcaps_->Write();
1867  histSclE5x5_->Write();
1868  histSclE5x5_barrel_->Write();
1869  histSclE5x5_endcaps_->Write();
1870 
1871  // matched electron, gsf tracks
1872  h_ele_ambiguousTracks->Write();
1873  h_ele_ambiguousTracksVsEta->Write();
1874  h_ele_ambiguousTracksVsPhi->Write();
1875  h_ele_ambiguousTracksVsPt->Write();
1876  h_ele_foundHits->Write();
1877  h_ele_foundHitsVsEta->Write();
1878  h_ele_foundHitsVsPhi->Write();
1879  h_ele_foundHitsVsPt->Write();
1880  h_ele_lostHits->Write();
1881  h_ele_lostHitsVsEta->Write();
1882  h_ele_lostHitsVsPhi->Write();
1883  h_ele_lostHitsVsPt->Write();
1884  h_ele_chi2->Write();
1885  h_ele_chi2VsEta->Write();
1886  h_ele_chi2VsPhi->Write();
1887  h_ele_chi2VsPt->Write();
1888  h_ele_PinMnPout->Write();
1889  h_ele_PinMnPout_mode->Write();
1890  h_ele_PinMnPoutVsEta_mode->Write();
1891  h_ele_PinMnPoutVsPhi_mode->Write();
1892  h_ele_PinMnPoutVsPt_mode->Write();
1893  h_ele_PinMnPoutVsE_mode->Write();
1894  h_ele_PinMnPoutVsChi2_mode->Write();
1895  h_ele_outerP->Write();
1896  h_ele_outerP_mode->Write();
1897  h_ele_outerPVsEta_mode->Write();
1898  h_ele_outerPt->Write();
1899  h_ele_outerPt_mode->Write();
1900  h_ele_outerPtVsEta_mode->Write();
1901  h_ele_outerPtVsPhi_mode->Write();
1902  h_ele_outerPtVsPt_mode->Write();
1903 
1904  // matched electrons, matching
1905  h_ele_EoP->Write();
1906  h_ele_EoP_eg->Write();
1907  h_ele_EoP_barrel->Write();
1908  h_ele_EoP_eg_barrel->Write();
1909  h_ele_EoP_endcaps->Write();
1910  h_ele_EoP_eg_endcaps->Write();
1911  h_ele_EoPVsEta->Write();
1912  h_ele_EoPVsPhi->Write();
1913  h_ele_EoPVsE->Write();
1914  h_ele_EseedOP->Write();
1915  h_ele_EseedOP_eg->Write();
1916  h_ele_EseedOP_barrel->Write();
1917  h_ele_EseedOP_eg_barrel->Write();
1918  h_ele_EseedOP_endcaps->Write();
1919  h_ele_EseedOP_eg_endcaps->Write();
1920  h_ele_EseedOPVsEta->Write();
1921  h_ele_EseedOPVsPhi->Write();
1922  h_ele_EseedOPVsE->Write();
1923  h_ele_EoPout->Write();
1924  h_ele_EoPout_eg->Write();
1925  h_ele_EoPout_barrel->Write();
1926  h_ele_EoPout_eg_barrel->Write();
1927  h_ele_EoPout_endcaps->Write();
1928  h_ele_EoPout_eg_endcaps->Write();
1929  h_ele_EoPoutVsEta->Write();
1930  h_ele_EoPoutVsPhi->Write();
1931  h_ele_EoPoutVsE->Write();
1932  h_ele_EeleOPout->Write();
1933  h_ele_EeleOPout_eg->Write();
1934  h_ele_EeleOPout_barrel->Write();
1935  h_ele_EeleOPout_eg_barrel->Write();
1936  h_ele_EeleOPout_endcaps->Write();
1937  h_ele_EeleOPout_eg_endcaps->Write();
1938  h_ele_EeleOPoutVsEta->Write();
1939  h_ele_EeleOPoutVsPhi->Write();
1940  h_ele_EeleOPoutVsE->Write();
1941  h_ele_dEtaSc_propVtx->Write();
1942  h_ele_dEtaSc_propVtx_eg->Write();
1943  h_ele_dEtaSc_propVtx_barrel->Write();
1947  h_ele_dEtaScVsEta_propVtx->Write();
1948  h_ele_dEtaScVsPhi_propVtx->Write();
1949  h_ele_dEtaScVsPt_propVtx->Write();
1950  h_ele_dPhiSc_propVtx->Write();
1951  h_ele_dPhiSc_propVtx_eg->Write();
1952  h_ele_dPhiSc_propVtx_barrel->Write();
1956  h_ele_dPhiScVsEta_propVtx->Write();
1957  h_ele_dPhiScVsPhi_propVtx->Write();
1958  h_ele_dPhiScVsPt_propVtx->Write();
1959  h_ele_dEtaCl_propOut->Write();
1960  h_ele_dEtaCl_propOut_eg->Write();
1961  h_ele_dEtaCl_propOut_barrel->Write();
1965  h_ele_dEtaClVsEta_propOut->Write();
1966  h_ele_dEtaClVsPhi_propOut->Write();
1967  h_ele_dEtaClVsPt_propOut->Write();
1968  h_ele_dPhiCl_propOut->Write();
1969  h_ele_dPhiCl_propOut_eg->Write();
1970  h_ele_dPhiCl_propOut_barrel->Write();
1974  h_ele_dPhiClVsEta_propOut->Write();
1975  h_ele_dPhiClVsPhi_propOut->Write();
1976  h_ele_dPhiClVsPt_propOut->Write();
1977  h_ele_dEtaEleCl_propOut->Write();
1978  h_ele_dEtaEleCl_propOut_eg->Write();
1985  h_ele_dEtaEleClVsPt_propOut->Write();
1986  h_ele_dPhiEleCl_propOut->Write();
1987  h_ele_dPhiEleCl_propOut_eg->Write();
1994  h_ele_dPhiEleClVsPt_propOut->Write();
1995  h_ele_HoE->Write();
1996  h_ele_HoE_eg->Write();
1997  h_ele_HoE_barrel->Write();
1998  h_ele_HoE_eg_barrel->Write();
1999  h_ele_HoE_endcaps->Write();
2000  h_ele_HoE_eg_endcaps->Write();
2001  h_ele_HoE_fiducial->Write();
2002  h_ele_HoEVsEta->Write();
2003  h_ele_HoEVsPhi->Write();
2004  h_ele_HoEVsE->Write();
2005 
2006  h_ele_seed_dphi2_->Write();
2007  h_ele_seed_subdet2_->Write();
2008  TProfile *p_ele_seed_dphi2VsEta_ = h_ele_seed_dphi2VsEta_->ProfileX();
2009  p_ele_seed_dphi2VsEta_->SetTitle("mean ele seed dphi 2nd layer vs eta");
2010  p_ele_seed_dphi2VsEta_->GetXaxis()->SetTitle("#eta");
2011  p_ele_seed_dphi2VsEta_->GetYaxis()->SetTitle("<#phi_{pred} - #phi_{hit}, 2nd layer> (rad)");
2012  p_ele_seed_dphi2VsEta_->SetMinimum(-0.004);
2013  p_ele_seed_dphi2VsEta_->SetMaximum(0.004);
2014  p_ele_seed_dphi2VsEta_->Write();
2015  TProfile *p_ele_seed_dphi2VsPt_ = h_ele_seed_dphi2VsPt_->ProfileX();
2016  p_ele_seed_dphi2VsPt_->SetTitle("mean ele seed dphi 2nd layer vs pt");
2017  p_ele_seed_dphi2VsPt_->GetXaxis()->SetTitle("p_{T} (GeV/c)");
2018  p_ele_seed_dphi2VsPt_->GetYaxis()->SetTitle("<#phi_{pred} - #phi_{hit}, 2nd layer> (rad)");
2019  p_ele_seed_dphi2VsPt_->SetMinimum(-0.004);
2020  p_ele_seed_dphi2VsPt_->SetMaximum(0.004);
2021  p_ele_seed_dphi2VsPt_->Write();
2022  h_ele_seed_drz2_->Write();
2023  TProfile *p_ele_seed_drz2VsEta_ = h_ele_seed_drz2VsEta_->ProfileX();
2024  p_ele_seed_drz2VsEta_->SetTitle("mean ele seed dr(dz) 2nd layer vs eta");
2025  p_ele_seed_drz2VsEta_->GetXaxis()->SetTitle("#eta");
2026  p_ele_seed_drz2VsEta_->GetYaxis()->SetTitle("<r(z)_{pred} - r(z)_{hit}, 2nd layer> (cm)");
2027  p_ele_seed_drz2VsEta_->SetMinimum(-0.15);
2028  p_ele_seed_drz2VsEta_->SetMaximum(0.15);
2029  p_ele_seed_drz2VsEta_->Write();
2030  TProfile *p_ele_seed_drz2VsPt_ = h_ele_seed_drz2VsPt_->ProfileX();
2031  p_ele_seed_drz2VsPt_->SetTitle("mean ele seed dr(dz) 2nd layer vs pt");
2032  p_ele_seed_drz2VsPt_->GetXaxis()->SetTitle("p_{T} (GeV/c)");
2033  p_ele_seed_drz2VsPt_->GetYaxis()->SetTitle("<r(z)_{pred} - r(z)_{hit}, 2nd layer> (cm)");
2034  p_ele_seed_drz2VsPt_->SetMinimum(-0.15);
2035  p_ele_seed_drz2VsPt_->SetMaximum(0.15);
2036  p_ele_seed_drz2VsPt_->Write();
2037 
2038  // classes
2039  h_ele_classes->Write();
2040  h_ele_eta->Write();
2041  h_ele_eta_golden->Write();
2042  h_ele_eta_bbrem->Write();
2043  h_ele_eta_narrow->Write();
2044  h_ele_eta_shower->Write();
2045  h_ele_PinVsPoutGolden_mode->Write();
2047  h_ele_PinVsPoutGolden_mean->Write();
2057 
2058  // fbrem
2059  h_ele_fbrem->Write();
2060  h_ele_fbremVsEta_mode->Write();
2061  h_ele_fbremVsEta_mean->Write();
2062  h_ele_etaEff->Write();
2063  h_ele_zEff->Write();
2064  h_ele_phiEff->Write();
2065  h_ele_absetaEff->Write();
2066  h_ele_ptEff->Write();
2067  h_ele_etaEff_all->Write();
2068  h_ele_ptEff_all->Write();
2069  h_ele_eta_goldenFrac->Write();
2070  h_ele_eta_bbremFrac->Write();
2071  h_ele_eta_narrowFrac->Write();
2072  h_ele_eta_showerFrac->Write();
2073  h_ele_xOverX0VsEta->Write();
2074 
2075  // e/g et pflow electrons
2076  h_ele_mva->Write();
2077  h_ele_provenance->Write();
2078 
2079  // isolation
2080  h_ele_tkSumPt_dr03->GetXaxis()->SetTitle("TkIsoSum, cone 0.3 (GeV/c)");
2081  h_ele_tkSumPt_dr03->GetYaxis()->SetTitle("Events");
2082  h_ele_tkSumPt_dr03->Write();
2083  h_ele_ecalRecHitSumEt_dr03->GetXaxis()->SetTitle("EcalIsoSum, cone 0.3 (GeV)");
2084  h_ele_ecalRecHitSumEt_dr03->GetYaxis()->SetTitle("Events");
2085  h_ele_ecalRecHitSumEt_dr03->Write();
2086  h_ele_hcalDepth1TowerSumEt_dr03->GetXaxis()->SetTitle("Hcal1IsoSum, cone 0.3 (GeV)");
2087  h_ele_hcalDepth1TowerSumEt_dr03->GetYaxis()->SetTitle("Events");
2089  h_ele_hcalDepth2TowerSumEt_dr03->GetXaxis()->SetTitle("Hcal2IsoSum, cone 0.3 (GeV)");
2090  h_ele_hcalDepth2TowerSumEt_dr03->GetYaxis()->SetTitle("Events");
2092  h_ele_tkSumPt_dr04->GetXaxis()->SetTitle("TkIsoSum, cone 0.4 (GeV/c)");
2093  h_ele_tkSumPt_dr04->GetYaxis()->SetTitle("Events");
2094  h_ele_tkSumPt_dr04->Write();
2095  h_ele_ecalRecHitSumEt_dr04->GetXaxis()->SetTitle("EcalIsoSum, cone 0.4 (GeV)");
2096  h_ele_ecalRecHitSumEt_dr04->GetYaxis()->SetTitle("Events");
2097  h_ele_ecalRecHitSumEt_dr04->Write();
2098  h_ele_hcalDepth1TowerSumEt_dr04->GetXaxis()->SetTitle("Hcal1IsoSum, cone 0.4 (GeV)");
2099  h_ele_hcalDepth1TowerSumEt_dr04->GetYaxis()->SetTitle("Events");
2101  h_ele_hcalDepth2TowerSumEt_dr04->GetXaxis()->SetTitle("Hcal2IsoSum, cone 0.4 (GeV)");
2102  h_ele_hcalDepth2TowerSumEt_dr04->GetYaxis()->SetTitle("Events");
2104 }
2105 
2107  std::cout << "analyzing new event " << std::endl;
2108 
2109  // get reco electrons
2112  edm::LogInfo("") << "\n\n =================> Treating event " << iEvent.id() << " Number of electrons "
2113  << gsfElectrons.product()->size();
2114 
2115  // get gen jets
2118 
2119  // get the beamspot from the Event:
2120  edm::Handle<reco::BeamSpot> recoBeamSpotHandle;
2121  iEvent.getByLabel(beamSpot_, recoBeamSpotHandle);
2122  const BeamSpot bs = *recoBeamSpotHandle;
2123 
2124  histNum_->Fill((*gsfElectrons).size());
2125 
2126  // all rec electrons
2127  for (reco::GsfElectronCollection::const_iterator gsfIter = gsfElectrons->begin(); gsfIter != gsfElectrons->end();
2128  gsfIter++) {
2129  // preselect electrons
2130  if (gsfIter->pt() > maxPt_ || std::abs(gsfIter->eta()) > maxAbsEta_)
2131  continue;
2132  h_ele_EoverP_all->Fill(gsfIter->eSuperClusterOverP());
2133  h_ele_EseedOP_all->Fill(gsfIter->eSeedClusterOverP());
2134  h_ele_EoPout_all->Fill(gsfIter->eSeedClusterOverPout());
2135  h_ele_EeleOPout_all->Fill(gsfIter->eEleClusterOverPout());
2136  h_ele_dEtaSc_propVtx_all->Fill(gsfIter->deltaEtaSuperClusterTrackAtVtx());
2137  h_ele_dPhiSc_propVtx_all->Fill(gsfIter->deltaPhiSuperClusterTrackAtVtx());
2138  h_ele_dEtaCl_propOut_all->Fill(gsfIter->deltaEtaSeedClusterTrackAtCalo());
2139  h_ele_dPhiCl_propOut_all->Fill(gsfIter->deltaPhiSeedClusterTrackAtCalo());
2140  h_ele_HoE_all->Fill(gsfIter->hadronicOverEm());
2141  double d = gsfIter->vertex().x() * gsfIter->vertex().x() + gsfIter->vertex().y() * gsfIter->vertex().y();
2142  h_ele_TIP_all->Fill(sqrt(d));
2143  h_ele_vertexEta_all->Fill(gsfIter->eta());
2144  h_ele_vertexPt_all->Fill(gsfIter->pt());
2145  float enrj1 = gsfIter->superCluster()->energy();
2146  // mee
2147  for (reco::GsfElectronCollection::const_iterator gsfIter2 = gsfIter + 1; gsfIter2 != gsfElectrons->end();
2148  gsfIter2++) {
2149  math::XYZTLorentzVector p12 = (*gsfIter).p4() + (*gsfIter2).p4();
2150  float mee2 = p12.Dot(p12);
2151  h_ele_mee_all->Fill(sqrt(mee2));
2152  float enrj2 = gsfIter2->superCluster()->energy();
2153  h_ele_E2mnE1vsMee_all->Fill(sqrt(mee2), enrj2 - enrj1);
2154  if (gsfIter->ecalDrivenSeed() && gsfIter2->ecalDrivenSeed())
2155  h_ele_E2mnE1vsMee_egeg_all->Fill(sqrt(mee2), enrj2 - enrj1);
2156  if (gsfIter->charge() * gsfIter2->charge() < 0.)
2157  h_ele_mee_os->Fill(sqrt(mee2));
2158  }
2159  }
2160 
2161  // association matching object-reco electrons
2162  int matchingObjectNum = 0;
2163 
2164  for (reco::GenJetCollection::const_iterator moIter = genJets->begin(); moIter != genJets->end(); ++moIter) {
2165  // number of matching objects
2166  matchingObjectNum++;
2167 
2168  if (moIter->energy() / cosh(moIter->eta()) > maxPt_ || std::abs(moIter->eta()) > maxAbsEta_)
2169  continue;
2170 
2171  // suppress the endcaps
2172  //if (std::abs(moIter->eta()) > 1.5) continue;
2173  // select central z
2174  //if ( std::abs((*mcIter)->production_vertex()->position().z())>50.) continue;
2175 
2176  h_matchingObjectEta->Fill(moIter->eta());
2177  h_matchingObjectAbsEta->Fill(std::abs(moIter->eta()));
2178  h_matchingObjectP->Fill(moIter->energy());
2179  h_matchingObjectPt->Fill(moIter->energy() / cosh(moIter->eta()));
2180  h_matchingObjectPhi->Fill(moIter->phi());
2181  h_matchingObjectZ->Fill(moIter->vz());
2182 
2183  // looking for the best matching gsf electron
2184  bool okGsfFound = false;
2185  double gsfOkRatio = 999999.;
2186 
2187  // find best matched electron
2188  reco::GsfElectron bestGsfElectron;
2189  for (reco::GsfElectronCollection::const_iterator gsfIter = gsfElectrons->begin(); gsfIter != gsfElectrons->end();
2190  gsfIter++) {
2191  double dphi = gsfIter->phi() - moIter->phi();
2192  if (std::abs(dphi) > CLHEP::pi)
2193  dphi = dphi < 0 ? (CLHEP::twopi) + dphi : dphi - CLHEP::twopi;
2194  double deltaR = sqrt(std::pow((gsfIter->eta() - moIter->eta()), 2) + std::pow(dphi, 2));
2195  if (deltaR < deltaR_) {
2196  //if ( (genPc->pdg_id() == 11) && (gsfIter->charge() < 0.) || (genPc->pdg_id() == -11) &&
2197  //(gsfIter->charge() > 0.) ){
2198  double tmpGsfRatio = gsfIter->p() / moIter->energy();
2199  if (std::abs(tmpGsfRatio - 1) < std::abs(gsfOkRatio - 1)) {
2200  gsfOkRatio = tmpGsfRatio;
2201  bestGsfElectron = *gsfIter;
2202  okGsfFound = true;
2203  }
2204  //}
2205  }
2206  } // loop over rec ele to look for the best one
2207 
2208  // analysis when the matching object is matched by a rec electron
2209  if (okGsfFound) {
2210  // electron related distributions
2211  h_ele_charge->Fill(bestGsfElectron.charge());
2212  h_ele_chargeVsEta->Fill(bestGsfElectron.eta(), bestGsfElectron.charge());
2213  h_ele_chargeVsPhi->Fill(bestGsfElectron.phi(), bestGsfElectron.charge());
2214  h_ele_chargeVsPt->Fill(bestGsfElectron.pt(), bestGsfElectron.charge());
2215  h_ele_vertexP->Fill(bestGsfElectron.p());
2216  h_ele_vertexPt->Fill(bestGsfElectron.pt());
2217  h_ele_vertexPtVsEta->Fill(bestGsfElectron.eta(), bestGsfElectron.pt());
2218  h_ele_vertexPtVsPhi->Fill(bestGsfElectron.phi(), bestGsfElectron.pt());
2219  h_ele_vertexEta->Fill(bestGsfElectron.eta());
2220  // generated distributions for matched electrons
2221  h_ele_matchingObjectPt_matched->Fill(moIter->energy() / cosh(moIter->eta()));
2222  h_ele_matchingObjectPhi_matched->Fill(moIter->phi());
2223  h_ele_matchingObjectAbsEta_matched->Fill(std::abs(moIter->eta()));
2224  h_ele_matchingObjectEta_matched->Fill(moIter->eta());
2225  h_ele_vertexEtaVsPhi->Fill(bestGsfElectron.phi(), bestGsfElectron.eta());
2226  h_ele_vertexPhi->Fill(bestGsfElectron.phi());
2227  h_ele_vertexX->Fill(bestGsfElectron.vertex().x());
2228  h_ele_vertexY->Fill(bestGsfElectron.vertex().y());
2229  h_ele_vertexZ->Fill(bestGsfElectron.vertex().z());
2230  h_ele_matchingObjectZ_matched->Fill(moIter->vz());
2231  double d =
2232  (bestGsfElectron.vertex().x() - bs.position().x()) * (bestGsfElectron.vertex().x() - bs.position().x()) +
2233  (bestGsfElectron.vertex().y() - bs.position().y()) * (bestGsfElectron.vertex().y() - bs.position().y());
2234  d = sqrt(d);
2235  h_ele_vertexTIP->Fill(d);
2236  h_ele_vertexTIPVsEta->Fill(bestGsfElectron.eta(), d);
2237  h_ele_vertexTIPVsPhi->Fill(bestGsfElectron.phi(), d);
2238  h_ele_vertexTIPVsPt->Fill(bestGsfElectron.pt(), d);
2239  h_ele_EtaMnEtamatchingObject->Fill(bestGsfElectron.eta() - moIter->eta());
2240  h_ele_EtaMnEtamatchingObjectVsEta->Fill(bestGsfElectron.eta(), bestGsfElectron.eta() - moIter->eta());
2241  h_ele_EtaMnEtamatchingObjectVsPhi->Fill(bestGsfElectron.phi(), bestGsfElectron.eta() - moIter->eta());
2242  h_ele_EtaMnEtamatchingObjectVsPt->Fill(bestGsfElectron.pt(), bestGsfElectron.eta() - moIter->eta());
2243  h_ele_PhiMnPhimatchingObject->Fill(bestGsfElectron.phi() - moIter->phi());
2244  h_ele_PhiMnPhimatchingObject2->Fill(bestGsfElectron.phi() - moIter->phi());
2245  h_ele_PhiMnPhimatchingObjectVsEta->Fill(bestGsfElectron.eta(), bestGsfElectron.phi() - moIter->phi());
2246  h_ele_PhiMnPhimatchingObjectVsPhi->Fill(bestGsfElectron.phi(), bestGsfElectron.phi() - moIter->phi());
2247  h_ele_PhiMnPhimatchingObjectVsPt->Fill(bestGsfElectron.pt(), bestGsfElectron.phi() - moIter->phi());
2248  h_ele_PoPmatchingObject->Fill(bestGsfElectron.p() / moIter->energy());
2249  h_ele_PoPmatchingObjectVsEta->Fill(bestGsfElectron.eta(), bestGsfElectron.p() / moIter->energy());
2250  h_ele_PoPmatchingObjectVsPhi->Fill(bestGsfElectron.phi(), bestGsfElectron.p() / moIter->energy());
2251  h_ele_PoPmatchingObjectVsPt->Fill(bestGsfElectron.py(), bestGsfElectron.p() / moIter->energy());
2252  if (bestGsfElectron.isEB())
2253  h_ele_PoPmatchingObject_barrel->Fill(bestGsfElectron.p() / moIter->energy());
2254  if (bestGsfElectron.isEE())
2255  h_ele_PoPmatchingObject_endcaps->Fill(bestGsfElectron.p() / moIter->energy());
2256 
2257  // supercluster related distributions
2258  reco::SuperClusterRef sclRef = bestGsfElectron.superCluster();
2259  if (!bestGsfElectron.ecalDrivenSeed() && bestGsfElectron.trackerDrivenSeed())
2260  sclRef = bestGsfElectron.parentSuperCluster();
2261  histSclEn_->Fill(sclRef->energy());
2262  double R = TMath::Sqrt(sclRef->x() * sclRef->x() + sclRef->y() * sclRef->y() + sclRef->z() * sclRef->z());
2263  double Rt = TMath::Sqrt(sclRef->x() * sclRef->x() + sclRef->y() * sclRef->y());
2264  histSclEt_->Fill(sclRef->energy() * (Rt / R));
2265  histSclEtVsEta_->Fill(sclRef->eta(), sclRef->energy() * (Rt / R));
2266  histSclEtVsPhi_->Fill(sclRef->phi(), sclRef->energy() * (Rt / R));
2267  if (bestGsfElectron.isEB())
2268  histSclEoEmatchingObject_barrel->Fill(sclRef->energy() / moIter->energy());
2269  if (bestGsfElectron.isEE())
2270  histSclEoEmatchingObject_endcaps->Fill(sclRef->energy() / moIter->energy());
2271  histSclEta_->Fill(sclRef->eta());
2272  histSclEtaVsPhi_->Fill(sclRef->phi(), sclRef->eta());
2273  histSclPhi_->Fill(sclRef->phi());
2274  histSclSigIEtaIEta_->Fill(bestGsfElectron.scSigmaIEtaIEta());
2275  if (bestGsfElectron.isEB())
2276  histSclSigIEtaIEta_barrel_->Fill(bestGsfElectron.scSigmaIEtaIEta());
2277  if (bestGsfElectron.isEE())
2278  histSclSigIEtaIEta_endcaps_->Fill(bestGsfElectron.scSigmaIEtaIEta());
2279  histSclE1x5_->Fill(bestGsfElectron.scE1x5());
2280  if (bestGsfElectron.isEB())
2281  histSclE1x5_barrel_->Fill(bestGsfElectron.scE1x5());
2282  if (bestGsfElectron.isEE())
2283  histSclE1x5_endcaps_->Fill(bestGsfElectron.scE1x5());
2284  histSclE2x5max_->Fill(bestGsfElectron.scE2x5Max());
2285  if (bestGsfElectron.isEB())
2286  histSclE2x5max_barrel_->Fill(bestGsfElectron.scE2x5Max());
2287  if (bestGsfElectron.isEE())
2288  histSclE2x5max_endcaps_->Fill(bestGsfElectron.scE2x5Max());
2289  histSclE5x5_->Fill(bestGsfElectron.scE5x5());
2290  if (bestGsfElectron.isEB())
2291  histSclE5x5_barrel_->Fill(bestGsfElectron.scE5x5());
2292  if (bestGsfElectron.isEE())
2293  histSclE5x5_endcaps_->Fill(bestGsfElectron.scE5x5());
2294 
2295  // track related distributions
2296  h_ele_ambiguousTracks->Fill(bestGsfElectron.ambiguousGsfTracksSize());
2297  h_ele_ambiguousTracksVsEta->Fill(bestGsfElectron.eta(), bestGsfElectron.ambiguousGsfTracksSize());
2298  h_ele_ambiguousTracksVsPhi->Fill(bestGsfElectron.phi(), bestGsfElectron.ambiguousGsfTracksSize());
2299  h_ele_ambiguousTracksVsPt->Fill(bestGsfElectron.pt(), bestGsfElectron.ambiguousGsfTracksSize());
2300  if (!readAOD_) { // track extra does not exist in AOD
2301  h_ele_foundHits->Fill(bestGsfElectron.gsfTrack()->numberOfValidHits());
2302  h_ele_foundHitsVsEta->Fill(bestGsfElectron.eta(), bestGsfElectron.gsfTrack()->numberOfValidHits());
2303  h_ele_foundHitsVsPhi->Fill(bestGsfElectron.phi(), bestGsfElectron.gsfTrack()->numberOfValidHits());
2304  h_ele_foundHitsVsPt->Fill(bestGsfElectron.pt(), bestGsfElectron.gsfTrack()->numberOfValidHits());
2305  h_ele_lostHits->Fill(bestGsfElectron.gsfTrack()->numberOfLostHits());
2306  h_ele_lostHitsVsEta->Fill(bestGsfElectron.eta(), bestGsfElectron.gsfTrack()->numberOfLostHits());
2307  h_ele_lostHitsVsPhi->Fill(bestGsfElectron.phi(), bestGsfElectron.gsfTrack()->numberOfLostHits());
2308  h_ele_lostHitsVsPt->Fill(bestGsfElectron.pt(), bestGsfElectron.gsfTrack()->numberOfLostHits());
2309  h_ele_chi2->Fill(bestGsfElectron.gsfTrack()->normalizedChi2());
2310  h_ele_chi2VsEta->Fill(bestGsfElectron.eta(), bestGsfElectron.gsfTrack()->normalizedChi2());
2311  h_ele_chi2VsPhi->Fill(bestGsfElectron.phi(), bestGsfElectron.gsfTrack()->normalizedChi2());
2312  h_ele_chi2VsPt->Fill(bestGsfElectron.pt(), bestGsfElectron.gsfTrack()->normalizedChi2());
2313  }
2314  // from gsf track interface, hence using mean
2315  if (!readAOD_) { // track extra does not exist in AOD
2316  h_ele_PinMnPout->Fill(bestGsfElectron.gsfTrack()->innerMomentum().R() -
2317  bestGsfElectron.gsfTrack()->outerMomentum().R());
2318  h_ele_outerP->Fill(bestGsfElectron.gsfTrack()->outerMomentum().R());
2319  h_ele_outerPt->Fill(bestGsfElectron.gsfTrack()->outerMomentum().Rho());
2320  }
2321  // from electron interface, hence using mode
2322  h_ele_PinMnPout_mode->Fill(bestGsfElectron.trackMomentumAtVtx().R() - bestGsfElectron.trackMomentumOut().R());
2324  bestGsfElectron.eta(), bestGsfElectron.trackMomentumAtVtx().R() - bestGsfElectron.trackMomentumOut().R());
2326  bestGsfElectron.phi(), bestGsfElectron.trackMomentumAtVtx().R() - bestGsfElectron.trackMomentumOut().R());
2327  h_ele_PinMnPoutVsPt_mode->Fill(bestGsfElectron.pt(),
2328  bestGsfElectron.trackMomentumAtVtx().R() - bestGsfElectron.trackMomentumOut().R());
2329  h_ele_PinMnPoutVsE_mode->Fill(bestGsfElectron.caloEnergy(),
2330  bestGsfElectron.trackMomentumAtVtx().R() - bestGsfElectron.trackMomentumOut().R());
2331  if (!readAOD_) // track extra does not exist in AOD
2333  bestGsfElectron.gsfTrack()->normalizedChi2(),
2334  bestGsfElectron.trackMomentumAtVtx().R() - bestGsfElectron.trackMomentumOut().R());
2335  h_ele_outerP_mode->Fill(bestGsfElectron.trackMomentumOut().R());
2336  h_ele_outerPVsEta_mode->Fill(bestGsfElectron.eta(), bestGsfElectron.trackMomentumOut().R());
2337  h_ele_outerPt_mode->Fill(bestGsfElectron.trackMomentumOut().Rho());
2338  h_ele_outerPtVsEta_mode->Fill(bestGsfElectron.eta(), bestGsfElectron.trackMomentumOut().Rho());
2339  h_ele_outerPtVsPhi_mode->Fill(bestGsfElectron.phi(), bestGsfElectron.trackMomentumOut().Rho());
2340  h_ele_outerPtVsPt_mode->Fill(bestGsfElectron.pt(), bestGsfElectron.trackMomentumOut().Rho());
2341 
2342  if (!readAOD_) { // track extra does not exist in AOD
2343  edm::RefToBase<TrajectorySeed> seed = bestGsfElectron.gsfTrack()->extra()->seedRef();
2344  ElectronSeedRef elseed = seed.castTo<ElectronSeedRef>();
2345  h_ele_seed_dphi2_->Fill(elseed->dPhiNeg(1));
2346  h_ele_seed_dphi2VsEta_->Fill(bestGsfElectron.eta(), elseed->dPhiNeg(1));
2347  h_ele_seed_dphi2VsPt_->Fill(bestGsfElectron.pt(), elseed->dPhiNeg(1));
2348  h_ele_seed_drz2_->Fill(elseed->dRZNeg(1));
2349  h_ele_seed_drz2VsEta_->Fill(bestGsfElectron.eta(), elseed->dRZNeg(1));
2350  h_ele_seed_drz2VsPt_->Fill(bestGsfElectron.pt(), elseed->dRZNeg(1));
2351  h_ele_seed_subdet2_->Fill(elseed->subDet(1));
2352  }
2353  // match distributions
2354  h_ele_EoP->Fill(bestGsfElectron.eSuperClusterOverP());
2355  if (bestGsfElectron.ecalDrivenSeed())
2356  h_ele_EoP_eg->Fill(bestGsfElectron.eSuperClusterOverP());
2357  if (bestGsfElectron.isEB())
2358  h_ele_EoP_barrel->Fill(bestGsfElectron.eSuperClusterOverP());
2359  if (bestGsfElectron.isEB() && bestGsfElectron.ecalDrivenSeed())
2360  h_ele_EoP_eg_barrel->Fill(bestGsfElectron.eSuperClusterOverP());
2361  if (bestGsfElectron.isEE())
2362  h_ele_EoP_endcaps->Fill(bestGsfElectron.eSuperClusterOverP());
2363  if (bestGsfElectron.isEE() && bestGsfElectron.ecalDrivenSeed())
2364  h_ele_EoP_eg_endcaps->Fill(bestGsfElectron.eSuperClusterOverP());
2365  h_ele_EoPVsEta->Fill(bestGsfElectron.eta(), bestGsfElectron.eSuperClusterOverP());
2366  h_ele_EoPVsPhi->Fill(bestGsfElectron.phi(), bestGsfElectron.eSuperClusterOverP());
2367  h_ele_EoPVsE->Fill(bestGsfElectron.caloEnergy(), bestGsfElectron.eSuperClusterOverP());
2368  h_ele_EseedOP->Fill(bestGsfElectron.eSeedClusterOverP());
2369  if (bestGsfElectron.ecalDrivenSeed())
2370  h_ele_EseedOP_eg->Fill(bestGsfElectron.eSeedClusterOverP());
2371  if (bestGsfElectron.isEB())
2372  h_ele_EseedOP_barrel->Fill(bestGsfElectron.eSeedClusterOverP());
2373  if (bestGsfElectron.isEB() && bestGsfElectron.ecalDrivenSeed())
2374  h_ele_EseedOP_eg_barrel->Fill(bestGsfElectron.eSeedClusterOverP());
2375  if (bestGsfElectron.isEE())
2376  h_ele_EseedOP_endcaps->Fill(bestGsfElectron.eSeedClusterOverP());
2377  if (bestGsfElectron.isEE() && bestGsfElectron.ecalDrivenSeed())
2378  h_ele_EseedOP_eg_endcaps->Fill(bestGsfElectron.eSeedClusterOverP());
2379  h_ele_EseedOPVsEta->Fill(bestGsfElectron.eta(), bestGsfElectron.eSeedClusterOverP());
2380  h_ele_EseedOPVsPhi->Fill(bestGsfElectron.phi(), bestGsfElectron.eSeedClusterOverP());
2381  h_ele_EseedOPVsE->Fill(bestGsfElectron.caloEnergy(), bestGsfElectron.eSeedClusterOverP());
2382  h_ele_EoPout->Fill(bestGsfElectron.eSeedClusterOverPout());
2383  if (bestGsfElectron.ecalDrivenSeed())
2384  h_ele_EoPout_eg->Fill(bestGsfElectron.eSeedClusterOverPout());
2385  if (bestGsfElectron.isEB())
2386  h_ele_EoPout_barrel->Fill(bestGsfElectron.eSeedClusterOverPout());
2387  if (bestGsfElectron.isEB() && bestGsfElectron.ecalDrivenSeed())
2388  h_ele_EoPout_eg_barrel->Fill(bestGsfElectron.eSeedClusterOverPout());
2389  if (bestGsfElectron.isEE())
2390  h_ele_EoPout_endcaps->Fill(bestGsfElectron.eSeedClusterOverPout());
2391  if (bestGsfElectron.isEE() && bestGsfElectron.ecalDrivenSeed())
2392  h_ele_EoPout_eg_endcaps->Fill(bestGsfElectron.eSeedClusterOverPout());
2393  h_ele_EoPoutVsEta->Fill(bestGsfElectron.eta(), bestGsfElectron.eSeedClusterOverPout());
2394  h_ele_EoPoutVsPhi->Fill(bestGsfElectron.phi(), bestGsfElectron.eSeedClusterOverPout());
2395  h_ele_EoPoutVsE->Fill(bestGsfElectron.caloEnergy(), bestGsfElectron.eSeedClusterOverPout());
2396  h_ele_EeleOPout->Fill(bestGsfElectron.eEleClusterOverPout());
2397  if (bestGsfElectron.ecalDrivenSeed())
2398  h_ele_EeleOPout_eg->Fill(bestGsfElectron.eEleClusterOverPout());
2399  if (bestGsfElectron.isEB())
2400  h_ele_EeleOPout_barrel->Fill(bestGsfElectron.eEleClusterOverPout());
2401  if (bestGsfElectron.isEB() && bestGsfElectron.ecalDrivenSeed())
2402  h_ele_EeleOPout_eg_barrel->Fill(bestGsfElectron.eEleClusterOverPout());
2403  if (bestGsfElectron.isEE())
2404  h_ele_EeleOPout_endcaps->Fill(bestGsfElectron.eEleClusterOverPout());
2405  if (bestGsfElectron.isEE() && bestGsfElectron.ecalDrivenSeed())
2406  h_ele_EeleOPout_eg_endcaps->Fill(bestGsfElectron.eEleClusterOverPout());
2407  h_ele_EeleOPoutVsEta->Fill(bestGsfElectron.eta(), bestGsfElectron.eEleClusterOverPout());
2408  h_ele_EeleOPoutVsPhi->Fill(bestGsfElectron.phi(), bestGsfElectron.eEleClusterOverPout());
2409  h_ele_EeleOPoutVsE->Fill(bestGsfElectron.caloEnergy(), bestGsfElectron.eEleClusterOverPout());
2410  h_ele_dEtaSc_propVtx->Fill(bestGsfElectron.deltaEtaSuperClusterTrackAtVtx());
2411  if (bestGsfElectron.ecalDrivenSeed())
2413  if (bestGsfElectron.isEB())
2415  if (bestGsfElectron.isEB() && bestGsfElectron.ecalDrivenSeed())
2417  if (bestGsfElectron.isEE())
2419  if (bestGsfElectron.isEE() && bestGsfElectron.ecalDrivenSeed())
2421  h_ele_dEtaScVsEta_propVtx->Fill(bestGsfElectron.eta(), bestGsfElectron.deltaEtaSuperClusterTrackAtVtx());
2422  h_ele_dEtaScVsPhi_propVtx->Fill(bestGsfElectron.phi(), bestGsfElectron.deltaEtaSuperClusterTrackAtVtx());
2423  h_ele_dEtaScVsPt_propVtx->Fill(bestGsfElectron.pt(), bestGsfElectron.deltaEtaSuperClusterTrackAtVtx());
2424  h_ele_dPhiSc_propVtx->Fill(bestGsfElectron.deltaPhiSuperClusterTrackAtVtx());
2425  if (bestGsfElectron.ecalDrivenSeed())
2427  if (bestGsfElectron.isEB())
2429  if (bestGsfElectron.isEB() && bestGsfElectron.ecalDrivenSeed())
2431  if (bestGsfElectron.isEE())
2433  if (bestGsfElectron.isEE() && bestGsfElectron.ecalDrivenSeed())
2435  h_ele_dPhiScVsEta_propVtx->Fill(bestGsfElectron.eta(), bestGsfElectron.deltaPhiSuperClusterTrackAtVtx());
2436  h_ele_dPhiScVsPhi_propVtx->Fill(bestGsfElectron.phi(), bestGsfElectron.deltaPhiSuperClusterTrackAtVtx());
2437  h_ele_dPhiScVsPt_propVtx->Fill(bestGsfElectron.pt(), bestGsfElectron.deltaPhiSuperClusterTrackAtVtx());
2438  h_ele_dEtaCl_propOut->Fill(bestGsfElectron.deltaEtaSeedClusterTrackAtCalo());
2439  if (bestGsfElectron.ecalDrivenSeed())
2441  if (bestGsfElectron.isEB())
2443  if (bestGsfElectron.isEB() && bestGsfElectron.ecalDrivenSeed())
2445  if (bestGsfElectron.isEE())
2447  if (bestGsfElectron.isEE() && bestGsfElectron.ecalDrivenSeed())
2449  h_ele_dEtaClVsEta_propOut->Fill(bestGsfElectron.eta(), bestGsfElectron.deltaEtaSeedClusterTrackAtCalo());
2450  h_ele_dEtaClVsPhi_propOut->Fill(bestGsfElectron.phi(), bestGsfElectron.deltaEtaSeedClusterTrackAtCalo());
2451  h_ele_dEtaClVsPt_propOut->Fill(bestGsfElectron.pt(), bestGsfElectron.deltaEtaSeedClusterTrackAtCalo());
2452  h_ele_dPhiCl_propOut->Fill(bestGsfElectron.deltaPhiSeedClusterTrackAtCalo());
2453  if (bestGsfElectron.ecalDrivenSeed())
2455  if (bestGsfElectron.isEB())
2457  if (bestGsfElectron.isEB() && bestGsfElectron.ecalDrivenSeed())
2459  if (bestGsfElectron.isEE())
2461  if (bestGsfElectron.isEE() && bestGsfElectron.ecalDrivenSeed())
2463  h_ele_dPhiClVsEta_propOut->Fill(bestGsfElectron.eta(), bestGsfElectron.deltaPhiSeedClusterTrackAtCalo());
2464  h_ele_dPhiClVsPhi_propOut->Fill(bestGsfElectron.phi(), bestGsfElectron.deltaPhiSeedClusterTrackAtCalo());
2465  h_ele_dPhiClVsPt_propOut->Fill(bestGsfElectron.pt(), bestGsfElectron.deltaPhiSeedClusterTrackAtCalo());
2466  h_ele_dEtaEleCl_propOut->Fill(bestGsfElectron.deltaEtaEleClusterTrackAtCalo());
2467  if (bestGsfElectron.ecalDrivenSeed())
2469  if (bestGsfElectron.isEB())
2471  if (bestGsfElectron.isEB() && bestGsfElectron.ecalDrivenSeed())
2473  if (bestGsfElectron.isEE())
2475  if (bestGsfElectron.isEE() && bestGsfElectron.ecalDrivenSeed())
2477  h_ele_dEtaEleClVsEta_propOut->Fill(bestGsfElectron.eta(), bestGsfElectron.deltaEtaEleClusterTrackAtCalo());
2478  h_ele_dEtaEleClVsPhi_propOut->Fill(bestGsfElectron.phi(), bestGsfElectron.deltaEtaEleClusterTrackAtCalo());
2479  h_ele_dEtaEleClVsPt_propOut->Fill(bestGsfElectron.pt(), bestGsfElectron.deltaEtaEleClusterTrackAtCalo());
2480  h_ele_dPhiEleCl_propOut->Fill(bestGsfElectron.deltaPhiEleClusterTrackAtCalo());
2481  if (bestGsfElectron.ecalDrivenSeed())
2483  if (bestGsfElectron.isEB())
2485  if (bestGsfElectron.isEB() && bestGsfElectron.ecalDrivenSeed())
2487  if (bestGsfElectron.isEE())
2489  if (bestGsfElectron.isEE() && bestGsfElectron.ecalDrivenSeed())
2491  h_ele_dPhiEleClVsEta_propOut->Fill(bestGsfElectron.eta(), bestGsfElectron.deltaPhiEleClusterTrackAtCalo());
2492  h_ele_dPhiEleClVsPhi_propOut->Fill(bestGsfElectron.phi(), bestGsfElectron.deltaPhiEleClusterTrackAtCalo());
2493  h_ele_dPhiEleClVsPt_propOut->Fill(bestGsfElectron.pt(), bestGsfElectron.deltaPhiEleClusterTrackAtCalo());
2494  h_ele_HoE->Fill(bestGsfElectron.hadronicOverEm());
2495  if (bestGsfElectron.ecalDrivenSeed())
2496  h_ele_HoE_eg->Fill(bestGsfElectron.hadronicOverEm());
2497  if (bestGsfElectron.isEB())
2498  h_ele_HoE_barrel->Fill(bestGsfElectron.hadronicOverEm());
2499  if (bestGsfElectron.isEB() && bestGsfElectron.ecalDrivenSeed())
2500  h_ele_HoE_eg_barrel->Fill(bestGsfElectron.hadronicOverEm());
2501  if (bestGsfElectron.isEE())
2502  h_ele_HoE_endcaps->Fill(bestGsfElectron.hadronicOverEm());
2503  if (bestGsfElectron.isEE() && bestGsfElectron.ecalDrivenSeed())
2504  h_ele_HoE_eg_endcaps->Fill(bestGsfElectron.hadronicOverEm());
2505  if (!bestGsfElectron.isEBEtaGap() && !bestGsfElectron.isEBPhiGap() && !bestGsfElectron.isEBEEGap() &&
2506  !bestGsfElectron.isEERingGap() && !bestGsfElectron.isEEDeeGap())
2507  h_ele_HoE_fiducial->Fill(bestGsfElectron.hadronicOverEm());
2508  h_ele_HoEVsEta->Fill(bestGsfElectron.eta(), bestGsfElectron.hadronicOverEm());
2509  h_ele_HoEVsPhi->Fill(bestGsfElectron.phi(), bestGsfElectron.hadronicOverEm());
2510  h_ele_HoEVsE->Fill(bestGsfElectron.caloEnergy(), bestGsfElectron.hadronicOverEm());
2511 
2512  //classes
2513  int eleClass = bestGsfElectron.classification();
2514  if (bestGsfElectron.isEE())
2515  eleClass += 10;
2516  h_ele_classes->Fill(eleClass);
2517 
2518  h_ele_eta->Fill(std::abs(bestGsfElectron.eta()));
2519  if (bestGsfElectron.classification() == GsfElectron::GOLDEN)
2520  h_ele_eta_golden->Fill(std::abs(bestGsfElectron.eta()));
2521  if (bestGsfElectron.classification() == GsfElectron::BIGBREM)
2522  h_ele_eta_bbrem->Fill(std::abs(bestGsfElectron.eta()));
2523  //if (bestGsfElectron.classification() == GsfElectron::OLDNARROW) h_ele_eta_narrow ->Fill(std::abs(bestGsfElectron.eta()));
2524  if (bestGsfElectron.classification() == GsfElectron::SHOWERING)
2525  h_ele_eta_shower->Fill(std::abs(bestGsfElectron.eta()));
2526 
2527  //fbrem
2528  double fbrem_mean = 0.;
2529  if (!readAOD_) // track extra does not exist in AOD
2530  fbrem_mean =
2531  1. - bestGsfElectron.gsfTrack()->outerMomentum().R() / bestGsfElectron.gsfTrack()->innerMomentum().R();
2532  double fbrem_mode = bestGsfElectron.fbrem();
2533  h_ele_fbrem->Fill(fbrem_mode);
2534  h_ele_fbremVsEta_mode->Fill(bestGsfElectron.eta(), fbrem_mode);
2535  if (!readAOD_) // track extra does not exist in AOD
2536  h_ele_fbremVsEta_mean->Fill(bestGsfElectron.eta(), fbrem_mean);
2537 
2538  if (bestGsfElectron.classification() == GsfElectron::GOLDEN)
2539  h_ele_PinVsPoutGolden_mode->Fill(bestGsfElectron.trackMomentumOut().R(),
2540  bestGsfElectron.trackMomentumAtVtx().R());
2541  if (bestGsfElectron.classification() == GsfElectron::SHOWERING)
2542  h_ele_PinVsPoutShowering_mode->Fill(bestGsfElectron.trackMomentumOut().R(),
2543  bestGsfElectron.trackMomentumAtVtx().R());
2544  if (!readAOD_) // track extra does not exist in AOD
2545  if (bestGsfElectron.classification() == GsfElectron::GOLDEN)
2546  h_ele_PinVsPoutGolden_mean->Fill(bestGsfElectron.gsfTrack()->outerMomentum().R(),
2547  bestGsfElectron.gsfTrack()->innerMomentum().R());
2548  if (!readAOD_) // track extra does not exist in AOD
2549  if (bestGsfElectron.classification() == GsfElectron::SHOWERING)
2550  h_ele_PinVsPoutShowering_mean->Fill(bestGsfElectron.gsfTrack()->outerMomentum().R(),
2551  bestGsfElectron.gsfTrack()->innerMomentum().R());
2552  if (bestGsfElectron.classification() == GsfElectron::GOLDEN)
2553  h_ele_PtinVsPtoutGolden_mode->Fill(bestGsfElectron.trackMomentumOut().Rho(),
2554  bestGsfElectron.trackMomentumAtVtx().Rho());
2555  if (bestGsfElectron.classification() == GsfElectron::SHOWERING)
2556  h_ele_PtinVsPtoutShowering_mode->Fill(bestGsfElectron.trackMomentumOut().Rho(),
2557  bestGsfElectron.trackMomentumAtVtx().Rho());
2558  if (!readAOD_) // track extra does not exist in AOD
2559  if (bestGsfElectron.classification() == GsfElectron::GOLDEN)
2560  h_ele_PtinVsPtoutGolden_mean->Fill(bestGsfElectron.gsfTrack()->outerMomentum().Rho(),
2561  bestGsfElectron.gsfTrack()->innerMomentum().Rho());
2562  if (!readAOD_) // track extra does not exist in AOD
2563  if (bestGsfElectron.classification() == GsfElectron::SHOWERING)
2564  h_ele_PtinVsPtoutShowering_mean->Fill(bestGsfElectron.gsfTrack()->outerMomentum().Rho(),
2565  bestGsfElectron.gsfTrack()->innerMomentum().Rho());
2566 
2567  h_ele_mva->Fill(bestGsfElectron.mva_e_pi());
2568  if (bestGsfElectron.ecalDrivenSeed())
2569  h_ele_provenance->Fill(1.);
2570  if (bestGsfElectron.trackerDrivenSeed())
2571  h_ele_provenance->Fill(-1.);
2572  if (bestGsfElectron.trackerDrivenSeed() || bestGsfElectron.ecalDrivenSeed())
2573  h_ele_provenance->Fill(0.);
2574  if (bestGsfElectron.trackerDrivenSeed() && !bestGsfElectron.ecalDrivenSeed())
2575  h_ele_provenance->Fill(-2.);
2576  if (!bestGsfElectron.trackerDrivenSeed() && bestGsfElectron.ecalDrivenSeed())
2577  h_ele_provenance->Fill(2.);
2578 
2579  h_ele_tkSumPt_dr03->Fill(bestGsfElectron.dr03TkSumPt());
2580  h_ele_ecalRecHitSumEt_dr03->Fill(bestGsfElectron.dr03EcalRecHitSumEt());
2583  h_ele_tkSumPt_dr04->Fill(bestGsfElectron.dr04TkSumPt());
2584  h_ele_ecalRecHitSumEt_dr04->Fill(bestGsfElectron.dr04EcalRecHitSumEt());
2587 
2588  } // gsf electron found
2589 
2590  // } // matching object found
2591 
2592  // }
2593 
2594  } // loop overmatching object
2595 
2596  h_matchingObjectNum->Fill(matchingObjectNum);
2597 }
GsfElectronMCFakeAnalyzer::h_ele_EseedOP_barrel
TH1F * h_ele_EseedOP_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:277
reco::GsfElectron::deltaEtaSeedClusterTrackAtCalo
float deltaEtaSeedClusterTrackAtCalo() const
Definition: GsfElectron.h:233
GsfElectronMCFakeAnalyzer::h_matchingObjectPhi
TH1F * h_matchingObjectPhi
Definition: GsfElectronMCFakeAnalyzer.cc:138
GsfElectronMCFakeAnalyzer::nbindetamatch
int nbindetamatch
Definition: GsfElectronMCFakeAnalyzer.cc:104
GsfElectronMCFakeAnalyzer::h_ele_foundHits
TH1F * h_ele_foundHits
Definition: GsfElectronMCFakeAnalyzer.cc:216
GsfElectronMCFakeAnalyzer::histSclEoEmatchingObject_endcaps
TH1F * histSclEoEmatchingObject_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:189
GsfElectronMCFakeAnalyzer::nbineta2D
int nbineta2D
Definition: GsfElectronMCFakeAnalyzer.cc:98
GsfElectronMCFakeAnalyzer::h_ele_dEtaClVsEta_propOut
TH2F * h_ele_dEtaClVsEta_propOut
Definition: GsfElectronMCFakeAnalyzer.cc:328
reco::GsfElectron::isEE
bool isEE() const
Definition: GsfElectron.h:336
GsfElectronMCFakeAnalyzer::nbinpteff
int nbinpteff
Definition: GsfElectronMCFakeAnalyzer.cc:91
reco::GsfElectron::dr04EcalRecHitSumEt
float dr04EcalRecHitSumEt() const
Definition: GsfElectron.h:542
GenJetCollection.h
GsfElectronMCFakeAnalyzer::h_ele_HoE_barrel
TH1F * h_ele_HoE_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:375
GsfElectronMCFakeAnalyzer::h_ele_PinVsPoutGolden_mode
TH2F * h_ele_PinVsPoutGolden_mode
Definition: GsfElectronMCFakeAnalyzer.cc:389
GsfElectronMCFakeAnalyzer::h_ele_EoPoutVsEta
TH2F * h_ele_EoPoutVsEta
Definition: GsfElectronMCFakeAnalyzer.cc:291
GsfElectronMCFakeAnalyzer::seedQ
float seedQ[10]
Definition: GsfElectronMCFakeAnalyzer.cc:74
GsfElectronMCFakeAnalyzer::h_ele_dPhiEleClVsEta_propOut
TH2F * h_ele_dPhiEleClVsEta_propOut
Definition: GsfElectronMCFakeAnalyzer.cc:355
Handle.h
GsfElectronMCFakeAnalyzer::h_ele_matchingObjectPhi_matched
TH1F * h_ele_matchingObjectPhi_matched
Definition: GsfElectronMCFakeAnalyzer.cc:162
GsfElectronMCFakeAnalyzer::h_ele_EoPoutVsE
TH2F * h_ele_EoPoutVsE
Definition: GsfElectronMCFakeAnalyzer.cc:293
GsfElectronMCFakeAnalyzer::h_ele_PoPmatchingObject_endcaps
TH1F * h_ele_PoPmatchingObject_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:240
GsfElectronMCFakeAnalyzer::phimax
double phimax
Definition: GsfElectronMCFakeAnalyzer.cc:111
GsfElectronMCFakeAnalyzer::histSclEoEmatchingObjectGolden_barrel
TH1F * histSclEoEmatchingObjectGolden_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:397
EDAnalyzer.h
GsfElectronMCFakeAnalyzer::h_ele_dPhiCl_propOut_eg_endcaps
TH1F * h_ele_dPhiCl_propOut_eg_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:336
reco::GsfElectron::dr03TkSumPt
float dr03TkSumPt() const
Definition: GsfElectron.h:528
reco::GsfElectron::isEB
bool isEB() const
Definition: GsfElectron.h:335
GsfElectronMCFakeAnalyzer::h_ele_seed_dphi2VsEta_
TH2F * h_ele_seed_dphi2VsEta_
Definition: GsfElectronMCFakeAnalyzer.cc:360
reco::GsfElectron::scE1x5
float scE1x5() const
Definition: GsfElectron.h:472
GsfElectronMCFakeAnalyzer::h_ele_PinVsPoutGolden_mean
TH2F * h_ele_PinVsPoutGolden_mean
Definition: GsfElectronMCFakeAnalyzer.cc:391
reco::GsfElectron::gsfTrack
GsfTrackRef gsfTrack() const override
reference to a GsfTrack
Definition: GsfElectron.h:163
MessageLogger.h
reco::GsfElectron::trackMomentumOut
math::XYZVectorF trackMomentumOut() const
Definition: GsfElectron.h:277
GsfElectronMCFakeAnalyzer::h_ele_tkSumPt_dr04
TH1F * h_ele_tkSumPt_dr04
Definition: GsfElectronMCFakeAnalyzer.cc:409
GsfElectronMCFakeAnalyzer::histSclE5x5_barrel_
TH1F * histSclE5x5_barrel_
Definition: GsfElectronMCFakeAnalyzer.cc:209
GsfElectronMCFakeAnalyzer::h_ele_E2mnE1vsMee_all
TH2F * h_ele_E2mnE1vsMee_all
Definition: GsfElectronMCFakeAnalyzer.cc:156
GsfElectronMCFakeAnalyzer::hoemin
double hoemin
Definition: GsfElectronMCFakeAnalyzer.cc:127
GsfElectronMCFakeAnalyzer::~GsfElectronMCFakeAnalyzer
~GsfElectronMCFakeAnalyzer() override
Definition: GsfElectronMCFakeAnalyzer.cc:479
GsfElectronMCFakeAnalyzer::h_ele_chi2_barrel
TH1F * h_ele_chi2_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:229
GsfElectronMCFakeAnalyzer::h_ele_dPhiSc_propVtx_eg_endcaps
TH1F * h_ele_dPhiSc_propVtx_eg_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:318
GsfElectronMCFakeAnalyzer::h_ele_EeleOPoutVsPhi
TH2F * h_ele_EeleOPoutVsPhi
Definition: GsfElectronMCFakeAnalyzer.cc:301
TrackerGeometry.h
GsfElectronMCFakeAnalyzer::h_ele_lostHitsVsPt
TH2F * h_ele_lostHitsVsPt
Definition: GsfElectronMCFakeAnalyzer.cc:227
GsfElectronMCFakeAnalyzer::h_ele_foundHitsVsPt
TH2F * h_ele_foundHitsVsPt
Definition: GsfElectronMCFakeAnalyzer.cc:221
GsfElectronMCFakeAnalyzer::h_ele_vertexTIPVsPhi
TH2F * h_ele_vertexTIPVsPhi
Definition: GsfElectronMCFakeAnalyzer.cc:182
GsfElectronMCFakeAnalyzer::h_ele_classes
TH1F * h_ele_classes
Definition: GsfElectronMCFakeAnalyzer.cc:367
GsfElectronMCFakeAnalyzer::h_ele_ambiguousTracksVsEta
TH2F * h_ele_ambiguousTracksVsEta
Definition: GsfElectronMCFakeAnalyzer.cc:213
GsfElectronMCFakeAnalyzer::h_ele_EtaMnEtamatchingObjectVsPhi
TH2F * h_ele_EtaMnEtamatchingObjectVsPhi
Definition: GsfElectronMCFakeAnalyzer.cc:243
GsfElectronMCFakeAnalyzer::h_ele_dEtaScVsPt_propVtx
TH2F * h_ele_dEtaScVsPt_propVtx
Definition: GsfElectronMCFakeAnalyzer.cc:312
GsfElectronMCFakeAnalyzer::h_ele_dPhiCl_propOut_eg
TH1F * h_ele_dPhiCl_propOut_eg
Definition: GsfElectronMCFakeAnalyzer.cc:334
GsfElectronMCFakeAnalyzer::h_ele_EeleOPout_eg_endcaps
TH1F * h_ele_EeleOPout_eg_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:299
GsfElectronMCFakeAnalyzer::h_ele_dEtaEleCl_propOut
TH1F * h_ele_dEtaEleCl_propOut
Definition: GsfElectronMCFakeAnalyzer.cc:340
ESHandle.h
GsfElectronMCFakeAnalyzer::h_ele_dPhiEleCl_propOut_barrel
TH1F * h_ele_dPhiEleCl_propOut_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:350
GsfElectronMCFakeAnalyzer::nbineop2D
int nbineop2D
Definition: GsfElectronMCFakeAnalyzer.cc:120
reco::GsfElectron::deltaPhiSuperClusterTrackAtVtx
float deltaPhiSuperClusterTrackAtVtx() const
Definition: GsfElectron.h:235
GsfElectronMCFakeAnalyzer::h_ele_EoPoutVsPhi
TH2F * h_ele_EoPoutVsPhi
Definition: GsfElectronMCFakeAnalyzer.cc:292
GsfElectronMCFakeAnalyzer::superclusterEnergy
float superclusterEnergy[10]
Definition: GsfElectronMCFakeAnalyzer.cc:73
reco::GsfElectron::parentSuperCluster
virtual SuperClusterRef parentSuperCluster() const
Definition: GsfElectron.h:167
GsfElectronMCFakeAnalyzer::beginJob
void beginJob() override
Definition: GsfElectronMCFakeAnalyzer.cc:486
GsfElectronMCFakeAnalyzer::h_ele_vertexPt_all
TH1F * h_ele_vertexPt_all
Definition: GsfElectronMCFakeAnalyzer.cc:152
GsfElectronMCFakeAnalyzer::h_ele_eta_bbrem
TH1F * h_ele_eta_bbrem
Definition: GsfElectronMCFakeAnalyzer.cc:370
GsfElectronMCFakeAnalyzer::h_ele_dPhiEleClVsPt_propOut
TH2F * h_ele_dPhiEleClVsPt_propOut
Definition: GsfElectronMCFakeAnalyzer.cc:357
GsfElectronMCFakeAnalyzer::pmax
double pmax
Definition: GsfElectronMCFakeAnalyzer.cc:88
GsfElectronMCFakeAnalyzer::h_ele_ecalRecHitSumEt_dr03
TH1F * h_ele_ecalRecHitSumEt_dr03
Definition: GsfElectronMCFakeAnalyzer.cc:406
GsfElectronMCFakeAnalyzer::histSclE1x5_endcaps_
TH1F * histSclE1x5_endcaps_
Definition: GsfElectronMCFakeAnalyzer.cc:204
GsfElectronMCFakeAnalyzer::h_ele_fbrem
TH1F * h_ele_fbrem
Definition: GsfElectronMCFakeAnalyzer.cc:385
GsfElectronMCFakeAnalyzer::h_ele_seed_drz2VsPt_
TH2F * h_ele_seed_drz2VsPt_
Definition: GsfElectronMCFakeAnalyzer.cc:364
GsfElectronMCFakeAnalyzer::h_ele_EseedOP_eg_barrel
TH1F * h_ele_EseedOP_eg_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:280
GsfElectronMCFakeAnalyzer::h_ele_dPhiClVsEta_propOut
TH2F * h_ele_dPhiClVsEta_propOut
Definition: GsfElectronMCFakeAnalyzer.cc:337
GsfElectronMCFakeAnalyzer::detamax
double detamax
Definition: GsfElectronMCFakeAnalyzer.cc:103
reco::GsfElectron::isEERingGap
bool isEERingGap() const
Definition: GsfElectron.h:344
GsfElectronMCFakeAnalyzer::mcEta
float mcEta[10]
Definition: GsfElectronMCFakeAnalyzer.cc:72
GsfElectronMCFakeAnalyzer::h_ele_foundHitsVsEta
TH2F * h_ele_foundHitsVsEta
Definition: GsfElectronMCFakeAnalyzer.cc:219
GsfElectronMCFakeAnalyzer::h_ele_hcalDepth1TowerSumEt_dr04
TH1F * h_ele_hcalDepth1TowerSumEt_dr04
Definition: GsfElectronMCFakeAnalyzer.cc:411
GsfElectronMCFakeAnalyzer::h_ele_lostHitsVsPhi
TH2F * h_ele_lostHitsVsPhi
Definition: GsfElectronMCFakeAnalyzer.cc:226
GsfElectronMCFakeAnalyzer::h_ele_outerPtVsPhi_mode
TH2F * h_ele_outerPtVsPhi_mode
Definition: GsfElectronMCFakeAnalyzer.cc:265
edm
HLT enums.
Definition: AlignableModifier.h:19
reco::GsfElectron::dr04HcalDepth1TowerSumEt
float dr04HcalDepth1TowerSumEt() const
Definition: GsfElectron.h:543
GsfElectronMCFakeAnalyzer::h_ele_dEtaEleCl_propOut_eg
TH1F * h_ele_dEtaEleCl_propOut_eg
Definition: GsfElectronMCFakeAnalyzer.cc:343
GsfElectronMCFakeAnalyzer::h_ele_HoE_endcaps
TH1F * h_ele_HoE_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:376
GsfElectronMCFakeAnalyzer::h_ele_tkSumPt_dr03
TH1F * h_ele_tkSumPt_dr03
Definition: GsfElectronMCFakeAnalyzer.cc:405
GsfElectronMCFakeAnalyzer::h_ele_PtinVsPtoutGolden_mean
TH2F * h_ele_PtinVsPtoutGolden_mean
Definition: GsfElectronMCFakeAnalyzer.cc:395
GsfElectronMCFakeAnalyzer::h_ele_dEtaCl_propOut_barrel
TH1F * h_ele_dEtaCl_propOut_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:323
GsfElectronMCFakeAnalyzer::h_ele_foundHitsVsPhi
TH2F * h_ele_foundHitsVsPhi
Definition: GsfElectronMCFakeAnalyzer.cc:220
GsfElectronMCFakeAnalyzer::h_ele_dEtaEleClVsEta_propOut
TH2F * h_ele_dEtaEleClVsEta_propOut
Definition: GsfElectronMCFakeAnalyzer.cc:346
GsfElectronMCFakeAnalyzer::dphimax
double dphimax
Definition: GsfElectronMCFakeAnalyzer.cc:114
gather_cfg.cout
cout
Definition: gather_cfg.py:144
GsfElectronMCFakeAnalyzer::h_ele_dPhiSc_propVtx_eg_barrel
TH1F * h_ele_dPhiSc_propVtx_eg_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:317
GsfElectronMCFakeAnalyzer::h_ele_EseedOP_all
TH1F * h_ele_EseedOP_all
Definition: GsfElectronMCFakeAnalyzer.cc:142
GsfElectronMCFakeAnalyzer::h_ele_dEtaSc_propVtx_eg_endcaps
TH1F * h_ele_dEtaSc_propVtx_eg_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:309
GsfElectronMCFakeAnalyzer::eopmaxsht
double eopmaxsht
Definition: GsfElectronMCFakeAnalyzer.cc:122
HLT_FULL_cff.InputTag
InputTag
Definition: HLT_FULL_cff.py:89281
reco::GsfElectron::scE2x5Max
float scE2x5Max() const
Definition: GsfElectron.h:473
GsfElectronMCFakeAnalyzer::h_ele_lostHits
TH1F * h_ele_lostHits
Definition: GsfElectronMCFakeAnalyzer.cc:222
GsfElectronMCFakeAnalyzer::mcPt
float mcPt[10]
Definition: GsfElectronMCFakeAnalyzer.cc:72
GsfElectronMCFakeAnalyzer::h_ele_EtaMnEtamatchingObjectVsEta
TH2F * h_ele_EtaMnEtamatchingObjectVsEta
Definition: GsfElectronMCFakeAnalyzer.cc:242
GsfElectronMCFakeAnalyzer::detamatchmin
double detamatchmin
Definition: GsfElectronMCFakeAnalyzer.cc:106
GsfElectronMCFakeAnalyzer::h_ele_chi2
TH1F * h_ele_chi2
Definition: GsfElectronMCFakeAnalyzer.cc:228
GsfElectronMCFakeAnalyzer::meemax
double meemax
Definition: GsfElectronMCFakeAnalyzer.cc:125
GsfElectronMCFakeAnalyzer::h_ele_dEtaEleCl_propOut_endcaps
TH1F * h_ele_dEtaEleCl_propOut_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:342
GsfElectronMCFakeAnalyzer::nbinp
int nbinp
Definition: GsfElectronMCFakeAnalyzer.cc:86
GsfElectronMCFakeAnalyzer::h_ele_dPhiSc_propVtx_all
TH1F * h_ele_dPhiSc_propVtx_all
Definition: GsfElectronMCFakeAnalyzer.cc:146
GsfElectronMCFakeAnalyzer::h_ele_vertexZ
TH1F * h_ele_vertexZ
Definition: GsfElectronMCFakeAnalyzer.cc:179
GsfElectronMCFakeAnalyzer::maxPt_
double maxPt_
Definition: GsfElectronMCFakeAnalyzer.cc:76
GsfElectronMCFakeAnalyzer::nbindphi
int nbindphi
Definition: GsfElectronMCFakeAnalyzer.cc:112
GsfElectronMCFakeAnalyzer::tree_
TTree * tree_
Definition: GsfElectronMCFakeAnalyzer.cc:81
GsfElectronMCFakeAnalyzer::h_ele_EseedOP
TH1F * h_ele_EseedOP
Definition: GsfElectronMCFakeAnalyzer.cc:276
GsfElectronMCFakeAnalyzer::histSclSigEtaEta_
TH1F * histSclSigEtaEta_
Definition: GsfElectronMCFakeAnalyzer.cc:196
GsfElectronMCFakeAnalyzer::h_ele_EtaMnEtamatchingObject
TH1F * h_ele_EtaMnEtamatchingObject
Definition: GsfElectronMCFakeAnalyzer.cc:241
GsfElectronMCFakeAnalyzer::h_ele_outerPtVsPt_mode
TH2F * h_ele_outerPtVsPt_mode
Definition: GsfElectronMCFakeAnalyzer.cc:266
GsfElectronMCFakeAnalyzer::nbindeta
int nbindeta
Definition: GsfElectronMCFakeAnalyzer.cc:101
GsfElectronMCFakeAnalyzer::etamax
double etamax
Definition: GsfElectronMCFakeAnalyzer.cc:100
GsfElectronMCFakeAnalyzer::h_ele_hcalDepth1TowerSumEt_dr03
TH1F * h_ele_hcalDepth1TowerSumEt_dr03
Definition: GsfElectronMCFakeAnalyzer.cc:407
GsfElectronMCFakeAnalyzer::histSclEtVsEta_
TH2F * histSclEtVsEta_
Definition: GsfElectronMCFakeAnalyzer.cc:191
GsfElectronMCFakeAnalyzer::nbinphi2D
int nbinphi2D
Definition: GsfElectronMCFakeAnalyzer.cc:109
reco::GsfElectron::deltaPhiSeedClusterTrackAtCalo
float deltaPhiSeedClusterTrackAtCalo() const
Definition: GsfElectron.h:236
GsfElectronMCFakeAnalyzer::h_ele_dEtaSc_propVtx
TH1F * h_ele_dEtaSc_propVtx
Definition: GsfElectronMCFakeAnalyzer.cc:304
GsfElectronMCFakeAnalyzer::h_ele_EseedOPVsEta
TH2F * h_ele_EseedOPVsEta
Definition: GsfElectronMCFakeAnalyzer.cc:282
GsfElectronMCFakeAnalyzer::h_ele_dEtaEleCl_propOut_eg_endcaps
TH1F * h_ele_dEtaEleCl_propOut_eg_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:345
GsfElectronMCFakeAnalyzer::h_ele_EoPout_eg_endcaps
TH1F * h_ele_EoPout_eg_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:290
EDAnalyzer.h
GsfElectronMCFakeAnalyzer::h_ele_dPhiCl_propOut
TH1F * h_ele_dPhiCl_propOut
Definition: GsfElectronMCFakeAnalyzer.cc:331
GsfElectronMCFakeAnalyzer::h_ele_PinMnPoutVsChi2_mode
TH2F * h_ele_PinMnPoutVsChi2_mode
Definition: GsfElectronMCFakeAnalyzer.cc:257
GsfElectronMCFakeAnalyzer::nbindetamatch2D
int nbindetamatch2D
Definition: GsfElectronMCFakeAnalyzer.cc:105
reco::LeafCandidate::pt
double pt() const final
transverse momentum
Definition: LeafCandidate.h:146
GsfElectronMCFakeAnalyzer::eopmax
double eopmax
Definition: GsfElectronMCFakeAnalyzer.cc:121
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:45
edm::LogInfo
Log< level::Info, false > LogInfo
Definition: MessageLogger.h:125
edm::one::EDAnalyzer
Definition: EDAnalyzer.h:30
GsfElectronMCFakeAnalyzer::h_ele_vertexTIPVsEta
TH2F * h_ele_vertexTIPVsEta
Definition: GsfElectronMCFakeAnalyzer.cc:181
GsfElectronMCFakeAnalyzer::nbineop
int nbineop
Definition: GsfElectronMCFakeAnalyzer.cc:119
GsfElectronMCFakeAnalyzer::h_ele_seed_drz2_
TH1F * h_ele_seed_drz2_
Definition: GsfElectronMCFakeAnalyzer.cc:362
GsfElectronMCFakeAnalyzer::dphimatchmax
double dphimatchmax
Definition: GsfElectronMCFakeAnalyzer.cc:118
GsfElectronMCFakeAnalyzer::h_matchingObjectNum
TH1F * h_matchingObjectNum
Definition: GsfElectronMCFakeAnalyzer.cc:132
GsfElectronMCFakeAnalyzer::GsfElectronMCFakeAnalyzer
GsfElectronMCFakeAnalyzer(const edm::ParameterSet &conf)
Definition: GsfElectronMCFakeAnalyzer.cc:420
GsfElectronMCFakeAnalyzer::h_ele_PinMnPoutVsEta_mode
TH2F * h_ele_PinMnPoutVsEta_mode
Definition: GsfElectronMCFakeAnalyzer.cc:253
GsfElectronMCFakeAnalyzer::readAOD_
bool readAOD_
Definition: GsfElectronMCFakeAnalyzer.cc:65
reco::GsfElectron::hadronicOverEm
float hadronicOverEm() const
Definition: GsfElectron.h:475
electronIsolatorFromEffectiveArea_cfi.gsfElectrons
gsfElectrons
Definition: electronIsolatorFromEffectiveArea_cfi.py:4
edm::Handle< reco::GsfElectronCollection >
GsfElectronMCFakeAnalyzer::h_ele_EoPout_eg_barrel
TH1F * h_ele_EoPout_eg_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:289
GsfElectronMCFakeAnalyzer::etamin
double etamin
Definition: GsfElectronMCFakeAnalyzer.cc:99
reco::GsfElectron::fbrem
float fbrem() const
Definition: GsfElectron.h:732
GsfElectronMCFakeAnalyzer::h_matchingObjectZ
TH1F * h_matchingObjectZ
Definition: GsfElectronMCFakeAnalyzer.cc:139
GsfElectronMCFakeAnalyzer::h_ele_PtinVsPtoutShowering_mean
TH2F * h_ele_PtinVsPtoutShowering_mean
Definition: GsfElectronMCFakeAnalyzer.cc:396
GsfElectronMCFakeAnalyzer::h_ele_dEtaCl_propOut_endcaps
TH1F * h_ele_dEtaCl_propOut_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:324
GsfElectronMCFakeAnalyzer::h_ele_HoEVsEta
TH2F * h_ele_HoEVsEta
Definition: GsfElectronMCFakeAnalyzer.cc:381
GsfElectronMCFakeAnalyzer::h_ele_dEtaEleClVsPt_propOut
TH2F * h_ele_dEtaEleClVsPt_propOut
Definition: GsfElectronMCFakeAnalyzer.cc:348
ElectronSeedFwd.h
edm::Ref< SuperClusterCollection >
reco::GsfElectron::mva_e_pi
float mva_e_pi() const
Definition: GsfElectron.h:672
GsfElectronMCFakeAnalyzer::h_ele_PtinVsPtoutShowering_mode
TH2F * h_ele_PtinVsPtoutShowering_mode
Definition: GsfElectronMCFakeAnalyzer.cc:394
GsfElectronMCFakeAnalyzer::h_ele_lostHits_barrel
TH1F * h_ele_lostHits_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:223
GsfElectronMCFakeAnalyzer::h_ele_vertexTIPVsPt
TH2F * h_ele_vertexTIPVsPt
Definition: GsfElectronMCFakeAnalyzer.cc:183
GsfElectronMCFakeAnalyzer::superclusterEt
float superclusterEt[10]
Definition: GsfElectronMCFakeAnalyzer.cc:73
GsfElectronMCFakeAnalyzer::analyze
void analyze(const edm::Event &e, const edm::EventSetup &c) override
Definition: GsfElectronMCFakeAnalyzer.cc:2106
GsfElectronMCFakeAnalyzer::h_ele_PhiMnPhimatchingObjectVsEta
TH2F * h_ele_PhiMnPhimatchingObjectVsEta
Definition: GsfElectronMCFakeAnalyzer.cc:247
GsfElectronMCFakeAnalyzer::h_ele_EoPout
TH1F * h_ele_EoPout
Definition: GsfElectronMCFakeAnalyzer.cc:285
GsfElectronMCFakeAnalyzer::nbinlhits
int nbinlhits
Definition: GsfElectronMCFakeAnalyzer.cc:95
GsfElectronMCFakeAnalyzer::nbinpt
int nbinpt
Definition: GsfElectronMCFakeAnalyzer.cc:89
GsfElectronMCFakeAnalyzer::h_ele_outerPVsEta_mode
TH2F * h_ele_outerPVsEta_mode
Definition: GsfElectronMCFakeAnalyzer.cc:261
GsfElectronMCFakeAnalyzer::h_ele_lostHits_endcaps
TH1F * h_ele_lostHits_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:224
fileCollector.seed
seed
Definition: fileCollector.py:127
GsfElectronMCFakeAnalyzer::histSclE5x5_endcaps_
TH1F * histSclE5x5_endcaps_
Definition: GsfElectronMCFakeAnalyzer.cc:210
GsfElectronMCFakeAnalyzer::h_ele_dEtaScVsEta_propVtx
TH2F * h_ele_dEtaScVsEta_propVtx
Definition: GsfElectronMCFakeAnalyzer.cc:310
GsfElectronMCFakeAnalyzer::h_ele_dPhiCl_propOut_endcaps
TH1F * h_ele_dPhiCl_propOut_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:333
edm::InputTag::label
std::string const & label() const
Definition: InputTag.h:36
GsfElectronMCFakeAnalyzer::h_ele_eta_shower
TH1F * h_ele_eta_shower
Definition: GsfElectronMCFakeAnalyzer.cc:372
GsfElectronMCFakeAnalyzer::histSclE2x5max_
TH1F * histSclE2x5max_
Definition: GsfElectronMCFakeAnalyzer.cc:205
MakerMacros.h
cms::cuda::bs
bs
Definition: HistoContainer.h:127
reco::GsfElectron::ambiguousGsfTracksSize
GsfTrackRefVector::size_type ambiguousGsfTracksSize() const
Definition: GsfElectron.h:689
GsfElectronMCFakeAnalyzer::nbinfhits
int nbinfhits
Definition: GsfElectronMCFakeAnalyzer.cc:93
GsfElectronMCFakeAnalyzer::h_ele_ambiguousTracks
TH1F * h_ele_ambiguousTracks
Definition: GsfElectronMCFakeAnalyzer.cc:212
GsfElectronMCFakeAnalyzer::h_ele_dPhiSc_propVtx_eg
TH1F * h_ele_dPhiSc_propVtx_eg
Definition: GsfElectronMCFakeAnalyzer.cc:316
GsfElectronMCFakeAnalyzer::h_ele_dEtaSc_propVtx_endcaps
TH1F * h_ele_dEtaSc_propVtx_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:306
trigger::size_type
uint16_t size_type
Definition: TriggerTypeDefs.h:18
GsfElectronMCFakeAnalyzer::h_ele_dPhiClVsPt_propOut
TH2F * h_ele_dPhiClVsPt_propOut
Definition: GsfElectronMCFakeAnalyzer.cc:339
GsfElectronMCFakeAnalyzer::nbinmee
int nbinmee
Definition: GsfElectronMCFakeAnalyzer.cc:123
DEFINE_FWK_MODULE
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:16
BeamSpot.h
GsfElectronMCFakeAnalyzer::h_ele_PoPmatchingObjectVsPhi
TH2F * h_ele_PoPmatchingObjectVsPhi
Definition: GsfElectronMCFakeAnalyzer.cc:237
GsfElectronMCFakeAnalyzer::detamatchmax
double detamatchmax
Definition: GsfElectronMCFakeAnalyzer.cc:107
GsfElectronMCFakeAnalyzer::theMagField
edm::ESHandle< MagneticField > theMagField
Definition: GsfElectronMCFakeAnalyzer.cc:70
GsfElectronMCFakeAnalyzer::h_ele_dEtaClVsPt_propOut
TH2F * h_ele_dEtaClVsPt_propOut
Definition: GsfElectronMCFakeAnalyzer.cc:330
GsfElectronMCFakeAnalyzer::histSclEta_
TH1F * histSclEta_
Definition: GsfElectronMCFakeAnalyzer.cc:194
GsfElectronMCFakeAnalyzer::h_ele_EoPVsPhi
TH2F * h_ele_EoPVsPhi
Definition: GsfElectronMCFakeAnalyzer.cc:274
GsfElectronMCFakeAnalyzer::nbinp2D
int nbinp2D
Definition: GsfElectronMCFakeAnalyzer.cc:87
GsfElectronMCFakeAnalyzer::h_ele_eta
TH1F * h_ele_eta
Definition: GsfElectronMCFakeAnalyzer.cc:368
GsfElectronMCFakeAnalyzer::h_ele_EseedOP_eg_endcaps
TH1F * h_ele_EseedOP_eg_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:281
reco::LeafCandidate::py
double py() const final
y coordinate of momentum vector
Definition: LeafCandidate.h:142
GsfElectronMCFakeAnalyzer::h_ele_dPhiEleCl_propOut_endcaps
TH1F * h_ele_dPhiEleCl_propOut_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:351
GsfElectronMCFakeAnalyzer::h_ele_outerP_mode
TH1F * h_ele_outerP_mode
Definition: GsfElectronMCFakeAnalyzer.cc:260
GsfElectronMCFakeAnalyzer::h_ele_outerPt_mode
TH1F * h_ele_outerPt_mode
Definition: GsfElectronMCFakeAnalyzer.cc:263
GsfElectronMCFakeAnalyzer::h_ele_PhiMnPhimatchingObjectVsPt
TH2F * h_ele_PhiMnPhimatchingObjectVsPt
Definition: GsfElectronMCFakeAnalyzer.cc:249
GsfElectronMCFakeAnalyzer::histNum_
TH1F * histNum_
Definition: GsfElectronMCFakeAnalyzer.cc:185
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
GsfElectronMCFakeAnalyzer::lhitsmax
double lhitsmax
Definition: GsfElectronMCFakeAnalyzer.cc:96
reco::GsfElectron::trackMomentumAtVtx
math::XYZVectorF trackMomentumAtVtx() const
Definition: GsfElectron.h:275
reco::BeamSpot
Definition: BeamSpot.h:21
reco::GsfElectron::ecalDrivenSeed
bool ecalDrivenSeed() const
Definition: GsfElectron.h:165
GsfElectronMCFakeAnalyzer::h_ele_PoPmatchingObjectVsPt
TH2F * h_ele_PoPmatchingObjectVsPt
Definition: GsfElectronMCFakeAnalyzer.cc:238
GsfElectronMCFakeAnalyzer::h_ele_EoverP_all
TH1F * h_ele_EoverP_all
Definition: GsfElectronMCFakeAnalyzer.cc:141
edm::ESHandle< TrackerGeometry >
GsfElectronMCFakeAnalyzer::h_ele_dPhiEleCl_propOut_eg_barrel
TH1F * h_ele_dPhiEleCl_propOut_eg_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:353
reco::GsfElectron::isEEDeeGap
bool isEEDeeGap() const
Definition: GsfElectron.h:343
GsfElectronMCFakeAnalyzer::h_ele_mva
TH1F * h_ele_mva
Definition: GsfElectronMCFakeAnalyzer.cc:402
GsfElectronMCFakeAnalyzer::mcEnergy
float mcEnergy[10]
Definition: GsfElectronMCFakeAnalyzer.cc:72
GsfElectronMCFakeAnalyzer::h_ele_foundHits_barrel
TH1F * h_ele_foundHits_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:217
GsfElectronMCFakeAnalyzer::seedPt
float seedPt[10]
Definition: GsfElectronMCFakeAnalyzer.cc:74
GsfElectronMCFakeAnalyzer::h_ele_EseedOPVsPhi
TH2F * h_ele_EseedOPVsPhi
Definition: GsfElectronMCFakeAnalyzer.cc:283
GsfElectronMCFakeAnalyzer::h_ele_EoP
TH1F * h_ele_EoP
Definition: GsfElectronMCFakeAnalyzer.cc:267
GsfElectronMCFakeAnalyzer::h_ele_HoE_eg
TH1F * h_ele_HoE_eg
Definition: GsfElectronMCFakeAnalyzer.cc:377
GsfElectronMCFakeAnalyzer::meemin
double meemin
Definition: GsfElectronMCFakeAnalyzer.cc:124
reco::GsfElectron
Definition: GsfElectron.h:34
GsfElectronMCFakeAnalyzer::histSclE2x5max_barrel_
TH1F * histSclE2x5max_barrel_
Definition: GsfElectronMCFakeAnalyzer.cc:206
GsfElectron.h
GsfElectronMCFakeAnalyzer::h_ele_dPhiScVsPt_propVtx
TH2F * h_ele_dPhiScVsPt_propVtx
Definition: GsfElectronMCFakeAnalyzer.cc:321
GsfElectronMCFakeAnalyzer::h_ele_EoPout_eg
TH1F * h_ele_EoPout_eg
Definition: GsfElectronMCFakeAnalyzer.cc:288
GsfElectronMCFakeAnalyzer::nbinxyz
int nbinxyz
Definition: GsfElectronMCFakeAnalyzer.cc:85
GsfElectronMCFakeAnalyzer::h_ele_dPhiScVsPhi_propVtx
TH2F * h_ele_dPhiScVsPhi_propVtx
Definition: GsfElectronMCFakeAnalyzer.cc:320
GsfElectronMCFakeAnalyzer::nbindphimatch2D
int nbindphimatch2D
Definition: GsfElectronMCFakeAnalyzer.cc:116
GsfElectronMCFakeAnalyzer::h_ele_lostHitsVsEta
TH2F * h_ele_lostHitsVsEta
Definition: GsfElectronMCFakeAnalyzer.cc:225
GsfElectronMCFakeAnalyzer::h_ele_vertexPhi
TH1F * h_ele_vertexPhi
Definition: GsfElectronMCFakeAnalyzer.cc:176
PbPb_ZMuSkimMuonDPG_cff.deltaR
deltaR
Definition: PbPb_ZMuSkimMuonDPG_cff.py:63
GsfElectronMCFakeAnalyzer::histSclEoEmatchingObject_barrel
TH1F * histSclEoEmatchingObject_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:188
GsfElectronMCFakeAnalyzer::h_ele_E2mnE1vsMee_egeg_all
TH2F * h_ele_E2mnE1vsMee_egeg_all
Definition: GsfElectronMCFakeAnalyzer.cc:157
GsfElectronMCFakeAnalyzer::h_ele_PinMnPoutVsPhi_mode
TH2F * h_ele_PinMnPoutVsPhi_mode
Definition: GsfElectronMCFakeAnalyzer.cc:254
GsfElectronMCFakeAnalyzer::h_ele_PinMnPoutVsPt_mode
TH2F * h_ele_PinMnPoutVsPt_mode
Definition: GsfElectronMCFakeAnalyzer.cc:255
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
GsfElectronMCFakeAnalyzer::h_ele_chi2_endcaps
TH1F * h_ele_chi2_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:230
GsfElectronMCFakeAnalyzer::h_ele_hcalDepth2TowerSumEt_dr04
TH1F * h_ele_hcalDepth2TowerSumEt_dr04
Definition: GsfElectronMCFakeAnalyzer.cc:412
GsfElectronMCFakeAnalyzer::fhitsmax
double fhitsmax
Definition: GsfElectronMCFakeAnalyzer.cc:94
GsfElectronMCFakeAnalyzer::ptmax
double ptmax
Definition: GsfElectronMCFakeAnalyzer.cc:92
GsfElectronMCFakeAnalyzer::electronCollection_
edm::InputTag electronCollection_
Definition: GsfElectronMCFakeAnalyzer.cc:62
GsfElectronMCFakeAnalyzer::histSclSigIEtaIEta_
TH1F * histSclSigIEtaIEta_
Definition: GsfElectronMCFakeAnalyzer.cc:199
GsfElectronMCFakeAnalyzer::h_ele_EeleOPout_eg
TH1F * h_ele_EeleOPout_eg
Definition: GsfElectronMCFakeAnalyzer.cc:297
GsfElectronMCFakeAnalyzer::h_ele_HoEVsPhi
TH2F * h_ele_HoEVsPhi
Definition: GsfElectronMCFakeAnalyzer.cc:382
GsfElectronMCFakeAnalyzer::h_ele_vertexPt
TH1F * h_ele_vertexPt
Definition: GsfElectronMCFakeAnalyzer.cc:170
GsfElectronMCFakeAnalyzer::h_ele_dEtaSc_propVtx_barrel
TH1F * h_ele_dEtaSc_propVtx_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:305
GsfElectronMCFakeAnalyzer::h_ele_matchingObjectAbsEta_matched
TH1F * h_ele_matchingObjectAbsEta_matched
Definition: GsfElectronMCFakeAnalyzer.cc:160
GsfElectronMCFakeAnalyzer::h_ele_vertexAbsEta
TH1F * h_ele_vertexAbsEta
Definition: GsfElectronMCFakeAnalyzer.cc:175
GsfElectronMCFakeAnalyzer::h_ele_dPhiSc_propVtx_barrel
TH1F * h_ele_dPhiSc_propVtx_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:314
GsfElectronMCFakeAnalyzer::h_ele_ambiguousTracksVsPhi
TH2F * h_ele_ambiguousTracksVsPhi
Definition: GsfElectronMCFakeAnalyzer.cc:214
GsfElectronMCFakeAnalyzer::h_ele_dEtaScVsPhi_propVtx
TH2F * h_ele_dEtaScVsPhi_propVtx
Definition: GsfElectronMCFakeAnalyzer.cc:311
GsfElectronMCFakeAnalyzer::h_ele_vertexEtaVsPhi
TH2F * h_ele_vertexEtaVsPhi
Definition: GsfElectronMCFakeAnalyzer.cc:174
GsfElectronFwd.h
edm::ParameterSet
Definition: ParameterSet.h:47
GsfElectronMCFakeAnalyzer::h_ele_EeleOPout_barrel
TH1F * h_ele_EeleOPout_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:295
GsfElectronMCFakeAnalyzer::h_ele_dEtaSc_propVtx_eg
TH1F * h_ele_dEtaSc_propVtx_eg
Definition: GsfElectronMCFakeAnalyzer.cc:307
GsfElectronMCFakeAnalyzer::h_ele_dEtaCl_propOut_eg
TH1F * h_ele_dEtaCl_propOut_eg
Definition: GsfElectronMCFakeAnalyzer.cc:325
reco::GsfElectron::deltaEtaSuperClusterTrackAtVtx
float deltaEtaSuperClusterTrackAtVtx() const
Definition: GsfElectron.h:232
GsfElectronMCFakeAnalyzer::histSclSigIEtaIEta_endcaps_
TH1F * histSclSigIEtaIEta_endcaps_
Definition: GsfElectronMCFakeAnalyzer.cc:201
Event.h
reco::LeafCandidate::eta
double eta() const final
momentum pseudorapidity
Definition: LeafCandidate.h:152
GsfElectronMCFakeAnalyzer::detamin
double detamin
Definition: GsfElectronMCFakeAnalyzer.cc:102
GsfElectronMCFakeAnalyzer::deltaR_
double deltaR_
Definition: GsfElectronMCFakeAnalyzer.cc:78
GsfElectronMCFakeAnalyzer::hoemax
double hoemax
Definition: GsfElectronMCFakeAnalyzer.cc:128
GsfElectronMCFakeAnalyzer::h_ele_seed_subdet2_
TH1F * h_ele_seed_subdet2_
Definition: GsfElectronMCFakeAnalyzer.cc:365
GsfElectronMCFakeAnalyzer::h_ele_vertexTIP
TH1F * h_ele_vertexTIP
Definition: GsfElectronMCFakeAnalyzer.cc:180
GsfElectronMCFakeAnalyzer::h_ele_PinVsPoutShowering_mean
TH2F * h_ele_PinVsPoutShowering_mean
Definition: GsfElectronMCFakeAnalyzer.cc:392
GsfElectronMCFakeAnalyzer::h_ele_outerP
TH1F * h_ele_outerP
Definition: GsfElectronMCFakeAnalyzer.cc:259
GsfElectronMCFakeAnalyzer::h_ele_dEtaClVsPhi_propOut
TH2F * h_ele_dEtaClVsPhi_propOut
Definition: GsfElectronMCFakeAnalyzer.cc:329
GsfElectronMCFakeAnalyzer::h_ele_dEtaCl_propOut_eg_endcaps
TH1F * h_ele_dEtaCl_propOut_eg_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:327
GsfElectronMCFakeAnalyzer::matchingObjectCollection_
edm::InputTag matchingObjectCollection_
Definition: GsfElectronMCFakeAnalyzer.cc:63
GsfElectronMCFakeAnalyzer::h_ele_dEtaCl_propOut
TH1F * h_ele_dEtaCl_propOut
Definition: GsfElectronMCFakeAnalyzer.cc:322
GsfElectronMCFakeAnalyzer::superclusterPhi
float superclusterPhi[10]
Definition: GsfElectronMCFakeAnalyzer.cc:73
reco::GsfElectron::scE5x5
float scE5x5() const
Definition: GsfElectron.h:474
GsfElectronMCFakeAnalyzer::h_matchingObjectPt
TH1F * h_matchingObjectPt
Definition: GsfElectronMCFakeAnalyzer.cc:137
TrajectoryStateTransform
Definition: TrajectoryStateTransform.h:47
GsfElectronMCFakeAnalyzer::h_ele_dPhiSc_propVtx_endcaps
TH1F * h_ele_dPhiSc_propVtx_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:315
reco::GsfElectron::dr03HcalDepth1TowerSumEt
float dr03HcalDepth1TowerSumEt() const
Definition: GsfElectron.h:531
GsfElectronMCFakeAnalyzer::h_ele_HoEVsE
TH2F * h_ele_HoEVsE
Definition: GsfElectronMCFakeAnalyzer.cc:383
GsfElectronMCFakeAnalyzer::h_ele_hcalDepth2TowerSumEt_dr03
TH1F * h_ele_hcalDepth2TowerSumEt_dr03
Definition: GsfElectronMCFakeAnalyzer.cc:408
GsfElectronMCFakeAnalyzer::h_ele_fbremVsEta_mean
TProfile * h_ele_fbremVsEta_mean
Definition: GsfElectronMCFakeAnalyzer.cc:387
GsfElectronMCFakeAnalyzer::h_ele_charge
TH1F * h_ele_charge
Definition: GsfElectronMCFakeAnalyzer.cc:165
iEvent
int iEvent
Definition: GenABIO.cc:224
GsfElectronMCFakeAnalyzer::h_ele_chargeVsPhi
TH2F * h_ele_chargeVsPhi
Definition: GsfElectronMCFakeAnalyzer.cc:167
reco::GsfElectron::eSeedClusterOverP
float eSeedClusterOverP() const
Definition: GsfElectron.h:229
reco::GsfElectron::dr04TkSumPt
float dr04TkSumPt() const
Definition: GsfElectron.h:540
GsfElectronMCFakeAnalyzer::mcPhi
float mcPhi[10]
Definition: GsfElectronMCFakeAnalyzer.cc:72
GsfElectronMCFakeAnalyzer::h_ele_TIP_all
TH1F * h_ele_TIP_all
Definition: GsfElectronMCFakeAnalyzer.cc:149
GsfTrack.h
GsfElectronMCFakeAnalyzer::h_ele_mee_all
TH1F * h_ele_mee_all
Definition: GsfElectronMCFakeAnalyzer.cc:153
GsfElectronMCFakeAnalyzer::h_ele_HoE_eg_barrel
TH1F * h_ele_HoE_eg_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:378
GsfElectronMCFakeAnalyzer::h_ele_dEtaEleCl_propOut_barrel
TH1F * h_ele_dEtaEleCl_propOut_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:341
GsfElectronMCFakeAnalyzer::h_ele_HoE
TH1F * h_ele_HoE
Definition: GsfElectronMCFakeAnalyzer.cc:374
GsfElectronMCFakeAnalyzer::histSclEtaVsPhi_
TH2F * histSclEtaVsPhi_
Definition: GsfElectronMCFakeAnalyzer.cc:193
ttbarCategorization_cff.genJets
genJets
Definition: ttbarCategorization_cff.py:29
reco::LeafCandidate::charge
int charge() const final
electric charge
Definition: LeafCandidate.h:106
GsfElectronMCFakeAnalyzer::h_ele_vertexY
TH1F * h_ele_vertexY
Definition: GsfElectronMCFakeAnalyzer.cc:178
reco::GsfElectron::isEBEtaGap
bool isEBEtaGap() const
Definition: GsfElectron.h:340
GsfElectronMCFakeAnalyzer::h_ele_EeleOPout_all
TH1F * h_ele_EeleOPout_all
Definition: GsfElectronMCFakeAnalyzer.cc:144
edm::EventSetup
Definition: EventSetup.h:58
GsfElectronMCFakeAnalyzer::h_ele_dEtaCl_propOut_all
TH1F * h_ele_dEtaCl_propOut_all
Definition: GsfElectronMCFakeAnalyzer.cc:147
GsfElectronMCFakeAnalyzer::h_ele_dPhiClVsPhi_propOut
TH2F * h_ele_dPhiClVsPhi_propOut
Definition: GsfElectronMCFakeAnalyzer.cc:338
GsfElectronMCFakeAnalyzer::histSclEoEmatchingObjectShowering_endcaps
TH1F * histSclEoEmatchingObjectShowering_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:400
GsfElectronMCFakeAnalyzer::h_matchingObjectAbsEta
TH1F * h_matchingObjectAbsEta
Definition: GsfElectronMCFakeAnalyzer.cc:135
GsfElectronMCFakeAnalyzer::h_ele_ecalRecHitSumEt_dr04
TH1F * h_ele_ecalRecHitSumEt_dr04
Definition: GsfElectronMCFakeAnalyzer.cc:410
GsfElectronMCFakeAnalyzer::h_ele_vertexPtVsEta
TH2F * h_ele_vertexPtVsEta
Definition: GsfElectronMCFakeAnalyzer.cc:171
GsfElectronMCFakeAnalyzer::h_ele_vertexEta
TH1F * h_ele_vertexEta
Definition: GsfElectronMCFakeAnalyzer.cc:173
GsfElectronMCFakeAnalyzer::h_ele_PinMnPout
TH1F * h_ele_PinMnPout
Definition: GsfElectronMCFakeAnalyzer.cc:251
GsfElectronMCFakeAnalyzer::h_ele_EeleOPoutVsE
TH2F * h_ele_EeleOPoutVsE
Definition: GsfElectronMCFakeAnalyzer.cc:302
GsfElectronMCFakeAnalyzer::h_ele_outerPtVsEta_mode
TH2F * h_ele_outerPtVsEta_mode
Definition: GsfElectronMCFakeAnalyzer.cc:264
GsfElectronMCFakeAnalyzer::nbinpt2D
int nbinpt2D
Definition: GsfElectronMCFakeAnalyzer.cc:90
GsfElectronMCFakeAnalyzer::seedMomentum
float seedMomentum[10]
Definition: GsfElectronMCFakeAnalyzer.cc:74
reco::LeafCandidate::vertex
const Point & vertex() const override
vertex position (overwritten by PF...)
Definition: LeafCandidate.h:165
InputTag.h
GsfElectronMCFakeAnalyzer::h_ele_matchingObjectPt_matched
TH1F * h_ele_matchingObjectPt_matched
Definition: GsfElectronMCFakeAnalyzer.cc:161
GsfElectronMCFakeAnalyzer::histSclE1x5_
TH1F * histSclE1x5_
Definition: GsfElectronMCFakeAnalyzer.cc:202
GsfElectronMCFakeAnalyzer::h_ele_dEtaSc_propVtx_all
TH1F * h_ele_dEtaSc_propVtx_all
Definition: GsfElectronMCFakeAnalyzer.cc:145
GsfElectronMCFakeAnalyzer::outputFile_
std::string outputFile_
Definition: GsfElectronMCFakeAnalyzer.cc:66
GsfElectronMCFakeAnalyzer::h_ele_dPhiSc_propVtx
TH1F * h_ele_dPhiSc_propVtx
Definition: GsfElectronMCFakeAnalyzer.cc:313
GsfElectronMCFakeAnalyzer::h_ele_EseedOP_endcaps
TH1F * h_ele_EseedOP_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:278
GsfElectronMCFakeAnalyzer::h_ele_HoE_fiducial
TH1F * h_ele_HoE_fiducial
Definition: GsfElectronMCFakeAnalyzer.cc:380
GsfElectronMCFakeAnalyzer::h_ele_EeleOPout
TH1F * h_ele_EeleOPout
Definition: GsfElectronMCFakeAnalyzer.cc:294
GsfElectronMCFakeAnalyzer::histfile_
TFile * histfile_
Definition: GsfElectronMCFakeAnalyzer.cc:80
GsfElectronMCFakeAnalyzer::h_ele_mee_os
TH1F * h_ele_mee_os
Definition: GsfElectronMCFakeAnalyzer.cc:154
GsfElectronMCFakeAnalyzer::h_ele_vertexPtVsPhi
TH2F * h_ele_vertexPtVsPhi
Definition: GsfElectronMCFakeAnalyzer.cc:172
GsfElectronMCFakeAnalyzer::h_ele_outerPt
TH1F * h_ele_outerPt
Definition: GsfElectronMCFakeAnalyzer.cc:262
GsfElectronMCFakeAnalyzer::histSclSigEtaEta_endcaps_
TH1F * histSclSigEtaEta_endcaps_
Definition: GsfElectronMCFakeAnalyzer.cc:198
GsfElectronMCFakeAnalyzer::h_ele_EoP_eg
TH1F * h_ele_EoP_eg
Definition: GsfElectronMCFakeAnalyzer.cc:270
GsfElectronMCFakeAnalyzer::histSclSigEtaEta_barrel_
TH1F * histSclSigEtaEta_barrel_
Definition: GsfElectronMCFakeAnalyzer.cc:197
GsfElectronMCFakeAnalyzer::h_ele_chargeVsPt
TH2F * h_ele_chargeVsPt
Definition: GsfElectronMCFakeAnalyzer.cc:168
GsfElectronMCFakeAnalyzer::h_ele_EeleOPout_endcaps
TH1F * h_ele_EeleOPout_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:296
GsfElectronMCFakeAnalyzer::h_ele_PinVsPoutShowering_mode
TH2F * h_ele_PinVsPoutShowering_mode
Definition: GsfElectronMCFakeAnalyzer.cc:390
GsfElectronMCFakeAnalyzer::h_ele_EseedOPVsE
TH2F * h_ele_EseedOPVsE
Definition: GsfElectronMCFakeAnalyzer.cc:284
reco::LeafCandidate::phi
double phi() const final
momentum azimuthal angle
Definition: LeafCandidate.h:148
SuperClusterFwd.h
GsfElectronMCFakeAnalyzer::h_ele_EseedOP_eg
TH1F * h_ele_EseedOP_eg
Definition: GsfElectronMCFakeAnalyzer.cc:279
GsfElectronMCFakeAnalyzer::h_ele_PoPmatchingObject_barrel
TH1F * h_ele_PoPmatchingObject_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:239
GsfElectronMCFakeAnalyzer::h_ele_EoP_eg_barrel
TH1F * h_ele_EoP_eg_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:271
GsfElectronMCFakeAnalyzer::h_ele_EoPVsE
TH2F * h_ele_EoPVsE
Definition: GsfElectronMCFakeAnalyzer.cc:275
reco::GsfElectron::isEBEEGap
bool isEBEEGap() const
Definition: GsfElectron.h:338
GsfElectronMCFakeAnalyzer::h_ele_PtinVsPtoutGolden_mode
TH2F * h_ele_PtinVsPtoutGolden_mode
Definition: GsfElectronMCFakeAnalyzer.cc:393
math::XYZTLorentzVector
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
Definition: LorentzVector.h:29
GsfElectronMCFakeAnalyzer::h_ele_PinMnPout_mode
TH1F * h_ele_PinMnPout_mode
Definition: GsfElectronMCFakeAnalyzer.cc:252
GsfElectronMCFakeAnalyzer::histSclEoEmatchingObjectShowering_barrel
TH1F * histSclEoEmatchingObjectShowering_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:399
GsfElectronMCFakeAnalyzer::mcQ
float mcQ[10]
Definition: GsfElectronMCFakeAnalyzer.cc:72
GsfElectronMCFakeAnalyzer::nbindphimatch
int nbindphimatch
Definition: GsfElectronMCFakeAnalyzer.cc:115
GsfElectronMCFakeAnalyzer::h_ele_EoPout_endcaps
TH1F * h_ele_EoPout_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:287
GsfElectronMCFakeAnalyzer::endJob
void endJob() override
Definition: GsfElectronMCFakeAnalyzer.cc:1575
GsfElectronMCFakeAnalyzer::h_ele_dEtaCl_propOut_eg_barrel
TH1F * h_ele_dEtaCl_propOut_eg_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:326
GsfElectronMCFakeAnalyzer::h_ele_dEtaEleCl_propOut_eg_barrel
TH1F * h_ele_dEtaEleCl_propOut_eg_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:344
reco::LeafCandidate::p
double p() const final
magnitude of momentum vector
Definition: LeafCandidate.h:123
GsfElectronMCFakeAnalyzer::h_ele_HoE_all
TH1F * h_ele_HoE_all
Definition: GsfElectronMCFakeAnalyzer.cc:150
GsfElectronMCFakeAnalyzer::h_ele_ambiguousTracksVsPt
TH2F * h_ele_ambiguousTracksVsPt
Definition: GsfElectronMCFakeAnalyzer.cc:215
GsfElectronMCFakeAnalyzer::h_ele_EeleOPoutVsEta
TH2F * h_ele_EeleOPoutVsEta
Definition: GsfElectronMCFakeAnalyzer.cc:300
reco::GsfElectron::deltaEtaEleClusterTrackAtCalo
float deltaEtaEleClusterTrackAtCalo() const
Definition: GsfElectron.h:234
GsfElectronMCFakeAnalyzer::histSclSigIEtaIEta_barrel_
TH1F * histSclSigIEtaIEta_barrel_
Definition: GsfElectronMCFakeAnalyzer.cc:200
reco::GsfElectron::eSuperClusterOverP
float eSuperClusterOverP() const
Definition: GsfElectron.h:228
reco::GsfElectron::classification
Classification classification() const
Definition: GsfElectron.h:728
GsfElectronMCFakeAnalyzer::h_ele_matchingObjectEta_matched
TH1F * h_ele_matchingObjectEta_matched
Definition: GsfElectronMCFakeAnalyzer.cc:159
GsfElectronMCFakeAnalyzer::h_ele_seed_dphi2VsPt_
TH2F * h_ele_seed_dphi2VsPt_
Definition: GsfElectronMCFakeAnalyzer.cc:361
reco::GsfElectron::eEleClusterOverPout
float eEleClusterOverPout() const
Definition: GsfElectron.h:231
EventSetup.h
GsfElectronMCFakeAnalyzer::h_matchingObjectEta
TH1F * h_matchingObjectEta
Definition: GsfElectronMCFakeAnalyzer.cc:134
reco::GsfElectron::trackerDrivenSeed
bool trackerDrivenSeed() const
Definition: GsfElectron.h:166
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
edm::RefToBase< TrajectorySeed >
reco::GsfElectron::isEBPhiGap
bool isEBPhiGap() const
Definition: GsfElectron.h:341
GsfElectronMCFakeAnalyzer::h_ele_seed_dphi2_
TH1F * h_ele_seed_dphi2_
Definition: GsfElectronMCFakeAnalyzer.cc:359
TrajectoryStateTransform.h
GsfElectronMCFakeAnalyzer::transformer_
TrajectoryStateTransform transformer_
Definition: GsfElectronMCFakeAnalyzer.cc:68
reco::GsfElectron::eSeedClusterOverPout
float eSeedClusterOverPout() const
Definition: GsfElectron.h:230
reco::GsfElectron::superCluster
SuperClusterRef superCluster() const override
reference to a SuperCluster
Definition: GsfElectron.h:162
GsfElectronMCFakeAnalyzer::h_ele_seed_drz2VsEta_
TH2F * h_ele_seed_drz2VsEta_
Definition: GsfElectronMCFakeAnalyzer.cc:363
dqm-mbProfile.log
log
Definition: dqm-mbProfile.py:17
GsfElectronMCFakeAnalyzer::phimin
double phimin
Definition: GsfElectronMCFakeAnalyzer.cc:110
GsfElectronMCFakeAnalyzer
Definition: GsfElectronMCFakeAnalyzer.cc:51
GsfElectronMCFakeAnalyzer::histSclEoEmatchingObjectGolden_endcaps
TH1F * histSclEoEmatchingObjectGolden_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:398
GsfElectronMCFakeAnalyzer::nbinphi
int nbinphi
Definition: GsfElectronMCFakeAnalyzer.cc:108
GsfElectronMCFakeAnalyzer::h_ele_EoP_barrel
TH1F * h_ele_EoP_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:268
GsfElectronMCFakeAnalyzer::h_ele_PhiMnPhimatchingObject2
TH1F * h_ele_PhiMnPhimatchingObject2
Definition: GsfElectronMCFakeAnalyzer.cc:246
funct::pow
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:29
ztail.d
d
Definition: ztail.py:151
GsfElectronMCFakeAnalyzer::pDD
edm::ESHandle< TrackerGeometry > pDD
Definition: GsfElectronMCFakeAnalyzer.cc:69
GsfElectronMCFakeAnalyzer::h_ele_HoE_eg_endcaps
TH1F * h_ele_HoE_eg_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:379
GsfElectronMCFakeAnalyzer::h_ele_chargeVsEta
TH2F * h_ele_chargeVsEta
Definition: GsfElectronMCFakeAnalyzer.cc:166
GsfElectronMCFakeAnalyzer::h_ele_chi2VsPt
TH2F * h_ele_chi2VsPt
Definition: GsfElectronMCFakeAnalyzer.cc:233
GsfElectronMCFakeAnalyzer::h_ele_dPhiEleCl_propOut_eg_endcaps
TH1F * h_ele_dPhiEleCl_propOut_eg_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:354
GsfElectronMCFakeAnalyzer::beamSpot_
edm::InputTag beamSpot_
Definition: GsfElectronMCFakeAnalyzer.cc:64
GsfElectronMCFakeAnalyzer::h_ele_provenance
TH1F * h_ele_provenance
Definition: GsfElectronMCFakeAnalyzer.cc:403
pi
const Double_t pi
Definition: trackSplitPlot.h:36
GsfElectronMCFakeAnalyzer::histSclE5x5_
TH1F * histSclE5x5_
Definition: GsfElectronMCFakeAnalyzer.cc:208
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
GsfElectronMCFakeAnalyzer::histSclEtVsPhi_
TH2F * histSclEtVsPhi_
Definition: GsfElectronMCFakeAnalyzer.cc:192
GsfElectronMCFakeAnalyzer::h_ele_eta_golden
TH1F * h_ele_eta_golden
Definition: GsfElectronMCFakeAnalyzer.cc:369
GsfElectronMCFakeAnalyzer::h_matchingObjectP
TH1F * h_matchingObjectP
Definition: GsfElectronMCFakeAnalyzer.cc:136
GsfElectronMCFakeAnalyzer::h_ele_chi2VsPhi
TH2F * h_ele_chi2VsPhi
Definition: GsfElectronMCFakeAnalyzer.cc:232
GsfElectronMCFakeAnalyzer::superclusterEta
float superclusterEta[10]
Definition: GsfElectronMCFakeAnalyzer.cc:73
ParameterSet.h
GsfElectronMCFakeAnalyzer::nbinhoe
int nbinhoe
Definition: GsfElectronMCFakeAnalyzer.cc:126
GsfElectronMCFakeAnalyzer::h_ele_EoP_endcaps
TH1F * h_ele_EoP_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:269
GsfElectronMCFakeAnalyzer::h_ele_PoPmatchingObjectVsEta
TH2F * h_ele_PoPmatchingObjectVsEta
Definition: GsfElectronMCFakeAnalyzer.cc:236
GsfElectronMCFakeAnalyzer::h_ele_EoPout_all
TH1F * h_ele_EoPout_all
Definition: GsfElectronMCFakeAnalyzer.cc:143
GsfElectronMCFakeAnalyzer::seedEta
float seedEta[10]
Definition: GsfElectronMCFakeAnalyzer.cc:74
c
auto & c
Definition: CAHitNtupletGeneratorKernelsImpl.h:46
GsfElectronMCFakeAnalyzer::h_ele_EtaMnEtamatchingObjectVsPt
TH2F * h_ele_EtaMnEtamatchingObjectVsPt
Definition: GsfElectronMCFakeAnalyzer.cc:244
GsfElectronMCFakeAnalyzer::h_ele_PinMnPoutVsE_mode
TH2F * h_ele_PinMnPoutVsE_mode
Definition: GsfElectronMCFakeAnalyzer.cc:256
GsfElectronMCFakeAnalyzer::h_ele_dPhiEleClVsPhi_propOut
TH2F * h_ele_dPhiEleClVsPhi_propOut
Definition: GsfElectronMCFakeAnalyzer.cc:356
GsfElectronMCFakeAnalyzer::h_ele_chi2VsEta
TH2F * h_ele_chi2VsEta
Definition: GsfElectronMCFakeAnalyzer.cc:231
GsfElectronMCFakeAnalyzer::histSclE1x5_barrel_
TH1F * histSclE1x5_barrel_
Definition: GsfElectronMCFakeAnalyzer.cc:203
GsfElectronMCFakeAnalyzer::h_ele_EoPVsEta
TH2F * h_ele_EoPVsEta
Definition: GsfElectronMCFakeAnalyzer.cc:273
edm::Event
Definition: Event.h:73
GsfElectronMCFakeAnalyzer::h_ele_dPhiEleCl_propOut_eg
TH1F * h_ele_dPhiEleCl_propOut_eg
Definition: GsfElectronMCFakeAnalyzer.cc:352
reco::GsfElectron::caloEnergy
float caloEnergy() const
Definition: GsfElectron.h:821
GsfElectronMCFakeAnalyzer::h_ele_dPhiEleCl_propOut
TH1F * h_ele_dPhiEleCl_propOut
Definition: GsfElectronMCFakeAnalyzer.cc:349
reco::GsfElectron::scSigmaIEtaIEta
float scSigmaIEtaIEta() const
Definition: GsfElectron.h:471
GsfElectronMCFakeAnalyzer::h_ele_eta_narrow
TH1F * h_ele_eta_narrow
Definition: GsfElectronMCFakeAnalyzer.cc:371
reco::GsfElectron::deltaPhiEleClusterTrackAtCalo
float deltaPhiEleClusterTrackAtCalo() const
Definition: GsfElectron.h:237
GsfElectronMCFakeAnalyzer::h_ele_dPhiCl_propOut_barrel
TH1F * h_ele_dPhiCl_propOut_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:332
dttmaxenums::R
Definition: DTTMax.h:29
GsfElectronMCFakeAnalyzer::h_ele_EoPout_barrel
TH1F * h_ele_EoPout_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:286
GsfElectronMCFakeAnalyzer::maxAbsEta_
double maxAbsEta_
Definition: GsfElectronMCFakeAnalyzer.cc:77
GsfElectronMCFakeAnalyzer::h_ele_vertexEta_all
TH1F * h_ele_vertexEta_all
Definition: GsfElectronMCFakeAnalyzer.cc:151
GsfElectronMCFakeAnalyzer::h_ele_dEtaEleClVsPhi_propOut
TH2F * h_ele_dEtaEleClVsPhi_propOut
Definition: GsfElectronMCFakeAnalyzer.cc:347
GsfElectronMCFakeAnalyzer::h_ele_PhiMnPhimatchingObjectVsPhi
TH2F * h_ele_PhiMnPhimatchingObjectVsPhi
Definition: GsfElectronMCFakeAnalyzer.cc:248
GsfElectronMCFakeAnalyzer::h_ele_dPhiScVsEta_propVtx
TH2F * h_ele_dPhiScVsEta_propVtx
Definition: GsfElectronMCFakeAnalyzer.cc:319
GsfElectronMCFakeAnalyzer::seedPhi
float seedPhi[10]
Definition: GsfElectronMCFakeAnalyzer.cc:74
GsfElectronMCFakeAnalyzer::h_ele_vertexP
TH1F * h_ele_vertexP
Definition: GsfElectronMCFakeAnalyzer.cc:169
GsfElectronMCFakeAnalyzer::h_ele_dPhiCl_propOut_eg_barrel
TH1F * h_ele_dPhiCl_propOut_eg_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:335
GsfElectronMCFakeAnalyzer::h_ele_matchingObjectZ_matched
TH1F * h_ele_matchingObjectZ_matched
Definition: GsfElectronMCFakeAnalyzer.cc:163
GsfElectronMCFakeAnalyzer::h_ele_dPhiCl_propOut_all
TH1F * h_ele_dPhiCl_propOut_all
Definition: GsfElectronMCFakeAnalyzer.cc:148
GsfElectronMCFakeAnalyzer::histSclEn_
TH1F * histSclEn_
Definition: GsfElectronMCFakeAnalyzer.cc:187
edm::InputTag
Definition: InputTag.h:15
GsfElectronMCFakeAnalyzer::dphimatchmin
double dphimatchmin
Definition: GsfElectronMCFakeAnalyzer.cc:117
GsfElectronMCFakeAnalyzer::nbineta
int nbineta
Definition: GsfElectronMCFakeAnalyzer.cc:97
reco::GsfElectron::dr03HcalDepth2TowerSumEt
float dr03HcalDepth2TowerSumEt() const
Definition: GsfElectron.h:532
reco::GsfElectron::dr03EcalRecHitSumEt
float dr03EcalRecHitSumEt() const
Definition: GsfElectron.h:530
GsfElectronMCFakeAnalyzer::h_ele_EeleOPout_eg_barrel
TH1F * h_ele_EeleOPout_eg_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:298
GsfElectronMCFakeAnalyzer::h_ele_fbremVsEta_mode
TProfile * h_ele_fbremVsEta_mode
Definition: GsfElectronMCFakeAnalyzer.cc:386
GsfElectronMCFakeAnalyzer::h_ele_foundHits_endcaps
TH1F * h_ele_foundHits_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:218
reco::GsfElectron::dr04HcalDepth2TowerSumEt
float dr04HcalDepth2TowerSumEt() const
Definition: GsfElectron.h:544
GsfElectronMCFakeAnalyzer::h_ele_vertexX
TH1F * h_ele_vertexX
Definition: GsfElectronMCFakeAnalyzer.cc:177
GsfElectronMCFakeAnalyzer::h_ele_PoPmatchingObject
TH1F * h_ele_PoPmatchingObject
Definition: GsfElectronMCFakeAnalyzer.cc:235
muonDTDigis_cfi.pset
pset
Definition: muonDTDigis_cfi.py:27
ElectronSeed.h
GsfElectronMCFakeAnalyzer::h_ele_PhiMnPhimatchingObject
TH1F * h_ele_PhiMnPhimatchingObject
Definition: GsfElectronMCFakeAnalyzer.cc:245
GsfElectronMCFakeAnalyzer::histSclE2x5max_endcaps_
TH1F * histSclE2x5max_endcaps_
Definition: GsfElectronMCFakeAnalyzer.cc:207
GsfElectronMCFakeAnalyzer::histSclPhi_
TH1F * histSclPhi_
Definition: GsfElectronMCFakeAnalyzer.cc:195
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37
GsfElectronMCFakeAnalyzer::h_ele_EoP_eg_endcaps
TH1F * h_ele_EoP_eg_endcaps
Definition: GsfElectronMCFakeAnalyzer.cc:272
GsfElectronMCFakeAnalyzer::histSclEt_
TH1F * histSclEt_
Definition: GsfElectronMCFakeAnalyzer.cc:190
GsfElectronMCFakeAnalyzer::dphimin
double dphimin
Definition: GsfElectronMCFakeAnalyzer.cc:113
GsfElectronMCFakeAnalyzer::h_ele_dEtaSc_propVtx_eg_barrel
TH1F * h_ele_dEtaSc_propVtx_eg_barrel
Definition: GsfElectronMCFakeAnalyzer.cc:308