CMS 3D CMS Logo

Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Private Attributes

reco::TrackBase Class Reference

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

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

List of all members.

Public Types

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 math::Error< dimension >
::type 
CovarianceMatrix
 5 parameter covariance matrix
typedef unsigned int index
 index type
typedef math::Vector
< dimension >::type 
ParameterVector
 parameter vector
typedef math::XYZPoint Point
 point in the space
enum  TrackAlgorithm {
  undefAlgorithm = 0, ctf = 1, rs = 2, cosmics = 3,
  iter0 = 4, iter1 = 5, iter2 = 6, iter3 = 7,
  iter4 = 8, iter5 = 9, iter6 = 10, iter7 = 11,
  iter8 = 12, iter9 = 13, iter10 = 14, outInEcalSeededConv = 15,
  inOutEcalSeededConv = 16, nuclInter = 17, standAloneMuon = 18, globalMuon = 19,
  cosmicStandAloneMuon = 20, cosmicGlobalMuon = 21, iter1LargeD0 = 22, iter2LargeD0 = 23,
  iter3LargeD0 = 24, iter4LargeD0 = 25, iter5LargeD0 = 26, bTagGhostTracks = 27,
  beamhalo = 28, gsf = 29, algoSize = 30
}
 

track algorithm

More...
enum  TrackQuality {
  undefQuality = -1, loose = 0, tight = 1, highPurity = 2,
  confirmed = 3, goodIterative = 4, looseSetWithPV = 5, highPuritySetWithPV = 6,
  qualitySize = 7
}
 

track quality

More...
typedef math::XYZVector Vector
 spatial vector

Public Member Functions

TrackAlgorithm algo () const
std::string algoName () const
int charge () const
 track electric charge
double chi2 () const
 chi-squared of the fit
CovarianceMatrix covariance () const
 return track covariance matrix
double covariance (int i, int j) const
 (i,j)-th element of covarianve matrix ( i, j = 0, ... 4 )
double d0 () const
 dxy parameter in perigee convention (d0 = - dxy)
double d0Error () const
 error on d0
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)
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.
double dszError () const
 error on dsz
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) below.
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.
double dxyError () const
 error on dxy
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) below.
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.
double dzError () const
 error on dz
double error (int i) const
 error on specified element
double eta () const
 pseudorapidity of momentum vector
double etaError () const
 error on eta
CovarianceMatrixfill (CovarianceMatrix &v) const
 fill SMatrix
const HitPatternhitPattern () const
 Access the hit pattern, indicating in which Tracker layers the track has hits.
double lambda () const
 Lambda angle.
double lambdaError () const
 error on lambda
const Vectormomentum () const
 track momentum vector
double ndof () const
 number of degrees of freedom of the fit
double normalizedChi2 () const
 chi-squared divided by n.d.o.f. (or chi-squared * 1e6 if n.d.o.f. is zero)
unsigned short numberOfLostHits () const
 number of cases where track crossed a layer without getting a hit.
unsigned short numberOfValidHits () const
 number of valid hits found
double p () const
 momentum vector magnitude
double parameter (int i) const
 i-th parameter ( i = 0, ... 4 )
ParameterVector parameters () const
 Track parameters with one-to-one correspondence to the covariance matrix.
double phi () const
 azimuthal angle of momentum vector
double phiError () const
 error on phi
double pt () const
 track transverse momentum
double ptError () const
 error on Pt (set to 1000 TeV if charge==0 for safety)
double px () const
 x coordinate of momentum vector
double py () const
 y coordinate of momentum vector
double pz () const
 z coordinate of momentum vector
double qoverp () const
 q/p
double qoverpError () const
 error on signed transverse curvature
bool quality (const TrackQuality) const
 Track quality.
int qualityMask () const
const PointreferencePoint () const
 Reference point on the track.
void setAlgorithm (const TrackAlgorithm a, bool set=true)
 position index
void setHitPattern (const HitPattern &hitP)
 set hitPattern from pre-defined hitPattern
template<typename C >
void setHitPattern (const C &c)
 set hit patterns from vector of hit references
template<typename I >
void setHitPattern (const I &begin, const I &end)
void setHitPattern (const TrackingRecHit &hit, size_t i)
 set hit pattern for specified hit
void setQuality (const TrackQuality, bool set=true)
void setQualityMask (int qualMask)
template<typename I >
void setTrackerExpectedHitsInner (const I &begin, const I &end)
template<typename C >
void setTrackerExpectedHitsInner (const C &c)
void setTrackerExpectedHitsInner (const HitPattern &hitP)
void setTrackerExpectedHitsInner (const TrackingRecHit &hit, size_t i)
template<typename I >
void setTrackerExpectedHitsOuter (const I &begin, const I &end)
void setTrackerExpectedHitsOuter (const TrackingRecHit &hit, size_t i)
template<typename C >
void setTrackerExpectedHitsOuter (const C &c)
void setTrackerExpectedHitsOuter (const HitPattern &hitP)
double theta () const
 polar angle
double thetaError () const
 error on theta
 TrackBase (double chi2, double ndof, const Point &referencePoint, const Vector &momentum, int charge, const CovarianceMatrix &, TrackAlgorithm=undefAlgorithm, TrackQuality quality=undefQuality)
 constructor from fit parameters and error matrix
 TrackBase ()
 default constructor
const HitPatterntrackerExpectedHitsInner () const
 Access the hit pattern counting (in the Tracker) the number of expected crossed layers before the first trajectory's hit.
const HitPatterntrackerExpectedHitsOuter () const
 Access the hit pattern counting (in the Tracker) the number of expected crossed layers after the last trajectory's hit.
const Pointvertex () const
 reference point on the track. This method is DEPRECATED, please use referencePoint() instead
double vx () const
 x coordinate of the reference point on track
double vy () const
 y coordinate of the reference point on track
double vz () const
 z coordinate of the reference point on track
 ~TrackBase ()
 virtual destructor

Static Public Member Functions

static TrackAlgorithm algoByName (const std::string &name)
static std::string algoName (TrackAlgorithm)
static index covIndex (index i, index j)
 covariance matrix index in array
static TrackQuality qualityByName (const std::string &name)
static std::string qualityName (TrackQuality)

Static Public Attributes

static const std::string algoNames []
static const std::string qualityNames [] = { "loose", "tight", "highPurity", "confirmed", "goodIterative", "looseSetWithPV", "highPuritySetWithPV"}

Private Attributes

uint8_t algorithm_
 track algorithm
char charge_
 electric charge
float chi2_
 chi-squared
float covariance_ [covarianceSize]
 perigee 5x5 covariance matrix
HitPattern hitPattern_
 hit pattern
Vector momentum_
 momentum vector at innermost point
float ndof_
 number of degrees of freedom
uint8_t quality_
 track quality
HitPattern trackerExpectedHitsInner_
 hit pattern used for expected crossed layers after the last trajectory's hit
HitPattern trackerExpectedHitsOuter_
 hit pattern used for expected crossed layers before the first trajectory's hit
Point vertex_
 innermost (reference) point on track

