CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
VertexTrack< N > Class Template Referencefinal

#include <VertexTrack.h>

Inheritance diagram for VertexTrack< N >:
ReferenceCounted

Public Types

typedef ROOT::Math::SMatrix< double, 3, N - 2, ROOT::Math::MatRepStd< double, 3, N - 2 > > AlgebraicMatrix3M
 
typedef ROOT::Math::SMatrix< double, N - 2, N - 2, ROOT::Math::MatRepStd< double, N - 2, N - 2 > > AlgebraicMatrixMM
 
typedef ROOT::Math::SMatrix< double, N+1, N+1, ROOT::Math::MatRepSym< double, N+1 > > AlgebraicSymMatrixOO
 
typedef ROOT::Math::SVector< double, NAlgebraicVectorN
 
typedef ReferenceCountingPointer< LinearizedTrackState< N > > RefCountedLinearizedTrackState
 
typedef ReferenceCountingPointer< RefittedTrackState< N > > RefCountedRefittedTrackState
 

Public Member Functions

AlgebraicSymMatrixOO fullCovariance () const
 
bool fullCovarianceAvailable () const
 
RefCountedLinearizedTrackState linearizedTrack () const
 
bool operator== (const VertexTrack< N > &data) const
 
AlgebraicVectorN refittedParamFromEquation () const
 
RefCountedRefittedTrackState refittedState () const
 
bool refittedStateAvailable () const
 
float smoothedChi2 () const
 
bool tkToVertexCovarianceAvailable () const
 
VertexState vertexState () const
 
 VertexTrack (RefCountedLinearizedTrackState lt, VertexState v, float weight)
 
 VertexTrack (RefCountedLinearizedTrackState lt, VertexState v, float weight, const RefCountedRefittedTrackState &refittedState, float smoothedChi2)
 
 VertexTrack (RefCountedLinearizedTrackState lt, VertexState v, float weight, const RefCountedRefittedTrackState &refittedState, float smoothedChi2, const AlgebraicSymMatrixOO &fullCov)
 
float weight () const
 

Private Attributes

ROOT::Math::SMatrix< double, 6, 6, ROOT::Math::MatRepSym< double, 6 > > b6
 
ROOT::Math::SMatrix< double, 7, 7, ROOT::Math::MatRepSym< double, 7 > > b7
 
bool covAvailable
 
AlgebraicSymMatrixOO fullCovariance_
 
float smoothedChi2_
 
bool stAvailable
 
RefCountedLinearizedTrackState theLinTrack
 
RefCountedRefittedTrackState theRefittedState
 
VertexState theVertexState
 
float theWeight
 

Detailed Description

template<unsigned int N>
class VertexTrack< N >

Track information relative to a track-to-vertex association. The track weight corresponds to the distance of the track to the seed position.

Definition at line 18 of file VertexTrack.h.

Member Typedef Documentation

◆ AlgebraicMatrix3M

template<unsigned int N>
typedef ROOT::Math::SMatrix<double, 3, N - 2, ROOT::Math::MatRepStd<double, 3, N - 2> > VertexTrack< N >::AlgebraicMatrix3M

Definition at line 22 of file VertexTrack.h.

◆ AlgebraicMatrixMM

template<unsigned int N>
typedef ROOT::Math::SMatrix<double, N - 2, N - 2, ROOT::Math::MatRepStd<double, N - 2, N - 2> > VertexTrack< N >::AlgebraicMatrixMM

Definition at line 21 of file VertexTrack.h.

◆ AlgebraicSymMatrixOO

template<unsigned int N>
typedef ROOT::Math::SMatrix<double, N + 1, N + 1, ROOT::Math::MatRepSym<double, N + 1> > VertexTrack< N >::AlgebraicSymMatrixOO

Definition at line 23 of file VertexTrack.h.

◆ AlgebraicVectorN

template<unsigned int N>
typedef ROOT::Math::SVector<double, N> VertexTrack< N >::AlgebraicVectorN

Definition at line 20 of file VertexTrack.h.

◆ RefCountedLinearizedTrackState

Definition at line 26 of file VertexTrack.h.

◆ RefCountedRefittedTrackState

Definition at line 27 of file VertexTrack.h.

Constructor & Destructor Documentation

◆ VertexTrack() [1/3]

template<unsigned int N>
VertexTrack< N >::VertexTrack ( RefCountedLinearizedTrackState  lt,
VertexState  v,
float  weight 
)

Constructor with the linearized track data, vertex seed and weight

Definition at line 4 of file VertexTrack.cc.

5  : theLinTrack(std::move(lt)),
8  stAvailable(false),
9  covAvailable(false),
10  smoothedChi2_(-1.) {}
float smoothedChi2_
Definition: VertexTrack.h:110
Definition: weight.py:1
bool stAvailable
Definition: VertexTrack.h:104
VertexState theVertexState
Definition: VertexTrack.h:102
float theWeight
Definition: VertexTrack.h:103
bool covAvailable
Definition: VertexTrack.h:105
def move(src, dest)
Definition: eostools.py:511
RefCountedLinearizedTrackState theLinTrack
Definition: VertexTrack.h:101

