#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< CachingVertex< 5 > > &, const std::vector< reco::TransientTrack > &primaries=std::vector< reco::TransientTrack >()) |
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< 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 100 of file MultiVertexFitter.h.
|
private |
Definition at line 99 of file MultiVertexFitter.h.
typedef std::map<int, double> MultiVertexFitter::SeedToWeightMap |
Definition at line 42 of file MultiVertexFitter.h.
typedef std::map<reco::TransientTrack, SeedToWeightMap> MultiVertexFitter::TrackAndSeedToWeightMap |
Definition at line 43 of file MultiVertexFitter.h.
typedef std::pair<reco::TransientTrack, float> MultiVertexFitter::TrackAndWeight |
Definition at line 41 of file MultiVertexFitter.h.
MultiVertexFitter::MultiVertexFitter | ( | const AnnealingSchedule & | sched = DefaultMVFAnnealing() , |
const LinearizationPointFinder & | seeder = DefaultLinearizationPointFinder() , |
||
float | revive_below = -1. |
||
) |
Definition at line 266 of file MultiVertexFitter.cc.
MultiVertexFitter::MultiVertexFitter | ( | const MultiVertexFitter & | o | ) |
Definition at line 271 of file MultiVertexFitter.cc.
MultiVertexFitter::~MultiVertexFitter | ( | ) |
Definition at line 277 of file MultiVertexFitter.cc.
References theAssComp, and theSeeder.
|
private |
Definition at line 79 of file MultiVertexFitter.cc.
|
private |
Definition at line 103 of file MultiVertexFitter.cc.
References mps_fire::i, and PDWG_EXOHSCP_cff::tracks.
|
private |
Definition at line 91 of file MultiVertexFitter.cc.
References HLT_FULL_cff::track, PDWG_EXOHSCP_cff::tracks, and extraflags_cff::vtx.
|
private |
Definition at line 116 of file MultiVertexFitter.cc.
References gather_cfg::cout, submitPVResolutionJobs::err, mps_fire::i, HLT_FULL_cff::track, PDWG_EXOHSCP_cff::tracks, KalmanVertexFitter::vertex(), VertexTrackFactory< N >::vertexTrack(), extraflags_cff::vtx, and mps_merge::weight.
|
private |
Definition at line 474 of file MultiVertexFitter.cc.
References AnnealingSchedule::anneal(), gather_cfg::cout, dqmiodatasetharvest::ctr, mps_fire::i, AnnealingSchedule::isAnnealed(), printWeights(), resetSeedNr(), runTheMatrix::ret, theAssComp, theVertexStates, updateSeeds(), trackerHitRTTI::vector, and verbose.
Referenced by trackingPlots.Iteration::modules().
|
private |
Definition at line 541 of file MultiVertexFitter.cc.
References gather_cfg::cout, mps_fire::i, printWeights(), theReviveBelow, theTracks, theVertexStates, theWeights, trackerHitRTTI::vector, and verbose.
|
private |
Definition at line 530 of file MultiVertexFitter.cc.
References gather_cfg::cout.
Referenced by updateSeeds().
|
private |
Definition at line 520 of file MultiVertexFitter.cc.
References gather_cfg::cout, thePrimaries, and theTracks.
Referenced by fit(), lostVertexClaimer(), and updateWeights().
|
private |
Definition at line 503 of file MultiVertexFitter.cc.
References a, b, gather_cfg::cout, fileCollector::seed, submitPVValidationJobs::t, theVertexStates, theWeights, heppy_batch::val, and trackerHitRTTI::vector.
|
private |
|
private |
|
private |
Definition at line 356 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(), fileCollector::seed, seedNr(), theCache, thePrimaries, theTracks, theVertexStates, theWeights, HLT_FULL_cff::track, updateWeights(), trackerHitRTTI::vector, 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 282 of file MultiVertexFitter.cc.
References gather_cfg::cout, AnnealingSchedule::cutoff(), KalmanVertexTrackCompatibilityEstimator< N >::estimate(), dqmMemoryStats::float, LinTrackCache::linTrack(), AnnealingSchedule::phi(), printWeights(), mps_fire::result, fileCollector::seed, theAssComp, theCache, thePrimaries, theTracks, theVertexStates, theWeights, trackerHitRTTI::vector, verbose, w, and mps_merge::weight.
Referenced by updateSeeds().
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. \paramname primaries: supply tracks which are hard coded to the primary vertex.
Definition at line 202 of file MultiVertexFitter.cc.
References clear(), gather_cfg::cout, FrontierConditions_GlobalTag_cff::file, L1TowerCalibrationProducer_cfi::fit, mps_fire::i, TransientVertex::originalTracks(), trackerHitRTTI::vector, and extraflags_cff::vtx.
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. \paramname primaries: supply tracks which are hard coded to the primary vertex.
Definition at line 233 of file MultiVertexFitter.cc.
References clear(), FrontierConditions_GlobalTag_cff::file, L1TowerCalibrationProducer_cfi::fit, mps_fire::i, PDWG_EXOHSCP_cff::tracks, trackerHitRTTI::vector, 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. \paramname primaries: supply tracks which are hard coded to the primary vertex.
Definition at line 251 of file MultiVertexFitter.cc.
References clear(), L1TowerCalibrationProducer_cfi::fit, PDWG_EXOHSCP_cff::tracks, trackerHitRTTI::vector, and verbose.
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 180 of file MultiVertexFitter.cc.
References MillePedeFileConverter_cfg::e, createJobs::tmp, pwdgSkimBPark_cfi::vertices, extraflags_cff::vtx, and w.
|
private |
Definition at line 110 of file MultiVertexFitter.h.
Referenced by fit(), updateWeights(), and ~MultiVertexFitter().
|
private |
Definition at line 113 of file MultiVertexFitter.h.
Referenced by updateSeeds(), and updateWeights().
|
private |
Definition at line 109 of file MultiVertexFitter.h.
Referenced by printWeights(), updateSeeds(), and updateWeights().
|
private |
Definition at line 107 of file MultiVertexFitter.h.
Referenced by lostVertexClaimer().
|
private |
Definition at line 111 of file MultiVertexFitter.h.
Referenced by ~MultiVertexFitter().
|
private |
Definition at line 108 of file MultiVertexFitter.h.
Referenced by lostVertexClaimer(), printWeights(), updateSeeds(), and updateWeights().
|
private |
Definition at line 106 of file MultiVertexFitter.h.
|
private |
Definition at line 105 of file MultiVertexFitter.h.
Referenced by fit(), lostVertexClaimer(), printWeights(), updateSeeds(), and updateWeights().
|
private |
Definition at line 112 of file MultiVertexFitter.h.
Referenced by lostVertexClaimer(), printWeights(), updateSeeds(), and updateWeights().