CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Member Functions | Private Attributes
ElectronAnalyzer Class Reference

#include <ElectronAnalyzer.h>

Inheritance diagram for ElectronAnalyzer:
ElectronDqmAnalyzerBase edm::EDAnalyzer

Public Member Functions

virtual void analyze (const edm::Event &e, const edm::EventSetup &c)
 
virtual void book ()
 
 ElectronAnalyzer (const edm::ParameterSet &conf)
 
virtual ~ElectronAnalyzer ()
 
- Public Member Functions inherited from edm::EDAnalyzer
 EDAnalyzer ()
 
std::string workerType () const
 
virtual ~EDAnalyzer ()
 

Private Member Functions

float computeInvMass (const reco::GsfElectron &e1, const reco::GsfElectron &e2)
 
bool etCut (const reco::GsfElectronCollection::const_iterator &gsfIter)
 
bool generalCut (const reco::GsfElectronCollection::const_iterator &gsfIter)
 
bool idCut (const reco::GsfElectronCollection::const_iterator &gsfIter)
 
bool isolationCut (const reco::GsfElectronCollection::const_iterator &gsfIter, double vertexTIP)
 
bool selected (const reco::GsfElectronCollection::const_iterator &gsfIter, double vertexTIP)
 

Private Attributes

edm::InputTag beamSpotTag_
 
double deltaR_
 
double detamatchmax
 
double detamatchmin
 
double detamax
 
double dEtaMaxBarrel_
 
double dEtaMaxEndcaps_
 
double detamin
 
double dEtaMinBarrel_
 
double dEtaMinEndcaps_
 
double dphimatchmax
 
double dphimatchmin
 
double dphimax
 
double dPhiMaxBarrel_
 
double dPhiMaxEndcaps_
 
double dphimin
 
double dPhiMinBarrel_
 
double dPhiMinEndcaps_
 
double ecalIso03MaxBarrel_
 
double ecalIso03MaxEndcaps_
 
edm::InputTag electronCollection_
 
double eopmax
 
double eopmaxsht
 
double eOverPMaxBarrel_
 
double eOverPMaxEndcaps_
 
double eOverPMinBarrel_
 
double eOverPMinEndcaps_
 
double etamax
 
double etamin
 
double fhitsmax
 
edm::InputTag gsftrackCollection_
 
MonitorElementh1_chi2
 
MonitorElementh1_classes
 
MonitorElementh1_dEtaEleCl_propOut_barrel
 
MonitorElementh1_dEtaEleCl_propOut_endcaps
 
MonitorElementh1_dEtaSc_propVtx_barrel
 
MonitorElementh1_dEtaSc_propVtx_endcaps
 
MonitorElementh1_dPhiEleCl_propOut_barrel
 
MonitorElementh1_dPhiEleCl_propOut_endcaps
 
MonitorElementh1_dPhiSc_propVtx_barrel
 
MonitorElementh1_dPhiSc_propVtx_endcaps
 
MonitorElementh1_ecalRecHitSumEt_dr03
 
MonitorElementh1_EeleOPout_barrel
 
MonitorElementh1_EeleOPout_endcaps
 
MonitorElementh1_Eop_barrel
 
MonitorElementh1_Eop_endcaps
 
MonitorElementh1_fbrem
 
MonitorElementh1_foundHits
 
MonitorElementh1_hcalTowerSumEt_dr03
 
MonitorElementh1_Hoe_barrel
 
MonitorElementh1_Hoe_endcaps
 
MonitorElementh1_lostHits
 
MonitorElementh1_matchedObject_Eta
 
MonitorElementh1_matchedObject_Phi
 
MonitorElementh1_matchedObject_Pt
 
MonitorElementh1_matchingObject_Eta
 
MonitorElementh1_matchingObject_Phi
 
MonitorElementh1_matchingObject_Pt
 
MonitorElementh1_mee
 
MonitorElementh1_mee_os
 
MonitorElementh1_mva
 
MonitorElementh1_provenance
 
MonitorElementh1_sclEt
 
MonitorElementh1_sclSigEtaEta_barrel
 
MonitorElementh1_sclSigEtaEta_endcaps
 
MonitorElementh1_tkSumPt_dr03
 
MonitorElementh1_triggers
 
MonitorElementh1_vertexEta
 
MonitorElementh1_vertexPt_barrel
 
MonitorElementh1_vertexPt_endcaps
 
MonitorElementh1_vertexZ
 
MonitorElementh2_beamSpotXvsY
 
MonitorElementh2_vertexEtaVsPhi
 
MonitorElementh2_vertexXvsY
 
double hadronicOverEmMaxBarrel_
 
double hadronicOverEmMaxEndcaps_
 
double hcalIso03Depth1MaxBarrel_
 
double hcalIso03Depth1MaxEndcaps_
 
double hcalIso03Depth2MaxEndcaps_
 
double hoemax
 
double hoemin
 
bool isEB_
 
bool isEcalDriven_
 
bool isEE_
 
bool isNotEBEEGap_
 
bool isTrackerDriven_
 
double lhitsmax
 
std::string matchingCondition_
 
edm::InputTag matchingObjectCollection_
 
double maxAbsEta_
 
double maxAbsEtaMatchingObject_
 
double maxPtMatchingObject_
 
float mcEnergy [10]
 
float mcEta [10]
 
float mcPhi [10]
 
float mcPt [10]
 
float mcQ [10]
 
double meemax
 
double meemin
 
double minEt_
 
double minPt_
 
double mvaMin_
 
int nbindeta
 
int nbindetamatch
 
int nbindetamatch2D
 
int nbindphi
 
int nbindphimatch
 
int nbindphimatch2D
 
int nbineop
 
int nbineop2D
 
int nbineta
 
int nbineta2D
 
int nbinfhits
 
int nbinhoe
 
int nbinlhits
 
int nbinmee
 
int nbinp
 
int nbinp2D
 
int nbinphi
 
int nbinphi2D
 
int nbinpoptrue
 
int nbinpt
 
int nbinpt2D
 
int nbinpteff
 
int nbinxyz
 
int nbinxyz2D
 
unsigned int nEvents_
 
edm::ESHandle< TrackerGeometrypDD
 
double phimax
 
double phimin
 
double pmax
 
double poptruemax
 
double poptruemin
 
double ptmax
 
MonitorElementpy_chi2VsEta
 
MonitorElementpy_chi2VsPhi
 
MonitorElementpy_dEtaSc_propVtxVsPhi
 
MonitorElementpy_dPhiSc_propVtxVsPhi
 
MonitorElementpy_EopVsPhi
 
MonitorElementpy_fbremVsEta
 
MonitorElementpy_fbremVsPhi
 
MonitorElementpy_foundHitsVsEta
 
MonitorElementpy_foundHitsVsPhi
 
MonitorElementpy_HoeVsPhi
 
MonitorElementpy_lostHitsVsEta
 
MonitorElementpy_lostHitsVsPhi
 
MonitorElementpy_nClustersVsLs
 
MonitorElementpy_nElectronsVsLs
 
MonitorElementpy_nGsfTracksVsLs
 
MonitorElementpy_nTracksVsLs
 
MonitorElementpy_nVerticesVsLs
 
bool readAOD_
 
float seedEta [10]
 
float seedMomentum [10]
 
float seedPhi [10]
 
float seedPt [10]
 
float seedQ [10]
 
int Selection_
 
double sigIetaIetaMaxBarrel_
 
double sigIetaIetaMaxEndcaps_
 
double sigIetaIetaMinBarrel_
 
double sigIetaIetaMinEndcaps_
 
float superclusterEnergy [10]
 
float superclusterEt [10]
 
float superclusterEta [10]
 
float superclusterPhi [10]
 
edm::ESHandle< MagneticFieldtheMagField
 
double tipMaxBarrel_
 
double tipMaxEndcaps_
 
double tkIso03Max_
 
edm::InputTag trackCollection_
 
TrajectoryStateTransform transformer_
 
edm::InputTag triggerResults_
 
edm::InputTag vertexCollection_
 

Additional Inherited Members

- Public Types inherited from edm::EDAnalyzer
typedef EDAnalyzer ModuleType
 
typedef WorkerT< EDAnalyzerWorkerType
 
- Static Public Member Functions inherited from edm::EDAnalyzer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
- Protected Member Functions inherited from ElectronDqmAnalyzerBase
void beginJob ()
 
MonitorElementbookH1 (const std::string &name, const std::string &title, int nchX, double lowX, double highX, const std::string &titleX="", const std::string &titleY="Events", Option_t *option="E1 P")
 
MonitorElementbookH1andDivide (const std::string &name, MonitorElement *num, MonitorElement *denom, const std::string &titleX, const std::string &titleY, const std::string &title="")
 
MonitorElementbookH1andDivide (const std::string &name, const std::string &num, const std::string &denom, const std::string &titleX, const std::string &titleY, const std::string &title="")
 
MonitorElementbookH1withSumw2 (const std::string &name, const std::string &title, int nchX, double lowX, double highX, const std::string &titleX="", const std::string &titleY="Events", Option_t *option="E1 P")
 
MonitorElementbookH2 (const std::string &name, const std::string &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, const std::string &titleX="", const std::string &titleY="", Option_t *option="COLZ")
 
MonitorElementbookH2andDivide (const std::string &name, MonitorElement *num, MonitorElement *denom, const std::string &titleX, const std::string &titleY, const std::string &title="")
 
MonitorElementbookH2andDivide (const std::string &name, const std::string &num, const std::string &denom, const std::string &titleX, const std::string &titleY, const std::string &title="")
 
MonitorElementbookH2withSumw2 (const std::string &name, const std::string &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, const std::string &titleX="", const std::string &titleY="", Option_t *option="COLZ")
 
MonitorElementbookP1 (const std::string &name, const std::string &title, int nchX, double lowX, double highX, double lowY, double highY, const std::string &titleX="", const std::string &titleY="", Option_t *option="E1 P")
 
MonitorElementcloneH1 (const std::string &name, MonitorElement *original, const std::string &title="")
 
MonitorElementcloneH1 (const std::string &name, const std::string &original, const std::string &title="")
 
 ElectronDqmAnalyzerBase (const edm::ParameterSet &conf)
 
virtual void endJob ()
 
virtual void endLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &)
 
virtual void endRun (edm::Run const &, edm::EventSetup const &)
 
virtual void finalize ()
 
bool finalStepDone ()
 
MonitorElementget (const std::string &name)
 
MonitorElementprofileX (MonitorElement *me2d, const std::string &title="", const std::string &titleX="", const std::string &titleY="", Double_t minimum=-1111, Double_t maximum=-1111)
 
MonitorElementprofileX (const std::string &me2d, const std::string &title="", const std::string &titleX="", const std::string &titleY="", Double_t minimum=-1111, Double_t maximum=-1111)
 
MonitorElementprofileY (MonitorElement *me2d, const std::string &title="", const std::string &titleX="", const std::string &titleY="", Double_t minimum=-1111, Double_t maximum=-1111)
 
MonitorElementprofileY (const std::string &me2d, const std::string &title="", const std::string &titleX="", const std::string &titleY="", Double_t minimum=-1111, Double_t maximum=-1111)
 
void remove (const std::string &name)
 
void remove_other_dirs ()
 
void setBookIndex (short)
 
void setBookPrefix (const std::string &)
 
int verbosity ()
 
virtual ~ElectronDqmAnalyzerBase ()
 
- Protected Member Functions inherited from edm::EDAnalyzer
CurrentProcessingContext const * currentContext () const
 

Detailed Description

Definition at line 19 of file ElectronAnalyzer.h.

Constructor & Destructor Documentation

ElectronAnalyzer::ElectronAnalyzer ( const edm::ParameterSet conf)
explicit

Definition at line 31 of file ElectronAnalyzer.cc.

