#include <AnalyticalTrajectoryExtrapolatorToLine.h>
Public Member Functions | |
AnalyticalTrajectoryExtrapolatorToLine (const MagneticField *field) | |
constructor with default geometrical propagator More... | |
AnalyticalTrajectoryExtrapolatorToLine (const Propagator &) | |
constructor with alternative propagator More... | |
TrajectoryStateOnSurface | extrapolate (const FreeTrajectoryState &fts, const Line &L) const |
extrapolation from FreeTrajectoryState More... | |
TrajectoryStateOnSurface | extrapolate (const TrajectoryStateOnSurface tsos, const Line &L) const |
extrapolation from TrajectoryStateOnSurface More... | |
Private Member Functions | |
TrajectoryStateOnSurface | extrapolateFullState (const TrajectoryStateOnSurface tsos, const Line &line) const |
extrapolation of (multi) TSOS More... | |
TrajectoryStateOnSurface | extrapolateSingleState (const FreeTrajectoryState &fts, const Line &line) const |
extrapolation of (single) FTS More... | |
bool | propagateWithHelix (const IterativeHelixExtrapolatorToLine &extrapolator, const Line &line, GlobalPoint &x, GlobalVector &p, double &s) const |
the actual propagation to a new point & momentum vector More... | |
Private Attributes | |
DeepCopyPointerByClone< Propagator > | thePropagator |
Extrapolate to the closest approach w.r.t. a line. This class is faster than the TrajectoryExtrapolatorToLine. The helix model is explicitely used in the determination of the target surface. This target surface is centered on the point of closest approach on the line. The axes of the local coordinate system (x_loc, y_loc, z_loc) are z_loc // trajectory direction at point of closest approach; x_loc normal to trajectory and along impact vector (line->helix); y_loc forms a right-handed system with the other axes.
Definition at line 28 of file AnalyticalTrajectoryExtrapolatorToLine.h.
AnalyticalTrajectoryExtrapolatorToLine::AnalyticalTrajectoryExtrapolatorToLine | ( | const MagneticField * | field | ) |
constructor with default geometrical propagator
Definition at line 15 of file AnalyticalTrajectoryExtrapolatorToLine.cc.
AnalyticalTrajectoryExtrapolatorToLine::AnalyticalTrajectoryExtrapolatorToLine | ( | const Propagator & | propagator | ) |
constructor with alternative propagator
Definition at line 19 of file AnalyticalTrajectoryExtrapolatorToLine.cc.
References anyDirection, Propagator::setPropagationDirection(), and thePropagator.
TrajectoryStateOnSurface AnalyticalTrajectoryExtrapolatorToLine::extrapolate | ( | const FreeTrajectoryState & | fts, |
const Line & | L | ||
) | const |
extrapolation from FreeTrajectoryState
Definition at line 25 of file AnalyticalTrajectoryExtrapolatorToLine.cc.
References extrapolateSingleState().
Referenced by SignedDecayLength3D::closestApproachToJet(), SignedImpactParameter3D::closestApproachToJet(), and IPTools::closestApproachToJet().
TrajectoryStateOnSurface AnalyticalTrajectoryExtrapolatorToLine::extrapolate | ( | const TrajectoryStateOnSurface | tsos, |
const Line & | L | ||
) | const |
extrapolation from TrajectoryStateOnSurface
Definition at line 32 of file AnalyticalTrajectoryExtrapolatorToLine.cc.
References extrapolateFullState(), and TrajectoryStateOnSurface::isValid().
|
private |
extrapolation of (multi) TSOS
Definition at line 40 of file AnalyticalTrajectoryExtrapolatorToLine.cc.
References extrapolateSingleState(), TrajectoryStateOnSurface::freeTrajectoryState(), TrajectoryStateOnSurface::isValid(), geometryCSVtoXML::line, Propagator::propagate(), TrajectoryStateOnSurface::singleState(), TrajectoryStateOnSurface::surface(), and thePropagator.
Referenced by extrapolate().
|
private |
extrapolation of (single) FTS
Definition at line 57 of file AnalyticalTrajectoryExtrapolatorToLine.cc.
References anyDirection, FreeTrajectoryState::charge(), Line::closerPointToLine(), FreeTrajectoryState::curvilinearError(), MillePedeFileConverter_cfg::e, FreeTrajectoryState::hasError(), AnalyticalCurvilinearJacobian::jacobian(), PV3DBase< T, PVType, FrameType >::mag(), Propagator::magneticField(), CurvilinearTrajectoryError::matrix(), FreeTrajectoryState::momentum(), AlCaHLTBitMon_ParallelJobs::p, FreeTrajectoryState::parameters(), PlaneBuilder::plane(), GlobalTrajectoryParameters::position(), FreeTrajectoryState::position(), propagateWithHelix(), rho, makeMuonMisalignmentScenario::rot, alignCSCRings::s, Validation_hcalonly_cfi::sign, thePropagator, FreeTrajectoryState::transverseCurvature(), and x.
Referenced by extrapolate(), and extrapolateFullState().
|
private |
the actual propagation to a new point & momentum vector
Definition at line 123 of file AnalyticalTrajectoryExtrapolatorToLine.cc.
References IterativeHelixExtrapolatorToLine::direction(), PV3DBase< T, PVType, FrameType >::mag(), Basic3DVector< T >::mag(), IterativeHelixExtrapolatorToLine::pathLength(), and IterativeHelixExtrapolatorToLine::position().
Referenced by extrapolateSingleState().
|
private |
Definition at line 58 of file AnalyticalTrajectoryExtrapolatorToLine.h.
Referenced by AnalyticalTrajectoryExtrapolatorToLine(), extrapolateFullState(), and extrapolateSingleState().