CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
ElectronAnalyzer Class Reference

#include <ElectronAnalyzer.h>

Inheritance diagram for ElectronAnalyzer:
ElectronDqmAnalyzerBase DQMEDAnalyzer edm::stream::EDAnalyzer< edm::RunSummaryCache< dqmDetails::NoCache >, edm::LuminosityBlockSummaryCache< dqmDetails::NoCache > > edm::stream::EDAnalyzerBase edm::EDConsumerBase

Public Member Functions

virtual void analyze (const edm::Event &e, const edm::EventSetup &c)
 
virtual void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &)
 
 ElectronAnalyzer (const edm::ParameterSet &conf)
 
virtual ~ElectronAnalyzer ()
 
- Public Member Functions inherited from DQMEDAnalyzer
virtual void beginRun (edm::Run const &, edm::EventSetup const &) final
 
virtual void beginStream (edm::StreamID id) final
 
 DQMEDAnalyzer (void)
 
virtual void endLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, dqmDetails::NoCache *) const final
 
virtual void endRunSummary (edm::Run const &, edm::EventSetup const &, dqmDetails::NoCache *) const final
 
uint32_t streamId () const
 
- Public Member Functions inherited from edm::stream::EDAnalyzer< edm::RunSummaryCache< dqmDetails::NoCache >, edm::LuminosityBlockSummaryCache< dqmDetails::NoCache > >
 EDAnalyzer ()=default
 
- Public Member Functions inherited from edm::stream::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzerBase ()
 
ModuleDescription const & moduleDescription () const
 
virtual ~EDAnalyzerBase ()
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFromEvent () const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
virtual ~EDConsumerBase () noexcept(false)
 

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::EDGetTokenT< reco::BeamSpotbeamSpotTag_
 
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::EDGetTokenT< reco::GsfElectronCollectionelectronCollection_
 
double eopmax
 
double eopmaxsht
 
double eOverPMaxBarrel_
 
double eOverPMaxEndcaps_
 
double eOverPMinBarrel_
 
double eOverPMinEndcaps_
 
double etamax
 
double etamin
 
double fhitsmax
 
edm::EDGetTokenT< reco::GsfTrackCollectiongsftrackCollection_
 
MonitorElementh1_chi2
 
MonitorElementh1_classes
 
MonitorElementh1_dEtaEleCl_propOut_barrel
 
MonitorElementh1_dEtaEleCl_propOut_endcapsNeg
 
MonitorElementh1_dEtaEleCl_propOut_endcapsPos
 
MonitorElementh1_dEtaSc_propVtx_barrel
 
MonitorElementh1_dEtaSc_propVtx_endcapsNeg
 
MonitorElementh1_dEtaSc_propVtx_endcapsPos
 
MonitorElementh1_dPhiEleCl_propOut_barrel
 
MonitorElementh1_dPhiEleCl_propOut_endcapsNeg
 
MonitorElementh1_dPhiEleCl_propOut_endcapsPos
 
MonitorElementh1_dPhiSc_propVtx_barrel
 
MonitorElementh1_dPhiSc_propVtx_endcapsNeg
 
MonitorElementh1_dPhiSc_propVtx_endcapsPos
 
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_PFch_dr03
 
MonitorElementh1_PFem_dr03
 
MonitorElementh1_PFnh_dr03
 
MonitorElementh1_provenance
 
MonitorElementh1_sclEt
 
MonitorElementh1_sclSigEtaEta_barrel
 
MonitorElementh1_sclSigEtaEta_endcaps
 
MonitorElementh1_sigIEtaIEta5x5_barrel
 
MonitorElementh1_sigIEtaIEta5x5_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
 
std::string inputFile_
 
std::string inputInternalPath_
 
bool isEB_
 
bool isEcalDriven_
 
bool isEE_
 
bool isNotEBEEGap_
 
bool isTrackerDriven_
 
double lhitsmax
 
std::string matchingCondition_
 
edm::EDGetTokenT< reco::SuperClusterCollectionmatchingObjectCollection_
 
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_
 
std::string outputFile_
 
std::string outputInternalPath_
 
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::EDGetTokenT< reco::TrackCollectiontrackCollection_
 
edm::InputTag triggerResults_
 
edm::EDGetTokenT< reco::VertexCollectionvertexCollection_
 

Additional Inherited Members

- Public Types inherited from edm::stream::EDAnalyzer< edm::RunSummaryCache< dqmDetails::NoCache >, edm::LuminosityBlockSummaryCache< dqmDetails::NoCache > >
typedef CacheContexts< T... > CacheTypes
 
typedef CacheTypes::GlobalCache GlobalCache
 
typedef AbilityChecker< T... > HasAbility
 
typedef CacheTypes::LuminosityBlockCache LuminosityBlockCache
 
typedef LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCacheLuminosityBlockContext
 
typedef CacheTypes::LuminosityBlockSummaryCache LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache, GlobalCacheRunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 
- Public Types inherited from edm::stream::EDAnalyzerBase
typedef EDAnalyzerAdaptorBase ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from DQMEDAnalyzer
static std::shared_ptr< dqmDetails::NoCacheglobalBeginLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, LuminosityBlockContext const *)
 
static std::shared_ptr< dqmDetails::NoCacheglobalBeginRunSummary (edm::Run const &, edm::EventSetup const &, RunContext const *)
 
static void globalEndLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, LuminosityBlockContext const *, dqmDetails::NoCache *)
 
static void globalEndRunSummary (edm::Run const &, edm::EventSetup const &, RunContext const *, dqmDetails::NoCache *)
 
