ATLAS Offline Software
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 
32 #ifndef VXVERTEX_LINEARIZEDTRACK_H
33 #define VXVERTEX_LINEARIZEDTRACK_H
34 
37 
38 class MsgStream;
39 
40 namespace Trk {
41 
43 {
44 
45 public:
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;
65  LinearizedTrack(const 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 
156 private:
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 
175 MsgStream&
176 operator<<(MsgStream& sl, const LinearizedTrack& sf);
177 std::ostream&
178 operator<<(std::ostream& sl, const LinearizedTrack& sf);
179 
180 } // end of namespace definitions
181 #endif
Trk::LinearizedTrack::AmgSymMatrix
AmgSymMatrix(5) expectedWeightAtPCA() const
Access to the expected weight matrix at point of closest approach.
Trk::LinearizedTrack::AmgMatrix
const AmgMatrix(5, 3) &positionJacobian() const
Position Jacobian access.
Definition: LinearizedTrack.h:87
Trk::LinearizedTrack::m_linPoint
Amg::Vector3D m_linPoint
Definition: LinearizedTrack.h:159
Trk::LinearizedTrack::expectedPositionAtPCA
const Amg::Vector3D & expectedPositionAtPCA() const
Access to the expected position at point of closet approach.
Definition: LinearizedTrack.h:104
Trk::LinearizedTrack::AmgVector
AmgVector(5) m_ExpectedParametersAtPOCA
Trk::LinearizedTrack::LinearizedTrack
LinearizedTrack(const LinearizedTrack &)=default
Trk::LinearizedTrack::m_vl
bool m_vl
Definition: LinearizedTrack.h:166
Trk::LinearizedTrack::clone
LinearizedTrack * clone() const
Definition: LinearizedTrack.cxx:47
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
Trk::LinearizedTrack::operator=
LinearizedTrack & operator=(LinearizedTrack &&)=default
Trk::LinearizedTrack::dump
MsgStream & dump(MsgStream &sl) const
Output Method for MsgStream, to be overloaded by child classes.
Trk::LinearizedTrack::m_ExpectedPositionAtPOCA
Amg::Vector3D m_ExpectedPositionAtPOCA
Definition: LinearizedTrack.h:162
GeoPrimitives.h
Trk::LinearizedTrack::~LinearizedTrack
~LinearizedTrack()=default
Trk::LinearizedTrack::LinearizedTrack
LinearizedTrack()=default
default operations
EventPrimitives.h
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Amg
Definition of ATLAS Math & Geometry primitives (Amg)
Definition: AmgStringHelpers.h:19
Trk::LinearizedTrack::operator=
LinearizedTrack & operator=(const LinearizedTrack &)=default
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
Trk::LinearizedTrack::AmgVector
const AmgVector(5) &const antTerm() const
A constant term of Taylor expansion.
Definition: LinearizedTrack.h:121
Trk::LinearizedTrack::AmgMatrix
const AmgMatrix(5, 3) &momentumJacobian() const
Momentum Jacobian access.
Definition: LinearizedTrack.h:95
Trk::LinearizedTrack::LinearizedTrack
LinearizedTrack(LinearizedTrack &&)=default
mapkey::sf
@ sf
Definition: TElectronEfficiencyCorrectionTool.cxx:38
Trk::LinearizedTrack::isValid
bool isValid() const
Class validity check.
Definition: LinearizedTrack.h:149
Trk::LinearizedTrack::AmgSymMatrix
const AmgSymMatrix(5) &expectedCovarianceAtPCA() const
Access to the covariance and weight matrix of the trajectory state.
Trk::LinearizedTrack::dump
std::ostream & dump(std::ostream &sl) const
Output Method for std::ostream, to be overloaded by child classes.
Trk::LinearizedTrack::m_ExpectedMomentumAtPOCA
Amg::Vector3D m_ExpectedMomentumAtPOCA
Definition: LinearizedTrack.h:163
Trk::LinearizedTrack::expectedMomentumAtPCA
const Amg::Vector3D & expectedMomentumAtPCA() const
Access to the expected momentum at point of closet approach.
Definition: LinearizedTrack.h:113
Trk::LinearizedTrack::linearizationPoint
const Amg::Vector3D & linearizationPoint() const
An access to an actual linearization point.
Definition: LinearizedTrack.h:154
Trk::LinearizedTrack
Definition: LinearizedTrack.h:43