Detailed Description

Common base class to all track types, including Muon fits. Internally, the following information is stored:

A reference position on the track: (vx,vy,vz)

Momentum at this given reference point on track: (px,py,pz)

5D curvilinear covariance matrix from the track fit

Charge

Chi-square and number of degrees of freedom

Summary information of the hit pattern

For tracks reconstructed in the CMS Tracker, the reference position is the point of closest approach to the centre of CMS. For muons, this is not necessarily true.

Parameters associated to the 5D curvilinear covariance matrix:
(qoverp, lambda, phi, dxy, dsz)
defined as:

qoverp = q / abs(p) = signed inverse of momentum [1/GeV]

lambda = pi/2 - polar angle at the given point

phi = azimuth angle at the given point

dxy = -vx*sin(phi) + vy*cos(phi) [cm]

dsz = vz*cos(lambda) - (vx*cos(phi)+vy*sin(phi))*sin(lambda) [cm]

Geometrically, dxy is the signed distance in the XY plane between the the straight line passing through (vx,vy) with azimuthal angle phi and the point (0,0).
The dsz parameter is the signed distance in the SZ plane between the the straight line passing through (vx,vy,vz) with angles (phi, lambda) and the point (s=0,z=0). The S axis is defined by the projection of the straight line onto the XY plane. The convention is to assign the S coordinate for (vx,vy) as the value vx*cos(phi)+vy*sin(phi). This value is zero when (vx,vy) is the point of minimum transverse distance to (0,0).

Note that dxy and dsz provide sensible estimates of the distance from the true particle trajectory to (0,0,0) ONLY in two cases:

When (vx,vy,vz) already correspond to the point of minimum transverse distance to (0,0,0) or is close to it (so that the differences between considering the exact trajectory or a straight line in this range are negligible). This is usually true for Tracker tracks.

When the track has infinite or extremely high momentum

More details about this parametrization are provided in the following document:
A. Strandlie, W. Wittek, "Propagation of Covariance Matrices...", CMS Note 2006/001

Author:
Thomas Speer, Luca Lista, Pascal Vanlaer, Juan Alcaraz
Version:
Id:
TrackBase.h,v 1.79 2010/05/03 10:15:39 cerati Exp

Definition at line 62 of file TrackBase.h.


Member Typedef Documentation

5 parameter covariance matrix

Definition at line 71 of file TrackBase.h.

typedef unsigned int reco::TrackBase::index

index type

Definition at line 79 of file TrackBase.h.

parameter vector

Definition at line 69 of file TrackBase.h.

point in the space

Definition at line 75 of file TrackBase.h.

spatial vector

Definition at line 73 of file TrackBase.h.


Member Enumeration Documentation

anonymous enum

parameter dimension

Enumerator:
dimension 

Definition at line 65 of file TrackBase.h.

{ dimension = 5 };
anonymous enum

error matrix size

Enumerator:
covarianceSize 

Definition at line 67 of file TrackBase.h.

{ covarianceSize = dimension * ( dimension + 1 ) / 2 };
anonymous enum

enumerator provided indices to the five parameters

Enumerator:
i_qoverp 
i_lambda 
i_phi 
i_dxy 
i_dsz 

Definition at line 77 of file TrackBase.h.

track algorithm

Enumerator:
undefAlgorithm 
ctf 
rs 
cosmics 
iter0 
iter1 
iter2 
iter3 
iter4 
iter5 
iter6 
iter7 
iter8 
iter9 
iter10 
outInEcalSeededConv 
inOutEcalSeededConv 
nuclInter 
standAloneMuon 
globalMuon 
cosmicStandAloneMuon 
cosmicGlobalMuon 
iter1LargeD0 
iter2LargeD0 
iter3LargeD0 
iter4LargeD0 
iter5LargeD0 
bTagGhostTracks 
beamhalo 
gsf 
algoSize 

Definition at line 81 of file TrackBase.h.

track quality

Enumerator:
undefQuality 
loose 
tight 
highPurity 
confirmed 
goodIterative 
looseSetWithPV 
highPuritySetWithPV 
qualitySize 

Definition at line 94 of file TrackBase.h.


Constructor & Destructor Documentation

TrackBase::TrackBase ( )

default constructor

Definition at line 20 of file TrackBase.cc.

References covariance_, dimension, i, and j.

                     :
  chi2_(0), ndof_(0), vertex_(0,0,0), momentum_(0,0,0), charge_(0), algorithm_(undefAlgorithm), quality_(0) {
  index idx = 0;
  for( index i = 0; i < dimension; ++ i )
    for( index j = 0; j <= i; ++ j )
      covariance_[ idx ++ ]=0;
}
TrackBase::TrackBase ( double  chi2,
double  ndof,
const Point referencePoint,
const Vector momentum,
int  charge,
const CovarianceMatrix cov,
TrackAlgorithm  algorithm = undefAlgorithm,
TrackQuality  quality = undefQuality 
)

constructor from fit parameters and error matrix

Definition at line 28 of file TrackBase.cc.

References covariance_, dimension, i, j, and setQuality().

                                                                       :
  chi2_( chi2 ), ndof_( ndof ), vertex_( vertex ), momentum_( momentum ), charge_( charge ), algorithm_(algorithm), quality_(0) {
  index idx = 0;
  for( index i = 0; i < dimension; ++ i )
    for( index j = 0; j <= i; ++ j )
      covariance_[ idx ++ ] = cov( i, j );
  setQuality(quality);
}
TrackBase::~TrackBase ( )

virtual destructor

Definition at line 39 of file TrackBase.cc.

                      {
}

Member Function Documentation

TrackBase::TrackAlgorithm reco::TrackBase::algo ( ) const [inline]
TrackBase::TrackAlgorithm TrackBase::algoByName ( const std::string &  name) [static]
std::string reco::TrackBase::algoName ( ) const [inline]

Definition at line 307 of file TrackBase.h.

References algorithm_, beamhalo, bTagGhostTracks, cosmicGlobalMuon, cosmics, cosmicStandAloneMuon, ctf, globalMuon, gsf, inOutEcalSeededConv, iter0, iter1, iter10, iter1LargeD0, iter2, iter2LargeD0, iter3, iter3LargeD0, iter4, iter4LargeD0, iter5, iter5LargeD0, iter6, iter7, iter8, iter9, nuclInter, outInEcalSeededConv, rs, standAloneMuon, and undefAlgorithm.

                                            {
    // I'd like to do:
    // return TrackBase::algoName(algorithm_);
    // but I cannot define a const static function. Why???

    switch(algorithm_)
      {
      case undefAlgorithm: return "undefAlgorithm";
      case ctf: return "ctf";
      case rs: return "rs";
      case cosmics: return "cosmics";
      case beamhalo: return "beamhalo";
      case iter0: return "iter0";
      case iter1: return "iter1";
      case iter2: return "iter2";
      case iter3: return "iter3";
      case iter4: return "iter4";
      case iter5: return "iter5";
      case iter6: return "iter6";
      case iter7: return "iter7";
      case iter8: return "iter8";
      case iter9: return "iter9";
      case iter10: return "iter10";
      case outInEcalSeededConv: return "outInEcalSeededConv";
      case inOutEcalSeededConv: return "inOutEcalSeededConv";
      case nuclInter: return "nuclInter";
      case standAloneMuon: return "standAloneMuon";
      case globalMuon: return "globalMuon";
      case cosmicStandAloneMuon: return "cosmicStandAloneMuon";
      case cosmicGlobalMuon: return "cosmicGlobalMuon";
      case iter1LargeD0: return "iter1LargeD0";
      case iter2LargeD0: return "iter2LargeD0";
      case iter3LargeD0: return "iter3LargeD0";
      case iter4LargeD0: return "iter4LargeD0";
      case iter5LargeD0: return "iter5LargeD0";
      case bTagGhostTracks: return "bTagGhostTracks";
      case gsf: return "gsf";
      }
    return "undefAlgorithm";
  }
