CMS 3D CMS Logo

PerigeeMultiLTS.h
Go to the documentation of this file.
1 #ifndef PerigeeMultiLTS_H
2 #define PerigeeMultiLTS_H
3 
8 #include <vector>
9 
15 public:
17 
21  friend class MultiPerigeeLTSFactory;
22 
29 
33  const GlobalPoint& linearizationPoint() const override { return theLinPoint; }
34 
35  reco::TransientTrack track() const override { return theTrack; }
36 
41  const TrajectoryStateOnSurface state() const { return theTSOS; }
42 
46  const AlgebraicVectorN& constantTerm() const override;
47 
51  const AlgebraicMatrixN3& positionJacobian() const override;
52 
56  const AlgebraicMatrixNM& momentumJacobian() const override;
57 
61  const AlgebraicVectorN& parametersFromExpansion() const override;
62 
68 
73 
78 
83  AlgebraicSymMatrixNN predictedStateWeight(int& error) const override;
84 
89 
94 
95  TrackCharge charge() const override { return theCharge; }
96 
97  bool hasError() const override;
98 
99  bool operator==(LinearizedTrackState<5>& other) const override;
100 
105  const AlgebraicVectorM& vectorParameters,
106  const AlgebraicSymMatrixOO& covarianceMatrix) const override;
107 
108  AlgebraicVector5 refittedParamFromEquation(const RefCountedRefittedTrackState& theRefittedState) const override;
109 
110  void inline checkParameters(AlgebraicVector5& parameters) const override;
116  double weightInMixture() const override { return theTSOS.weight(); }
117 
122  std::vector<ReferenceCountingPointer<LinearizedTrackState<5> > > components() const override { return ltComp; }
123 
124 private:
132 
135  void prepareCollapsedState() const;
136 
139 
141  std::vector<RefCountedLinearizedTrackState> ltComp;
146 };
147 
148 #endif
MultiPerigeeLTSFactory
Definition: MultiPerigeeLTSFactory.h:18
PerigeeMultiLTS::hasError
bool hasError() const override
Definition: PerigeeMultiLTS.cc:77
PerigeeMultiLTS::theTrack
reco::TransientTrack theTrack
Definition: PerigeeMultiLTS.h:138
PerigeeMultiLTS::PerigeeMultiLTS
PerigeeMultiLTS(const GlobalPoint &linP, const reco::TransientTrack &track, const TrajectoryStateOnSurface &tsos)
Definition: PerigeeMultiLTS.cc:9
TrackCharge
int TrackCharge
Definition: TrackCharge.h:4
LinearizedTrackState< 5 >::AlgebraicMatrixNM
ROOT::Math::SMatrix< double, N, N - 2, ROOT::Math::MatRepStd< double, N, N - 2 > > AlgebraicMatrixNM
Definition: LinearizedTrackState.h:41
PerigeeMultiLTS::createRefittedTrackState
RefCountedRefittedTrackState createRefittedTrackState(const GlobalPoint &vertexPosition, const AlgebraicVectorM &vectorParameters, const AlgebraicSymMatrixOO &covarianceMatrix) const override
Definition: PerigeeMultiLTS.cc:126
LinearizedTrackStateFactory.h
PerigeeMultiLTS
Definition: PerigeeMultiLTS.h:14
PerigeeMultiLTS::momentumJacobian
const AlgebraicMatrixNM & momentumJacobian() const override
Definition: PerigeeMultiLTS.cc:52
PerigeeMultiLTS::predictedStateMomentumParameters
AlgebraicVectorM predictedStateMomentumParameters() const override
Definition: PerigeeMultiLTS.cc:89
PerigeeMultiLTS::theCharge
TrackCharge theCharge
Definition: PerigeeMultiLTS.h:144
PerigeeMultiLTS::RefCountedLinearizedTrackState
ReferenceCountingPointer< LinearizedTrackState< 5 > > RefCountedLinearizedTrackState
Definition: PerigeeMultiLTS.h:16
LinearizedTrackState< 5 >::AlgebraicSymMatrixNN
ROOT::Math::SMatrix< double, N, N, ROOT::Math::MatRepSym< double, N > > AlgebraicSymMatrixNN
Definition: LinearizedTrackState.h:43
ReferenceCountingPointer
Definition: ReferenceCounted.h:60
TransientTrack.h
PerigeeMultiLTS::constantTerm
const AlgebraicVectorN & constantTerm() const override
Definition: PerigeeMultiLTS.cc:34
relativeConstraints.error
error
Definition: relativeConstraints.py:53
parameters
parameters
Definition: BeamSpot_PayloadInspector.cc:14
PerigeeMultiLTS::checkParameters
void checkParameters(AlgebraicVector5 &parameters) const override
Definition: PerigeeMultiLTS.cc:150
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
LinearizedTrackStateFactory
Definition: LinearizedTrackStateFactory.h:14
PerigeeMultiLTS::operator==
bool operator==(LinearizedTrackState< 5 > &other) const override
Definition: PerigeeMultiLTS.cc:113
PerigeeMultiLTS::components
std::vector< ReferenceCountingPointer< LinearizedTrackState< 5 > > > components() const override
Definition: PerigeeMultiLTS.h:122
PerigeeMultiLTS::charge
TrackCharge charge() const override
Definition: PerigeeMultiLTS.h:95
PerigeeMultiLTS::refittedParamFromEquation
AlgebraicVector5 refittedParamFromEquation(const RefCountedRefittedTrackState &theRefittedState) const override
Definition: PerigeeMultiLTS.cc:135
TrajectoryStateOnSurface::weight
double weight() const
Definition: TrajectoryStateOnSurface.h:80
trackingPlots.other
other
Definition: trackingPlots.py:1465
PerigeeMultiLTS::theTSOS
const TrajectoryStateOnSurface theTSOS
Definition: PerigeeMultiLTS.h:140
Point3DBase< float, GlobalTag >
PerigeeMultiLTS::theLinPoint
GlobalPoint theLinPoint
Definition: PerigeeMultiLTS.h:137
PerigeeMultiLTS::theLTSfactory
LinearizedTrackStateFactory theLTSfactory
Definition: PerigeeMultiLTS.h:143
PerigeeMultiLTS::predictedState
const TrajectoryStateClosestToPoint & predictedState() const
Definition: PerigeeMultiLTS.cc:70
PerigeeMultiLTS::linearizationPoint
const GlobalPoint & linearizationPoint() const override
Definition: PerigeeMultiLTS.h:33
PerigeeMultiLTS::positionJacobian
const AlgebraicMatrixN3 & positionJacobian() const override
Definition: PerigeeMultiLTS.cc:43
PerigeeMultiLTS::predictedStateMomentumError
AlgebraicSymMatrixMM predictedStateMomentumError() const override
Definition: PerigeeMultiLTS.cc:107
LinearizedTrackState< 5 >::AlgebraicMatrixN3
ROOT::Math::SMatrix< double, N, 3, ROOT::Math::MatRepStd< double, N, 3 > > AlgebraicMatrixN3
Definition: LinearizedTrackState.h:40
PerigeeMultiLTS::predictedStateWeight
AlgebraicSymMatrixNN predictedStateWeight(int &error) const override
Definition: PerigeeMultiLTS.cc:95
LinearizedTrackState< 5 >::RefCountedRefittedTrackState
ReferenceCountingPointer< RefittedTrackState< N > > RefCountedRefittedTrackState
Definition: LinearizedTrackState.h:47
TrajectoryStateClosestToPoint
Definition: TrajectoryStateClosestToPoint.h:18
AlgebraicVector5
ROOT::Math::SVector< double, 5 > AlgebraicVector5
Definition: AlgebraicROOTObjects.h:14
PerigeeMultiLTS::predictedStateError
AlgebraicSymMatrixNN predictedStateError() const override
Definition: PerigeeMultiLTS.cc:101
PerigeeMultiLTS::ltComp
std::vector< RefCountedLinearizedTrackState > ltComp
Definition: PerigeeMultiLTS.h:141
LinearizedTrackState< 5 >::AlgebraicVectorN
ROOT::Math::SVector< double, N > AlgebraicVectorN
Definition: LinearizedTrackState.h:38
ReferenceCounted.h
PerigeeMultiLTS::parametersFromExpansion
const AlgebraicVectorN & parametersFromExpansion() const override
Definition: PerigeeMultiLTS.cc:60
reco::TransientTrack
Definition: TransientTrack.h:19
PerigeeMultiLTS::weightInMixture
double weightInMixture() const override
Definition: PerigeeMultiLTS.h:116
LinearizedTrackState< 5 >::AlgebraicSymMatrixOO
ROOT::Math::SMatrix< double, N+1, N+1, ROOT::Math::MatRepSym< double, N+1 > > AlgebraicSymMatrixOO
Definition: LinearizedTrackState.h:45
PerigeeMultiLTS::track
reco::TransientTrack track() const override
Definition: PerigeeMultiLTS.h:35
PerigeeMultiLTS::predictedStateParameters
AlgebraicVectorN predictedStateParameters() const override
Definition: PerigeeMultiLTS.cc:83
LinearizedTrackState
Definition: LinearizedTrackState.h:36
PerigeeMultiLTS::collapsedStateAvailable
bool collapsedStateAvailable
Definition: PerigeeMultiLTS.h:145
PerigeeMultiLTS::stateWithNewLinearizationPoint
RefCountedLinearizedTrackState stateWithNewLinearizationPoint(const GlobalPoint &newLP) const override
Definition: PerigeeMultiLTS.cc:121
PerigeeMultiLTS::collapsedStateLT
RefCountedLinearizedTrackState collapsedStateLT
Definition: PerigeeMultiLTS.h:142
LinearizedTrackState.h
LinearizedTrackState< 5 >::AlgebraicVectorM
ROOT::Math::SVector< double, N - 2 > AlgebraicVectorM
Definition: LinearizedTrackState.h:39
PerigeeMultiLTS::prepareCollapsedState
void prepareCollapsedState() const
Definition: PerigeeMultiLTS.cc:24
LinearizedTrackState< 5 >::AlgebraicSymMatrixMM
ROOT::Math::SMatrix< double, N - 2, N - 2, ROOT::Math::MatRepSym< double, N - 2 > > AlgebraicSymMatrixMM
Definition: LinearizedTrackState.h:44
PerigeeMultiLTS::state
const TrajectoryStateOnSurface state() const
Definition: PerigeeMultiLTS.h:41