CMS 3D CMS Logo

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

#include <GsfTrack.h>

Inheritance diagram for reco::GsfTrack:
reco::Track reco::TrackBase reco::GsfTransientTrack

Public Types

enum  { dimensionMode = 3 }
 parameter dimension mode More...
 
enum  { covarianceSizeMode = dimensionMode * (dimensionMode + 1) / 2 }
 error matrix size mode More...
 
typedef math::Error< dimensionMode >::type CovarianceMatrixMode
 3 parameter covariance matrix (momentum part) from mode More...
 
typedef math::Vector< dimensionMode >::type ParameterVectorMode
 parameter vector (momentum part) from mode More...
 
- Public Types inherited from reco::TrackBase
enum  { dimension = 5 }
 parameter dimension More...
 
enum  { covarianceSize = dimension * (dimension + 1) / 2 }
 error matrix size More...
 
enum  {
  i_qoverp = 0, i_lambda, i_phi, i_dxy,
  i_dsz
}
 enumerator provided indices to the five parameters More...
 
typedef std::bitset< algoSizeAlgoMask
 algo mask More...
 
typedef math::Error< dimension >::type CovarianceMatrix
 5 parameter covariance matrix More...
 
typedef unsigned int index
 index type More...
 
typedef math::Vector< dimension >::type ParameterVector
 parameter vector More...
 
typedef math::XYZPoint Point
 point in the space More...
 
enum  TrackAlgorithm {
  undefAlgorithm = 0, ctf = 1, duplicateMerge = 2, cosmics = 3,
  initialStep = 4, lowPtTripletStep = 5, pixelPairStep = 6, detachedTripletStep = 7,
  mixedTripletStep = 8, pixelLessStep = 9, tobTecStep = 10, jetCoreRegionalStep = 11,
  conversionStep = 12, muonSeededStepInOut = 13, muonSeededStepOutIn = 14, outInEcalSeededConv = 15,
  inOutEcalSeededConv = 16, nuclInter = 17, standAloneMuon = 18, globalMuon = 19,
  cosmicStandAloneMuon = 20, cosmicGlobalMuon = 21, highPtTripletStep = 22, lowPtQuadStep = 23,
  detachedQuadStep = 24, displacedGeneralStep = 25, displacedRegionalStep = 26, bTagGhostTracks = 27,
  beamhalo = 28, gsf = 29, hltPixel = 30, hltIter0 = 31,
  hltIter1 = 32, hltIter2 = 33, hltIter3 = 34, hltIter4 = 35,
  hltIterX = 36, hiRegitMuInitialStep = 37, hiRegitMuLowPtTripletStep = 38, hiRegitMuPixelPairStep = 39,
  hiRegitMuDetachedTripletStep = 40, hiRegitMuMixedTripletStep = 41, hiRegitMuPixelLessStep = 42, hiRegitMuTobTecStep = 43,
  hiRegitMuMuonSeededStepInOut = 44, hiRegitMuMuonSeededStepOutIn = 45, algoSize = 46
}
 track algorithm More...
 
enum  TrackQuality {
  undefQuality = -1, loose = 0, tight = 1, highPurity = 2,
  confirmed = 3, goodIterative = 4, looseSetWithPV = 5, highPuritySetWithPV = 6,
  discarded = 7, qualitySize = 8
}
 track quality More...
 
typedef math::XYZVector Vector
 spatial vector More...
 

Public Member Functions

int chargeMode () const
 track electric charge from mode More...
 
CovarianceMatrixMode covarianceMode () const
 return track covariance matrix from mode More...
 
double covarianceMode (int i, int j) const
 (i,j)-th element of covarianve matrix ( i, j = 0, ... 2 ) from mode More...
 
double errorMode (int i) const
 error on specified element from mode More...
 
double etaMode () const
 pseudorapidity of momentum vector from mode More...
 
double etaModeError () const
 error on eta from mode More...
 
const GsfTrackExtraRefgsfExtra () const
 reference to "extra" object More...
 
 GsfTrack ()
 default constructor More...
 
 GsfTrack (double chi2, double ndof, const Point &, const Vector &, int charge, const CovarianceMatrix &)
 
double lambdaMode () const
 Lambda angle from mode. More...
 
double lambdaModeError () const
 error on lambda from mode More...
 
const VectormomentumMode () const
 track momentum vector from mode More...
 
double parameterMode (int i) const
 i-th parameter ( i = 0, ... 2 ) from mode More...
 
ParameterVectorMode parametersMode () const
 Track parameters with one-to-one correspondence to the covariance matrix from mode. More...
 
