CMS 3D CMS Logo

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

#include <SuperClusterHelper.h>

Public Member Functions

float clustersSize () const
 
float e2nd () const
 
float e2x5Bottom () const
 
float e2x5Left () const
 
float e2x5Max () const
 
float e2x5Right () const
 
float e2x5Top () const
 
float e3x3 () const
 
float e5x5 () const
 
float eBottom () const
 
float eESClusters () const
 
float eLeft () const
 
float eMax () const
 
float eRight () const
 
float esClusterEnergy (unsigned i) const
 
float esClusterEta (unsigned i) const
 
float esClusterPhi (unsigned i) const
 
float eSubClusters () const
 
float eta () const
 
float etaCrySeed ()
 
float etaWidth () const
 
float eTop () const
 
float hadronicOverEm () const
 
int ietaSeed ()
 
int iphiSeed ()
 
float nPreshowerClusters () const
 
float phi () const
 
float phiCrySeed ()
 
float phiTilt ()
 
float phiWidth () const
 
float preshowerEnergy () const
 
float preshowerEnergyOverRaw () const
 
float r9 () const
 
float rawEnergy () const
 
float seedEnergy () const
 
float seedEta () const
 
float seedPhi () const
 
float sep ()
 
float sigmaIetaIeta () const
 
float spp ()
 
float subClusterE3x3 (unsigned i) const
 
float subClusterEmax (unsigned i) const
 
float subClusterEnergy (unsigned i) const
 
float subClusterEta (unsigned i) const
 
float subClusterPhi (unsigned i) const
 
 SuperClusterHelper (const reco::GsfElectron *electron, const EcalRecHitCollection *rechits, const CaloTopology *, const CaloGeometry *)
 
 SuperClusterHelper (const pat::Electron *electron, const EcalRecHitCollection *rechits, const CaloTopology *, const CaloGeometry *)
 
float thetaTilt ()
 
 ~SuperClusterHelper ()
 

Private Member Functions

void computeLocalCovariances ()
 
void localCoordinates ()
 

Static Private Member Functions

static bool sortClusters (const reco::CaloCluster *c1, const reco::CaloCluster *c2)
 

Private Attributes

bool barrel_
 
bool covComputed_
 
float eESClusters_
 
float eSubClusters_
 
float etaCrySeed_
 
const CaloGeometrygeometry_
 
int ietaSeed_
 
int iphiSeed_
 
EcalClusterLocal local_
 
bool localCoordinatesComputed_
 local coordinates More...
 
unsigned nBasicClusters_
 
unsigned nESClusters_
 
float phiCrySeed_
 
float phiTilt_
 
const EcalRecHitCollectionrechits_
 
const reco::CaloClusterseedCluster_
 
float sep_
 
float spp_
 
std::vector< const
reco::CaloCluster * > 
theBasicClusters_
 
const reco::GsfElectrontheElectron_
 
std::vector< const
reco::CaloCluster * > 
theESClusters_
 
const reco::SuperClustertheSuperCluster_
 
float thetaTilt_
 
const CaloTopologytopology_
 
std::vector< float > vCov_
 

Detailed Description

Definition at line 14 of file SuperClusterHelper.h.

Constructor & Destructor Documentation

SuperClusterHelper::SuperClusterHelper ( const reco::GsfElectron electron,
const EcalRecHitCollection rechits,
const CaloTopology topo,
const CaloGeometry geom 
)

Definition at line 7 of file SuperClusterHelper.cc.

SuperClusterHelper::SuperClusterHelper ( const pat::Electron electron,
const EcalRecHitCollection rechits,
const CaloTopology topo,
const CaloGeometry geom 
)

Definition at line 49 of file SuperClusterHelper.cc.

SuperClusterHelper::~SuperClusterHelper ( )
inline

Definition at line 18 of file SuperClusterHelper.h.

18 {};

Member Function Documentation

float SuperClusterHelper::clustersSize ( ) const
inline

Definition at line 25 of file SuperClusterHelper.h.

References reco::SuperCluster::clustersSize(), and theSuperCluster_.

25 {return theSuperCluster_->clustersSize();}
const reco::SuperCluster * theSuperCluster_
size_t clustersSize() const
number of BasicCluster constituents
Definition: SuperCluster.h:87
void SuperClusterHelper::computeLocalCovariances ( )
private

