#include <TracksterLinkingbySuperClusteringDNN.h>
Public Member Functions | |
void | initialize (const HGCalDDDConstants *hgcons, const hgcal::RecHitTools rhtools, const edm::ESHandle< MagneticField > bfieldH, const edm::ESHandle< Propagator > propH) override |
void | linkTracksters (const Inputs &input, std::vector< Trackster > &resultTracksters, std::vector< std::vector< unsigned int >> &linkedResultTracksters, std::vector< std::vector< unsigned int >> &linkedTracksterIdToInputTracksterId) override |
TracksterLinkingbySuperClusteringDNN (const edm::ParameterSet &ps, edm::ConsumesCollector iC, cms::Ort::ONNXRuntime const *onnxRuntime=nullptr) | |
~TracksterLinkingbySuperClusteringDNN () override | |
Public Member Functions inherited from ticl::TracksterLinkingAlgoBase | |
virtual void | setEvent (edm::Event &iEvent, edm::EventSetup const &iEventSetup) |
TracksterLinkingAlgoBase (const edm::ParameterSet &conf, edm::ConsumesCollector, cms::Ort::ONNXRuntime const *onnxRuntime=nullptr) | |
virtual | ~TracksterLinkingAlgoBase () |
Static Public Member Functions | |
static void | fillPSetDescription (edm::ParameterSetDescription &iDesc) |
Static Public Member Functions inherited from ticl::TracksterLinkingAlgoBase | |
static void | fillPSetDescription (edm::ParameterSetDescription &desc) |
Private Member Functions | |
bool | checkExplainedVarianceRatioCut (ticl::Trackster const &ts) const |
bool | trackstersPassesPIDCut (const Trackster &ts) const |
Private Attributes | |
float | candidateEnergyThreshold_ |
float | deltaEtaWindow_ |
float | deltaPhiWindow_ |
std::unique_ptr< AbstractSuperclusteringDNNInput > | dnnInputs_ |
float | explVarRatioCut_energyBoundary_ |
float | explVarRatioMinimum_highEnergy_ |
float | explVarRatioMinimum_lowEnergy_ |
bool | filterByTracksterPID_ |
unsigned int | inferenceBatchSize_ |
double | nnWorkingPoint_ |
float | PIDThreshold_ |
float | seedPtThreshold_ |
std::vector< int > | tracksterPIDCategoriesToFilter_ |
Additional Inherited Members | |
Protected Attributes inherited from ticl::TracksterLinkingAlgoBase | |
int | algo_verbosity_ |
cms::Ort::ONNXRuntime const * | onnxRuntime_ |
Definition at line 30 of file TracksterLinkingbySuperClusteringDNN.h.
TracksterLinkingbySuperClusteringDNN::TracksterLinkingbySuperClusteringDNN | ( | const edm::ParameterSet & | ps, |
edm::ConsumesCollector | iC, | ||
cms::Ort::ONNXRuntime const * | onnxRuntime = nullptr |
||
) |
Definition at line 41 of file TracksterLinkingbySuperClusteringDNN.cc.
References cms::cuda::assert(), and ticl::TracksterLinkingAlgoBase::onnxRuntime_.
|
inlineoverride |
Definition at line 35 of file TracksterLinkingbySuperClusteringDNN.h.
|
private |
Check if trackster passes cut on explained variance ratio. The DNN is trained only on pairs where both seed and candidate pass this cut Explained variance ratio is (largest PCA eigenvalue) / (sum of PCA eigenvalues)
Definition at line 72 of file TracksterLinkingbySuperClusteringDNN.cc.
References ticl::Trackster::eigenvalues(), explVarRatioCut_energyBoundary_, explVarRatioMinimum_highEnergy_, explVarRatioMinimum_lowEnergy_, f, and ticl::Trackster::raw_energy().
Referenced by linkTracksters().
|
static |
Definition at line 340 of file TracksterLinkingbySuperClusteringDNN.cc.
References submitPVResolutionJobs::desc, TrackValidation_cff::e5, ticl::Trackster::electron, ticl::TracksterLinkingAlgoBase::fillPSetDescription(), and ticl::Trackster::photon.
|
overridevirtual |
Implements ticl::TracksterLinkingAlgoBase.
Definition at line 63 of file TracksterLinkingbySuperClusteringDNN.cc.
|
overridevirtual |
resultTracksters : superclusters as tracksters (ie merging of tracksters that have been superclustered together) outputSuperclusters : same as linkedTracksterIdToInputTracksterId. Probably should use only one of the two. linkedTracksterIdToInputTracksterId : maps indices from resultTracksters back into input tracksters. resultTracksters[i] has seed input.tracksters[linkedTracksterIdToInputTracksterId[i][0]], linked with tracksters input.tracksters[linkedTracksterIdToInputTracksterId[i][1..N]]
Implements ticl::TracksterLinkingAlgoBase.
Definition at line 102 of file TracksterLinkingbySuperClusteringDNN.cc.
References funct::abs(), cms::cuda::assert(), ticl::Trackster::barycenter(), candidateEnergyThreshold_, checkExplainedVarianceRatioCut(), filterCSVwithJSON::copy, deltaEtaWindow_, srCondWrite_cfg::deltaPhi, deltaPhiWindow_, dnnInputs_, lowptgsfeleseed::features(), mps_fire::i, testProducerWithPsetDescEmpty_cfi::i1, testProducerWithPsetDescEmpty_cfi::i2, inferenceBatchSize_, input, LogDebug, WZElectronSkims53X_cff::max, SiStripPI::min, eostools::move(), nnWorkingPoint_, ticl::TileConstants::nPhiBins, ticl::TracksterLinkingAlgoBase::onnxRuntime_, PatBasicFWLiteJetAnalyzer_Selector_cfg::outputs, ticl::Trackster::raw_energy(), ticl::Trackster::raw_pt(), cms::Ort::ONNXRuntime::run(), alignCSCRings::s, seedPtThreshold_, and trackstersPassesPIDCut().
|
private |
Definition at line 85 of file TracksterLinkingbySuperClusteringDNN.cc.
References eostools::cat(), filterByTracksterPID_, ticl::Trackster::id_probabilities(), PIDThreshold_, and tracksterPIDCategoriesToFilter_.
Referenced by linkTracksters().
|
private |
Definition at line 58 of file TracksterLinkingbySuperClusteringDNN.h.
Referenced by linkTracksters().
|
private |
Definition at line 55 of file TracksterLinkingbySuperClusteringDNN.h.
Referenced by linkTracksters().
|
private |
Definition at line 56 of file TracksterLinkingbySuperClusteringDNN.h.
Referenced by linkTracksters().
|
private |
Definition at line 51 of file TracksterLinkingbySuperClusteringDNN.h.
Referenced by linkTracksters().
|
private |
Definition at line 59 of file TracksterLinkingbySuperClusteringDNN.h.
Referenced by checkExplainedVarianceRatioCut().
|
private |
Definition at line 61 of file TracksterLinkingbySuperClusteringDNN.h.
Referenced by checkExplainedVarianceRatioCut().
|
private |
Definition at line 60 of file TracksterLinkingbySuperClusteringDNN.h.
Referenced by checkExplainedVarianceRatioCut().
|
private |
Definition at line 62 of file TracksterLinkingbySuperClusteringDNN.h.
Referenced by trackstersPassesPIDCut().
|
private |
Definition at line 52 of file TracksterLinkingbySuperClusteringDNN.h.
Referenced by linkTracksters().
|
private |
Definition at line 54 of file TracksterLinkingbySuperClusteringDNN.h.
Referenced by linkTracksters().
|
private |
Definition at line 64 of file TracksterLinkingbySuperClusteringDNN.h.
Referenced by trackstersPassesPIDCut().
|
private |
Definition at line 57 of file TracksterLinkingbySuperClusteringDNN.h.
Referenced by linkTracksters().
|
private |
Definition at line 63 of file TracksterLinkingbySuperClusteringDNN.h.
Referenced by trackstersPassesPIDCut().