![]() |
ATLAS Offline Software
|
An iterative vertex fitter, updating the vertex estimate with a single at the time. More...
#include <SequentialVertexFitter.h>
Public Member Functions | |
| virtual StatusCode | initialize () override |
| virtual StatusCode | finalize () override |
| SequentialVertexFitter (const std::string &t, const std::string &n, const IInterface *p) | |
| constructor | |
| virtual | ~SequentialVertexFitter () |
| destructor | |
| virtual xAOD::Vertex * | fit (const std::vector< const xAOD::TrackParticle * > &vectorTrk, const std::vector< const xAOD::NeutralParticle * > &vectorNeut, const Amg::Vector3D &startingPoint) const override |
| Interface for xAOD::TrackParticle and xAOD::NeutralParticle with starting point. | |
| virtual xAOD::Vertex * | fit (const std::vector< const xAOD::TrackParticle * > &vectorTrk, const Amg::Vector3D &startingPoint) const override |
| Interface for xAOD::TrackParticle with starting point. | |
| virtual xAOD::Vertex * | fit (const std::vector< const xAOD::TrackParticle * > &vectorTrk, const std::vector< const xAOD::NeutralParticle * > &vectorNeut, const xAOD::Vertex &constraint) const override |
| Interface for xAOD::TrackParticle and xAOD::NeutralParticle with vertex constraint the position of the constraint is ALWAYS the starting point. | |
| virtual xAOD::Vertex * | fit (const std::vector< const xAOD::TrackParticle * > &vectorTrk, const xAOD::Vertex &constraint) const override |
| Interface for xAOD::TrackParticle with vertex constraint the position of the constraint is ALWAYS the starting point. | |
| virtual xAOD::Vertex * | fit (const std::vector< const Trk::TrackParameters * > &perigeeList, const std::vector< const Trk::NeutralParameters * > &neutralPerigeeList, const Amg::Vector3D &startingPoint) const override |
| Vertex fit from list of track and neutral parameters and a starting point. | |
| virtual xAOD::Vertex * | fit (const std::vector< const Trk::TrackParameters * > ¶mList, const Amg::Vector3D &startingPoint) const override |
| Vertex fit from list of track and parameters and a starting point. | |
| virtual xAOD::Vertex * | fit (const std::vector< const Trk::TrackParameters * > &perigeeList, const std::vector< const Trk::NeutralParameters * > &neutralPerigeeList, const xAOD::Vertex &constraint) const override |
| Vertex fit from the vector of track and neutral parameters with a preliminary knowledge (vertex constraint) | |
| virtual xAOD::Vertex * | fit (const std::vector< const Trk::TrackParameters * > &perigeeList, const xAOD::Vertex &constraint) const override |
| virtual xAOD::Vertex * | fit (const std::vector< const Trk::TrackParameters * > &perigeeList, const std::vector< const Trk::NeutralParameters * > &neutralPerigeeList) const override |
| Additional fit methods. | |
| virtual xAOD::Vertex * | fit (const std::vector< const Trk::TrackParameters * > &perigeeList) const override |
| virtual std::unique_ptr< xAOD::Vertex > | fit (const EventContext &ctx, const std::vector< const xAOD::TrackParticle * > &vectorTrk, const Amg::Vector3D &startingPoint) const |
| Interface for xAOD::TrackParticle with starting point Event Context aware interface. | |
| virtual std::unique_ptr< xAOD::Vertex > | fit (const EventContext &ctx, const std::vector< const xAOD::TrackParticle * > &vectorTrk, const std::vector< const xAOD::NeutralParticle * > &vectorNeu, const Amg::Vector3D &startingPoint) const |
| Interface for xAOD::TrackParticle and xAOD::NeutralParticle with starting point. | |
| virtual std::unique_ptr< xAOD::Vertex > | fit (const EventContext &ctx, const std::vector< const xAOD::TrackParticle * > &vectorTrk, const std::vector< const xAOD::NeutralParticle * > &vectorNeu, const xAOD::Vertex &constraint) const |
| Interface for xAOD::TrackParticle and xAOD::NeutralParticle with vertex constraint the position of the constraint is ALWAYS the starting point Event Context aware method. | |
| virtual std::unique_ptr< xAOD::Vertex > | fit (const EventContext &ctx, const std::vector< const xAOD::TrackParticle * > &vectorTrk, const xAOD::Vertex &constraint) const |
| Interface for xAOD::TrackParticle with vertex constraint the position of the constraint is ALWAYS the starting point Event Context aware method. | |
| virtual std::unique_ptr< xAOD::Vertex > | fit (const EventContext &ctx, const std::vector< const Trk::TrackParameters * > &perigeeList, const std::vector< const Trk::NeutralParameters * > &neutralPerigeeList, const Amg::Vector3D &startingPoint) const |
| Interface for TrackParameters and NeutralParameters with starting point Event Context aware method. | |
| virtual std::unique_ptr< xAOD::Vertex > | fit (const EventContext &ctx, const std::vector< const Trk::TrackParameters * > &perigeeList, const Amg::Vector3D &startingPoint) const |
| Interface for TrackParameters with starting point Event Context aware method. | |
| virtual std::unique_ptr< xAOD::Vertex > | fit (const EventContext &ctx, const std::vector< const Trk::TrackParameters * > &perigeeList, const std::vector< const Trk::NeutralParameters * > &neutralPerigeeList, const xAOD::Vertex &constraint) const |
| Interface for TrackParameters and NeutralParameters with vertex constraint the position of the constraint is ALWAYS the starting point EventContext aware method. | |
| virtual std::unique_ptr< xAOD::Vertex > | fit (const EventContext &ctx, const std::vector< const Trk::TrackParameters * > &perigeeList, const xAOD::Vertex &constraint) const |
| Interface for TrackParameters with vertex constraint the position of the constraint is ALWAYS the starting point EventContext aware method. | |
| virtual std::unique_ptr< xAOD::Vertex > | fit (const EventContext &ctx, const std::vector< const Trk::TrackParameters * > &perigeeList, const std::vector< const Trk::NeutralParameters * > &neutralPerigeeList) const |
| Fit method using the VertexSeedFinder to estimate initial position of the vertex and taking it as a first linearization point (in iterative fitters). | |
| virtual std::unique_ptr< xAOD::Vertex > | fit (const EventContext &ctx, const std::vector< const Trk::TrackParameters * > &perigeeList) const |
| Fit method using the VertexSeedFinder to estimate initial position of the vertex and taking it as a first linearization point (in iterative fitters). | |
Private Member Functions | |
| std::vector< Trk::VxTrackAtVertex > | linearizeTracks (const std::vector< const Trk::TrackParameters * > &perigeeList, const std::vector< const Trk::NeutralParameters * > &neutralPerigeeList, const xAOD::Vertex &vrt) const |
| Internal method related to the linearization of tracks (initial linearization) | |
| void | reLinearizeTracks (std::vector< Trk::VxTrackAtVertex > &tracks, const Amg::Vector3D &vrt) const |
| Relinearization on iterations. | |
Private Attributes | |
| ToolHandle< IVertexUpdator > | m_Updator |
| ToolHandle< IVertexSmoother > | m_Smoother |
| ToolHandle< Trk::IVertexLinearizedTrackFactory > | m_LinTrkFactory |
| bool | m_doSmoothing |
| Flag controlling optional smoothing. | |
| unsigned int | m_maxStep |
| Max number of iterations to perform (in case of no convergence) | |
| float | m_maxShift |
| Max shift (represents the convergence criterion) | |
| bool | m_useLooseConvergence |
| Use loose convergence criterium (maxShift) or hard (+maxDeltaChi2) | |
| float | m_maxDeltaChi2 |
| Max DeltaChi2 allowed in hard convergence criterium. | |
| double | m_maxR |
| double | m_maxZ |
An iterative vertex fitter, updating the vertex estimate with a single at the time.
The measurement equation is relinearized with the position of the resulting estimate and the vertex is refit The iterations are performed until the vertex position improves or the maximal niumber of iterations is reached. Smoothing (refit of tracks with the knowledge of the vertex position) is then performed on request.
The fitter can be used with arbitrary VertexUpdator, VertexSmoother and LinearizedTrackFactory
Changes:
David Shope david.nosp@m..ric.nosp@m.hard..nosp@m.shop.nosp@m.e@cer.nosp@m.n.ch (2016-04-19) EDM Migration to xAOD - from Trk::VxCandidate to xAOD::Vertex, from Trk::RecVertex to xAOD::Vertex, from Trk::Vertex to Amg::Vector3D
Definition at line 55 of file SequentialVertexFitter.h.
| Trk::SequentialVertexFitter::SequentialVertexFitter | ( | const std::string & | t, |
| const std::string & | n, | ||
| const IInterface * | p ) |
constructor
Definition at line 58 of file SequentialVertexFitter.cxx.
|
virtualdefault |
destructor
|
overridevirtual |
Definition at line 52 of file SequentialVertexFitter.cxx.
|
inline |
Fit method using the VertexSeedFinder to estimate initial position of the vertex and taking it as a first linearization point (in iterative fitters).
EventContext aware method.
Definition at line 215 of file IVertexFitter.h.
|
inline |
Interface for TrackParameters with starting point Event Context aware method.
Definition at line 154 of file IVertexFitter.h.
|
inline |
Fit method using the VertexSeedFinder to estimate initial position of the vertex and taking it as a first linearization point (in iterative fitters).
EventContext aware method.
Definition at line 200 of file IVertexFitter.h.
|
inline |
Interface for TrackParameters and NeutralParameters with starting point Event Context aware method.
Definition at line 138 of file IVertexFitter.h.
|
inline |
Interface for TrackParameters and NeutralParameters with vertex constraint the position of the constraint is ALWAYS the starting point EventContext aware method.
Definition at line 169 of file IVertexFitter.h.
|
inline |
Interface for TrackParameters with vertex constraint the position of the constraint is ALWAYS the starting point EventContext aware method.
Definition at line 185 of file IVertexFitter.h.
|
inline |
Interface for xAOD::TrackParticle with starting point Event Context aware interface.
Definition at line 77 of file IVertexFitter.h.
|
inline |
Interface for xAOD::TrackParticle and xAOD::NeutralParticle with starting point.
Event Context aware method
Definition at line 91 of file IVertexFitter.h.
|
inline |
Interface for xAOD::TrackParticle and xAOD::NeutralParticle with vertex constraint the position of the constraint is ALWAYS the starting point Event Context aware method.
Definition at line 108 of file IVertexFitter.h.
|
inline |
Interface for xAOD::TrackParticle with vertex constraint the position of the constraint is ALWAYS the starting point Event Context aware method.
Definition at line 124 of file IVertexFitter.h.
|
inlineoverridevirtual |
Vertex fit from list of track and parameters and a starting point.
Definition at line 117 of file SequentialVertexFitter.h.
|
inlineoverridevirtual |
Definition at line 143 of file SequentialVertexFitter.h.
|
overridevirtual |
Additional fit methods.
These will later work with selected finder.. So far these methods work with default (0,0,0) starting point and "huge" diagonal error matrix
Definition at line 135 of file SequentialVertexFitter.cxx.
|
overridevirtual |
Vertex fit from list of track and neutral parameters and a starting point.
Definition at line 98 of file SequentialVertexFitter.cxx.
|
overridevirtual |
Vertex fit from the vector of track and neutral parameters with a preliminary knowledge (vertex constraint)
Definition at line 148 of file SequentialVertexFitter.cxx.
|
inlineoverridevirtual |
Definition at line 128 of file SequentialVertexFitter.h.
|
inlineoverridevirtual |
Interface for xAOD::TrackParticle with starting point.
Definition at line 85 of file SequentialVertexFitter.h.
|
overridevirtual |
Interface for xAOD::TrackParticle and xAOD::NeutralParticle with starting point.
Definition at line 365 of file SequentialVertexFitter.cxx.
|
overridevirtual |
Interface for xAOD::TrackParticle and xAOD::NeutralParticle with vertex constraint the position of the constraint is ALWAYS the starting point.
Definition at line 376 of file SequentialVertexFitter.cxx.
|
inlineoverridevirtual |
Interface for xAOD::TrackParticle with vertex constraint the position of the constraint is ALWAYS the starting point.
Definition at line 100 of file SequentialVertexFitter.h.
|
overridevirtual |
Definition at line 35 of file SequentialVertexFitter.cxx.
|
private |
Internal method related to the linearization of tracks (initial linearization)
Definition at line 280 of file SequentialVertexFitter.cxx.
|
private |
Relinearization on iterations.
Definition at line 343 of file SequentialVertexFitter.cxx.
|
private |
Flag controlling optional smoothing.
Definition at line 173 of file SequentialVertexFitter.h.
|
private |
Definition at line 167 of file SequentialVertexFitter.h.
|
private |
Max DeltaChi2 allowed in hard convergence criterium.
Definition at line 197 of file SequentialVertexFitter.h.
|
private |
Definition at line 203 of file SequentialVertexFitter.h.
|
private |
Max shift (represents the convergence criterion)
Definition at line 185 of file SequentialVertexFitter.h.
|
private |
Max number of iterations to perform (in case of no convergence)
Definition at line 179 of file SequentialVertexFitter.h.
|
private |
Definition at line 204 of file SequentialVertexFitter.h.
|
private |
Definition at line 166 of file SequentialVertexFitter.h.
|
private |
Definition at line 165 of file SequentialVertexFitter.h.
|
private |
Use loose convergence criterium (maxShift) or hard (+maxDeltaChi2)
Definition at line 191 of file SequentialVertexFitter.h.