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 Types | Private Member Functions | Private Attributes
ClusterShapeAlgo Class Reference

#include <ClusterShapeAlgo.h>

Public Member Functions

reco::ClusterShape Calculate (const reco::BasicCluster &passedCluster, const EcalRecHitCollection *hits, const CaloSubdetectorGeometry *geometry, const CaloSubdetectorTopology *topology)
 
 ClusterShapeAlgo (const edm::ParameterSet &par)
 
 ClusterShapeAlgo ()
 

Private Types

enum  { Eta, Phi }
 

Private Member Functions

double absZernikeMoment (const reco::BasicCluster &passedCluster, int n, int m, double R0=6.6)
 
double calc_AbsZernikeMoment (const reco::BasicCluster &passedCluster, int n, int m, double R0)
 
void Calculate_2ndEnergy (const reco::BasicCluster &passedCluster, const EcalRecHitCollection *hits)
 
void Calculate_BarrelBasketEnergyFraction (const reco::BasicCluster &passedCluster, const EcalRecHitCollection *hits, const int EtaPhi, const CaloSubdetectorGeometry *geometry)
 
void Calculate_ComplexZernikeMoments (const reco::BasicCluster &passedCluster)
 
void Calculate_Covariances (const reco::BasicCluster &passedCluster, const EcalRecHitCollection *hits, const CaloSubdetectorGeometry *geometry)
 
void Calculate_e2x2 ()
 
void Calculate_e2x5Bottom ()
 
void Calculate_e2x5Left ()
 
void Calculate_e2x5Right ()
 
void Calculate_e2x5Top ()
 
void Calculate_e3x2 ()
 
void Calculate_e3x3 ()
 
void Calculate_e4x4 ()
 
void Calculate_e5x5 ()
 
void Calculate_EnergyDepTopology (const reco::BasicCluster &passedCluster, const EcalRecHitCollection *hits, const CaloSubdetectorGeometry *geometry, bool logW=true)
 
void Calculate_lat (const reco::BasicCluster &passedCluster)
 
void Calculate_Polynomials (double rho)
 
void Calculate_TopEnergy (const reco::BasicCluster &passedCluster, const EcalRecHitCollection *hits)
 
void Create_Map (const EcalRecHitCollection *hits, const CaloSubdetectorTopology *topology)
 
double f00 (double r)
 
double f11 (double r)
 
double f20 (double r)
 
double f22 (double r)
 
double f31 (double r)
 
double f33 (double r)
 
double f40 (double r)
 
double f42 (double r)
 
double f44 (double r)
 
double f51 (double r)
 
double f53 (double r)
 
double f55 (double r)
 
double factorial (int n) const
 
double fast_AbsZernikeMoment (const reco::BasicCluster &passedCluster, int n, int m, double R0)
 

Private Attributes

double A20_
 
double A42_
 
double covEtaEta_
 
double covEtaPhi_
 
double covPhiPhi_
 
double e2nd_
 
DetId e2ndId_
 
double e2x2_
 
int e2x2_Diagonal_X_
 
int e2x2_Diagonal_Y_
 
double e2x5Bottom_
 
double e2x5Left_
 
double e2x5Right_
 
double e2x5Top_
 
double e3x2_
 
double e3x2Ratio_
 
double e3x3_
 
double e4x4_
 
double e5x5_
 
double eMax_
 
DetId eMaxId_
 
std::vector< double > energyBasketFractionEta_
 
std::vector< double > energyBasketFractionPhi_
 
std::vector
< EcalClusterEnergyDeposition
energyDistribution_
 
std::pair< DetId, double > energyMap_ [5][5]
 
double etaLat_
 
std::vector< double > fcn_
 
double lat_
 
edm::ParameterSet parameterSet_
 
double phiLat_
 

Detailed Description

calculates and creates a ClusterShape object

Author
Michael A. Balazs, UVa

Definition at line 36 of file ClusterShapeAlgo.h.

Member Enumeration Documentation

anonymous enum
private
Enumerator
Eta 
Phi 

Definition at line 109 of file ClusterShapeAlgo.h.

Constructor & Destructor Documentation

ClusterShapeAlgo::ClusterShapeAlgo ( const edm::ParameterSet par)

Definition at line 19 of file ClusterShapeAlgo.cc.

ClusterShapeAlgo::ClusterShapeAlgo ( )
inline

Definition at line 41 of file ClusterShapeAlgo.h.

41 { };

Member Function Documentation

double ClusterShapeAlgo::absZernikeMoment ( const reco::BasicCluster passedCluster,
int  n,
int  m,
double  R0 = 6.6 
)
private

Definition at line 498 of file ClusterShapeAlgo.cc.

