#include <PerigeeLinearizedTrackState.h>
Public Types | |
typedef ReferenceCountingPointer< LinearizedTrackState< 5 > > | RefCountedLinearizedTrackState |
Public Types inherited from LinearizedTrackState< 5 > | |
typedef ROOT::Math::SMatrix< double, N-2, 3, ROOT::Math::MatRepStd< double, N-2, 3 > > | AlgebraicMatrixM3 |
typedef ROOT::Math::SMatrix< double, N, 3, ROOT::Math::MatRepStd< double, N, 3 > > | AlgebraicMatrixN3 |
typedef ROOT::Math::SMatrix< double, N, N-2, ROOT::Math::MatRepStd< double, N, N-2 > > | AlgebraicMatrixNM |
typedef ROOT::Math::SMatrix< double, N-2, N-2, ROOT::Math::MatRepSym< double, N-2 > > | AlgebraicSymMatrixMM |
typedef ROOT::Math::SMatrix< double, N, N, ROOT::Math::MatRepSym< double, N > > | AlgebraicSymMatrixNN |
typedef ROOT::Math::SMatrix< double, N+1, N+1, ROOT::Math::MatRepSym< double, N+1 > > | AlgebraicSymMatrixOO |
typedef ROOT::Math::SVector< double, N-2 > | AlgebraicVectorM |
typedef ROOT::Math::SVector< double, N > | AlgebraicVectorN |
typedef ReferenceCountingPointer< RefittedTrackState< N > > | RefCountedRefittedTrackState |
Private Member Functions | |
void | compute3DImpactPoint () const |
void | computeChargedJacobians () const |
void | computeJacobians () const |
void | computeNeutralJacobians () const |
PerigeeLinearizedTrackState (const GlobalPoint &linP, const reco::TransientTrack &track, const TrajectoryStateOnSurface &tsos) | |
Friends | |
class | LinearizedTrackStateFactory |
Calculates and stores the ImpactPointMeasurement of the impact point (point of closest approach in 3D) to the given linearization point. (see V.Karimaki, HIP-1997-77 / EXP)
Computes the parameters of the trajectory state at the transverse point of closest approach (in the global transverse plane) to the linearization point, and the jacobiam matrices. (see R.Fruehwirth et al. Data Analysis Techniques in HEP Experiments Second Edition, Cambridge University Press 2000, or R.Fruehwirth et al. Vertex reconstruction and track bundling at the LEP collider using robust algorithms. Computer Physics Communications 96 (1996) 189-208).
Both are done `on-demand' to improve CPU performance.
This particular implementation works with "perigee" helix parametrization: see Billoir et al. NIM in PR A311(1992) 139-150
Definition at line 35 of file PerigeeLinearizedTrackState.h.
typedef ReferenceCountingPointer<LinearizedTrackState<5> > PerigeeLinearizedTrackState::RefCountedLinearizedTrackState |
Definition at line 44 of file PerigeeLinearizedTrackState.h.
|
inlineprivate |
Constructor with the linearization point and the track. Private, can only be used by LinearizedTrackFactory.
Definition at line 151 of file PerigeeLinearizedTrackState.h.
References compute3DImpactPoint(), computeChargedJacobians(), computeJacobians(), and computeNeutralJacobians().
Referenced by stateWithNewLinearizationPoint().
|
inlinevirtual |
Method returning the impact point measurement
Implements LinearizedTrackState< 5 >.
Definition at line 118 of file PerigeeLinearizedTrackState.h.
References createRefittedTrackState(), hasError(), operator==(), trackingPlots::other, refittedParamFromEquation(), and theCharge.
Referenced by createRefittedTrackState().
|
inlinevirtual |
Definition at line 104 of file PerigeeLinearizedTrackState.cc.
References M_PI, and metProducer_cfi::parameters.
Referenced by weightInMixture().
|
virtual |
Implements LinearizedTrackState< 5 >.
Definition at line 75 of file PerigeeLinearizedTrackState.cc.
References mps_fire::result.
Referenced by weightInMixture().
|
private |
Method calculating the 3D impact point measurement
Referenced by PerigeeLinearizedTrackState().
|
private |
Method calculating the track parameters and the Jacobians for charged particles.
Definition at line 110 of file PerigeeLinearizedTrackState.cc.
References funct::abs(), funct::cos(), reco::TransientTrack::field(), MagneticField::inInverseGeV(), M_PI, AlCaHLTBitMon_ParallelJobs::p, TrajectoryStateClosestToPoint::perigeeParameters(), PerigeeTrajectoryParameters::phi(), FreeTrajectoryState::position(), TrajectoryStateClosestToPoint::pt(), S(), funct::sin(), mathSSE::sqrt(), funct::tan(), theCharge, theConstantTerm, theExpandedParams, theLinPoint, theMomentumJacobian, thePositionJacobian, thePredState, TrajectoryStateClosestToPoint::theState(), PerigeeTrajectoryParameters::theta(), theTrack, X, PV3DBase< T, PVType, FrameType >::x(), DOFs::Y, PV3DBase< T, PVType, FrameType >::y(), z, and PV3DBase< T, PVType, FrameType >::z().
Referenced by computeJacobians(), and PerigeeLinearizedTrackState().
|
private |
Method calculating the track parameters and the Jacobians.
Definition at line 10 of file PerigeeLinearizedTrackState.cc.
References funct::abs(), builder, computeChargedJacobians(), computeNeutralJacobians(), MillePedeFileConverter_cfg::e, reco::TransientTrack::field(), MagneticField::inInverseGeV(), TrajectoryStateClosestToPoint::isValid(), jacobiansAvailable, FreeTrajectoryState::position(), theCharge, theLinPoint, thePredState, TrajectoryStateClosestToPoint::theState(), theTrack, theTSOS, unlikely, and z.
Referenced by constantTerm(), hasError(), isValid(), momentumJacobian(), parametersFromExpansion(), PerigeeLinearizedTrackState(), positionJacobian(), predictedState(), predictedStateError(), predictedStateMomentumError(), predictedStateMomentumParameters(), predictedStateParameters(), and predictedStateWeight().
|
private |
Method calculating the track parameters and the Jacobians for neutral particles.
Definition at line 208 of file PerigeeLinearizedTrackState.cc.
References funct::cos(), FreeTrajectoryState::momentum(), AlCaHLTBitMon_ParallelJobs::p, PV3DBase< T, PVType, FrameType >::perp(), PV3DBase< T, PVType, FrameType >::phi(), FreeTrajectoryState::position(), funct::sin(), funct::tan(), theConstantTerm, theExpandedParams, theLinPoint, theMomentumJacobian, thePositionJacobian, thePredState, TrajectoryStateClosestToPoint::theState(), PV3DBase< T, PVType, FrameType >::theta(), X, PV3DBase< T, PVType, FrameType >::x(), DOFs::Y, PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by computeJacobians(), and PerigeeLinearizedTrackState().
|
inlinevirtual |
Method returning the constant term of the Taylor expansion of the measurement equation
Implements LinearizedTrackState< 5 >.
Definition at line 192 of file PerigeeLinearizedTrackState.h.
References computeJacobians(), jacobiansAvailable, theConstantTerm, and unlikely.
Referenced by TwoBodyDecayEstimator::constructMatrices(), refittedParamFromEquation(), and state().
|
virtual |
Creates the correct refitted state according to the results of the track refit.
Definition at line 63 of file PerigeeLinearizedTrackState.cc.
References charge(), reco::TransientTrack::field(), theTrack, and PerigeeConversions::trajectoryStateClosestToPoint().
Referenced by charge().
|
inlinevirtual |
Implements LinearizedTrackState< 5 >.
Definition at line 240 of file PerigeeLinearizedTrackState.h.
References computeJacobians(), TrajectoryStateClosestToPoint::hasError(), jacobiansAvailable, thePredState, and unlikely.
Referenced by charge().
|
inlinevirtual |
Reimplemented from LinearizedTrackState< 5 >.
Definition at line 288 of file PerigeeLinearizedTrackState.h.
References computeJacobians(), TrajectoryStateOnSurface::isValid(), jacobiansAvailable, theTSOS, and unlikely.
Referenced by ntupleDataFormat._Object::_checkIsValid(), core.AutoHandle.AutoHandle::ReallyLoad(), and weightInMixture().
|
inlinevirtual |
The point at which the track state has been linearized
Implements LinearizedTrackState< 5 >.
Definition at line 57 of file PerigeeLinearizedTrackState.h.
References theLinPoint.
Referenced by TwoBodyDecayEstimator::constructMatrices().
|
inlinevirtual |
Method returning the Momentum Jacobian from the Taylor expansion (Matrix B)
Method returning the Momentum Jacobian (Matrix B)
Implements LinearizedTrackState< 5 >.
Definition at line 212 of file PerigeeLinearizedTrackState.h.
References computeJacobians(), jacobiansAvailable, theMomentumJacobian, and unlikely.
Referenced by TwoBodyDecayEstimator::constructMatrices(), refittedParamFromEquation(), and state().
bool PerigeeLinearizedTrackState::operator== | ( | LinearizedTrackState< 5 > & | other | ) | const |
Definition at line 32 of file PerigeeLinearizedTrackState.cc.
References trackingPlots::other, theTrack, and track().
Referenced by charge().
bool PerigeeLinearizedTrackState::operator== | ( | ReferenceCountingPointer< LinearizedTrackState< 5 > > & | other | ) | const |
Definition at line 43 of file PerigeeLinearizedTrackState.cc.
References trackingPlots::other, stateWithNewLinearizationPoint(), theTrack, and track().
|
inlinevirtual |
Method returning the parameters of the Taylor expansion
Implements LinearizedTrackState< 5 >.
Definition at line 221 of file PerigeeLinearizedTrackState.h.
References computeJacobians(), jacobiansAvailable, theExpandedParams, and unlikely.
Referenced by state().
|
inlinevirtual |
Method returning the Position Jacobian from the Taylor expansion (Matrix A)
Method returning the Position Jacobian (Matrix A)
Implements LinearizedTrackState< 5 >.
Definition at line 202 of file PerigeeLinearizedTrackState.h.
References computeJacobians(), jacobiansAvailable, thePositionJacobian, and unlikely.
Referenced by TwoBodyDecayEstimator::constructMatrices(), refittedParamFromEquation(), and state().
|
inline |
Method returning the track state at the point of closest approach to the linearization point, in the transverse plane (a.k.a. transverse impact point).
Method returning the TrajectoryStateClosestToPoint at the point of closest approch to the z-axis (a.k.a. transverse impact point)
Definition at line 232 of file PerigeeLinearizedTrackState.h.
References computeJacobians(), jacobiansAvailable, thePredState, and unlikely.
Referenced by TwoBodyDecayLinearizationPointFinder::getLinearizationPoint(), PerigeeMultiLTS::predictedState(), and state().
|
inlinevirtual |
Method returning the covariance matrix of the track state at the transverse impact point.
Implements LinearizedTrackState< 5 >.
Definition at line 274 of file PerigeeLinearizedTrackState.h.
References computeJacobians(), PerigeeTrajectoryError::covarianceMatrix(), jacobiansAvailable, TrajectoryStateClosestToPoint::perigeeError(), thePredState, and unlikely.
Referenced by TwoBodyDecayEstimator::constructMatrices(), and state().
|
inlinevirtual |
Method returning the momentum covariance matrix of the track state at the transverse impact point.
Implements LinearizedTrackState< 5 >.
Definition at line 281 of file PerigeeLinearizedTrackState.h.
References computeJacobians(), PerigeeTrajectoryError::covarianceMatrix(), jacobiansAvailable, TrajectoryStateClosestToPoint::perigeeError(), thePredState, and unlikely.
Referenced by state().
|
inlinevirtual |
Method returning the momentum part of the parameters of the track state at the linearization point.
Implements LinearizedTrackState< 5 >.
Definition at line 254 of file PerigeeLinearizedTrackState.h.
References computeJacobians(), jacobiansAvailable, TrajectoryStateClosestToPoint::perigeeParameters(), thePredState, unlikely, findQualityFiles::v, and PerigeeTrajectoryParameters::vector().
Referenced by TwoBodyDecayEstimator::constructMatrices(), refittedParamFromEquation(), and state().
|
inlinevirtual |
Method returning the parameters of the track state at the transverse impact point.
Implements LinearizedTrackState< 5 >.
Definition at line 247 of file PerigeeLinearizedTrackState.h.
References computeJacobians(), jacobiansAvailable, TrajectoryStateClosestToPoint::perigeeParameters(), thePredState, and PerigeeTrajectoryParameters::vector().
Referenced by TwoBodyDecayEstimator::constructMatrices(), and state().
|
inlinevirtual |
Method returning the weight matrix of the track state at the transverse impact point. The error variable is 0 in case of success.
Implements LinearizedTrackState< 5 >.
Definition at line 263 of file PerigeeLinearizedTrackState.h.
References computeJacobians(), TrajectoryStateClosestToPoint::isValid(), jacobiansAvailable, TrajectoryStateClosestToPoint::perigeeError(), thePredState, unlikely, and PerigeeTrajectoryError::weightMatrix().
Referenced by state().
|
virtual |
Method returning the parameters of the Taylor expansion evaluated with the refitted state.
Implements LinearizedTrackState< 5 >.
Definition at line 84 of file PerigeeLinearizedTrackState.cc.
References constantTerm(), M_PI, momentumJacobian(), AlCaHLTBitMon_ParallelJobs::p, positionJacobian(), and predictedStateMomentumParameters().
Referenced by charge().
|
inline |
Definition at line 61 of file PerigeeLinearizedTrackState.h.
References constantTerm(), relativeConstraints::error, momentumJacobian(), parametersFromExpansion(), positionJacobian(), predictedState(), predictedStateError(), predictedStateMomentumError(), predictedStateMomentumParameters(), predictedStateParameters(), predictedStateWeight(), and theTSOS.
|
virtual |
Returns a new linearized state with respect to a new linearization point. A new object of the same type is returned, without change to the existing one.
Implements LinearizedTrackState< 5 >.
Definition at line 56 of file PerigeeLinearizedTrackState.cc.
References PerigeeLinearizedTrackState(), theTSOS, and track().
Referenced by operator==().
|
inlinevirtual |
Implements LinearizedTrackState< 5 >.
Definition at line 59 of file PerigeeLinearizedTrackState.h.
References theTrack.
Referenced by TwoBodyDecayEstimator::constructMatrices(), operator==(), stateWithNewLinearizationPoint(), and TrimmedVertexFinder::vertices().
|
inlinevirtual |
Implements LinearizedTrackState< 5 >.
Definition at line 138 of file PerigeeLinearizedTrackState.h.
References checkParameters(), components(), isValid(), metProducer_cfi::parameters, theTSOS, and TrajectoryStateOnSurface::weight().
|
friend |
Friend class properly dealing with creation of reference-counted pointers to LinearizedTrack objects
Definition at line 43 of file PerigeeLinearizedTrackState.h.
|
private |
Definition at line 178 of file PerigeeLinearizedTrackState.h.
Referenced by computeJacobians().
|
mutableprivate |
Definition at line 181 of file PerigeeLinearizedTrackState.h.
Referenced by computeJacobians(), constantTerm(), hasError(), isValid(), momentumJacobian(), parametersFromExpansion(), positionJacobian(), predictedState(), predictedStateError(), predictedStateMomentumError(), predictedStateMomentumParameters(), predictedStateParameters(), and predictedStateWeight().
|
private |
Definition at line 180 of file PerigeeLinearizedTrackState.h.
Referenced by charge(), computeChargedJacobians(), and computeJacobians().
|
mutableprivate |
Definition at line 175 of file PerigeeLinearizedTrackState.h.
Referenced by computeChargedJacobians(), computeNeutralJacobians(), and constantTerm().
|
mutableprivate |
Definition at line 176 of file PerigeeLinearizedTrackState.h.
Referenced by computeChargedJacobians(), computeNeutralJacobians(), and parametersFromExpansion().
|
private |
Definition at line 169 of file PerigeeLinearizedTrackState.h.
Referenced by computeChargedJacobians(), computeJacobians(), computeNeutralJacobians(), and linearizationPoint().
|
mutableprivate |
Definition at line 173 of file PerigeeLinearizedTrackState.h.
Referenced by computeChargedJacobians(), computeNeutralJacobians(), and momentumJacobian().
|
mutableprivate |
Definition at line 173 of file PerigeeLinearizedTrackState.h.
Referenced by computeChargedJacobians(), computeNeutralJacobians(), and positionJacobian().
|
mutableprivate |
Definition at line 174 of file PerigeeLinearizedTrackState.h.
Referenced by computeChargedJacobians(), computeJacobians(), computeNeutralJacobians(), hasError(), predictedState(), predictedStateError(), predictedStateMomentumError(), predictedStateMomentumParameters(), predictedStateParameters(), and predictedStateWeight().
|
private |
Definition at line 170 of file PerigeeLinearizedTrackState.h.
Referenced by computeChargedJacobians(), computeJacobians(), createRefittedTrackState(), operator==(), and track().
|
private |
Definition at line 171 of file PerigeeLinearizedTrackState.h.
Referenced by computeJacobians(), isValid(), state(), stateWithNewLinearizationPoint(), and weightInMixture().