#include <MultiVertexFitter.h>
Public Types | |
typedef std::map< int, double > | SeedToWeightMap |
typedef std::map < reco::TransientTrack, SeedToWeightMap > | TrackAndSeedToWeightMap |
typedef std::pair < reco::TransientTrack, float > | TrackAndWeight |
Public Member Functions | |
MultiVertexFitter (const AnnealingSchedule &sched=DefaultMVFAnnealing(), const LinearizationPointFinder &seeder=DefaultLinearizationPointFinder(), float revive_below=-1.) | |
MultiVertexFitter (const MultiVertexFitter &) | |
std::vector< CachingVertex< 5 > > | vertices (const std::vector< std::vector< reco::TransientTrack > > &, const std::vector< reco::TransientTrack > &primaries=std::vector< reco::TransientTrack >()) |
std::vector< CachingVertex< 5 > > | vertices (const std::vector< std::vector< TrackAndWeight > > &, const std::vector< reco::TransientTrack > &primaries=std::vector< reco::TransientTrack >()) |
std::vector< CachingVertex< 5 > > | vertices (const std::vector< CachingVertex< 5 > > &, const std::vector< reco::TransientTrack > &primaries=std::vector< reco::TransientTrack >()) |
std::vector< CachingVertex< 5 > > | vertices (const std::vector< TransientVertex > &, const std::vector< reco::TransientTrack > &primaries=std::vector< reco::TransientTrack >()) |
~MultiVertexFitter () | |
Private Types | |
typedef ReferenceCountingPointer < LinearizedTrackState< 5 > > | RefCountedLinearizedTrackState |
typedef CachingVertex < 5 >::RefCountedVertexTrack | RefCountedVertexTrack |
Private Member Functions | |
void | clear () |
void | createPrimaries (const std::vector< reco::TransientTrack > &tracks) |
void | createSeed (const std::vector< reco::TransientTrack > &tracks) |
void | createSeed (const std::vector< TrackAndWeight > &tracks) |
std::vector< CachingVertex< 5 > > | fit () |
void | lostVertexClaimer () |
void | printSeeds () const |
void | printWeights () const |
void | printWeights (const reco::TransientTrack &) const |
void | resetSeedNr () |
int | seedNr () |
bool | updateSeeds () |
void | updateWeights () |
Private Attributes | |
AnnealingSchedule * | theAssComp |
LinTrackCache | theCache |
std::set< reco::TransientTrack > | thePrimaries |
float | theReviveBelow |
LinearizationPointFinder * | theSeeder |
std::vector< reco::TransientTrack > | theTracks |
int | theVertexStateNr |
std::vector< std::pair< int, CachingVertex< 5 > > > | theVertexStates |
TrackAndSeedToWeightMap | theWeights |
fits n vertices in parallel, associating weights for every track-vertex std::pair. The special constructor's arguments take precedence over the SimpleConfigurables.
SimpleConfigurables:
MultiVertexFitter:Debug = 0 MultiVertexFitter:DisplacementLimit = 0.00001 MultiVertexFitter:MaxIterations = 30 MultiVertexFitter:ClaimLostVertices = true MultiVertexFitter:MinimumWeightFraction = 1e-6 MultiVertexFitter:ReviveBelow = 0.3 MultiVertexFitter:DiscardLightWeights = true
Definition at line 15 of file MultiVertexFitter.h.
|
private |
Definition at line 106 of file MultiVertexFitter.h.
|
private |
Definition at line 105 of file MultiVertexFitter.h.
typedef std::map< int , double > MultiVertexFitter::SeedToWeightMap |
Definition at line 44 of file MultiVertexFitter.h.
typedef std::map< reco::TransientTrack, SeedToWeightMap > MultiVertexFitter::TrackAndSeedToWeightMap |
Definition at line 45 of file MultiVertexFitter.h.
typedef std::pair< reco::TransientTrack, float > MultiVertexFitter::TrackAndWeight |
Definition at line 43 of file MultiVertexFitter.h.
MultiVertexFitter::MultiVertexFitter | ( | const AnnealingSchedule & | sched = DefaultMVFAnnealing() , |
const LinearizationPointFinder & | seeder = DefaultLinearizationPointFinder() , |
||
float | revive_below = -1. |
||
) |
Definition at line 334 of file MultiVertexFitter.cc.
MultiVertexFitter::MultiVertexFitter | ( | const MultiVertexFitter & | o | ) |
Definition at line 341 of file MultiVertexFitter.cc.
MultiVertexFitter::~MultiVertexFitter | ( | ) |
|
private |
Definition at line 88 of file MultiVertexFitter.cc.
|
private |
Definition at line 118 of file MultiVertexFitter.cc.
References i.
|
private |
Definition at line 101 of file MultiVertexFitter.cc.
|
private |
Definition at line 140 of file MultiVertexFitter.cc.
References gather_cfg::cout, i, python.multivaluedict::sort(), KalmanVertexFitter::vertex(), VertexTrackFactory< N >::vertexTrack(), and histoStyle::weight.
|
private |
Definition at line 582 of file MultiVertexFitter.cc.
References AnnealingSchedule::anneal(), gather_cfg::cout, i, AnnealingSchedule::isAnnealed(), printWeights(), resetSeedNr(), run_regression::ret, theAssComp, theVertexStates, updateSeeds(), and validate_alignment_devdb10_cfg::verbose.
|
private |
Definition at line 653 of file MultiVertexFitter.cc.
References gather_cfg::cout, i, printWeights(), theReviveBelow, theTracks, theVertexStates, theWeights, and validate_alignment_devdb10_cfg::verbose.
|
private |
Definition at line 641 of file MultiVertexFitter.cc.
References gather_cfg::cout.
Referenced by updateSeeds().
|
private |
Definition at line 626 of file MultiVertexFitter.cc.
References gather_cfg::cout, thePrimaries, and theTracks.
Referenced by fit(), lostVertexClaimer(), and updateWeights().
|
private |
Definition at line 614 of file MultiVertexFitter.cc.
References gather_cfg::cout, fileCollector::seed, edmStreamStallGrapher::t, theVertexStates, and theWeights.
|
private |
|
private |
|
private |
Definition at line 437 of file MultiVertexFitter.cc.
References gather_cfg::cout, alignCSCRings::e, cppFunctionSkipper::exception, mergeVDriftHistosByStation::file, i, LinTrackCache::linTrack(), mag(), CachingVertex< N >::position(), printSeeds(), fileCollector::seed, seedNr(), theCache, thePrimaries, theTracks, theVertexStates, theWeights, updateWeights(), validate_alignment_devdb10_cfg::verbose, KalmanVertexFitter::vertex(), and VertexTrackFactory< N >::vertexTrack().
Referenced by fit().
|
private |
add the primary only tracks to primary vertex only.
now add "free tracks" to all vertices
Definition at line 352 of file MultiVertexFitter.cc.
References gather_cfg::cout, AnnealingSchedule::cutoff(), KalmanVertexTrackCompatibilityEstimator< N >::estimate(), LinTrackCache::linTrack(), AnnealingSchedule::phi(), CachingVertex< N >::position(), printWeights(), query::result, fileCollector::seed, theAssComp, theCache, thePrimaries, theTracks, theVertexStates, theWeights, validate_alignment_devdb10_cfg::verbose, w, and histoStyle::weight.
Referenced by updateSeeds().
vector< CachingVertex< 5 > > MultiVertexFitter::vertices | ( | const std::vector< std::vector< reco::TransientTrack > > & | tracks, |
const std::vector< reco::TransientTrack > & | primaries = std::vector < reco::TransientTrack > () |
||
) |
Supply simple clusters of reco::TransientTracks. primaries: supply tracks which are hard coded to the primary vertex.
Definition at line 290 of file MultiVertexFitter.cc.
References hitfit::clear(), mergeVDriftHistosByStation::file, i, testEve_cfg::tracks, and validate_alignment_devdb10_cfg::verbose.
Referenced by MultiVertexReconstructor::vertices().
vector< CachingVertex< 5 > > MultiVertexFitter::vertices | ( | const std::vector< std::vector< TrackAndWeight > > & | tracks, |
const std::vector< reco::TransientTrack > & | primaries = std::vector < reco::TransientTrack > () |
||
) |
Supply clusters of tracks with weights, association weights of the other vertices is considered zero. FIXME weights are currently ignored. primaries: supply tracks which are hard coded to the primary vertex.
Definition at line 314 of file MultiVertexFitter.cc.
References hitfit::clear(), testEve_cfg::tracks, and validate_alignment_devdb10_cfg::verbose.
vector< CachingVertex< 5 > > MultiVertexFitter::vertices | ( | const std::vector< CachingVertex< 5 > > & | initials, |
const std::vector< reco::TransientTrack > & | primaries = std::vector < reco::TransientTrack > () |
||
) |
Supply full CachingVertices; CachingVertices are the first seeds. primaries: supply tracks which are hard coded to the primary vertex.
Definition at line 251 of file MultiVertexFitter.cc.
References hitfit::clear(), gather_cfg::cout, mergeVDriftHistosByStation::file, i, and TransientVertex::originalTracks().
vector< CachingVertex< 5 > > MultiVertexFitter::vertices | ( | const std::vector< TransientVertex > & | vtces, |
const std::vector< reco::TransientTrack > & | primaries = std::vector < reco::TransientTrack > () |
||
) |
Same as above.
Definition at line 221 of file MultiVertexFitter.cc.
References alignCSCRings::e, tmp, and w.
|
private |
Definition at line 116 of file MultiVertexFitter.h.
Referenced by fit(), updateWeights(), and ~MultiVertexFitter().
|
private |
Definition at line 119 of file MultiVertexFitter.h.
Referenced by updateSeeds(), and updateWeights().
|
private |
Definition at line 115 of file MultiVertexFitter.h.
Referenced by printWeights(), updateSeeds(), and updateWeights().
|
private |
Definition at line 113 of file MultiVertexFitter.h.
Referenced by lostVertexClaimer().
|
private |
Definition at line 117 of file MultiVertexFitter.h.
Referenced by ~MultiVertexFitter().
|
private |
Definition at line 114 of file MultiVertexFitter.h.
Referenced by lostVertexClaimer(), printWeights(), updateSeeds(), and updateWeights().
|
private |
Definition at line 112 of file MultiVertexFitter.h.
|
private |
Definition at line 111 of file MultiVertexFitter.h.
Referenced by fit(), lostVertexClaimer(), printWeights(), updateSeeds(), and updateWeights().
|
mutableprivate |
Definition at line 118 of file MultiVertexFitter.h.
Referenced by lostVertexClaimer(), printWeights(), updateSeeds(), and updateWeights().