double phiMode () const
 azimuthal angle of momentum vector from mode More...
 
double phiModeError () const
 error on phi from mode More...
 
double pMode () const
 momentum vector magnitude from mode More...
 
double ptMode () const
 track transverse momentum from mode More...
 
double ptModeError () const
 error on Pt (set to 1000 TeV if charge==0 for safety) from mode More...
 
double pxMode () const
 x coordinate of momentum vector from mode More...
 
double pyMode () const
 y coordinate of momentum vector from mode More...
 
double pzMode () const
 z coordinate of momentum vector from mode More...
 
double qoverpMode () const
 q/p from mode More...
 
double qoverpModeError () const
 error on signed transverse curvature from mode More...
 
void setGsfExtra (const GsfTrackExtraRef &ref)
 set reference to GSF "extra" object More...
 
void setMode (int chargeMode, const Vector &momentumMode, const CovarianceMatrixMode &covarianceMode)
 set mode parameters More...
 
double thetaMode () const
 polar angle from mode More...
 
double thetaModeError () const
 error on theta from mode More...
 
- Public Member Functions inherited from reco::Track
const TrackExtraRefextra () const
 reference to "extra" object More...
 
CovarianceMatrixfillInner (CovarianceMatrix &v) const
 
CovarianceMatrixfillOuter (CovarianceMatrix &v) const
 fill outermost trajectory state curvilinear errors More...
 
unsigned short found () const
 Number of valid hits on track. More...
 
unsigned int innerDetId () const
 DetId of the detector on which surface the innermost state is located. More...
 
const math::XYZVectorinnerMomentum () const
 momentum vector at the innermost hit position More...
 
bool innerOk () const
 return true if the innermost hit is valid More...
 
const math::XYZPointinnerPosition () const
 position of the innermost hit More...
 
CovarianceMatrix innerStateCovariance () const
 innermost trajectory state curvilinear errors More...
 
unsigned short lost () const
 Number of lost (=invalid) hits on track. More...
 
unsigned int outerDetId () const
 DetId of the detector on which surface the outermost state is located. More...
 
double outerEta () const
 pseudorapidity of the momentum vector at the outermost hit position More...
 
const math::XYZVectorouterMomentum () const
 momentum vector at the outermost hit position More...
 
bool outerOk () const
 return 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 math::XYZPointouterPosition () const
 position of the outermost hit 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 of the outermost hit position More...
 
double outerY () const
 y coordinate of the outermost hit position More...
 
double outerZ () const
 z coordinate of the outermost hit position More...
 
TrackingRecHitRef recHit (size_t i) const
 Get i-th hit on the track. More...
 
auto recHits () const
 Access to reconstructed hits on the track. More...
 
trackingRecHit_iterator recHitsBegin () const
 Iterator to first hit on the track. More...
 
trackingRecHit_iterator recHitsEnd () const
 Iterator to last hit on the track. More...
 
bool recHitsOk () const
 
size_t recHitsSize () const
 Get number of RecHits. (Warning, this includes invalid hits, which are not physical hits). More...
 
const TrackResidualsresiduals () const
 get the residuals More...
 
const PropagationDirectionseedDirection () const
 direction of how the hits were sorted in the original seed More...
 
const edm::RefToBase< TrajectorySeed > & seedRef () const
 
void setExtra (const TrackExtraRef &ref)
 set reference to "extra" object More...
 
 Track ()
 default constructor More...
 
 Track (double chi2, double ndof, const Point &referencePoint, const Vector &momentum, int charge, const CovarianceMatrix &, TrackAlgorithm=undefAlgorithm, TrackQuality quality=undefQuality, float t0=0, float beta=0, float covt0t0=-1., float covbetabeta=-1.)
 constructor from fit parameters and error matrix More...
 
 ~Track () override
 virtual destructor More...
 
- Public Member Functions inherited from reco::TrackBase
TrackAlgorithm algo () const
 
AlgoMask algoMask () const
 
unsigned long long algoMaskUL () const
 
std::string algoName () const
 
bool appendHitPattern (const TrackingRecHit &hit, const TrackerTopology &ttopo)
 append a single hit to the HitPattern More...
 
bool appendHitPattern (const DetId &id, TrackingRecHit::Type hitType, const TrackerTopology &ttopo)
 
bool appendHitPattern (const uint16_t pattern, TrackingRecHit::Type hitType)
 
template<typename C >
bool appendHits (const C &c, const TrackerTopology &ttopo)
 append hit patterns from vector of hit references More...
 
