CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Public Attributes | Private Member Functions | Private Attributes
Electron.Electron Class Reference
Inheritance diagram for Electron.Electron:

Public Member Functions

def __init__
 
def absEffAreaIso
 
def chargedAllIso
 
def chargedAllIso
 
def chargedHadronIsoR
 
def cutBasedId
 
def dxy
 
def dz
 
def electronID
 
def lostInner
 
def mvaId
 
def mvaIDLoose
 
def mvaIDTight
 
def mvaIDZZ
 
def mvaNonTrigV0
 
def mvaTrigNoIPV0
 
def mvaTrigV0
 
def neutralHadronIsoR
 
def p4
 
def photonIsoR
 
def puChargedHadronIsoR
 
def tightId
 

Public Attributes

 associatedVertex
 
 rho
 
 tightIdResult
 

Private Member Functions

def _physObjInit
 

Private Attributes

 _mvaNonTrigV0
 
 _mvaTrigNoIPV0
 
 _mvaTrigV0
 

Detailed Description

Definition at line 5 of file Electron.py.

Constructor & Destructor Documentation

def Electron.Electron.__init__ (   self,
  args,
  kwargs 
)
Initializing tightIdResult to None. The user is responsible
for setting this attribute externally if he wants to use the tightId
function.

Definition at line 7 of file Electron.py.

References Electron.Electron._physObjInit().

7 
8  def __init__(self, *args, **kwargs):
9  '''Initializing tightIdResult to None. The user is responsible
10  for setting this attribute externally if he wants to use the tightId
11  function.'''
12  super(Electron, self).__init__(*args, **kwargs)
13  self._physObjInit()

Member Function Documentation

def Electron.Electron._physObjInit (   self)
private

Definition at line 14 of file Electron.py.

Referenced by Electron.Electron.__init__(), and Jet.Jet.__init__().

14 
15  def _physObjInit(self):
16  self.tightIdResult = None
17  self.associatedVertex = None
18  self.rho = None
19  self._mvaNonTrigV0 = {True:None, False:None}
20  self._mvaTrigV0 = {True:None, False:None}
21  self._mvaTrigNoIPV0 = {True:None, False:None}
def Electron.Electron.absEffAreaIso (   self,
  rho,
  effectiveAreas 
)
MIKE, missing doc.
Should have the same name as the function in the mother class.
Can call the mother class function with super.

Definition at line 75 of file Electron.py.

References Lepton.Lepton.absIsoFromEA(), eta(), reco::Electron.superCluster(), reco::PreshowerClusterShape.superCluster(), reco::RecoEcalCandidate.superCluster(), reco::GsfElectronCore.superCluster(), reco::RecoCandidate.superCluster(), reco::Photon.superCluster(), reco::PhotonCore.superCluster(), pat::Photon.superCluster(), reco::SiStripElectron.superCluster(), pat::Electron.superCluster(), pat::GenericParticle.superCluster(), and reco::GsfElectron.superCluster().

Referenced by Lepton.Lepton.relEffAreaIso().

75 
76  def absEffAreaIso(self,rho,effectiveAreas):
77  '''MIKE, missing doc.
78  Should have the same name as the function in the mother class.
79  Can call the mother class function with super.
80  '''
81  return self.absIsoFromEA(rho,self.superCluster().eta(),effectiveAreas.eGamma)
T eta() const
def Electron.Electron.chargedAllIso (   self,
  R = 0.4 
)

Definition at line 150 of file Electron.py.

Referenced by Lepton.Lepton.absIso(), and Electron.Electron.chargedAllIso().

151  def chargedAllIso(self,R=0.4):
152  if R == 0.3: return self.physObj.pfIsolationVariables().sumChargedParticlePt
153  raise RuntimeError, "Electron chargedAllIso missing for R=%s" % R
def Electron.Electron.chargedAllIso (   self)
This function is used in the isolation, see Lepton class.
Here, we replace the all charged isolation by the all charged isolation with cone veto

Definition at line 162 of file Electron.py.

References Electron.Electron.chargedAllIso().

Referenced by Lepton.Lepton.absIso().

163  def chargedAllIso(self):
164  '''This function is used in the isolation, see Lepton class.
165  Here, we replace the all charged isolation by the all charged isolation with cone veto'''
166  return self.chargedAllIsoWithConeVeto()
167 
def Electron.Electron.chargedHadronIsoR (   self,
  R = 0.4 
)