std::string reco::TrackBase::algoName ( TrackAlgorithm  a) [inline, static]

Definition at line 382 of file TrackBase.h.

References algoNames, and algoSize.

                                                      {
    if(int(a) < int(algoSize) && int(a)>0) return algoNames[int(a)];
    return "undefAlgorithm";
  }
int reco::TrackBase::charge ( ) const [inline]

track electric charge

Reimplemented in reco::GsfTransientTrack, and reco::TrackTransientTrack.

Definition at line 112 of file TrackBase.h.

References charge_.

Referenced by PFTrackTransformer::addPoints(), PFTrackTransformer::addPointsAndBrems(), EwkMuLumiMonitorDQM::analyze(), FWVertexWithTracksProxyBuilder::build(), FWSecVertexProxyBuilder::build(), Tau3MuReco::check4MuonTrack(), converter::StandAloneMuonTrackToCandidate::convert(), converter::TrackToCandidate::convert(), muonisolation::PixelTrackExtractor::directionAtPresetRadius(), AlignmentMonitorSegmentDifferences::event(), AlignmentMonitorMuonVsCurvature::event(), AlignmentMonitorMuonSystemMap1D::event(), RecoMuonValidator::MuonME::fill(), MTVHistoProducerAlgoForTracker::fill_simAssociated_recoTrack_histos(), TrackAnalyzer::fillHistosForState(), TrackerValidationVariables::fillTrackQuantities(), cms::HICFTSfromL1orL2::FTSfromStandAlone(), ConversionFinder::getConversionInfo(), HTrackAssociator::getFreeTrajectoryState(), TrackDetectorAssociator::getFreeTrajectoryState(), AlCaHOCalibProducer::getFreeTrajectoryState(), VZeroFinder::getGlobalTrajectoryParameters(), PFDisplacedVertexCandidateFinder::getGlobalTrajectoryParameters(), FWPFUtils::getTrack(), ValidHitPairFilter::getTrajectory(), EcalShowerProperties::getTrajectoryAtOuterPoint(), PlotRecTracks::getTrajectoryAtOuterPoint(), SeedFromProtoTrack::init(), TrajectoryStateTransform::initialFreeState(), TrajectoryStateTransform::innerFreeState(), MuonIdProducer::makeMuon(), MuonErrorMatrixAdjuster::makeTrack(), muonisolation::CaloExtractor::MuonAtCaloPosition(), TrajectoryStateTransform::outerFreeState(), fireworks::prepareTrack(), IsolatedTracksNxN::printTrack(), IsolatedTracksCone::printTrack(), EgammaHLTPixelMatchElectronAlgo::process(), QuarkoniaTrackSelector::produce(), SiStripElectronAssociator::produce(), ShallowTracksProducer::produce(), spr::propagateECAL(), spr::propagateHCAL(), spr::propagateTracker(), spr::propagateTrackerEnd(), JetTracksAssociationDRCalo::propagateTrackToCalo(), spr::propagateTrackToECAL(), spr::propagateTrackToHCAL(), TrackExtrapolator::propagateTrackToVolume(), ptError(), qoverp(), PFAlgo::reconstructTrack(), MuonAlignmentFromReference::run(), MuonDTLocalMillepedeAlgorithm::run(), FWConvTrackHitsDetailView::setTextInfo(), and FWTrackHitsDetailView::setTextInfo().

{ return charge_; }
double reco::TrackBase::chi2 ( void  ) const [inline]
CovarianceMatrix reco::TrackBase::covariance ( void  ) const [inline]
double reco::TrackBase::covariance ( int  i,
int  j 
) const [inline]

(i,j)-th element of covarianve matrix ( i, j = 0, ... 4 )

Definition at line 180 of file TrackBase.h.

References covariance_, and covIndex().

{ return covariance_[ covIndex( i, j ) ]; }
TrackBase::index reco::TrackBase::covIndex ( index  i,
index  j 
) [inline, static]

covariance matrix index in array

Definition at line 298 of file TrackBase.h.

References a, b, and j.

Referenced by covariance(), reco::GsfTrack::covarianceMode(), error(), and reco::GsfTrack::errorMode().

                                                               {
    int a = ( i <= j ? i : j ), b = ( i <= j ? j : i );
    return b * ( b + 1 ) / 2 + a;
  }
double reco::TrackBase::d0 ( ) const [inline]
double reco::TrackBase::d0Error ( ) const [inline]
double reco::TrackBase::dsz ( ) const [inline]

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)

Definition at line 124 of file TrackBase.h.

References p(), pt(), px(), py(), pz(), vx(), vy(), and vz().

Referenced by CosmicSplitterValidation::is_gold_muon(), muonisolation::CaloExtractor::MuonAtCaloPosition(), RecoTrackSelector::operator()(), parameters(), ShallowTracksProducer::produce(), RecoTracktoTP::r_dsz(), TPtoRecoTrack::rA_dsz(), and TPtoRecoTrack::rB_dsz().

{ return vz()*pt()/p() - (vx()*px()+vy()*py())/pt() * pz()/p(); }
double reco::TrackBase::dsz ( const Point myBeamSpot) const [inline]

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.

Definition at line 162 of file TrackBase.h.

References p(), pt(), px(), py(), pz(), vx(), vy(), and vz().

                                              { 
      return (vz()-myBeamSpot.z())*pt()/p() - ((vx()-myBeamSpot.x())*px()+(vy()-myBeamSpot.y())*py())/pt() *pz()/p(); 
    }
double reco::TrackBase::dszError ( ) const [inline]

error on dsz

Definition at line 206 of file TrackBase.h.

References error(), and i_dsz.

Referenced by ShallowTracksProducer::produce().

{ return error( i_dsz ); }
double reco::TrackBase::dxy ( ) const [inline]

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) below.

Definition at line 120 of file TrackBase.h.

References pt(), px(), py(), vx(), and vy().