References beamSpotTag_, deltaR_, detamatchmax, detamatchmin, detamax, dEtaMaxBarrel_, dEtaMaxEndcaps_, detamin, dEtaMinBarrel_, dEtaMinEndcaps_, dphimatchmax, dphimatchmin, dphimax, dPhiMaxBarrel_, dPhiMaxEndcaps_, dphimin, dPhiMinBarrel_, dPhiMinEndcaps_, ecalIso03MaxBarrel_, ecalIso03MaxEndcaps_, electronCollection_, eopmax, eopmaxsht, eOverPMaxBarrel_, eOverPMaxEndcaps_, eOverPMinBarrel_, eOverPMinEndcaps_, etamax, etamin, fhitsmax, edm::ParameterSet::getParameter(), gsftrackCollection_, hadronicOverEmMaxBarrel_, hadronicOverEmMaxEndcaps_, hcalIso03Depth1MaxBarrel_, hcalIso03Depth1MaxEndcaps_, hcalIso03Depth2MaxEndcaps_, hoemax, hoemin, isEB_, isEcalDriven_, isEE_, isNotEBEEGap_, isTrackerDriven_, lhitsmax, matchingCondition_, matchingObjectCollection_, maxAbsEta_, maxAbsEtaMatchingObject_, maxPtMatchingObject_, meemax, meemin, minEt_, minPt_, mvaMin_, nbindeta, nbindetamatch, nbindetamatch2D, nbindphi, nbindphimatch, nbindphimatch2D, nbineop, nbineop2D, nbineta, nbineta2D, nbinfhits, nbinhoe, nbinlhits, nbinmee, nbinp, nbinp2D, nbinphi, nbinphi2D, nbinpoptrue, nbinpt, nbinpt2D, nbinpteff, nbinxyz, nbinxyz2D, phimax, phimin, pmax, poptruemax, poptruemin, ptmax, readAOD_, Selection_, sigIetaIetaMaxBarrel_, sigIetaIetaMaxEndcaps_, sigIetaIetaMinBarrel_, sigIetaIetaMinEndcaps_, tipMaxBarrel_, tipMaxEndcaps_, tkIso03Max_, trackCollection_, triggerResults_, and vertexCollection_.

33  {
34  // general, collections
35  Selection_ = conf.getParameter<int>("Selection");
36  electronCollection_ = conf.getParameter<edm::InputTag>("ElectronCollection");
37  matchingObjectCollection_ = conf.getParameter<edm::InputTag>("MatchingObjectCollection");
38  trackCollection_ = conf.getParameter<edm::InputTag>("TrackCollection");
39  vertexCollection_ = conf.getParameter<edm::InputTag>("VertexCollection");
40  gsftrackCollection_ = conf.getParameter<edm::InputTag>("GsfTrackCollection");
41  beamSpotTag_ = conf.getParameter<edm::InputTag>("BeamSpot");
42  readAOD_ = conf.getParameter<bool>("ReadAOD");
43 
44  // matching
45  matchingCondition_ = conf.getParameter<std::string>("MatchingCondition");
46  assert (matchingCondition_=="Cone") ;
47  maxPtMatchingObject_ = conf.getParameter<double>("MaxPtMatchingObject");
48  maxAbsEtaMatchingObject_ = conf.getParameter<double>("MaxAbsEtaMatchingObject");
49  deltaR_ = conf.getParameter<double>("DeltaR");
50 
51  // electron selection
52  minEt_ = conf.getParameter<double>("MinEt");
53  minPt_ = conf.getParameter<double>("MinPt");
54  maxAbsEta_ = conf.getParameter<double>("MaxAbsEta");
55  isEB_ = conf.getParameter<bool>("SelectEb");
56  isEE_ = conf.getParameter<bool>("SelectEe");
57  isNotEBEEGap_ = conf.getParameter<bool>("SelectNotEbEeGap");
58  isEcalDriven_ = conf.getParameter<bool>("SelectEcalDriven");
59  isTrackerDriven_ = conf.getParameter<bool>("SelectTrackerDriven");
60  eOverPMinBarrel_ = conf.getParameter<double>("MinEopBarrel");
61  eOverPMaxBarrel_ = conf.getParameter<double>("MaxEopBarrel");
62  eOverPMinEndcaps_ = conf.getParameter<double>("MinEopEndcaps");
63  eOverPMaxEndcaps_ = conf.getParameter<double>("MaxEopEndcaps");
64  dEtaMinBarrel_ = conf.getParameter<double>("MinDetaBarrel");
65  dEtaMaxBarrel_ = conf.getParameter<double>("MaxDetaBarrel");
66  dEtaMinEndcaps_ = conf.getParameter<double>("MinDetaEndcaps");
67  dEtaMaxEndcaps_ = conf.getParameter<double>("MaxDetaEndcaps");
68  dPhiMinBarrel_ = conf.getParameter<double>("MinDphiBarrel");
69  dPhiMaxBarrel_ = conf.getParameter<double>("MaxDphiBarrel");
70  dPhiMinEndcaps_ = conf.getParameter<double>("MinDphiEndcaps");
71  dPhiMaxEndcaps_ = conf.getParameter<double>("MaxDphiEndcaps");
72  sigIetaIetaMinBarrel_ = conf.getParameter<double>("MinSigIetaIetaBarrel");
73  sigIetaIetaMaxBarrel_ = conf.getParameter<double>("MaxSigIetaIetaBarrel");
74  sigIetaIetaMinEndcaps_ = conf.getParameter<double>("MinSigIetaIetaEndcaps");
75  sigIetaIetaMaxEndcaps_ = conf.getParameter<double>("MaxSigIetaIetaEndcaps");
76  hadronicOverEmMaxBarrel_ = conf.getParameter<double>("MaxHoeBarrel");
77  hadronicOverEmMaxEndcaps_ = conf.getParameter<double>("MaxHoeEndcaps");
78  mvaMin_ = conf.getParameter<double>("MinMva");
79  tipMaxBarrel_ = conf.getParameter<double>("MaxTipBarrel");
80  tipMaxEndcaps_ = conf.getParameter<double>("MaxTipEndcaps");
81  tkIso03Max_ = conf.getParameter<double>("MaxTkIso03");
82  hcalIso03Depth1MaxBarrel_ = conf.getParameter<double>("MaxHcalIso03Depth1Barrel");
83  hcalIso03Depth1MaxEndcaps_ = conf.getParameter<double>("MaxHcalIso03Depth1Endcaps");
84  hcalIso03Depth2MaxEndcaps_ = conf.getParameter<double>("MaxHcalIso03Depth2Endcaps");
85  ecalIso03MaxBarrel_ = conf.getParameter<double>("MaxEcalIso03Barrel");
86  ecalIso03MaxEndcaps_ = conf.getParameter<double>("MaxEcalIso03Endcaps");
87 
88  // for trigger
89  triggerResults_ = conf.getParameter<edm::InputTag>("TriggerResults");
90 // HLTPathsByName_= conf.getParameter<std::vector<std::string > >("HltPaths");
91 // HLTPathsByIndex_.resize(HLTPathsByName_.size());
92 
93  // histos limits and binning
94  nbineta=conf.getParameter<int>("NbinEta");
95  nbineta2D=conf.getParameter<int>("NbinEta2D");
96  etamin=conf.getParameter<double>("EtaMin");
97  etamax=conf.getParameter<double>("EtaMax");
98  //
99  nbinphi=conf.getParameter<int>("NbinPhi");
100  nbinphi2D=conf.getParameter<int>("NbinPhi2D");
101  phimin=conf.getParameter<double>("PhiMin");
102  phimax=conf.getParameter<double>("PhiMax");
103  //
104  nbinpt=conf.getParameter<int>("NbinPt");
105  nbinpteff=conf.getParameter<int>("NbinPtEff");
106  nbinpt2D=conf.getParameter<int>("NbinPt2D");
107  ptmax=conf.getParameter<double>("PtMax");
108  //
109  nbinp=conf.getParameter<int>("NbinP");
110  nbinp2D=conf.getParameter<int>("NbinP2D");
111  pmax=conf.getParameter<double>("PMax");
112  //
113  nbineop=conf.getParameter<int>("NbinEop");
114  nbineop2D=conf.getParameter<int>("NbinEop2D");
115  eopmax=conf.getParameter<double>("EopMax");
116  eopmaxsht=conf.getParameter<double>("EopMaxSht");
117  //
118  nbindeta=conf.getParameter<int>("NbinDeta");
119  detamin=conf.getParameter<double>("DetaMin");
120  detamax=conf.getParameter<double>("DetaMax");
121  //
122  nbindphi=conf.getParameter<int>("NbinDphi");
123  dphimin=conf.getParameter<double>("DphiMin");
124  dphimax=conf.getParameter<double>("DphiMax");
125  //
126  nbindetamatch=conf.getParameter<int>("NbinDetaMatch");
127  nbindetamatch2D=conf.getParameter<int>("NbinDetaMatch2D");
128  detamatchmin=conf.getParameter<double>("DetaMatchMin");
129  detamatchmax=conf.getParameter<double>("DetaMatchMax");
130  //
131  nbindphimatch=conf.getParameter<int>("NbinDphiMatch");
132  nbindphimatch2D=conf.getParameter<int>("NbinDphiMatch2D");
133  dphimatchmin=conf.getParameter<double>("DphiMatchMin");
134  dphimatchmax=conf.getParameter<double>("DphiMatchMax");
135  //
136  nbinfhits=conf.getParameter<int>("NbinFhits");
137  fhitsmax=conf.getParameter<double>("FhitsMax");
138  //
139  nbinlhits=conf.getParameter<int>("NbinLhits");
140  lhitsmax=conf.getParameter<double>("LhitsMax");
141  //
142  nbinxyz=conf.getParameter<int>("NbinXyz");
143  nbinxyz2D=conf.getParameter<int>("NbinXyz2D");
144  //
145  nbinpoptrue= conf.getParameter<int>("NbinPopTrue");
146  poptruemin=conf.getParameter<double>("PopTrueMin");
147  poptruemax=conf.getParameter<double>("PopTrueMax");
148  //
149  nbinmee= conf.getParameter<int>("NbinMee");
150  meemin=conf.getParameter<double>("MeeMin");
151  meemax=conf.getParameter<double>("MeeMax");
152  //
153  nbinhoe= conf.getParameter<int>("NbinHoe");
154  hoemin=conf.getParameter<double>("HoeMin");
155  hoemax=conf.getParameter<double>("HoeMax");
156  }
T getParameter(std::string const &) const
double hadronicOverEmMaxEndcaps_
edm::InputTag vertexCollection_
edm::InputTag triggerResults_
double sigIetaIetaMinBarrel_
double sigIetaIetaMaxBarrel_
edm::InputTag gsftrackCollection_
edm::InputTag matchingObjectCollection_
edm::InputTag electronCollection_
double sigIetaIetaMinEndcaps_
double sigIetaIetaMaxEndcaps_
std::string matchingCondition_
ElectronDqmAnalyzerBase(const edm::ParameterSet &conf)
double hcalIso03Depth1MaxBarrel_
double hcalIso03Depth1MaxEndcaps_
double maxAbsEtaMatchingObject_
edm::InputTag beamSpotTag_
edm::InputTag trackCollection_
double hcalIso03Depth2MaxEndcaps_
double hadronicOverEmMaxBarrel_
ElectronAnalyzer::~ElectronAnalyzer ( )
virtual

Definition at line 158 of file ElectronAnalyzer.cc.

159  {}

Member Function Documentation

void ElectronAnalyzer::analyze ( const edm::Event e,
const edm::EventSetup c 
)
virtual

Reimplemented from ElectronDqmAnalyzerBase.

Definition at line 318 of file ElectronAnalyzer.cc.

References abs, beamSpotTag_, computeInvMass(), deltaR(), deltaR_, electronCollection_, edm::EventID::event(), funct::false, MonitorElement::Fill(), edm::Event::getByLabel(), gsfElectrons_cfi::gsfElectrons, gsftrackCollection_, h1_chi2, h1_classes, h1_dEtaEleCl_propOut_barrel, h1_dEtaEleCl_propOut_endcaps, h1_dEtaSc_propVtx_barrel, h1_dEtaSc_propVtx_endcaps, h1_dPhiEleCl_propOut_barrel, h1_dPhiEleCl_propOut_endcaps, h1_dPhiSc_propVtx_barrel, h1_dPhiSc_propVtx_endcaps, h1_ecalRecHitSumEt_dr03, h1_EeleOPout_barrel, h1_EeleOPout_endcaps, h1_Eop_barrel, h1_Eop_endcaps, h1_fbrem, h1_foundHits, h1_hcalTowerSumEt_dr03, h1_Hoe_barrel, h1_Hoe_endcaps, h1_lostHits, h1_matchedObject_Eta, h1_matchedObject_Phi, h1_matchedObject_Pt, h1_matchingObject_Eta, h1_matchingObject_Phi, h1_matchingObject_Pt, h1_mee, h1_mee_os, h1_mva, h1_provenance, h1_sclEt, h1_sclSigEtaEta_barrel, h1_sclSigEtaEta_endcaps, h1_tkSumPt_dr03, h1_vertexEta, h1_vertexPt_barrel, h1_vertexPt_endcaps, h1_vertexZ, h2_vertexEtaVsPhi, h2_vertexXvsY, edm::EventBase::id(), edm::EventBase::luminosityBlock(), matchingCondition_, matchingObjectCollection_, maxAbsEtaMatchingObject_, maxPtMatchingObject_, nEvents_, pi, reco::BeamSpot::position(), funct::pow(), edm::Handle< T >::product(), py_chi2VsEta, py_chi2VsPhi, py_dEtaSc_propVtxVsPhi, py_dPhiSc_propVtxVsPhi, py_EopVsPhi, py_fbremVsEta, py_fbremVsPhi, py_foundHitsVsEta, py_foundHitsVsPhi, py_HoeVsPhi, py_lostHitsVsEta, py_lostHitsVsPhi, dttmaxenums::R, readAOD_, edm::EventID::run(), selected(), mathSSE::sqrt(), trackCollection_, testEve_cfg::tracks, and vertexCollection_.