Definition at line 135 of file Electron.py.

136  def chargedHadronIsoR(self,R=0.4):
137  if R == 0.3: return self.physObj.pfIsolationVariables().sumChargedHadronPt
138  elif R == 0.4: return self.physObj.chargedHadronIso()
139  raise RuntimeError, "Electron chargedHadronIso missing for R=%s" % R
def Electron.Electron.cutBasedId (   self,
  wp,
  showerShapes = "auto" 
)

Definition at line 37 of file Electron.py.

References funct.abs().

Referenced by Electron.Electron.electronID().

37 
38  def cutBasedId(self, wp, showerShapes="auto"):
39  if "_full5x5" in wp:
40  showerShapes = "full5x5"
41  wp = wp.replace("_full5x5","")
42  elif showerShapes == "auto":
43  if "POG_CSA14_25ns_v1" in wp or "POG_CSA14_50ns_v1" in wp:
44  showerShapes = "full5x5"
45  vars = {
46  'dEtaIn' : abs(self.physObj.deltaEtaSuperClusterTrackAtVtx()),
47  'dPhiIn' : abs(self.physObj.deltaPhiSuperClusterTrackAtVtx()),
48  'sigmaIEtaIEta' : self.physObj.full5x5_sigmaIetaIeta() if showerShapes == "full5x5" else self.physObj.sigmaIetaIeta(),
49  'H/E' : self.physObj.hadronicOverEm(),
50  #'1/E-1/p' : abs(1.0/self.physObj.ecalEnergy() - self.physObj.eSuperClusterOverP()/self.physObj.ecalEnergy()),
51  '1/E-1/p' : abs(1.0/self.physObj.ecalEnergy() - self.physObj.eSuperClusterOverP()/self.physObj.ecalEnergy()) if self.physObj.ecalEnergy()>0. else 9e9,
52  }
53  WP = {
54  ## ------- https://twiki.cern.ch/twiki/bin/viewauth/CMS/EgammaCutBasedIdentification?rev=31
55  'POG_2012_Veto' : [('dEtaIn', [0.007, 0.01]), ('dPhiIn', [0.8, 0.7 ]), ('sigmaIEtaIEta', [0.01, 0.03]), ('H/E', [0.15, 9e9]), ('1/E-1/p', [9e9, 9e9])],
56  'POG_2012_Loose' : [('dEtaIn', [0.007, 0.009]), ('dPhiIn', [0.15, 0.1 ]), ('sigmaIEtaIEta', [0.01, 0.03]), ('H/E', [0.12, 0.1]), ('1/E-1/p', [0.05, 0.05])],
57  'POG_2012_Medium' : [('dEtaIn', [0.004, 0.007]), ('dPhiIn', [0.06, 0.03]), ('sigmaIEtaIEta', [0.01, 0.03]), ('H/E', [0.12, 0.1]), ('1/E-1/p', [0.05, 0.05])],
58  'POG_2012_Tight' : [('dEtaIn', [0.004, 0.005]), ('dPhiIn', [0.03, 0.02]), ('sigmaIEtaIEta', [0.01, 0.03]), ('H/E', [0.12, 0.1]), ('1/E-1/p', [0.05, 0.05])],
59  ## ------- https://indico.cern.cH/Event/298242/contribution/1/material/slides/5.pdf (slide 5)
60  'POG_CSA14_25ns_v1_Veto' : [('dEtaIn', [0.012, 0.015]), ('dPhiIn', [0.8, 0.7 ]), ('sigmaIEtaIEta', [0.01 , 0.033]), ('H/E', [0.15, 9e9 ]), ('1/E-1/p', [9e9, 9e9])],
61  'POG_CSA14_25ns_v1_Loose' : [('dEtaIn', [0.012, 0.014]), ('dPhiIn', [0.15, 0.1 ]), ('sigmaIEtaIEta', [0.01 , 0.033]), ('H/E', [0.12, 0.12]), ('1/E-1/p', [0.05, 0.05])],
62  'POG_CSA14_25ns_v1_Medium' : [('dEtaIn', [0.009, 0.012]), ('dPhiIn', [0.06, 0.03]), ('sigmaIEtaIEta', [0.01 , 0.031]), ('H/E', [0.12, 0.12]), ('1/E-1/p', [0.05, 0.05])],
63  'POG_CSA14_25ns_v1_Tight' : [('dEtaIn', [0.009, 0.010]), ('dPhiIn', [0.03, 0.02]), ('sigmaIEtaIEta', [0.01 , 0.031]), ('H/E', [0.12, 0.12]), ('1/E-1/p', [0.05, 0.05])],
64  'POG_CSA14_50ns_v1_Veto' : [('dEtaIn', [0.012, 0.022]), ('dPhiIn', [0.8, 0.7 ]), ('sigmaIEtaIEta', [0.012, 0.033]), ('H/E', [0.15, 9e9 ]), ('1/E-1/p', [9e9, 9e9])],
65  'POG_CSA14_50ns_v1_Loose' : [('dEtaIn', [0.012, 0.021]), ('dPhiIn', [0.15, 0.1 ]), ('sigmaIEtaIEta', [0.012, 0.033]), ('H/E', [0.12, 0.12]), ('1/E-1/p', [0.05, 0.05])],
66  'POG_CSA14_50ns_v1_Medium' : [('dEtaIn', [0.009, 0.019]), ('dPhiIn', [0.06, 0.03]), ('sigmaIEtaIEta', [0.01 , 0.031]), ('H/E', [0.12, 0.12]), ('1/E-1/p', [0.05, 0.05])],
67  'POG_CSA14_50ns_v1_Tight' : [('dEtaIn', [0.009, 0.017]), ('dPhiIn', [0.03, 0.02]), ('sigmaIEtaIEta', [0.01 , 0.031]), ('H/E', [0.12, 0.12]), ('1/E-1/p', [0.05, 0.05])],
68  }
69  if wp not in WP:
70  raise RuntimeError, "Working point '%s' not yet implemented in Electron.py" % wp
71  for (cut_name,(cut_eb,cut_ee)) in WP[wp]:
72  if vars[cut_name] >= (cut_eb if self.physObj.isEB() else cut_ee):
73  return False
74  return True
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
def Electron.Electron.dxy (   self,
  vertex = None 
)
Returns dxy.
Computed using vertex (or self.associatedVertex if vertex not specified),
and the gsf track.

