CMS 3D CMS Logo

ParticleKinematicLinearizedTrackState.h
Go to the documentation of this file.
1 #ifndef ParticleKinematicLinearizedTrackState_H
2 #define ParticleKinematicLinearizedTrackState_H
3 
12 
14 
15 public:
16 
19 
21  {jacobiansAvailable = false;}
22 
28  (const GlobalPoint & newLP) const override;
29 
33  const GlobalPoint & linearizationPoint() const override { return theLinPoint; }
34 
35 
39  const AlgebraicVector6 & constantTerm() const override;
40 
44  const AlgebraicMatrix63 & positionJacobian() const override;
45 
49  const AlgebraicMatrix64 & momentumJacobian() const override;
50 
53  const AlgebraicVector6 & parametersFromExpansion() const override;
54 
64 
69 
74 
78  AlgebraicSymMatrix66 predictedStateWeight(int & error) const override;
79 
83  AlgebraicSymMatrix66 predictedStateError() const override;
84 
85 // /**
86 // * Method returning the impact point measurement
87 // */
88 // ImpactPointMeasurement impactPointMeasurement() const;
89 
90  TrackCharge charge() const override;
91 
93 
94  bool operator ==(LinearizedTrackState<6>& other)const override;
95 
96  bool hasError() const override;
97 
99  const GlobalPoint & vertexPosition,
100  const AlgebraicVectorM & vectorParameters,
101  const AlgebraicSymMatrix77 & covarianceMatrix) const override;
102 
107  const RefCountedRefittedTrackState & theRefittedState) const override;
108 
109  inline void checkParameters(AlgebraicVectorN & parameters) const override;
110 
111  double weightInMixture() const override;
112 
113  std::vector<ReferenceCountingPointer<LinearizedTrackState<6> > > components()
114  const override;
115 
116  reco::TransientTrack track() const override;
117 
118 
119 private:
120 
125  : theLinPoint(linP), part(prt), jacobiansAvailable(false),
126  theCharge(prt->currentState().particleCharge()) ,impactPointAvailable(false)
127 
128  {}
129 
133  void computeJacobians() const;
137  void computeChargedJacobians() const;
138 
142  void computeNeutralJacobians() const;
143 
144 
148 
149  mutable bool errorAvailable;
150  mutable bool jacobiansAvailable;
156 
158 // ImpactPointMeasurementExtractor theIPMExtractor;
159  mutable bool impactPointAvailable;
160 };
161 #endif
AlgebraicSymMatrix66 predictedStateWeight(int &error) const override
AlgebraicVectorN refittedParamFromEquation(const RefCountedRefittedTrackState &theRefittedState) const override
RefCountedRefittedTrackState createRefittedTrackState(const GlobalPoint &vertexPosition, const AlgebraicVectorM &vectorParameters, const AlgebraicSymMatrix77 &covarianceMatrix) const override
ROOT::Math::SVector< double, N > AlgebraicVectorN
ROOT::Math::SMatrix< double, 6, 6, ROOT::Math::MatRepSym< double, 6 > > AlgebraicSymMatrix66
AlgebraicSymMatrix44 predictedStateMomentumError() const override
bool operator==(LinearizedTrackState< 6 > &other) const override
ROOT::Math::SMatrix< double, 6, 4, ROOT::Math::MatRepStd< double, 6, 4 > > AlgebraicMatrix64
ROOT::Math::SVector< double, 6 > AlgebraicVector6
ROOT::Math::SMatrix< double, 7, 7, ROOT::Math::MatRepSym< double, 7 > > AlgebraicSymMatrix77
Definition: Matrices.h:9
int TrackCharge
Definition: TrackCharge.h:4
ROOT::Math::SMatrix< double, 4, 4, ROOT::Math::MatRepSym< double, 4 > > AlgebraicSymMatrix44
AlgebraicSymMatrix66 predictedStateError() const override
ParticleKinematicLinearizedTrackState(const GlobalPoint &linP, RefCountedKinematicParticle &prt)
const AlgebraicVector6 & constantTerm() const override
ROOT::Math::SVector< double, N-2 > AlgebraicVectorM
ReferenceCountingPointer< LinearizedTrackState< 6 > > RefCountedLinearizedTrackState
const AlgebraicVector6 & parametersFromExpansion() const override
const AlgebraicMatrix63 & positionJacobian() const override
part
Definition: HCALResponse.h:20
ROOT::Math::SMatrix< double, 6, 3, ROOT::Math::MatRepStd< double, 6, 3 > > AlgebraicMatrix63
AlgebraicVectorM predictedStateMomentumParameters() const override
const AlgebraicMatrix64 & momentumJacobian() const override
void checkParameters(AlgebraicVectorN &parameters) const override
ReferenceCountingPointer< LinearizedTrackState< 6 > > stateWithNewLinearizationPoint(const GlobalPoint &newLP) const override
std::vector< ReferenceCountingPointer< LinearizedTrackState< 6 > > > components() const override
const GlobalPoint & linearizationPoint() const override