319 {
320  nEvents_++ ;
321 // if (!trigger(iEvent)) return ;
322 // nAfterTrigger_++ ;
323 
324 // edm::Handle<SuperClusterCollection> barrelSCs ;
325 // iEvent.getByLabel("correctedHybridSuperClusters",barrelSCs) ;
326 // edm::Handle<SuperClusterCollection> endcapsSCs ;
327 // iEvent.getByLabel("correctedMulti5x5SuperClustersWithPreshower",endcapsSCs) ;
328 // std::cout<<"[ElectronMcSignalValidator::analyze]"
329 // <<"Event "<<iEvent.id()
330 // <<" has "<<barrelSCs.product()->size()<<" barrel superclusters"
331 // <<" and "<<endcapsSCs.product()->size()<<" endcaps superclusters" ;
332 //
334  iEvent.getByLabel(electronCollection_,gsfElectrons) ;
336  iEvent.getByLabel(matchingObjectCollection_,recoClusters) ;
338  iEvent.getByLabel(trackCollection_,tracks);
340  iEvent.getByLabel(gsftrackCollection_,gsfTracks);
342  iEvent.getByLabel(vertexCollection_,vertices);
343  edm::Handle<reco::BeamSpot> recoBeamSpotHandle ;
344  iEvent.getByLabel(beamSpotTag_,recoBeamSpotHandle) ;
345  const BeamSpot bs = *recoBeamSpotHandle ;
346 
347  int ievt = iEvent.id().event();
348  int irun = iEvent.id().run();
349  int ils = iEvent.luminosityBlock();
350 
351  edm::LogInfo("ElectronAnalyzer::analyze")
352  <<"Treating "<<gsfElectrons.product()->size()<<" electrons"
353  <<" from event "<<ievt<<" in run "<<irun<<" and lumiblock "<<ils ;
354  //h1_num_->Fill((*gsfElectrons).size()) ;
355 
356  // selected rec electrons
357  reco::GsfElectronCollection::const_iterator gsfIter ;
358  for
359  ( gsfIter=gsfElectrons->begin() ;
360  gsfIter!=gsfElectrons->end();
361  gsfIter++ )
362  {
363  // vertex TIP
364  double vertexTIP =
365  (gsfIter->vertex().x()-bs.position().x()) * (gsfIter->vertex().x()-bs.position().x()) +
366  (gsfIter->vertex().y()-bs.position().y()) * (gsfIter->vertex().y()-bs.position().y()) ;
367  vertexTIP = sqrt(vertexTIP) ;
368 
369  // select electrons
370  if (!selected(gsfIter,vertexTIP)) continue ;
371 
372  // basic quantities
373  if (gsfIter->isEB()) h1_vertexPt_barrel->Fill( gsfIter->pt() );
374  if (gsfIter->isEE()) h1_vertexPt_endcaps->Fill( gsfIter->pt() );
375  h1_vertexEta->Fill( gsfIter->eta() );
376 // h1_vertexPhi->Fill( gsfIter->phi() );
377  h2_vertexEtaVsPhi->Fill( gsfIter->eta(), gsfIter->phi() );
378 // h1_vertexX->Fill( gsfIter->vertex().x() );
379 // h1_vertexY->Fill( gsfIter->vertex().y() );
380  h2_vertexXvsY->Fill( gsfIter->vertex().x(), gsfIter->vertex().y() );
381  h1_vertexZ->Fill( gsfIter->vertex().z() );
382 // h1_vertexP->Fill( gsfIter->p() );
383 // h1_Et->Fill( gsfIter->superCluster()->energy()/cosh( gsfIter->superCluster()->eta()) );
384 // h1_vertexTIP->Fill( vertexTIP );
385 // h1_charge->Fill( gsfIter->charge() );
386 
387  // supercluster related distributions
388  reco::SuperClusterRef sclRef = gsfIter->superCluster() ;
389  // ALREADY DONE IN GSF ELECTRON CORE
390  // if (!gsfIter->ecalDrivenSeed()&&gsfIter->trackerDrivenSeed())
391  // sclRef = gsfIter->pflowSuperCluster() ;
392 // h1_sclEn->Fill(sclRef->energy());
393 // h1_sclEta->Fill(sclRef->eta());
394 // h1_sclPhi->Fill(sclRef->phi());
395  double R=TMath::Sqrt(sclRef->x()*sclRef->x() + sclRef->y()*sclRef->y() +sclRef->z()*sclRef->z());
396  double Rt=TMath::Sqrt(sclRef->x()*sclRef->x() + sclRef->y()*sclRef->y());
397  h1_sclEt->Fill(sclRef->energy()*(Rt/R));
398 
399  // track related distributions
400 // h1_ambiguousTracks->Fill( gsfIter->ambiguousGsfTracksSize() );
401 // h2_ambiguousTracksVsEta->Fill( gsfIter->eta(), gsfIter->ambiguousGsfTracksSize() );
402 // h2_ambiguousTracksVsPhi->Fill( gsfIter->phi(), gsfIter->ambiguousGsfTracksSize() );
403 // h2_ambiguousTracksVsPt->Fill( gsfIter->pt(), gsfIter->ambiguousGsfTracksSize() );
404  if (!readAOD_)
405  { // track extra does not exist in AOD
406  h1_foundHits->Fill( gsfIter->gsfTrack()->numberOfValidHits() );
407  py_foundHitsVsEta->Fill( gsfIter->eta(), gsfIter->gsfTrack()->numberOfValidHits() );
408  py_foundHitsVsPhi->Fill( gsfIter->phi(), gsfIter->gsfTrack()->numberOfValidHits() );
409  //h2_foundHitsVsPt->Fill( gsfIter->pt(), gsfIter->gsfTrack()->numberOfValidHits() );
410  h1_lostHits->Fill( gsfIter->gsfTrack()->numberOfLostHits() );
411  py_lostHitsVsEta->Fill( gsfIter->eta(), gsfIter->gsfTrack()->numberOfLostHits() );
412  py_lostHitsVsPhi->Fill( gsfIter->phi(), gsfIter->gsfTrack()->numberOfLostHits() );
413  //h2_lostHitsVsPt->Fill( gsfIter->pt(), gsfIter->gsfTrack()->numberOfLostHits() );
414  h1_chi2->Fill( gsfIter->gsfTrack()->normalizedChi2() );
415  py_chi2VsEta->Fill( gsfIter->eta(), gsfIter->gsfTrack()->normalizedChi2() );
416  py_chi2VsPhi->Fill( gsfIter->phi(), gsfIter->gsfTrack()->normalizedChi2() );
417  //h2_chi2VsPt->Fill( gsfIter->pt(), gsfIter->gsfTrack()->normalizedChi2() );
418  }
419 
420  // match distributions
421  if (gsfIter->isEB())
422  {
423  h1_Eop_barrel->Fill( gsfIter->eSuperClusterOverP() );
424  h1_EeleOPout_barrel->Fill( gsfIter->eEleClusterOverPout() );
425  h1_dEtaSc_propVtx_barrel->Fill(gsfIter->deltaEtaSuperClusterTrackAtVtx());
426  h1_dEtaEleCl_propOut_barrel->Fill(gsfIter->deltaEtaEleClusterTrackAtCalo());
427  h1_dPhiSc_propVtx_barrel->Fill(gsfIter->deltaPhiSuperClusterTrackAtVtx());
428  h1_dPhiEleCl_propOut_barrel->Fill(gsfIter->deltaPhiEleClusterTrackAtCalo());
429  h1_Hoe_barrel->Fill(gsfIter->hadronicOverEm());
430  h1_sclSigEtaEta_barrel->Fill( gsfIter->scSigmaEtaEta() );
431  }
432  if (gsfIter->isEE())
433  {
434  h1_Eop_endcaps->Fill( gsfIter->eSuperClusterOverP() );
435  h1_EeleOPout_endcaps->Fill( gsfIter->eEleClusterOverPout() );
436  h1_dEtaSc_propVtx_endcaps->Fill(gsfIter->deltaEtaSuperClusterTrackAtVtx());
437  h1_dEtaEleCl_propOut_endcaps->Fill(gsfIter->deltaEtaEleClusterTrackAtCalo());
438  h1_dPhiSc_propVtx_endcaps->Fill(gsfIter->deltaPhiSuperClusterTrackAtVtx());
439  h1_dPhiEleCl_propOut_endcaps->Fill(gsfIter->deltaPhiEleClusterTrackAtCalo());
440  h1_Hoe_endcaps->Fill(gsfIter->hadronicOverEm());
441  h1_sclSigEtaEta_endcaps->Fill( gsfIter->scSigmaEtaEta() );
442  }
443  py_EopVsPhi->Fill( gsfIter->phi(), gsfIter->eSuperClusterOverP() );
444 // h2_EopVsPt->Fill( gsfIter->pt(), gsfIter->eSuperClusterOverP() );
445 // h2_EeleOPoutVsPhi->Fill( gsfIter->phi(), gsfIter->eEleClusterOverPout() );
446 // h2_EeleOPoutVsPt->Fill( gsfIter->pt(), gsfIter->eEleClusterOverPout() );
447  py_dEtaSc_propVtxVsPhi->Fill(gsfIter->phi(), gsfIter->deltaEtaSuperClusterTrackAtVtx());
448 // h2_dEtaSc_propVtxVsPt->Fill(gsfIter->pt(), gsfIter->deltaEtaSuperClusterTrackAtVtx());
449 // h2_dEtaEleCl_propOutVsPhi->Fill(gsfIter->phi(), gsfIter->deltaEtaEleClusterTrackAtCalo());
450 // h2_dEtaEleCl_propOutVsPt->Fill(gsfIter->pt(), gsfIter->deltaEtaEleClusterTrackAtCalo());
451  py_dPhiSc_propVtxVsPhi->Fill(gsfIter->phi(), gsfIter->deltaPhiSuperClusterTrackAtVtx());
452 // h2_dPhiSc_propVtxVsPt->Fill(gsfIter->pt(), gsfIter->deltaPhiSuperClusterTrackAtVtx());
453 // h2_dPhiEleCl_propOutVsPhi->Fill(gsfIter->phi(), gsfIter->deltaPhiEleClusterTrackAtCalo());
454 // h2_dPhiEleCl_propOutVsPt->Fill(gsfIter->pt(), gsfIter->deltaPhiEleClusterTrackAtCalo());
455  py_HoeVsPhi->Fill(gsfIter->phi(), gsfIter->hadronicOverEm());
456 // h2_HoeVsPt->Fill(gsfIter->pt(), gsfIter->hadronicOverEm());
457 
458 // // from gsf track interface, hence using mean
459 // if (!readAOD_)
460 // { // track extra does not exist in AOD
461 // h_PinMnPout->Fill( gsfIter->gsfTrack()->innerMomentum().R() - gsfIter->gsfTrack()->outerMomentum().R() );
462 // //h_outerP->Fill( gsfIter->gsfTrack()->outerMomentum().R() );
463 // h_innerPt_mean->Fill( gsfIter->gsfTrack()->innerMomentum().Rho() );
464 // h_outerPt_mean->Fill( gsfIter->gsfTrack()->outerMomentum().Rho() );
465 // }
466 //
467 // // from electron interface, hence using mode
468 // h_PinMnPout_mode->Fill( gsfIter->trackMomentumAtVtx().R() - gsfIter->trackMomentumOut().R() );
469 // //h_outerP_mode->Fill( gsfIter->trackMomentumOut().R() );
470 // h_outerPt_mode->Fill( gsfIter->trackMomentumOut().Rho() );
471 //
472 
473  // fbrem, classes
474  h1_fbrem->Fill(gsfIter->fbrem()) ;
475  py_fbremVsEta->Fill(gsfIter->eta(),gsfIter->fbrem()) ;
476  py_fbremVsPhi->Fill(gsfIter->phi(),gsfIter->fbrem()) ;
477 // h2_fbremVsPt->Fill(gsfIter->pt(),gsfIter->fbrem()) ;
478  int eleClass = gsfIter->classification() ;
479  if (gsfIter->isEE()) eleClass+=5;
480  h1_classes->Fill(eleClass) ;
481 
482 
483  // pflow
484  h1_mva->Fill(gsfIter->mva()) ;
485  if (gsfIter->ecalDrivenSeed()) h1_provenance->Fill(1.) ;
486  if (gsfIter->trackerDrivenSeed()) h1_provenance->Fill(-1.) ;
487  if (gsfIter->trackerDrivenSeed()||gsfIter->ecalDrivenSeed()) h1_provenance->Fill(0.);
488  if (gsfIter->trackerDrivenSeed()&&!gsfIter->ecalDrivenSeed()) h1_provenance->Fill(-2.);
489  if (!gsfIter->trackerDrivenSeed()&&gsfIter->ecalDrivenSeed()) h1_provenance->Fill(2.);
490 
491  // isolation
492  h1_tkSumPt_dr03->Fill(gsfIter->dr03TkSumPt());
493  h1_ecalRecHitSumEt_dr03->Fill(gsfIter->dr03EcalRecHitSumEt());
494  h1_hcalTowerSumEt_dr03->Fill(gsfIter->dr03HcalTowerSumEt());
495 // h1_hcalDepth1TowerSumEt_dr03->Fill(gsfIter->dr03HcalDepth1TowerSumEt());
496 // h1_hcalDepth2TowerSumEt_dr03->Fill(gsfIter->dr03HcalDepth2TowerSumEt());
497 // h1_tkSumPt_dr04->Fill(gsfIter->dr04TkSumPt());
498 // h1_ecalRecHitSumEt_dr04->Fill(gsfIter->dr04EcalRecHitSumEt());
499 // h1_hcalTowerSumEt_dr04->Fill(gsfIter->dr04HcalTowerSumEt());
502 
503  }
504 
505  // association matching object-reco electrons
506 // int matchingObjectNum=0;
507  reco::SuperClusterCollection::const_iterator moIter ;
508  for
509  ( moIter=recoClusters->begin() ;
510  moIter!=recoClusters->end() ;
511  moIter++ )
512  {
513 // // number of matching objects
514 // matchingObjectNum++;
515 
516  if
517  ( moIter->energy()/cosh(moIter->eta())>maxPtMatchingObject_ ||
518  std::abs(moIter->eta())> maxAbsEtaMatchingObject_ )
519  { continue ; }
520 
521 // // suppress the endcaps
522 // //if (std::abs(moIter->eta()) > 1.5) continue;
523 // // select central z
524 // //if ( std::abs((*mcIter)->production_vertex()->position().z())>50.) continue;
525 
526  h1_matchingObject_Eta->Fill( moIter->eta() );
527 // h1_matchingObject_AbsEta->Fill( std::abs(moIter->eta()) );
528 // h1_matchingObject_P->Fill( moIter->energy() );
529  h1_matchingObject_Pt->Fill( moIter->energy()/cosh(moIter->eta()) );
530  h1_matchingObject_Phi->Fill( moIter->phi() );
531 // h1_matchingObject_Z->Fill( moIter->z() );
532 
533  bool okGsfFound = false ;
534  double gsfOkRatio = 999999999. ;
535  reco::GsfElectron bestGsfElectron ;
536  reco::GsfElectronCollection::const_iterator gsfIter ;
537  for
538  ( gsfIter=gsfElectrons->begin() ;
539  gsfIter!=gsfElectrons->end() ;
540  gsfIter++ )
541  {
542  reco::GsfElectronCollection::const_iterator gsfIter2 ;
543  for
544  ( gsfIter2=gsfIter+1;
545  gsfIter2!=gsfElectrons->end() ;
546  gsfIter2++ )
547  {
548  float invMass = computeInvMass(*gsfIter,*gsfIter2) ;
549  h1_mee->Fill(invMass) ;
550  if (((gsfIter->charge())*(gsfIter2->charge()))<0.)
551  { h1_mee_os->Fill(invMass) ; }
552  }
553 
554  double vertexTIP =
555  (gsfIter->vertex().x()-bs.position().x()) * (gsfIter->vertex().x()-bs.position().x()) +
556  (gsfIter->vertex().y()-bs.position().y()) * (gsfIter->vertex().y()-bs.position().y()) ;
557  vertexTIP = sqrt(vertexTIP) ;
558 
559  // select electrons
560  if (!selected(gsfIter,vertexTIP)) continue ;
561 
562  // matching with a cone in eta phi
563  if ( matchingCondition_ == "Cone" )
564  {
565  double dphi = gsfIter->phi()-moIter->phi() ;
566  if (std::abs(dphi)>CLHEP::pi)
567  { dphi = dphi < 0? (CLHEP::twopi) + dphi : dphi - CLHEP::twopi ; }
568  double deltaR = sqrt(pow((moIter->eta()-gsfIter->eta()),2) + pow(dphi,2)) ;
569  if ( deltaR < deltaR_ )
570  {
571  //if ( (genPc->pdg_id() == 11) && (gsfIter->charge() < 0.) || (genPc->pdg_id() == -11) &&
572  //(gsfIter->charge() > 0.) ){
573  double tmpGsfRatio = gsfIter->p()/moIter->energy() ;
574  if ( std::abs(tmpGsfRatio-1) < std::abs(gsfOkRatio-1) )
575  {
576  gsfOkRatio = tmpGsfRatio;
577  bestGsfElectron=*gsfIter;
578  okGsfFound = true;
579  }
580  //}
581  }
582  }
583  } // loop over rec ele to look for the best one
584  if (okGsfFound)
585  {
586  // generated distributions for matched electrons
587  h1_matchedObject_Eta->Fill( moIter->eta() );
588  // h1_matchedObject_AbsEta->Fill( std::abs(moIter->eta()) );
589  h1_matchedObject_Pt->Fill( moIter->energy()/cosh(moIter->eta()) );
590  h1_matchedObject_Phi->Fill( moIter->phi() );
591  // h1_matchedObject_Z->Fill( moIter->z() );
592 
593  //classes
594  // int eleClass = bestGsfElectron.classification() ;
595  // h_classes->Fill(eleClass) ;
596  // h_matchedEle_eta->Fill(std::abs(bestGsfElectron.eta()));
597  // if (bestGsfElectron.classification() == GsfElectron::GOLDEN) h_matchedEle_eta_golden->Fill(std::abs(bestGsfElectron.eta()));
598  // if (bestGsfElectron.classification() == GsfElectron::SHOWERING) h_matchedEle_eta_shower->Fill(std::abs(bestGsfElectron.eta()));
599  // //if (bestGsfElectron.classification() == GsfElectron::BIGBREM) h_matchedEle_eta_bbrem->Fill(std::abs(bestGsfElectron.eta()));
600  // //if (bestGsfElectron.classification() == GsfElectron::OLDNARROW) h_matchedEle_eta_narrow->Fill(std::abs(bestGsfElectron.eta()));
601  }
602 
603  } // loop overmatching object
604 
605 // h_matchingObject_Num->Fill(matchingObjectNum) ;
606 
607  }
MonitorElement * h1_foundHits
MonitorElement * h1_mee_os
bool selected(const reco::GsfElectronCollection::const_iterator &gsfIter, double vertexTIP)
MonitorElement * h1_dPhiSc_propVtx_barrel
edm::InputTag vertexCollection_
unsigned int nEvents_
MonitorElement * h1_vertexPt_barrel
MonitorElement * py_lostHitsVsEta
MonitorElement * h1_sclSigEtaEta_barrel
MonitorElement * py_chi2VsEta
MonitorElement * h1_vertexEta
MonitorElement * py_chi2VsPhi
MonitorElement * h1_Eop_endcaps
MonitorElement * h1_ecalRecHitSumEt_dr03
#define abs(x)
Definition: mlp_lapack.h:159
MonitorElement * h1_hcalTowerSumEt_dr03
MonitorElement * h1_matchingObject_Eta
MonitorElement * h1_Hoe_barrel
MonitorElement * py_HoeVsPhi
MonitorElement * h1_matchedObject_Pt
MonitorElement * h1_matchedObject_Phi
void Fill(long long x)
MonitorElement * h1_tkSumPt_dr03
int iEvent
Definition: GenABIO.cc:243
edm::InputTag gsftrackCollection_
MonitorElement * h2_vertexXvsY
MonitorElement * py_fbremVsEta
MonitorElement * h1_provenance
MonitorElement * h1_dEtaEleCl_propOut_barrel
MonitorElement * py_EopVsPhi
edm::InputTag matchingObjectCollection_
MonitorElement * h1_Eop_barrel
T sqrt(T t)
Definition: SSEVec.h:28
edm::InputTag electronCollection_
MonitorElement * py_dEtaSc_propVtxVsPhi
std::string matchingCondition_
MonitorElement * h1_dEtaEleCl_propOut_endcaps
MonitorElement * h1_Hoe_endcaps
MonitorElement * h1_vertexPt_endcaps
MonitorElement * py_lostHitsVsPhi
double deltaR(double eta1, double eta2, double phi1, double phi2)
Definition: TreeUtility.cc:17
MonitorElement * h1_vertexZ
MonitorElement * py_dPhiSc_propVtxVsPhi
MonitorElement * h1_dPhiEleCl_propOut_endcaps
MonitorElement * py_fbremVsPhi
MonitorElement * py_foundHitsVsPhi
tuple tracks
Definition: testEve_cfg.py:39
MonitorElement * h1_fbrem
MonitorElement * h1_chi2
double maxAbsEtaMatchingObject_
MonitorElement * h1_lostHits
MonitorElement * h2_vertexEtaVsPhi
MonitorElement * h1_EeleOPout_endcaps
edm::InputTag beamSpotTag_
MonitorElement * h1_mee
T const * product() const
Definition: Handle.h:74
MonitorElement * h1_classes
MonitorElement * h1_sclEt
MonitorElement * h1_EeleOPout_barrel
MonitorElement * h1_dEtaSc_propVtx_barrel
float computeInvMass(const reco::GsfElectron &e1, const reco::GsfElectron &e2)
MonitorElement * h1_matchingObject_Phi
MonitorElement * h1_dPhiSc_propVtx_endcaps
edm::InputTag trackCollection_
MonitorElement * h1_sclSigEtaEta_endcaps
const Point & position() const
position
Definition: BeamSpot.h:63
double pi
MonitorElement * py_foundHitsVsEta
MonitorElement * h1_matchedObject_Eta
MonitorElement * h1_matchingObject_Pt
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:40
MonitorElement * h1_dPhiEleCl_propOut_barrel
MonitorElement * h1_dEtaSc_propVtx_endcaps
MonitorElement * h1_mva
void ElectronAnalyzer::book ( )
virtual

