#include <HybridClusterAlgo.h>
Public Member Functions | |
HybridClusterAlgo () | |
HybridClusterAlgo (double eb_str, int step, double ethres, double eseed, double xi, bool useEtForXi, double ewing, const std::vector< int > &v_chstatus, const PositionCalc &posCalculator, bool dynamicEThres=false, double eThresA=0, double eThresB=0.1, const std::vector< int > &severityToExclude=std::vector< int >().operator=(std::vector< int >(999)), bool excludeFromCluster=false) | |
void | mainSearch (const EcalRecHitCollection *hits, const CaloSubdetectorGeometry *geometry) |
void | makeClusters (const EcalRecHitCollection *, const CaloSubdetectorGeometry *geometry, reco::BasicClusterCollection &basicClusters, const EcalSeverityLevelAlgo *sevLv, bool regional=false, const std::vector< RectangularEtaPhiRegion > ®ions=std::vector< RectangularEtaPhiRegion >()) |
double | makeDomino (EcalBarrelNavigatorHT &navigator, std::vector< EcalRecHit > &cells) |
reco::SuperClusterCollection | makeSuperClusters (const reco::CaloClusterPtrVector &) |
void | setDynamicPhiRoad (const edm::ParameterSet &bremRecoveryPset) |
~HybridClusterAlgo () | |
Private Types | |
typedef math::XYZPoint | Point |
Private Member Functions | |
double | e2Et (EcalBarrelNavigatorHT &navigator, const EcalRecHitCollection *hits, const CaloSubdetectorGeometry *geometry) |
double | et25 (EcalBarrelNavigatorHT &navigator, const EcalRecHitCollection *hits, const CaloSubdetectorGeometry *geometry) |
Private Attributes | |
std::map< int, std::vector< reco::BasicCluster > > | clustered_ |
bool | dynamicEThres_ |
bool | dynamicPhiRoad_ |
double | eb_st |
double | Eseed |
double | eThres_ |
double | eThresA_ |
double | eThresB_ |
double | Ewing |
std::set< DetId > | excludedCrys_ |
bool | excludeFromCluster_ |
BremRecoveryPhiRoadAlgo * | phiRoadAlgo_ |
int | phiSteps_ |
PositionCalc | posCalculator_ |
const EcalRecHitCollection * | recHits_ |
std::vector< reco::BasicCluster > | seedClus_ |
std::vector< EcalRecHit > | seeds |
float | severityRecHitThreshold_ |
float | severitySpikeThreshold_ |
EcalBarrelHardcodedTopology * | topo_ |
std::set< DetId > | useddetids |
bool | UseEtForXi |
std::vector< int > | v_chstatus_ |
std::vector< int > | v_severitylevel_ |
double | Xi |
Definition at line 26 of file HybridClusterAlgo.h.
|
private |
Definition at line 29 of file HybridClusterAlgo.h.
|
inline |
Definition at line 113 of file HybridClusterAlgo.h.
HybridClusterAlgo::HybridClusterAlgo | ( | double | eb_str, |
int | step, | ||
double | ethres, | ||
double | eseed, | ||
double | xi, | ||
bool | useEtForXi, | ||
double | ewing, | ||
const std::vector< int > & | v_chstatus, | ||
const PositionCalc & | posCalculator, | ||
bool | dynamicEThres = false , |
||
double | eThresA = 0 , |
||
double | eThresB = 0.1 , |
||
const std::vector< int > & | severityToExclude = std::vector<int>().operator=(std::vector<int>(999)) , |
||
bool | excludeFromCluster = false |
||
) |
Definition at line 15 of file HybridClusterAlgo.cc.
References dynamicEThres_, dynamicPhiRoad_, Eseed, eThresA_, eThresB_, LogTrace, posCalculator_, topo_, UseEtForXi, v_chstatus_, and Xi.
|
inline |
Definition at line 136 of file HybridClusterAlgo.h.
References dynamicPhiRoad_, phiRoadAlgo_, and topo_.
|
private |
Definition at line 639 of file HybridClusterAlgo.cc.
References PositionCalc::Calculate_Location(), PVValHelper::dx, PVValHelper::dy, edm::SortedCollection< T, SORT >::end(), edm::SortedCollection< T, SORT >::find(), hfClusterShapes_cfi::hits, HLT_2018_cff::navigator, posCalculator_, and recHits_.
Referenced by mainSearch().
|
private |
Definition at line 607 of file HybridClusterAlgo.cc.
References PositionCalc::Calculate_Location(), PVValHelper::dx, PVValHelper::dy, edm::SortedCollection< T, SORT >::end(), CastorDataFrameFilter_impl::energySum(), EgHLTOffHistBins_cfi::et, edm::SortedCollection< T, SORT >::find(), hfClusterShapes_cfi::hits, HLT_2018_cff::navigator, posCalculator_, and recHits_.
Referenced by mainSearch().
void HybridClusterAlgo::mainSearch | ( | const EcalRecHitCollection * | hits, |
const CaloSubdetectorGeometry * | geometry | ||
) |
Definition at line 173 of file HybridClusterAlgo.cc.
References BremRecoveryPhiRoadAlgo::barrelPhiRoad(), PositionCalc::Calculate_Location(), clustered_, reco::CaloID::DET_ECAL_BARREL, dynamicEThres_, dynamicPhiRoad_, e2Et(), Eseed, et25(), eThres_, eThresA_, eThresB_, hfClusterShapes_cfi::hits, reco::CaloCluster::hybrid, mps_fire::i, createfilelist::int, dqmiolumiharvest::j, dqmdumpme::k, LogTrace, makeDomino(), HLT_2018_cff::navigator, nhits, DetId::null(), phiRoadAlgo_, phiSteps_, posCalculator_, FastTrackerRecHitMaskProducer_cfi::recHits, seedClus_, seeds, mathSSE::sqrt(), groupFilesInBlocks::temp, topo_, useddetids, UseEtForXi, and Xi.
Referenced by makeClusters().
void HybridClusterAlgo::makeClusters | ( | const EcalRecHitCollection * | recColl, |
const CaloSubdetectorGeometry * | geometry, | ||
reco::BasicClusterCollection & | basicClusters, | ||
const EcalSeverityLevelAlgo * | sevLv, | ||
bool | regional = false , |
||
const std::vector< RectangularEtaPhiRegion > & | regions = std::vector<RectangularEtaPhiRegion>() |
||
) |
Definition at line 60 of file HybridClusterAlgo.cc.
References edm::SortedCollection< T, SORT >::begin(), clustered_, eb_st, edm::SortedCollection< T, SORT >::end(), ET, excludedCrys_, excludeFromCluster_, spr::find(), createfilelist::int, isClusterEtLess(), dqmiolumiharvest::j, EcalRecHit::kGood, LogTrace, mainSearch(), position, recHits_, HLT_2018_cff::region, seedClus_, seeds, EcalSeverityLevelAlgo::severityLevel(), useddetids, v_chstatus_, v_severitylevel_, x, and y.
Referenced by HybridClusterProducer::produce().
double HybridClusterAlgo::makeDomino | ( | EcalBarrelNavigatorHT & | navigator, |
std::vector< EcalRecHit > & | cells | ||
) |
Definition at line 524 of file HybridClusterAlgo.cc.
References postprocess-scan-build::cells, edm::SortedCollection< T, SORT >::end(), EcalRecHit::energy(), Ewing, excludedCrys_, edm::SortedCollection< T, SORT >::find(), HLT_2018_cff::navigator, recHits_, and useddetids.
Referenced by mainSearch().
reco::SuperClusterCollection HybridClusterAlgo::makeSuperClusters | ( | const reco::CaloClusterPtrVector & | clustersCollection | ) |
Definition at line 449 of file HybridClusterAlgo.cc.
References clustered_, reco::CaloCluster::energy(), mps_fire::i, createfilelist::int, isClusterEtLess(), dqmiolumiharvest::j, LogTrace, reco::CaloCluster::position(), RecoTauValidation_cfi::posX, RecoTauValidation_cfi::posY, edm::PtrVector< T >::push_back(), SurveyInfoScenario_cff::seed, seedClus_, and edm::PtrVectorBase::size().
Referenced by HybridClusterProducer::produce().
|
inline |
Definition at line 143 of file HybridClusterAlgo.h.
References cosmicSuperClusters_cfi::bremRecoveryPset, dynamicPhiRoad_, and phiRoadAlgo_.
Referenced by HybridClusterProducer::HybridClusterProducer().
|
private |
Definition at line 95 of file HybridClusterAlgo.h.
Referenced by mainSearch(), makeClusters(), and makeSuperClusters().
|
private |
Definition at line 71 of file HybridClusterAlgo.h.
Referenced by HybridClusterAlgo(), and mainSearch().
|
private |
Definition at line 68 of file HybridClusterAlgo.h.
Referenced by HybridClusterAlgo(), mainSearch(), setDynamicPhiRoad(), and ~HybridClusterAlgo().
|
private |
Definition at line 32 of file HybridClusterAlgo.h.
Referenced by makeClusters().
|
private |
Definition at line 56 of file HybridClusterAlgo.h.
Referenced by HybridClusterAlgo(), and mainSearch().
|
private |
Definition at line 51 of file HybridClusterAlgo.h.
Referenced by mainSearch().
|
private |
Definition at line 52 of file HybridClusterAlgo.h.
Referenced by HybridClusterAlgo(), and mainSearch().
|
private |
Definition at line 53 of file HybridClusterAlgo.h.
Referenced by HybridClusterAlgo(), and mainSearch().
|
private |
Definition at line 65 of file HybridClusterAlgo.h.
Referenced by makeDomino().
|
private |
Definition at line 109 of file HybridClusterAlgo.h.
Referenced by makeClusters(), and makeDomino().
|
private |
Definition at line 108 of file HybridClusterAlgo.h.
Referenced by makeClusters().
|
private |
Definition at line 48 of file HybridClusterAlgo.h.
Referenced by mainSearch(), setDynamicPhiRoad(), and ~HybridClusterAlgo().
|
private |
Definition at line 37 of file HybridClusterAlgo.h.
Referenced by mainSearch().
|
private |
Definition at line 98 of file HybridClusterAlgo.h.
Referenced by e2Et(), et25(), HybridClusterAlgo(), and mainSearch().
|
private |
Definition at line 78 of file HybridClusterAlgo.h.
Referenced by e2Et(), et25(), makeClusters(), and makeDomino().
|
private |
Definition at line 92 of file HybridClusterAlgo.h.
Referenced by mainSearch(), makeClusters(), and makeSuperClusters().
|
private |
Definition at line 89 of file HybridClusterAlgo.h.
Referenced by mainSearch(), and makeClusters().
|
private |
Definition at line 105 of file HybridClusterAlgo.h.
|
private |
Definition at line 106 of file HybridClusterAlgo.h.
|
private |
Definition at line 81 of file HybridClusterAlgo.h.
Referenced by HybridClusterAlgo(), mainSearch(), and ~HybridClusterAlgo().
|
private |
Definition at line 86 of file HybridClusterAlgo.h.
Referenced by mainSearch(), makeClusters(), and makeDomino().
|
private |
Definition at line 62 of file HybridClusterAlgo.h.
Referenced by HybridClusterAlgo(), and mainSearch().
|
private |
Definition at line 101 of file HybridClusterAlgo.h.
Referenced by HybridClusterAlgo(), and makeClusters().
|
private |
Definition at line 104 of file HybridClusterAlgo.h.
Referenced by makeClusters().
|
private |
Definition at line 59 of file HybridClusterAlgo.h.
Referenced by HybridClusterAlgo(), and mainSearch().