CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
reco::TrackExtra Class Reference

#include <DataFormats/TrackReco/interface/TrackExtra.h>

Inheritance diagram for reco::TrackExtra:
reco::TrackExtraBase

Public Types

enum  { dimension = 5 }
 tracker parameter dimension More...
 
enum  { covarianceSize = dimension * (dimension + 1) / 2 }
 track error matrix size More...
 
typedef math::Error< 5 >::type CovarianceMatrix
 5 parameter covariance matrix More...
 
typedef unsigned int index
 index type More...
 
typedef math::XYZPoint Point
 point in the space More...
 
typedef math::XYZVector Vector
 spatial vector More...
 
- Public Types inherited from reco::TrackExtraBase
using Chi2sFive = std::vector< unsigned char >
 
using TrajParams = std::vector< LocalTrajectoryParameters >
 

Public Member Functions

CovarianceMatrixfillInner (CovarianceMatrix &v) const
 fill outermost trajectory state curvilinear errors More...
 
CovarianceMatrixfillOuter (CovarianceMatrix &v) const
 fill outermost trajectory state curvilinear errors More...
 
unsigned int innerDetId () const
 DetId of the detector on which surface the innermost state is located. More...
 
const VectorinnerMomentum () const
 momentum vector at innermost hit position More...
 
bool innerOk () const
 returns true if the innermost hit is valid More...
 
const PointinnerPosition () const
 innermost hit position More...
 
CovarianceMatrix innerStateCovariance () const
 innermost trajectory state curvilinear errors More...
 
unsigned int outerDetId () const
 DetId of the detector on which surface the outermost state is located. More...
 
double outerEta () const
 pseudorapidity the momentum vector at the outermost hit position More...
 
const VectorouterMomentum () const
 momentum vector at outermost hit position More...
 
bool outerOk () const
 returns true if the outermost hit is valid More...
 
double outerP () const
 magnitude of momentum vector at the outermost hit position More...
 
double outerPhi () const
 azimuthal angle of the momentum vector at the outermost hit position More...
 
const PointouterPosition () const
 outermost hit position More...
 
double outerPt () const
 transverse momentum at the outermost hit position More...
 
double outerPx () const
 x coordinate of momentum vector at the outermost hit position More...
 
double outerPy () const
 y coordinate of momentum vector at the outermost hit position More...
 
double outerPz () const
 z coordinate of momentum vector at the outermost hit position More...
 
double outerRadius () const
 polar radius of the outermost hit position More...
 
CovarianceMatrix outerStateCovariance () const
 outermost trajectory state curvilinear errors More...
 
double outerTheta () const
 polar angle of the momentum vector at the outermost hit position More...
 
double outerX () const
 x coordinate the outermost hit position More...
 
double outerY () const
 y coordinate the outermost hit position More...
 
double outerZ () const
 z coordinate the outermost hit position More...
 
const TrackResidualsresiduals () const
 get the residuals More...
 
const PropagationDirectionseedDirection () const
 
const edm::RefToBase< TrajectorySeed > & seedRef () const
 
void setResiduals (const TrackResiduals &r)
 set the residuals More...
 
void setSeedRef (const edm::RefToBase< TrajectorySeed > &r)
 
 TrackExtra ()
 default constructor More...
 
 TrackExtra (const Point &outerPosition, const Vector &outerMomentum, bool ok, const Point &innerPosition, const Vector &innerMomentum, bool iok, const CovarianceMatrix &outerState, unsigned int outerId, const CovarianceMatrix &innerState, unsigned int innerId, PropagationDirection seedDir, edm::RefToBase< TrajectorySeed > seedRef=edm::RefToBase< TrajectorySeed >())
 constructor from outermost/innermost position and momentum and Seed information More...
 
- Public Member Functions inherited from reco::TrackExtraBase
Chi2sFive const & chi2sX5 () const
 
unsigned int firstRecHit () const
 
TrackingRecHitRef recHit (unsigned int i) const
 get i-th recHit More...
 
TrackingRecHitRef recHitRef (unsigned int i) const
 get a ref to i-th recHit More...
 
auto recHits () const
 accessor to RecHits More...
 