template<typename I >
bool appendHits (const I &begin, const I &end, const TrackerTopology &ttopo)
 
bool appendMuonHitPattern (const DetId &id, TrackingRecHit::Type hitType)
 
bool appendTrackerHitPattern (uint16_t subdet, uint16_t layer, uint16_t stereo, TrackingRecHit::Type hitType)
 
double beta () const
 velocity at the reference point in natural units More...
 
double betaError () const
 error on beta More...
 
int charge () const
 track electric charge More...
 
double chi2 () const
 chi-squared of the fit More...
 
CovarianceMatrix covariance () const
 return track covariance matrix More...
 
double covariance (int i, int j) const
 (i,j)-th element of covariance matrix (i, j = 0, ... 4) More...
 
double covBetaBeta () const
 error on beta More...
 
double covt0t0 () const
 error on t0 More...
 
double d0 () const
 dxy parameter in perigee convention (d0 = -dxy) More...
 
double d0Error () const
 error on d0 More...
 
double dsz () const
 dsz parameter (THIS IS NOT the SZ impact parameter to (0,0,0) if refPoint is far from (0,0,0): see parametrization definition above for details) More...
 
double dsz (const Point &myBeamSpot) const
 dsz parameter with respect to a user-given beamSpot (WARNING: this quantity can only be interpreted as the distance in the S-Z plane to the beamSpot, if the beam spot is reasonably close to the refPoint, since linear approximations are involved). This is a good approximation for Tracker tracks. More...
 
double dszError () const
 error on dsz More...
 
double dxy () const
 dxy parameter. (This is the transverse impact parameter w.r.t. to (0,0,0) ONLY if refPoint is close to (0,0,0): see parametrization definition above for details). See also function dxy(myBeamSpot). More...
 
double dxy (const Point &myBeamSpot) const
 dxy parameter with respect to a user-given beamSpot (WARNING: this quantity can only be interpreted as a minimum transverse distance if beamSpot, if the beam spot is reasonably close to the refPoint, since linear approximations are involved). This is a good approximation for Tracker tracks. More...
 
double dxy (const BeamSpot &theBeamSpot) const
 dxy parameter with respect to the beamSpot taking into account the beamspot slopes (WARNING: this quantity can only be interpreted as a minimum transverse distance if beamSpot, if the beam spot is reasonably close to the refPoint, since linear approximations are involved). This is a good approximation for Tracker tracks. More...
 
double dxyError () const
 error on dxy More...
 
double dxyError (Point const &vtx, math::Error< 3 >::type const &vertexCov) const
 error on dxy with respect to a user-given reference point + uncertainty (i.e. reco::Vertex position) More...
 
double dxyError (const BeamSpot &theBeamSpot) const
 error on dxy with respect to a user-given beamspot More...
 
double dz () const
 dz parameter (= dsz/cos(lambda)). This is the track z0 w.r.t (0,0,0) only if the refPoint is close to (0,0,0). See also function dz(myBeamSpot) More...
 
double dz (const Point &myBeamSpot) const
 dz parameter with respect to a user-given beamSpot (WARNING: this quantity can only be interpreted as the track z0, if the beamSpot is reasonably close to the refPoint, since linear approximations are involved). This is a good approximation for Tracker tracks. More...
 
double dzError () const
 error on dz More...
 
double error (int i) const
 error on specified element More...
 
double eta () const
 pseudorapidity of momentum vector More...
 
double etaError () const
 error on eta More...
 
CovarianceMatrixfill (CovarianceMatrix &v) const
 fill SMatrix More...
 
const HitPatternhitPattern () const
 Access the hit pattern, indicating in which Tracker layers the track has hits. More...
 
bool isAlgoInMask (TrackAlgorithm a) const
 
bool isLooper () const
 
bool isTimeOk () const
 return true if timing measurement is usable More...
 
double lambda () const
 Lambda angle. More...
 
double lambdaError () const
 error on lambda More...
 
int missingInnerHits () const
 number of hits expected from inner track extrapolation but missing More...
 
int missingOuterHits () const
 number of hits expected from outer track extrapolation but missing More...
 
const Vectormomentum () const
 track momentum vector More...
 
double ndof () const
 number of degrees of freedom of the fit More...
 
signed char nLoops () const
 
double normalizedChi2 () const
 chi-squared divided by n.d.o.f. (or chi-squared * 1e6 if n.d.o.f. is zero) More...
 
unsigned short numberOfLostHits () const
 number of cases where track crossed a layer without getting a hit. More...
 
unsigned short numberOfValidHits () const
 number of valid hits found More...
 
