1 #ifndef HELIXARBITRARYPLANECROSSING_H_
2 #define HELIXARBITRARYPLANECROSSING_H_
15 const DirectionType& direction,
33 virtual DirectionType
direction(
double s)
const;
51 inline bool notAtSurface (
const Plane&,
56 HelixArbitraryPlaneCrossing2Order theQuadraticCrossingFromStart;
60 double theCosPhi0,theSinPhi0;
61 double theCosTheta,theSinTheta;
66 mutable
double theCachedS;
67 mutable
double theCachedDPhi;
68 mutable
double theCachedSDPhi;
69 mutable
double theCachedCDPhi;
71 static
const float theNumericalPrecision;
72 static
const float theMaxDistToPlane;
virtual ~HelixArbitraryPlaneCrossing()
virtual DirectionType direction(double s) const =0
Point3DBase< Scalar, GlobalTag > PositionType
T curvature(T InversePt, const edm::EventSetup &iSetup)
virtual std::pair< bool, double > pathLength(const Plane &)=0
virtual PositionType position(double s) const =0
Basic3DVector< double > DirectionTypeDouble
*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
Unlimited (trivial) bounds.