trackingRecHit_iterator recHitsBegin () const
 first iterator over RecHits More...
 
trackingRecHit_iterator recHitsEnd () const
 last iterator over RecHits More...
 
TrackingRecHitCollection const & recHitsProduct () const
 
unsigned int recHitsSize () const
 number of RecHits More...
 
void setHits (TrackingRecHitRefProd const &prod, unsigned firstH, unsigned int nH)
 
void setTrajParams (TrajParams tmps, Chi2sFive chi2s)
 
 TrackExtraBase ()
 default constructor More...
 
TrajParams const & trajParams () const
 

Private Attributes

float innerCovariance_ [covarianceSize]
 innermost trajectory state More...
 
unsigned int innerDetId_
 
Vector innerMomentum_
 momentum vector at innermost hit position More...
 
bool innerOk_
 innermost hit validity flag More...
 
Point innerPosition_
 innermost hit position More...
 
float outerCovariance_ [covarianceSize]
 outermost trajectory state curvilinear errors More...
 
unsigned int outerDetId_
 
Vector outerMomentum_
 momentum vector at outermost hit position More...
 
bool outerOk_
 outermost hit validity flag More...
 
Point outerPosition_
 outermost hit position More...
 
PropagationDirection seedDir_
 
edm::RefToBase< TrajectorySeedseedRef_
 
TrackResiduals trackResiduals_
 unbiased track residuals More...
 

Detailed Description

Additional information about a reconstructed track. It is stored in RECO and supplements the basic information stored in the Track class that is stored on AOD only. If you wish to use information in the TrackExtra class, you should access it via the reference supplied in the Track class.

Author
Luca Lista, INFN

Definition at line 26 of file TrackExtra.h.

Member Typedef Documentation

◆ CovarianceMatrix

5 parameter covariance matrix

Definition at line 37 of file TrackExtra.h.

◆ index

typedef unsigned int reco::TrackExtra::index

index type

Definition at line 39 of file TrackExtra.h.

◆ Point

point in the space

Definition at line 33 of file TrackExtra.h.

◆ Vector

spatial vector

Definition at line 35 of file TrackExtra.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

tracker parameter dimension

Enumerator
dimension 

Definition at line 29 of file TrackExtra.h.

◆ anonymous enum

anonymous enum

track error matrix size

Enumerator
covarianceSize 

Definition at line 31 of file TrackExtra.h.

Constructor & Destructor Documentation

◆ TrackExtra() [1/2]

reco::TrackExtra::TrackExtra ( )
inline

default constructor

Definition at line 42 of file TrackExtra.h.

References covarianceSize, mps_fire::i, innerCovariance_, and outerCovariance_.

43  : outerMomentum_(),
44  outerOk_(false),
45  outerDetId_(0),
48  innerOk_(false),
49  innerDetId_(0),
51  seedRef_() {
52  for (index i = 0; i < covarianceSize; ++i) {
53  outerCovariance_[i] = 0;
54  innerCovariance_[i] = 0;
55  }
56  }
bool innerOk_
innermost hit validity flag
Definition: TrackExtra.h:153
Vector outerMomentum_
momentum vector at outermost hit position
Definition: TrackExtra.h:141
bool outerOk_
outermost hit validity flag
Definition: TrackExtra.h:143
float outerCovariance_[covarianceSize]
outermost trajectory state curvilinear errors
Definition: TrackExtra.h:145
edm::RefToBase< TrajectorySeed > seedRef_
Definition: TrackExtra.h:159
unsigned int index
index type
Definition: TrackExtra.h:39
unsigned int outerDetId_
Definition: TrackExtra.h:146
Vector innerMomentum_
momentum vector at innermost hit position
Definition: TrackExtra.h:151
unsigned int innerDetId_
Definition: TrackExtra.h:156
Point innerPosition_
innermost hit position
Definition: TrackExtra.h:149
float innerCovariance_[covarianceSize]
innermost trajectory state
Definition: TrackExtra.h:155
PropagationDirection seedDir_
Definition: TrackExtra.h:158

◆ TrackExtra() [2/2]

