#include <TrajectoryStateClosestToPoint.h>
Trajectory state defined at a given point on the helix, which is the point of closest approach to the reference point. In addition to the FreeTrajectoryState at that point, it also gives the perigee parameters. This state can also be invalid, e.g. in case the propagation was not successful.
Definition at line 20 of file TrajectoryStateClosestToPoint.h.
typedef FreeTrajectoryState TrajectoryStateClosestToPoint::FTS [private] |
Definition at line 23 of file TrajectoryStateClosestToPoint.h.
typedef TrajectoryStateOnSurface TrajectoryStateClosestToPoint::TSOS [private] |
Definition at line 22 of file TrajectoryStateClosestToPoint.h.
TrajectoryStateClosestToPoint::TrajectoryStateClosestToPoint | ( | ) | [inline] |
parameter dimension
Definition at line 28 of file TrajectoryStateClosestToPoint.h.
: valid(false), theFTSavailable(false), errorIsAvailable(false) {}
TrajectoryStateClosestToPoint::TrajectoryStateClosestToPoint | ( | const PerigeeTrajectoryParameters & | perigeeParameters, |
double | pt, | ||
const GlobalPoint & | referencePoint, | ||
const MagneticField * | field | ||
) |
Public constructor, which is used to convert perigee parameters to a FreeTrajectoryState. For the case where no error is provided.
Definition at line 35 of file TrajectoryStateClosestToPoint.cc.
: valid(true), theField(field), theFTSavailable(false), theRefPoint(referencePoint), theParameters(perigeeParameters), thePt( pt ), errorIsAvailable(false) {}
TrajectoryStateClosestToPoint::TrajectoryStateClosestToPoint | ( | const PerigeeTrajectoryParameters & | perigeeParameters, |
double | pt, | ||
const PerigeeTrajectoryError & | perigeeError, | ||
const GlobalPoint & | referencePoint, | ||
const MagneticField * | field | ||
) |
Public constructor, which is used to convert perigee parameters to a FreeTrajectoryState. For the case where an error is provided.
Definition at line 48 of file TrajectoryStateClosestToPoint.cc.
: valid(true), theField(field), theFTSavailable(false), theRefPoint(referencePoint), theParameters(perigeeParameters), thePt( pt ), thePerigeeError(perigeeError), errorIsAvailable(true) {}
TrajectoryStateClosestToPoint::TrajectoryStateClosestToPoint | ( | const FTS & | originalFTS, |
const GlobalPoint & | referencePoint | ||
) | [private] |
Use the appropriate TrajectoryStateClosestToPointBuilder to get access to this constructor
Definition at line 7 of file TrajectoryStateClosestToPoint.cc.
References cms::Exception::category(), errorIsAvailable, cms::Exception::explainSelf(), PerigeeConversions::ftsToPerigeeError(), PerigeeConversions::ftsToPerigeeParameters(), FreeTrajectoryState::hasError(), GlobalTrajectoryParameters::magneticField(), FreeTrajectoryState::parameters(), perigeeConversions, theField, theFTS, theParameters, thePerigeeError, thePt, and valid.
: valid(true), theFTS(originalFTS), theFTSavailable(true), theRefPoint(referencePoint) { try { theParameters = perigeeConversions.ftsToPerigeeParameters(originalFTS, referencePoint, thePt); if (theFTS.hasError()) { thePerigeeError = perigeeConversions.ftsToPerigeeError(originalFTS); errorIsAvailable = true; } else { errorIsAvailable = false; } theField = &(originalFTS.parameters().magneticField()); } catch (const cms::Exception &ex) { if (ex.category() != "PerigeeConversions") throw; edm::LogWarning("TrajectoryStateClosestToPoint_PerigeeConversions") << "Caught exception " << ex.explainSelf() << ".\n"; valid = false; } }
void TrajectoryStateClosestToPoint::calculateFTS | ( | ) | const [private] |
Definition at line 58 of file TrajectoryStateClosestToPoint.cc.
References PerigeeTrajectoryParameters::charge(), PerigeeConversions::curvilinearError(), errorIsAvailable, isValid(), PerigeeConversions::momentumFromPerigee(), perigeeConversions, PerigeeConversions::positionFromPerigee(), theField, theFTS, theFTSavailable, theParameters, thePerigeeError, thePt, and theRefPoint.
Referenced by theState().
{ if(!isValid()) throw TrajectoryStateException( "TrajectoryStateClosestToPoint is invalid and cannot return any parameters"); GlobalTrajectoryParameters gtp( perigeeConversions.positionFromPerigee(theParameters, theRefPoint), perigeeConversions.momentumFromPerigee(theParameters, thePt, theRefPoint), theParameters.charge(), theField); if (errorIsAvailable) { theFTS = FTS(gtp, perigeeConversions.curvilinearError(thePerigeeError, gtp)); } else { theFTS = FTS(gtp); } theFTSavailable = true; }
TrackCharge TrajectoryStateClosestToPoint::charge | ( | void | ) | const [inline] |
Definition at line 117 of file TrajectoryStateClosestToPoint.h.
References PerigeeTrajectoryParameters::charge(), isValid(), and theParameters.
Referenced by PhysicsObjectsMonitor::analyze(), and TestOutliers::analyze().
{ if(!isValid()) throw TrajectoryStateException( "TrajectoryStateClosestToPoint is invalid and cannot return any parameters"); return theParameters.charge(); }
bool TrajectoryStateClosestToPoint::hasError | ( | void | ) | const [inline] |
tells whether the error of the perigee parameters is available.
Definition at line 137 of file TrajectoryStateClosestToPoint.h.
References errorIsAvailable, and isValid().
Referenced by HLTMuon::analyze(), and PerigeeLinearizedTrackState::hasError().
{ if(!isValid()) throw TrajectoryStateException( "TrajectoryStateClosestToPoint is invalid and cannot return any parameters"); return errorIsAvailable; }
bool TrajectoryStateClosestToPoint::isValid | ( | void | ) | const [inline] |
Tells whether the state is valid or not
Definition at line 146 of file TrajectoryStateClosestToPoint.h.
References valid.
Referenced by HLTMuon::analyze(), calculateFTS(), charge(), PerigeeLinearizedTrackState::computeJacobians(), V0Fitter::fitAll(), hasError(), HLTMuonTrimuonL3Filter::hltFilter(), HLTMuonTrackMassFilter::hltFilter(), HLTMuonDimuonL3Filter::hltFilter(), momentum(), perigeeError(), perigeeParameters(), position(), PerigeeLinearizedTrackState::predictedStateWeight(), MuonUpdatorAtVertex::propagateToNominalLine(), pt(), referencePoint(), and theState().
{ return valid; }
GlobalVector TrajectoryStateClosestToPoint::momentum | ( | ) | const [inline] |
Definition at line 110 of file TrajectoryStateClosestToPoint.h.
References isValid(), PerigeeConversions::momentumFromPerigee(), perigeeConversions, theParameters, thePt, and theRefPoint.
Referenced by PhysicsObjectsMonitor::analyze(), V0Fitter::fitAll(), and TwoBodyDecayLinearizationPointFinder::getLinearizationPoint().
{ if(!isValid()) throw TrajectoryStateException( "TrajectoryStateClosestToPoint is invalid and cannot return any parameters"); return perigeeConversions.momentumFromPerigee(theParameters, thePt, theRefPoint); }
const PerigeeTrajectoryError& TrajectoryStateClosestToPoint::perigeeError | ( | ) | const [inline] |
returns the error of the perigee parameters if it is available
Definition at line 90 of file TrajectoryStateClosestToPoint.h.
References errorIsAvailable, isValid(), and thePerigeeError.
Referenced by HLTMuon::analyze(), PerigeeRefittedTrackState::covariance(), VertexFitterResult::fill(), PerigeeLinearizedTrackState::predictedStateError(), PerigeeLinearizedTrackState::predictedStateMomentumError(), and PerigeeLinearizedTrackState::predictedStateWeight().
{ if(!isValid()) throw TrajectoryStateException( "TrajectoryStateClosestToPoint is invalid and cannot return any parameters"); if (!errorIsAvailable) throw TrajectoryStateException( "TrajectoryStateClosestToPoint: attempt to access errors when none available"); return thePerigeeError; }
const PerigeeTrajectoryParameters& TrajectoryStateClosestToPoint::perigeeParameters | ( | ) | const [inline] |
returns the perigee parameters at the p.c.a. to the reference point.
Definition at line 69 of file TrajectoryStateClosestToPoint.h.
References isValid(), and theParameters.
Referenced by HLTMuon::analyze(), PerigeeRefittedTrackState::parameters(), PerigeeLinearizedTrackState::predictedStateMomentumParameters(), and PerigeeLinearizedTrackState::predictedStateParameters().
{ if(!isValid()) throw TrajectoryStateException( "TrajectoryStateClosestToPoint is invalid and cannot return any parameters"); return theParameters; }
GlobalPoint TrajectoryStateClosestToPoint::position | ( | void | ) | const [inline] |
returns the state defined at the point of closest approach to the reference point.
Definition at line 103 of file TrajectoryStateClosestToPoint.h.
References isValid(), perigeeConversions, PerigeeConversions::positionFromPerigee(), theParameters, and theRefPoint.
Referenced by compEcalEnergySum(), and compHcalEnergySum().
{ if(!isValid()) throw TrajectoryStateException( "TrajectoryStateClosestToPoint is invalid and cannot return any parameters"); return perigeeConversions.positionFromPerigee(theParameters, theRefPoint); }
double TrajectoryStateClosestToPoint::pt | ( | ) | const [inline] |
returns the transverse momentum magnitude
Definition at line 79 of file TrajectoryStateClosestToPoint.h.
References isValid(), and thePt.
{ if(!isValid()) throw TrajectoryStateException( "TrajectoryStateClosestToPoint is invalid and cannot return any parameters"); return thePt; }
const GlobalPoint& TrajectoryStateClosestToPoint::referencePoint | ( | ) | const [inline] |
returns the reference point which used to construct the state. It is thus the point with respect to which the impact parameters are defined.
Definition at line 57 of file TrajectoryStateClosestToPoint.h.
References isValid(), and theRefPoint.
Referenced by PerigeeRefittedTrackState::position().
{ if(!isValid()) throw TrajectoryStateException( "TrajectoryStateClosestToPoint is invalid and cannot return any parameters"); return theRefPoint; }
const FreeTrajectoryState& TrajectoryStateClosestToPoint::theState | ( | ) | const [inline] |
Definition at line 124 of file TrajectoryStateClosestToPoint.h.
References calculateFTS(), isValid(), theFTS, and theFTSavailable.
Referenced by ValidationMisalignedTracker::analyze(), HLTMuon::analyze(), PhysicsObjectsMonitor::analyze(), TestOutliers::analyze(), pat::LeptonVertexSignificance::calculate(), PerigeeLinearizedTrackState::computeChargedJacobians(), PerigeeLinearizedTrackState::computeJacobians(), PerigeeLinearizedTrackState::computeNeutralJacobians(), V0Fitter::fitAll(), PerigeeRefittedTrackState::freeTrajectoryState(), HLTMuonTrimuonL3Filter::hltFilter(), HLTMuonTrackMassFilter::hltFilter(), HLTMuonDimuonL3Filter::hltFilter(), TransientTrackKinematicStateBuilder::operator()(), KinematicParticleFactoryFromTransientTrack::particle(), MuonUpdatorAtVertex::propagateToNominalLine(), TrackClassifier::reconstructionInformation(), and PerigeeRefittedTrackState::trajectoryStateOnSurface().
{ if(!isValid()) throw TrajectoryStateException( "TrajectoryStateClosestToPoint is invalid and cannot return any parameters"); if (!theFTSavailable) calculateFTS(); return theFTS; }
friend class PerigeeConversions [friend] |
Definition at line 154 of file TrajectoryStateClosestToPoint.h.
friend class TrajectoryStateClosestToPointBuilder [friend] |
Definition at line 153 of file TrajectoryStateClosestToPoint.h.
bool TrajectoryStateClosestToPoint::errorIsAvailable [private] |
Definition at line 175 of file TrajectoryStateClosestToPoint.h.
Referenced by calculateFTS(), hasError(), perigeeError(), and TrajectoryStateClosestToPoint().
Definition at line 176 of file TrajectoryStateClosestToPoint.h.
Referenced by calculateFTS(), momentum(), position(), and TrajectoryStateClosestToPoint().
const MagneticField* TrajectoryStateClosestToPoint::theField [private] |
Definition at line 166 of file TrajectoryStateClosestToPoint.h.
Referenced by calculateFTS(), and TrajectoryStateClosestToPoint().
FTS TrajectoryStateClosestToPoint::theFTS [mutable, private] |
Definition at line 168 of file TrajectoryStateClosestToPoint.h.
Referenced by calculateFTS(), theState(), and TrajectoryStateClosestToPoint().
bool TrajectoryStateClosestToPoint::theFTSavailable [mutable, private] |
Definition at line 169 of file TrajectoryStateClosestToPoint.h.
Referenced by calculateFTS(), and theState().
Definition at line 172 of file TrajectoryStateClosestToPoint.h.
Referenced by calculateFTS(), charge(), momentum(), perigeeParameters(), position(), and TrajectoryStateClosestToPoint().
Definition at line 174 of file TrajectoryStateClosestToPoint.h.
Referenced by calculateFTS(), perigeeError(), and TrajectoryStateClosestToPoint().
double TrajectoryStateClosestToPoint::thePt [private] |
Definition at line 173 of file TrajectoryStateClosestToPoint.h.
Referenced by calculateFTS(), momentum(), pt(), and TrajectoryStateClosestToPoint().
Definition at line 171 of file TrajectoryStateClosestToPoint.h.
Referenced by calculateFTS(), momentum(), position(), and referencePoint().
bool TrajectoryStateClosestToPoint::valid [private] |
Definition at line 165 of file TrajectoryStateClosestToPoint.h.
Referenced by isValid(), and TrajectoryStateClosestToPoint().