#include <TrajectoryStateClosestToBeamLine.h>
Public Types | |
typedef FreeTrajectoryState | FTS |
Public Member Functions | |
GlobalPoint const & | beamLinePCA () const |
reco::BeamSpot const & | beamSpot () |
bool | isValid () const |
FTS const & | trackStateAtPCA () const |
TrajectoryStateClosestToBeamLine () | |
TrajectoryStateClosestToBeamLine (const FTS &stateAtPCA, const GlobalPoint &pointOnBeamLine, const reco::BeamSpot &beamSpot) | |
Measurement1D | transverseImpactParameter () const |
~TrajectoryStateClosestToBeamLine () | |
Private Attributes | |
reco::BeamSpot | theBeamSpot |
FTS | theFTS |
GlobalPoint | thePointOnBeamLine |
bool | valid |
Trajectory state defined at the point of closest approach (PCA) of the track to the beamline. 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] |
Definition at line 21 of file TrajectoryStateClosestToBeamLine.h.
: valid(false) {}
TrajectoryStateClosestToBeamLine::TrajectoryStateClosestToBeamLine | ( | const FTS & | stateAtPCA, |
const GlobalPoint & | pointOnBeamLine, | ||
const reco::BeamSpot & | beamSpot | ||
) |
Definition at line 4 of file TrajectoryStateClosestToBeamLine.cc.
: valid(true), theFTS(stateAtPCA) , thePointOnBeamLine(pointOnBeamLine), theBeamSpot(beamSpot) {}
TrajectoryStateClosestToBeamLine::~TrajectoryStateClosestToBeamLine | ( | ) | [inline] |
Definition at line 27 of file TrajectoryStateClosestToBeamLine.h.
{}
GlobalPoint const& 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.
{ if (!isValid()) throw TrajectoryStateException( "TrajectoryStateClosestToBeamLine is invalid."); return thePointOnBeamLine; }
reco::BeamSpot const& TrajectoryStateClosestToBeamLine::beamSpot | ( | void | ) | [inline] |
The beamline
Definition at line 57 of file TrajectoryStateClosestToBeamLine.h.
References isValid(), and theBeamSpot.
{ if (!isValid()) throw TrajectoryStateException( "TrajectoryStateClosestToBeamLine is invalid."); return theBeamSpot; }
bool TrajectoryStateClosestToBeamLine::isValid | ( | void | ) | const [inline] |
Definition at line 63 of file TrajectoryStateClosestToBeamLine.h.
References valid.
Referenced by TrackBuildingAnalyzer::analyze(), beamLinePCA(), beamSpot(), DAFTrackProducerAlgorithm::buildTrack(), MTFTrackProducerAlgorithm::buildTrack(), TrackProducerAlgorithm< reco::Track >::buildTrack(), TrackProducerAlgorithm< reco::GsfTrack >::buildTrack(), TrackerSeedCleaner::clean(), V0Fitter::fitAll(), CosmicParametersDefinerForTP::momentum(), CosmicTrackingParticleSelector::operator()(), TrackFilterForPVFinding::operator()(), PrimaryVertexAnalyzer4PU::printRecTrks(), cms::HITrackVertexMaker::produceTracks(), MuonUpdatorAtVertex::propagate(), HICTrajectoryBuilder::qualityFilter(), MuonTrackingRegionBuilder::region(), TrackAlgoCompareUtil::SetTrackingParticleD0Dz(), trackStateAtPCA(), transverseImpactParameter(), and CosmicParametersDefinerForTP::vertex().
{return valid;}
FTS const& 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 TrackBuildingAnalyzer::analyze(), DAFTrackProducerAlgorithm::buildTrack(), MTFTrackProducerAlgorithm::buildTrack(), TrackProducerAlgorithm< reco::Track >::buildTrack(), TrackProducerAlgorithm< reco::GsfTrack >::buildTrack(), TrackerSeedCleaner::clean(), PrimaryVertexAnalyzer4PU::fillTrackHistos(), CosmicParametersDefinerForTP::momentum(), CosmicTrackingParticleSelector::operator()(), TrackAssociatorByChi2::parametersAtClosestApproach(), cms::HITrackVertexMaker::produceTracks(), MuonUpdatorAtVertex::propagate(), HICTrajectoryBuilder::qualityFilter(), MuonTrackingRegionBuilder::region(), TrackAlgoCompareUtil::SetTrackingParticleD0Dz(), and CosmicParametersDefinerForTP::vertex().
{ if (!isValid()) throw TrajectoryStateException( "TrajectoryStateClosestToBeamLine is invalid."); return theFTS; }
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(), error, isValid(), CartesianTrajectoryError::matrix(), FreeTrajectoryState::position(), reco::BeamSpot::rotatedCovariance3D(), mathSSE::sqrt(), theBeamSpot, theFTS, thePointOnBeamLine, PV3DBase< T, PVType, FrameType >::x(), and PV3DBase< T, PVType, FrameType >::y().
Referenced by V0Fitter::fitAll(), TrackFilterForPVFinding::operator()(), and PrimaryVertexAnalyzer4PU::printRecTrks().
{ if (!isValid()) throw TrajectoryStateException( "TrajectoryStateClosestToBeamLine is invalid."); AlgebraicSymMatrix33 error = theBeamSpot.rotatedCovariance3D() + theFTS.cartesianError().matrix().Sub<AlgebraicSymMatrix33>(0,0); GlobalPoint impactPoint=theFTS.position(); AlgebraicVector3 transverseFlightPath( impactPoint.x()-thePointOnBeamLine.x(),impactPoint.y()-thePointOnBeamLine.y(),0.); double length = ROOT::Math::Mag(transverseFlightPath); // Warning: after the transverseFlightPath.Unit() statement, the // transverseFlightPath vector is CHANGED to a UNIT vector. double ipError = sqrt( ROOT::Math::Similarity(transverseFlightPath.Unit(),error) ); return Measurement1D (length, ipError); }
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] |
Definition at line 67 of file TrajectoryStateClosestToBeamLine.h.
Referenced by isValid().