TrackExtra::TrackExtra ( const Point outerPosition,
const Vector outerMomentum,
bool  ok,
const Point innerPosition,
const Vector innerMomentum,
bool  iok,
const CovarianceMatrix outerState,
unsigned int  outerId,
const CovarianceMatrix innerState,
unsigned int  innerId,
PropagationDirection  seedDir,
edm::RefToBase< TrajectorySeed seedRef = edm::RefToBase<TrajectorySeed>() 
)

constructor from outermost/innermost position and momentum and Seed information

Definition at line 6 of file TrackExtra.cc.

References dimension, mps_fire::i, heavyIonCSV_trainingSettings::idx, innerCovariance_, dqmiolumiharvest::j, and outerCovariance_.

18  :
19 
23  outerOk_(ok),
24  outerDetId_(outerId),
27  innerOk_(iok),
28  innerDetId_(innerId),
29  seedDir_(seedDir),
30  seedRef_(seedRef) {
31  index idx = 0;
32  for (index i = 0; i < dimension; ++i) {
33  for (index j = 0; j <= i; ++j) {
34  outerCovariance_[idx] = outerCov(i, j);
35  innerCovariance_[idx] = innerCov(i, j);
36  ++idx;
37  }
38  }
39 }
bool innerOk_
innermost hit validity flag
Definition: TrackExtra.h:153
Vector outerMomentum_
momentum vector at outermost hit position
Definition: TrackExtra.h:141
bool outerOk_
outermost hit validity flag
Definition: TrackExtra.h:143
const Vector & innerMomentum() const
momentum vector at innermost hit position
Definition: TrackExtra.h:81
float outerCovariance_[covarianceSize]
outermost trajectory state curvilinear errors
Definition: TrackExtra.h:145
const edm::RefToBase< TrajectorySeed > & seedRef() const
Definition: TrackExtra.h:129
const Point & outerPosition() const
outermost hit position
Definition: TrackExtra.h:73
const Point & innerPosition() const
innermost hit position
Definition: TrackExtra.h:79
edm::RefToBase< TrajectorySeed > seedRef_
Definition: TrackExtra.h:159
unsigned int index
index type
Definition: TrackExtra.h:39
unsigned int outerDetId_
Definition: TrackExtra.h:146
Vector innerMomentum_
momentum vector at innermost hit position
Definition: TrackExtra.h:151
TrackExtraBase()
default constructor
unsigned int innerDetId_
Definition: TrackExtra.h:156
Point innerPosition_
innermost hit position
Definition: TrackExtra.h:149
Point outerPosition_
outermost hit position
Definition: TrackExtra.h:139
const Vector & outerMomentum() const
momentum vector at outermost hit position
Definition: TrackExtra.h:75
float innerCovariance_[covarianceSize]
innermost trajectory state
Definition: TrackExtra.h:155
PropagationDirection seedDir_
Definition: TrackExtra.h:158

Member Function Documentation

◆ fillInner()

TrackExtra::CovarianceMatrix & TrackExtra::fillInner ( CovarianceMatrix v) const

fill outermost trajectory state curvilinear errors

Definition at line 57 of file TrackExtra.cc.

References reco::fillCovariance(), innerCovariance_, and findQualityFiles::v.

57  {
59 }
PerigeeCovarianceMatrix & fillCovariance(PerigeeCovarianceMatrix &v, const float *data)
float innerCovariance_[covarianceSize]
innermost trajectory state
Definition: TrackExtra.h:155

◆ fillOuter()

TrackExtra::CovarianceMatrix & TrackExtra::fillOuter ( CovarianceMatrix v) const

fill outermost trajectory state curvilinear errors

Definition at line 53 of file TrackExtra.cc.

References reco::fillCovariance(), outerCovariance_, and findQualityFiles::v.

53  {
55 }
float outerCovariance_[covarianceSize]
outermost trajectory state curvilinear errors
Definition: TrackExtra.h:145
PerigeeCovarianceMatrix & fillCovariance(PerigeeCovarianceMatrix &v, const float *data)

◆ innerDetId()

unsigned int reco::TrackExtra::innerDetId ( ) const
inline

DetId of the detector on which surface the innermost state is located.

Definition at line 120 of file TrackExtra.h.

References innerDetId_.

Referenced by MuonReducedTrackExtraProducer::produce().