Definition at line 100 of file SuperClusterHelper.cc.

float SuperClusterHelper::e2nd ( ) const
inline

Definition at line 33 of file SuperClusterHelper.h.

References rechits_, and seedCluster_.

33 { return EcalClusterTools::e2nd(*seedCluster_,rechits_); }
const reco::CaloCluster * seedCluster_
const EcalRecHitCollection * rechits_
float SuperClusterHelper::e2x5Bottom ( ) const
inline

Definition at line 40 of file SuperClusterHelper.h.

References rechits_, seedCluster_, and topology_.

40 { return EcalClusterTools::e2x5Bottom(*seedCluster_,rechits_,topology_); }
const CaloTopology * topology_
const reco::CaloCluster * seedCluster_
const EcalRecHitCollection * rechits_
float SuperClusterHelper::e2x5Left ( ) const
inline

Definition at line 41 of file SuperClusterHelper.h.

References rechits_, seedCluster_, and topology_.

41 { return EcalClusterTools::e2x5Left(*seedCluster_,rechits_,topology_); }
const CaloTopology * topology_
const reco::CaloCluster * seedCluster_
const EcalRecHitCollection * rechits_
float SuperClusterHelper::e2x5Max ( ) const
inline

Definition at line 38 of file SuperClusterHelper.h.

References rechits_, seedCluster_, and topology_.

38 { return EcalClusterTools::e2x5Max(*seedCluster_,rechits_,topology_); }
const CaloTopology * topology_
const reco::CaloCluster * seedCluster_
const EcalRecHitCollection * rechits_
float SuperClusterHelper::e2x5Right ( ) const
inline

Definition at line 42 of file SuperClusterHelper.h.

References rechits_, seedCluster_, and topology_.

42 { return EcalClusterTools::e2x5Right(*seedCluster_,rechits_,topology_); }
const CaloTopology * topology_
const reco::CaloCluster * seedCluster_
const EcalRecHitCollection * rechits_
float SuperClusterHelper::e2x5Top ( ) const
inline

Definition at line 39 of file SuperClusterHelper.h.

References rechits_, seedCluster_, and topology_.

39 { return EcalClusterTools::e2x5Top(*seedCluster_,rechits_,topology_); }
const CaloTopology * topology_
const reco::CaloCluster * seedCluster_
const EcalRecHitCollection * rechits_
float SuperClusterHelper::e3x3 ( ) const
inline

Definition at line 30 of file SuperClusterHelper.h.

References rechits_, seedCluster_, and topology_.

Referenced by r9().

30 { return EcalClusterTools::e3x3(*seedCluster_,rechits_,topology_); }
const CaloTopology * topology_
const reco::CaloCluster * seedCluster_
const EcalRecHitCollection * rechits_
float SuperClusterHelper::e5x5 ( ) const
inline

Definition at line 31 of file SuperClusterHelper.h.

References rechits_, seedCluster_, and topology_.

31 { return EcalClusterTools::e5x5(*seedCluster_,rechits_,topology_); }
const CaloTopology * topology_
const reco::CaloCluster * seedCluster_
const EcalRecHitCollection * rechits_
float SuperClusterHelper::eBottom ( ) const
inline

Definition at line 35 of file SuperClusterHelper.h.

References rechits_, seedCluster_, and topology_.

35 { return EcalClusterTools::eBottom(*seedCluster_,rechits_,topology_); }
const CaloTopology * topology_
const reco::CaloCluster * seedCluster_
const EcalRecHitCollection * rechits_
float SuperClusterHelper::eESClusters ( ) const
inline

Definition at line 71 of file SuperClusterHelper.h.

References eESClusters_.

71 { return eESClusters_;}
float SuperClusterHelper::eLeft ( ) const
inline

Definition at line 36 of file SuperClusterHelper.h.

References rechits_, seedCluster_, and topology_.

36 { return EcalClusterTools::eLeft(*seedCluster_,rechits_,topology_); }
const CaloTopology * topology_
const reco::CaloCluster * seedCluster_
const EcalRecHitCollection * rechits_
float SuperClusterHelper::eMax ( ) const
inline

Definition at line 32 of file SuperClusterHelper.h.

