#include <TrimmedVertexFinder.h>
Public Types | |
typedef ReferenceCountingPointer < LinearizedTrackState< 5 > > | RefCountedLinearizedTrackState |
typedef ReferenceCountingPointer < VertexTrack< 5 > > | RefCountedVertexTrack |
Public Member Functions | |
TrimmedVertexFinder * | clone () const |
void | setTrackCompatibilityCut (float cut) |
float | trackCompatibilityCut () const |
TrimmedVertexFinder (const VertexFitter< 5 > *vf, const VertexUpdator< 5 > *vu, const VertexTrackCompatibilityEstimator< 5 > *ve) | |
TrimmedVertexFinder (const TrimmedVertexFinder &other) | |
std::vector< TransientVertex > | vertices (std::vector< reco::TransientTrack > &remain) const |
std::vector< TransientVertex > | vertices (std::vector< reco::TransientTrack > &remain, const reco::BeamSpot &s, bool use_beamspot=true) const |
~TrimmedVertexFinder () | |
Private Member Functions | |
std::vector < RefCountedVertexTrack > ::iterator | theWorst (const CachingVertex< 5 > &vtx, std::vector< RefCountedVertexTrack > &vtxTracks, float cut) const |
Private Attributes | |
VertexTrackCompatibilityEstimator< 5 > * | theEstimator |
VertexFitter< 5 > * | theFitter |
float | theMinProb |
VertexUpdator< 5 > * | theUpdator |
Algorithm to find 0 or 1 cluster of tracks that are compatible with a single vertex, among remain
, the initial set of tracks. A track is declared incompatible with the vertex if the chi-squared probability between the track and the vertex is smaller than min
. The algorithm applied is:
1) fit a single vertex with all tracks;
2) remove incompatible tracks 1 by 1 starting from the least compatible one.
On output, remain
contains the incompatible tracks. This algorithm has 1 parameter that can be set at runtime via the corresponding set() method:
Definition at line 28 of file TrimmedVertexFinder.h.
typedef ReferenceCountingPointer<LinearizedTrackState<5> > TrimmedVertexFinder::RefCountedLinearizedTrackState |
Definition at line 33 of file TrimmedVertexFinder.h.
Definition at line 32 of file TrimmedVertexFinder.h.
TrimmedVertexFinder::TrimmedVertexFinder | ( | const VertexFitter< 5 > * | vf, |
const VertexUpdator< 5 > * | vu, | ||
const VertexTrackCompatibilityEstimator< 5 > * | ve | ||
) |
Definition at line 9 of file TrimmedVertexFinder.cc.
Referenced by clone().
TrimmedVertexFinder::TrimmedVertexFinder | ( | const TrimmedVertexFinder & | other | ) |
Copy constructor, needed to handle copy of pointer data members correctly
Definition at line 17 of file TrimmedVertexFinder.cc.
TrimmedVertexFinder::~TrimmedVertexFinder | ( | ) |
Definition at line 26 of file TrimmedVertexFinder.cc.
References theEstimator, theFitter, and theUpdator.
|
inline |
clone method
Definition at line 68 of file TrimmedVertexFinder.h.
References TrimmedVertexFinder().
|
inline |
Set parameter
Definition at line 64 of file TrimmedVertexFinder.h.
References GOODCOLL_filter_cfg::cut, and theMinProb.
Referenced by ConfigurableTrimmedVertexFinder::vertexCandidates().
|
private |
Definition at line 153 of file TrimmedVertexFinder.cc.
References ChiSquaredProbability(), VertexTrackCompatibilityEstimator< N >::estimate(), CachingVertex< N >::isValid(), VertexUpdator< N >::remove(), query::result, theEstimator, theUpdator, and CachingVertex< N >::tracks().
Referenced by vertices().
|
inline |
std::vector< TransientVertex > TrimmedVertexFinder::vertices | ( | std::vector< reco::TransientTrack > & | remain | ) | const |
Make 0 or 1 vertex On output, remain
contains the incompatible tracks
Definition at line 33 of file TrimmedVertexFinder.cc.
Referenced by ConfigurableTrimmedVertexFinder::vertexCandidates().
std::vector< TransientVertex > TrimmedVertexFinder::vertices | ( | std::vector< reco::TransientTrack > & | remain, |
const reco::BeamSpot & | s, | ||
bool | use_beamspot = true |
||
) | const |
Same as above, only with the extra information of the beamspot constraint.
Definition at line 40 of file TrimmedVertexFinder.cc.
References cond::ecalcond::all, Exception, newFWLiteAna::found, i, CachingVertex< N >::isValid(), edmStreamStallGrapher::t, theFitter, theMinProb, theWorst(), PerigeeLinearizedTrackState::track(), CachingVertex< N >::tracks(), and VertexFitter< N >::vertex().
|
private |
Definition at line 85 of file TrimmedVertexFinder.h.
Referenced by theWorst(), and ~TrimmedVertexFinder().
|
private |
Definition at line 83 of file TrimmedVertexFinder.h.
Referenced by vertices(), and ~TrimmedVertexFinder().
|
private |
Definition at line 86 of file TrimmedVertexFinder.h.
Referenced by setTrackCompatibilityCut(), trackCompatibilityCut(), and vertices().
|
private |
Definition at line 84 of file TrimmedVertexFinder.h.
Referenced by theWorst(), and ~TrimmedVertexFinder().