120 { return innerDetId_; }
unsigned int innerDetId_
Definition: TrackExtra.h:156

◆ innerMomentum()

const Vector& reco::TrackExtra::innerMomentum ( ) const
inline

momentum vector at innermost hit position

Definition at line 81 of file TrackExtra.h.

References innerMomentum_.

Referenced by MuonReducedTrackExtraProducer::produce().

81 { return innerMomentum_; }
Vector innerMomentum_
momentum vector at innermost hit position
Definition: TrackExtra.h:151

◆ innerOk()

bool reco::TrackExtra::innerOk ( ) const
inline

returns true if the innermost hit is valid

Definition at line 83 of file TrackExtra.h.

References innerOk_.

Referenced by MuonReducedTrackExtraProducer::produce().

83 { return innerOk_; }
bool innerOk_
innermost hit validity flag
Definition: TrackExtra.h:153

◆ innerPosition()

const Point& reco::TrackExtra::innerPosition ( ) const
inline

innermost hit position

Definition at line 79 of file TrackExtra.h.

References innerPosition_.

Referenced by MuonReducedTrackExtraProducer::produce().

79 { return innerPosition_; }
Point innerPosition_
innermost hit position
Definition: TrackExtra.h:149

◆ innerStateCovariance()

TrackExtra::CovarianceMatrix TrackExtra::innerStateCovariance ( ) const

innermost trajectory state curvilinear errors

Definition at line 47 of file TrackExtra.cc.

References reco::fillCovariance(), innerCovariance_, and findQualityFiles::v.

Referenced by MuonReducedTrackExtraProducer::produce().

47  {
50  return v;
51 }
PerigeeCovarianceMatrix & fillCovariance(PerigeeCovarianceMatrix &v, const float *data)
float innerCovariance_[covarianceSize]
innermost trajectory state
Definition: TrackExtra.h:155

◆ outerDetId()

unsigned int reco::TrackExtra::outerDetId ( ) const
inline

DetId of the detector on which surface the outermost state is located.

Definition at line 118 of file TrackExtra.h.

References outerDetId_.

Referenced by MuonReducedTrackExtraProducer::produce().

118 { return outerDetId_; }
unsigned int outerDetId_
Definition: TrackExtra.h:146

◆ outerEta()

double reco::TrackExtra::outerEta ( ) const
inline

pseudorapidity the momentum vector at the outermost hit position

Definition at line 103 of file TrackExtra.h.

References outerMomentum().

103 { return outerMomentum().Eta(); }
const Vector & outerMomentum() const
momentum vector at outermost hit position
Definition: TrackExtra.h:75

◆ outerMomentum()

const Vector& reco::TrackExtra::outerMomentum ( ) const
inline

momentum vector at outermost hit position

Definition at line 75 of file TrackExtra.h.

References outerMomentum_.

Referenced by outerEta(), outerP(), outerPhi(), outerPt(), outerTheta(), and MuonReducedTrackExtraProducer::produce().

75 { return outerMomentum_; }
Vector outerMomentum_
momentum vector at outermost hit position
Definition: TrackExtra.h:141

◆ outerOk()

bool reco::TrackExtra::outerOk ( ) const
inline

returns true if the outermost hit is valid

Definition at line 77 of file TrackExtra.h.

References outerOk_.

Referenced by MuonReducedTrackExtraProducer::produce().

77 { return outerOk_; }
bool outerOk_
outermost hit validity flag
Definition: TrackExtra.h:143

◆ outerP()

double reco::TrackExtra::outerP ( ) const
inline

magnitude of momentum vector at the outermost hit position

Definition at line 97 of file TrackExtra.h.

References outerMomentum().

97 { return outerMomentum().R(); }
const Vector & outerMomentum() const
momentum vector at outermost hit position
Definition: TrackExtra.h:75

◆ outerPhi()

double reco::TrackExtra::outerPhi ( ) const
inline

azimuthal angle of the momentum vector at the outermost hit position

Definition at line 101 of file TrackExtra.h.

References outerMomentum().

101 { return outerMomentum().Phi(); }
const Vector & outerMomentum() const
momentum vector at outermost hit position
Definition: TrackExtra.h:75

◆ outerPosition()