◆ VertexTrack() [2/3]

template<unsigned int N>
VertexTrack< N >::VertexTrack ( RefCountedLinearizedTrackState  lt,
VertexState  v,
float  weight,
const RefCountedRefittedTrackState refittedState,
float  smoothedChi2 
)

Constructor with the linearized track data, vertex seed and weight and state at vertex, constrained by vertex

Definition at line 13 of file VertexTrack.cc.

18  : theLinTrack(std::move(lt)),
21  stAvailable(true),
22  covAvailable(false),
RefCountedRefittedTrackState refittedState() const
Definition: VertexTrack.h:71
float smoothedChi2_
Definition: VertexTrack.h:110
Definition: weight.py:1
float smoothedChi2() const
Definition: VertexTrack.h:67
bool stAvailable
Definition: VertexTrack.h:104
VertexState theVertexState
Definition: VertexTrack.h:102
RefCountedRefittedTrackState theRefittedState
Definition: VertexTrack.h:106
float theWeight
Definition: VertexTrack.h:103
bool covAvailable
Definition: VertexTrack.h:105
def move(src, dest)
Definition: eostools.py:511
RefCountedLinearizedTrackState theLinTrack
Definition: VertexTrack.h:101

◆ VertexTrack() [3/3]

template<unsigned int N>
VertexTrack< N >::VertexTrack ( RefCountedLinearizedTrackState  lt,
VertexState  v,
float  weight,
const RefCountedRefittedTrackState refittedState,
float  smoothedChi2,
const AlgebraicSymMatrixOO fullCov 
)

Constructor with the linearized track data, vertex seed and weight and state and covariance at vertex, constrained by vertex

Definition at line 27 of file VertexTrack.cc.

33  : theLinTrack(std::move(lt)),
36  stAvailable(true),
37  covAvailable(true),
39  fullCovariance_(fullCov),
RefCountedRefittedTrackState refittedState() const
Definition: VertexTrack.h:71
float smoothedChi2_
Definition: VertexTrack.h:110
Definition: weight.py:1
float smoothedChi2() const
Definition: VertexTrack.h:67
bool stAvailable
Definition: VertexTrack.h:104
AlgebraicSymMatrixOO fullCovariance_
Definition: VertexTrack.h:107
VertexState theVertexState
Definition: VertexTrack.h:102
RefCountedRefittedTrackState theRefittedState
Definition: VertexTrack.h:106
float theWeight
Definition: VertexTrack.h:103
bool covAvailable
Definition: VertexTrack.h:105
def move(src, dest)
Definition: eostools.py:511
RefCountedLinearizedTrackState theLinTrack
Definition: VertexTrack.h:101

Member Function Documentation

◆ fullCovariance()

template<unsigned int N>
AlgebraicSymMatrixOO VertexTrack< N >::fullCovariance ( ) const
inline

Track to vertex covarianceTrack to vertex covariance

Definition at line 84 of file VertexTrack.h.

References VertexTrack< N >::fullCovariance_, and VertexTrack< N >::tkToVertexCovarianceAvailable().

84  {
86  throw VertexException("VertexTrack::track to vertex covariance not available");
87  }
88  return fullCovariance_;
89  }
Common base class.
AlgebraicSymMatrixOO fullCovariance_
Definition: VertexTrack.h:107
bool tkToVertexCovarianceAvailable() const
Definition: VertexTrack.h:58

◆ fullCovarianceAvailable()

template<unsigned int N>
bool VertexTrack< N >::fullCovarianceAvailable ( ) const
inline

Definition at line 59 of file VertexTrack.h.

References VertexTrack< N >::covAvailable.

59 { return covAvailable; }
bool covAvailable
Definition: VertexTrack.h:105

◆ linearizedTrack()

template<unsigned int N>
RefCountedLinearizedTrackState VertexTrack< N >::linearizedTrack ( ) const
inline

Access methods

Definition at line 54 of file VertexTrack.h.

References VertexTrack< N >::theLinTrack.

Referenced by VertexTrack< N >::operator==().

54 { return theLinTrack; }
RefCountedLinearizedTrackState theLinTrack
Definition: VertexTrack.h:101

◆ operator==()

template<unsigned int N>
bool VertexTrack< N >::operator== ( const VertexTrack< N > &  data) const
inline

Equality for finding a VertexTrack in a container Compares the RecTrack addresses

Definition at line 94 of file VertexTrack.h.

References data, and VertexTrack< N >::linearizedTrack().

94 { return ((*data.linearizedTrack()) == (*linearizedTrack())); }
RefCountedLinearizedTrackState linearizedTrack() const
Definition: VertexTrack.h:54
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:80

◆ refittedParamFromEquation()

template<unsigned int N>
VertexTrack< N >::AlgebraicVectorN VertexTrack< N >::refittedParamFromEquation ( ) const

Method helping Kalman vertex fit