Referenced by EwkMuLumiMonitorDQM::analyze(), TrackAnalyzer::analyze(), GenPurposeSkimmerData::analyze(), IsolatedTracksNxN::analyze(), PatTrackAnalyzer::analyze(), d0(), KalmanAlignmentTrackRefitter::debugTrackData(), muonisolation::PixelTrackExtractor::directionAtPresetRadius(), PFDisplacedVertexHelper::TracksSelector::dxy(), AlignmentMonitorMuonVsCurvature::event(), RecoMuonValidator::MuonME::fill(), MTVHistoProducerAlgoForTracker::fill_generic_recoTrack_histos(), MTVHistoProducerAlgoForTracker::fill_ResoAndPull_recoTrack_histos(), JPTJetAnalyzer::fillTrackHistograms(), PrimaryVertexAnalyzer4PU::fillTrackHistos(), HLTMuonTrackMassFilter::filter(), spr::goodTrack(), PFDisplacedVertexHelper::isTrackSelected(), muonisolation::CaloExtractor::MuonAtCaloPosition(), HIProtoTrackFilter::operator()(), RecoTrackSelector::operator()(), HIPixelTrackFilter::operator()(), parameters(), ShallowTracksProducer::produce(), TrackIPProducer::produce(), RecoTracktoTP::r_d02(), RecoTracktoTP::r_dxy(), TPtoRecoTrack::rA_d02(), TPtoRecoTrack::rA_dxy(), TPtoRecoTrack::rB_d02(), TPtoRecoTrack::rB_dxy(), reco::modules::CosmicTrackSelector::select(), pf2pat::IPCutPFCandidateSelectorDefinition::select(), reco::modules::AnalyticalTrackSelector::select(), TrackWithVertexSelector::testVertices(), reco::modules::TrackMultiSelector::testVtx(), and QcdUeDQM::trackSelection().

{ return ( - vx() * py() + vy() * px() ) / pt(); }
double reco::TrackBase::dxy ( const Point myBeamSpot) const [inline]

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.

Definition at line 158 of file TrackBase.h.

References pt(), px(), py(), vx(), and vy().

                                              { 
      return ( - (vx()-myBeamSpot.x()) * py() + (vy()-myBeamSpot.y()) * px() ) / pt(); 
    }
double reco::TrackBase::dxyError ( ) const [inline]
double reco::TrackBase::dz ( ) const [inline]

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) below.

Definition at line 126 of file TrackBase.h.

References pt(), px(), py(), pz(), vx(), vy(), and vz().

Referenced by TrackSplittingMonitor::analyze(), TrackAnalyzer::analyze(), CosmicSplitterValidation::analyze(), IsolatedTracksNxN::analyze(), AlignmentTrackSelector::basicCuts(), KalmanAlignmentTrackRefitter::debugTrackData(), AlignmentMonitorGeneric::event(), RecoMuonValidator::MuonME::fill(), MTVHistoProducerAlgoForTracker::fill_generic_recoTrack_histos(), MTVHistoProducerAlgoForTracker::fill_ResoAndPull_recoTrack_histos(), MillePedeMonitor::fillTrack(), JPTJetAnalyzer::fillTrackHistograms(), TrackerValidationVariables::fillTrackQuantities(), HLTMuonTrackMassFilter::filter(), ConversionFinder::getConversionInfo(), spr::goodTrack(), muonisolation::CaloExtractor::MuonAtCaloPosition(), HIPixelTrackFilter::operator()(), TrackIPProducer::produce(), fireworks::pushPixelHits(), RecoTracktoTP::r_dz(), RecoTracktoTP::r_dz2(), TPtoRecoTrack::rA_dz(), TPtoRecoTrack::rA_dz2(), TPtoRecoTrack::rB_dz(), TPtoRecoTrack::rB_dz2(), HIPAlignmentAlgorithm::run(), reco::modules::CosmicTrackSelector::select(), pf2pat::IPCutPFCandidateSelectorDefinition::select(), reco::modules::AnalyticalTrackSelector::select(), TrackWithVertexSelector::testTrack(), TrackWithVertexSelector::testVertices(), reco::modules::TrackMultiSelector::testVtx(), and QcdUeDQM::trackSelection().

{ return vz() - (vx()*px()+vy()*py())/pt() * (pz()/pt()); }
double reco::TrackBase::dz ( const Point myBeamSpot) const [inline]

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.

Definition at line 166 of file TrackBase.h.

References pt(), px(), py(), pz(), vx(), vy(), and vz().

                                             { 
      return (vz()-myBeamSpot.z()) - ((vx()-myBeamSpot.x())*px()+(vy()-myBeamSpot.y())*py())/pt() * pz()/pt(); 
    }
double reco::TrackBase::dzError ( ) const [inline]
double reco::TrackBase::error ( int  i) const [inline]

error on specified element

Definition at line 182 of file TrackBase.h.

References covariance_, covIndex(), and mathSSE::sqrt().

Referenced by d0Error(), dszError(), dxyError(), dzError(), etaError(), lambdaError(), phiError(), qoverpError(), and thetaError().

{ return sqrt( covariance_[ covIndex( i, i ) ] ); }
double reco::TrackBase::eta ( ) const [inline]

pseudorapidity of momentum vector

Definition at line 140 of file TrackBase.h.

References momentum_.

Referenced by DeDxDiscriminatorLearner::algoAnalyze(), SiStripGainFromData::algoAnalyze(), EwkMuLumiMonitorDQM::analyze(), TrackAnalyzer::analyze(), SegmentTrackAnalyzer::analyze(), CosmicSplitterValidation::analyze(), GenPurposeSkimmerData::analyze(), SiPixelLorentzAngle::analyze(), IsolatedTracksCone::analyze(), IsolatedTracksNxN::analyze(), PatTrackAnalyzer::analyze(), CalibrationTrackSelector::basicCuts(), AlignmentTrackSelector::basicCuts(), FWTrackProxyBuilder::build(), pat::CaloIsolationEnergy::calculate(), JetPlusTrackProducerAA::calculateBGtracksJet(), spr::chargeIsolationHcal(), KalmanAlignmentTrackRefitter::debugTrackData(), muonisolation::PixelTrackExtractor::deposit(), muonisolation::ExtractorFromDeposits::deposit(), muonisolation::JetExtractor::deposit(), muonisolation::CaloExtractorByAssociator::deposit(), muonisolation::CaloExtractor::deposit(), muonisolation::TrackExtractor::deposit(), muonisolation::CaloExtractorByAssociator::deposits(), muonisolation::PixelTrackExtractor::directionAtPresetRadius(), TrackAnalyzer::doTrackerSpecificFillHists(), PrimaryVertexAnalyzer4PU::dumpHitInfo(), MuonCaloCompatibility::evaluate(), AlignmentMonitorGeneric::event(), MTVHistoProducerAlgoForTracker::fill_ResoAndPull_recoTrack_histos(), MTVHistoProducerAlgoForTracker::fill_simAssociated_recoTrack_histos(), TrackAnalyzer::fillHistosForState(), JPTJetAnalyzer::fillTrackHistograms(), PrimaryVertexAnalyzer4PU::fillTrackHistos(), TrackerValidationVariables::fillTrackQuantities(), reco::HcalNoiseInfoProducer::filltracks(), reco::CentralityProducer::filter(), PFElecTkProducer::FindPfRef(), MuonShowerInformationFiller::getCompatibleDets(), Tau3MuReco::getDeltaR(), MuonIdProducer::isGoodTrack(), TrackClassFilter::operator()(), RecoTrackSelector::operator()(), TrackClassMatch::operator()(), PrimaryVertexAnalyzer4PU::printEventSummary(), IsolatedTracksNxN::printTrack(), IsolatedTracksCone::printTrack(), examples::TrackAnalysisAlgorithm::process(), SoftElectronProducer::produce(), QuarkoniaTrackSelector::produce(), L3MuonIsolationProducer::produce(), JetVetoedTracksAssociationDRVertex::produce(), TrackVertexArbitrator::produce(), ShallowTracksProducer::produce(), DeDxDiscriminatorProducer::produce(), fireworks::pushPixelHits(), SoftLepton::refineJetAxis(), SimpleCutsIsolator::result(), HIPAlignmentAlgorithm::run(), MuonDTLocalMillepedeAlgorithm::run(), MuonMillepedeAlgorithm::run(), reco::modules::CosmicTrackSelector::select(), reco::modules::AnalyticalTrackSelector::select(), FWConvTrackHitsDetailView::setTextInfo(), FWTrackHitsDetailView::setTextInfo(), FWPFTrackUtils::setupLegoTrack(), FWPFTrackUtils::setupRPZTrack(), reco::SoftLeptonTagInfo::taggingVariables(), TrackWithVertexSelector::testTrack(), EwkMuLumiMonitorDQM::tkIso(), QcdUeDQM::trackSelection(), muonisolation::TrackExtractor::vetos(), muonisolation::PixelTrackExtractor::vetos(), and egammaisolation::EgammaTrackExtractor::vetos().