const Point& reco::TrackExtra::outerPosition ( ) const
inline

outermost hit position

Definition at line 73 of file TrackExtra.h.

References outerPosition_.

Referenced by outerRadius(), and MuonReducedTrackExtraProducer::produce().

73 { return outerPosition_; }
Point outerPosition_
outermost hit position
Definition: TrackExtra.h:139

◆ outerPt()

double reco::TrackExtra::outerPt ( ) const
inline

transverse momentum at the outermost hit position

Definition at line 99 of file TrackExtra.h.

References outerMomentum().

99 { return outerMomentum().Rho(); }
const Vector & outerMomentum() const
momentum vector at outermost hit position
Definition: TrackExtra.h:75

◆ outerPx()

double reco::TrackExtra::outerPx ( ) const
inline

x coordinate of momentum vector at the outermost hit position

Definition at line 85 of file TrackExtra.h.

References outerMomentum_.

85 { return outerMomentum_.X(); }
Vector outerMomentum_
momentum vector at outermost hit position
Definition: TrackExtra.h:141

◆ outerPy()

double reco::TrackExtra::outerPy ( ) const
inline

y coordinate of momentum vector at the outermost hit position

Definition at line 87 of file TrackExtra.h.

References outerMomentum_.

87 { return outerMomentum_.Y(); }
Vector outerMomentum_
momentum vector at outermost hit position
Definition: TrackExtra.h:141

◆ outerPz()

double reco::TrackExtra::outerPz ( ) const
inline

z coordinate of momentum vector at the outermost hit position

Definition at line 89 of file TrackExtra.h.

References outerMomentum_.

89 { return outerMomentum_.Z(); }
Vector outerMomentum_
momentum vector at outermost hit position
Definition: TrackExtra.h:141

◆ outerRadius()

double reco::TrackExtra::outerRadius ( ) const
inline

polar radius of the outermost hit position

Definition at line 107 of file TrackExtra.h.

References outerPosition().

107 { return outerPosition().Rho(); }
const Point & outerPosition() const
outermost hit position
Definition: TrackExtra.h:73

◆ outerStateCovariance()

TrackExtra::CovarianceMatrix TrackExtra::outerStateCovariance ( ) const

outermost trajectory state curvilinear errors

Definition at line 41 of file TrackExtra.cc.

References reco::fillCovariance(), outerCovariance_, and findQualityFiles::v.

Referenced by MuonReducedTrackExtraProducer::produce().

41  {
44  return v;
45 }
float outerCovariance_[covarianceSize]
outermost trajectory state curvilinear errors
Definition: TrackExtra.h:145
PerigeeCovarianceMatrix & fillCovariance(PerigeeCovarianceMatrix &v, const float *data)

◆ outerTheta()

double reco::TrackExtra::outerTheta ( ) const
inline

polar angle of the momentum vector at the outermost hit position

Definition at line 105 of file TrackExtra.h.

References outerMomentum().

105 { return outerMomentum().Theta(); }
const Vector & outerMomentum() const
momentum vector at outermost hit position
Definition: TrackExtra.h:75

◆ outerX()

double reco::TrackExtra::outerX ( ) const
inline

x coordinate the outermost hit position

Definition at line 91 of file TrackExtra.h.

References outerPosition_.

91 { return outerPosition_.X(); }
Point outerPosition_
outermost hit position
Definition: TrackExtra.h:139

◆ outerY()

double reco::TrackExtra::outerY ( ) const
inline

y coordinate the outermost hit position

Definition at line 93 of file TrackExtra.h.

References outerPosition_.

93 { return outerPosition_.Y(); }
Point outerPosition_
outermost hit position
Definition: TrackExtra.h:139

◆ outerZ()

double reco::TrackExtra::outerZ ( ) const
inline

z coordinate the outermost hit position

Definition at line 95 of file TrackExtra.h.

References outerPosition_.

95 { return outerPosition_.Z(); }
Point outerPosition_
outermost hit position
Definition: TrackExtra.h:139

◆ residuals()

const TrackResiduals& reco::TrackExtra::residuals ( ) const
inline

get the residuals

Definition at line 135 of file TrackExtra.h.

References trackResiduals_.