Definition at line 168 of file Electron.py.

References Electron.Electron.associatedVertex, reco::Electron.gsfTrack(), reco::GsfElectronCore.gsfTrack(), reco::RecoCandidate.gsfTrack(), pat::Electron.gsfTrack(), pat::GenericParticle.gsfTrack(), and reco::GsfElectron.gsfTrack().

Referenced by HTauTauElectron.HTauTauElectron.__str__().

169  def dxy(self, vertex=None):
170  '''Returns dxy.
171  Computed using vertex (or self.associatedVertex if vertex not specified),
172  and the gsf track.
173  '''
174  if vertex is None:
175  vertex = self.associatedVertex
return self.gsfTrack().dxy( vertex.position() )
def Electron.Electron.dz (   self,
  vertex = None 
)
Returns dz.
Computed using vertex (or self.associatedVertex if vertex not specified),
and the gsf track.

Definition at line 182 of file Electron.py.

References Electron.Electron.associatedVertex, reco::Electron.gsfTrack(), reco::GsfElectronCore.gsfTrack(), reco::RecoCandidate.gsfTrack(), pat::Electron.gsfTrack(), pat::GenericParticle.gsfTrack(), and reco::GsfElectron.gsfTrack().

Referenced by HTauTauElectron.HTauTauElectron.__str__(), and HTauTauElectron.HTauTauElectron.looseIdForEleTau().

183  def dz(self, vertex=None):
184  '''Returns dz.
185  Computed using vertex (or self.associatedVertex if vertex not specified),
186  and the gsf track.
187  '''
188  if vertex is None:
189  vertex = self.associatedVertex
190  return self.gsfTrack().dz( vertex.position() )
def Electron.Electron.electronID (   self,
  id,
  vertex = None,
  rho = None 
)

Definition at line 22 of file Electron.py.

References Electron.Electron.associatedVertex, Electron.Electron.cutBasedId(), pat::Electron.electronIDs(), Electron.Electron.mvaIDLoose(), Electron.Electron.mvaIDTight(), Electron.Electron.rho, and AlignmentMonitorMuonSystemMap1D::MyResidual.rho.

