#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 mps_fire::i.
|
private |
Definition at line 101 of file MultiVertexFitter.cc.
References HiIsolationCommonParameters_cff::track, and badGlobalMuonTaggersAOD_cff::vtx.
|
private |
Definition at line 140 of file MultiVertexFitter.cc.
References gather_cfg::cout, mps_fire::i, HiIsolationCommonParameters_cff::track, KalmanVertexFitter::vertex(), VertexTrackFactory< N >::vertexTrack(), badGlobalMuonTaggersAOD_cff::vtx, and mps_merge::weight.
|
private |
Definition at line 582 of file MultiVertexFitter.cc.
References AnnealingSchedule::anneal(), gather_cfg::cout, mps_fire::i, AnnealingSchedule::isAnnealed(), printWeights(), resetSeedNr(), theAssComp, theVertexStates, updateSeeds(), and verbose.
Referenced by trackingPlots.Iteration::modules().
|
private |
Definition at line 659 of file MultiVertexFitter.cc.
References gather_cfg::cout, mps_fire::i, printWeights(), theReviveBelow, theTracks, theVertexStates, theWeights, and verbose.
|
private |
Definition at line 647 of file MultiVertexFitter.cc.
References gather_cfg::cout.
Referenced by updateSeeds().
|
private |
Definition at line 632 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 a, b, gather_cfg::cout, SurveyInfoScenario_cff::seed, theVertexStates, theWeights, and heppy_batch::val.
|
private |
|
private |
|
private |
Definition at line 437 of file MultiVertexFitter.cc.
References gather_cfg::cout, MillePedeFileConverter_cfg::e, cppFunctionSkipper::exception, FrontierConditions_GlobalTag_cff::file, mps_fire::i, LinTrackCache::linTrack(), mag(), CachingVertex< N >::position(), printSeeds(), SurveyInfoScenario_cff::seed, seedNr(), theCache, thePrimaries, theTracks, theVertexStates, theWeights, HiIsolationCommonParameters_cff::track, updateWeights(), 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(), objects.autophobj::float, LinTrackCache::linTrack(), AnnealingSchedule::phi(), CachingVertex< N >::position(), printWeights(), mps_fire::result, SurveyInfoScenario_cff::seed, theAssComp, theCache, thePrimaries, theTracks, theVertexStates, theWeights, verbose, w, and mps_merge::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(), FrontierConditions_GlobalTag_cff::file, trackingPlots::fit, mps_fire::i, l1t::tracks, and 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(), trackingPlots::fit, l1t::tracks, and 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, FrontierConditions_GlobalTag_cff::file, trackingPlots::fit, mps_fire::i, TransientVertex::originalTracks(), and badGlobalMuonTaggersAOD_cff::vtx.
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 MillePedeFileConverter_cfg::e, tmp, electrons_cff::vertices, badGlobalMuonTaggersAOD_cff::vtx, 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().
|
private |
Definition at line 118 of file MultiVertexFitter.h.
Referenced by lostVertexClaimer(), printWeights(), updateSeeds(), and updateWeights().