{ return momentum_.Eta(); }
double reco::TrackBase::etaError ( ) const [inline]

error on eta

Definition at line 198 of file TrackBase.h.

References error(), i_lambda, p(), and pt().

Referenced by RecoMuonValidator::MuonME::fill(), TrackAnalyzer::fillHistosForState(), and ShallowTracksProducer::produce().

{ return error( i_lambda ) * p()/pt(); }
TrackBase::CovarianceMatrix & TrackBase::fill ( CovarianceMatrix v) const

fill SMatrix

Reimplemented in reco::GsfTrack.

Definition at line 42 of file TrackBase.cc.

References covariance_, and reco::fillCovariance().

Referenced by RecoMuonValidator::analyze(), and covariance().

                                                                        {
  return fillCovariance( v, covariance_ );
}
const HitPattern& reco::TrackBase::hitPattern ( ) const [inline]
double reco::TrackBase::lambda ( ) const [inline]
double reco::TrackBase::lambdaError ( ) const [inline]
const Vector& reco::TrackBase::momentum ( ) const [inline]
double reco::TrackBase::ndof ( ) const [inline]
double reco::TrackBase::normalizedChi2 ( ) const [inline]

chi-squared divided by n.d.o.f. (or chi-squared * 1e6 if n.d.o.f. is zero)

Definition at line 110 of file TrackBase.h.

References chi2_, and ndof_.

Referenced by TrackSplittingMonitor::analyze(), TrackAnalyzer::analyze(), CosmicSplitterValidation::analyze(), IsolatedTracksNxN::analyze(), helper::SimpleJetTrackAssociator::associate(), helper::SimpleJetTrackAssociator::associateTransient(), CalibrationTrackSelector::basicCuts(), AlignmentTrackSelector::basicCuts(), KalmanAlignmentTrackRefitter::debugTrackData(), AlignmentMonitorTracksFromTrajectories::event(), AlignmentMonitorMuonVsCurvature::event(), AlignmentMonitorGeneric::event(), RecoMuonValidator::MuonME::fill(), MTVHistoProducerAlgoForTracker::fill_ResoAndPull_recoTrack_histos(), MTVHistoProducerAlgoForTracker::fill_simAssociated_recoTrack_histos(), TrackAnalyzer::fillHistosForState(), MillePedeMonitor::fillTrack(), PrimaryVertexAnalyzer4PU::fillTrackHistos(), TrackerValidationVariables::fillTrackQuantities(), HLTMuonTrackMassFilter::filter(), spr::goodTrack(), PFDisplacedVertexHelper::isTrackSelected(), TrackClassFilter::operator()(), reco::TrackSelector::operator()(), RecoTrackSelector::operator()(), GhostTrackComputer::operator()(), TrackClassMatch::operator()(), IsolatedTracksNxN::printTrack(), IsolatedTracksCone::printTrack(), TrackIPProducer::produce(), HIPAlignmentAlgorithm::run(), MuonMillepedeAlgorithm::run(), reco::modules::CosmicTrackSelector::select(), reco::modules::TrackMultiSelector::select(), reco::modules::AnalyticalTrackSelector::select(), reco::SoftLeptonTagInfo::taggingVariables(), TrackWithVertexSelector::testTrack(), and QcdUeDQM::trackSelection().

{ return ndof_ != 0 ? chi2_ / ndof_ : chi2_ * 1e6; }
unsigned short reco::TrackBase::numberOfLostHits ( ) const [inline]
unsigned short reco::TrackBase::numberOfValidHits ( ) const [inline]
double reco::TrackBase::p ( ) const [inline]

momentum vector magnitude

Definition at line 128 of file TrackBase.h.

References momentum_.

Referenced by PFTrackTransformer::addPoints(), DeDxDiscriminatorLearner::algoAnalyze(), SiStripGainFromData::algoAnalyze(), IsolatedTracksHcalScale::analyze(), EwkMuLumiMonitorDQM::analyze(), CosmicSplitterValidation::analyze(), IsolatedTracksCone::analyze(), IsolatedTracksNxN::analyze(), AlignmentTrackSelector::basicCuts(), HBHEHitMap::calcTracksNeighborTowers_(), HBHEHitMap::calcTracksSameTowers_(), pat::TrackerIsolationPt::calculate(), spr::chargeIsolation(), spr::chargeIsolationCone(), spr::chargeIsolationEcal(), spr::chargeIsolationHcal(), spr::coneChargeIsolation(), dsz(), dzError(), etaError(), MuonCaloCompatibility::evaluate(), TrackAnalyzer::fillHistosForState(), TrackerValidationVariables::fillTrackQuantities(), reco::HcalNoiseInfoProducer::filltracks(), MuonShowerInformationFiller::getCompatibleDets(), ConversionFinder::getConversionInfo(), MuonIdProducer::isGoodTrack(), PFDisplacedVertexHelper::lambdaCP(), MuonIdProducer::makeMuon(), MuonIdTruthInfo::matchChi2(), muonid::matchTracks(), muonisolation::CaloExtractor::MuonAtCaloPosition(), TrackClassFilter::operator()(), TrackClassMatch::operator()(), IsolatedTracksNxN::printTrack(), IsolatedTracksCone::printTrack(), SoftElectronProducer::produce(), QuarkoniaTrackSelector::produce(), SiStripElectronAssociator::produce(), JetVetoedTracksAssociationDRVertex::produce(), ShallowTracksProducer::produce(), DeDxDiscriminatorProducer::produce(), ptError(), qoverp(), PFAlgo::reconstructTrack(), MuonTrackingRegionBuilder::region(), CSCOverlapsAlignmentAlgorithm::run(), HIPAlignmentAlgorithm::run(), MuonDTLocalMillepedeAlgorithm::run(), CandCommonVertexFitterBase::set(), PFCandCommonVertexFitterBase::set(), reco::SoftLeptonTagInfo::taggingVariables(), and reco::JetTracksAssociation::tracksP4().