Reimplemented from ElectronDqmAnalyzerBase.

Definition at line 161 of file ElectronAnalyzer.cc.

References ElectronDqmAnalyzerBase::bookH1(), ElectronDqmAnalyzerBase::bookH1withSumw2(), ElectronDqmAnalyzerBase::bookH2(), ElectronDqmAnalyzerBase::bookP1(), detamatchmax, detamatchmin, dphimatchmax, dphimatchmin, eopmax, etamax, etamin, fhitsmax, h1_chi2, h1_classes, h1_dEtaEleCl_propOut_barrel, h1_dEtaEleCl_propOut_endcaps, h1_dEtaSc_propVtx_barrel, h1_dEtaSc_propVtx_endcaps, h1_dPhiEleCl_propOut_barrel, h1_dPhiEleCl_propOut_endcaps, h1_dPhiSc_propVtx_barrel, h1_dPhiSc_propVtx_endcaps, h1_ecalRecHitSumEt_dr03, h1_EeleOPout_barrel, h1_EeleOPout_endcaps, h1_Eop_barrel, h1_Eop_endcaps, h1_fbrem, h1_foundHits, h1_hcalTowerSumEt_dr03, h1_Hoe_barrel, h1_Hoe_endcaps, h1_lostHits, h1_matchedObject_Eta, h1_matchedObject_Phi, h1_matchedObject_Pt, h1_matchingObject_Eta, h1_matchingObject_Phi, h1_matchingObject_Pt, h1_mee, h1_mee_os, h1_mva, h1_provenance, h1_sclEt, h1_sclSigEtaEta_barrel, h1_sclSigEtaEta_endcaps, h1_tkSumPt_dr03, h1_vertexEta, h1_vertexPt_barrel, h1_vertexPt_endcaps, h1_vertexZ, h2_vertexEtaVsPhi, h2_vertexXvsY, hoemax, hoemin, edm::InputTag::label(), lhitsmax, matchingObjectCollection_, meemax, meemin, nbindetamatch, nbindphimatch, nbineop, nbineta, nbineta2D, nbinfhits, nbinhoe, nbinmee, nbinphi, nbinphi2D, nbinpt, nbinpteff, nbinxyz, nbinxyz2D, nEvents_, phimax, phimin, ptmax, py_chi2VsEta, py_chi2VsPhi, py_dEtaSc_propVtxVsPhi, py_dPhiSc_propVtxVsPhi, py_EopVsPhi, py_fbremVsEta, py_fbremVsPhi, py_foundHitsVsEta, py_foundHitsVsPhi, py_HoeVsPhi, py_lostHitsVsEta, py_lostHitsVsPhi, and ElectronDqmAnalyzerBase::setBookIndex().