References rechits_, and seedCluster_.

32 { return EcalClusterTools::eMax(*seedCluster_,rechits_); }
const reco::CaloCluster * seedCluster_
const EcalRecHitCollection * rechits_
float SuperClusterHelper::eRight ( ) const
inline

Definition at line 37 of file SuperClusterHelper.h.

References rechits_, seedCluster_, and topology_.

37 { return EcalClusterTools::eRight(*seedCluster_,rechits_,topology_); }
const CaloTopology * topology_
const reco::CaloCluster * seedCluster_
const EcalRecHitCollection * rechits_
float SuperClusterHelper::esClusterEnergy ( unsigned  i) const

Definition at line 160 of file SuperClusterHelper.cc.

float SuperClusterHelper::esClusterEta ( unsigned  i) const

Definition at line 164 of file SuperClusterHelper.cc.

float SuperClusterHelper::esClusterPhi ( unsigned  i) const

Definition at line 168 of file SuperClusterHelper.cc.

float SuperClusterHelper::eSubClusters ( ) const
inline

Definition at line 64 of file SuperClusterHelper.h.

References eSubClusters_.

64 {return eSubClusters_;}
float SuperClusterHelper::eta ( ) const
inline

Definition at line 21 of file SuperClusterHelper.h.

References reco::CaloCluster::eta(), and theSuperCluster_.

Referenced by Particle.Particle::__str__().

21 {return theSuperCluster_->eta();}
double eta() const
pseudorapidity of cluster centroid
Definition: CaloCluster.h:163
const reco::SuperCluster * theSuperCluster_
float SuperClusterHelper::etaCrySeed ( )
inline

Definition at line 52 of file SuperClusterHelper.h.

References etaCrySeed_, and localCoordinates().

float SuperClusterHelper::etaWidth ( ) const
inline

Definition at line 23 of file SuperClusterHelper.h.

References reco::SuperCluster::etaWidth(), and theSuperCluster_.

23 {return theSuperCluster_->etaWidth();}
double etaWidth() const
Definition: SuperCluster.h:56
const reco::SuperCluster * theSuperCluster_
float SuperClusterHelper::eTop ( ) const
inline

Definition at line 34 of file SuperClusterHelper.h.

References rechits_, seedCluster_, and topology_.

34 { return EcalClusterTools::eTop(*seedCluster_,rechits_,topology_); }
const CaloTopology * topology_
const reco::CaloCluster * seedCluster_
const EcalRecHitCollection * rechits_
float SuperClusterHelper::hadronicOverEm ( ) const
inline

Definition at line 26 of file SuperClusterHelper.h.

References reco::GsfElectron::hadronicOverEm(), and theElectron_.

26 {return theElectron_->hadronicOverEm();}
float hadronicOverEm() const
Definition: GsfElectron.h:457
const reco::GsfElectron * theElectron_
int SuperClusterHelper::ietaSeed ( )
inline

Definition at line 50 of file SuperClusterHelper.h.

References ietaSeed_, and localCoordinates().

int SuperClusterHelper::iphiSeed ( )
inline

Definition at line 51 of file SuperClusterHelper.h.

References iphiSeed_, and localCoordinates().

void SuperClusterHelper::localCoordinates ( )
private

Definition at line 128 of file SuperClusterHelper.cc.

Referenced by etaCrySeed(), ietaSeed(), iphiSeed(), phiCrySeed(), phiTilt(), and thetaTilt().

float SuperClusterHelper::nPreshowerClusters ( ) const
inline

Definition at line 70 of file SuperClusterHelper.h.

References nESClusters_.

70 { return nESClusters_;}
float SuperClusterHelper::phi ( void  ) const
inline

Definition at line 22 of file SuperClusterHelper.h.

References reco::CaloCluster::phi(), and theSuperCluster_.

Referenced by Particle.Particle::__str__().

22 {return theSuperCluster_->phi();}
const reco::SuperCluster * theSuperCluster_
double phi() const
azimuthal angle of cluster centroid
Definition: CaloCluster.h:166
float SuperClusterHelper::phiCrySeed ( )
inline

Definition at line 53 of file SuperClusterHelper.h.

References localCoordinates(), and phiCrySeed_.

float SuperClusterHelper::phiTilt ( )
inline

