|
ATLAS Offline Software
|
Go to the documentation of this file.
34 #ifndef TrkVertexFitterUtils_KalmanVertexOnJetAxisUpdator_H
35 #define TrkVertexFitterUtils_KalmanVertexOnJetAxisUpdator_H
44 class VxTrackAtVertex;
45 class LinearizedTrack;
46 class RecVertexPositions;
47 class VxVertexOnJetAxis;
51 static const InterfaceID IID_KalmanVertexOnJetAxisUpdator(
"Trk::KalmanVertexOnJetAxisUpdator", 1, 0);
60 return IID_KalmanVertexOnJetAxisUpdator;
123 double trackWeight,
int sign,
125 bool doFastUpdate)
const;
167 int numVertex,
bool isPrimary=
false)
const;
Eigen::Matrix< double, Eigen::Dynamic, 1 > VectorX
Dynamic Vector - dynamic allocation.
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
The VxTrackAtVertex is a common class for all present TrkVertexFitters The VxTrackAtVertex is designe...
double m_initialMomentumError
VxVertexOnJetAxis inherits from Vertex.
void remove(VxTrackAtVertex *trackToRemove, const VxVertexOnJetAxis *vertexToUpdate, VxJetCandidate *candidateToUpdate) const
Method removing already added track from the fit along the flight axis, where you specify from what v...
void smartInvert(Amg::MatrixX &new_vrt_cov) const
void removeWithFastUpdate(VxTrackAtVertex *trackToRemove, const VxVertexOnJetAxis *vertexToUpdate, VxJetCandidate *candidateToUpdate) const
void addWithFastUpdate(VxTrackAtVertex *trackToAdd, const VxVertexOnJetAxis *vertexToUpdate, VxJetCandidate *candidateToUpdate) const
KalmanVertexOnJetAxisUpdator(const std::string &t, const std::string &n, const IInterface *p)
Constructor.
ATLAS Reconstruction Software - (C) 2005 - 2007.
double calculateTrackChi2(const VxJetCandidate &vertexCandidate, const LinearizedTrack *trk, double trackWeight, int numVertex, bool isPrimary=false) const
Internal method where the chi2/ndf update is actually done.
Trk::RecVertexPositions positionUpdate(VxJetCandidate &vertexCandidate, const LinearizedTrack *trk, double trackWeight, int sign, int numVertex, bool isPrimary, bool doFastUpdate) const
Method to do the Kalman Update of the positions of the fit along the flight axis with a single new tr...
::StatusCode StatusCode
StatusCode definition for legacy code.
virtual StatusCode initialize() override
static const InterfaceID & interfaceID()
void updateChi2NdfInfo(VxTrackAtVertex *trackToUpdate, const VxVertexOnJetAxis *vertexToUpdate, VxJetCandidate *vertexCandidate) const
Obsolete (will be removed - not in use, however migrated to eigen before finding out -WL) Updates onl...
Ensure that the ATLAS eigen extensions are properly loaded.
void add(VxTrackAtVertex *trackToAdd, const VxVertexOnJetAxis *vertexToUpdate, VxJetCandidate *candidateToUpdate) const
Method updating the fit along the flight axis (VxJetCandidate) with a track (VxTrackOnJetAxis) which ...
void update(VxTrackAtVertex *trackToUpdate, const VxVertexOnJetAxis *vertexToUpdate, VxJetCandidate *candidateToUpdate, int sign, bool doFastUpdate) const
Internal method to do the Kalman Update.
std::pair< Amg::Vector3D, Eigen::Matrix3Xd > createTransformJacobian(const Amg::VectorX &initialjetdir, int numVertex, bool isPrimary, bool truncate) const
Method to create the Jacobian needed to go to the space of single vertices to the space of the variab...
Eigen::Matrix< double, 3, Eigen::Dynamic > AmgMatrix3X
void updateVertexChi2(VxJetCandidate *vertexCandidate) const
Obsolete (will be removed - not in use, however moved to eigen before finding out -WL).
@ isPrimary
true if matched track has a hit in first or second pixel layer