ATLAS Offline Software
Loading...
Searching...
No Matches
LinearizedTrack.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3*/
4
6// LinearizedTrack (c) ATLAS Inner Detector Software 2006
8
31
32#ifndef VXVERTEX_LINEARIZEDTRACK_H
33#define VXVERTEX_LINEARIZEDTRACK_H
34
37
38class MsgStream;
39
40namespace Trk {
41
43{
44
45public:
46
53 LinearizedTrack(const AmgVector(5) & expectedParametersAtPCA,
54 const AmgSymMatrix(5) & expectedParErrorAtPCA,
55 const Amg::Vector3D& linPoint,
56 const AmgMatrix(5, 3) & positionJacobian,
57 const AmgMatrix(5, 3) & momentumJacobian,
58 const Amg::Vector3D& expectedPosition,
59 const Amg::Vector3D& expectedMomentum,
60 const AmgVector(5) & constantTerm);
61
62
64 LinearizedTrack() = default;
69 ~LinearizedTrack() = default;
70
71 LinearizedTrack* clone() const;
72
76 MsgStream& dump(MsgStream& sl) const;
77
81 std::ostream& dump(std::ostream& sl) const;
82
83
87 const AmgMatrix(5, 3) & positionJacobian() const
88 {
89 return m_PositionJacobian;
90 }
91
95 const AmgMatrix(5, 3) & momentumJacobian() const
96 {
97 return m_MomentumJacobian;
98 }
99
105 {
107 }
108
114 {
116 }
117
121 const AmgVector(5) & constantTerm() const { return m_ConstantTerm; }
122
132 const AmgSymMatrix(5) & expectedCovarianceAtPCA() const;
133
139 AmgSymMatrix(5) expectedWeightAtPCA() const;
140
144 const AmgVector(5) & expectedParametersAtPCA() const;
145
149 bool isValid() const { return m_vl; }
150
154 const Amg::Vector3D& linearizationPoint() const { return m_linPoint; }
155
156private:
157 AmgVector(5) m_ExpectedParametersAtPOCA;
158 AmgSymMatrix(5) m_ExpectedCovarianceAtPOCA;
160 AmgMatrix(5, 3) m_PositionJacobian;
161 AmgMatrix(5, 3) m_MomentumJacobian;
164 AmgVector(5) m_ConstantTerm;
165
166 bool m_vl = false; // validity flag: false if the class was created with
167 // default constructor, true otherwise
168
169}; // end of class definitions
170
175MsgStream&
176operator<<(MsgStream& sl, const LinearizedTrack& sf);
177std::ostream&
178operator<<(std::ostream& sl, const LinearizedTrack& sf);
179
180} // end of namespace definitions
181#endif
#define AmgSymMatrix(dim)
#define AmgVector(rows)
#define AmgMatrix(rows, cols)
Eigen::Matrix< double, 3, 1 > Vector3D
LinearizedTrack(const AmgVector(5) &expectedParametersAtPCA, const AmgSymMatrix(5) &expectedParErrorAtPCA, const Amg::Vector3D &linPoint, const AmgMatrix(5, 3) &positionJacobian, const AmgMatrix(5, 3) &momentumJacobian, const Amg::Vector3D &expectedPosition, const Amg::Vector3D &expectedMomentum, const AmgVector(5) &constantTerm)
Constructor taking the perigee parameters and covariance matrix of the track, propagated to the point...
LinearizedTrack & operator=(LinearizedTrack &&)=default
MsgStream & dump(MsgStream &sl) const
Output Method for MsgStream, to be overloaded by child classes.
~LinearizedTrack()=default
AmgSymMatrix(5) expectedWeightAtPCA() const
Access to the expected weight matrix at point of closest approach.
const AmgMatrix(5, 3) &positionJacobian() const
Position Jacobian access.
LinearizedTrack(const LinearizedTrack &)=default
Amg::Vector3D m_ExpectedPositionAtPOCA
const AmgVector(5) &const antTerm() const
A constant term of Taylor expansion.
LinearizedTrack(LinearizedTrack &&)=default
LinearizedTrack * clone() const
const Amg::Vector3D & expectedPositionAtPCA() const
Access to the expected position at point of closet approach.
LinearizedTrack()=default
default operations
const Amg::Vector3D & linearizationPoint() const
An access to an actual linearization point.
LinearizedTrack & operator=(const LinearizedTrack &)=default
const AmgMatrix(5, 3) &momentumJacobian() const
Momentum Jacobian access.
Amg::Vector3D m_ExpectedMomentumAtPOCA
const AmgSymMatrix(5) &expectedCovarianceAtPCA() const
Access to the covariance and weight matrix of the trajectory state.
std::ostream & dump(std::ostream &sl) const
Output Method for std::ostream, to be overloaded by child classes.
const Amg::Vector3D & expectedMomentumAtPCA() const
Access to the expected momentum at point of closet approach.
bool isValid() const
Class validity check.
AmgVector(5) m_ExpectedParametersAtPOCA
STL class.
Definition of ATLAS Math & Geometry primitives (Amg)
Eigen::Matrix< double, 3, 1 > Vector3D
Ensure that the ATLAS eigen extensions are properly loaded.
STL namespace.