- Static Public Member Functions inherited from edm::stream::EDAnalyzerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- Protected Member Functions inherited from ElectronDqmAnalyzerBase
MonitorElementbookH1 (DQMStore::IBooker &, 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")
 
MonitorElementbookH1withSumw2 (DQMStore::IBooker &, 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 (DQMStore::IBooker &, 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")
 
MonitorElementbookH2withSumw2 (DQMStore::IBooker &, 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 (DQMStore::IBooker &, 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 (DQMStore::IBooker &iBooker, const std::string &name, MonitorElement *original, const std::string &title="")
 
MonitorElementcloneH1 (DQMStore::IBooker &iBooker, const std::string &name, const std::string &original, const std::string &title="")
 
virtual void dqmBeginRun (edm::Run const &, edm::EventSetup const &) override
 
 ElectronDqmAnalyzerBase (const edm::ParameterSet &conf)
 
virtual void endLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) override
 
virtual void endRun (edm::Run const &, edm::EventSetup const &) override
 
bool finalStepDone ()
 
void setBookEfficiencyFlag (const bool &)
 
void setBookIndex (short)
 
void setBookPrefix (const std::string &)
 
void setBookStatOverflowFlag (const bool &)
 
int verbosity ()
 
virtual ~ElectronDqmAnalyzerBase ()
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 

Detailed Description

Definition at line 36 of file ElectronAnalyzer.h.

Constructor & Destructor Documentation

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

Definition at line 27 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_, AlCaHLTBitMon_QueryRunRegistry::string, tipMaxBarrel_, tipMaxEndcaps_, tkIso03Max_, trackCollection_, triggerResults_, and vertexCollection_.

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

Definition at line 157 of file ElectronAnalyzer.cc.

158  {}

Member Function Documentation

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

Reimplemented from ElectronDqmAnalyzerBase.

Definition at line 270 of file ElectronAnalyzer.cc.

References funct::abs(), beamSpotTag_, computeInvMass(), deltaR(), deltaR_, electronCollection_, edm::EventID::event(), funct::false, MonitorElement::Fill(), edm::Event::getByToken(), gsfElectrons_cfi::gsfElectrons, gsftrackCollection_, gedGsfElectronCores_cfi::gsfTracks, h1_chi2, h1_classes, h1_dEtaEleCl_propOut_barrel, h1_dEtaEleCl_propOut_endcapsNeg, h1_dEtaEleCl_propOut_endcapsPos, h1_dEtaSc_propVtx_barrel, h1_dEtaSc_propVtx_endcapsNeg, h1_dEtaSc_propVtx_endcapsPos, h1_dPhiEleCl_propOut_barrel, h1_dPhiEleCl_propOut_endcapsNeg, h1_dPhiEleCl_propOut_endcapsPos, h1_dPhiSc_propVtx_barrel, h1_dPhiSc_propVtx_endcapsNeg, h1_dPhiSc_propVtx_endcapsPos, 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_PFch_dr03, h1_PFem_dr03, h1_PFnh_dr03, h1_provenance, h1_sclEt, h1_sclSigEtaEta_barrel, h1_sclSigEtaEta_endcaps, h1_sigIEtaIEta5x5_barrel, h1_sigIEtaIEta5x5_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(), reco::GsfElectron::PflowIsolationVariables::sumChargedHadronPt, reco::GsfElectron::PflowIsolationVariables::sumNeutralHadronEt, reco::GsfElectron::PflowIsolationVariables::sumPhotonEt, trackCollection_, l1t::tracks, vertexCollection_, and primaryVertexAssociation_cfi::vertices.

271 {
272  nEvents_++ ;
273 
275  iEvent.getByToken(electronCollection_,gsfElectrons) ;
277  iEvent.getByToken(matchingObjectCollection_,recoClusters) ;
279  iEvent.getByToken(trackCollection_,tracks);
281  iEvent.getByToken(gsftrackCollection_,gsfTracks);
283  iEvent.getByToken(vertexCollection_,vertices);
284  edm::Handle<reco::BeamSpot> recoBeamSpotHandle ;
285  iEvent.getByToken(beamSpotTag_,recoBeamSpotHandle) ;
286  const BeamSpot bs = *recoBeamSpotHandle ;
287 
288  edm::EventNumber_t ievt = iEvent.id().event();
289  edm::RunNumber_t irun = iEvent.id().run();
290  edm::LuminosityBlockNumber_t ils = iEvent.luminosityBlock();
291 
292  edm::LogInfo("ElectronAnalyzer::analyze")
293  <<"Treating "<<gsfElectrons.product()->size()<<" electrons"
294  <<" from event "<<ievt<<" in run "<<irun<<" and lumiblock "<<ils ;
295  //h1_num_->Fill((*gsfElectrons).size()) ;
296 
297  // selected rec electrons
298  reco::GsfElectronCollection::const_iterator gsfIter ;
299  for
300  ( gsfIter=gsfElectrons->begin() ;
301  gsfIter!=gsfElectrons->end();
302  gsfIter++ )
303  {
304  // vertex TIP
305  double vertexTIP =
306  (gsfIter->vertex().x()-bs.position().x()) * (gsfIter->vertex().x()-bs.position().x()) +
307  (gsfIter->vertex().y()-bs.position().y()) * (gsfIter->vertex().y()-bs.position().y()) ;
308  vertexTIP = sqrt(vertexTIP) ;
309 
310  // select electrons
311  if (!selected(gsfIter,vertexTIP)) continue ;
312 
313  // invariant mass of 2 selected electrons
314  reco::GsfElectronCollection::const_iterator gsfIter2 ;
315  for
316  ( gsfIter2=gsfIter+1;
317  gsfIter2!=gsfElectrons->end() ;
318  gsfIter2++ )
319  {
320  if (!selected(gsfIter2,vertexTIP)) continue ;
321  float invMass = computeInvMass(*gsfIter,*gsfIter2) ;
322  h1_mee->Fill(invMass) ;
323  if ( ( (gsfIter->charge())*(gsfIter2->charge()) )<0. )
324  { h1_mee_os->Fill(invMass) ; }
325  }
326 
327  // basic quantities
328  if (gsfIter->isEB()) h1_vertexPt_barrel->Fill( gsfIter->pt() );
329  if (gsfIter->isEE()) h1_vertexPt_endcaps->Fill( gsfIter->pt() );
330  h1_vertexEta->Fill( gsfIter->eta() );
331  h2_vertexEtaVsPhi->Fill( gsfIter->eta(), gsfIter->phi() );
332  h2_vertexXvsY->Fill( gsfIter->vertex().x(), gsfIter->vertex().y() );
333  h1_vertexZ->Fill( gsfIter->vertex().z() );
334 
335  // supercluster related distributions
336  reco::SuperClusterRef sclRef = gsfIter->superCluster() ;
337  // ALREADY DONE IN GSF ELECTRON CORE
338  double R=TMath::Sqrt(sclRef->x()*sclRef->x() + sclRef->y()*sclRef->y() +sclRef->z()*sclRef->z());
339  double Rt=TMath::Sqrt(sclRef->x()*sclRef->x() + sclRef->y()*sclRef->y());
340  h1_sclEt->Fill(sclRef->energy()*(Rt/R));
341 
342  // track related distributions
343  if (!readAOD_)
344  { // track extra does not exist in AOD
345  h1_foundHits->Fill( gsfIter->gsfTrack()->numberOfValidHits() );
346  py_foundHitsVsEta->Fill( gsfIter->eta(), gsfIter->gsfTrack()->numberOfValidHits() );
347  py_foundHitsVsPhi->Fill( gsfIter->phi(), gsfIter->gsfTrack()->numberOfValidHits() );
348  h1_lostHits->Fill( gsfIter->gsfTrack()->numberOfLostHits() );
349  py_lostHitsVsEta->Fill( gsfIter->eta(), gsfIter->gsfTrack()->numberOfLostHits() );
350  py_lostHitsVsPhi->Fill( gsfIter->phi(), gsfIter->gsfTrack()->numberOfLostHits() );
351  h1_chi2->Fill( gsfIter->gsfTrack()->normalizedChi2() );
352  py_chi2VsEta->Fill( gsfIter->eta(), gsfIter->gsfTrack()->normalizedChi2() );
353  py_chi2VsPhi->Fill( gsfIter->phi(), gsfIter->gsfTrack()->normalizedChi2() );
354  }
355 
356  // match distributions
357  if (gsfIter->isEB())
358  {
359  h1_Eop_barrel->Fill( gsfIter->eSuperClusterOverP() );
360  h1_EeleOPout_barrel->Fill( gsfIter->eEleClusterOverPout() );
361  h1_dEtaSc_propVtx_barrel->Fill(gsfIter->deltaEtaSuperClusterTrackAtVtx());
362  h1_dEtaEleCl_propOut_barrel->Fill(gsfIter->deltaEtaEleClusterTrackAtCalo());
363  h1_dPhiSc_propVtx_barrel->Fill(gsfIter->deltaPhiSuperClusterTrackAtVtx());
364  h1_dPhiEleCl_propOut_barrel->Fill(gsfIter->deltaPhiEleClusterTrackAtCalo());
365  h1_Hoe_barrel->Fill(gsfIter->hadronicOverEm());
366  h1_sclSigEtaEta_barrel->Fill( gsfIter->scSigmaEtaEta() );
367  h1_sigIEtaIEta5x5_barrel->Fill( gsfIter->full5x5_sigmaIetaIeta() );
368  }
369  if (gsfIter->isEE())
370  {
371  h1_Eop_endcaps->Fill( gsfIter->eSuperClusterOverP() );
372  h1_EeleOPout_endcaps->Fill( gsfIter->eEleClusterOverPout() );
373  if (gsfIter->eta() > 0) {
374  h1_dEtaSc_propVtx_endcapsPos->Fill(gsfIter->deltaEtaSuperClusterTrackAtVtx());
375  h1_dEtaEleCl_propOut_endcapsPos->Fill(gsfIter->deltaEtaEleClusterTrackAtCalo());
376  h1_dPhiSc_propVtx_endcapsPos->Fill(gsfIter->deltaPhiSuperClusterTrackAtVtx());
377  h1_dPhiEleCl_propOut_endcapsPos->Fill(gsfIter->deltaPhiEleClusterTrackAtCalo());
378  }
379  else {
380  h1_dEtaSc_propVtx_endcapsNeg->Fill(gsfIter->deltaEtaSuperClusterTrackAtVtx());
381  h1_dEtaEleCl_propOut_endcapsNeg->Fill(gsfIter->deltaEtaEleClusterTrackAtCalo());
382  h1_dPhiSc_propVtx_endcapsNeg->Fill(gsfIter->deltaPhiSuperClusterTrackAtVtx());
383  h1_dPhiEleCl_propOut_endcapsNeg->Fill(gsfIter->deltaPhiEleClusterTrackAtCalo());
384  }
385  h1_Hoe_endcaps->Fill(gsfIter->hadronicOverEm());
386  h1_sclSigEtaEta_endcaps->Fill( gsfIter->scSigmaEtaEta() );
387  h1_sigIEtaIEta5x5_endcaps->Fill( gsfIter->full5x5_sigmaIetaIeta() );
388  }
389  py_EopVsPhi->Fill( gsfIter->phi(), gsfIter->eSuperClusterOverP() );
390  py_dEtaSc_propVtxVsPhi->Fill(gsfIter->phi(), gsfIter->deltaEtaSuperClusterTrackAtVtx());
391  py_dPhiSc_propVtxVsPhi->Fill(gsfIter->phi(), gsfIter->deltaPhiSuperClusterTrackAtVtx());
392  py_HoeVsPhi->Fill(gsfIter->phi(), gsfIter->hadronicOverEm());
393 
394  // fbrem, classes
395  h1_fbrem->Fill(gsfIter->fbrem()) ;
396  py_fbremVsEta->Fill(gsfIter->eta(),gsfIter->fbrem()) ;
397  py_fbremVsPhi->Fill(gsfIter->phi(),gsfIter->fbrem()) ;
398  int eleClass = gsfIter->classification() ;
399  if (gsfIter->isEE()) eleClass+=5;
400  h1_classes->Fill(eleClass) ;
401 
402 
403  // pflow
404  h1_mva->Fill(gsfIter->mva_e_pi()) ;
405  if (gsfIter->ecalDrivenSeed()) h1_provenance->Fill(1.) ;
406  if (gsfIter->trackerDrivenSeed()) h1_provenance->Fill(-1.) ;
407  if (gsfIter->trackerDrivenSeed()||gsfIter->ecalDrivenSeed()) h1_provenance->Fill(0.);
408  if (gsfIter->trackerDrivenSeed()&&!gsfIter->ecalDrivenSeed()) h1_provenance->Fill(-2.);
409  if (!gsfIter->trackerDrivenSeed()&&gsfIter->ecalDrivenSeed()) h1_provenance->Fill(2.);
410 
411  // isolation
412  h1_tkSumPt_dr03->Fill(gsfIter->dr03TkSumPt());
413  h1_ecalRecHitSumEt_dr03->Fill(gsfIter->dr03EcalRecHitSumEt());
414  h1_hcalTowerSumEt_dr03->Fill(gsfIter->dr03HcalTowerSumEt());
415 
416  // PF isolation
417  GsfElectron::PflowIsolationVariables pfIso = gsfIter->pfIsolationVariables();
419  h1_PFem_dr03->Fill( pfIso.sumPhotonEt );
421 
422 
423  }
424 
425  // association matching object-reco electrons
426  int matchingObjectNum=0;
427  reco::SuperClusterCollection::const_iterator moIter ;
428  for
429  ( moIter=recoClusters->begin() ;
430  moIter!=recoClusters->end() ;
431  moIter++ )
432  {
433 // // number of matching objects
434  matchingObjectNum++;
435 
436  if
437  ( moIter->energy()/cosh(moIter->eta())>maxPtMatchingObject_ ||
438  std::abs(moIter->eta())> maxAbsEtaMatchingObject_ )
439  { continue ; }
440 
441 // // suppress the endcaps
442  h1_matchingObject_Eta->Fill( moIter->eta() );
443  h1_matchingObject_Pt->Fill( moIter->energy()/cosh(moIter->eta()) );
444  h1_matchingObject_Phi->Fill( moIter->phi() );
445 
446  bool okGsfFound = false ;
447  double gsfOkRatio = 999999999. ;
448  reco::GsfElectron bestGsfElectron ;
449  reco::GsfElectronCollection::const_iterator gsfIter ;
450  for
451  ( gsfIter=gsfElectrons->begin() ;
452  gsfIter!=gsfElectrons->end() ;
453  gsfIter++ )
454  {
455 
456  double vertexTIP =
457  (gsfIter->vertex().x()-bs.position().x()) * (gsfIter->vertex().x()-bs.position().x()) +
458  (gsfIter->vertex().y()-bs.position().y()) * (gsfIter->vertex().y()-bs.position().y()) ;
459  vertexTIP = sqrt(vertexTIP) ;
460 
461  // select electrons
462  if (!selected(gsfIter,vertexTIP)) continue ;
463 
464  // matching with a cone in eta phi
465  if ( matchingCondition_ == "Cone" )
466  {
467  double dphi = gsfIter->phi()-moIter->phi() ;
468  if (std::abs(dphi)>CLHEP::pi)
469  { dphi = dphi < 0? (CLHEP::twopi) + dphi : dphi - CLHEP::twopi ; }
470  double deltaR = sqrt(pow((moIter->eta()-gsfIter->eta()),2) + pow(dphi,2)) ;
471  if ( deltaR < deltaR_ )
472  {
473  double tmpGsfRatio = gsfIter->p()/moIter->energy() ;
474  if ( std::abs(tmpGsfRatio-1) < std::abs(gsfOkRatio-1) )
475  {
476  gsfOkRatio = tmpGsfRatio;
477  bestGsfElectron=*gsfIter;
478  okGsfFound = true;
479  }
480  }
481  }
482  } // loop over rec ele to look for the best one
483  if (okGsfFound)
484  {
485  // generated distributions for matched electrons
486  h1_matchedObject_Eta->Fill( moIter->eta() );
487  h1_matchedObject_Pt->Fill( moIter->energy()/cosh(moIter->eta()) );
488  h1_matchedObject_Phi->Fill( moIter->phi() );
489 
490  //classes
491  }
492 
493  } // loop overmatching object
494 
495 
496  }
MonitorElement * h1_foundHits
MonitorElement * h1_dEtaSc_propVtx_endcapsPos
MonitorElement * h1_mee_os
bool selected(const reco::GsfElectronCollection::const_iterator &gsfIter, double vertexTIP)
MonitorElement * h1_dPhiSc_propVtx_barrel
unsigned int nEvents_
MonitorElement * h1_vertexPt_barrel
MonitorElement * h1_PFch_dr03
MonitorElement * py_lostHitsVsEta
MonitorElement * h1_sclSigEtaEta_barrel
MonitorElement * py_chi2VsEta
edm::EDGetTokenT< reco::SuperClusterCollection > matchingObjectCollection_
MonitorElement * h1_vertexEta
MonitorElement * py_chi2VsPhi
MonitorElement * h1_Eop_endcaps
unsigned long long EventNumber_t
MonitorElement * h1_ecalRecHitSumEt_dr03
MonitorElement * h1_hcalTowerSumEt_dr03
MonitorElement * h1_dPhiEleCl_propOut_endcapsNeg
MonitorElement * h1_matchingObject_Eta
MonitorElement * h1_Hoe_barrel
MonitorElement * py_HoeVsPhi
MonitorElement * h1_matchedObject_Pt
unsigned int LuminosityBlockNumber_t
MonitorElement * h1_matchedObject_Phi
MonitorElement * h1_PFem_dr03
void Fill(long long x)
const Double_t pi
MonitorElement * h1_tkSumPt_dr03
MonitorElement * h1_dEtaEleCl_propOut_endcapsPos
int iEvent
Definition: GenABIO.cc:230
MonitorElement * h2_vertexXvsY
MonitorElement * h1_dPhiSc_propVtx_endcapsPos
MonitorElement * py_fbremVsEta
MonitorElement * h1_provenance
MonitorElement * h1_dEtaEleCl_propOut_barrel
MonitorElement * py_EopVsPhi
MonitorElement * h1_PFnh_dr03
MonitorElement * h1_Eop_barrel
T sqrt(T t)
Definition: SSEVec.h:18
float sumPhotonEt
sum pt of PF photons // old float photonIso ;
Definition: GsfElectron.h:627
MonitorElement * py_dEtaSc_propVtxVsPhi
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
std::string matchingCondition_
float sumNeutralHadronEt
sum pt of neutral hadrons // old float neutralHadronIso ;
Definition: GsfElectron.h:626
MonitorElement * h1_dPhiEleCl_propOut_endcapsPos
MonitorElement * h1_Hoe_endcaps
MonitorElement * h1_dEtaEleCl_propOut_endcapsNeg
MonitorElement * h1_dPhiSc_propVtx_endcapsNeg
edm::EDGetTokenT< reco::GsfTrackCollection > gsftrackCollection_
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 * py_fbremVsPhi
T const * product() const
Definition: Handle.h:81
MonitorElement * h1_dEtaSc_propVtx_endcapsNeg
MonitorElement * py_foundHitsVsPhi
MonitorElement * h1_fbrem
edm::EDGetTokenT< reco::TrackCollection > trackCollection_
MonitorElement * h1_chi2
double maxAbsEtaMatchingObject_
MonitorElement * h1_lostHits
MonitorElement * h2_vertexEtaVsPhi
MonitorElement * h1_EeleOPout_endcaps
MonitorElement * h1_mee
edm::EDGetTokenT< reco::GsfElectronCollection > electronCollection_
MonitorElement * h1_classes
MonitorElement * h1_sclEt
MonitorElement * h1_sigIEtaIEta5x5_barrel
MonitorElement * h1_EeleOPout_barrel
MonitorElement * h1_dEtaSc_propVtx_barrel
float computeInvMass(const reco::GsfElectron &e1, const reco::GsfElectron &e2)
MonitorElement * h1_matchingObject_Phi
edm::EDGetTokenT< reco::BeamSpot > beamSpotTag_
MonitorElement * h1_sigIEtaIEta5x5_endcaps
MonitorElement * h1_sclSigEtaEta_endcaps
const Point & position() const
position
Definition: BeamSpot.h:62
unsigned int RunNumber_t
MonitorElement * py_foundHitsVsEta
edm::EDGetTokenT< reco::VertexCollection > vertexCollection_
float sumChargedHadronPt
sum-pt of charged Hadron // old float chargedHadronIso ;
Definition: GsfElectron.h:625
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_mva
void ElectronAnalyzer::bookHistograms ( DQMStore::IBooker iBooker,
edm::Run const &  ,
edm::EventSetup const &   
)
virtual

Reimplemented from ElectronDqmAnalyzerBase.

Definition at line 160 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_endcapsNeg, h1_dEtaEleCl_propOut_endcapsPos, h1_dEtaSc_propVtx_barrel, h1_dEtaSc_propVtx_endcapsNeg, h1_dEtaSc_propVtx_endcapsPos, h1_dPhiEleCl_propOut_barrel, h1_dPhiEleCl_propOut_endcapsNeg, h1_dPhiEleCl_propOut_endcapsPos, h1_dPhiSc_propVtx_barrel, h1_dPhiSc_propVtx_endcapsNeg, h1_dPhiSc_propVtx_endcapsPos, 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_PFch_dr03, h1_PFem_dr03, h1_PFnh_dr03, h1_provenance, h1_sclEt, h1_sclSigEtaEta_barrel, h1_sclSigEtaEta_endcaps, h1_sigIEtaIEta5x5_barrel, h1_sigIEtaIEta5x5_endcaps, h1_tkSumPt_dr03, h1_vertexEta, h1_vertexPt_barrel, h1_vertexPt_endcaps, h1_vertexZ, h2_vertexEtaVsPhi, h2_vertexXvsY, hoemax, hoemin, checklumidiff::l, edm::EDConsumerBase::labelsForToken(), lhitsmax, matchingObjectCollection_, meemax, meemin, edm::ProductLabels::module, nbindetamatch, nbindphimatch, nbineop, nbineta, nbineta2D, nbinfhits, nbinhoe, nbinmee, nbinphi, nbinphi2D, nbinpt, nbinpteff, nbinxyz, nbinxyz2D, nEvents_, outputInternalPath_, 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, ElectronDqmAnalyzerBase::setBookIndex(), DQMStore::IBooker::setCurrentFolder(), and AlCaHLTBitMon_QueryRunRegistry::string.

161  {
163 
164  nEvents_ = 0 ;
165 
166  // basic quantities
167  h1_vertexPt_barrel = bookH1(iBooker, "vertexPt_barrel","ele transverse momentum in barrel",nbinpt,0.,ptmax,"p_{T vertex} (GeV/c)");
168  h1_vertexPt_endcaps = bookH1(iBooker, "vertexPt_endcaps","ele transverse momentum in endcaps",nbinpt,0.,ptmax,"p_{T vertex} (GeV/c)");
169  h1_vertexEta = bookH1(iBooker, "vertexEta","ele momentum #eta",nbineta,etamin,etamax,"#eta");
170  h2_vertexEtaVsPhi = bookH2(iBooker, "vertexEtaVsPhi","ele momentum #eta vs #phi",nbineta2D,etamin,etamax,nbinphi2D,phimin,phimax,"#eta","#phi (rad)");
171  h2_vertexXvsY = bookH2(iBooker, "vertexXvsY","ele vertex x vs y",nbinxyz2D,-0.1,0.1,nbinxyz2D,-0.1,0.1,"x (cm)","y (cm)");
172  h1_vertexZ = bookH1(iBooker, "vertexZ","ele vertex z",nbinxyz,-25, 25,"z (cm)");
173 
174  // super-clusters
175  h1_sclEt = bookH1(iBooker, "sclEt","ele supercluster transverse energy",nbinpt,0.,ptmax,"E_{T} (GeV)");
176 
177  // electron track
178  h1_chi2 = bookH1(iBooker, "chi2","ele track #chi^{2}",100,0.,15.,"#Chi^{2}");
179  py_chi2VsEta = bookP1(iBooker, "chi2VsEta","ele track #chi^{2} vs #eta",nbineta2D,etamin,etamax,0.,15.,"#eta","<#chi^{2}>");
180  py_chi2VsPhi = bookP1(iBooker, "chi2VsPhi","ele track #chi^{2} vs #phi",nbinphi2D,phimin,phimax,0.,15.,"#phi (rad)","<#chi^{2}>");
181  h1_foundHits = bookH1(iBooker, "foundHits","ele track # found hits",nbinfhits,0.,fhitsmax,"N_{hits}");
182  py_foundHitsVsEta = bookP1(iBooker, "foundHitsVsEta","ele track # found hits vs #eta",nbineta2D,etamin,etamax,0.,fhitsmax,"#eta","<# hits>");
183  py_foundHitsVsPhi = bookP1(iBooker, "foundHitsVsPhi","ele track # found hits vs #phi",nbinphi2D,phimin,phimax,0.,fhitsmax,"#phi (rad)","<# hits>");
184  h1_lostHits = bookH1(iBooker, "lostHits","ele track # lost hits",5,0.,5.,"N_{lost hits}");
185  py_lostHitsVsEta = bookP1(iBooker, "lostHitsVsEta","ele track # lost hits vs #eta",nbineta2D,etamin,etamax,0.,lhitsmax,"#eta","<# hits>");
186  py_lostHitsVsPhi = bookP1(iBooker, "lostHitsVsPhi","ele track # lost hits vs #eta",nbinphi2D,phimin,phimax,0.,lhitsmax,"#phi (rad)","<# hits>");
187 
188  // electron matching and ID
189  h1_Eop_barrel = bookH1(iBooker, "Eop_barrel","ele E/P_{vertex} in barrel",nbineop,0.,eopmax,"E/P_{vertex}");
190  h1_Eop_endcaps = bookH1(iBooker, "Eop_endcaps","ele E/P_{vertex} in endcaps",nbineop,0.,eopmax,"E/P_{vertex}");
191  py_EopVsPhi = bookP1(iBooker, "EopVsPhi","ele E/P_{vertex} vs #phi",nbinphi2D,phimin,phimax,0.,eopmax,"#phi (rad)","<E/P_{vertex}>");
192  h1_EeleOPout_barrel = bookH1(iBooker, "EeleOPout_barrel","ele E_{ele}/P_{out} in barrel",nbineop,0.,eopmax,"E_{ele}/P_{out}");
193  h1_EeleOPout_endcaps = bookH1(iBooker, "EeleOPout_endcaps","ele E_{ele}/P_{out} in endcaps",nbineop,0.,eopmax,"E_{ele}/P_{out}");
194  h1_dEtaSc_propVtx_barrel = bookH1(iBooker, "dEtaSc_propVtx_barrel","ele #eta_{sc} - #eta_{tr}, prop from vertex, in barrel",nbindetamatch,detamatchmin,detamatchmax,"#eta_{sc} - #eta_{tr}");
195  h1_dEtaSc_propVtx_endcapsPos = bookH1(iBooker, "dEtaSc_propVtx_endcapsPos","ele #eta_{sc} - #eta_{tr}, prop from vertex, in positive endcap",nbindetamatch,detamatchmin,detamatchmax,"#eta_{sc} - #eta_{tr}");
196  h1_dEtaSc_propVtx_endcapsNeg = bookH1(iBooker, "dEtaSc_propVtx_endcapsNeg","ele #eta_{sc} - #eta_{tr}, prop from vertex, in negative endcap",nbindetamatch,detamatchmin,detamatchmax,"#eta_{sc} - #eta_{tr}");
197  py_dEtaSc_propVtxVsPhi = bookP1(iBooker, "dEtaSc_propVtxVsPhi","ele #eta_{sc} - #eta_{tr}, prop from vertex vs #phi",nbinphi2D,phimin,phimax,detamatchmin,detamatchmax,"#phi (rad)","<#eta_{sc} - #eta_{tr}>");
198  h1_dEtaEleCl_propOut_barrel = bookH1(iBooker, "dEtaEleCl_propOut_barrel","ele #eta_{EleCl} - #eta_{tr}, prop from outermost, in barrel",nbindetamatch,detamatchmin,detamatchmax,"#eta_{elecl} - #eta_{tr}");
199  h1_dEtaEleCl_propOut_endcapsPos = bookH1(iBooker, "dEtaEleCl_propOut_endcapsPos","ele #eta_{EleCl} - #eta_{tr}, prop from outermost, in positive endcap",nbindetamatch,detamatchmin,detamatchmax,"#eta_{elecl} - #eta_{tr}");
200  h1_dEtaEleCl_propOut_endcapsNeg = bookH1(iBooker, "dEtaEleCl_propOut_endcapsNeg","ele #eta_{EleCl} - #eta_{tr}, prop from outermost, in negative endcap",nbindetamatch,detamatchmin,detamatchmax,"#eta_{elecl} - #eta_{tr}");
201  h1_dPhiSc_propVtx_barrel = bookH1(iBooker, "dPhiSc_propVtx_barrel","ele #phi_{sc} - #phi_{tr}, prop from vertex, in barrel",nbindphimatch,dphimatchmin,dphimatchmax,"#phi_{sc} - #phi_{tr} (rad)");
202  h1_dPhiSc_propVtx_endcapsPos = bookH1(iBooker, "dPhiSc_propVtx_endcapsPos","ele #phi_{sc} - #phi_{tr}, prop from vertex, in positive endcap",nbindphimatch,dphimatchmin,dphimatchmax,"#phi_{sc} - #phi_{tr} (rad)");
203  h1_dPhiSc_propVtx_endcapsNeg = bookH1(iBooker, "dPhiSc_propVtx_endcapsNeg","ele #phi_{sc} - #phi_{tr}, prop from vertex, in negative endcap",nbindphimatch,dphimatchmin,dphimatchmax,"#phi_{sc} - #phi_{tr} (rad)");
204  py_dPhiSc_propVtxVsPhi = bookP1(iBooker, "dPhiSc_propVtxVsPhi","ele #phi_{sc} - #phi_{tr}, prop from vertex vs #phi",nbinphi2D,phimin,phimax,dphimatchmin,dphimatchmax,"#phi (rad)","<#phi_{sc} - #phi_{tr}> (rad)");
205  h1_dPhiEleCl_propOut_barrel = bookH1(iBooker, "dPhiEleCl_propOut_barrel","ele #phi_{EleCl} - #phi_{tr}, prop from outermost, in barrel",nbindphimatch,dphimatchmin,dphimatchmax,"#phi_{elecl} - #phi_{tr} (rad)");
206  h1_dPhiEleCl_propOut_endcapsPos = bookH1(iBooker, "dPhiEleCl_propOut_endcapsPos","ele #phi_{EleCl} - #phi_{tr}, prop from outermost, in positive endcap",nbindphimatch,dphimatchmin,dphimatchmax,"#phi_{elecl} - #phi_{tr} (rad)");
207  h1_dPhiEleCl_propOut_endcapsNeg = bookH1(iBooker, "dPhiEleCl_propOut_endcapsNeg","ele #phi_{EleCl} - #phi_{tr}, prop from outermost, in negative endcap",nbindphimatch,dphimatchmin,dphimatchmax,"#phi_{elecl} - #phi_{tr} (rad)");
208  h1_Hoe_barrel = bookH1(iBooker, "Hoe_barrel","ele hadronic energy / em energy, in barrel", nbinhoe, hoemin, hoemax,"H/E","Events","ELE_LOGY E1 P") ;
209  h1_Hoe_endcaps = bookH1(iBooker, "Hoe_endcaps","ele hadronic energy / em energy, in endcaps", nbinhoe, hoemin, hoemax,"H/E","Events","ELE_LOGY E1 P") ;
210  py_HoeVsPhi = bookP1(iBooker, "HoeVsPhi","ele hadronic energy / em energy vs #phi",nbinphi2D,phimin,phimax,hoemin,hoemax,"#phi (rad)","<H/E>","E1 P") ;
211  h1_sclSigEtaEta_barrel = bookH1(iBooker, "sclSigEtaEta_barrel","ele sigma eta eta in barrel",100,0.,0.05,"sietaieta");
212  h1_sclSigEtaEta_endcaps = bookH1(iBooker, "sclSigEtaEta_endcaps","ele sigma eta eta in endcaps",100,0.,0.05,"sietaieta");
213  h1_sigIEtaIEta5x5_barrel = bookH1(iBooker, "sigIEtaIEta5x5_barrel","ele sigma ieta ieta 5x5 in barrel",100,0.,0.05,"sietaieta5x5");
214  h1_sigIEtaIEta5x5_endcaps = bookH1(iBooker, "sigIEtaIEta5x5_endcaps","ele sigma ieta ieta 5x5 in endcaps",100,0.,0.05,"sietaieta5x5");
215 
216  // fbrem
217  h1_fbrem = bookH1(iBooker, "fbrem","ele brem fraction",100,0.,1.,"P_{in} - P_{out} / P_{in}") ;
218  py_fbremVsEta = bookP1(iBooker, "fbremVsEta","ele brem fraction vs #eta",nbineta2D,etamin,etamax,0.,1.,"#eta","<P_{in} - P_{out} / P_{in}>") ;
219  py_fbremVsPhi = bookP1(iBooker, "fbremVsPhi","ele brem fraction vs #phi",nbinphi2D,phimin,phimax,0.,1.,"#phi (rad)","<P_{in} - P_{out} / P_{in}>") ;
220  h1_classes = bookH1(iBooker, "classes","ele electron classes",10,0.0,10.);
221 
222  // pflow
223  h1_mva = bookH1(iBooker, "mva","ele identification mva",100,-1.,1.,"mva");
224  h1_provenance = bookH1(iBooker, "provenance","ele provenance",5,-2.,3.,"provenance");
225 
226  // isolation
227  h1_tkSumPt_dr03 = bookH1(iBooker, "tkSumPt_dr03","tk isolation sum, dR=0.3",100,0.0,20.,"TkIsoSum (GeV/c)","Events","ELE_LOGY E1 P");
228  h1_ecalRecHitSumEt_dr03 = bookH1(iBooker, "ecalRecHitSumEt_dr03","ecal isolation sum, dR=0.3",100,0.0,20.,"EcalIsoSum (GeV)","Events","ELE_LOGY E1 P");
229  h1_hcalTowerSumEt_dr03 = bookH1(iBooker, "hcalTowerSumEt_dr03","hcal isolation sum, dR=0.3",100,0.0,20.,"HcalIsoSum (GeV)","Events","ELE_LOGY E1 P");
230 
231  // pf isolation
232  h1_PFch_dr03 = bookH1(iBooker, "PFch_dr03","Charged PF candidate sum, dR=0.3",100,0.0,20.,"PF charged (GeV/c)","Events","ELE_LOGY E1 P");
233  h1_PFem_dr03 = bookH1(iBooker, "PFem_dr03","Neutral EM PF candidate sum, dR=0.3",100,0.0,20.,"PF neutral EM (GeV)","Events","ELE_LOGY E1 P");
234  h1_PFnh_dr03 = bookH1(iBooker, "PFnh_dr03","Neutral Had PF candidate sum, dR=0.3",100,0.0,20.,"PF neutral Had (GeV)","Events","ELE_LOGY E1 P");
235 
236  // di-electron mass
237  setBookIndex(200) ;
238  h1_mee = bookH1(iBooker, "mee","ele pairs invariant mass", nbinmee, meemin, meemax,"m_{ee} (GeV/c^{2})");
239  h1_mee_os = bookH1(iBooker, "mee_os","ele pairs invariant mass, opposite sign", nbinmee, meemin, meemax,"m_{e^{+}e^{-}} (GeV/c^{2})");
240 
241  //===========================
242  // histos for matching and matched matched objects
243  //===========================
244 
245  // matching object
246  std::string matchingObjectType ;
247  Labels l;
249  if (std::string::npos != std::string(l.module).find("SuperCluster",0))
250  { matchingObjectType = "SC" ; }
251  if (matchingObjectType=="")
252  { edm::LogError("ElectronMcFakeValidator::beginJob")<<"Unknown matching object type !" ; }
253  else
254  { edm::LogInfo("ElectronMcFakeValidator::beginJob")<<"Matching object type: "<<matchingObjectType ; }
255 
256  // matching object distributions
257  h1_matchingObject_Eta = bookH1withSumw2(iBooker, "matchingObject_Eta",matchingObjectType+" #eta",nbineta,etamin,etamax,"#eta_{SC}");
258 
259 
260  h1_matchingObject_Pt = bookH1withSumw2(iBooker, "matchingObject_Pt",matchingObjectType+" pt",nbinpteff,5.,ptmax,"pt_{SC} (GeV/c)");
261  h1_matchingObject_Phi = bookH1withSumw2(iBooker, "matchingObject_Phi",matchingObjectType+" #phi",nbinphi,phimin,phimax,"#phi (rad)");
262 
263  h1_matchedObject_Eta = bookH1withSumw2(iBooker, "matchedObject_Eta","Efficiency vs matching SC #eta",nbineta,etamin,etamax,"#eta_{SC}");
264  h1_matchedObject_Pt = bookH1withSumw2(iBooker, "matchedObject_Pt","Efficiency vs matching SC E_{T}",nbinpteff,5.,ptmax,"pt_{SC} (GeV/c)");
265  h1_matchedObject_Phi = bookH1withSumw2(iBooker, "matchedObject_Phi","Efficiency vs matching SC #phi",nbinphi,phimin,phimax,"#phi (rad)");
266 
267 
268  }
MonitorElement * h1_foundHits
MonitorElement * h1_dEtaSc_propVtx_endcapsPos
MonitorElement * h1_mee_os
MonitorElement * h1_dPhiSc_propVtx_barrel
unsigned int nEvents_
MonitorElement * h1_vertexPt_barrel
MonitorElement * h1_PFch_dr03
MonitorElement * py_lostHitsVsEta
MonitorElement * h1_sclSigEtaEta_barrel
MonitorElement * py_chi2VsEta
edm::EDGetTokenT< reco::SuperClusterCollection > matchingObjectCollection_
MonitorElement * h1_vertexEta
MonitorElement * py_chi2VsPhi
MonitorElement * h1_Eop_endcaps
MonitorElement * bookH1withSumw2(DQMStore::IBooker &, 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_ecalRecHitSumEt_dr03
MonitorElement * h1_hcalTowerSumEt_dr03
MonitorElement * h1_dPhiEleCl_propOut_endcapsNeg
MonitorElement * h1_matchingObject_Eta
MonitorElement * h1_Hoe_barrel
MonitorElement * bookH2(DQMStore::IBooker &, 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 * py_HoeVsPhi
MonitorElement * h1_matchedObject_Pt
MonitorElement * h1_matchedObject_Phi
MonitorElement * h1_PFem_dr03
MonitorElement * h1_tkSumPt_dr03
MonitorElement * h1_dEtaEleCl_propOut_endcapsPos
MonitorElement * h2_vertexXvsY
MonitorElement * h1_dPhiSc_propVtx_endcapsPos
MonitorElement * py_fbremVsEta
MonitorElement * h1_provenance
MonitorElement * h1_dEtaEleCl_propOut_barrel
MonitorElement * py_EopVsPhi
MonitorElement * h1_PFnh_dr03
MonitorElement * h1_Eop_barrel
MonitorElement * py_dEtaSc_propVtxVsPhi
MonitorElement * h1_dPhiEleCl_propOut_endcapsPos
MonitorElement * h1_Hoe_endcaps
MonitorElement * bookP1(DQMStore::IBooker &, 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 * h1_dEtaEleCl_propOut_endcapsNeg
MonitorElement * h1_dPhiSc_propVtx_endcapsNeg
MonitorElement * h1_vertexPt_endcaps
MonitorElement * py_lostHitsVsPhi
MonitorElement * h1_vertexZ
ProductLabels Labels
MonitorElement * py_dPhiSc_propVtxVsPhi
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:277
MonitorElement * py_fbremVsPhi
MonitorElement * h1_dEtaSc_propVtx_endcapsNeg
MonitorElement * py_foundHitsVsPhi
MonitorElement * h1_fbrem
MonitorElement * h1_chi2
MonitorElement * h1_lostHits
MonitorElement * h2_vertexEtaVsPhi
MonitorElement * h1_EeleOPout_endcaps
MonitorElement * h1_mee
MonitorElement * h1_classes
MonitorElement * h1_sclEt
void labelsForToken(EDGetToken iToken, Labels &oLabels) const
MonitorElement * h1_sigIEtaIEta5x5_barrel
MonitorElement * h1_EeleOPout_barrel
std::string outputInternalPath_
MonitorElement * h1_dEtaSc_propVtx_barrel
MonitorElement * h1_matchingObject_Phi
MonitorElement * h1_sigIEtaIEta5x5_endcaps
MonitorElement * h1_sclSigEtaEta_endcaps
MonitorElement * bookH1(DQMStore::IBooker &, 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 * py_foundHitsVsEta
MonitorElement * h1_matchedObject_Eta
MonitorElement * h1_matchingObject_Pt
MonitorElement * h1_dPhiEleCl_propOut_barrel
MonitorElement * h1_mva
float ElectronAnalyzer::computeInvMass ( const reco::GsfElectron e1,
const reco::GsfElectron e2 
)
private

Definition at line 499 of file ElectronAnalyzer.cc.

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

Referenced by analyze().

501  {
502  math::XYZTLorentzVector p12 = e1.p4()+e2.p4() ;
503  float mee2 = p12.Dot(p12) ;
504  float invMass = mee2 > 0. ? sqrt(mee2) : 0;
505  return invMass ;
506  }
const LorentzVector & p4(P4Kind kind) const
Definition: GsfElectron.cc:225
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
Definition: LorentzVector.h:29
T sqrt(T t)
Definition: SSEVec.h:18
bool ElectronAnalyzer::etCut ( const reco::GsfElectronCollection::const_iterator &  gsfIter)
private

Definition at line 532 of file ElectronAnalyzer.cc.

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

Referenced by selected().

533  {
534  if (gsfIter->superCluster()->energy()/cosh(gsfIter->superCluster()->eta())<minEt_) return true ;
535 
536  return false ;
537  }
bool ElectronAnalyzer::generalCut ( const reco::GsfElectronCollection::const_iterator &  gsfIter)
private

Definition at line 517 of file ElectronAnalyzer.cc.

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

Referenced by selected().

518  {
519  if (std::abs(gsfIter->eta())>maxAbsEta_) return true ;
520  if (gsfIter->pt()<minPt_) return true ;
521 
522  if (gsfIter->isEB() && isEE_) return true ;
523  if (gsfIter->isEE() && isEB_) return true ;
524  if (gsfIter->isEBEEGap() && isNotEBEEGap_) return true ;
525 
526  if (gsfIter->ecalDrivenSeed() && isTrackerDriven_) return true ;
527  if (gsfIter->trackerDrivenSeed() && isEcalDriven_) return true ;
528 
529  return false ;
530  }
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
bool ElectronAnalyzer::idCut ( const reco::GsfElectronCollection::const_iterator &  gsfIter)
private

Definition at line 554 of file ElectronAnalyzer.cc.

References funct::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().

555  {
556  if (gsfIter->isEB() && gsfIter->eSuperClusterOverP() < eOverPMinBarrel_) return true ;
557  if (gsfIter->isEB() && gsfIter->eSuperClusterOverP() > eOverPMaxBarrel_) return true ;
558  if (gsfIter->isEE() && gsfIter->eSuperClusterOverP() < eOverPMinEndcaps_) return true ;
559  if (gsfIter->isEE() && gsfIter->eSuperClusterOverP() > eOverPMaxEndcaps_) return true ;
560  if (gsfIter->isEB() && std::abs(gsfIter->deltaEtaSuperClusterTrackAtVtx()) < dEtaMinBarrel_) return true ;
561  if (gsfIter->isEB() && std::abs(gsfIter->deltaEtaSuperClusterTrackAtVtx()) > dEtaMaxBarrel_) return true ;
562  if (gsfIter->isEE() && std::abs(gsfIter->deltaEtaSuperClusterTrackAtVtx()) < dEtaMinEndcaps_) return true ;
563  if (gsfIter->isEE() && std::abs(gsfIter->deltaEtaSuperClusterTrackAtVtx()) > dEtaMaxEndcaps_) return true ;
564  if (gsfIter->isEB() && std::abs(gsfIter->deltaPhiSuperClusterTrackAtVtx()) < dPhiMinBarrel_) return true ;
565  if (gsfIter->isEB() && std::abs(gsfIter->deltaPhiSuperClusterTrackAtVtx()) > dPhiMaxBarrel_) return true ;
566  if (gsfIter->isEE() && std::abs(gsfIter->deltaPhiSuperClusterTrackAtVtx()) < dPhiMinEndcaps_) return true ;
567  if (gsfIter->isEE() && std::abs(gsfIter->deltaPhiSuperClusterTrackAtVtx()) > dPhiMaxEndcaps_) return true ;
568  if (gsfIter->isEB() && gsfIter->scSigmaIEtaIEta() < sigIetaIetaMinBarrel_) return true ;
569  if (gsfIter->isEB() && gsfIter->scSigmaIEtaIEta() > sigIetaIetaMaxBarrel_) return true ;
570  if (gsfIter->isEE() && gsfIter->scSigmaIEtaIEta() < sigIetaIetaMinEndcaps_) return true ;
571  if (gsfIter->isEE() && gsfIter->scSigmaIEtaIEta() > sigIetaIetaMaxEndcaps_) return true ;
572  if (gsfIter->isEB() && gsfIter->hadronicOverEm() > hadronicOverEmMaxBarrel_) return true ;
573  if (gsfIter->isEE() && gsfIter->hadronicOverEm() > hadronicOverEmMaxEndcaps_) return true ;
574 
575  return false ;
576  }
double hadronicOverEmMaxEndcaps_
double sigIetaIetaMinBarrel_
double sigIetaIetaMaxBarrel_
double sigIetaIetaMinEndcaps_
double sigIetaIetaMaxEndcaps_
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
double hadronicOverEmMaxBarrel_
bool ElectronAnalyzer::isolationCut ( const reco::GsfElectronCollection::const_iterator &  gsfIter,
double  vertexTIP 
)
private

Definition at line 539 of file ElectronAnalyzer.cc.

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

Referenced by selected().

540  {
541  if (gsfIter->isEB() && vertexTIP > tipMaxBarrel_) return true ;
542  if (gsfIter->isEE() && vertexTIP > tipMaxEndcaps_) return true ;
543 
544  if (gsfIter->dr03TkSumPt() > tkIso03Max_) return true ;
545  if (gsfIter->isEB() && gsfIter->dr03HcalDepth1TowerSumEt() > hcalIso03Depth1MaxBarrel_) return true ;
546  if (gsfIter->isEE() && gsfIter->dr03HcalDepth1TowerSumEt() > hcalIso03Depth1MaxEndcaps_) return true ;
547  if (gsfIter->isEE() && gsfIter->dr03HcalDepth2TowerSumEt() > hcalIso03Depth2MaxEndcaps_) return true ;
548  if (gsfIter->isEB() && gsfIter->dr03EcalRecHitSumEt() > ecalIso03MaxBarrel_) return true ;
549  if (gsfIter->isEE() && gsfIter->dr03EcalRecHitSumEt() > ecalIso03MaxEndcaps_) return true ;
550 
551  return false ;
552  }
double hcalIso03Depth1MaxBarrel_
double hcalIso03Depth1MaxEndcaps_
double hcalIso03Depth2MaxEndcaps_
bool ElectronAnalyzer::selected ( const reco::GsfElectronCollection::const_iterator &  gsfIter,
double  vertexTIP 
)
private

Definition at line 508 of file ElectronAnalyzer.cc.

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

Referenced by analyze().

509  {
510  if ((Selection_>0)&&generalCut(gsfIter)) return false ;
511  if ((Selection_>=1)&&etCut(gsfIter)) return false ;
512  if ((Selection_>=2)&&isolationCut(gsfIter,vertexTIP)) return false ;
513  if ((Selection_>=3)&&idCut(gsfIter)) return false ;
514  return true ;
515  }
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::EDGetTokenT<reco::BeamSpot> ElectronAnalyzer::beamSpotTag_
private

Definition at line 60 of file ElectronAnalyzer.h.

Referenced by analyze(), and ElectronAnalyzer().

double ElectronAnalyzer::deltaR_
private

Definition at line 72 of file ElectronAnalyzer.h.

Referenced by analyze(), and ElectronAnalyzer().

double ElectronAnalyzer::detamatchmax
private

Definition at line 123 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

double ElectronAnalyzer::detamatchmin
private

Definition at line 123 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

double ElectronAnalyzer::detamax
private

Definition at line 121 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

double ElectronAnalyzer::dEtaMaxBarrel_
private

Definition at line 88 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::dEtaMaxEndcaps_
private

Definition at line 90 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::detamin
private

Definition at line 121 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

double ElectronAnalyzer::dEtaMinBarrel_
private

Definition at line 87 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::dEtaMinEndcaps_
private

Definition at line 89 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::dphimatchmax
private

Definition at line 124 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

double ElectronAnalyzer::dphimatchmin
private

Definition at line 124 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

double ElectronAnalyzer::dphimax
private

Definition at line 122 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

double ElectronAnalyzer::dPhiMaxBarrel_
private

Definition at line 92 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::dPhiMaxEndcaps_
private

Definition at line 94 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::dphimin
private

Definition at line 122 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

double ElectronAnalyzer::dPhiMinBarrel_
private

Definition at line 91 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::dPhiMinEndcaps_
private

Definition at line 93 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::ecalIso03MaxBarrel_
private

Definition at line 108 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and isolationCut().

double ElectronAnalyzer::ecalIso03MaxEndcaps_
private

Definition at line 109 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and isolationCut().

edm::EDGetTokenT<reco::GsfElectronCollection> ElectronAnalyzer::electronCollection_
private

Definition at line 55 of file ElectronAnalyzer.h.

Referenced by analyze(), and ElectronAnalyzer().

double ElectronAnalyzer::eopmax
private

Definition at line 120 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

double ElectronAnalyzer::eopmaxsht
private

Definition at line 120 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

double ElectronAnalyzer::eOverPMaxBarrel_
private

Definition at line 84 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::eOverPMaxEndcaps_
private

Definition at line 86 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::eOverPMinBarrel_
private

Definition at line 83 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::eOverPMinEndcaps_
private

Definition at line 85 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::etamax
private

Definition at line 116 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

double ElectronAnalyzer::etamin
private

Definition at line 116 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

double ElectronAnalyzer::fhitsmax
private

Definition at line 125 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

edm::EDGetTokenT<reco::GsfTrackCollection> ElectronAnalyzer::gsftrackCollection_
private

Definition at line 57 of file ElectronAnalyzer.h.

Referenced by analyze(), and ElectronAnalyzer().

MonitorElement* ElectronAnalyzer::h1_chi2
private

Definition at line 200 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_classes
private

Definition at line 280 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_dEtaEleCl_propOut_barrel
private

Definition at line 238 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_dEtaEleCl_propOut_endcapsNeg
private

Definition at line 240 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_dEtaEleCl_propOut_endcapsPos
private

Definition at line 239 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_dEtaSc_propVtx_barrel
private

Definition at line 231 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_dEtaSc_propVtx_endcapsNeg
private

Definition at line 233 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_dEtaSc_propVtx_endcapsPos
private

Definition at line 232 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_dPhiEleCl_propOut_barrel
private

Definition at line 252 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_dPhiEleCl_propOut_endcapsNeg
private

Definition at line 254 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_dPhiEleCl_propOut_endcapsPos
private

Definition at line 253 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_dPhiSc_propVtx_barrel
private

Definition at line 245 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_dPhiSc_propVtx_endcapsNeg
private

Definition at line 247 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_dPhiSc_propVtx_endcapsPos
private

Definition at line 246 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_ecalRecHitSumEt_dr03
private

Definition at line 288 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_EeleOPout_barrel
private

Definition at line 225 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_EeleOPout_endcaps
private

Definition at line 226 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_Eop_barrel
private

Definition at line 219 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_Eop_endcaps
private

Definition at line 220 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_fbrem
private

Definition at line 276 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_foundHits
private

Definition at line 204 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_hcalTowerSumEt_dr03
private

Definition at line 289 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_Hoe_barrel
private

Definition at line 259 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_Hoe_endcaps
private

Definition at line 260 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_lostHits
private

Definition at line 208 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_matchedObject_Eta
private

Definition at line 314 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_matchedObject_Phi
private

Definition at line 317 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_matchedObject_Pt
private

Definition at line 316 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_matchingObject_Eta
private

Definition at line 321 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_matchingObject_Phi
private

Definition at line 325 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_matchingObject_Pt
private

Definition at line 324 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_mee
private

Definition at line 302 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_mee_os
private

Definition at line 303 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_mva
private

Definition at line 283 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_PFch_dr03
private

Definition at line 290 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_PFem_dr03
private

Definition at line 291 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_PFnh_dr03
private

Definition at line 292 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_provenance
private

Definition at line 284 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_sclEt
private

Definition at line 193 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_sclSigEtaEta_barrel
private

Definition at line 263 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_sclSigEtaEta_endcaps
private

Definition at line 264 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_sigIEtaIEta5x5_barrel
private

Definition at line 265 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_sigIEtaIEta5x5_endcaps
private

Definition at line 266 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_tkSumPt_dr03
private

Definition at line 287 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_triggers
private

Definition at line 171 of file ElectronAnalyzer.h.

MonitorElement* ElectronAnalyzer::h1_vertexEta
private

Definition at line 184 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_vertexPt_barrel
private

Definition at line 182 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_vertexPt_endcaps
private

Definition at line 183 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h1_vertexZ
private

Definition at line 187 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h2_beamSpotXvsY
private

Definition at line 165 of file ElectronAnalyzer.h.

MonitorElement* ElectronAnalyzer::h2_vertexEtaVsPhi
private

Definition at line 185 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::h2_vertexXvsY
private

Definition at line 186 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

double ElectronAnalyzer::hadronicOverEmMaxBarrel_
private

Definition at line 99 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::hadronicOverEmMaxEndcaps_
private

Definition at line 100 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::hcalIso03Depth1MaxBarrel_
private

Definition at line 105 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and isolationCut().

double ElectronAnalyzer::hcalIso03Depth1MaxEndcaps_
private

Definition at line 106 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and isolationCut().

double ElectronAnalyzer::hcalIso03Depth2MaxEndcaps_
private

Definition at line 107 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and isolationCut().

double ElectronAnalyzer::hoemax
private

Definition at line 130 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

double ElectronAnalyzer::hoemin
private

Definition at line 130 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

std::string ElectronAnalyzer::inputFile_
private

Definition at line 63 of file ElectronAnalyzer.h.

std::string ElectronAnalyzer::inputInternalPath_
private

Definition at line 65 of file ElectronAnalyzer.h.

bool ElectronAnalyzer::isEB_
private

Definition at line 78 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and generalCut().

bool ElectronAnalyzer::isEcalDriven_
private

Definition at line 81 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and generalCut().

bool ElectronAnalyzer::isEE_
private

Definition at line 79 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and generalCut().

bool ElectronAnalyzer::isNotEBEEGap_
private

Definition at line 80 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and generalCut().

bool ElectronAnalyzer::isTrackerDriven_
private

Definition at line 82 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and generalCut().

double ElectronAnalyzer::lhitsmax
private

Definition at line 126 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

std::string ElectronAnalyzer::matchingCondition_
private

Definition at line 69 of file ElectronAnalyzer.h.

Referenced by analyze(), and ElectronAnalyzer().

edm::EDGetTokenT<reco::SuperClusterCollection> ElectronAnalyzer::matchingObjectCollection_
private

Definition at line 56 of file ElectronAnalyzer.h.

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

double ElectronAnalyzer::maxAbsEta_
private

Definition at line 77 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and generalCut().

double ElectronAnalyzer::maxAbsEtaMatchingObject_
private

Definition at line 71 of file ElectronAnalyzer.h.

Referenced by analyze(), and ElectronAnalyzer().

double ElectronAnalyzer::maxPtMatchingObject_
private

Definition at line 70 of file ElectronAnalyzer.h.

Referenced by analyze(), and ElectronAnalyzer().

float ElectronAnalyzer::mcEnergy[10]
private

Definition at line 156 of file ElectronAnalyzer.h.

float ElectronAnalyzer::mcEta[10]
private

Definition at line 156 of file ElectronAnalyzer.h.

float ElectronAnalyzer::mcPhi[10]
private

Definition at line 156 of file ElectronAnalyzer.h.

float ElectronAnalyzer::mcPt[10]
private

Definition at line 156 of file ElectronAnalyzer.h.

float ElectronAnalyzer::mcQ[10]
private

Definition at line 156 of file ElectronAnalyzer.h.

double ElectronAnalyzer::meemax
private

Definition at line 129 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

double ElectronAnalyzer::meemin
private

Definition at line 129 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

double ElectronAnalyzer::minEt_
private

Definition at line 75 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and etCut().

double ElectronAnalyzer::minPt_
private

Definition at line 76 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and generalCut().

double ElectronAnalyzer::mvaMin_
private

Definition at line 101 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbindeta
private

Definition at line 121 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbindetamatch
private

Definition at line 123 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

int ElectronAnalyzer::nbindetamatch2D
private

Definition at line 123 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbindphi
private

Definition at line 122 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbindphimatch
private

Definition at line 124 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

int ElectronAnalyzer::nbindphimatch2D
private

Definition at line 124 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbineop
private

Definition at line 120 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

int ElectronAnalyzer::nbineop2D
private

Definition at line 120 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbineta
private

Definition at line 116 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

int ElectronAnalyzer::nbineta2D
private

Definition at line 116 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

int ElectronAnalyzer::nbinfhits
private

Definition at line 125 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

int ElectronAnalyzer::nbinhoe
private

Definition at line 130 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

int ElectronAnalyzer::nbinlhits
private

Definition at line 126 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbinmee
private

Definition at line 129 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

int ElectronAnalyzer::nbinp
private

Definition at line 119 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbinp2D
private

Definition at line 119 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbinphi
private

Definition at line 117 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

int ElectronAnalyzer::nbinphi2D
private

Definition at line 117 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

int ElectronAnalyzer::nbinpoptrue
private

Definition at line 128 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbinpt
private

Definition at line 118 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

int ElectronAnalyzer::nbinpt2D
private

Definition at line 118 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

int ElectronAnalyzer::nbinpteff
private

Definition at line 118 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

int ElectronAnalyzer::nbinxyz
private

Definition at line 127 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

int ElectronAnalyzer::nbinxyz2D
private

Definition at line 127 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

unsigned int ElectronAnalyzer::nEvents_
private

Definition at line 137 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

std::string ElectronAnalyzer::outputFile_
private

Definition at line 64 of file ElectronAnalyzer.h.

std::string ElectronAnalyzer::outputInternalPath_
private

Definition at line 66 of file ElectronAnalyzer.h.

Referenced by bookHistograms().

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

Definition at line 153 of file ElectronAnalyzer.h.

double ElectronAnalyzer::phimax
private

Definition at line 117 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

double ElectronAnalyzer::phimin
private

Definition at line 117 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

double ElectronAnalyzer::pmax
private

Definition at line 119 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

double ElectronAnalyzer::poptruemax
private

Definition at line 128 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

double ElectronAnalyzer::poptruemin
private

Definition at line 128 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

double ElectronAnalyzer::ptmax
private

Definition at line 118 of file ElectronAnalyzer.h.

Referenced by bookHistograms(), and ElectronAnalyzer().

MonitorElement* ElectronAnalyzer::py_chi2VsEta
private

Definition at line 201 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::py_chi2VsPhi
private

Definition at line 202 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::py_dEtaSc_propVtxVsPhi
private

Definition at line 234 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::py_dPhiSc_propVtxVsPhi
private

Definition at line 248 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::py_EopVsPhi
private

Definition at line 221 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::py_fbremVsEta
private

Definition at line 277 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::py_fbremVsPhi
private

Definition at line 278 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::py_foundHitsVsEta
private

Definition at line 205 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::py_foundHitsVsPhi
private

Definition at line 206 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::py_HoeVsPhi
private

Definition at line 261 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::py_lostHitsVsEta
private

Definition at line 209 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::py_lostHitsVsPhi
private

Definition at line 210 of file ElectronAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* ElectronAnalyzer::py_nClustersVsLs
private

Definition at line 167 of file ElectronAnalyzer.h.

MonitorElement* ElectronAnalyzer::py_nElectronsVsLs
private

Definition at line 166 of file ElectronAnalyzer.h.

MonitorElement* ElectronAnalyzer::py_nGsfTracksVsLs
private

Definition at line 168 of file ElectronAnalyzer.h.

MonitorElement* ElectronAnalyzer::py_nTracksVsLs
private

Definition at line 169 of file ElectronAnalyzer.h.

MonitorElement* ElectronAnalyzer::py_nVerticesVsLs
private

Definition at line 170 of file ElectronAnalyzer.h.

bool ElectronAnalyzer::readAOD_
private

Definition at line 61 of file ElectronAnalyzer.h.

Referenced by analyze(), and ElectronAnalyzer().

float ElectronAnalyzer::seedEta[10]
private

Definition at line 158 of file ElectronAnalyzer.h.

float ElectronAnalyzer::seedMomentum[10]
private

Definition at line 158 of file ElectronAnalyzer.h.

float ElectronAnalyzer::seedPhi[10]
private

Definition at line 158 of file ElectronAnalyzer.h.

float ElectronAnalyzer::seedPt[10]
private

Definition at line 158 of file ElectronAnalyzer.h.

float ElectronAnalyzer::seedQ[10]
private

Definition at line 158 of file ElectronAnalyzer.h.

int ElectronAnalyzer::Selection_
private

Definition at line 54 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and selected().

double ElectronAnalyzer::sigIetaIetaMaxBarrel_
private

Definition at line 96 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::sigIetaIetaMaxEndcaps_
private

Definition at line 98 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::sigIetaIetaMinBarrel_
private

Definition at line 95 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

double ElectronAnalyzer::sigIetaIetaMinEndcaps_
private

Definition at line 97 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and idCut().

float ElectronAnalyzer::superclusterEnergy[10]
private

Definition at line 157 of file ElectronAnalyzer.h.

float ElectronAnalyzer::superclusterEt[10]
private

Definition at line 157 of file ElectronAnalyzer.h.

float ElectronAnalyzer::superclusterEta[10]
private

Definition at line 157 of file ElectronAnalyzer.h.

float ElectronAnalyzer::superclusterPhi[10]
private

Definition at line 157 of file ElectronAnalyzer.h.

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

Definition at line 154 of file ElectronAnalyzer.h.

double ElectronAnalyzer::tipMaxBarrel_
private

Definition at line 102 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and isolationCut().

double ElectronAnalyzer::tipMaxEndcaps_
private

Definition at line 103 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and isolationCut().

double ElectronAnalyzer::tkIso03Max_
private

Definition at line 104 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer(), and isolationCut().

edm::EDGetTokenT<reco::TrackCollection> ElectronAnalyzer::trackCollection_
private

Definition at line 58 of file ElectronAnalyzer.h.

Referenced by analyze(), and ElectronAnalyzer().

edm::InputTag ElectronAnalyzer::triggerResults_
private

Definition at line 112 of file ElectronAnalyzer.h.

Referenced by ElectronAnalyzer().

edm::EDGetTokenT<reco::VertexCollection> ElectronAnalyzer::vertexCollection_
private

Definition at line 59 of file ElectronAnalyzer.h.

Referenced by analyze(), and ElectronAnalyzer().