TrackAlgorithm originalAlgo () const
 
double p () const
 momentum vector magnitude More...
 
double p2 () const
 momentum vector magnitude square More...
 
double parameter (int i) const
 i-th parameter ( i = 0, ... 4 ) More...
 
ParameterVector parameters () const
 Track parameters with one-to-one correspondence to the covariance matrix. More...
 
double phi () const
 azimuthal angle of momentum vector More...
 
double phiError () const
 error on phi More...
 
double pt () const
 track transverse momentum More...
 
double pt2 () const
 track transverse momentum square More...
 
double ptError () const
 error on Pt (set to 1000 TeV if charge==0 for safety) More...
 
double ptError2 () const
 error on Pt (set to 1000**2 TeV**2 if charge==0 for safety) More...
 
double px () const
 x coordinate of momentum vector More...
 
double py () const
 y coordinate of momentum vector More...
 
double pz () const
 z coordinate of momentum vector More...
 
double qoverp () const
 q / p More...
 
double qoverpError () const
 error on signed transverse curvature More...
 
bool quality (const TrackQuality) const
 Track quality. More...
 
int qualityMask () const
 
const PointreferencePoint () const
 Reference point on the track. More...
 
void resetHitPattern ()
 Sets HitPattern as empty. More...
 
void setAlgoMask (AlgoMask a)
 
void setAlgorithm (const TrackAlgorithm a)
 Track algorithm. More...
 
void setNLoops (signed char value)
 
void setOriginalAlgorithm (const TrackAlgorithm a)
 
void setQuality (const TrackQuality)
 
void setQualityMask (int qualMask)
 
void setStopReason (uint8_t value)
 
uint8_t stopReason () const
 
double t0 () const
 time at the reference point More...
 
double t0Error () const
 error on t0 More...
 
double theta () const
 polar angle More...
 
double thetaError () const
 error on theta More...
 
 TrackBase ()
 default constructor More...
 
 TrackBase (double chi2, double ndof, const Point &vertex, const Vector &momentum, int charge, const CovarianceMatrix &cov, TrackAlgorithm=undefAlgorithm, TrackQuality quality=undefQuality, signed char nloops=0, uint8_t stopReason=0, float t0=0.f, float beta=0.f, float covt0t0=-1.f, float covbetabeta=-1.f)
 constructor from fit parameters and error matrix More...
 
double validFraction () const
 fraction of valid hits on the track More...
 
const Pointvertex () const
 reference point on the track. This method is DEPRECATED, please use referencePoint() instead More...
 
double vx () const
 x coordinate of the reference point on track More...
 
double vy () const
 y coordinate of the reference point on track More...
 
double vz () const
 z coordinate of the reference point on track More...
 
virtual ~TrackBase ()
 virtual destructor More...
 

Private Member Functions

CovarianceMatrixModefill (CovarianceMatrixMode &v) const
 fill 3x3 SMatrix More...
 

Private Attributes

char chargeMode_
 electric charge from mode More...
 
float covarianceMode_ [covarianceSizeMode]
 3x3 momentum part of covariance (in q/p, lambda, phi) More...
 
GsfTrackExtraRef gsfExtra_
 reference to GSF "extra" extension More...
 
Vector momentumMode_
 momentum vector from mode More...
 

Additional Inherited Members

- Static Public Member Functions inherited from reco::TrackBase
static TrackAlgorithm algoByName (const std::string &name)
 
static std::string algoName (TrackAlgorithm)
 
static index covIndex (index i, index j)
 covariance matrix index in array More...
 
static TrackQuality qualityByName (const std::string &name)
 
static std::string qualityName (TrackQuality)
 
- Static Public Attributes inherited from reco::TrackBase
static const std::string algoNames []
 
static const std::string qualityNames []
 

Detailed Description

Definition at line 12 of file GsfTrack.h.

Member Typedef Documentation

◆ CovarianceMatrixMode

3 parameter covariance matrix (momentum part) from mode

Definition at line 21 of file GsfTrack.h.

◆ ParameterVectorMode

parameter vector (momentum part) from mode

Definition at line 19 of file GsfTrack.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

parameter dimension mode

Enumerator
dimensionMode 

Definition at line 15 of file GsfTrack.h.

◆ anonymous enum

anonymous enum

error matrix size mode

Enumerator
covarianceSizeMode 

Definition at line 17 of file GsfTrack.h.

Constructor & Destructor Documentation

◆ GsfTrack() [1/2]

GsfTrack::GsfTrack ( )

default constructor

Definition at line 4 of file GsfTrack.cc.

