Algorithm for particle flow superclustering. More...
#include <PFHcalSuperClusterAlgo.h>
Public Types | |
typedef edm::Handle < reco::PFClusterCollection > | PFClusterHandle |
typedef edm::Ptr< reco::PFCluster > | PFClusterPtr |
Public Member Functions | |
std::pair< double, double > | calculatePosition (const reco::PFCluster &cluster) |
recalculate eta-phi position of clusters More... | |
std::pair< double, double > | calculateWidths (const reco::PFCluster &cluster) |
calculate eta-phi widths of clusters More... | |
const edm::PtrVector < reco::PFCluster > & | clusters () const |
std::auto_ptr< std::vector < reco::PFCluster > > & | clusters () |
setters ----------------------------------------------——— More... | |
void | doClustering (const reco::PFClusterCollection &clusters, const reco::PFClusterCollection &clustersHO) |
perform clustering More... | |
void | doClustering (const PFClusterHandle &clustersHandle, const PFClusterHandle &clustersHOHandle) |
perform clustering in full framework More... | |
void | enableDebugging (bool debug) |
enable/disable debugging More... | |
PFHcalSuperClusterAlgo () | |
constructor More... | |
std::auto_ptr< std::vector < reco::PFSuperCluster > > & | superClusters () |
void | write () |
virtual | ~PFHcalSuperClusterAlgo () |
destructor More... | |
Private Member Functions | |
void | doClusteringWorker (const reco::PFClusterCollection &clusters, const reco::PFClusterCollection &clustersHO) |
perform clustering More... | |
Private Attributes | |
edm::PtrVector< reco::PFCluster > | clusters_ |
PFClusterHandle | clustersHandle_ |
PFClusterHandle | clustersHOHandle_ |
bool | debug_ |
debugging on/off More... | |
std::auto_ptr< std::vector < reco::PFCluster > > | pfClusters_ |
particle flow clusters More... | |
std::auto_ptr< std::vector < reco::PFSuperCluster > > | pfSuperClusters_ |
particle flow superclusters More... | |
reco::PFSuperCluster | SuperCluster_ |
Static Private Attributes | |
static unsigned | prodNum_ = 1 |
product number More... | |
Friends | |
std::ostream & | operator<< (std::ostream &out, const PFHcalSuperClusterAlgo &algo) |
Algorithm for particle flow superclustering.
This class takes as an input a map of pointers to PFCluster's, and creates PFSuperCluster's from these clusters.
Definition at line 27 of file PFHcalSuperClusterAlgo.h.
Definition at line 41 of file PFHcalSuperClusterAlgo.h.
Definition at line 42 of file PFHcalSuperClusterAlgo.h.
PFHcalSuperClusterAlgo::PFHcalSuperClusterAlgo | ( | ) |
constructor
Definition at line 26 of file PFHcalSuperClusterAlgo.cc.
|
inlinevirtual |
std::pair< double, double > PFHcalSuperClusterAlgo::calculatePosition | ( | const reco::PFCluster & | cluster | ) |
recalculate eta-phi position of clusters
Definition at line 60 of file PFHcalSuperClusterAlgo.cc.
References cuy::denominator, reco::PFCluster::energy(), create_public_lumi_plots::log, max(), Geom::pi(), reco::PFCluster::recHitFractions(), Geom::twoPi(), and w().
Referenced by calculateWidths(), and doClusteringWorker().
std::pair< double, double > PFHcalSuperClusterAlgo::calculateWidths | ( | const reco::PFCluster & | cluster | ) |
calculate eta-phi widths of clusters
Definition at line 94 of file PFHcalSuperClusterAlgo.cc.
References funct::abs(), calculatePosition(), cuy::denominator, dPhi(), reco::PFCluster::energy(), create_public_lumi_plots::log, max(), Geom::pi(), reco::PFCluster::recHitFractions(), mathSSE::sqrt(), Geom::twoPi(), and w().
Referenced by doClusteringWorker().
|
inline |
Definition at line 43 of file PFHcalSuperClusterAlgo.h.
References clusters_.
Referenced by doClustering().
|
inline |
setters ----------------------------------------------———
getters -------------------------------------------------——
Definition at line 69 of file PFHcalSuperClusterAlgo.h.
References pfClusters_.
void PFHcalSuperClusterAlgo::doClustering | ( | const reco::PFClusterCollection & | clusters, |
const reco::PFClusterCollection & | clustersHO | ||
) |
perform clustering
Definition at line 49 of file PFHcalSuperClusterAlgo.cc.
References edm::HandleBase::clear(), clustersHandle_, clustersHOHandle_, and doClusteringWorker().
void PFHcalSuperClusterAlgo::doClustering | ( | const PFClusterHandle & | clustersHandle, |
const PFClusterHandle & | clustersHOHandle | ||
) |
perform clustering in full framework
Definition at line 37 of file PFHcalSuperClusterAlgo.cc.
References clusters(), clustersHandle_, clustersHOHandle_, and doClusteringWorker().
|
private |
perform clustering
Definition at line 143 of file PFHcalSuperClusterAlgo.cc.
References funct::abs(), calculatePosition(), calculateWidths(), edm::PtrVectorBase::clear(), clusters_, clustersHandle_, gather_cfg::cout, SiPixelRawToDigiRegional_cfi::deltaPhi, deltaR(), dPhi(), PFRecoTauDiscriminationAgainstElectronDeadECAL_cfi::dR, first, PFLayer::HCAL_BARREL1, PFLayer::HCAL_BARREL2, PFLayer::HCAL_ENDCAP, init, reco::PFHcalSuperClusterInit::initialize(), pfClusters_, pfSuperClusters_, edm::PtrVector< T >::push_back(), edm::PtrVectorBase::size(), mathSSE::sqrt(), w2, w3, and w4.
Referenced by doClustering().
|
inline |
|
inline |
Definition at line 73 of file PFHcalSuperClusterAlgo.h.
References pfSuperClusters_.
void PFHcalSuperClusterAlgo::write | ( | void | ) |
Definition at line 35 of file PFHcalSuperClusterAlgo.cc.
|
friend |
|
private |
Definition at line 93 of file PFHcalSuperClusterAlgo.h.
Referenced by clusters(), and doClusteringWorker().
|
private |
Definition at line 91 of file PFHcalSuperClusterAlgo.h.
Referenced by doClustering(), and doClusteringWorker().
|
private |
Definition at line 92 of file PFHcalSuperClusterAlgo.h.
Referenced by doClustering().
|
private |
debugging on/off
Definition at line 97 of file PFHcalSuperClusterAlgo.h.
Referenced by enableDebugging().
|
private |
particle flow clusters
Definition at line 85 of file PFHcalSuperClusterAlgo.h.
Referenced by clusters(), doClusteringWorker(), and operator<<().
|
private |
particle flow superclusters
Definition at line 88 of file PFHcalSuperClusterAlgo.h.
Referenced by doClusteringWorker(), operator<<(), and superClusters().
|
staticprivate |
product number
Definition at line 100 of file PFHcalSuperClusterAlgo.h.
|
private |
Definition at line 90 of file PFHcalSuperClusterAlgo.h.