{ return momentum_.R(); }
double reco::TrackBase::parameter ( int  i) const [inline]

i-th parameter ( i = 0, ... 4 )

Definition at line 178 of file TrackBase.h.

References i, and parameters().

{ return parameters()[i]; }
ParameterVector reco::TrackBase::parameters ( void  ) const [inline]

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

Definition at line 171 of file TrackBase.h.

References dsz(), dxy(), lambda(), phi(), and qoverp().

Referenced by SiStripFineDelayHit::detId(), MTVHistoProducerAlgoForTracker::fill_ResoAndPull_recoTrack_histos(), and parameter().

                                       { 
      return ParameterVector(qoverp(),lambda(),phi(),dxy(),dsz());
    }
double reco::TrackBase::phi ( ) const [inline]

azimuthal angle of momentum vector

Definition at line 138 of file TrackBase.h.

References momentum_.

Referenced by TrackSplittingMonitor::analyze(), TrackAnalyzer::analyze(), SegmentTrackAnalyzer::analyze(), CosmicSplitterValidation::analyze(), GenPurposeSkimmerData::analyze(), SiPixelLorentzAngle::analyze(), PatTrackAnalyzer::analyze(), CalibrationTrackSelector::basicCuts(), AlignmentTrackSelector::basicCuts(), pat::CaloIsolationEnergy::calculate(), JetPlusTrackProducerAA::calculateBGtracksJet(), spr::chargeIsolationHcal(), KalmanAlignmentTrackRefitter::debugTrackData(), muonisolation::PixelTrackExtractor::deposit(), muonisolation::ExtractorFromDeposits::deposit(), muonisolation::JetExtractor::deposit(), muonisolation::CaloExtractorByAssociator::deposit(), muonisolation::CaloExtractor::deposit(), muonisolation::TrackExtractor::deposit(), muonisolation::CaloExtractorByAssociator::deposits(), muonisolation::PixelTrackExtractor::directionAtPresetRadius(), TrackAnalyzer::doTrackerSpecificFillHists(), AlignmentMonitorGeneric::event(), TrackAnalyzer::fillHistosForState(), JPTJetAnalyzer::fillTrackHistograms(), PrimaryVertexAnalyzer4PU::fillTrackHistos(), TrackerValidationVariables::fillTrackQuantities(), PFElecTkProducer::FindPfRef(), MuonShowerInformationFiller::getCompatibleDets(), Tau3MuReco::getDeltaR(), MuonTrackValidator::getRecoMomentum(), MTVHistoProducerAlgoForTracker::getRecoMomentum(), CosmicSplitterValidation::is_gold_muon(), MuonIdTruthInfo::matchChi2(), muonisolation::CaloExtractor::MuonAtCaloPosition(), parameters(), PrimaryVertexAnalyzer4PU::printEventSummary(), IsolatedTracksNxN::printTrack(), IsolatedTracksCone::printTrack(), JetVetoedTracksAssociationDRVertex::produce(), TrackVertexArbitrator::produce(), ShallowTracksProducer::produce(), SoftLepton::refineJetAxis(), HIPAlignmentAlgorithm::run(), MuonDTLocalMillepedeAlgorithm::run(), MuonMillepedeAlgorithm::run(), FWConvTrackHitsDetailView::setTextInfo(), FWTrackHitsDetailView::setTextInfo(), reco::SoftLeptonTagInfo::taggingVariables(), EwkMuLumiMonitorDQM::tkIso(), QcdUeDQM::trackSelection(), muonisolation::TrackExtractor::vetos(), muonisolation::PixelTrackExtractor::vetos(), and egammaisolation::EgammaTrackExtractor::vetos().

{ return momentum_.Phi(); }
double reco::TrackBase::phiError ( ) const [inline]
double reco::TrackBase::pt ( ) const [inline]

track transverse momentum

Definition at line 130 of file TrackBase.h.

References momentum_, and mathSSE::sqrt().

Referenced by PFTrackTransformer::addPoints(), PFTrackTransformer::addPointsAndBrems(), SiStripGainFromData::algoAnalyze(), TrackSplittingMonitor::analyze(), IsolatedTracksHcalScale::analyze(), EwkMuLumiMonitorDQM::analyze(), TrackAnalyzer::analyze(), SegmentTrackAnalyzer::analyze(), CosmicSplitterValidation::analyze(), SiPixelLorentzAngle::analyze(), GenPurposeSkimmerData::analyze(), IsolatedTracksCone::analyze(), IsolatedTracksNxN::analyze(), PatTrackAnalyzer::analyze(), TkConvValidator::analyze(), CalibrationTrackSelector::basicCuts(), AlignmentTrackSelector::basicCuts(), FWTrackProxyBuilder::build(), TrackProducerAlgorithm< reco::Track >::buildTrack(), Tau3MuReco::check4MuonTrack(), KalmanAlignmentTrackRefitter::debugTrackData(), muonisolation::PixelTrackExtractor::deposit(), muonisolation::CaloExtractor::deposit(), muonisolation::TrackExtractor::deposit(), muonisolation::PixelTrackExtractor::directionAtPresetRadius(), dsz(), PrimaryVertexAnalyzer4PU::dumpHitInfo(), dxy(), dz(), dzError(), fw::estimate_field(), etaError(), AlignmentMonitorSegmentDifferences::event(), AlignmentMonitorMuonVsCurvature::event(), AlignmentMonitorMuonSystemMap1D::event(), AlignmentMonitorGeneric::event(), TrackAnalyzer::fillHistosForState(), MillePedeMonitor::fillTrack(), JPTJetAnalyzer::fillTrackHistograms(), PrimaryVertexAnalyzer4PU::fillTrackHistos(), TrackerValidationVariables::fillTrackQuantities(), reco::HcalNoiseInfoProducer::filltracks(), reco::CentralityProducer::filter(), ConversionFinder::getConversionInfo(), MuonTrackValidator::getRecoMomentum(), MTVHistoProducerAlgoForTracker::getRecoMomentum(), JPTJetTester::getSumPt(), spr::goodTrack(), MuonIdProducer::isGoodTrack(), PFDisplacedVertexHelper::isTrackSelected(), muonid::matchTracks(), muonisolation::CaloExtractor::MuonAtCaloPosition(), HIProtoTrackFilter::operator()(), PixelTrackFilterByKinematics::operator()(), reco::TrackSelector::operator()(), RecoTrackSelector::operator()(), CalibrationTrackSelector::ComparePt::operator()(), HIPixelTrackFilter::operator()(), reco::Vertex::TrackEqual::operator()(), AlignmentTrackSelector::ComparePt::operator()(), fireworks::prepareTrack(), PrimaryVertexAnalyzer4PU::printEventSummary(), IsolatedTracksNxN::printTrack(), IsolatedTracksCone::printTrack(), examples::TrackAnalysisAlgorithm::process(), QuarkoniaTrackSelector::produce(), SoftElectronProducer::produce(), reco::modules::AnalyticalTrackSelector::produce(), ShallowTracksProducer::produce(), TrackIPProducer::produce(), ptError(), SoftLepton::refineJetAxis(), GlobalMuonRefitter::refit(), HIPAlignmentAlgorithm::run(), MuonAlignmentFromReference::run(), MuonDTLocalMillepedeAlgorithm::run(), MuonMillepedeAlgorithm::run(), reco::modules::CosmicTrackSelector::select(), reco::modules::TrackMultiSelector::select(), reco::modules::AnalyticalTrackSelector::select(), FWConvTrackHitsDetailView::setTextInfo(), FWTrackHitsDetailView::setTextInfo(), FWPFTrackUtils::setupLegoTrack(), FWPFTrackUtils::setupRPZTrack(), TrackWithVertexSelector::testTrack(), EwkMuLumiMonitorDQM::tkIso(), reco::PFDisplacedVertex::trackPosition(), QcdUeDQM::trackSelection(), and ObjectValidator::validTrack().