Definition at line 43 of file VertexTrack.cc.

43  {
44  return linearizedTrack()->refittedParamFromEquation(theRefittedState);
45 }
RefCountedRefittedTrackState theRefittedState
Definition: VertexTrack.h:106
RefCountedLinearizedTrackState linearizedTrack() const
Definition: VertexTrack.h:54

◆ refittedState()

template<unsigned int N>
RefCountedRefittedTrackState VertexTrack< N >::refittedState ( ) const
inline

Track state with vertex constraint

Definition at line 71 of file VertexTrack.h.

References VertexTrack< N >::refittedStateAvailable(), and VertexTrack< N >::theRefittedState.

71  {
72  if (!refittedStateAvailable()) {
73  throw VertexException("VertexTrack::refitted state not available");
74  }
75  return theRefittedState;
76  }
Common base class.
bool refittedStateAvailable() const
Definition: VertexTrack.h:57
RefCountedRefittedTrackState theRefittedState
Definition: VertexTrack.h:106

◆ refittedStateAvailable()

template<unsigned int N>
bool VertexTrack< N >::refittedStateAvailable ( ) const
inline

Definition at line 57 of file VertexTrack.h.

References VertexTrack< N >::stAvailable.

Referenced by VertexTrack< N >::refittedState().

57 { return stAvailable; }
bool stAvailable
Definition: VertexTrack.h:104

◆ smoothedChi2()

template<unsigned int N>
float VertexTrack< N >::smoothedChi2 ( ) const
inline

The smoother track-chi2 (can be used to test the track-vertex compatibility). Its value has a meaning only if the smoother has been run after the vertex fit (track-refit) . Otherwise, the value returned is -1.

Definition at line 67 of file VertexTrack.h.

References VertexTrack< N >::smoothedChi2_.

67 { return smoothedChi2_; }
float smoothedChi2_
Definition: VertexTrack.h:110

◆ tkToVertexCovarianceAvailable()

template<unsigned int N>
bool VertexTrack< N >::tkToVertexCovarianceAvailable ( ) const
inline

Definition at line 58 of file VertexTrack.h.

References VertexTrack< N >::covAvailable.

Referenced by VertexTrack< N >::fullCovariance().

58 { return covAvailable; }
bool covAvailable
Definition: VertexTrack.h:105

◆ vertexState()

template<unsigned int N>
VertexState VertexTrack< N >::vertexState ( ) const
inline

Definition at line 55 of file VertexTrack.h.

References VertexTrack< N >::theVertexState.

55 { return theVertexState; }
VertexState theVertexState
Definition: VertexTrack.h:102

◆ weight()

template<unsigned int N>
float VertexTrack< N >::weight ( ) const
inline

Definition at line 56 of file VertexTrack.h.

References VertexTrack< N >::theWeight.

56 { return theWeight; }
float theWeight
Definition: VertexTrack.h:103

Member Data Documentation

◆ b6

template<unsigned int N>
ROOT::Math::SMatrix<double, 6, 6, ROOT::Math::MatRepSym<double, 6> > VertexTrack< N >::b6
private

Definition at line 108 of file VertexTrack.h.

◆ b7

template<unsigned int N>
ROOT::Math::SMatrix<double, 7, 7, ROOT::Math::MatRepSym<double, 7> > VertexTrack< N >::b7
private

Definition at line 109 of file VertexTrack.h.

◆ covAvailable

template<unsigned int N>
bool VertexTrack< N >::covAvailable
private

◆ fullCovariance_

template<unsigned int N>
AlgebraicSymMatrixOO VertexTrack< N >::fullCovariance_
private

Definition at line 107 of file VertexTrack.h.

Referenced by VertexTrack< N >::fullCovariance().

◆ smoothedChi2_

template<unsigned int N>
float VertexTrack< N >::smoothedChi2_
private

Definition at line 110 of file VertexTrack.h.

Referenced by VertexTrack< N >::smoothedChi2().

◆ stAvailable

template<unsigned int N>
bool VertexTrack< N >::stAvailable
private

Definition at line 104 of file VertexTrack.h.

Referenced by VertexTrack< N >::refittedStateAvailable().

◆ theLinTrack

template<unsigned int N>
RefCountedLinearizedTrackState VertexTrack< N >::theLinTrack
private

Definition at line 101 of file VertexTrack.h.

Referenced by VertexTrack< N >::linearizedTrack().

◆ theRefittedState

template<unsigned int N>
RefCountedRefittedTrackState VertexTrack< N >::theRefittedState
private

Definition at line 106 of file VertexTrack.h.

Referenced by VertexTrack< N >::refittedState().

◆ theVertexState

template<unsigned int N>
VertexState VertexTrack< N >::theVertexState
private

Definition at line 102 of file VertexTrack.h.

Referenced by VertexTrack< N >::vertexState().

◆ theWeight

template<unsigned int N>
float VertexTrack< N >::theWeight
private

Definition at line 103 of file VertexTrack.h.

Referenced by VertexTrack< N >::weight().