1 #ifndef HelixForwardPlaneCrossing_H_
2 #define HelixForwardPlaneCrossing_H_
17 const DirectionType& direction,
32 double dS = (plane.
position().
z()-theZ0) / theCosTheta;
35 return std::make_pair( ! (
48 virtual DirectionType
direction(
double s)
const;
57 const double theX0,theY0,theZ0;
58 double theCosPhi0,theSinPhi0;
59 double theCosTheta,theSinTheta;
64 mutable double theCachedS;
65 mutable double theCachedDPhi;
66 mutable double theCachedSDPhi;
67 mutable double theCachedCDPhi;
69 static const float theNumericalPrecision;
virtual DirectionType direction(double s) const =0
virtual std::pair< bool, double > pathLength(const Plane &plane)
Point3DBase< Scalar, GlobalTag > PositionType
T curvature(T InversePt, const edm::EventSetup &iSetup)
Abs< T >::type abs(const T &t)
virtual PositionType position(double s) const =0
Basic3DVector< double > DirectionTypeDouble
const PositionType & position() const
*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
Basic3DVector< double > PositionTypeDouble
virtual ~HelixForwardPlaneCrossing()
Unlimited (trivial) bounds.