22 
23  def electronID( self, id, vertex=None, rho=None ):
24  if id is None or id == "": return True
25  if vertex == None and hasattr(self,'associatedVertex') and self.associatedVertex != None: vertex = self.associatedVertex
26  if rho == None and hasattr(self,'rho') and self.rho != None: rho = self.rho
27  if id == "POG_MVA_ID_NonTrig": return self.mvaIDLoose()
28  elif id == "POG_MVA_ID_Trig": return self.mvaIDTight()
29  elif id == "POG_MVA_ID_NonTrig_full5x5": return self.mvaIDLoose(full5x5=True)
30  elif id == "POG_MVA_ID_Trig_full5x5": return self.mvaIDTight(full5x5=True)
31  elif id.startswith("POG_Cuts_ID_"):
32  return self.cutBasedId(id.replace("POG_Cuts_ID_","POG_"))
33  for ID in self.electronIDs():
34  if ID.first == id:
35  return ID.second
36  raise RuntimeError, "Electron id '%s' not yet implemented in Electron.py" % id
def Electron.Electron.lostInner (   self)

Definition at line 191 of file Electron.py.

References reco::Electron.gsfTrack(), reco::GsfElectronCore.gsfTrack(), reco::RecoCandidate.gsfTrack(), pat::Electron.gsfTrack(), pat::GenericParticle.gsfTrack(), and reco::GsfElectron.gsfTrack().

192  def lostInner(self) :
193  if hasattr(self.gsfTrack(),"trackerExpectedHitsInner") :
return self.gsfTrack().trackerExpectedHitsInner().numberOfLostHits()
def Electron.Electron.mvaId (   self)

Definition at line 82 of file Electron.py.

References Electron.Electron.mvaNonTrigV0().

82 
83  def mvaId( self ):
84  return self.mvaNonTrigV0()
def Electron.Electron.mvaIDLoose (   self,
  full5x5 = False 
)

Definition at line 121 of file Electron.py.

References funct.abs(), eta(), Electron.Electron.mvaNonTrigV0(), mypt.pt, res::HelperMuon.pt(), res::HelperElectron.pt(), res::HelperJet.pt(), reco::VoronoiBackground.pt(), RecoObj.pt, tauImpactParameter::LorentzVectorParticle.pt, L1MuCSCPtLut.pt(), Residual1DHit.pt, reco::MuonMETCorrectionData.pt(), PtEtaPhiMass.pt(), PtHatReweightUserHook.pt, MatchStruct.pt, ALILine.pt(), L2TauPixelTrackMatch::TinyTrack.pt, TrackMultiSelector::Block.pt, ElectronMVAEstimator.pt, DTMuonLocalAlignment.pt, TtFullHadSignalSel.pt(), PGlobalSimHit::Trk.pt, lhef::JetClustering::Jet.pt(), ZMuMuIsolationAnalyzer.pt, PatTrackAnalyzer::Plots.pt, TrackerValidationVariables::AVTrackStruct.pt, jpt::Map.pt(), SiStripLAProfileBooker.pt, reco::CaloMuon.pt(), trigger::TriggerObject.pt(), BSTrkParameters.pt(), SoftElectronMVAEstimator.pt, PhysicsObjectsMonitor.pt, MuScleFitMuon.pt(), SimpleL1MuGMTCand.pt(), HTrackVariables.pt(), PTrajectoryStateOnDet.pt(), HepLine3D.pt(), ValidationMisalignedTracker.pt, L1MuDTTrack.pt(), TrajectoryStateClosestToPoint.pt(), MuonDTLocalMillepedeAlgorithm.pt, susybsm::HSCParticle.pt(), QualityCutsAnalyzer::histogram_element_t.pt, reco::Particle.pt(), MuonGmtPair.pt(), reco::PreId.pt(), Lepton.pt, reco::Candidate.pt(), egHLT::OffPho.pt(), TrackingParticle.pt(), LeafRefCandidateT< T >.pt(), reco::LeafRefCandidateT< T >.pt(), contrib::CMSBoostedTauSeedingAlgorithmStructure.pt(), pat::PackedGenParticle.pt(), PtHatRapReweightUserHook.pt, AlignmentMonitorMuonSystemMap1D::MyTrack.pt, MuonResidualsFitter::MuonAlignmentTreeRow.pt, pat::PackedCandidate.pt(), reco::PFCluster.pt(), GoodSeedProducer.pt, pat::MET::UncorInfo.pt, CandidateWithRef< Ref >.pt(), pat::MET::Vector2.pt(), reco::LeafCandidate.pt(), reco::TrackBase.pt(), PMuonSimHit::Trk.pt, PTrackerSimHit::Trk.pt, reco::Electron.superCluster(), reco::PreshowerClusterShape.superCluster(), reco::RecoEcalCandidate.superCluster(), reco::GsfElectronCore.superCluster(), reco::RecoCandidate.superCluster(), reco::Photon.superCluster(), reco::PhotonCore.superCluster(), pat::Photon.superCluster(), pat::Electron.superCluster(), reco::SiStripElectron.superCluster(), pat::GenericParticle.superCluster(), and reco::GsfElectron.superCluster().

