CMS 3D CMS Logo

TwoTrackMinimumDistanceHelixLine.h
Go to the documentation of this file.
1 #ifndef _Tracker_TwoTrackMinimumDistanceHelixLine_H_
2 #define _Tracker_TwoTrackMinimumDistanceHelixLine_H_
3 
6 #include <utility>
16 
18 public:
21 
30  const float qual = .0001); // retval=true? error occured.
31 
37  std::pair<GlobalPoint, GlobalPoint> points() const;
38  std::pair<double, double> pathLength() const;
39 
40  double firstAngle() const;
41  double secondAngle() const;
42 
43 private:
47  double X, Y, Z, px, py, pz, px2, py2, pz2, baseFct, baseDer;
49  double thePhiH;
50  double Hn, Ln;
51  double aa, bb, cc, dd, ee, ff;
52 
54  bool updateCoeffs();
55  void finalPoints();
56  bool oneIteration(double &thePhiH, double &fct, double &derivative) const;
58  double tL, linePath, helixPath;
60 };
61 #endif
const GlobalTrajectoryParameters * theH
Derivative< X, A >::type derivative(const A &_)
Definition: Derivative.h:18
const GlobalTrajectoryParameters * theL
bool oneIteration(double &thePhiH, double &fct, double &derivative) const
std::pair< double, double > pathLength() const
const GlobalTrajectoryParameters * firstGTP
std::pair< GlobalPoint, GlobalPoint > points() const
bool calculate(const GlobalTrajectoryParameters &, const GlobalTrajectoryParameters &, const float qual=.0001)
const GlobalTrajectoryParameters * secondGTP