CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
PerigeeLinearizedTrackState.h
Go to the documentation of this file.
1 #ifndef PerigeeLinearizedTrackState_H
2 #define PerigeeLinearizedTrackState_H
3 
8 #include "Math/SMatrix.h"
10 
33 
34 
35 public:
36 
42 
48  (const GlobalPoint & newLP) const;
49 
50 
54  const GlobalPoint & linearizationPoint() const { return theLinPoint; }
55 
56  virtual reco::TransientTrack track() const { return theTrack; }
57 
58  const TrajectoryStateOnSurface state() const { return theTSOS; }
59 
63  const AlgebraicVector5 & constantTerm() const;
64 
68  const AlgebraicMatrix53 & positionJacobian() const;
69 
73  const AlgebraicMatrix53 & momentumJacobian() const;
74 
78 
84 
89 
94 
100 
105 
110 
111 // /** Method returning the impact point measurement
112 // */
113 // ImpactPointMeasurement impactPointMeasurement() const;
114 
115  TrackCharge charge() const {return theCharge;}
116 
117  bool hasError() const;
118 
119  bool operator ==(LinearizedTrackState<5> & other)const;
120 
122 
127  const GlobalPoint & vertexPosition,
128  const AlgebraicVector3 & vectorParameters,
129  const AlgebraicSymMatrix66 & covarianceMatrix) const;
130 
131 
133  const RefCountedRefittedTrackState & theRefittedState) const;
134 
135  virtual double weightInMixture() const {return theTSOS.weight();}
136 
137  virtual void inline checkParameters(AlgebraicVector5 & parameters) const;
138 
139  virtual std::vector<ReferenceCountingPointer<LinearizedTrackState<5> > > components()
140  const;
141 
142  virtual bool isValid() const;
143 
144 private:
145 
150  const TrajectoryStateOnSurface& tsos)
151  : theLinPoint(linP), theTrack(track), jacobiansAvailable(false),
152  // impactPointAvailable(false),
153  theCharge(theTrack.charge()), theTSOS(tsos) {}
154 
157  void computeJacobians() const;
160  void computeChargedJacobians() const;
163  void computeNeutralJacobians() const;
166  void compute3DImpactPoint() const;
167 
170 
171  mutable bool jacobiansAvailable;
176 
177 // ImpactPointMeasurementExtractor theIPMExtractor;
179 // mutable bool impactPointAvailable;
180 // mutable ImpactPointMeasurement the3DImpactPoint;
183 };
184 
185 #endif
virtual AlgebraicVector3 predictedStateMomentumParameters() const
dictionary parameters
Definition: Parameters.py:2
const AlgebraicMatrix53 & momentumJacobian() const
virtual RefCountedLinearizedTrackState stateWithNewLinearizationPoint(const GlobalPoint &newLP) const
void compute3DImpactPoint() const
virtual reco::TransientTrack track() const
virtual void checkParameters(AlgebraicVector5 &parameters) const
ROOT::Math::SMatrix< double, 6, 6, ROOT::Math::MatRepSym< double, 6 > > AlgebraicSymMatrix66
ROOT::Math::SMatrix< double, 5, 5, ROOT::Math::MatRepSym< double, 5 > > AlgebraicSymMatrix55
const TrajectoryStateOnSurface state() const
bool operator==(LinearizedTrackState< 5 > &other) const
ReferenceCountingPointer< LinearizedTrackState< 5 > > RefCountedLinearizedTrackState
int TrackCharge
Definition: TrackCharge.h:4
TrajectoryStateClosestToPoint thePredState
ROOT::Math::SMatrix< double, 5, 3, ROOT::Math::MatRepStd< double, 5, 3 > > AlgebraicMatrix53
ROOT::Math::SMatrix< double, 3, 3, ROOT::Math::MatRepSym< double, 3 > > AlgebraicSymMatrix33
const TrajectoryStateClosestToPoint & predictedState() const
const TrajectoryStateOnSurface theTSOS
const AlgebraicMatrix53 & positionJacobian() const
ROOT::Math::SVector< double, 3 > AlgebraicVector3
AlgebraicSymMatrix55 predictedStateError() const
AlgebraicSymMatrix33 predictedStateMomentumError() const
const GlobalPoint & linearizationPoint() const
ReferenceCountingPointer< RefittedTrackState< N > > RefCountedRefittedTrackState
PerigeeLinearizedTrackState(const GlobalPoint &linP, const reco::TransientTrack &track, const TrajectoryStateOnSurface &tsos)
ROOT::Math::SVector< double, 5 > AlgebraicVector5
virtual AlgebraicVector5 refittedParamFromEquation(const RefCountedRefittedTrackState &theRefittedState) const
const AlgebraicVector5 & parametersFromExpansion() const
AlgebraicVector5 predictedStateParameters() const
virtual RefCountedRefittedTrackState createRefittedTrackState(const GlobalPoint &vertexPosition, const AlgebraicVector3 &vectorParameters, const AlgebraicSymMatrix66 &covarianceMatrix) const
virtual std::vector< ReferenceCountingPointer< LinearizedTrackState< 5 > > > components() const
AlgebraicSymMatrix55 predictedStateWeight(int &error) const
const AlgebraicVector5 & constantTerm() const