Definition at line 55 of file SuperClusterHelper.h.

References localCoordinates(), and phiTilt_.

float SuperClusterHelper::phiWidth ( ) const
inline

Definition at line 24 of file SuperClusterHelper.h.

References reco::SuperCluster::phiWidth(), and theSuperCluster_.

24 {return theSuperCluster_->phiWidth();}
double phiWidth() const
obtain phi and eta width of the Super Cluster
Definition: SuperCluster.h:55
const reco::SuperCluster * theSuperCluster_
float SuperClusterHelper::preshowerEnergy ( ) const
inline

Definition at line 28 of file SuperClusterHelper.h.

References reco::SuperCluster::preshowerEnergy(), and theSuperCluster_.

const reco::SuperCluster * theSuperCluster_
double preshowerEnergy() const
energy deposited in preshower
Definition: SuperCluster.h:50
float SuperClusterHelper::preshowerEnergyOverRaw ( ) const
inline

Definition at line 29 of file SuperClusterHelper.h.

References reco::SuperCluster::preshowerEnergy(), reco::SuperCluster::rawEnergy(), and theSuperCluster_.

const reco::SuperCluster * theSuperCluster_
double rawEnergy() const
raw uncorrected energy (sum of energies of component BasicClusters)
Definition: SuperCluster.h:47
double preshowerEnergy() const
energy deposited in preshower
Definition: SuperCluster.h:50
float SuperClusterHelper::r9 ( ) const
inline

Definition at line 43 of file SuperClusterHelper.h.

References e3x3(), reco::SuperCluster::rawEnergy(), and theSuperCluster_.

43  { //std::cout << " E3x3 " << e3x3() << " raw " << theSuperCluster_->rawEnergy() << std::endl;
44  return e3x3()/theSuperCluster_->rawEnergy();}
const reco::SuperCluster * theSuperCluster_
double rawEnergy() const
raw uncorrected energy (sum of energies of component BasicClusters)
Definition: SuperCluster.h:47
float SuperClusterHelper::rawEnergy ( ) const
inline

Definition at line 20 of file SuperClusterHelper.h.

References reco::SuperCluster::rawEnergy(), and theSuperCluster_.

20 {return theSuperCluster_->rawEnergy();}
const reco::SuperCluster * theSuperCluster_
double rawEnergy() const
raw uncorrected energy (sum of energies of component BasicClusters)
Definition: SuperCluster.h:47
float SuperClusterHelper::seedEnergy ( ) const
inline

Definition at line 49 of file SuperClusterHelper.h.

References reco::CaloCluster::energy(), and seedCluster_.

49 { return seedCluster_->energy();}
const reco::CaloCluster * seedCluster_
double energy() const
cluster energy
Definition: CaloCluster.h:121
float SuperClusterHelper::seedEta ( ) const
inline

Definition at line 47 of file SuperClusterHelper.h.

References reco::CaloCluster::eta(), and seedCluster_.

47 { return seedCluster_->eta(); }
double eta() const
pseudorapidity of cluster centroid
Definition: CaloCluster.h:163
const reco::CaloCluster * seedCluster_
float SuperClusterHelper::seedPhi ( ) const
inline

Definition at line 48 of file SuperClusterHelper.h.

References reco::CaloCluster::phi(), and seedCluster_.

48 { return seedCluster_->phi(); }
const reco::CaloCluster * seedCluster_
double phi() const
azimuthal angle of cluster centroid
Definition: CaloCluster.h:166
float SuperClusterHelper::sep ( )

Definition at line 123 of file SuperClusterHelper.cc.

float SuperClusterHelper::sigmaIetaIeta ( ) const
inline

Definition at line 27 of file SuperClusterHelper.h.

References reco::GsfElectron::sigmaIetaIeta(), and theElectron_.

27 {return theElectron_->sigmaIetaIeta();}
float sigmaIetaIeta() const
Definition: GsfElectron.h:416
const reco::GsfElectron * theElectron_
static bool SuperClusterHelper::sortClusters ( const reco::CaloCluster c1,
const reco::CaloCluster c2 
)
inlinestaticprivate

Definition at line 109 of file SuperClusterHelper.h.

References reco::CaloCluster::energy().