double ClusterShapeAlgo::calc_AbsZernikeMoment ( const reco::BasicCluster passedCluster,
int  n,
int  m,
double  R0 
)
private

Definition at line 559 of file ClusterShapeAlgo.cc.

reco::ClusterShape ClusterShapeAlgo::Calculate ( const reco::BasicCluster passedCluster,
const EcalRecHitCollection hits,
const CaloSubdetectorGeometry geometry,
const CaloSubdetectorTopology topology 
)

Definition at line 22 of file ClusterShapeAlgo.cc.

void ClusterShapeAlgo::Calculate_2ndEnergy ( const reco::BasicCluster passedCluster,
const EcalRecHitCollection hits 
)
private

Definition at line 81 of file ClusterShapeAlgo.cc.

void ClusterShapeAlgo::Calculate_BarrelBasketEnergyFraction ( const reco::BasicCluster passedCluster,
const EcalRecHitCollection hits,
const int  EtaPhi,
const CaloSubdetectorGeometry geometry 
)
private

Definition at line 382 of file ClusterShapeAlgo.cc.

void ClusterShapeAlgo::Calculate_ComplexZernikeMoments ( const reco::BasicCluster passedCluster)
private

Definition at line 491 of file ClusterShapeAlgo.cc.

void ClusterShapeAlgo::Calculate_Covariances ( const reco::BasicCluster passedCluster,
const EcalRecHitCollection hits,
const CaloSubdetectorGeometry geometry 
)
private

Definition at line 310 of file ClusterShapeAlgo.cc.

void ClusterShapeAlgo::Calculate_e2x2 ( )
private

Definition at line 131 of file ClusterShapeAlgo.cc.

void ClusterShapeAlgo::Calculate_e2x5Bottom ( )
private

Definition at line 286 of file ClusterShapeAlgo.cc.

void ClusterShapeAlgo::Calculate_e2x5Left ( )
private

Definition at line 275 of file ClusterShapeAlgo.cc.

void ClusterShapeAlgo::Calculate_e2x5Right ( )
private

Definition at line 264 of file ClusterShapeAlgo.cc.

void ClusterShapeAlgo::Calculate_e2x5Top ( )
private

Definition at line 298 of file ClusterShapeAlgo.cc.

void ClusterShapeAlgo::Calculate_e3x2 ( )
private

Definition at line 165 of file ClusterShapeAlgo.cc.

void ClusterShapeAlgo::Calculate_e3x3 ( )
private

Definition at line 215 of file ClusterShapeAlgo.cc.

void ClusterShapeAlgo::Calculate_e4x4 ( )
private

Definition at line 227 of file ClusterShapeAlgo.cc.

void ClusterShapeAlgo::Calculate_e5x5 ( )
private

Definition at line 252 of file ClusterShapeAlgo.cc.

void ClusterShapeAlgo::Calculate_EnergyDepTopology ( const reco::BasicCluster passedCluster,
const EcalRecHitCollection hits,
const CaloSubdetectorGeometry geometry,
bool  logW = true 
)
private

Definition at line 591 of file ClusterShapeAlgo.cc.

void ClusterShapeAlgo::Calculate_lat ( const reco::BasicCluster passedCluster)
private

Definition at line 442 of file ClusterShapeAlgo.cc.

void ClusterShapeAlgo::Calculate_Polynomials ( double  rho)
private

Definition at line 659 of file ClusterShapeAlgo.cc.

void ClusterShapeAlgo::Calculate_TopEnergy ( const reco::BasicCluster passedCluster,
const EcalRecHitCollection hits 
)
private

Definition at line 53 of file ClusterShapeAlgo.cc.

void ClusterShapeAlgo::Create_Map ( const EcalRecHitCollection hits,
const CaloSubdetectorTopology topology 
)
private

Definition at line 109 of file ClusterShapeAlgo.cc.

double ClusterShapeAlgo::f00 ( double  r)
private

Definition at line 510 of file ClusterShapeAlgo.cc.

double ClusterShapeAlgo::f11 ( double  r)
private

Definition at line 512 of file ClusterShapeAlgo.cc.

double ClusterShapeAlgo::f20 ( double  r)
private

Definition at line 514 of file ClusterShapeAlgo.cc.

double ClusterShapeAlgo::f22 ( double  r)
private

Definition at line 516 of file ClusterShapeAlgo.cc.

double ClusterShapeAlgo::f31 ( double  r)
private

Definition at line 518 of file ClusterShapeAlgo.cc.

double ClusterShapeAlgo::f33 ( double  r)
private

Definition at line 520 of file ClusterShapeAlgo.cc.

double ClusterShapeAlgo::f40 ( double  r)
private

Definition at line 522 of file ClusterShapeAlgo.cc.

double ClusterShapeAlgo::f42 ( double  r)
private

