CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
IterativeHelixExtrapolatorToLine.h
Go to the documentation of this file.
1 #ifndef IterativeHelixExtrapolatorToLine_h_
2 #define IterativeHelixExtrapolatorToLine_h_
3 
8 
14 public:
18  const DirectionType& direction,
19  const float curvature,
20  const PropagationDirection propDir = anyDirection);
21  // destructor
23 
28  std::pair<bool, double> pathLength(const GlobalPoint& point) const override;
29 
34  std::pair<bool, double> pathLength(const Line& line) const override;
35 
38  PositionType position(double s) const override;
39 
42  DirectionType direction(double s) const override;
43 
47 
51 
52 private:
54  template <class T>
55  std::pair<bool, double> genericPathLength(const T& object) const dso_internal;
56 
57 private:
58  const double theX0, theY0, theZ0;
61  const double theRho;
62 
64 
66 
67  mutable double theCachedS;
68  mutable double theCachedDPhi;
69  mutable double theCachedSDPhi;
70  mutable double theCachedCDPhi;
71 };
72 
73 #endif
PositionTypeDouble positionInDouble(double s) const
IterativeHelixExtrapolatorToLine(const PositionType &point, const DirectionType &direction, const float curvature, const PropagationDirection propDir=anyDirection)
DirectionTypeDouble directionInDouble(double s) const
Definition: Line.h:10
Basic3DVector< double > PositionTypeDouble
PropagationDirection
Basic3DVector< double > DirectionTypeDouble
T curvature(T InversePt, const MagneticField &field)
std::pair< bool, double > genericPathLength(const T &object) const
common functionality for extrapolation to line or point
Basic3DVector< float > DirectionType
PositionType position(double s) const override
Basic3DVector< float > PositionType
#define dso_internal
Definition: Visibility.h:13
DirectionType direction(double s) const override
std::pair< bool, double > pathLength(const GlobalPoint &point) const override
HelixExtrapolatorToLine2Order theQuadraticSolutionFromStart
long double T
*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
Definition: invegas.h:5