{ return sqrt( momentum_.Perp2() ); }
double reco::TrackBase::ptError ( ) const [inline]
double reco::TrackBase::px ( ) const [inline]
double reco::TrackBase::py ( ) const [inline]
double reco::TrackBase::pz ( ) const [inline]
double reco::TrackBase::qoverp ( ) const [inline]
double reco::TrackBase::qoverpError ( ) const [inline]
bool reco::TrackBase::quality ( const TrackQuality  q) const [inline]
TrackBase::TrackQuality TrackBase::qualityByName ( const std::string &  name) [static]

Definition at line 46 of file TrackBase.cc.

References spr::find(), qualityNames, qualitySize, findQualityFiles::size, and undefQuality.

Referenced by AlignmentTrackSelector::AlignmentTrackSelector(), reco::modules::AnalyticalTrackSelector::AnalyticalTrackSelector(), IsolatedTracksCone::analyze(), IsolatedTracksNxN::analyze(), PatTrackAnalyzer::analyze(), BeamFitter::BeamFitter(), CaloRecoTauTagInfoAlgorithm::CaloRecoTauTagInfoAlgorithm(), reco::CentralityProducer::CentralityProducer(), spr::chargeIsolation(), spr::chargeIsolationEcal(), spr::chargeIsolationHcal(), spr::coneChargeIsolation(), reco::modules::CosmicTrackSelector::CosmicTrackSelector(), FilterOutScraping::filter(), IsolatedTracksHcalScale::IsolatedTracksHcalScale(), PFDisplacedVertexHelper::isTrackSelected(), JetBProbabilityComputer::JetBProbabilityComputer(), JetPlusTrackProducerAA::JetPlusTrackProducerAA(), JetProbabilityComputer::JetProbabilityComputer(), LightPFTrackProducer::LightPFTrackProducer(), TrackClassFilter::operator()(), PFTrackProducer::PFTrackProducer(), IsolatedTracksNxN::printTrack(), IsolatedTracksCone::printTrack(), cms::SimpleTrackListMerger::produce(), FastTrackMerger::produce(), spr::propagateCALO(), QcdUeDQM::QcdUeDQM(), QualityCutsAnalyzer::QualityCutsAnalyzer(), RecoTrackSelector::RecoTrackSelector(), TrackWithVertexSelector::testTrack(), TrackCountingComputer::TrackCountingComputer(), TrackExtrapolator::TrackExtrapolator(), TrackFilterForPVFinding::TrackFilterForPVFinding(), reco::TrackSelector::TrackSelector(), V0Fitter::V0Fitter(), and VertexAssociatorByTracks::VertexAssociatorByTracks().

                                                                   {
  TrackQuality size = qualitySize;
  int index = std::find(qualityNames, qualityNames+size, name)-qualityNames;
  if(index == size) return undefQuality; // better this or throw() ?

  // cast
  return TrackQuality(index);
}
int reco::TrackBase::qualityMask ( ) const [inline]

Definition at line 269 of file TrackBase.h.

References quality_.

Referenced by PrimaryVertexAnalyzer4PU::fillTrackHistos().

{ return quality_; }
std::string reco::TrackBase::qualityName ( TrackQuality  q) [inline, static]

Definition at line 377 of file TrackBase.h.

References qualityNames, and qualitySize.

Referenced by TkAlCaRecoMonitor::beginJob(), IsolatedTracksNxN::printTrack(), and IsolatedTracksCone::printTrack().

                                                        {
    if(int(q) < int(qualitySize) && int(q)>=0) return qualityNames[int(q)];
    return "undefQuality";
  }
const Point& reco::TrackBase::referencePoint ( ) const [inline]
void reco::TrackBase::setAlgorithm ( const TrackAlgorithm  a,
bool  set = true 
) [inline]

position index

Track algorithm

Definition at line 256 of file TrackBase.h.

References a, algorithm_, and undefAlgorithm.

Referenced by TrackProducerAlgorithm< reco::GsfTrack >::buildTrack(), and TrackListCombiner::produce().

void reco::TrackBase::setHitPattern ( const TrackingRecHit hit,
size_t  i 
) [inline]

set hit pattern for specified hit

Definition at line 244 of file TrackBase.h.

References hitPattern_, and reco::HitPattern::set().

{ hitPattern_.set( hit, i ); }
template<typename C >
void reco::TrackBase::setHitPattern ( const C &  c) [inline]
template<typename I >
void reco::TrackBase::setHitPattern ( const I &  begin,
const I &  end 
) [inline]

Definition at line 237 of file TrackBase.h.

References hitPattern_, and reco::HitPattern::set().

{ hitPattern_.set( begin, end ); }
void reco::TrackBase::setHitPattern ( const HitPattern hitP) [inline]

set hitPattern from pre-defined hitPattern

Definition at line 249 of file TrackBase.h.

References hitPattern_.

{hitPattern_ = hitP;}
void reco::TrackBase::setQuality ( const TrackQuality  q,
bool  set = true 
) [inline]

Definition at line 364 of file TrackBase.h.

References lumiQueryAPI::q, quality_, and undefQuality.

Referenced by TrackBase().

                                                                           {
    switch(q){
    case undefQuality: quality_=0;
    default: 
      {
        if (set)//regular OR if setting value to true
          quality_= quality_ | (1<<q) ;
        else // doing "half-XOR" if unsetting value
          quality_= quality_ & (~(1<<q));
      }
    }
  }
void reco::TrackBase::setQualityMask ( int  qualMask) [inline]

