CMS 3D CMS Logo

ElectronClassification.cc
Go to the documentation of this file.
4 
5 //===================================================================
6 // Author: Federico Ferri - INFN Milano, Bicocca university
7 // 12/2005
8 // See GsfElectron::Classification
9 //===================================================================
10 
11 using namespace reco;
12 
14  if (!electron.isEB() && !electron.isEE()) {
15  edm::LogWarning("") << "ElectronClassification::init(): Undefined electron, eta = " << electron.eta() << "!!!!";
16  return GsfElectron::UNKNOWN;
17  }
18 
19  if (electron.isEBEEGap() || electron.isEBEtaGap() || electron.isEERingGap()) {
20  return GsfElectron::GAP;
21  }
22 
23  float fbrem = electron.trackFbrem();
24  int nbrem = electron.numberOfBrems();
25 
26  if (electron.superClusterFbrem() - fbrem >= 0.15) {
27  return GsfElectron::BADTRACK;
28  }
29 
30  if (nbrem == 0 && fbrem < 0.5) {
31  return GsfElectron::GOLDEN;
32  }
33  if (nbrem == 0 && fbrem >= 0.5) {
34  return GsfElectron::BIGBREM;
35  }
37 }
MessageLogger.h
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:46
edm::LogWarning
Log< level::Warning, false > LogWarning
Definition: MessageLogger.h:122
ElectronClassification.h
reco::GsfElectron::Classification
Classification
Definition: GsfElectron.h:786
reco::GsfElectron::SHOWERING
Definition: GsfElectron.h:786
reco::GsfElectron::GOLDEN
Definition: GsfElectron.h:786
reco::GsfElectron
Definition: GsfElectron.h:35
reco::GsfElectron::UNKNOWN
Definition: GsfElectron.h:786
egamma::classifyElectron
reco::GsfElectron::Classification classifyElectron(reco::GsfElectron const &)
HPSPFTauProducerPuppi_cfi.electron
electron
Definition: HPSPFTauProducerPuppi_cfi.py:13
reco::GsfElectron::BIGBREM
Definition: GsfElectron.h:786
SuperCluster.h
reco::GsfElectron::GAP
Definition: GsfElectron.h:786
reco::GsfElectron::BADTRACK
Definition: GsfElectron.h:786