Referenced by Electron.Electron.electronID(), and Electron.Electron.mvaIDZZ().

122  def mvaIDLoose(self, full5x5=False):
123  eta = abs(self.superCluster().eta())
124  if self.pt() < 10:
125  if (eta < 0.8) : return self.mvaNonTrigV0(full5x5) > +0.47;
126  elif (eta < 1.479): return self.mvaNonTrigV0(full5x5) > +0.004;
127  else : return self.mvaNonTrigV0(full5x5) > +0.295;
128  else:
129  if (eta < 0.8) : return self.mvaNonTrigV0(full5x5) > -0.34;
130  elif (eta < 1.479): return self.mvaNonTrigV0(full5x5) > -0.65;
131  else : return self.mvaNonTrigV0(full5x5) > +0.60;
T eta() const
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
def Electron.Electron.mvaIDTight (   self,
  full5x5 = False 
)

Definition at line 110 of file Electron.py.

References funct.abs(), eta(), Electron.Electron.mvaTrigV0(), mypt.pt, res::HelperMuon.pt(), res::HelperElectron.pt(), res::HelperJet.pt(), reco::VoronoiBackground.pt(), RecoObj.pt, tauImpactParameter::LorentzVectorParticle.pt, L1MuCSCPtLut.pt(), Residual1DHit.pt, reco::MuonMETCorrectionData.pt(), PtEtaPhiMass.pt(), PtHatReweightUserHook.pt, MatchStruct.pt, ALILine.pt(), L2TauPixelTrackMatch::TinyTrack.pt, TrackMultiSelector::Block.pt, ElectronMVAEstimator.pt, DTMuonLocalAlignment.pt, TtFullHadSignalSel.pt(), PGlobalSimHit::Trk.pt, lhef::JetClustering::Jet.pt(), ZMuMuIsolationAnalyzer.pt, PatTrackAnalyzer::Plots.pt, TrackerValidationVariables::AVTrackStruct.pt, jpt::Map.pt(), SiStripLAProfileBooker.pt, reco::CaloMuon.pt(), trigger::TriggerObject.pt(), BSTrkParameters.pt(), SoftElectronMVAEstimator.pt, PhysicsObjectsMonitor.pt, MuScleFitMuon.pt(), SimpleL1MuGMTCand.pt(), HTrackVariables.pt(), PTrajectoryStateOnDet.pt(), HepLine3D.pt(), ValidationMisalignedTracker.pt, L1MuDTTrack.pt(), TrajectoryStateClosestToPoint.pt(), MuonDTLocalMillepedeAlgorithm.pt, susybsm::HSCParticle.pt(), QualityCutsAnalyzer::histogram_element_t.pt, reco::Particle.pt(), MuonGmtPair.pt(), reco::PreId.pt(), Lepton.pt, reco::Candidate.pt(), egHLT::OffPho.pt(), TrackingParticle.pt(), LeafRefCandidateT< T >.pt(), reco::LeafRefCandidateT< T >.pt(), contrib::CMSBoostedTauSeedingAlgorithmStructure.pt(), pat::PackedGenParticle.pt(), PtHatRapReweightUserHook.pt, AlignmentMonitorMuonSystemMap1D::MyTrack.pt, MuonResidualsFitter::MuonAlignmentTreeRow.pt, pat::PackedCandidate.pt(), reco::PFCluster.pt(), GoodSeedProducer.pt, pat::MET::UncorInfo.pt, CandidateWithRef< Ref >.pt(), pat::MET::Vector2.pt(), reco::LeafCandidate.pt(), reco::TrackBase.pt(), PMuonSimHit::Trk.pt, PTrackerSimHit::Trk.pt, reco::Electron.superCluster(), reco::PreshowerClusterShape.superCluster(), reco::RecoEcalCandidate.superCluster(), reco::GsfElectronCore.superCluster(), reco::RecoCandidate.superCluster(), reco::Photon.superCluster(), reco::PhotonCore.superCluster(), pat::Photon.superCluster(), pat::Electron.superCluster(), reco::SiStripElectron.superCluster(), pat::GenericParticle.superCluster(), and reco::GsfElectron.superCluster().