References chargeMode_, covarianceMode_, dimensionMode, mps_fire::i, heavyIonCSV_trainingSettings::idx, dqmiolumiharvest::j, and momentumMode_.

4  {
5  chargeMode_ = 0;
6  momentumMode_ = Vector(0., 0., 0.);
7  typedef unsigned int index;
8  index idx = 0;
9  for (index i = 0; i < dimensionMode; ++i)
10  for (index j = 0; j <= i; ++j)
11  covarianceMode_[idx++] = 0.;
12 }
char chargeMode_
electric charge from mode
Definition: GsfTrack.h:106
unsigned int index
index type
Definition: TrackBase.h:86
Vector momentumMode_
momentum vector from mode
Definition: GsfTrack.h:108
float covarianceMode_[covarianceSizeMode]
3x3 momentum part of covariance (in q/p, lambda, phi)
Definition: GsfTrack.h:110
math::XYZVector Vector
spatial vector
Definition: TrackBase.h:77

◆ GsfTrack() [2/2]

GsfTrack::GsfTrack ( double  chi2,
double  ndof,
const Point vertex,
const Vector momentum,
int  charge,
const CovarianceMatrix cov 
)

constructor from fit parameters and error matrix notice that the reference point must be the point of closest approch to the beamline.

Definition at line 14 of file GsfTrack.cc.

References covarianceMode_, dimensionMode, mps_fire::i, heavyIonCSV_trainingSettings::idx, and dqmiolumiharvest::j.

17  typedef unsigned int index;
18  index idx = 0;
19  for (index i = 0; i < dimensionMode; ++i)
20  for (index j = 0; j <= i; ++j)
21  covarianceMode_[idx++] = cov(i, j);
22 }
char chargeMode_
electric charge from mode
Definition: GsfTrack.h:106
unsigned int index
index type
Definition: TrackBase.h:86
Track()
default constructor
Definition: Track.h:30
double ndof() const
number of degrees of freedom of the fit
Definition: TrackBase.h:590
int charge() const
track electric charge
Definition: TrackBase.h:596
Vector momentumMode_
momentum vector from mode
Definition: GsfTrack.h:108
float covarianceMode_[covarianceSizeMode]
3x3 momentum part of covariance (in q/p, lambda, phi)
Definition: GsfTrack.h:110
const Point & vertex() const
reference point on the track. This method is DEPRECATED, please use referencePoint() instead ...
Definition: TrackBase.h:676
double chi2() const
chi-squared of the fit
Definition: TrackBase.h:587
const Vector & momentum() const
track momentum vector
Definition: TrackBase.h:664

Member Function Documentation

◆ chargeMode()

int reco::GsfTrack::chargeMode ( ) const
inline

track electric charge from mode

Definition at line 37 of file GsfTrack.h.

References chargeMode_.

Referenced by ptModeError(), qoverpMode(), and setMode().

37 { return chargeMode_; }
char chargeMode_
electric charge from mode
Definition: GsfTrack.h:106

◆ covarianceMode() [1/2]

CovarianceMatrixMode reco::GsfTrack::covarianceMode ( ) const
inline

return track covariance matrix from mode

Definition at line 65 of file GsfTrack.h.

References fill(), and visualization-live-secondInstance_cfg::m.

Referenced by ptModeError(), and setMode().

65  {
67  fill(m);
68  return m;
69  }
math::Error< dimensionMode >::type CovarianceMatrixMode
3 parameter covariance matrix (momentum part) from mode
Definition: GsfTrack.h:21
CovarianceMatrixMode & fill(CovarianceMatrixMode &v) const
fill 3x3 SMatrix
Definition: GsfTrack.cc:34

◆ covarianceMode() [2/2]

double reco::GsfTrack::covarianceMode ( int  i,
int  j 
) const
inline

(i,j)-th element of covarianve matrix ( i, j = 0, ... 2 ) from mode

Definition at line 74 of file GsfTrack.h.

References covarianceMode_, reco::TrackBase::covIndex(), mps_fire::i, and dqmiolumiharvest::j.

74 { return covarianceMode_[covIndex(i, j)]; }
static index covIndex(index i, index j)
covariance matrix index in array
Definition: TrackBase.h:541
float covarianceMode_[covarianceSizeMode]
3x3 momentum part of covariance (in q/p, lambda, phi)
Definition: GsfTrack.h:110

◆ errorMode()

double reco::GsfTrack::errorMode ( int  i) const
inline

error on specified element from mode

Definition at line 76 of file GsfTrack.h.

