#include <VertexFinder.h>
Classes | |
struct | SortTracksByPt |
struct | SortTracksByZ0 |
Helper structs/classes. More... | |
Public Member Functions | |
void | adaptiveVertexReconstruction () |
Adaptive Vertex Reconstruction algorithm. More... | |
void | agglomerativeHierarchicalClustering () |
Simple Merge Algorithm. More... | |
void | associatePrimaryVertex (double trueZ0) |
Associate the primary vertex with the real one. More... | |
float | centralDistance (RecoVertex<> cluster0, RecoVertex<> cluster1) |
Find distance between centres of two clusters. More... | |
void | computeAndSetVertexParameters (RecoVertex<> &vertex, const std::vector< float > &bin_centers, const std::vector< unsigned int > &counts) |
Vertexing algorithms. More... | |
void | DBSCAN () |
DBSCAN algorithm. More... | |
void | fastHisto (const TrackerTopology *tTopo) |
Histogramming algorithm. More... | |
void | fastHistoEmulation () |
Histogramming algorithm (emulation) More... | |
void | fastHistoLooseAssociation () |
High pT Vertex Algorithm. More... | |
void | findPrimaryVertex () |
Find the primary vertex. More... | |
const FitTrackCollection & | fitTracks () const |
Accessors. More... | |
void | GapClustering () |
Gap Clustering Algorithm. More... | |
void | HPV () |
High pT Vertex Algorithm. More... | |
unsigned int | iterationsPerTrack () const |
Number of iterations. More... | |
void | Kmeans () |
Kmeans Algorithm. More... | |
float | maxDistance (RecoVertex<> cluster0, RecoVertex<> cluster1) |
Find maximum distance in two clusters of tracks. More... | |
float | meanDistance (RecoVertex<> cluster0, RecoVertex<> cluster1) |
Find average distance in two clusters of tracks. More... | |
float | minDistance (RecoVertex<> cluster0, RecoVertex<> cluster1) |
Find minimum distance in two clusters of tracks. More... | |
unsigned int | numInputTracks () const |
Storage for tracks out of the L1 Track finder. More... | |
unsigned int | numIterations () const |
Number of iterations. More... | |
unsigned int | numVertices () const |
Number of reconstructed vertices. More... | |
unsigned int | numVerticesEmulation () const |
Number of emulation vertices. More... | |
template<typename T > | |
T | PrimaryVertex () const |
Reconstructed primary vertex. More... | |
unsigned int | primaryVertexId () const |
Reconstructed Primary Vertex Id. More... | |
template<class data_type , typename stream_type = std::ostream> | |
void | printHistogram (stream_type &stream, std::vector< data_type > data, int width=80, int minimum=0, int maximum=-1, std::string title="", std::string color="") |
Print an ASCII histogram. More... | |
void | PVR () |
Find maximum distance in two clusters of tracks. More... | |
void | sortVerticesInPt () |
Sort vertices in pT. More... | |
void | sortVerticesInZ0 () |
Sort vertices in z. More... | |
template<typename ForwardIterator , typename T > | |
void | strided_iota (ForwardIterator first, ForwardIterator last, T value, T stride) |
VertexFinder (FitTrackCollection &fitTracks, const AlgoSettings &settings) | |
Constructor and destructor. More... | |
const std::vector< RecoVertex<> > & | vertices () const |
Returns the z positions of the reconstructed primary vertices. More... | |
const l1t::VertexWordCollection & | verticesEmulation () const |
Returns the emulation primary vertices. More... | |
~VertexFinder () | |
Private Attributes | |
FitTrackCollection | fitTracks_ |
unsigned int | iterations_ |
unsigned int | numMatchedVertices_ |
unsigned int | pv_index_ |
const AlgoSettings * | settings_ |
RecoVertexCollection | vertices_ |
l1t::VertexWordCollection | verticesEmulation_ |
Definition at line 26 of file VertexFinder.h.
|
inline |
Constructor and destructor.
Definition at line 29 of file VertexFinder.h.
References fitTracks(), fitTracks_, and settings_.
|
inline |
Definition at line 33 of file VertexFinder.h.
void l1tVertexFinder::VertexFinder::adaptiveVertexReconstruction | ( | ) |
Adaptive Vertex Reconstruction algorithm.
Definition at line 311 of file VertexFinder.cc.
References funct::abs(), nano_mu_local_reco_cff::chi2, or, HLT_2023v12_cff::track, bphysicsOniaDQM_cfi::vertex, and l1tVertexFinder::L1Track::z0().
Referenced by VertexProducer::produce().
void l1tVertexFinder::VertexFinder::agglomerativeHierarchicalClustering | ( | ) |
Simple Merge Algorithm.
Definition at line 129 of file VertexFinder.cc.
References mps_fire::i, particleFlowClusterHGC_cfi::maxDistance, or, jetUpdater_cfi::sort, HLT_2023v12_cff::track, and pwdgSkimBPark_cfi::tracks.
Referenced by VertexProducer::produce().
void l1tVertexFinder::VertexFinder::associatePrimaryVertex | ( | double | trueZ0 | ) |
Associate the primary vertex with the real one.
Definition at line 598 of file VertexFinder.cc.
References funct::abs(), HLT_2023v12_cff::distance, and l1ctLayer2EG_cff::id.
float l1tVertexFinder::VertexFinder::centralDistance | ( | RecoVertex<> | cluster0, |
RecoVertex<> | cluster1 | ||
) |
Find distance between centres of two clusters.
Definition at line 122 of file VertexFinder.cc.
References funct::abs(), HLT_2023v12_cff::distance, and l1tVertexFinder::RecoVertex< T >::z0().
void l1tVertexFinder::VertexFinder::computeAndSetVertexParameters | ( | RecoVertex<> & | vertex, |
const std::vector< float > & | bin_centers, | ||
const std::vector< unsigned int > & | counts | ||
) |
Vertexing algorithms.
Compute the vertex parameters
Definition at line 7 of file VertexFinder.cc.
References funct::abs(), dqmiodumpmetadata::counts, conifer::pow(), DiDispStaMuonMonitor_cfi::pt, mathSSE::sqrt(), HLT_2023v12_cff::track, listHistos::trackPt, and bphysicsOniaDQM_cfi::vertex.
void l1tVertexFinder::VertexFinder::DBSCAN | ( | ) |
DBSCAN algorithm.
Definition at line 182 of file VertexFinder.cc.
References funct::abs(), spr::find(), mps_fire::i, l1ctLayer2EG_cff::id, globals_cff::id2, dqmdumpme::k, DiDispStaMuonMonitor_cfi::pt, jetUpdater_cfi::sort, bphysicsOniaDQM_cfi::vertex, and class-composition::visited.
Referenced by VertexProducer::produce().
void l1tVertexFinder::VertexFinder::fastHisto | ( | const TrackerTopology * | tTopo | ) |
Histogramming algorithm.
Definition at line 632 of file VertexFinder.cc.
References funct::abs(), reco::ceil(), dqmiodumpmetadata::counts, hcalRecHitTable_cff::detId, HLT_2023v12_cff::distance, spr::find(), newFWLiteAna::found, compareTotals::hist, mps_fire::i, createfilelist::int, dqmiolumiharvest::j, dqm-mbProfile::log, LaserClient_cfi::nbins, GetRecoTauVFromDQM_MC_cff::next, StripSubdetector::TID, TrackerTopology::tidRing(), createJobs::tmp, StripSubdetector::TOB, TrackerTopology::tobLayer(), HLT_2023v12_cff::track, align::Tracker, HcalDetIdTransform::transform(), pfDeepBoostedJetPreprocessParams_cfi::upper_bound, and findQualityFiles::v.
Referenced by VertexProducer::produce().
void l1tVertexFinder::VertexFinder::fastHistoEmulation | ( | ) |
Histogramming algorithm (emulation)
Definition at line 762 of file VertexFinder.cc.
References cms::cuda::assert(), b, newFWLiteAna::bin, l1tVertexFinder::BitsToRepresent(), filterCSVwithJSON::copy, spr::find(), newFWLiteAna::found, hcalSimParameters_cfi::hb, compareTotals::hist, mps_fire::i, cuy::ii, createfilelist::int, l1tmetemu::kPtMagSize, dqm-mbProfile::log, LaserClient_cfi::nbins, DiDispStaMuonMonitor_cfi::pt, HLT_2023v12_cff::track, validateGeometry_cfg::valid, and w().
Referenced by VertexProducer::produce().
void l1tVertexFinder::VertexFinder::fastHistoLooseAssociation | ( | ) |
High pT Vertex Algorithm.
Definition at line 608 of file VertexFinder.cc.
References funct::abs(), HLT_2023v12_cff::track, and bphysicsOniaDQM_cfi::vertex.
Referenced by VertexProducer::produce().
void l1tVertexFinder::VertexFinder::findPrimaryVertex | ( | ) |
Find the primary vertex.
Definition at line 445 of file VertexFinder.cc.
References HLT_2023v12_cff::distance, l1tVertexFinder::RecoVertex< T >::pt(), and l1t::VertexWord::pt().
Referenced by VertexProducer::produce().
|
inline |
Accessors.
Storage for tracks out of the L1 Track finder
Definition at line 49 of file VertexFinder.h.
References fitTracks_.
Referenced by VertexFinder().
void l1tVertexFinder::VertexFinder::GapClustering | ( | ) |
Gap Clustering Algorithm.
Definition at line 65 of file VertexFinder.cc.
References mps_fire::i, l1tVertexFinder::Vertex::insert(), l1tVertexFinder::Vertex::numTracks(), or, jetUpdater_cfi::sort, and HltBtagValidation_cff::Vertex.
Referenced by VertexProducer::produce().
void l1tVertexFinder::VertexFinder::HPV | ( | ) |
High pT Vertex Algorithm.
Definition at line 376 of file VertexFinder.cc.
References funct::abs(), dqmdumpme::first, jetUpdater_cfi::sort, HLT_2023v12_cff::track, and bphysicsOniaDQM_cfi::vertex.
Referenced by VertexProducer::produce().
|
inline |
Number of iterations.
Definition at line 51 of file VertexFinder.h.
References fitTracks_, and iterations_.
void l1tVertexFinder::VertexFinder::Kmeans | ( | ) |
Kmeans Algorithm.
Definition at line 401 of file VertexFinder.cc.
References funct::abs(), HLT_2023v12_cff::distance, mps_fire::i, l1ctLayer2EG_cff::id, fastsim::Constants::NA, and HLT_2023v12_cff::track.
Referenced by VertexProducer::produce().
float l1tVertexFinder::VertexFinder::maxDistance | ( | RecoVertex<> | cluster0, |
RecoVertex<> | cluster1 | ||
) |
Find maximum distance in two clusters of tracks.
Definition at line 83 of file VertexFinder.cc.
References funct::abs(), HLT_2023v12_cff::distance, and l1tVertexFinder::RecoVertex< T >::tracks().
float l1tVertexFinder::VertexFinder::meanDistance | ( | RecoVertex<> | cluster0, |
RecoVertex<> | cluster1 | ||
) |
Find average distance in two clusters of tracks.
Definition at line 109 of file VertexFinder.cc.
References funct::abs(), HLT_2023v12_cff::distance, l1tVertexFinder::RecoVertex< T >::numTracks(), and l1tVertexFinder::RecoVertex< T >::tracks().
float l1tVertexFinder::VertexFinder::minDistance | ( | RecoVertex<> | cluster0, |
RecoVertex<> | cluster1 | ||
) |
Find minimum distance in two clusters of tracks.
Definition at line 96 of file VertexFinder.cc.
References funct::abs(), HLT_2023v12_cff::distance, and l1tVertexFinder::RecoVertex< T >::tracks().
|
inline |
Storage for tracks out of the L1 Track finder.
Definition at line 53 of file VertexFinder.h.
References fitTracks_.
|
inline |
|
inline |
Number of reconstructed vertices.
Definition at line 57 of file VertexFinder.h.
References vertices_.
|
inline |
Number of emulation vertices.
Definition at line 59 of file VertexFinder.h.
References verticesEmulation_.
|
inline |
Reconstructed primary vertex.
Definition at line 62 of file VertexFinder.h.
References l1tVertexFinder::Emulation, pv_index_, settings_, l1tVertexFinder::Simulation, vertices_, verticesEmulation_, and l1tVertexFinder::AlgoSettings::vx_precision().
|
inline |
Reconstructed Primary Vertex Id.
Definition at line 73 of file VertexFinder.h.
References pv_index_.
void l1tVertexFinder::VertexFinder::printHistogram | ( | stream_type & | stream, |
std::vector< data_type > | data, | ||
int | width = 80 , |
||
int | minimum = 0 , |
||
int | maximum = -1 , |
||
std::string | title = "" , |
||
std::string | color = "" |
||
) |
Print an ASCII histogram.
Definition at line 465 of file VertexFinder.cc.
References edmScanValgrind::buffer, data, nano_mu_digi_cff::float, mps_fire::i, writeEcalDQMStatus::interval, mps_splice::line, SiStripPI::max, EcalTangentSkim_cfg::o, MillePedeFileConverter_cfg::out, pfClustersFromCombinedCaloHF_cfi::scale, cms::cuda::stream, AlCaHLTBitMon_QueryRunRegistry::string, runGCPTkAlMap::title, contentValuesCheck::values, ApeEstimator_cff::width, x, and SiPixelPI::zero.
void l1tVertexFinder::VertexFinder::PVR | ( | ) |
Find maximum distance in two clusters of tracks.
Definition at line 246 of file VertexFinder.cc.
References funct::abs(), or, HLT_2023v12_cff::track, bphysicsOniaDQM_cfi::vertex, and l1tVertexFinder::L1Track::z0().
Referenced by VertexProducer::produce().
void l1tVertexFinder::VertexFinder::sortVerticesInPt | ( | ) |
Sort vertices in pT.
Definition at line 572 of file VertexFinder.cc.
References l1tVertexFinder::RecoVertex< T >::pt(), l1t::VertexWord::pt(), and jetUpdater_cfi::sort.
Referenced by VertexProducer::produce().
void l1tVertexFinder::VertexFinder::sortVerticesInZ0 | ( | ) |
Sort vertices in z.
Definition at line 585 of file VertexFinder.cc.
References jetUpdater_cfi::sort, l1tVertexFinder::RecoVertex< T >::z0(), and l1t::VertexWord::z0().
|
inline |
Definition at line 120 of file VertexFinder.h.
References dqmdumpme::first, dqmdumpme::last, gpuPixelDoublets::stride, and relativeConstraints::value.
|
inline |
Returns the z positions of the reconstructed primary vertices.
Definition at line 75 of file VertexFinder.h.
References vertices_.
Referenced by VertexProducer::produce().
|
inline |
Returns the emulation primary vertices.
Definition at line 77 of file VertexFinder.h.
References verticesEmulation_.
Referenced by VertexProducer::produce().
|
private |
Definition at line 147 of file VertexFinder.h.
Referenced by fitTracks(), iterationsPerTrack(), numInputTracks(), and VertexFinder().
|
private |
Definition at line 149 of file VertexFinder.h.
Referenced by iterationsPerTrack(), and numIterations().
|
private |
Definition at line 146 of file VertexFinder.h.
|
private |
Definition at line 148 of file VertexFinder.h.
Referenced by PrimaryVertex(), and primaryVertexId().
|
private |
Definition at line 143 of file VertexFinder.h.
Referenced by PrimaryVertex(), and VertexFinder().
|
private |
Definition at line 144 of file VertexFinder.h.
Referenced by numVertices(), PrimaryVertex(), and vertices().
|
private |
Definition at line 145 of file VertexFinder.h.
Referenced by numVerticesEmulation(), PrimaryVertex(), and verticesEmulation().