162  {
163  nEvents_ = 0 ;
164  //nAfterTrigger_ = 0 ;
165 
166 
167  // basic quantities
168 // h1_num_= bookH1("num","# rec electrons",20, 0.,20.,"N_{ele}");
169 // h1_vertexP = bookH1("vertexP", "ele p at vertex", nbinp,0.,pmax,"p_{vertex} (GeV/c)");
170 // h1_Et = bookH1("Et","ele SC transverse energy", nbinpt,0.,ptmax,"E_{T} (GeV)");
171 // h1_vertexTIP = bookH1("vertexTIP","ele transverse impact parameter (wrt bs)",90,0.,0.15,"TIP (cm)");
172 // h1_charge = bookH1("charge","ele charge",5,-2.,2.,"charge");
173  h1_vertexPt_barrel = bookH1("vertexPt_barrel","ele transverse momentum in barrel",nbinpt,0.,ptmax,"p_{T vertex} (GeV/c)");
174  h1_vertexPt_endcaps = bookH1("vertexPt_endcaps","ele transverse momentum in endcaps",nbinpt,0.,ptmax,"p_{T vertex} (GeV/c)");
175  h1_vertexEta = bookH1("vertexEta","ele momentum #eta",nbineta,etamin,etamax,"#eta");
176 // h1_vertexPhi = bookH1("vertexPhi","ele momentum #phi",nbinphi,phimin,phimax,"#phi (rad)");
177  h2_vertexEtaVsPhi = bookH2("vertexEtaVsPhi","ele momentum #eta vs #phi",nbineta2D,etamin,etamax,nbinphi2D,phimin,phimax,"#eta","#phi (rad)");
178 // h1_vertexX = bookH1("vertexX","ele vertex x",nbinxyz,-0.1,0.1,"x (cm)");
179 // h1_vertexY = bookH1("vertexY","ele vertex y",nbinxyz,-0.1,0.1,"y (cm)");
180  h2_vertexXvsY = bookH2("vertexXvsY","ele vertex x vs y",nbinxyz2D,-0.1,0.1,nbinxyz2D,-0.1,0.1,"x (cm)","y (cm)");
181  h1_vertexZ = bookH1("vertexZ","ele vertex z",nbinxyz,-25, 25,"z (cm)");
182 
183  // super-clusters
184 // h1_sclEn = bookH1("sclEnergy","ele supercluster energy",nbinp,0.,pmax,"E (GeV)");
185 // h1_sclEta = bookH1("sclEta","ele supercluster #eta",nbineta,etamin,etamax,"#eta");
186 // h1_sclPhi = bookH1("sclPhi","ele supercluster #phi",nbinphi,phimin,phimax,"#phi (rad)");
187  h1_sclEt = bookH1("sclEt","ele supercluster transverse energy",nbinpt,0.,ptmax,"E_{T} (GeV)");
188 
189  // electron track
190 // h1_ambiguousTracks = bookH1("ambiguousTracks","ele # ambiguous tracks", 5,0.,5.,"N_{amb. tk}");
191 // h2_ambiguousTracksVsEta = bookH2("ambiguousTracksVsEta","ele # ambiguous tracks vs #eta", nbineta2D,etamin,etamax,5,0.,5.,"#eta","N_{amb. tk}");
192 // h2_ambiguousTracksVsPhi = bookH2("ambiguousTracksVsPhi","ele # ambiguous tracks vs #phi", nbinphi2D,phimin,phimax,5,0.,5.,"#phi(rad)","N_{amb. tk}");
193 // h2_ambiguousTracksVsPt = bookH2("ambiguousTracksVsPt","ele # ambiguous tracks vs pt", nbinpt2D,0.,ptmax,5,0.,5.,"p_{T} (GeV/c),"N_{amb. tk}");
194  h1_chi2 = bookH1("chi2","ele track #chi^{2}",100,0.,15.,"#Chi^{2}");
195  py_chi2VsEta = bookP1("chi2VsEta","ele track #chi^{2} vs #eta",nbineta2D,etamin,etamax,0.,15.,"#eta","<#chi^{2}>");
196  py_chi2VsPhi = bookP1("chi2VsPhi","ele track #chi^{2} vs #phi",nbinphi2D,phimin,phimax,0.,15.,"#phi (rad)","<#chi^{2}>");
197  //h2_chi2VsPt = bookH2("chi2VsPt","ele track #chi^{2} vs pt",nbinpt2D,0.,ptmax,50,0.,15.,"p_{T} (GeV/c)","<#chi^{2}>");
198  h1_foundHits = bookH1("foundHits","ele track # found hits",nbinfhits,0.,fhitsmax,"N_{hits}");
199  py_foundHitsVsEta = bookP1("foundHitsVsEta","ele track # found hits vs #eta",nbineta2D,etamin,etamax,0.,fhitsmax,"#eta","<# hits>");
200  py_foundHitsVsPhi = bookP1("foundHitsVsPhi","ele track # found hits vs #phi",nbinphi2D,phimin,phimax,0.,fhitsmax,"#phi (rad)","<# hits>");
201 // h2_foundHitsVsPt = bookH2("foundHitsVsPt","ele track # found hits vs pt",nbinpt2D,0.,ptmax,nbinfhits,0.,fhitsmax,"p_{T} (GeV/c)","<# hits>");
202  h1_lostHits = bookH1("lostHits","ele track # lost hits",5,0.,5.,"N_{lost hits}");
203  py_lostHitsVsEta = bookP1("lostHitsVsEta","ele track # lost hits vs #eta",nbineta2D,etamin,etamax,0.,lhitsmax,"#eta","<# hits>");
204  py_lostHitsVsPhi = bookP1("lostHitsVsPhi","ele track # lost hits vs #eta",nbinphi2D,phimin,phimax,0.,lhitsmax,"#phi (rad)","<# hits>");
205 // h2_lostHitsVsPt = bookH2("lostHitsVsPt","ele track # lost hits vs #eta",nbinpt2D,0.,ptmax,nbinlhits,0.,lhitsmax,"p_{T} (GeV/c)","<# hits>");
206 
207  // electron matching and ID
208  //h1_EoPout = bookH1( "EoPout","ele E/P_{out}",nbineop,0.,eopmax,"E_{seed}/P_{out}");
209  //h1_dEtaCl_propOut = bookH1( "dEtaCl_propOut","ele #eta_{cl} - #eta_{tr}, prop from outermost",nbindetamatch,detamatchmin,detamatchmax,"#eta_{seedcl} - #eta_{tr}");
210  //h1_dPhiCl_propOut = bookH1( "dPhiCl_propOut","ele #phi_{cl} - #phi_{tr}, prop from outermost",nbindphimatch,dphimatchmin,dphimatchmax,"#phi_{seedcl} - #phi_{tr} (rad)");
211  //h1_outerP = bookH1( "outerP","ele track outer p, mean",nbinp,0.,pmax,"P_{out} (GeV/c)");
212  //h1_outerP_mode = bookH1( "outerP_mode","ele track outer p, mode",nbinp,0.,pmax,"P_{out} (GeV/c)");
213  h1_Eop_barrel = bookH1( "Eop_barrel","ele E/P_{vertex} in barrel",nbineop,0.,eopmax,"E/P_{vertex}");
214  h1_Eop_endcaps = bookH1( "Eop_endcaps","ele E/P_{vertex} in endcaps",nbineop,0.,eopmax,"E/P_{vertex}");
215  py_EopVsPhi = bookP1("EopVsPhi","ele E/P_{vertex} vs #phi",nbinphi2D,phimin,phimax,0.,eopmax,"#phi (rad)","<E/P_{vertex}>");
216 // h2_EopVsPt = bookH2("EopVsPt","ele E/P_{vertex} vs pt",nbinpt2D,0.,ptmax,nbineop,0.,eopmax,"p_{T} (GeV/c)","E/P_{vertex}");
217  h1_EeleOPout_barrel = bookH1( "EeleOPout_barrel","ele E_{ele}/P_{out} in barrel",nbineop,0.,eopmax,"E_{ele}/P_{out}");
218  h1_EeleOPout_endcaps = bookH1( "EeleOPout_endcaps","ele E_{ele}/P_{out} in endcaps",nbineop,0.,eopmax,"E_{ele}/P_{out}");
219 // h2_EeleOPoutVsPhi = bookH2("EeleOPoutVsPhi","ele E_{ele}/P_{out} vs #phi",nbinphi2D,phimin,phimax,nbineop,0.,eopmax,"#phi","E_{ele}/P_{out}");
220 // h2_EeleOPoutVsPt = bookH2("EeleOPoutVsPt","ele E_{ele}/P_{out} vs pt",nbinpt2D,0.,ptmax,nbineop,0.,eopmax,"p_{T} (GeV/c)","E_{ele}/P_{out}");
221  h1_dEtaSc_propVtx_barrel = bookH1( "dEtaSc_propVtx_barrel","ele #eta_{sc} - #eta_{tr}, prop from vertex, in barrel",nbindetamatch,detamatchmin,detamatchmax,"#eta_{sc} - #eta_{tr}");
222  h1_dEtaSc_propVtx_endcaps = bookH1( "dEtaSc_propVtx_endcaps","ele #eta_{sc} - #eta_{tr}, prop from vertex, in endcaps",nbindetamatch,detamatchmin,detamatchmax,"#eta_{sc} - #eta_{tr}");
223  py_dEtaSc_propVtxVsPhi = bookP1("dEtaSc_propVtxVsPhi","ele #eta_{sc} - #eta_{tr}, prop from vertex vs #phi",nbinphi2D,phimin,phimax,detamatchmin,detamatchmax,"#phi (rad)","<#eta_{sc} - #eta_{tr}>");
224 // h2_dEtaSc_propVtxVsPt = bookH2("dEtaSc_propVtxVsPt","ele #eta_{sc} - #eta_{tr}, prop from vertex vs pt",nbinpt2D,0.,ptmax,nbindetamatch,detamatchmin,detamatchmax,"#eta_{sc} - #eta_{tr}");
225  h1_dEtaEleCl_propOut_barrel = bookH1( "dEtaEleCl_propOut_barrel","ele #eta_{EleCl} - #eta_{tr}, prop from outermost, in barrel",nbindetamatch,detamatchmin,detamatchmax,"#eta_{elecl} - #eta_{tr}");
226  h1_dEtaEleCl_propOut_endcaps = bookH1( "dEtaEleCl_propOut_endcaps","ele #eta_{EleCl} - #eta_{tr}, prop from outermost, in endcaps",nbindetamatch,detamatchmin,detamatchmax,"#eta_{elecl} - #eta_{tr}");
227 // h2_dEtaEleCl_propOutVsPhi = bookH2("dEtaEleCl_propOutVsPhi","ele #eta_{EleCl} - #eta_{tr}, prop from outermost vs #phi",nbinphi2D,phimin,phimax,nbindetamatch,detamatchmin,detamatchmax,"#phi (rad)","#eta_{elecl} - #eta_{tr}");
228 // h2_dEtaEleCl_propOutVsPt = bookH2("dEtaEleCl_propOutVsPt","ele #eta_{EleCl} - #eta_{tr}, prop from outermost vs pt",nbinpt2D,0.,ptmax,nbindetamatch,detamatchmin,detamatchmax,"p_{T} (GeV/c)","#eta_{elecl} - #eta_{tr}");
229  h1_dPhiSc_propVtx_barrel = bookH1( "dPhiSc_propVtx_barrel","ele #phi_{sc} - #phi_{tr}, prop from vertex, in barrel",nbindphimatch,dphimatchmin,dphimatchmax,"#phi_{sc} - #phi_{tr} (rad)");
230  h1_dPhiSc_propVtx_endcaps = bookH1( "dPhiSc_propVtx_endcaps","ele #phi_{sc} - #phi_{tr}, prop from vertex, in endcaps",nbindphimatch,dphimatchmin,dphimatchmax,"#phi_{sc} - #phi_{tr} (rad)");
231  py_dPhiSc_propVtxVsPhi = bookP1("dPhiSc_propVtxVsPhi","ele #phi_{sc} - #phi_{tr}, prop from vertex vs #phi",nbinphi2D,phimin,phimax,dphimatchmin,dphimatchmax,"#phi (rad)","<#phi_{sc} - #phi_{tr}> (rad)");
232 // h2_dPhiSc_propVtxVsPt = bookH2("dPhiSc_propVtxVsPt","ele #phi_{sc} - #phi_{tr}, prop from vertex vs pt",nbinpt2D,0.,ptmax,nbindphimatch,dphimatchmin,dphimatchmax,"p_{T} (GeV/c)","#phi_{sc} - #phi_{tr} (rad)");
233  h1_dPhiEleCl_propOut_barrel = bookH1( "dPhiEleCl_propOut_barrel","ele #phi_{EleCl} - #phi_{tr}, prop from outermost, in barrel",nbindphimatch,dphimatchmin,dphimatchmax,"#phi_{elecl} - #phi_{tr} (rad)");
234  h1_dPhiEleCl_propOut_endcaps = bookH1( "dPhiEleCl_propOut_endcaps","ele #phi_{EleCl} - #phi_{tr}, prop from outermost, in endcaps",nbindphimatch,dphimatchmin,dphimatchmax,"#phi_{elecl} - #phi_{tr} (rad)");
235 // h2_dPhiEleCl_propOutVsPhi = bookH2("dPhiEleCl_propOutVsPhi","ele #phi_{EleCl} - #phi_{tr}, prop from outermost vs #phi",nbinphi2D,phimin,phimax,nbindphimatch,dphimatchmin,dphimatchmax,"#phi_{elecl} - #phi_{tr} (rad)");
236 // h2_dPhiEleCl_propOutVsPt = bookH2("dPhiEleCl_propOutVsPt","ele #phi_{EleCl} - #phi_{tr}, prop from outermost vs pt",nbinpt2D,0.,ptmax,nbindphimatch,dphimatchmin,dphimatchmax,"p_{T} (GeV/c)","#phi_{elecl} - #phi_{tr} (rad)");
237  h1_Hoe_barrel = bookH1("Hoe_barrel","ele hadronic energy / em energy, in barrel", nbinhoe, hoemin, hoemax,"H/E","Events","ELE_LOGY E1 P") ;
238  h1_Hoe_endcaps = bookH1("Hoe_endcaps","ele hadronic energy / em energy, in endcaps", nbinhoe, hoemin, hoemax,"H/E","Events","ELE_LOGY E1 P") ;
239  py_HoeVsPhi = bookP1("HoeVsPhi","ele hadronic energy / em energy vs #phi",nbinphi2D,phimin,phimax,hoemin,hoemax,"#phi (rad)","<H/E>","E1 P") ;
240 // h2_HoeVsPt = bookH2("HoeVsPt","ele hadronic energy / em energy vs pt",nbinpt2D,0.,ptmax,nbinhoe,hoemin,hoemax,"p_{T} (GeV/c)","<H/E>","ELE_LOGY COLZ") ;
241  h1_sclSigEtaEta_barrel = bookH1("sclSigEtaEta_barrel","ele supercluster sigma ieta ieta in barrel",100,0.,0.05,"sietaieta");
242  h1_sclSigEtaEta_endcaps = bookH1("sclSigEtaEta_endcaps","ele supercluster sigma ieta ieta in endcaps",100,0.,0.05,"sietaieta");
243 
244  // fbrem
245 // h1_innerPt_mean = bookH1( "innerPt_mean","ele track inner p_{T}, mean",nbinpt,0.,ptmax,"P_{T in} (GeV/c)");
246 // h1_outerPt_mean = bookH1( "outerPt_mean","ele track outer p_{T}, mean",nbinpt,0.,ptmax,"P_{T out} (GeV/c)");
247 // h1_outerPt_mode = bookH1( "outerPt_mode","ele track outer p_{T}, mode",nbinpt,0.,ptmax,"P_{T out} (GeV/c)");
248 // //h_PinMnPout_mode = bookH1( "PinMnPout_mode","ele track inner p - outer p, mode" ,nbinp,0.,100.,"P_{in} - P_{out} (GeV/c)");
249 // h1_PinMnPout = bookH1( "PinMnPout","ele track inner p - outer p, mean" ,nbinp,0.,200.,"P_{in} - P_{out} (GeV/c)");
250 // h1_PinMnPout_mode = bookH1( "PinMnPout_mode","ele track inner p - outer p, mode",nbinp,0.,100.,"P_{in} - P_{out}, mode (GeV/c)");
251  h1_fbrem = bookH1("fbrem","ele brem fraction",100,0.,1.,"P_{in} - P_{out} / P_{in}") ;
252  py_fbremVsEta = bookP1("fbremVsEta","ele brem fraction vs #eta",nbineta2D,etamin,etamax,0.,1.,"#eta","<P_{in} - P_{out} / P_{in}>") ;
253  py_fbremVsPhi = bookP1("fbremVsPhi","ele brem fraction vs #phi",nbinphi2D,phimin,phimax,0.,1.,"#phi (rad)","<P_{in} - P_{out} / P_{in}>") ;
254 // h2_fbremVsPt = bookH2("fbremVsPt","ele brem fraction vs pt",nbinpt2D,0.,ptmax,100,0.,1.,"p_{T} (GeV/c)","<P_{in} - P_{out} / P_{in}>") ;
255  h1_classes = bookH1("classes","ele electron classes",10,0.0,10.);
256 
257  // pflow
258  h1_mva = bookH1( "mva","ele identification mva",100,-1.,1.,"mva");
259  h1_provenance = bookH1( "provenance","ele provenance",5,-2.,3.,"provenance");
260 
261  // isolation
262  h1_tkSumPt_dr03 = bookH1("tkSumPt_dr03","tk isolation sum, dR=0.3",100,0.0,20.,"TkIsoSum (GeV/c)","Events","ELE_LOGY E1 P");
263  h1_ecalRecHitSumEt_dr03 = bookH1("ecalRecHitSumEt_dr03","ecal isolation sum, dR=0.3",100,0.0,20.,"EcalIsoSum (GeV)","Events","ELE_LOGY E1 P");
264  h1_hcalTowerSumEt_dr03 = bookH1("hcalTowerSumEt_dr03","hcal isolation sum, dR=0.3",100,0.0,20.,"HcalIsoSum (GeV)","Events","ELE_LOGY E1 P");
265 // h1_hcalDepth1TowerSumEt_dr03 = bookH1("hcalDepth1TowerSumEt_dr03","hcal depth1 isolation sum, dR=0.3",100,0.0,20.,"Hcal1IsoSum (GeV)","Events","ELE_LOGY E1 P");
266 // h1_hcalDepth2TowerSumEt_dr03 = bookH1("hcalDepth2TowerSumEt_dr03","hcal depth2 isolation sum, dR=0.3",100,0.0,20.,"Hcal2IsoSum (GeV)","Events","ELE_LOGY E1 P");
267 // h1_tkSumPt_dr04 = bookH1("tkSumPt_dr04","hcal isolation sum",100,0.0,20.,"TkIsoSum (GeV/c)","Events","ELE_LOGY E1 P");
268 // h1_ecalRecHitSumEt_dr04 = bookH1("ecalRecHitSumEt_dr04","ecal isolation sum, dR=0.4",100,0.0,20.,"EcalIsoSum (GeV)","Events","ELE_LOGY E1 P");
269 // h1_hcalTowerSumEt_dr04 = bookH1("hcalTowerSumEt_dr04","hcal isolation sum, dR=0.4",100,0.0,20.,"HcalIsoSum (GeV)","Events","ELE_LOGY E1 P");
272 
273  // di-electron mass
274  setBookIndex(200) ;
275  h1_mee = bookH1("mee","ele pairs invariant mass", nbinmee, meemin, meemax,"m_{ee} (GeV/c^{2})");
276  h1_mee_os = bookH1("mee_os","ele pairs invariant mass, opposite sign", nbinmee, meemin, meemax,"m_{e^{+}e^{-}} (GeV/c^{2})");
277 
278 
279 
280  //===========================
281  // histos for matching and matched matched objects
282  //===========================
283 
284  // matching object
285  std::string matchingObjectType ;
286  if (std::string::npos!=matchingObjectCollection_.label().find("SuperCluster",0))
287  { matchingObjectType = "SC" ; }
288  if (matchingObjectType=="")
289  { edm::LogError("ElectronMcFakeValidator::beginJob")<<"Unknown matching object type !" ; }
290  else
291  { edm::LogInfo("ElectronMcFakeValidator::beginJob")<<"Matching object type: "<<matchingObjectType ; }
292 // std::string htitle = "# "+matchingObjectType+"s", xtitle = "N_{"+matchingObjectType+"}" ;
293 // h1_matchingObject_Num = bookH1withSumw2("matchingObject_Num",htitle,nbinfhits,0.,fhitsmax,xtitle) ;
294 
295  // matching object distributions
296  h1_matchingObject_Eta = bookH1withSumw2("matchingObject_Eta",matchingObjectType+" #eta",nbineta,etamin,etamax,"#eta_{SC}");
297 // h1_matchingObject_AbsEta = bookH1withSumw2("matchingObject_AbsEta",matchingObjectType+" |#eta|",nbineta/2,0.,etamax,"|#eta|_{SC}");
298 // h1_matchingObject_P = bookH1withSumw2("matchingObject_P",matchingObjectType+" p",nbinp,0.,pmax,"E_{SC} (GeV)");
299  h1_matchingObject_Pt = bookH1withSumw2("matchingObject_Pt",matchingObjectType+" pt",nbinpteff,5.,ptmax,"pt_{SC} (GeV/c)");
300  h1_matchingObject_Phi = bookH1withSumw2("matchingObject_Phi",matchingObjectType+" #phi",nbinphi,phimin,phimax,"#phi (rad)");
301 // h1_matchingObject_Z = bookH1withSumw2("matchingObject_Z",matchingObjectType+" z",nbinxyz,-25,25,"z (cm)");
302 
303  h1_matchedObject_Eta = bookH1withSumw2("matchedObject_Eta","Efficiency vs matching SC #eta",nbineta,etamin,etamax,"#eta_{SC}");
304 // h1_matchedObject_AbsEta = bookH1withSumw2("matchedObject_AbsEta","Efficiency vs matching SC |#eta|",nbineta/2,0.,2.5,"|#eta|_{SC}");
305  h1_matchedObject_Pt = bookH1withSumw2("matchedObject_Pt","Efficiency vs matching SC E_{T}",nbinpteff,5.,ptmax,"pt_{SC} (GeV/c)");
306  h1_matchedObject_Phi = bookH1withSumw2("matchedObject_Phi","Efficiency vs matching SC #phi",nbinphi,phimin,phimax,"#phi (rad)");
307 // h1_matchedObject_Z = bookH1withSumw2("matchedObject_Z","Efficiency vs matching SC z",nbinxyz,-25,25,"z (cm)");
308 
309 // // classes
310 // h1_matchedEle_eta = bookH1( "matchedEle_eta", "ele electron #eta", nbineta/2,0.0,etamax,"#eta");
311 // h1_matchedEle_eta_golden = bookH1( "matchedEle_eta_golden", "ele electron #eta golden", nbineta/2,0.0,etamax,"#eta");
312 // h1_matchedEle_eta_shower = bookH1( "matchedEle_eta_shower", "ele electron #eta showering", nbineta/2,0.0,etamax,"#eta");
313 // //h1_matchedEle_eta_bbrem = bookH1( "matchedEle_eta_bbrem", "ele electron #eta bbrem", nbineta/2,0.0,etamax,"#eta");
314 // //h1_matchedEle_eta_narrow = bookH1( "matchedEle_eta_narrow", "ele electron #eta narrow", nbineta/2,0.0,etamax,"#eta");
315 //
316  }
MonitorElement * h1_foundHits
MonitorElement * bookP1(const std::string &name, const std::string &title, int nchX, double lowX, double highX, double lowY, double highY, const std::string &titleX="", const std::string &titleY="", Option_t *option="E1 P")
MonitorElement * bookH1(const std::string &name, const std::string &title, int nchX, double lowX, double highX, const std::string &titleX="", const std::string &titleY="Events", Option_t *option="E1 P")
MonitorElement * h1_mee_os
MonitorElement * h1_dPhiSc_propVtx_barrel
unsigned int nEvents_
MonitorElement * h1_vertexPt_barrel
MonitorElement * py_lostHitsVsEta
MonitorElement * h1_sclSigEtaEta_barrel
MonitorElement * py_chi2VsEta
MonitorElement * h1_vertexEta
MonitorElement * py_chi2VsPhi
MonitorElement * h1_Eop_endcaps
MonitorElement * h1_ecalRecHitSumEt_dr03
MonitorElement * h1_hcalTowerSumEt_dr03
MonitorElement * h1_matchingObject_Eta
MonitorElement * h1_Hoe_barrel
MonitorElement * py_HoeVsPhi
MonitorElement * h1_matchedObject_Pt
MonitorElement * bookH1withSumw2(const std::string &name, const std::string &title, int nchX, double lowX, double highX, const std::string &titleX="", const std::string &titleY="Events", Option_t *option="E1 P")
MonitorElement * h1_matchedObject_Phi
MonitorElement * h1_tkSumPt_dr03
MonitorElement * h2_vertexXvsY
MonitorElement * py_fbremVsEta
MonitorElement * h1_provenance
MonitorElement * h1_dEtaEleCl_propOut_barrel
MonitorElement * py_EopVsPhi
edm::InputTag matchingObjectCollection_
MonitorElement * h1_Eop_barrel
MonitorElement * py_dEtaSc_propVtxVsPhi
MonitorElement * h1_dEtaEleCl_propOut_endcaps
MonitorElement * h1_Hoe_endcaps
MonitorElement * h1_vertexPt_endcaps
MonitorElement * py_lostHitsVsPhi
MonitorElement * h1_vertexZ
MonitorElement * py_dPhiSc_propVtxVsPhi
MonitorElement * h1_dPhiEleCl_propOut_endcaps
MonitorElement * py_fbremVsPhi
MonitorElement * py_foundHitsVsPhi
MonitorElement * h1_fbrem
MonitorElement * h1_chi2
MonitorElement * h1_lostHits
MonitorElement * h2_vertexEtaVsPhi
MonitorElement * h1_EeleOPout_endcaps
MonitorElement * h1_mee
MonitorElement * bookH2(const std::string &name, const std::string &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, const std::string &titleX="", const std::string &titleY="", Option_t *option="COLZ")
MonitorElement * h1_classes
MonitorElement * h1_sclEt
std::string const & label() const
Definition: InputTag.h:25
MonitorElement * h1_EeleOPout_barrel
MonitorElement * h1_dEtaSc_propVtx_barrel
MonitorElement * h1_matchingObject_Phi
MonitorElement * h1_dPhiSc_propVtx_endcaps
MonitorElement * h1_sclSigEtaEta_endcaps
MonitorElement * py_foundHitsVsEta
MonitorElement * h1_matchedObject_Eta
MonitorElement * h1_matchingObject_Pt
MonitorElement * h1_dPhiEleCl_propOut_barrel
MonitorElement * h1_dEtaSc_propVtx_endcaps
MonitorElement * h1_mva
float ElectronAnalyzer::computeInvMass ( const reco::GsfElectron e1,
const reco::GsfElectron e2 
)
private