135 { return trackResiduals_; }
TrackResiduals trackResiduals_
unbiased track residuals
Definition: TrackExtra.h:162

◆ seedDirection()

const PropagationDirection& reco::TrackExtra::seedDirection ( ) const
inline

Definition at line 122 of file TrackExtra.h.

References seedDir_.

Referenced by MuonReducedTrackExtraProducer::produce().

122 { return seedDir_; }
PropagationDirection seedDir_
Definition: TrackExtra.h:158

◆ seedRef()

const edm::RefToBase<TrajectorySeed>& reco::TrackExtra::seedRef ( ) const
inline

return the edm::reference to the trajectory seed in the original seeds collection. If the collection has been dropped from the Event, the reference may be invalid. Its validity should be tested, before the reference is actually used.

Definition at line 129 of file TrackExtra.h.

References seedRef_.

Referenced by MuonReducedTrackExtraProducer::produce(), and ExtraFromSeeds::produce().

129 { return seedRef_; }
edm::RefToBase< TrajectorySeed > seedRef_
Definition: TrackExtra.h:159

◆ setResiduals()

void reco::TrackExtra::setResiduals ( const TrackResiduals r)
inline

◆ setSeedRef()

void reco::TrackExtra::setSeedRef ( const edm::RefToBase< TrajectorySeed > &  r)
inline

Definition at line 130 of file TrackExtra.h.

References seedRef_.

130 { seedRef_ = r; }
edm::RefToBase< TrajectorySeed > seedRef_
Definition: TrackExtra.h:159

Member Data Documentation

◆ innerCovariance_

float reco::TrackExtra::innerCovariance_[covarianceSize]
private

innermost trajectory state

Definition at line 155 of file TrackExtra.h.

Referenced by fillInner(), innerStateCovariance(), and TrackExtra().

◆ innerDetId_

unsigned int reco::TrackExtra::innerDetId_
private

Definition at line 156 of file TrackExtra.h.

Referenced by innerDetId().

◆ innerMomentum_

Vector reco::TrackExtra::innerMomentum_
private

momentum vector at innermost hit position

Definition at line 151 of file TrackExtra.h.

Referenced by innerMomentum().

◆ innerOk_

bool reco::TrackExtra::innerOk_
private

innermost hit validity flag

Definition at line 153 of file TrackExtra.h.

Referenced by innerOk().

◆ innerPosition_

Point reco::TrackExtra::innerPosition_
private

innermost hit position

Definition at line 149 of file TrackExtra.h.

Referenced by innerPosition().

◆ outerCovariance_

float reco::TrackExtra::outerCovariance_[covarianceSize]
private

outermost trajectory state curvilinear errors

Definition at line 145 of file TrackExtra.h.

Referenced by fillOuter(), outerStateCovariance(), and TrackExtra().

◆ outerDetId_

unsigned int reco::TrackExtra::outerDetId_
private

Definition at line 146 of file TrackExtra.h.

Referenced by outerDetId().

◆ outerMomentum_

Vector reco::TrackExtra::outerMomentum_
private

momentum vector at outermost hit position

Definition at line 141 of file TrackExtra.h.

Referenced by outerMomentum(), outerPx(), outerPy(), and outerPz().

◆ outerOk_

bool reco::TrackExtra::outerOk_
private

outermost hit validity flag

Definition at line 143 of file TrackExtra.h.

Referenced by outerOk().

◆ outerPosition_

Point reco::TrackExtra::outerPosition_
private

outermost hit position

Definition at line 139 of file TrackExtra.h.

Referenced by outerPosition(), outerX(), outerY(), and outerZ().

◆ seedDir_

PropagationDirection reco::TrackExtra::seedDir_
private

Definition at line 158 of file TrackExtra.h.

Referenced by seedDirection().

◆ seedRef_

edm::RefToBase<TrajectorySeed> reco::TrackExtra::seedRef_
private

Definition at line 159 of file TrackExtra.h.

Referenced by seedRef(), and setSeedRef().

◆ trackResiduals_

TrackResiduals reco::TrackExtra::trackResiduals_
private

unbiased track residuals

Definition at line 162 of file TrackExtra.h.

Referenced by residuals(), and setResiduals().