References covarianceMode_, reco::TrackBase::covIndex(), mps_fire::i, and mathSSE::sqrt().

Referenced by etaModeError(), lambdaModeError(), phiModeError(), qoverpModeError(), and thetaModeError().

76 { return sqrt(covarianceMode_[covIndex(i, i)]); }
static index covIndex(index i, index j)
covariance matrix index in array
Definition: TrackBase.h:541
T sqrt(T t)
Definition: SSEVec.h:23
float covarianceMode_[covarianceSizeMode]
3x3 momentum part of covariance (in q/p, lambda, phi)
Definition: GsfTrack.h:110

◆ etaMode()

double reco::GsfTrack::etaMode ( ) const
inline

pseudorapidity of momentum vector from mode

Definition at line 57 of file GsfTrack.h.

References momentumMode_.

Referenced by PFElecTkProducer::applySelection().

57 { return momentumMode_.Eta(); }
Vector momentumMode_
momentum vector from mode
Definition: GsfTrack.h:108

◆ etaModeError()

double reco::GsfTrack::etaModeError ( ) const
inline

error on eta from mode

Definition at line 94 of file GsfTrack.h.

References errorMode(), reco::TrackBase::i_lambda, pMode(), and ptMode().

94 { return errorMode(i_lambda) * pMode() / ptMode(); }
double errorMode(int i) const
error on specified element from mode
Definition: GsfTrack.h:76
double pMode() const
momentum vector magnitude from mode
Definition: GsfTrack.h:45
double ptMode() const
track transverse momentum from mode
Definition: GsfTrack.h:47

◆ fill()

GsfTrack::CovarianceMatrixMode & GsfTrack::fill ( CovarianceMatrixMode v) const
private

fill 3x3 SMatrix

Definition at line 34 of file GsfTrack.cc.

References covarianceMode_, dimensionMode, mps_fire::i, heavyIonCSV_trainingSettings::idx, dqmiolumiharvest::j, and findQualityFiles::v.

Referenced by covarianceMode().

34  {
35  typedef unsigned int index;
36  index idx = 0;
37  for (index i = 0; i < dimensionMode; ++i)
38  for (index j = 0; j <= i; ++j)
39  v(i, j) = covarianceMode_[idx++];
40  return v;
41 }
unsigned int index
index type
Definition: TrackBase.h:86
float covarianceMode_[covarianceSizeMode]
3x3 momentum part of covariance (in q/p, lambda, phi)
Definition: GsfTrack.h:110

◆ gsfExtra()

const GsfTrackExtraRef& reco::GsfTrack::gsfExtra ( ) const
inline

◆ lambdaMode()

double reco::GsfTrack::lambdaMode ( ) const
inline

Lambda angle from mode.

Definition at line 43 of file GsfTrack.h.

References M_PI, and momentumMode_.

Referenced by MTVHistoProducerAlgoForTracker::getRecoMomentum(), and parametersMode().

43 { return M_PI / 2 - momentumMode_.theta(); }
Vector momentumMode_
momentum vector from mode
Definition: GsfTrack.h:108
#define M_PI

◆ lambdaModeError()

double reco::GsfTrack::lambdaModeError ( ) const
inline

error on lambda from mode

Definition at line 92 of file GsfTrack.h.

References errorMode(), and reco::TrackBase::i_lambda.

Referenced by MTVHistoProducerAlgoForTracker::getRecoMomentum().

92 { return errorMode(i_lambda); }
double errorMode(int i) const
error on specified element from mode
Definition: GsfTrack.h:76

◆ momentumMode()

const Vector& reco::GsfTrack::momentumMode ( ) const
inline

track momentum vector from mode

Definition at line 60 of file GsfTrack.h.

References momentumMode_.

Referenced by setMode().

60 { return momentumMode_; }
Vector momentumMode_
momentum vector from mode
Definition: GsfTrack.h:108

◆ parameterMode()

double reco::GsfTrack::parameterMode ( int  i) const
inline

i-th parameter ( i = 0, ... 2 ) from mode

Definition at line 72 of file GsfTrack.h.

References mps_fire::i, and parametersMode().

72 { return parametersMode()[i]; }
ParameterVectorMode parametersMode() const
Track parameters with one-to-one correspondence to the covariance matrix from mode.
Definition: GsfTrack.h:63

◆ parametersMode()

ParameterVectorMode reco::GsfTrack::parametersMode ( ) const
inline

Track parameters with one-to-one correspondence to the covariance matrix from mode.

Definition at line 63 of file GsfTrack.h.

References lambdaMode(), phiMode(), and qoverpMode().