Definition at line 610 of file ElectronAnalyzer.cc.

References reco::GsfElectron::p4(), and mathSSE::sqrt().

Referenced by analyze().

612  {
613  math::XYZTLorentzVector p12 = e1.p4()+e2.p4() ;
614  float mee2 = p12.Dot(p12) ;
615  float invMass = sqrt(mee2) ;
616  return invMass ;
617  }
const LorentzVector & p4(P4Kind kind) const
Definition: GsfElectron.cc:196
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
Definition: LorentzVector.h:30
T sqrt(T t)
Definition: SSEVec.h:28
bool ElectronAnalyzer::etCut ( const reco::GsfElectronCollection::const_iterator &  gsfIter)
private

Definition at line 718 of file ElectronAnalyzer.cc.

References funct::false, minEt_, and funct::true.

Referenced by selected().

719  {
720  if (gsfIter->superCluster()->energy()/cosh(gsfIter->superCluster()->eta())<minEt_) return true ;
721 
722  return false ;
723  }
bool ElectronAnalyzer::generalCut ( const reco::GsfElectronCollection::const_iterator &  gsfIter)
private

Definition at line 703 of file ElectronAnalyzer.cc.

References abs, funct::false, isEB_, isEcalDriven_, isEE_, isNotEBEEGap_, isTrackerDriven_, maxAbsEta_, minPt_, and funct::true.

