#include <TrackingTools/TrajectoryState/interface/TrajectoryStateClosestToBeamLine.h>
Public Types | |
typedef FreeTrajectoryState | FTS |
Public Member Functions | |
GlobalPoint | beamLinePCA () const |
Point on the beamline which is the closest to the track. | |
reco::BeamSpot | beamSpot () |
The beamline. | |
bool | isValid () const |
FTS | trackStateAtPCA () const |
State of the track at the PCA to the beamline. | |
TrajectoryStateClosestToBeamLine (const FTS &stateAtPCA, const GlobalPoint &pointOnBeamLine, const reco::BeamSpot &beamSpot) | |
TrajectoryStateClosestToBeamLine () | |
Measurement1D | transverseImpactParameter () const |
Transverse impact parameter of the track to the beamline. | |
~TrajectoryStateClosestToBeamLine () | |
Private Attributes | |
reco::BeamSpot | theBeamSpot |
FTS | theFTS |
GlobalPoint | thePointOnBeamLine |
bool | valid |
It gives also access to the point on the beamline which is the closest to the track.
Definition at line 15 of file TrajectoryStateClosestToBeamLine.h.
Definition at line 19 of file TrajectoryStateClosestToBeamLine.h.
TrajectoryStateClosestToBeamLine::TrajectoryStateClosestToBeamLine | ( | ) | [inline] |
TrajectoryStateClosestToBeamLine::TrajectoryStateClosestToBeamLine | ( | const FTS & | stateAtPCA, | |
const GlobalPoint & | pointOnBeamLine, | |||
const reco::BeamSpot & | beamSpot | |||
) |
Definition at line 4 of file TrajectoryStateClosestToBeamLine.cc.
00005 : 00006 theFTS(stateAtPCA) , thePointOnBeamLine(pointOnBeamLine), 00007 theBeamSpot(beamSpot), valid(true) 00008 {}
TrajectoryStateClosestToBeamLine::~TrajectoryStateClosestToBeamLine | ( | ) | [inline] |
GlobalPoint TrajectoryStateClosestToBeamLine::beamLinePCA | ( | ) | const [inline] |
Point on the beamline which is the closest to the track.
Definition at line 42 of file TrajectoryStateClosestToBeamLine.h.
References isValid(), and thePointOnBeamLine.
00042 { 00043 if (!isValid()) throw TrajectoryStateException( 00044 "TrajectoryStateClosestToBeamLine is invalid."); 00045 return thePointOnBeamLine; 00046 }
reco::BeamSpot TrajectoryStateClosestToBeamLine::beamSpot | ( | void | ) | [inline] |
The beamline.
Definition at line 57 of file TrajectoryStateClosestToBeamLine.h.
References isValid(), and theBeamSpot.
00057 { 00058 if (!isValid()) throw TrajectoryStateException( 00059 "TrajectoryStateClosestToBeamLine is invalid."); 00060 return theBeamSpot; 00061 }
Definition at line 63 of file TrajectoryStateClosestToBeamLine.h.
References valid.
Referenced by beamLinePCA(), beamSpot(), DAFTrackProducerAlgorithm::buildTrack(), TrackProducerAlgorithm< reco::Track >::buildTrack(), TrackProducerAlgorithm< reco::GsfTrack >::buildTrack(), TrackFilterForPVFinding::operator()(), cms::HITrackVertexMaker::produceTracks(), MuonUpdatorAtVertex::propagate(), HICTrajectoryBuilder::qualityFilter(), TrackAlgoCompareUtil::SetTrackingParticleD0Dz(), trackStateAtPCA(), and transverseImpactParameter().
00063 {return valid;}
FTS TrajectoryStateClosestToBeamLine::trackStateAtPCA | ( | ) | const [inline] |
State of the track at the PCA to the beamline.
Definition at line 33 of file TrajectoryStateClosestToBeamLine.h.
References isValid(), and theFTS.
Referenced by MultiTrackValidator::analyze(), TrackerSeedValidator::analyze(), DAFTrackProducerAlgorithm::buildTrack(), TrackProducerAlgorithm< reco::Track >::buildTrack(), TrackProducerAlgorithm< reco::GsfTrack >::buildTrack(), TrackerSeedCleaner::clean(), TrackAssociatorByChi2::parametersAtClosestApproach(), cms::HITrackVertexMaker::produceTracks(), MuonUpdatorAtVertex::propagate(), HICTrajectoryBuilder::qualityFilter(), recTrackLessZ(), and TrackAlgoCompareUtil::SetTrackingParticleD0Dz().
00033 { 00034 if (!isValid()) throw TrajectoryStateException( 00035 "TrajectoryStateClosestToBeamLine is invalid."); 00036 return theFTS; 00037 }
Measurement1D TrajectoryStateClosestToBeamLine::transverseImpactParameter | ( | ) | const |
Transverse impact parameter of the track to the beamline.
It is the transverse distance of the two PCAs.
Definition at line 10 of file TrajectoryStateClosestToBeamLine.cc.
References FreeTrajectoryState::cartesianError(), reco::BeamSpot::covariance3D(), error, isValid(), CartesianTrajectoryError::matrix(), FreeTrajectoryState::position(), funct::sqrt(), theBeamSpot, theFTS, thePointOnBeamLine, PV3DBase< T, PVType, FrameType >::x(), and PV3DBase< T, PVType, FrameType >::y().
Referenced by TrackFilterForPVFinding::operator()().
00011 { 00012 if (!isValid()) throw TrajectoryStateException( 00013 "TrajectoryStateClosestToBeamLine is invalid."); 00014 AlgebraicSymMatrix33 error = theBeamSpot.covariance3D() + 00015 theFTS.cartesianError().matrix().Sub<AlgebraicSymMatrix33>(0,0); 00016 00017 GlobalPoint impactPoint=theFTS.position(); 00018 AlgebraicVector3 transverseFlightPath( 00019 impactPoint.x()-thePointOnBeamLine.x(),impactPoint.y()-thePointOnBeamLine.y(),0.); 00020 double length = ROOT::Math::Mag(transverseFlightPath); 00021 // Warning: after the transverseFlightPath.Unit() statement, the 00022 // transverseFlightPath vector is CHANGED to a UNIT vector. 00023 double ipError = sqrt( ROOT::Math::Similarity(transverseFlightPath.Unit(),error) ); 00024 return Measurement1D (length, ipError); 00025 }
Definition at line 70 of file TrajectoryStateClosestToBeamLine.h.
Referenced by beamSpot(), and transverseImpactParameter().
FTS TrajectoryStateClosestToBeamLine::theFTS [private] |
Definition at line 68 of file TrajectoryStateClosestToBeamLine.h.
Referenced by trackStateAtPCA(), and transverseImpactParameter().
Definition at line 69 of file TrajectoryStateClosestToBeamLine.h.
Referenced by beamLinePCA(), and transverseImpactParameter().
bool TrajectoryStateClosestToBeamLine::valid [private] |