Referenced by parameterMode().

double phiMode() const
azimuthal angle of momentum vector from mode
Definition: GsfTrack.h:55
double qoverpMode() const
q/p from mode
Definition: GsfTrack.h:39
double lambdaMode() const
Lambda angle from mode.
Definition: GsfTrack.h:43
math::Vector< dimensionMode >::type ParameterVectorMode
parameter vector (momentum part) from mode
Definition: GsfTrack.h:19

◆ phiMode()

double reco::GsfTrack::phiMode ( ) const
inline

azimuthal angle of momentum vector from mode

Definition at line 55 of file GsfTrack.h.

References momentumMode_.

Referenced by PFElecTkProducer::applySelection(), MTVHistoProducerAlgoForTracker::getRecoMomentum(), and parametersMode().

55 { return momentumMode_.Phi(); }
Vector momentumMode_
momentum vector from mode
Definition: GsfTrack.h:108

◆ phiModeError()

double reco::GsfTrack::phiModeError ( ) const
inline

error on phi from mode

Definition at line 96 of file GsfTrack.h.

References errorMode(), and reco::TrackBase::i_phi.

Referenced by MTVHistoProducerAlgoForTracker::getRecoMomentum().

96 { return errorMode(i_phi); }
double errorMode(int i) const
error on specified element from mode
Definition: GsfTrack.h:76

◆ pMode()

double reco::GsfTrack::pMode ( ) const
inline

momentum vector magnitude from mode

Definition at line 45 of file GsfTrack.h.

References momentumMode_.

Referenced by etaModeError(), ptModeError(), and qoverpMode().

45 { return momentumMode_.R(); }
Vector momentumMode_
momentum vector from mode
Definition: GsfTrack.h:108

◆ ptMode()

double reco::GsfTrack::ptMode ( ) const
inline

track transverse momentum from mode

Definition at line 47 of file GsfTrack.h.

References momentumMode_, and mathSSE::sqrt().

Referenced by etaModeError(), MTVHistoProducerAlgoForTracker::getRecoMomentum(), and ptModeError().

47 { return sqrt(momentumMode_.Perp2()); }
Vector momentumMode_
momentum vector from mode
Definition: GsfTrack.h:108
T sqrt(T t)
Definition: SSEVec.h:23

◆ ptModeError()

double reco::GsfTrack::ptModeError ( ) const
inline

error on Pt (set to 1000 TeV if charge==0 for safety) from mode

Definition at line 81 of file GsfTrack.h.

References chargeMode(), covarianceMode(), reco::TrackBase::i_lambda, reco::TrackBase::i_qoverp, pMode(), ptMode(), pzMode(), and mathSSE::sqrt().

Referenced by MTVHistoProducerAlgoForTracker::getRecoMomentum().

