CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
PerigeeTrajectoryError Class Reference

#include <PerigeeTrajectoryError.h>

Public Member Functions

void calculateWeightMatrix () const
 
const AlgebraicSymMatrix55covarianceMatrix () const
 
double longitudinalImpactParameterError () const
 
 PerigeeTrajectoryError ()
 
 PerigeeTrajectoryError (const AlgebraicSymMatrix55 &aPerigeeError)
 
double phiError () const
 
double thetaError () const
 
double transverseCurvatureError () const
 
double transverseImpactParameterError () const
 
const AlgebraicSymMatrix55weightMatrix (int &error) const
 

Private Attributes

int inverseError
 
AlgebraicSymMatrix55 thePerigeeError
 
AlgebraicSymMatrix55 thePerigeeWeight
 
bool weightIsAvailable
 

Detailed Description

Class providing access to the Perigee parameters of a trajectory. These parameters consist of
transverse curvature (signed), theta, phi, transverse impact parameter (signed), longitudinal i.p.

Definition at line 14 of file PerigeeTrajectoryError.h.

Constructor & Destructor Documentation

◆ PerigeeTrajectoryError() [1/2]

PerigeeTrajectoryError::PerigeeTrajectoryError ( )
inline

Definition at line 16 of file PerigeeTrajectoryError.h.

16 {}

◆ PerigeeTrajectoryError() [2/2]

PerigeeTrajectoryError::PerigeeTrajectoryError ( const AlgebraicSymMatrix55 aPerigeeError)
inline

Definition at line 23 of file PerigeeTrajectoryError.h.

24  : thePerigeeError(aPerigeeError), weightIsAvailable(false) {}
AlgebraicSymMatrix55 thePerigeeError

Member Function Documentation

◆ calculateWeightMatrix()

void PerigeeTrajectoryError::calculateWeightMatrix ( ) const

Definition at line 4 of file PerigeeTrajectoryError.cc.

References inverseError, invertPosDefMatrix(), thePerigeeError, thePerigeeWeight, and weightIsAvailable.

Referenced by weightMatrix().

4  {
6  weightIsAvailable = true;
7 }
AlgebraicSymMatrix55 thePerigeeWeight
bool invertPosDefMatrix(ROOT::Math::SMatrix< T, N, N, ROOT::Math::MatRepSym< T, N > > &m)
AlgebraicSymMatrix55 thePerigeeError

◆ covarianceMatrix()

const AlgebraicSymMatrix55& PerigeeTrajectoryError::covarianceMatrix ( void  ) const
inline

◆ longitudinalImpactParameterError()

double PerigeeTrajectoryError::longitudinalImpactParameterError ( ) const
inline

The longitudinal impact parameter

Definition at line 68 of file PerigeeTrajectoryError.h.

References mathSSE::sqrt(), and thePerigeeError.

Referenced by PrimaryVertexValidation::analyze(), and VertexFitterResult::fillErrors().

68 { return sqrt(thePerigeeError(4, 4)); }
T sqrt(T t)
Definition: SSEVec.h:19
AlgebraicSymMatrix55 thePerigeeError

◆ phiError()

double PerigeeTrajectoryError::phiError ( ) const
inline

The phi angle

Definition at line 56 of file PerigeeTrajectoryError.h.

References mathSSE::sqrt(), and thePerigeeError.

Referenced by VertexFitterResult::fillErrors().

56 { return sqrt(thePerigeeError(2, 2)); }
T sqrt(T t)
Definition: SSEVec.h:19
AlgebraicSymMatrix55 thePerigeeError

◆ thetaError()

double PerigeeTrajectoryError::thetaError ( ) const
inline

The theta angle

Definition at line 50 of file PerigeeTrajectoryError.h.

References mathSSE::sqrt(), and thePerigeeError.

Referenced by VertexFitterResult::fillErrors().

50 { return sqrt(thePerigeeError(1, 1)); }
T sqrt(T t)
Definition: SSEVec.h:19
AlgebraicSymMatrix55 thePerigeeError

◆ transverseCurvatureError()

double PerigeeTrajectoryError::transverseCurvatureError ( ) const
inline

Definition at line 44 of file PerigeeTrajectoryError.h.

References mathSSE::sqrt(), and thePerigeeError.

Referenced by VertexFitterResult::fillErrors().

44 { return sqrt(thePerigeeError(0, 0)); }
T sqrt(T t)
Definition: SSEVec.h:19
AlgebraicSymMatrix55 thePerigeeError

◆ transverseImpactParameterError()

double PerigeeTrajectoryError::transverseImpactParameterError ( ) const
inline

The (signed) transverse impact parameter

Definition at line 62 of file PerigeeTrajectoryError.h.

References mathSSE::sqrt(), and thePerigeeError.

Referenced by VertexFitterResult::fillErrors().

62 { return sqrt(thePerigeeError(3, 3)); }
T sqrt(T t)
Definition: SSEVec.h:19
AlgebraicSymMatrix55 thePerigeeError

◆ weightMatrix()

const AlgebraicSymMatrix55& PerigeeTrajectoryError::weightMatrix ( int &  error) const
inline

The weight matrix (inverse of the covariance matrix) The error variable is 0 in case of success.

Definition at line 35 of file PerigeeTrajectoryError.h.

References calculateWeightMatrix(), relativeConstraints::error, inverseError, thePerigeeWeight, UNLIKELY, and weightIsAvailable.

Referenced by PerigeeLinearizedTrackState::predictedStateWeight().

Member Data Documentation

◆ inverseError

int PerigeeTrajectoryError::inverseError
mutableprivate

Definition at line 73 of file PerigeeTrajectoryError.h.

Referenced by calculateWeightMatrix(), and weightMatrix().

◆ thePerigeeError

AlgebraicSymMatrix55 PerigeeTrajectoryError::thePerigeeError
private

◆ thePerigeeWeight

AlgebraicSymMatrix55 PerigeeTrajectoryError::thePerigeeWeight
mutableprivate

Definition at line 72 of file PerigeeTrajectoryError.h.

Referenced by calculateWeightMatrix(), and weightMatrix().

◆ weightIsAvailable

bool PerigeeTrajectoryError::weightIsAvailable
mutableprivate

Definition at line 74 of file PerigeeTrajectoryError.h.

Referenced by calculateWeightMatrix(), and weightMatrix().