110  {
111  return (c1->energy()>c2->energy());
112  }
double energy() const
cluster energy
Definition: CaloCluster.h:121
float SuperClusterHelper::spp ( )

Definition at line 118 of file SuperClusterHelper.cc.

float SuperClusterHelper::subClusterE3x3 ( unsigned  i) const

Definition at line 156 of file SuperClusterHelper.cc.

float SuperClusterHelper::subClusterEmax ( unsigned  i) const

Definition at line 152 of file SuperClusterHelper.cc.

float SuperClusterHelper::subClusterEnergy ( unsigned  i) const

Definition at line 140 of file SuperClusterHelper.cc.

float SuperClusterHelper::subClusterEta ( unsigned  i) const

Definition at line 144 of file SuperClusterHelper.cc.

float SuperClusterHelper::subClusterPhi ( unsigned  i) const

Definition at line 148 of file SuperClusterHelper.cc.

float SuperClusterHelper::thetaTilt ( )
inline

Definition at line 54 of file SuperClusterHelper.h.

References localCoordinates(), and thetaTilt_.

Member Data Documentation

bool SuperClusterHelper::barrel_
private

Definition at line 83 of file SuperClusterHelper.h.

bool SuperClusterHelper::covComputed_
private

cached variables covariance matrix

Definition at line 88 of file SuperClusterHelper.h.

float SuperClusterHelper::eESClusters_
private

Definition at line 103 of file SuperClusterHelper.h.

Referenced by eESClusters().

float SuperClusterHelper::eSubClusters_
private

Definition at line 102 of file SuperClusterHelper.h.

Referenced by eSubClusters().

float SuperClusterHelper::etaCrySeed_
private

Definition at line 96 of file SuperClusterHelper.h.

Referenced by etaCrySeed().

const CaloGeometry* SuperClusterHelper::geometry_
private

Definition at line 81 of file SuperClusterHelper.h.

int SuperClusterHelper::ietaSeed_
private

Definition at line 94 of file SuperClusterHelper.h.

Referenced by ietaSeed().

int SuperClusterHelper::iphiSeed_
private

Definition at line 95 of file SuperClusterHelper.h.

Referenced by iphiSeed().

EcalClusterLocal SuperClusterHelper::local_
private

Definition at line 82 of file SuperClusterHelper.h.

bool SuperClusterHelper::localCoordinatesComputed_
private

local coordinates

Definition at line 93 of file SuperClusterHelper.h.

unsigned SuperClusterHelper::nBasicClusters_
private

Definition at line 100 of file SuperClusterHelper.h.

unsigned SuperClusterHelper::nESClusters_
private

Definition at line 101 of file SuperClusterHelper.h.

Referenced by nPreshowerClusters().

float SuperClusterHelper::phiCrySeed_
private

Definition at line 97 of file SuperClusterHelper.h.

Referenced by phiCrySeed().

float SuperClusterHelper::phiTilt_
private

Definition at line 99 of file SuperClusterHelper.h.

Referenced by phiTilt().

const EcalRecHitCollection* SuperClusterHelper::rechits_
private
const reco::CaloCluster* SuperClusterHelper::seedCluster_
private
float SuperClusterHelper::sep_
private

Definition at line 91 of file SuperClusterHelper.h.

float SuperClusterHelper::spp_
private

Definition at line 90 of file SuperClusterHelper.h.

std::vector<const reco::CaloCluster*> SuperClusterHelper::theBasicClusters_
private

Definition at line 76 of file SuperClusterHelper.h.

const reco::GsfElectron* SuperClusterHelper::theElectron_
private

Definition at line 74 of file SuperClusterHelper.h.

Referenced by hadronicOverEm(), and sigmaIetaIeta().

std::vector<const reco::CaloCluster*> SuperClusterHelper::theESClusters_
private

Definition at line 77 of file SuperClusterHelper.h.

const reco::SuperCluster* SuperClusterHelper::theSuperCluster_
private
float SuperClusterHelper::thetaTilt_
private

Definition at line 98 of file SuperClusterHelper.h.

Referenced by thetaTilt().

const CaloTopology* SuperClusterHelper::topology_
private
std::vector<float> SuperClusterHelper::vCov_
private

Definition at line 89 of file SuperClusterHelper.h.