81  {
82  return (chargeMode() != 0)
83  ? sqrt(ptMode() * ptMode() * pMode() * pMode() / chargeMode() / chargeMode() *
87  : 1.e6;
88  }
CovarianceMatrixMode covarianceMode() const
return track covariance matrix from mode
Definition: GsfTrack.h:65
double pzMode() const
z coordinate of momentum vector from mode
Definition: GsfTrack.h:53
double pMode() const
momentum vector magnitude from mode
Definition: GsfTrack.h:45
T sqrt(T t)
Definition: SSEVec.h:23
double ptMode() const
track transverse momentum from mode
Definition: GsfTrack.h:47
int chargeMode() const
track electric charge from mode
Definition: GsfTrack.h:37

◆ pxMode()

double reco::GsfTrack::pxMode ( ) const
inline

x coordinate of momentum vector from mode

Definition at line 49 of file GsfTrack.h.

References momentumMode_.

49 { return momentumMode_.x(); }
Vector momentumMode_
momentum vector from mode
Definition: GsfTrack.h:108

◆ pyMode()

double reco::GsfTrack::pyMode ( ) const
inline

y coordinate of momentum vector from mode

Definition at line 51 of file GsfTrack.h.

References momentumMode_.

51 { return momentumMode_.y(); }
Vector momentumMode_
momentum vector from mode
Definition: GsfTrack.h:108

◆ pzMode()

double reco::GsfTrack::pzMode ( ) const
inline

z coordinate of momentum vector from mode

Definition at line 53 of file GsfTrack.h.

References momentumMode_.

Referenced by ptModeError().

53 { return momentumMode_.z(); }
Vector momentumMode_
momentum vector from mode
Definition: GsfTrack.h:108

◆ qoverpMode()

double reco::GsfTrack::qoverpMode ( ) const
inline

q/p from mode

Definition at line 39 of file GsfTrack.h.

References chargeMode(), and pMode().

Referenced by MTVHistoProducerAlgoForTracker::getRecoMomentum(), and parametersMode().

39 { return chargeMode() / pMode(); }
double pMode() const
momentum vector magnitude from mode
Definition: GsfTrack.h:45
int chargeMode() const
track electric charge from mode
Definition: GsfTrack.h:37

◆ qoverpModeError()

double reco::GsfTrack::qoverpModeError ( ) const
inline

error on signed transverse curvature from mode

Definition at line 79 of file GsfTrack.h.

References errorMode(), and reco::TrackBase::i_qoverp.

Referenced by MTVHistoProducerAlgoForTracker::getRecoMomentum().

79 { return errorMode(i_qoverp); }
double errorMode(int i) const
error on specified element from mode
Definition: GsfTrack.h:76

◆ setGsfExtra()

void reco::GsfTrack::setGsfExtra ( const GsfTrackExtraRef ref)
inline

set reference to GSF "extra" object

Definition at line 29 of file GsfTrack.h.

References gsfExtra_.

Referenced by helper::GsfElectronCollectionStoreManager::cloneAndStore().

29 { gsfExtra_ = ref; }
GsfTrackExtraRef gsfExtra_
reference to GSF "extra" extension
Definition: GsfTrack.h:104

◆ setMode()

void GsfTrack::setMode ( int  chargeMode,
const Vector momentumMode,
const CovarianceMatrixMode covarianceMode 
)

set mode parameters

Definition at line 24 of file GsfTrack.cc.

References chargeMode(), chargeMode_, covarianceMode(), covarianceMode_, dimensionMode, mps_fire::i, heavyIonCSV_trainingSettings::idx, dqmiolumiharvest::j, momentumMode(), and momentumMode_.

24  {
27  typedef unsigned int index;
28  index idx = 0;
29  for (index i = 0; i < dimensionMode; ++i)
30  for (index j = 0; j <= i; ++j)
32 }
char chargeMode_
electric charge from mode
Definition: GsfTrack.h:106
unsigned int index
index type
Definition: TrackBase.h:86
CovarianceMatrixMode covarianceMode() const
return track covariance matrix from mode
Definition: GsfTrack.h:65
Vector momentumMode_
momentum vector from mode
Definition: GsfTrack.h:108
float covarianceMode_[covarianceSizeMode]
3x3 momentum part of covariance (in q/p, lambda, phi)
Definition: GsfTrack.h:110
const Vector & momentumMode() const
track momentum vector from mode
Definition: GsfTrack.h:60
int chargeMode() const
track electric charge from mode
Definition: GsfTrack.h:37

◆ thetaMode()

double reco::GsfTrack::thetaMode ( ) const
inline

polar angle from mode

Definition at line 41 of file GsfTrack.h.

References momentumMode_.

41 { return momentumMode_.theta(); }
Vector momentumMode_
momentum vector from mode
Definition: GsfTrack.h:108

◆ thetaModeError()

double reco::GsfTrack::thetaModeError ( ) const
inline

error on theta from mode

Definition at line 90 of file GsfTrack.h.

References errorMode(), and reco::TrackBase::i_lambda.

90 { return errorMode(i_lambda); }
double errorMode(int i) const
error on specified element from mode
Definition: GsfTrack.h:76

Member Data Documentation

◆ chargeMode_

char reco::GsfTrack::chargeMode_
private

electric charge from mode

Definition at line 106 of file GsfTrack.h.

Referenced by chargeMode(), GsfTrack(), and setMode().

◆ covarianceMode_

float reco::GsfTrack::covarianceMode_[covarianceSizeMode]
private

3x3 momentum part of covariance (in q/p, lambda, phi)

Definition at line 110 of file GsfTrack.h.

Referenced by covarianceMode(), errorMode(), fill(), GsfTrack(), and setMode().

◆ gsfExtra_

GsfTrackExtraRef reco::GsfTrack::gsfExtra_
private

reference to GSF "extra" extension

Definition at line 104 of file GsfTrack.h.

Referenced by gsfExtra(), and setGsfExtra().

◆ momentumMode_

Vector reco::GsfTrack::momentumMode_
private

momentum vector from mode

Definition at line 108 of file GsfTrack.h.

Referenced by etaMode(), GsfTrack(), lambdaMode(), momentumMode(), phiMode(), pMode(), ptMode(), pxMode(), pyMode(), pzMode(), setMode(), and thetaMode().