Referenced by selected().

704  {
705  if (std::abs(gsfIter->eta())>maxAbsEta_) return true ;
706  if (gsfIter->pt()<minPt_) return true ;
707 
708  if (gsfIter->isEB() && isEE_) return true ;
709  if (gsfIter->isEE() && isEB_) return true ;
710  if (gsfIter->isEBEEGap() && isNotEBEEGap_) return true ;
711 
712  if (gsfIter->ecalDrivenSeed() && isTrackerDriven_) return true ;
713  if (gsfIter->trackerDrivenSeed() && isEcalDriven_) return true ;
714 
715  return false ;
716  }
#define abs(x)
Definition: mlp_lapack.h:159
bool ElectronAnalyzer::idCut ( const reco::GsfElectronCollection::const_iterator &  gsfIter)
private

Definition at line 740 of file ElectronAnalyzer.cc.

References abs, dEtaMaxBarrel_, dEtaMaxEndcaps_, dEtaMinBarrel_, dEtaMinEndcaps_, dPhiMaxBarrel_, dPhiMaxEndcaps_, dPhiMinBarrel_, dPhiMinEndcaps_, eOverPMaxBarrel_, eOverPMaxEndcaps_, eOverPMinBarrel_, eOverPMinEndcaps_, funct::false, hadronicOverEmMaxBarrel_, hadronicOverEmMaxEndcaps_, sigIetaIetaMaxBarrel_, sigIetaIetaMaxEndcaps_, sigIetaIetaMinBarrel_, sigIetaIetaMinEndcaps_, and funct::true.

Referenced by selected().

741  {
742  if (gsfIter->isEB() && gsfIter->eSuperClusterOverP() < eOverPMinBarrel_) return true ;
743  if (gsfIter->isEB() && gsfIter->eSuperClusterOverP() > eOverPMaxBarrel_) return true ;
744  if (gsfIter->isEE() && gsfIter->eSuperClusterOverP() < eOverPMinEndcaps_) return true ;
745  if (gsfIter->isEE() && gsfIter->eSuperClusterOverP() > eOverPMaxEndcaps_) return true ;
746  if (gsfIter->isEB() && std::abs(gsfIter->deltaEtaSuperClusterTrackAtVtx()) < dEtaMinBarrel_) return true ;
747  if (gsfIter->isEB() && std::abs(gsfIter->deltaEtaSuperClusterTrackAtVtx()) > dEtaMaxBarrel_) return true ;
748  if (gsfIter->isEE() && std::abs(gsfIter->deltaEtaSuperClusterTrackAtVtx()) < dEtaMinEndcaps_) return true ;
749  if (gsfIter->isEE() && std::abs(gsfIter->deltaEtaSuperClusterTrackAtVtx()) > dEtaMaxEndcaps_) return true ;
750  if (gsfIter->isEB() && std::abs(gsfIter->deltaPhiSuperClusterTrackAtVtx()) < dPhiMinBarrel_) return true ;
751  if (gsfIter->isEB() && std::abs(gsfIter->deltaPhiSuperClusterTrackAtVtx()) > dPhiMaxBarrel_) return true ;
752  if (gsfIter->isEE() && std::abs(gsfIter->deltaPhiSuperClusterTrackAtVtx()) < dPhiMinEndcaps_) return true ;
753  if (gsfIter->isEE() && std::abs(gsfIter->deltaPhiSuperClusterTrackAtVtx()) > dPhiMaxEndcaps_) return true ;
754  if (gsfIter->isEB() && gsfIter->scSigmaIEtaIEta() < sigIetaIetaMinBarrel_) return true ;
755  if (gsfIter->isEB() && gsfIter->scSigmaIEtaIEta() > sigIetaIetaMaxBarrel_) return true ;
756  if (gsfIter->isEE() && gsfIter->scSigmaIEtaIEta() < sigIetaIetaMinEndcaps_) return true ;
757  if (gsfIter->isEE() && gsfIter->scSigmaIEtaIEta() > sigIetaIetaMaxEndcaps_) return true ;
758  if (gsfIter->isEB() && gsfIter->hadronicOverEm() > hadronicOverEmMaxBarrel_) return true ;
759  if (gsfIter->isEE() && gsfIter->hadronicOverEm() > hadronicOverEmMaxEndcaps_) return true ;
760 
761  return false ;
762  }
double hadronicOverEmMaxEndcaps_
#define abs(x)
Definition: mlp_lapack.h:159
double sigIetaIetaMinBarrel_
double sigIetaIetaMaxBarrel_
double sigIetaIetaMinEndcaps_
double sigIetaIetaMaxEndcaps_
double hadronicOverEmMaxBarrel_
bool ElectronAnalyzer::isolationCut ( const reco::GsfElectronCollection::const_iterator &  gsfIter,
double  vertexTIP 
)
private

Definition at line 725 of file ElectronAnalyzer.cc.

References ecalIso03MaxBarrel_, ecalIso03MaxEndcaps_, funct::false, hcalIso03Depth1MaxBarrel_, hcalIso03Depth1MaxEndcaps_, hcalIso03Depth2MaxEndcaps_, tipMaxBarrel_, tipMaxEndcaps_, and tkIso03Max_.

Referenced by selected().

726  {
727  if (gsfIter->isEB() && vertexTIP > tipMaxBarrel_) return true ;
728  if (gsfIter->isEE() && vertexTIP > tipMaxEndcaps_) return true ;
729 
730  if (gsfIter->dr03TkSumPt() > tkIso03Max_) return true ;
731  if (gsfIter->isEB() && gsfIter->dr03HcalDepth1TowerSumEt() > hcalIso03Depth1MaxBarrel_) return true ;
732  if (gsfIter->isEE() && gsfIter->dr03HcalDepth1TowerSumEt() > hcalIso03Depth1MaxEndcaps_) return true ;
733  if (gsfIter->isEE() && gsfIter->dr03HcalDepth2TowerSumEt() > hcalIso03Depth2MaxEndcaps_) return true ;
734  if (gsfIter->isEB() && gsfIter->dr03EcalRecHitSumEt() > ecalIso03MaxBarrel_) return true ;
735  if (gsfIter->isEE() && gsfIter->dr03EcalRecHitSumEt() > ecalIso03MaxEndcaps_) return true ;
736 
737  return false ;
738  }
double hcalIso03Depth1MaxBarrel_
double hcalIso03Depth1MaxEndcaps_
double hcalIso03Depth2MaxEndcaps_
bool ElectronAnalyzer::selected ( const reco::GsfElectronCollection::const_iterator &  gsfIter,
double  vertexTIP 
)
private

Definition at line 694 of file ElectronAnalyzer.cc.

References etCut(), funct::false, generalCut(), idCut(), isolationCut(), Selection_, and funct::true.

Referenced by analyze().

695  {
696  if ((Selection_>0)&&generalCut(gsfIter)) return false ;
697  if ((Selection_>=1)&&etCut(gsfIter)) return false ;
698  if ((Selection_>=2)&&isolationCut(gsfIter,vertexTIP)) return false ;
699  if ((Selection_>=3)&&idCut(gsfIter)) return false ;
700  return true ;
701  }
bool etCut(const reco::GsfElectronCollection::const_iterator &gsfIter)
bool generalCut(const reco::GsfElectronCollection::const_iterator &gsfIter)
bool idCut(const reco::GsfElectronCollection::const_iterator &gsfIter)
bool isolationCut(const reco::GsfElectronCollection::const_iterator &gsfIter, double vertexTIP)

Member Data Documentation

edm::InputTag ElectronAnalyzer::beamSpotTag_
private

Definition at line 42 of file ElectronAnalyzer.h.

Referenced by analyze(), and ElectronAnalyzer().

double ElectronAnalyzer::deltaR_
private

Definition at line 49 of file ElectronAnalyzer.h.

Referenced by analyze(), and ElectronAnalyzer().

double ElectronAnalyzer::detamatchmax
private

Definition at line 100 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

double ElectronAnalyzer::detamatchmin
private

Definition at line 100 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

double ElectronAnalyzer::detamax
private

Definition at line 98 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

double ElectronAnalyzer::dEtaMaxBarrel_
private

Definition at line 65 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::dEtaMaxEndcaps_
private

Definition at line 67 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::detamin
private

Definition at line 98 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

double ElectronAnalyzer::dEtaMinBarrel_
private

Definition at line 64 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::dEtaMinEndcaps_
private

Definition at line 66 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::dphimatchmax
private

Definition at line 101 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

double ElectronAnalyzer::dphimatchmin
private

Definition at line 101 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

double ElectronAnalyzer::dphimax
private

Definition at line 99 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

double ElectronAnalyzer::dPhiMaxBarrel_
private

Definition at line 69 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::dPhiMaxEndcaps_
private

Definition at line 71 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::dphimin
private

Definition at line 99 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

double ElectronAnalyzer::dPhiMinBarrel_
private

Definition at line 68 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::dPhiMinEndcaps_
private

Definition at line 70 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::ecalIso03MaxBarrel_
private

Definition at line 85 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and isolationCut().

double ElectronAnalyzer::ecalIso03MaxEndcaps_
private

Definition at line 86 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and isolationCut().

edm::InputTag ElectronAnalyzer::electronCollection_
private

Definition at line 37 of file ElectronAnalyzer.h.

Referenced by analyze(), and ElectronAnalyzer().

