19 thePropagator(propagator.
clone()),
75 if( fabs(rho)<1.
e-10 ) {
78 float sign =
p.dot(dx);
79 s = sign>0 ? dx.mag() : -dx.mag();
87 IterativeHelixExtrapolatorToLine extrapolator(helixPos,helixDir,rho,
anyDirection);
128 double pmag(p.
mag());
132 std::pair<bool,double> propResult = extrapolator.pathLength(vertex);
133 if ( !propResult.first )
return false;
134 s = propResult.second;
144 pGen *= pmag/pGen.
mag();
T mag() const
The vector magnitude. Equivalent to sqrt(vec.mag2())
const GlobalTrajectoryParameters & parameters() const
ReturnType plane(const PositionType &pos, const RotationType &rot) const
Global3DPoint GlobalPoint
TrackCharge charge() const
const CurvilinearTrajectoryError & curvilinearError() const
const SurfaceType & surface() const
FreeTrajectoryState const * freeTrajectoryState(bool withErrors=true) const
GlobalVector momentum() const
GlobalPoint position() const
virtual TrajectoryStateOnSurface propagate(const FreeTrajectoryState &, const Surface &) const
GlobalPoint position() const
double transverseCurvature() const
const AlgebraicSymMatrix55 & matrix() const
virtual void setPropagationDirection(PropagationDirection dir) const
std::vector< TrajectoryStateOnSurface > components() const
tuple AnalyticalPropagator
Global3DVector GlobalVector