13 : theLinPoint(linP), theTrack(track), theTSOS(tsos),
14 theCharge(theTrack.
charge()), collapsedStateAvailable(
false)
20 ltComp.reserve(tsosComp.size());
21 for (vector<TrajectoryStateOnSurface>::iterator it = tsosComp.begin();
22 it != tsosComp.end(); it++) {
81 const PerigeeLinearizedTrackState* otherP =
83 return otherP->predictedState();
128 throw VertexException(
"PerigeeMultiLTS: don't know how to compare myself to non-perigee track state");
158 vertexPosition(0) = theRefittedState->position().x();
159 vertexPosition(1) = theRefittedState->position().y();
160 vertexPosition(2) = theRefittedState->position().z();
164 if (param(2) >
M_PI) param(2)-= 2*
M_PI;
165 if (param(2) < -
M_PI) param(2)+= 2*
M_PI;
TrajectoryStateClosestToPoint trajectoryStateClosestToPoint(const AlgebraicVector3 &momentum, const GlobalPoint &referencePoint, const TrackCharge &charge, const AlgebraicSymMatrix66 &theCovarianceMatrix, const MagneticField *field)
virtual const AlgebraicVectorN & constantTerm() const
reco::TransientTrack theTrack
bool collapsedStateAvailable
ROOT::Math::SVector< double, N > AlgebraicVectorN
virtual void checkParameters(AlgebraicVector5 ¶meters) const
const TrajectoryStateClosestToPoint & predictedState() const
virtual const AlgebraicMatrixNM & momentumJacobian() const
const MagneticField * field() const
ROOT::Math::SMatrix< double, 5, 5, ROOT::Math::MatRepSym< double, 5 > > AlgebraicSymMatrix55
virtual AlgebraicVector5 refittedParamFromEquation(const RefCountedRefittedTrackState &theRefittedState) const
const TrajectoryStateOnSurface theTSOS
virtual const AlgebraicVectorN & parametersFromExpansion() const
virtual const AlgebraicMatrixN3 & positionJacobian() const
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
RefCountedLinearizedTrackState linearizedTrackState(const GlobalPoint &linP, const reco::TransientTrack &track) const
ROOT::Math::SVector< double, 3 > AlgebraicVector3
ROOT::Math::SVector< double, N-2 > AlgebraicVectorM
LinearizedTrackStateFactory theLTSfactory
void prepareCollapsedState() const
AlgebraicVectorN predictedStateParameters() const
ReferenceCountingPointer< RefittedTrackState< N > > RefCountedRefittedTrackState
AlgebraicSymMatrixMM predictedStateMomentumError() const
virtual AlgebraicVectorM predictedStateMomentumParameters() const
virtual RefCountedLinearizedTrackState stateWithNewLinearizationPoint(const GlobalPoint &newLP) const
ROOT::Math::SVector< double, 5 > AlgebraicVector5
bool operator==(LinearizedTrackState< 5 > &other) const
virtual reco::TransientTrack track() const
ROOT::Math::SMatrix< double, N+1, N+1, ROOT::Math::MatRepSym< double, N+1 > > AlgebraicSymMatrixOO
TrackCharge charge() const
virtual RefCountedRefittedTrackState createRefittedTrackState(const GlobalPoint &vertexPosition, const AlgebraicVectorM &vectorParameters, const AlgebraicSymMatrixOO &covarianceMatrix) const
PerigeeMultiLTS(const GlobalPoint &linP, const reco::TransientTrack &track, const TrajectoryStateOnSurface &tsos)
RefCountedLinearizedTrackState collapsedStateLT
volatile std::atomic< bool > shutdown_flag false
std::vector< TrajectoryStateOnSurface > components() const
std::vector< RefCountedLinearizedTrackState > ltComp
AlgebraicSymMatrixNN predictedStateWeight(int &error) const
AlgebraicSymMatrixNN predictedStateError() const