Definition at line 524 of file ClusterShapeAlgo.cc.

double ClusterShapeAlgo::f44 ( double  r)
private

Definition at line 526 of file ClusterShapeAlgo.cc.

double ClusterShapeAlgo::f51 ( double  r)
private

Definition at line 528 of file ClusterShapeAlgo.cc.

double ClusterShapeAlgo::f53 ( double  r)
private

Definition at line 530 of file ClusterShapeAlgo.cc.

double ClusterShapeAlgo::f55 ( double  r)
private

Definition at line 532 of file ClusterShapeAlgo.cc.

double ClusterShapeAlgo::factorial ( int  n) const
private

Definition at line 674 of file ClusterShapeAlgo.cc.

double ClusterShapeAlgo::fast_AbsZernikeMoment ( const reco::BasicCluster passedCluster,
int  n,
int  m,
double  R0 
)
private

Definition at line 534 of file ClusterShapeAlgo.cc.

Member Data Documentation

double ClusterShapeAlgo::A20_
private

Definition at line 102 of file ClusterShapeAlgo.h.

double ClusterShapeAlgo::A42_
private

Definition at line 102 of file ClusterShapeAlgo.h.

double ClusterShapeAlgo::covEtaEta_
private

Definition at line 95 of file ClusterShapeAlgo.h.

double ClusterShapeAlgo::covEtaPhi_
private

Definition at line 95 of file ClusterShapeAlgo.h.

double ClusterShapeAlgo::covPhiPhi_
private

Definition at line 95 of file ClusterShapeAlgo.h.

double ClusterShapeAlgo::e2nd_
private

Definition at line 96 of file ClusterShapeAlgo.h.

DetId ClusterShapeAlgo::e2ndId_
private

Definition at line 105 of file ClusterShapeAlgo.h.

double ClusterShapeAlgo::e2x2_
private

Definition at line 96 of file ClusterShapeAlgo.h.

int ClusterShapeAlgo::e2x2_Diagonal_X_
private

Definition at line 93 of file ClusterShapeAlgo.h.

int ClusterShapeAlgo::e2x2_Diagonal_Y_
private

Definition at line 93 of file ClusterShapeAlgo.h.

double ClusterShapeAlgo::e2x5Bottom_
private

Definition at line 97 of file ClusterShapeAlgo.h.

double ClusterShapeAlgo::e2x5Left_
private

Definition at line 97 of file ClusterShapeAlgo.h.

double ClusterShapeAlgo::e2x5Right_
private

Definition at line 97 of file ClusterShapeAlgo.h.

double ClusterShapeAlgo::e2x5Top_
private

Definition at line 97 of file ClusterShapeAlgo.h.

double ClusterShapeAlgo::e3x2_
private

Definition at line 96 of file ClusterShapeAlgo.h.

double ClusterShapeAlgo::e3x2Ratio_
private

Definition at line 98 of file ClusterShapeAlgo.h.

double ClusterShapeAlgo::e3x3_
private

Definition at line 96 of file ClusterShapeAlgo.h.

double ClusterShapeAlgo::e4x4_
private

Definition at line 96 of file ClusterShapeAlgo.h.

double ClusterShapeAlgo::e5x5_
private

Definition at line 96 of file ClusterShapeAlgo.h.

double ClusterShapeAlgo::eMax_
private

Definition at line 96 of file ClusterShapeAlgo.h.

DetId ClusterShapeAlgo::eMaxId_
private

Definition at line 105 of file ClusterShapeAlgo.h.

std::vector<double> ClusterShapeAlgo::energyBasketFractionEta_
private

Definition at line 103 of file ClusterShapeAlgo.h.

std::vector<double> ClusterShapeAlgo::energyBasketFractionPhi_
private

Definition at line 104 of file ClusterShapeAlgo.h.

std::vector<EcalClusterEnergyDeposition> ClusterShapeAlgo::energyDistribution_
private

Definition at line 106 of file ClusterShapeAlgo.h.

std::pair<DetId, double> ClusterShapeAlgo::energyMap_[5][5]
private

Definition at line 92 of file ClusterShapeAlgo.h.

double ClusterShapeAlgo::etaLat_
private

Definition at line 100 of file ClusterShapeAlgo.h.

std::vector<double> ClusterShapeAlgo::fcn_
private

Definition at line 107 of file ClusterShapeAlgo.h.

double ClusterShapeAlgo::lat_
private

Definition at line 99 of file ClusterShapeAlgo.h.

edm::ParameterSet ClusterShapeAlgo::parameterSet_
private

Definition at line 90 of file ClusterShapeAlgo.h.

double ClusterShapeAlgo::phiLat_
private

Definition at line 101 of file ClusterShapeAlgo.h.