4 #include <vdt/vdtMath.h>
22 double px = direction.
x();
23 double py = direction.
y();
24 double pz = direction.
z();
25 double pt2 = px * px + py * py;
26 double p2 = pt2 + pz * pz;
27 double pI = 1. /
sqrt(p2);
28 double ptI = 1. /
sqrt(pt2);
T y() const
Cartesian y coordinate.
T x() const
Cartesian x coordinate.
T curvature(T InversePt, const MagneticField &field)
static const float theNumericalPrecision
DirectionType direction(double s) const override
T z() const
Cartesian z coordinate.
Abs< T >::type abs(const T &t)
HelixForwardPlaneCrossing(const PositionType &point, const DirectionType &direction, const float curvature, const PropagationDirection propDir=alongMomentum)
uint16_t const *__restrict__ x
Basic3DVector< float > PositionType
the helix is passed to the constructor and does not appear in the interface
Basic3DVector< float > DirectionType
Basic3DVector< double > PositionTypeDouble
PositionType position(double s) const override
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point