double ElectronAnalyzer::eopmax
private

Definition at line 97 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

double ElectronAnalyzer::eopmaxsht
private

Definition at line 97 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

double ElectronAnalyzer::eOverPMaxBarrel_
private

Definition at line 61 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::eOverPMaxEndcaps_
private

Definition at line 63 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::eOverPMinBarrel_
private

Definition at line 60 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::eOverPMinEndcaps_
private

Definition at line 62 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::etamax
private

Definition at line 93 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

double ElectronAnalyzer::etamin
private

Definition at line 93 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

double ElectronAnalyzer::fhitsmax
private

Definition at line 102 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

edm::InputTag ElectronAnalyzer::gsftrackCollection_
private

Definition at line 39 of file ElectronAnalyzer.h.

Referenced by analyze(), and ElectronAnalyzer().

MonitorElement* ElectronAnalyzer::h1_chi2
private

Definition at line 177 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_classes
private

Definition at line 251 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_dEtaEleCl_propOut_barrel
private

Definition at line 214 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_dEtaEleCl_propOut_endcaps
private

Definition at line 215 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_dEtaSc_propVtx_barrel
private

Definition at line 208 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_dEtaSc_propVtx_endcaps
private

Definition at line 209 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_dPhiEleCl_propOut_barrel
private

Definition at line 226 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_dPhiEleCl_propOut_endcaps
private

Definition at line 227 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_dPhiSc_propVtx_barrel
private

Definition at line 220 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_dPhiSc_propVtx_endcaps
private

Definition at line 221 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_ecalRecHitSumEt_dr03
private

Definition at line 259 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_EeleOPout_barrel
private

Definition at line 202 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_EeleOPout_endcaps
private

Definition at line 203 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_Eop_barrel
private

Definition at line 196 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_Eop_endcaps
private

Definition at line 197 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_fbrem
private

Definition at line 247 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_foundHits
private

Definition at line 181 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_hcalTowerSumEt_dr03
private

Definition at line 260 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_Hoe_barrel
private

Definition at line 232 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_Hoe_endcaps
private

Definition at line 233 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_lostHits
private

Definition at line 185 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_matchedObject_Eta
private

Definition at line 282 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_matchedObject_Phi
private

Definition at line 285 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_matchedObject_Pt
private

Definition at line 284 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_matchingObject_Eta
private

Definition at line 289 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_matchingObject_Phi
private

Definition at line 293 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_matchingObject_Pt
private

Definition at line 292 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_mee
private

Definition at line 270 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_mee_os
private

Definition at line 271 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_mva
private

Definition at line 254 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_provenance
private

Definition at line 255 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_sclEt
private

Definition at line 170 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_sclSigEtaEta_barrel
private

Definition at line 236 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_sclSigEtaEta_endcaps
private

Definition at line 237 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_tkSumPt_dr03
private

Definition at line 258 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_triggers
private

Definition at line 148 of file ElectronAnalyzer.h.

MonitorElement* ElectronAnalyzer::h1_vertexEta
private

Definition at line 161 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_vertexPt_barrel
private

Definition at line 159 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_vertexPt_endcaps
private

Definition at line 160 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h1_vertexZ
private

Definition at line 164 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h2_beamSpotXvsY
private

Definition at line 142 of file ElectronAnalyzer.h.

MonitorElement* ElectronAnalyzer::h2_vertexEtaVsPhi
private

Definition at line 162 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::h2_vertexXvsY
private

Definition at line 163 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

double ElectronAnalyzer::hadronicOverEmMaxBarrel_
private

Definition at line 76 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::hadronicOverEmMaxEndcaps_
private

Definition at line 77 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::hcalIso03Depth1MaxBarrel_
private

Definition at line 82 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and isolationCut().

double ElectronAnalyzer::hcalIso03Depth1MaxEndcaps_
private

Definition at line 83 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and isolationCut().

double ElectronAnalyzer::hcalIso03Depth2MaxEndcaps_
private

Definition at line 84 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and isolationCut().

double ElectronAnalyzer::hoemax
private

Definition at line 107 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

double ElectronAnalyzer::hoemin
private

Definition at line 107 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

bool ElectronAnalyzer::isEB_
private

Definition at line 55 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and generalCut().

bool ElectronAnalyzer::isEcalDriven_
private

Definition at line 58 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and generalCut().

bool ElectronAnalyzer::isEE_
private

Definition at line 56 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and generalCut().

bool ElectronAnalyzer::isNotEBEEGap_
private

Definition at line 57 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and generalCut().

bool ElectronAnalyzer::isTrackerDriven_
private

Definition at line 59 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and generalCut().

double ElectronAnalyzer::lhitsmax
private

Definition at line 103 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

std::string ElectronAnalyzer::matchingCondition_
private

Definition at line 46 of file ElectronAnalyzer.h.

Referenced by analyze(), and ElectronAnalyzer().

edm::InputTag ElectronAnalyzer::matchingObjectCollection_
private

Definition at line 38 of file ElectronAnalyzer.h.

Referenced by analyze(), book(), and ElectronAnalyzer().

double ElectronAnalyzer::maxAbsEta_
private

Definition at line 54 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and generalCut().

double ElectronAnalyzer::maxAbsEtaMatchingObject_
private

Definition at line 48 of file ElectronAnalyzer.h.

Referenced by analyze(), and ElectronAnalyzer().

double ElectronAnalyzer::maxPtMatchingObject_
private

Definition at line 47 of file ElectronAnalyzer.h.

Referenced by analyze(), and ElectronAnalyzer().

float ElectronAnalyzer::mcEnergy[10]
private

Definition at line 133 of file ElectronAnalyzer.h.

float ElectronAnalyzer::mcEta[10]
private

Definition at line 133 of file ElectronAnalyzer.h.

float ElectronAnalyzer::mcPhi[10]
private

Definition at line 133 of file ElectronAnalyzer.h.

float ElectronAnalyzer::mcPt[10]
private

Definition at line 133 of file ElectronAnalyzer.h.

float ElectronAnalyzer::mcQ[10]
private

Definition at line 133 of file ElectronAnalyzer.h.

double ElectronAnalyzer::meemax
private

Definition at line 106 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

double ElectronAnalyzer::meemin
private

Definition at line 106 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

double ElectronAnalyzer::minEt_
private

Definition at line 52 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and etCut().

double ElectronAnalyzer::minPt_
private

Definition at line 53 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and generalCut().

double ElectronAnalyzer::mvaMin_
private

Definition at line 78 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbindeta
private

Definition at line 98 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbindetamatch
private

Definition at line 100 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

int ElectronAnalyzer::nbindetamatch2D
private

Definition at line 100 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbindphi
private

Definition at line 99 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbindphimatch
private

Definition at line 101 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

int ElectronAnalyzer::nbindphimatch2D
private

Definition at line 101 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbineop
private

Definition at line 97 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

int ElectronAnalyzer::nbineop2D
private

Definition at line 97 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbineta
private

Definition at line 93 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

int ElectronAnalyzer::nbineta2D
private

Definition at line 93 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

int ElectronAnalyzer::nbinfhits
private

Definition at line 102 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

int ElectronAnalyzer::nbinhoe
private

Definition at line 107 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

int ElectronAnalyzer::nbinlhits
private

Definition at line 103 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbinmee
private

Definition at line 106 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

int ElectronAnalyzer::nbinp
private

Definition at line 96 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbinp2D
private

Definition at line 96 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbinphi
private

Definition at line 94 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

int ElectronAnalyzer::nbinphi2D
private

Definition at line 94 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

int ElectronAnalyzer::nbinpoptrue
private

Definition at line 105 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbinpt
private

Definition at line 95 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

int ElectronAnalyzer::nbinpt2D
private

Definition at line 95 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbinpteff
private

Definition at line 95 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

int ElectronAnalyzer::nbinxyz
private

Definition at line 104 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

int ElectronAnalyzer::nbinxyz2D
private

Definition at line 104 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

unsigned int ElectronAnalyzer::nEvents_
private

Definition at line 113 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

edm::ESHandle<TrackerGeometry> ElectronAnalyzer::pDD
private

Definition at line 130 of file ElectronAnalyzer.h.

double ElectronAnalyzer::phimax
private

Definition at line 94 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

double ElectronAnalyzer::phimin
private

Definition at line 94 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

double ElectronAnalyzer::pmax
private

Definition at line 96 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

double ElectronAnalyzer::poptruemax
private

Definition at line 105 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

double ElectronAnalyzer::poptruemin
private

Definition at line 105 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

double ElectronAnalyzer::ptmax
private

Definition at line 95 of file ElectronAnalyzer.h.

Referenced by book(), and ElectronAnalyzer().

MonitorElement* ElectronAnalyzer::py_chi2VsEta
private

Definition at line 178 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::py_chi2VsPhi
private

Definition at line 179 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::py_dEtaSc_propVtxVsPhi
private

Definition at line 210 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::py_dPhiSc_propVtxVsPhi
private

Definition at line 222 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::py_EopVsPhi
private

Definition at line 198 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::py_fbremVsEta
private

Definition at line 248 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::py_fbremVsPhi
private

Definition at line 249 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::py_foundHitsVsEta
private

Definition at line 182 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::py_foundHitsVsPhi
private

Definition at line 183 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::py_HoeVsPhi
private

Definition at line 234 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::py_lostHitsVsEta
private

Definition at line 186 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::py_lostHitsVsPhi
private

Definition at line 187 of file ElectronAnalyzer.h.

Referenced by analyze(), and book().

MonitorElement* ElectronAnalyzer::py_nClustersVsLs
private

Definition at line 144 of file ElectronAnalyzer.h.

MonitorElement* ElectronAnalyzer::py_nElectronsVsLs
private

Definition at line 143 of file ElectronAnalyzer.h.

MonitorElement* ElectronAnalyzer::py_nGsfTracksVsLs
private

Definition at line 145 of file ElectronAnalyzer.h.

MonitorElement* ElectronAnalyzer::py_nTracksVsLs
private

Definition at line 146 of file ElectronAnalyzer.h.

MonitorElement* ElectronAnalyzer::py_nVerticesVsLs
private

Definition at line 147 of file ElectronAnalyzer.h.

bool ElectronAnalyzer::readAOD_
private

Definition at line 43 of file ElectronAnalyzer.h.

Referenced by analyze(), and ElectronAnalyzer().

float ElectronAnalyzer::seedEta[10]
private

Definition at line 135 of file ElectronAnalyzer.h.

float ElectronAnalyzer::seedMomentum[10]
private

Definition at line 135 of file ElectronAnalyzer.h.

float ElectronAnalyzer::seedPhi[10]
private

Definition at line 135 of file ElectronAnalyzer.h.

float ElectronAnalyzer::seedPt[10]
private

Definition at line 135 of file ElectronAnalyzer.h.

float ElectronAnalyzer::seedQ[10]
private

Definition at line 135 of file ElectronAnalyzer.h.

int ElectronAnalyzer::Selection_
private

Definition at line 36 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and selected().

double ElectronAnalyzer::sigIetaIetaMaxBarrel_
private

Definition at line 73 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::sigIetaIetaMaxEndcaps_
private

Definition at line 75 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::sigIetaIetaMinBarrel_
private

Definition at line 72 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::sigIetaIetaMinEndcaps_
private

Definition at line 74 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

float ElectronAnalyzer::superclusterEnergy[10]
private

Definition at line 134 of file ElectronAnalyzer.h.

float ElectronAnalyzer::superclusterEt[10]
private

Definition at line 134 of file ElectronAnalyzer.h.

float ElectronAnalyzer::superclusterEta[10]
private

Definition at line 134 of file ElectronAnalyzer.h.

float ElectronAnalyzer::superclusterPhi[10]
private

Definition at line 134 of file ElectronAnalyzer.h.

edm::ESHandle<MagneticField> ElectronAnalyzer::theMagField
private

Definition at line 131 of file ElectronAnalyzer.h.

double ElectronAnalyzer::tipMaxBarrel_
private

Definition at line 79 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and isolationCut().

double ElectronAnalyzer::tipMaxEndcaps_
private

Definition at line 80 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and isolationCut().

double ElectronAnalyzer::tkIso03Max_
private

Definition at line 81 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and isolationCut().

edm::InputTag ElectronAnalyzer::trackCollection_
private

Definition at line 40 of file ElectronAnalyzer.h.

Referenced by analyze(), and ElectronAnalyzer().

TrajectoryStateTransform ElectronAnalyzer::transformer_
private

Definition at line 129 of file ElectronAnalyzer.h.

edm::InputTag ElectronAnalyzer::triggerResults_
private

Definition at line 89 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

edm::InputTag ElectronAnalyzer::vertexCollection_
private

Definition at line 41 of file ElectronAnalyzer.h.

Referenced by analyze(), and ElectronAnalyzer().