CMS 3D CMS Logo

TrackExtra.h
Go to the documentation of this file.
1 #ifndef TrackReco_TrackExtra_h
2 #define TrackReco_TrackExtra_h
3 
14 #include <Rtypes.h>
24 
25 namespace reco {
26  class TrackExtra : public TrackExtraBase {
27  public:
29  enum { dimension = 5 };
31  enum { covarianceSize = dimension * (dimension + 1) / 2 };
39  typedef unsigned int index;
40 
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  }
57 
60  const Vector &outerMomentum,
61  bool ok,
62  const Point &innerPosition,
63  const Vector &innerMomentum,
64  bool iok,
65  const CovarianceMatrix &outerState,
66  unsigned int outerId,
67  const CovarianceMatrix &innerState,
68  unsigned int innerId,
69  PropagationDirection seedDir,
71 
73  const Point &outerPosition() const { return outerPosition_; }
75  const Vector &outerMomentum() const { return outerMomentum_; }
77  bool outerOk() const { return outerOk_; }
79  const Point &innerPosition() const { return innerPosition_; }
81  const Vector &innerMomentum() const { return innerMomentum_; }
83  bool innerOk() const { return innerOk_; }
85  double outerPx() const { return outerMomentum_.X(); }
87  double outerPy() const { return outerMomentum_.Y(); }
89  double outerPz() const { return outerMomentum_.Z(); }
91  double outerX() const { return outerPosition_.X(); }
93  double outerY() const { return outerPosition_.Y(); }
95  double outerZ() const { return outerPosition_.Z(); }
97  double outerP() const { return outerMomentum().R(); }
99  double outerPt() const { return outerMomentum().Rho(); }
101  double outerPhi() const { return outerMomentum().Phi(); }
103  double outerEta() const { return outerMomentum().Eta(); }
105  double outerTheta() const { return outerMomentum().Theta(); }
107  double outerRadius() const { return outerPosition().Rho(); }
108 
118  unsigned int outerDetId() const { return outerDetId_; }
120  unsigned int innerDetId() const { return innerDetId_; }
121  // direction how the hits were sorted in the original seed
122  const PropagationDirection &seedDirection() const { return seedDir_; }
123 
133 
135  const TrackResiduals &residuals() const { return trackResiduals_; }
136 
137  private:
143  bool outerOk_;
146  unsigned int outerDetId_;
147 
153  bool innerOk_;
156  unsigned int innerDetId_;
157 
160 
163  };
164 
165 } // namespace reco
166 
167 #endif
TrackExtraBase.h
reco::TrackExtra::trackResiduals_
TrackResiduals trackResiduals_
unbiased track residuals
Definition: TrackExtra.h:162
reco::TrackExtra::innerDetId_
unsigned int innerDetId_
Definition: TrackExtra.h:156
mps_fire.i
i
Definition: mps_fire.py:428
anyDirection
Definition: PropagationDirection.h:4
reco::TrackExtra::fillOuter
CovarianceMatrix & fillOuter(CovarianceMatrix &v) const
fill outermost trajectory state curvilinear errors
Definition: TrackExtra.cc:53
funct::false
false
Definition: Factorize.h:29
reco::TrackExtra::innerMomentum_
Vector innerMomentum_
momentum vector at innermost hit position
Definition: TrackExtra.h:151
reco::TrackExtra::innerOk
bool innerOk() const
returns true if the innermost hit is valid
Definition: TrackExtra.h:83
reco::TrackExtra::TrackExtra
TrackExtra()
default constructor
Definition: TrackExtra.h:42
reco::TrackExtra::outerPt
double outerPt() const
transverse momentum at the outermost hit position
Definition: TrackExtra.h:99
reco::TrackExtra::setSeedRef
void setSeedRef(const edm::RefToBase< TrajectorySeed > &r)
Definition: TrackExtra.h:130
CovarianceMatrix
Definition: CovarianceMatrix.h:27
reco::TrackExtra::outerPhi
double outerPhi() const
azimuthal angle of the momentum vector at the outermost hit position
Definition: TrackExtra.h:101
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:45
findQualityFiles.v
v
Definition: findQualityFiles.py:179
reco::TrackResiduals
Definition: TrackResiduals.h:8
convertSQLiteXML.ok
bool ok
Definition: convertSQLiteXML.py:98
reco::TrackExtra::outerMomentum
const Vector & outerMomentum() const
momentum vector at outermost hit position
Definition: TrackExtra.h:75
reco::TrackExtra::outerStateCovariance
CovarianceMatrix outerStateCovariance() const
outermost trajectory state curvilinear errors
Definition: TrackExtra.cc:41
reco::TrackExtra::outerZ
double outerZ() const
z coordinate the outermost hit position
Definition: TrackExtra.h:95
reco::TrackExtra::dimension
Definition: TrackExtra.h:29
reco::TrackExtra
Definition: TrackExtra.h:26
reco::TrackExtra::outerDetId
unsigned int outerDetId() const
DetId of the detector on which surface the outermost state is located.
Definition: TrackExtra.h:118
reco::TrackExtra::seedRef_
edm::RefToBase< TrajectorySeed > seedRef_
Definition: TrackExtra.h:159
reco::TrackExtra::seedDirection
const PropagationDirection & seedDirection() const
Definition: TrackExtra.h:122
reco::TrackExtra::innerDetId
unsigned int innerDetId() const
DetId of the detector on which surface the innermost state is located.
Definition: TrackExtra.h:120
reco::TrackExtra::innerMomentum
const Vector & innerMomentum() const
momentum vector at innermost hit position
Definition: TrackExtra.h:81
reco::TrackExtra::outerX
double outerX() const
x coordinate the outermost hit position
Definition: TrackExtra.h:91
reco::TrackExtra::residuals
const TrackResiduals & residuals() const
get the residuals
Definition: TrackExtra.h:135
reco::TrackExtra::outerOk_
bool outerOk_
outermost hit validity flag
Definition: TrackExtra.h:143
CMS_THREAD_SAFE
#define CMS_THREAD_SAFE
Definition: thread_safety_macros.h:4
TrajectorySeed.h
RefToBase.h
reco::TrackExtra::covarianceSize
Definition: TrackExtra.h:31
reco::TrackExtra::outerPx
double outerPx() const
x coordinate of momentum vector at the outermost hit position
Definition: TrackExtra.h:85
reco::TrackExtra::outerMomentum_
Vector outerMomentum_
momentum vector at outermost hit position
Definition: TrackExtra.h:141
reco::TrackExtra::setResiduals
void setResiduals(const TrackResiduals &r)
set the residuals
Definition: TrackExtra.h:132
Error.h
Point
Structure Point Contains parameters of Gaussian fits to DMRs.
Definition: DMRtrends.cc:57
math::XYZPoint
XYZPointD XYZPoint
point in space with cartesian internal representation
Definition: Point3D.h:12
reco::TrackExtra::innerStateCovariance
CovarianceMatrix innerStateCovariance() const
innermost trajectory state curvilinear errors
Definition: TrackExtra.cc:47
reco::TrackExtra::outerPz
double outerPz() const
z coordinate of momentum vector at the outermost hit position
Definition: TrackExtra.h:89
reco::TrackExtra::outerOk
bool outerOk() const
returns true if the outermost hit is valid
Definition: TrackExtra.h:77
thread_safety_macros.h
math::XYZVector
XYZVectorD XYZVector
spatial vector with cartesian internal representation
Definition: Vector3D.h:31
reco::TrackExtra::fillInner
CovarianceMatrix & fillInner(CovarianceMatrix &v) const
fill outermost trajectory state curvilinear errors
Definition: TrackExtra.cc:57
math::Vector
fixed size vector
Definition: Vector.h:24
reco::TrackExtra::outerPosition
const Point & outerPosition() const
outermost hit position
Definition: TrackExtra.h:73
reco::TrackExtra::outerEta
double outerEta() const
pseudorapidity the momentum vector at the outermost hit position
Definition: TrackExtra.h:103
reco::TrackExtra::CovarianceMatrix
math::Error< 5 >::type CovarianceMatrix
5 parameter covariance matrix
Definition: TrackExtra.h:37
reco::TrackExtra::outerPosition_
Point outerPosition_
outermost hit position
Definition: TrackExtra.h:139
PropagationDirection.h
alignCSCRings.r
r
Definition: alignCSCRings.py:93
reco::TrackExtra::outerY
double outerY() const
y coordinate the outermost hit position
Definition: TrackExtra.h:93
reco::TrackExtra::index
unsigned int index
index type
Definition: TrackExtra.h:39
TrackResiduals.h
reco::TrackExtra::innerOk_
bool innerOk_
innermost hit validity flag
Definition: TrackExtra.h:153
math::Error::type
ErrorD< N >::type type
Definition: Error.h:32
PropagationDirection
PropagationDirection
Definition: PropagationDirection.h:4
reco::TrackExtra::seedDir_
PropagationDirection seedDir_
Definition: TrackExtra.h:158
reco::TrackExtra::outerCovariance_
float outerCovariance_[covarianceSize]
outermost trajectory state curvilinear errors
Definition: TrackExtra.h:145
reco::TrackExtra::outerPy
double outerPy() const
y coordinate of momentum vector at the outermost hit position
Definition: TrackExtra.h:87
Point3D.h
reco::TrackExtra::outerP
double outerP() const
magnitude of momentum vector at the outermost hit position
Definition: TrackExtra.h:97
edm::RefToBase< TrajectorySeed >
reco::TrackExtra::outerTheta
double outerTheta() const
polar angle of the momentum vector at the outermost hit position
Definition: TrackExtra.h:105
reco::TrackExtra::Vector
math::XYZVector Vector
spatial vector
Definition: TrackExtra.h:35
reco::TrackExtraBase
Definition: TrackExtraBase.h:22
reco::TrackExtra::seedRef
const edm::RefToBase< TrajectorySeed > & seedRef() const
Definition: TrackExtra.h:129
reco::TrackExtra::innerPosition_
Point innerPosition_
innermost hit position
Definition: TrackExtra.h:149
reco::TrackExtra::Point
math::XYZPoint Point
point in the space
Definition: TrackExtra.h:33
reco::TrackExtra::outerRadius
double outerRadius() const
polar radius of the outermost hit position
Definition: TrackExtra.h:107
Vector3D.h
reco::TrackExtra::innerPosition
const Point & innerPosition() const
innermost hit position
Definition: TrackExtra.h:79
reco::TrackExtra::innerCovariance_
float innerCovariance_[covarianceSize]
innermost trajectory state
Definition: TrackExtra.h:155
reco::TrackExtra::outerDetId_
unsigned int outerDetId_
Definition: TrackExtra.h:146