#include <GsfVertexSmoother.h>
Public Member Functions | |
virtual VertexSmoother< 5 > * | clone () const |
GsfVertexSmoother (bool limit, const GsfVertexMerger *merger) | |
virtual CachingVertex< 5 > | smooth (const CachingVertex< 5 > &vertex) const |
const VertexUpdator< 5 > * | vertexUpdator () const |
virtual | ~GsfVertexSmoother () |
Public Member Functions inherited from VertexSmoother< 5 > | |
virtual CachingVertex< N > | smooth (const CachingVertex< N > &vertex) const =0 |
VertexSmoother () | |
virtual | ~VertexSmoother () |
Private Types | |
typedef VertexTrack < 5 >::AlgebraicMatrix3M | AlgebraicMatrix3M |
typedef VertexTrack < 5 >::AlgebraicSymMatrixOO | AlgebraicSymMatrixOO |
typedef std::vector < RefCountedLinearizedTrackState > | LTC |
typedef VertexTrack < 5 >::RefCountedLinearizedTrackState | RefCountedLinearizedTrackState |
typedef VertexTrack < 5 >::RefCountedRefittedTrackState | RefCountedRefittedTrackState |
typedef CachingVertex < 5 >::RefCountedVertexTrack | RefCountedVertexTrack |
typedef std::pair < TrackWeightPair, VtxTrkChi2Pair > | RefittedTrackComponent |
typedef std::pair < RefCountedRefittedTrackState, VtxTrkChi2Pair > | TrackChi2Pair |
typedef std::pair < RefCountedRefittedTrackState, double > | TrackWeightPair |
typedef std::vector< VertexState > | VSC |
typedef std::pair< double, double > | VtxTrkChi2Pair |
Private Member Functions | |
TrackChi2Pair | assembleTrackComponents (const std::vector< RefittedTrackComponent > &trackComponents, const GlobalPoint &referencePosition) const |
RefittedTrackComponent | createNewComponent (const VertexState &oldVertex, const RefCountedLinearizedTrackState linTrack, float weight) const |
VertexState | meanVertex (const VertexState &vertexA, const VertexState &vertexB) const |
double | priorVertexChi2 (const VertexState priorVertex, const VertexState fittedVertex) const |
TrackChi2Pair | vertexAndTrackUpdate (const VertexState &oldVertex, const RefCountedVertexTrack track, const GlobalPoint &referencePosition) const |
The class which handles the track-refit and smoothed chi**2 calculations for the Gaussian Sum vertex fit. The track-to-track covariance matrix calculation is not yet done.
Definition at line 23 of file GsfVertexSmoother.h.
|
private |
Definition at line 66 of file GsfVertexSmoother.h.
|
private |
Definition at line 67 of file GsfVertexSmoother.h.
|
private |
Definition at line 70 of file GsfVertexSmoother.h.
|
private |
Definition at line 64 of file GsfVertexSmoother.h.
|
private |
Definition at line 65 of file GsfVertexSmoother.h.
|
private |
Definition at line 63 of file GsfVertexSmoother.h.
|
private |
Definition at line 74 of file GsfVertexSmoother.h.
|
private |
Definition at line 73 of file GsfVertexSmoother.h.
|
private |
Definition at line 72 of file GsfVertexSmoother.h.
|
private |
Definition at line 69 of file GsfVertexSmoother.h.
|
private |
Definition at line 71 of file GsfVertexSmoother.h.
GsfVertexSmoother::GsfVertexSmoother | ( | bool | limit, |
const GsfVertexMerger * | merger | ||
) |
The constructor
limit | Specifies whether the number of components of the vertex should be limited |
Definition at line 6 of file GsfVertexSmoother.cc.
References GsfVertexMerger::clone(), limitComponents, and theMerger.
Referenced by clone().
|
inlinevirtual |
Definition at line 35 of file GsfVertexSmoother.h.
|
private |
This method assembles all the components of the refitted track into one refitted track state, normalizing the components. Also, it adds the chi2 track-components increments.
Definition at line 135 of file GsfVertexSmoother.cc.
Referenced by vertexAndTrackUpdate().
|
inlinevirtual |
Clone method
Implements VertexSmoother< 5 >.
Definition at line 56 of file GsfVertexSmoother.h.
References GsfVertexSmoother().
|
private |
This method does the smoothing of one track component with one vertex component. And the track-component-chi2 increment and weight of new component in mixture.
Definition at line 179 of file GsfVertexSmoother.cc.
References GsfVertexWeightCalculator::calculate(), helper, kalmanVertexUpdator, KalmanVertexUpdator< N >::positionUpdate(), theVertexTrackUpdator, theWeightCalculator, KVFHelper< N >::trackParameterChi2(), KalmanVertexTrackUpdator< N >::trackRefit(), and KVFHelper< N >::vertexChi2().
Referenced by vertexAndTrackUpdate().
|
private |
Definition at line 205 of file GsfVertexSmoother.cc.
References VertexState::components().
Referenced by smooth().
|
private |
Methode which calculates the chi**2 between the prior and the fitted vertex. This method takes into account multiple states.
priorVertex | The prior vertex state |
fittedVertex | The fitted vertex state |
Definition at line 234 of file GsfVertexSmoother.cc.
References VertexState::components(), helper, and KVFHelper< N >::vertexChi2().
Referenced by smooth().
|
virtual |
Methode which will refit the tracks with the vertex constraint and calculate the smoothed vertex chi**2
vertex | is the final estimate of the vertex, as given by the last update. |
Definition at line 13 of file GsfVertexSmoother.cc.
References GsfVertexUpdator::add(), CachingVertex< N >::hasPrior(), i, limitComponents, meanVertex(), GsfVertexMerger::merge(), CachingVertex< N >::position(), priorVertexChi2(), CachingVertex< N >::priorVertexState(), theMerger, theUpdator, theVTFactory, testEve_cfg::tracks, CachingVertex< N >::tracks(), vertexAndTrackUpdate(), CachingVertex< N >::vertexState(), and VertexTrackFactory< N >::vertexTrack().
|
private |
Definition at line 96 of file GsfVertexSmoother.cc.
References assembleTrackComponents(), VertexState::components(), and createNewComponent().
Referenced by smooth().
|
inline |
|
private |
Definition at line 107 of file GsfVertexSmoother.h.
Referenced by createNewComponent(), and priorVertexChi2().
|
private |
Definition at line 102 of file GsfVertexSmoother.h.
Referenced by createNewComponent().
|
private |
Definition at line 99 of file GsfVertexSmoother.h.
Referenced by GsfVertexSmoother(), and smooth().
|
private |
Definition at line 103 of file GsfVertexSmoother.h.
|
private |
Definition at line 100 of file GsfVertexSmoother.h.
Referenced by GsfVertexSmoother(), and smooth().
|
private |
Definition at line 101 of file GsfVertexSmoother.h.
Referenced by smooth(), and vertexUpdator().
|
private |
Definition at line 104 of file GsfVertexSmoother.h.
Referenced by createNewComponent().
|
private |
Definition at line 106 of file GsfVertexSmoother.h.
Referenced by smooth().
|
private |
Definition at line 105 of file GsfVertexSmoother.h.
Referenced by createNewComponent().