Referenced by Electron.Electron.electronID().

111  def mvaIDTight(self, full5x5=False):
112  eta = abs(self.superCluster().eta())
113  if self.pt() < 20:
114  if (eta < 0.8) : return self.mvaTrigV0(full5x5) > +0.00;
115  elif (eta < 1.479): return self.mvaTrigV0(full5x5) > +0.10;
116  else : return self.mvaTrigV0(full5x5) > +0.62;
117  else:
118  if (eta < 0.8) : return self.mvaTrigV0(full5x5) > +0.94;
119  elif (eta < 1.479): return self.mvaTrigV0(full5x5) > +0.85;
120  else : return self.mvaTrigV0(full5x5) > +0.92;
T eta() const
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
def Electron.Electron.mvaIDZZ (   self)

Definition at line 132 of file Electron.py.

References reco::Electron.gsfTrack(), reco::GsfElectronCore.gsfTrack(), reco::RecoCandidate.gsfTrack(), pat::Electron.gsfTrack(), pat::GenericParticle.gsfTrack(), reco::GsfElectron.gsfTrack(), and Electron.Electron.mvaIDLoose().

133  def mvaIDZZ(self):
134  return self.mvaIDLoose() and (self.gsfTrack().trackerExpectedHitsInner().numberOfLostHits()<=1)
def Electron.Electron.mvaNonTrigV0 (   self,
  full5x5 = False,
  debug = False 
)

Definition at line 88 of file Electron.py.

References Electron.Electron._mvaNonTrigV0, Electron.Electron.associatedVertex, ElectronMVAID.ElectronMVAID_NonTrig, PhysicsObject.PhysicsObject.physObj, Electron.Electron.rho, and AlignmentMonitorMuonSystemMap1D::MyResidual.rho.

Referenced by HTauTauElectron.HTauTauElectron.looseIdForTriLeptonVeto(), Electron.Electron.mvaId(), Electron.Electron.mvaIDLoose(), HTauTauElectron.HTauTauElectron.relaxedIdForEleTau(), and HTauTauElectron.HTauTauElectron.tightIdForEleTau().

88 
89  def mvaNonTrigV0( self, full5x5=False, debug = False ):
90  if self._mvaNonTrigV0[full5x5] == None:
91  if self.associatedVertex == None: raise RuntimeError, "You need to set electron.associatedVertex before calling any MVA"
92  if self.rho == None: raise RuntimeError, "You need to set electron.rho before calling any MVA"
93  self._mvaNonTrigV0[full5x5] = ElectronMVAID_NonTrig(self.physObj, self.associatedVertex, self.rho, full5x5, debug)
94  return self._mvaNonTrigV0[full5x5]
tuple ElectronMVAID_NonTrig
def Electron.Electron.mvaTrigNoIPV0 (   self,
  full5x5 = False,
  debug = False 
)

Definition at line 102 of file Electron.py.

References Electron.Electron._mvaTrigNoIPV0, Electron.Electron.associatedVertex, ElectronMVAID.ElectronMVAID_TrigNoIP, PhysicsObject.PhysicsObject.physObj, Electron.Electron.rho, and AlignmentMonitorMuonSystemMap1D::MyResidual.rho.

103  def mvaTrigNoIPV0( self, full5x5=False, debug = False ):
104  if self._mvaTrigNoIPV0[full5x5] == None:
105  if self.associatedVertex == None: raise RuntimeError, "You need to set electron.associatedVertex before calling any MVA"
106  if self.rho == None: raise RuntimeError, "You need to set electron.rho before calling any MVA"
107  self._mvaTrigNoIPV0[full5x5] = ElectronMVAID_TrigNoIP(self.physObj, self.associatedVertex, self.rho, full5x5, debug)
108  return self._mvaTrigNoIPV0[full5x5]
109 
tuple ElectronMVAID_TrigNoIP
def Electron.Electron.mvaTrigV0 (   self,
  full5x5 = False,
  debug = False 
)

Definition at line 95 of file Electron.py.

