CMS 3D CMS Logo

TwoTrackMinimumDistanceHelixHelix.h
Go to the documentation of this file.
1 #ifndef _Tracker_TwoTrackMinimumDistanceHelixHelix_H_
2 #define _Tracker_TwoTrackMinimumDistanceHelixHelix_H_
3 
5 // #include <string>
6 // #include <sstream>
7 #include <utility>
8 
17 
19 
20 public:
23 
26  const float qual=.001 ); // retval=true? error occured.
27 
28  std::pair <GlobalPoint, GlobalPoint> points() const {
29  return std::pair<GlobalPoint, GlobalPoint> (pointG, pointH);
30  }
31 
32  std::pair <double, double> pathLength() const {
33  return std::pair <double, double> ( pathG, pathH);
34  }
35 
36  double firstAngle() const {return thepG;}
37  double secondAngle() const {return thepH;}
38 
39 private:
40  bool updateCoeffs( const GlobalPoint & , const GlobalPoint & );
41  bool oneIteration ( double &, double & ) ;
42 
43 // bool parallelTracks () const;
44  void finalPoints();
45 
46 private:
48  // the 'GH-track data' (constants)
50  // double thelambdaG, thelambdaH;
54  double thepG0, thepH0;
55 
56  // the variable stuff
57  // = the point we are currently looking at.
58  double thepG, thepH;
59  double thesinpG, thesinpH;
60  double thecospG, thecospH;
62  double pathG, pathH;
64 
67 
68 };
69 #endif
std::pair< double, double > pathLength() const
bool updateCoeffs(const GlobalPoint &, const GlobalPoint &)
bool calculate(const GlobalTrajectoryParameters &, const GlobalTrajectoryParameters &, const float qual=.001)
std::pair< GlobalPoint, GlobalPoint > points() const