Definition at line 270 of file TrackBase.h.

References quality_.

Referenced by TrackProducerAlgorithm< reco::Track >::buildTrack().

{quality_ = qualMask;}
void reco::TrackBase::setTrackerExpectedHitsInner ( const HitPattern hitP) [inline]

Definition at line 250 of file TrackBase.h.

References trackerExpectedHitsInner_.

void reco::TrackBase::setTrackerExpectedHitsInner ( const TrackingRecHit hit,
size_t  i 
) [inline]

Definition at line 245 of file TrackBase.h.

References reco::HitPattern::set(), and trackerExpectedHitsInner_.

{ trackerExpectedHitsInner_.set( hit, i ); }
template<typename C >
void reco::TrackBase::setTrackerExpectedHitsInner ( const C &  c) [inline]

Definition at line 232 of file TrackBase.h.

References reco::HitPattern::set(), and trackerExpectedHitsInner_.

{ trackerExpectedHitsInner_.set( c.begin(), c.end() ); }
template<typename I >
void reco::TrackBase::setTrackerExpectedHitsInner ( const I &  begin,
const I &  end 
) [inline]

Definition at line 239 of file TrackBase.h.

References reco::HitPattern::set(), and trackerExpectedHitsInner_.

template<typename I >
void reco::TrackBase::setTrackerExpectedHitsOuter ( const I &  begin,
const I &  end 
) [inline]

Definition at line 241 of file TrackBase.h.

References reco::HitPattern::set(), and trackerExpectedHitsOuter_.

template<typename C >
void reco::TrackBase::setTrackerExpectedHitsOuter ( const C &  c) [inline]

Definition at line 234 of file TrackBase.h.

References reco::HitPattern::set(), and trackerExpectedHitsOuter_.

{ trackerExpectedHitsOuter_.set( c.begin(), c.end() ); }
void reco::TrackBase::setTrackerExpectedHitsOuter ( const TrackingRecHit hit,
size_t  i 
) [inline]

Definition at line 246 of file TrackBase.h.

References reco::HitPattern::set(), and trackerExpectedHitsOuter_.

{ trackerExpectedHitsOuter_.set( hit, i ); }
void reco::TrackBase::setTrackerExpectedHitsOuter ( const HitPattern hitP) [inline]

Definition at line 251 of file TrackBase.h.

References trackerExpectedHitsOuter_.

double reco::TrackBase::theta ( ) const [inline]
double reco::TrackBase::thetaError ( ) const [inline]

error on theta

Definition at line 194 of file TrackBase.h.

References error(), and i_lambda.

Referenced by TrackSplittingMonitor::analyze(), CosmicSplitterValidation::analyze(), and ShallowTracksProducer::produce().

{ return error( i_lambda ); }
const HitPattern& reco::TrackBase::trackerExpectedHitsInner ( ) const [inline]

Access the hit pattern counting (in the Tracker) the number of expected crossed layers before the first trajectory's hit.

Definition at line 218 of file TrackBase.h.

References trackerExpectedHitsInner_.

Referenced by IsolatedTracksNxN::analyze(), PrimaryVertexAnalyzer4PU::fillTrackHistos(), spr::goodTrack(), IsolatedTracksNxN::printTrack(), and FWConvTrackHitsDetailView::setTextInfo().

const HitPattern& reco::TrackBase::trackerExpectedHitsOuter ( ) const [inline]

Access the hit pattern counting (in the Tracker) the number of expected crossed layers after the last trajectory's hit.

Definition at line 220 of file TrackBase.h.

References trackerExpectedHitsOuter_.

Referenced by IsolatedTracksNxN::analyze(), PrimaryVertexAnalyzer4PU::fillTrackHistos(), spr::goodTrack(), PFDisplacedVertexHelper::isTrackSelected(), and IsolatedTracksNxN::printTrack().

const Point& reco::TrackBase::vertex ( ) const [inline]
double reco::TrackBase::vx ( ) const [inline]
double reco::TrackBase::vy ( ) const [inline]
double reco::TrackBase::vz ( ) const [inline]

Member Data Documentation

std::string const TrackBase::algoNames [static]
Initial value:
 { "undefAlgorithm", "ctf", "rs", "cosmics", 
                                             "iter0", "iter1", "iter2","iter3","iter4","iter5","iter6","iter7","iter8","iter9","iter10",
                                             "outInEcalSeededConv","inOutEcalSeededConv",
                                             "nuclInter",
                                             "standAloneMuon","globalMuon","cosmicStandAloneMuon","cosmicGlobalMuon",
                                             "iter1LargeD0","iter2LargeD0","iter3LargeD0","iter4LargeD0","iter5LargeD0",
                                             "bTagGhostTracks", 
                                             "beamhalo" , 
                                             "gsf" }

Definition at line 91 of file TrackBase.h.

Referenced by algoByName(), and algoName().

uint8_t reco::TrackBase::algorithm_ [private]

track algorithm

Definition at line 292 of file TrackBase.h.

Referenced by algo(), algoName(), and setAlgorithm().

char reco::TrackBase::charge_ [private]

electric charge

Definition at line 281 of file TrackBase.h.

Referenced by charge().

float reco::TrackBase::chi2_ [private]

chi-squared

Definition at line 273 of file TrackBase.h.

Referenced by chi2(), and normalizedChi2().

float reco::TrackBase::covariance_[covarianceSize] [private]

perigee 5x5 covariance matrix

Definition at line 283 of file TrackBase.h.

Referenced by covariance(), error(), fill(), and TrackBase().

hit pattern

Definition at line 285 of file TrackBase.h.

Referenced by hitPattern(), numberOfLostHits(), numberOfValidHits(), and setHitPattern().

momentum vector at innermost point

Definition at line 279 of file TrackBase.h.

Referenced by eta(), lambda(), momentum(), p(), phi(), pt(), px(), py(), pz(), and theta().

float reco::TrackBase::ndof_ [private]

number of degrees of freedom

Definition at line 275 of file TrackBase.h.

Referenced by ndof(), and normalizedChi2().

uint8_t reco::TrackBase::quality_ [private]

track quality

Definition at line 294 of file TrackBase.h.

Referenced by quality(), qualityMask(), setQuality(), and setQualityMask().

std::string const TrackBase::qualityNames = { "loose", "tight", "highPurity", "confirmed", "goodIterative", "looseSetWithPV", "highPuritySetWithPV"} [static]

Definition at line 95 of file TrackBase.h.

Referenced by qualityByName(), and qualityName().

hit pattern used for expected crossed layers after the last trajectory's hit

Definition at line 287 of file TrackBase.h.

Referenced by setTrackerExpectedHitsInner(), and trackerExpectedHitsInner().

hit pattern used for expected crossed layers before the first trajectory's hit

Definition at line 289 of file TrackBase.h.

Referenced by setTrackerExpectedHitsOuter(), and trackerExpectedHitsOuter().

innermost (reference) point on track

Definition at line 277 of file TrackBase.h.

Referenced by referencePoint(), vertex(), vx(), vy(), and vz().