References Electron.Electron._mvaTrigV0, Electron.Electron.associatedVertex, ElectronMVAID.ElectronMVAID_Trig, PhysicsObject.PhysicsObject.physObj, Electron.Electron.rho, and AlignmentMonitorMuonSystemMap1D::MyResidual.rho.

Referenced by Electron.Electron.mvaIDTight().

95 
96  def mvaTrigV0( self, full5x5=False, debug = False ):
97  if self._mvaTrigV0[full5x5] == None:
98  if self.associatedVertex == None: raise RuntimeError, "You need to set electron.associatedVertex before calling any MVA"
99  if self.rho == None: raise RuntimeError, "You need to set electron.rho before calling any MVA"
100  self._mvaTrigV0[full5x5] = ElectronMVAID_Trig(self.physObj, self.associatedVertex, self.rho, full5x5, debug)
101  return self._mvaTrigV0[full5x5]
tuple ElectronMVAID_Trig
def Electron.Electron.neutralHadronIsoR (   self,
  R = 0.4 
)

Definition at line 140 of file Electron.py.

141  def neutralHadronIsoR(self,R=0.4):
142  if R == 0.3: return self.physObj.pfIsolationVariables().sumNeutralHadronEt
143  elif R == 0.4: return self.physObj.neutralHadronIso()
144  raise RuntimeError, "Electron neutralHadronIso missing for R=%s" % R
def Electron.Electron.p4 (   self)

Definition at line 176 of file Electron.py.

References PhysicsObject.PhysicsObject.physObj.

Referenced by Tau.Tau.dxy(), Tau.Tau.dz(), and Jet.Jet.jetID().

177  def p4(self):
178  return ROOT.reco.Candidate.p4(self.physObj)
179 
180 # def p4(self):
181 # return self.physObj.p4(self.physObj.candidateP4Kind()) # if kind == None else kind)
def Electron.Electron.photonIsoR (   self,
  R = 0.4 
)

Definition at line 145 of file Electron.py.

146  def photonIsoR(self,R=0.4):
147  if R == 0.3: return self.physObj.pfIsolationVariables().sumPhotonEt
148  elif R == 0.4: return self.physObj.photonIso()
149  raise RuntimeError, "Electron photonIso missing for R=%s" % R
def Electron.Electron.puChargedHadronIsoR (   self,
  R = 0.4 
)

Definition at line 154 of file Electron.py.

155  def puChargedHadronIsoR(self,R=0.4):
156  if R == 0.3: return self.physObj.pfIsolationVariables().sumPUPt
157  elif R == 0.4: return self.physObj.puChargedHadronIso()
158  raise RuntimeError, "Electron chargedHadronIso missing for R=%s" % R
159 
160 
161 
def puChargedHadronIsoR
Definition: Electron.py:154
def Electron.Electron.tightId (   self)

Definition at line 85 of file Electron.py.

References Electron.Electron.tightIdResult.

Referenced by HTauTauElectron.HTauTauElectron.__str__().

85 
86  def tightId( self ):
87  return self.tightIdResult

Member Data Documentation

Electron.Electron._mvaNonTrigV0
private

Definition at line 18 of file Electron.py.

Referenced by Electron.Electron.mvaNonTrigV0().

Electron.Electron._mvaTrigNoIPV0
private

Definition at line 20 of file Electron.py.

Referenced by Electron.Electron.mvaTrigNoIPV0().

Electron.Electron._mvaTrigV0
private

Definition at line 19 of file Electron.py.

Referenced by Electron.Electron.mvaTrigV0().

Electron.Electron.associatedVertex

Definition at line 16 of file Electron.py.

Referenced by Tau.Tau.dxy(), Muon.Muon.dxy(), Electron.Electron.dxy(), Tau.Tau.dz(), Muon.Muon.dz(), Electron.Electron.dz(), Electron.Electron.electronID(), Electron.Electron.mvaNonTrigV0(), Electron.Electron.mvaTrigNoIPV0(), Electron.Electron.mvaTrigV0(), and Tau.Tau.zImpact().

Electron.Electron.rho

Definition at line 17 of file Electron.py.

Referenced by Electron.Electron.electronID(), Electron.Electron.mvaNonTrigV0(), Electron.Electron.mvaTrigNoIPV0(), and Electron.Electron.mvaTrigV0().

Electron.Electron.tightIdResult

Definition at line 15 of file Electron.py.

Referenced by Electron.Electron.tightId().