#include <PFAlgo2HGC.h>
Public Member Functions | |
PFAlgo2HGC (const edm::ParameterSet &) | |
void | runPF (Region &r) const override |
Public Member Functions inherited from l1tpf_impl::PFAlgoBase | |
PFAlgoBase (const edm::ParameterSet &) | |
virtual | ~PFAlgoBase () |
Protected Types | |
enum | BadTrackStatus { BadTK_NoCalo = 1 } |
enum | GoodTrackStatus { GoodTK_Calo_TkPt = 0, GoodTK_Calo_TkCaloPt = 1, GoodTk_Calo_CaloPt = 2, GoodTK_NoCalo = 3 } |
enum | MuMatchMode { MuMatchMode::BoxBestByPtRatio, MuMatchMode::DrBestByPtRatio, MuMatchMode::DrBestByPtDiff } |
enum | TkCaloLinkMetric { TkCaloLinkMetric::BestByDR = 0, TkCaloLinkMetric::BestByDRPt = 1, TkCaloLinkMetric::BestByDR2Pt2 = 2 } |
Protected Member Functions | |
void | calo_relink (Region &r, const std::vector< int > &calo2ntk, const std::vector< float > &calo2sumtkpt, const std::vector< float > &calo2sumtkpterr) const |
try to recover split hadron showers (v1.0): More... | |
void | link_tk2calo (Region &r, std::vector< int > &tk2calo) const |
track to calo matching More... | |
void | link_tk2mu (Region &r, std::vector< int > &tk2mu, std::vector< int > &mu2tk) const |
do muon track linking (also sets track.muonLink) More... | |
void | linkedcalo_algo (Region &r, const std::vector< int > &calo2ntk, const std::vector< float > &calo2sumtkpt, const std::vector< float > &calo2sumtkpterr, std::vector< float > &calo2alpha) const |
process matched calo clusters, compare energy to sum track pt, compute track rescaling factor if needed More... | |
void | linkedtk_algo (Region &r, const std::vector< int > &tk2calo, const std::vector< int > &calo2ntk, const std::vector< float > &calo2alpha) const |
process matched tracks, if necessary rescale or average More... | |
void | save_muons (Region &r, const std::vector< int > &tk2mu) const |
save muons in output list More... | |
void | sum_tk2calo (Region &r, const std::vector< int > &tk2calo, std::vector< int > &calo2ntk, std::vector< float > &calo2sumtkpt, std::vector< float > &calo2sumtkpterr) const |
for each calo, compute the sum of the track pt More... | |
void | unlinkedcalo_algo (Region &r) const |
process unmatched calo clusters More... | |
void | unlinkedtk_algo (Region &r, const std::vector< int > &tk2calo) const |
promote unlinked low pt tracks to hadrons More... | |
Protected Member Functions inherited from l1tpf_impl::PFAlgoBase | |
PFParticle & | addCaloToPF (Region &r, const CaloCluster &calo) const |
PFParticle & | addCaloToPF (std::vector< PFParticle > &pfs, const CaloCluster &calo) const |
PFParticle & | addTrackToPF (Region &r, const PropagatedTrack &tk) const |
PFParticle & | addTrackToPF (std::vector< PFParticle > &pfs, const PropagatedTrack &tk) const |
void | initRegion (Region &r) const |
Protected Attributes | |
float | caloReLinkDr_ |
bool | caloReLinkStep_ |
float | caloReLinkThreshold_ |
bool | caloTrkWeightedAverage_ |
float | drMatch_ |
float | drMatchMu_ |
bool | ecalPriority_ |
bool | emCaloUseAlsoCaloSigma_ |
float | maxInvisiblePt_ |
enum l1tpf_impl::PFAlgo2HGC::MuMatchMode | muMatchMode_ |
float | ptMatchHigh_ |
float | ptMatchLow_ |
bool | rescaleTracks_ |
bool | rescaleUnmatchedTrack_ |
bool | sumTkCaloErr2_ |
float | tightTrackMaxChi2_ |
float | tightTrackMaxInvisiblePt_ |
unsigned int | tightTrackMinStubs_ |
TkCaloLinkMetric | tkCaloLinkMetric_ |
bool | trackEmUseAlsoTrackSigma_ |
bool | useTrackCaloSigma_ |
Protected Attributes inherited from l1tpf_impl::PFAlgoBase | |
int | debug_ |
Definition at line 7 of file PFAlgo2HGC.h.
|
protected |
|
protected |
Enumerator | |
---|---|
GoodTK_Calo_TkPt | |
GoodTK_Calo_TkCaloPt | |
GoodTk_Calo_CaloPt | |
GoodTK_NoCalo |
Definition at line 24 of file PFAlgo2HGC.h.
|
strongprotected |
Enumerator | |
---|---|
BoxBestByPtRatio | |
DrBestByPtRatio | |
DrBestByPtDiff |
Definition at line 14 of file PFAlgo2HGC.h.
|
strongprotected |
Enumerator | |
---|---|
BestByDR | |
BestByDRPt | |
BestByDR2Pt2 |
Definition at line 17 of file PFAlgo2HGC.h.
PFAlgo2HGC::PFAlgo2HGC | ( | const edm::ParameterSet & | iConfig | ) |
Definition at line 19 of file PFAlgo2HGC.cc.
References BestByDR, BestByDR2Pt2, BestByDRPt, BoxBestByPtRatio, caloReLinkDr_, caloReLinkStep_, caloReLinkThreshold_, caloTrkWeightedAverage_, l1tpf_impl::PFAlgoBase::debug_, DrBestByPtDiff, DrBestByPtRatio, drMatch_, drMatchMu_, ecalPriority_, Exception, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), maxInvisiblePt_, muMatchMode_, ptMatchHigh_, ptMatchLow_, rescaleTracks_, AlCaHLTBitMon_QueryRunRegistry::string, sumTkCaloErr2_, tightTrackMaxChi2_, tightTrackMaxInvisiblePt_, tightTrackMinStubs_, tkCaloLinkMetric_, and useTrackCaloSigma_.
|
protected |
try to recover split hadron showers (v1.0):
OPTIONAL STEP: try to recover split hadron showers (v1.0):
Definition at line 408 of file PFAlgo2HGC.cc.
References caloReLinkDr_, caloReLinkThreshold_, dbgPrintf(), l1tpf_impl::PFAlgoBase::debug_, flavorHistoryFilter_cfi::dr, alignCSCRings::r, and useTrackCaloSigma_.
Referenced by runPF().
|
protected |
track to calo matching
Definition at line 257 of file PFAlgo2HGC.cc.
References BestByDR, BestByDR2Pt2, BestByDRPt, dbgPrintf(), l1tpf_impl::PFAlgoBase::debug_, flavorHistoryFilter_cfi::dr, drMatch_, ptMatchLow_, alignCSCRings::r, and tkCaloLinkMetric_.
Referenced by runPF().
|
protected |
do muon track linking (also sets track.muonLink)
Definition at line 167 of file PFAlgo2HGC.cc.
References funct::abs(), BoxBestByPtRatio, reco::ceil(), dbgPrintf(), l1tpf_impl::PFAlgoBase::debug_, PbPb_ZMuSkimMuonDPG_cff::deltaR, HLT_FULL_cff::distance, flavorHistoryFilter_cfi::dr, DrBestByPtDiff, DrBestByPtRatio, drMatchMu_, M_PI, amptDefaultParameters_cff::mu, muMatchMode_, convertSQLiteXML::ok, alignCSCRings::r, and mathSSE::sqrt().
Referenced by runPF().
|
protected |
process matched calo clusters, compare energy to sum track pt, compute track rescaling factor if needed
----------— next step (needs the previous) -------------—
Definition at line 472 of file PFAlgo2HGC.cc.
References l1tpf_impl::PFAlgoBase::addCaloToPF(), dbgPrintf(), l1tpf_impl::PFAlgoBase::debug_, ecalPriority_, min(), l1t::PFCandidate::NeutralHadron, AlCaHLTBitMon_ParallelJobs::p, l1t::PFCandidate::Photon, ptMatchHigh_, ptMatchLow_, alignCSCRings::r, rescaleTracks_, and useTrackCaloSigma_.
Referenced by runPF().
|
protected |
process matched tracks, if necessary rescale or average
Definition at line 563 of file PFAlgo2HGC.cc.
References l1tpf_impl::PFAlgoBase::addTrackToPF(), caloTrkWeightedAverage_, dbgPrintf(), l1tpf_impl::PFAlgoBase::debug_, l1t::PFCandidate::Electron, GoodTk_Calo_CaloPt, GoodTK_Calo_TkCaloPt, GoodTK_Calo_TkPt, createfilelist::int, AlCaHLTBitMon_ParallelJobs::p, funct::pow(), and alignCSCRings::r.
Referenced by runPF().
|
overridevirtual |
----------— first step (can all go in parallel) -------------—
----------— next step (needs the previous) -------------—
----------— next step (needs the previous) -------------— OPTIONAL STEP: try to recover split hadron showers (v1.0):
----------— next step (needs the previous) -------------—
----------— next step (needs the previous) -------------— process matched tracks, if necessary rescale or average
Implements l1tpf_impl::PFAlgoBase.
Definition at line 62 of file PFAlgo2HGC.cc.
References calo_relink(), caloReLinkStep_, dbgPrintf(), l1tpf_impl::PFAlgoBase::debug_, l1tpf_impl::PFAlgoBase::initRegion(), createfilelist::int, link_tk2calo(), link_tk2mu(), linkedcalo_algo(), linkedtk_algo(), amptDefaultParameters_cff::mu, alignCSCRings::r, save_muons(), sum_tk2calo(), unlinkedcalo_algo(), and unlinkedtk_algo().
|
protected |
save muons in output list
Definition at line 640 of file PFAlgo2HGC.cc.
References l1tpf_impl::PFAlgoBase::addTrackToPF(), dbgPrintf(), l1tpf_impl::PFAlgoBase::debug_, AlCaHLTBitMon_ParallelJobs::p, and alignCSCRings::r.
Referenced by runPF().
|
protected |
for each calo, compute the sum of the track pt
Definition at line 360 of file PFAlgo2HGC.cc.
References funct::pow(), alignCSCRings::r, mathSSE::sqrt(), and sumTkCaloErr2_.
Referenced by runPF().
|
protected |
process unmatched calo clusters
Definition at line 629 of file PFAlgo2HGC.cc.
References l1tpf_impl::PFAlgoBase::addCaloToPF(), dbgPrintf(), l1tpf_impl::PFAlgoBase::debug_, and alignCSCRings::r.
Referenced by runPF().
|
protected |
promote unlinked low pt tracks to hadrons
Definition at line 385 of file PFAlgo2HGC.cc.
References l1tpf_impl::PFAlgoBase::addTrackToPF(), dbgPrintf(), l1tpf_impl::PFAlgoBase::debug_, GoodTK_NoCalo, maxInvisiblePt_, L1TrackerEtMissProducer_cfi::maxPt, AlCaHLTBitMon_ParallelJobs::p, alignCSCRings::r, tightTrackMaxChi2_, tightTrackMaxInvisiblePt_, and tightTrackMinStubs_.
Referenced by runPF().
|
protected |
Definition at line 20 of file PFAlgo2HGC.h.
Referenced by calo_relink(), and PFAlgo2HGC().
|
protected |
Definition at line 19 of file PFAlgo2HGC.h.
Referenced by PFAlgo2HGC(), and runPF().
|
protected |
Definition at line 20 of file PFAlgo2HGC.h.
Referenced by calo_relink(), and PFAlgo2HGC().
|
protected |
Definition at line 16 of file PFAlgo2HGC.h.
Referenced by linkedtk_algo(), and PFAlgo2HGC().
|
protected |
Definition at line 15 of file PFAlgo2HGC.h.
Referenced by link_tk2calo(), and PFAlgo2HGC().
|
protected |
Definition at line 13 of file PFAlgo2HGC.h.
Referenced by link_tk2mu(), and PFAlgo2HGC().
|
protected |
Definition at line 21 of file PFAlgo2HGC.h.
Referenced by linkedcalo_algo(), and PFAlgo2HGC().
|
protected |
Definition at line 21 of file PFAlgo2HGC.h.
|
protected |
Definition at line 15 of file PFAlgo2HGC.h.
Referenced by PFAlgo2HGC(), and unlinkedtk_algo().
|
protected |
Referenced by link_tk2mu(), and PFAlgo2HGC().
|
protected |
Definition at line 15 of file PFAlgo2HGC.h.
Referenced by linkedcalo_algo(), and PFAlgo2HGC().
|
protected |
Definition at line 15 of file PFAlgo2HGC.h.
Referenced by link_tk2calo(), linkedcalo_algo(), and PFAlgo2HGC().
|
protected |
Definition at line 21 of file PFAlgo2HGC.h.
Referenced by linkedcalo_algo(), and PFAlgo2HGC().
|
protected |
Definition at line 16 of file PFAlgo2HGC.h.
|
protected |
Definition at line 21 of file PFAlgo2HGC.h.
Referenced by PFAlgo2HGC(), and sum_tk2calo().
|
protected |
Definition at line 23 of file PFAlgo2HGC.h.
Referenced by PFAlgo2HGC(), and unlinkedtk_algo().
|
protected |
Definition at line 23 of file PFAlgo2HGC.h.
Referenced by PFAlgo2HGC(), and unlinkedtk_algo().
|
protected |
Definition at line 22 of file PFAlgo2HGC.h.
Referenced by PFAlgo2HGC(), and unlinkedtk_algo().
|
protected |
Definition at line 18 of file PFAlgo2HGC.h.
Referenced by link_tk2calo(), and PFAlgo2HGC().
|
protected |
Definition at line 21 of file PFAlgo2HGC.h.
|
protected |
Definition at line 16 of file PFAlgo2HGC.h.
Referenced by calo_relink(), linkedcalo_algo(), and PFAlgo2HGC().