#include <DataFormats/EgammaReco/interface/SuperCluster.h>
Public Types | |
typedef math::XYZPoint | Point |
Public Types inherited from reco::CaloCluster | |
enum | AlgoId { island = 0, hybrid = 1, fixedMatrix = 2, dynamicHybrid = 3, multi5x5 = 4, particleFlow = 5, hgcal_em = 6, hgcal_had = 7, hgcal_mixed = 8, hfnose = 9, undefined = 1000 } |
typedef AlgoId | AlgoID |
enum | HCalFlags { badHcalMarker = 1 } |
enum | SCFlags { cleanOnly = 0, common = 100, uncleanOnly = 200 } |
Public Member Functions | |
void | addCluster (const CaloClusterPtr &r) |
add reference to constituent BasicCluster More... | |
void | addPreshowerCluster (const CaloClusterPtr &r) |
add reference to constituent BasicCluster More... | |
void | clearHitsAndFractions () |
const CaloClusterPtrVector & | clusters () const |
const access to the cluster list itself More... | |
CaloCluster_iterator | clustersBegin () const |
fist iterator over BasicCluster constituents More... | |
CaloCluster_iterator | clustersEnd () const |
last iterator over BasicCluster constituents More... | |
size_t | clustersSize () const |
number of BasicCluster constituents More... | |
double | etaWidth () const |
const int | getPreshowerPlanesStatus () const |
double | phiWidth () const |
obtain phi and eta width of the Super Cluster More... | |
const CaloClusterPtrVector & | preshowerClusters () const |
const access to the preshower cluster list itself More... | |
CaloCluster_iterator | preshowerClustersBegin () const |
fist iterator over PreshowerCluster constituents More... | |
CaloCluster_iterator | preshowerClustersEnd () const |
last iterator over PreshowerCluster constituents More... | |
size_t | preshowerClustersSize () const |
number of BasicCluster PreShower constituents More... | |
double | preshowerEnergy () const |
energy deposited in preshower More... | |
double | preshowerEnergyPlane1 () const |
double | preshowerEnergyPlane2 () const |
double | rawEnergy () const |
raw uncorrected energy (sum of energies of component BasicClusters) More... | |
const CaloClusterPtr & | seed () const |
seed BasicCluster More... | |
const int | seedCrysIEtaOrIx () const |
const int | seedCrysIPhiOrIy () const |
void | setClusters (const CaloClusterPtrVector &clusters) |
void | setEtaWidth (double ew) |
void | setPhiWidth (double pw) |
void | setPreshowerClusters (const CaloClusterPtrVector &clusters) |
void | setPreshowerEnergy (double preshowerEnergy) |
void | setPreshowerEnergyPlane1 (double preshowerEnergy1) |
void | setPreshowerEnergyPlane2 (double preshowerEnergy2) |
void | setPreshowerPlanesStatus (const uint32_t &status) |
void | setSeed (const CaloClusterPtr &r) |
list of used xtals by DetId // now inherited by CaloCluster More... | |
SuperCluster () | |
default constructor More... | |
SuperCluster (double energy, const Point &position) | |
constructor defined by CaloCluster - will have to use setSeed and add() separately More... | |
SuperCluster (double energy, const Point &position, const CaloClusterPtr &seed, const CaloClusterPtrVector &clusters, double Epreshower=0., double phiWidth=0., double etaWidth=0., double Epreshower1=0., double Epreshower2=0.) | |
SuperCluster (double energy, const Point &position, const CaloClusterPtr &seed, const CaloClusterPtrVector &clusters, const CaloClusterPtrVector &preshowerClusters, double Epreshower=0., double phiWidth=0., double etaWidth=0., double Epreshower1=0., double Epreshower2=0.) | |
Public Member Functions inherited from reco::CaloCluster | |
void | addHitAndFraction (DetId id, float fraction) |
AlgoId | algo () const |
algorithm identifier More... | |
AlgoID | algoID () const |
CaloCluster () | |
default constructor. Sets energy and position to zero More... | |
CaloCluster (AlgoID algoID) | |
constructor with algoId, to be used in all child classes More... | |
CaloCluster (double energy, const math::XYZPoint &position, const CaloID &caloID) | |
CaloCluster (double energy, const math::XYZPoint &position) | |
constructor from values More... | |
CaloCluster (double energy, const math::XYZPoint &position, const CaloID &caloID, const AlgoID &algoID, uint32_t flags=0) | |
CaloCluster (double energy, const math::XYZPoint &position, const CaloID &caloID, const std::vector< std::pair< DetId, float > > &usedHitsAndFractions, const AlgoId algoId, const DetId seedId=DetId(0), uint32_t flags=0) | |
CaloCluster (double energy, const math::XYZPoint &position, float chi2, const std::vector< DetId > &usedHits, const AlgoId algoId, uint32_t flags=0) | |
temporary compatibility constructor More... | |
const CaloID & | caloID () const |
double | correctedEnergy () const |
float | correctedEnergyUncertainty () const |
double | energy () const |
cluster energy More... | |
double | eta () const |
pseudorapidity of cluster centroid More... | |
uint32_t | flags () const |
const std::vector< std::pair< DetId, float > > & | hitsAndFractions () const |
bool | isInClean () const |
bool | isInUnclean () const |
bool | operator< (const CaloCluster &rhs) const |
comparison < operator More... | |
bool | operator<= (const CaloCluster &rhs) const |
comparison <= operator More... | |
bool | operator== (const CaloCluster &rhs) const |
comparison == operator More... | |
bool | operator> (const CaloCluster &rhs) const |
comparison > operator More... | |
bool | operator>= (const CaloCluster &rhs) const |
comparison >= operator More... | |
double | phi () const |
azimuthal angle of cluster centroid More... | |
const math::XYZPoint & | position () const |
cluster centroid position More... | |
std::string | printHitAndFraction (unsigned i) const |
print hitAndFraction More... | |
void | reset () |
resets the CaloCluster (position, energy, hitsAndFractions) More... | |
DetId | seed () const |
return DetId of seed More... | |
void | setAlgoId (const AlgoId &id) |
void | setCaloId (const CaloID &id) |
void | setCorrectedEnergy (double cenergy) |
void | setCorrectedEnergyUncertainty (float energyerr) |
void | setEnergy (double energy) |
void | setFlags (uint32_t flags) |
void | setPosition (const math::XYZPoint &p) |
void | setSeed (const DetId &id) |
size_t | size () const |
size in number of hits (e.g. in crystals for ECAL) More... | |
double | x () const |
x coordinate of cluster centroid More... | |
double | y () const |
y coordinate of cluster centroid More... | |
double | z () const |
z coordinate of cluster centroid More... | |
virtual | ~CaloCluster () |
destructor More... | |
Private Member Functions | |
void | computeRawEnergy () |
Private Attributes | |
CaloClusterPtrVector | clusters_ |
references to BasicCluster constitunets More... | |
double | etaWidth_ |
double | phiWidth_ |
CaloClusterPtrVector | preshowerClusters_ |
references to BasicCluster constitunets More... | |
double | preshowerEnergy1_ |
double | preshowerEnergy2_ |
double | preshowerEnergy_ |
used hits by detId - retrieved from BC constituents – now inherited from CaloCluster More... | |
double | rawEnergy_ |
CaloClusterPtr | seed_ |
reference to BasicCluster seed More... | |
Additional Inherited Members | |
Protected Attributes inherited from reco::CaloCluster | |
AlgoID | algoID_ |
CaloID | caloID_ |
bitmask for detector information More... | |
double | correctedEnergy_ |
float | correctedEnergyUncertainty_ |
double | energy_ |
cluster energy More... | |
uint32_t | flags_ |
std::vector< std::pair< DetId, float > > | hitsAndFractions_ |
math::XYZPoint | position_ |
cluster centroid position More... | |
DetId | seedId_ |
DetId of seed. More... | |
Static Protected Attributes inherited from reco::CaloCluster | |
static const uint32_t | flagsMask_ = 0x0FFFFFFF |
static const uint32_t | flagsOffset_ = 28 |
A SuperCluster reconstructed in the Electromagnetic Calorimeter contains references to seed and constituent BasicClusters
Definition at line 20 of file SuperCluster.h.
Definition at line 22 of file SuperCluster.h.
|
inline |
default constructor
Definition at line 25 of file SuperCluster.h.
reco::SuperCluster::SuperCluster | ( | double | energy, |
const Point & | position | ||
) |
constructor defined by CaloCluster - will have to use setSeed and add() separately
reco::SuperCluster::SuperCluster | ( | double | energy, |
const Point & | position, | ||
const CaloClusterPtr & | seed, | ||
const CaloClusterPtrVector & | clusters, | ||
double | Epreshower = 0. , |
||
double | phiWidth = 0. , |
||
double | etaWidth = 0. , |
||
double | Epreshower1 = 0. , |
||
double | Epreshower2 = 0. |
||
) |
reco::SuperCluster::SuperCluster | ( | double | energy, |
const Point & | position, | ||
const CaloClusterPtr & | seed, | ||
const CaloClusterPtrVector & | clusters, | ||
const CaloClusterPtrVector & | preshowerClusters, | ||
double | Epreshower = 0. , |
||
double | phiWidth = 0. , |
||
double | etaWidth = 0. , |
||
double | Epreshower1 = 0. , |
||
double | Epreshower2 = 0. |
||
) |
|
inline |
add reference to constituent BasicCluster
Definition at line 124 of file SuperCluster.h.
References clusters_, computeRawEnergy(), and edm::PtrVector< T >::push_back().
Referenced by PFEGammaAlgo::buildRefinedSuperCluster(), PFElectronTranslator::createSuperClusters(), PFPhotonTranslator::createSuperClusters(), and PFECALSuperClusterAlgo::finalizeSuperCluster().
|
inline |
add reference to constituent BasicCluster
Definition at line 130 of file SuperCluster.h.
References preshowerClusters_, and edm::PtrVector< T >::push_back().
Referenced by PFEGammaAlgo::buildRefinedSuperCluster(), PFElectronTranslator::createSuperClusters(), PFPhotonTranslator::createSuperClusters(), and PFECALSuperClusterAlgo::finalizeSuperCluster().
|
inline |
Definition at line 121 of file SuperCluster.h.
References reco::CaloCluster::hitsAndFractions_.
|
inline |
const access to the cluster list itself
Definition at line 82 of file SuperCluster.h.
References clusters_.
Referenced by lowptgsfeleid::findEnergeticClusters(), SCEnergyCorrectorSemiParm::getRegDataECALHLTV1(), SCEnergyCorrectorSemiParm::getRegDataECALV1(), SCEnergyCorrectorSemiParm::getRegDataHGCALHLTV1(), SCEnergyCorrectorSemiParm::getRegDataHGCALV1(), ReducedEGProducer::linkCaloClusters(), ReducedEGProducer::relinkCaloClusters(), setClusters(), setPreshowerClusters(), and lowptgsfeleid::trackClusterMatching().
|
inline |
fist iterator over BasicCluster constituents
Definition at line 88 of file SuperCluster.h.
References edm::PtrVector< T >::begin(), and clusters_.
Referenced by EcalClusterPUCleaningTools::CleanedSuperCluster(), computeRawEnergy(), egammaisolation::EgammaEcalExtractor::deposit(), EcalRegressionData::fill(), lowptgsfeleid::findEnergeticClusters(), EgammaEcalIsolation::getEcalEtSum(), SCEnergyCorrectorSemiParm::getRegDataECALV1(), EgammaRecHitIsolation::getSum_(), reco::Mustache::MustacheID(), ClusterClusterMapping::overlap(), UncleanSCRecoveryProducer::produce(), AlCaECALRecHitReducer::produce(), SuperClusterHelper::SuperClusterHelper(), egamma::towersOf(), and lowptgsfeleid::trackClusterMatching().
|
inline |
last iterator over BasicCluster constituents
Definition at line 91 of file SuperCluster.h.
References clusters_, and edm::PtrVector< T >::end().
Referenced by EcalClusterPUCleaningTools::CleanedSuperCluster(), computeRawEnergy(), egammaisolation::EgammaEcalExtractor::deposit(), EcalRegressionData::fill(), lowptgsfeleid::findEnergeticClusters(), EgammaEcalIsolation::getEcalEtSum(), SCEnergyCorrectorSemiParm::getRegDataECALV1(), EgammaRecHitIsolation::getSum_(), reco::Mustache::MustacheID(), ClusterClusterMapping::overlap(), UncleanSCRecoveryProducer::produce(), AlCaECALRecHitReducer::produce(), SuperClusterHelper::SuperClusterHelper(), egamma::towersOf(), and lowptgsfeleid::trackClusterMatching().
|
inline |
number of BasicCluster constituents
Definition at line 100 of file SuperCluster.h.
References clusters_, and edm::PtrVectorBase::size().
Referenced by SuperClusterHelper::clustersSize(), EcalRegressionData::fill(), lowptgsfeleid::findEnergeticClusters(), and lowptgsfeleid::trackClusterMatching().
|
private |
Definition at line 82 of file SuperCluster.cc.
References clustersBegin(), clustersEnd(), and rawEnergy_.
Referenced by addCluster(), and setClusters().
|
inline |
Definition at line 69 of file SuperCluster.h.
References etaWidth_.
Referenced by egamma::ecalClusterEnergyUncertaintyElectronSpecific(), SuperClusterHelper::etaWidth(), EcalRegressionData::fill(), SCEnergyCorrectorSemiParm::getRegDataECALV1(), SCEnergyCorrectorSemiParm::getRegDataHGCALV1(), EcalClusterEnergyCorrection::getValue(), EcalClusterEnergyCorrectionObjectSpecific::getValue(), and EcalClusterEnergyUncertainty::getValue().
|
inline |
Get preshower planes status : 0 : both planes working 1 : only first plane working 2 : only second plane working 3 : both planes dead
Definition at line 148 of file SuperCluster.h.
References reco::CaloCluster::flags_, and reco::CaloCluster::flagsOffset_.
|
inline |
obtain phi and eta width of the Super Cluster
Definition at line 68 of file SuperCluster.h.
References phiWidth_.
Referenced by egamma::ecalClusterEnergyUncertaintyElectronSpecific(), EcalRegressionData::fill(), SCEnergyCorrectorSemiParm::getRegDataECALHLTV1(), SCEnergyCorrectorSemiParm::getRegDataECALV1(), SCEnergyCorrectorSemiParm::getRegDataHGCALHLTV1(), SCEnergyCorrectorSemiParm::getRegDataHGCALV1(), EcalClusterEnergyCorrection::getValue(), EcalClusterEnergyUncertainty::getValue(), EcalClusterEnergyCorrectionObjectSpecific::getValue(), and SuperClusterHelper::phiWidth().
|
inline |
const access to the preshower cluster list itself
Definition at line 85 of file SuperCluster.h.
References preshowerClusters_.
Referenced by ReducedEGProducer::linkCaloClusters(), and ReducedEGProducer::relinkCaloClusters().
|
inline |
fist iterator over PreshowerCluster constituents
Definition at line 94 of file SuperCluster.h.
References edm::PtrVector< T >::begin(), and preshowerClusters_.
Referenced by PFEGammaAlgo::buildRefinedSuperCluster(), PFECALSuperClusterAlgo::finalizeSuperCluster(), and SuperClusterHelper::SuperClusterHelper().
|
inline |
last iterator over PreshowerCluster constituents
Definition at line 97 of file SuperCluster.h.
References edm::PtrVector< T >::end(), and preshowerClusters_.
Referenced by PFEGammaAlgo::buildRefinedSuperCluster(), PFECALSuperClusterAlgo::finalizeSuperCluster(), and SuperClusterHelper::SuperClusterHelper().
|
inline |
number of BasicCluster PreShower constituents
Definition at line 103 of file SuperCluster.h.
References preshowerClusters_, and edm::PtrVectorBase::size().
|
inline |
energy deposited in preshower
Definition at line 63 of file SuperCluster.h.
References preshowerEnergy_.
Referenced by ContainmentCorrectionAnalyzer::analyze(), EcalClusterPUCleaningTools::CleanedSuperCluster(), EcalRegressionData::fill(), ZeeCalibration::fillEleInfo(), SCEnergyCorrectorSemiParm::getCorrections(), EcalClusterEnergyCorrection::getValue(), EcalClusterEnergyCorrectionObjectSpecific::getValue(), SuperClusterHelper::preshowerEnergy(), SuperClusterHelper::preshowerEnergyOverRaw(), and setPreshowerEnergy().
|
inline |
|
inline |
|
inline |
raw uncorrected energy (sum of energies of component BasicClusters)
Definition at line 60 of file SuperCluster.h.
References rawEnergy_.
Referenced by ContainmentCorrectionAnalyzer::analyze(), PFEGammaAlgo::buildRefinedSuperCluster(), Jet.Jet::chargedEmEnergyFraction(), Jet.Jet::chargedHadronEnergyFraction(), Jet.Jet::chargedMuEnergyFraction(), HGCalShowerShapeHelper::createCalc(), PFElectronTranslator::createSuperClusters(), PFPhotonTranslator::createSuperClusters(), Jet.Jet::electronEnergyFraction(), EcalRegressionData::fill(), PFEGammaAlgo::fillPFCandidates(), PFECALSuperClusterAlgo::finalizeSuperCluster(), SCEnergyCorrectorSemiParm::getCorrections(), SCEnergyCorrectorSemiParm::getRegDataECALHLTV1(), SCEnergyCorrectorSemiParm::getRegDataECALV1(), SCEnergyCorrectorSemiParm::getRegDataHGCALHLTV1(), SCEnergyCorrectorSemiParm::getRegDataHGCALV1(), EcalClusterEnergyCorrection::getValue(), EcalClusterEnergyCorrectionObjectSpecific::getValue(), Jet.Jet::HFEMEnergyFraction(), Jet.Jet::HFHadronEnergyFraction(), Jet.Jet::hoEnergyFraction(), Jet.Jet::jetID(), Jet.Jet::muonEnergyFraction(), Jet.Jet::neutralEmEnergyFraction(), Jet.Jet::neutralHadronEnergyFraction(), Jet.Jet::photonEnergyFraction(), SuperClusterHelper::preshowerEnergyOverRaw(), LowPtGsfElectronSCProducer::produce(), SuperClusterHelper::r9(), and SuperClusterHelper::rawEnergy().
|
inline |
seed BasicCluster
Definition at line 79 of file SuperCluster.h.
References seed_.
Referenced by EGHcalRecHitSelector::addDetIds(), AlCaECALRecHitReducer::AddMiniRecHitCollection(), ContainmentCorrectionAnalyzer::analyze(), EcalClusterPUCleaningTools::CleanedSuperCluster(), EcalClusterToolsT< noZS >::cluster2ndMoments(), egammaisolation::EgammaEcalExtractor::deposit(), EcalRegressionData::fill(), ZeeCalibration::fillEleInfo(), PFEGammaAlgo::fillPFCandidates(), PFECALSuperClusterAlgo::finalizeSuperCluster(), SCEnergyCorrectorSemiParm::getCorrections(), EgammaEcalIsolation::getEcalEtSum(), RegressionHelper::getEcalRegression(), EgammaHcalIsolation::getHcalESumBc(), EgammaHcalIsolation::getHcalEtSumBc(), SCEnergyCorrectorSemiParm::getRegData(), SCEnergyCorrectorSemiParm::getRegDataECALHLTV1(), SCEnergyCorrectorSemiParm::getRegDataECALV1(), SCEnergyCorrectorSemiParm::getRegDataHGCALV1(), EG8XObjectUpdateModifier::getSaturationInfo(), EcalClusterEnergyCorrectionObjectSpecific::getValue(), EcalClusterCrackCorrection::getValue(), EcalDigiSelector::produce(), UncleanSCRecoveryProducer::produce(), UnifiedSCCollectionProducer::produce(), ReducedEGProducer::relinkCaloClusters(), EcalClusterToolsT< noZS >::scLocalCovariances(), EcalClusterLazyToolsBase::SuperClusterSeedTime(), EcalClusterLazyToolsBase::SuperClusterTime(), and egamma::towersOf().
|
inline |
Definition at line 150 of file SuperCluster.h.
References EcalBarrel, EcalEndcap, EBDetId::ieta(), EEDetId::ix(), and seed_.
|
inline |
Definition at line 163 of file SuperCluster.h.
References EcalBarrel, EcalEndcap, EBDetId::iphi(), EEDetId::iy(), and seed_.
|
inline |
Definition at line 112 of file SuperCluster.h.
References clusters(), clusters_, and computeRawEnergy().
Referenced by LowPtGsfElectronSCProducer::produce(), and ReducedEGProducer::relinkCaloClusters().
|
inline |
Definition at line 76 of file SuperCluster.h.
References etaWidth_.
Referenced by EgammaSCEnergyCorrectionAlgo::applyCorrection(), PFEGammaAlgo::buildRefinedSuperCluster(), PFElectronTranslator::createSuperClusters(), PFPhotonTranslator::createSuperClusters(), PFECALSuperClusterAlgo::finalizeSuperCluster(), and LowPtGsfElectronSCProducer::produce().
|
inline |
Definition at line 75 of file SuperCluster.h.
References phiWidth_.
Referenced by EgammaSCEnergyCorrectionAlgo::applyCorrection(), PFEGammaAlgo::buildRefinedSuperCluster(), PFElectronTranslator::createSuperClusters(), PFPhotonTranslator::createSuperClusters(), PFECALSuperClusterAlgo::finalizeSuperCluster(), and LowPtGsfElectronSCProducer::produce().
|
inline |
Definition at line 118 of file SuperCluster.h.
References clusters(), and preshowerClusters_.
Referenced by ReducedEGProducer::relinkCaloClusters().
|
inline |
Definition at line 72 of file SuperCluster.h.
References preshowerEnergy(), and preshowerEnergy_.
Referenced by PFEGammaAlgo::buildRefinedSuperCluster(), PFElectronTranslator::createSuperClusters(), PFPhotonTranslator::createSuperClusters(), and PFECALSuperClusterAlgo::finalizeSuperCluster().
|
inline |
Definition at line 73 of file SuperCluster.h.
References preshowerEnergy1_.
Referenced by PFEGammaAlgo::buildRefinedSuperCluster(), PFECALSuperClusterAlgo::finalizeSuperCluster(), and PreshowerPhiClusterProducer::produce().
|
inline |
Definition at line 74 of file SuperCluster.h.
References preshowerEnergy2_.
Referenced by PFEGammaAlgo::buildRefinedSuperCluster(), and PFECALSuperClusterAlgo::finalizeSuperCluster().
|
inline |
Set preshower planes status : 0 : both planes working 1 : only first plane working 2 : only second plane working 3 : both planes dead
Definition at line 138 of file SuperCluster.h.
References reco::CaloCluster::flags(), reco::CaloCluster::flags_, reco::CaloCluster::flagsMask_, reco::CaloCluster::flagsOffset_, and mps_update::status.
Referenced by PreshowerClusterProducer::produce().
|
inline |
list of used xtals by DetId // now inherited by CaloCluster
set reference to seed BasicCluster
Definition at line 109 of file SuperCluster.h.
References seed_.
Referenced by PFEGammaAlgo::buildRefinedSuperCluster(), PFElectronTranslator::createSuperClusters(), PFPhotonTranslator::createSuperClusters(), PFECALSuperClusterAlgo::finalizeSuperCluster(), LowPtGsfElectronSCProducer::produce(), and ReducedEGProducer::relinkCaloClusters().
|
private |
references to BasicCluster constitunets
Definition at line 183 of file SuperCluster.h.
Referenced by addCluster(), clusters(), clustersBegin(), clustersEnd(), clustersSize(), and setClusters().
|
private |
Definition at line 196 of file SuperCluster.h.
Referenced by etaWidth(), and setEtaWidth().
|
private |
Definition at line 195 of file SuperCluster.h.
Referenced by phiWidth(), and setPhiWidth().
|
private |
references to BasicCluster constitunets
Definition at line 186 of file SuperCluster.h.
Referenced by addPreshowerCluster(), preshowerClusters(), preshowerClustersBegin(), preshowerClustersEnd(), preshowerClustersSize(), and setPreshowerClusters().
|
private |
Definition at line 198 of file SuperCluster.h.
Referenced by preshowerEnergyPlane1(), and setPreshowerEnergyPlane1().
|
private |
Definition at line 199 of file SuperCluster.h.
Referenced by preshowerEnergyPlane2(), and setPreshowerEnergyPlane2().
|
private |
used hits by detId - retrieved from BC constituents – now inherited from CaloCluster
Definition at line 191 of file SuperCluster.h.
Referenced by preshowerEnergy(), and setPreshowerEnergy().
|
private |
Definition at line 193 of file SuperCluster.h.
Referenced by computeRawEnergy(), and rawEnergy().
|
private |
reference to BasicCluster seed
Definition at line 180 of file SuperCluster.h.
Referenced by seed(), seedCrysIEtaOrIx(), seedCrysIPhiOrIy(), and setSeed().