CMS 3D CMS Logo

TangentCircle.h
Go to the documentation of this file.
1 #ifndef _TangentCircle_H_
2 #define _TangentCircle_H_
3 
6 
7 class TangentCircle {
8  // TODO : for speed-up :
9  // typedef Point2DBase< float, GlobalTag> Global2DPoint;
10  // typedef Vector2DBase< float, GlobalTag> Global2DVector;
11 
12 public:
14  : theInnerPoint(),
15  theOuterPoint(),
18  theX0(0),
19  theY0(0),
20  theRho(0),
21  theVertexError(0),
22  valid(false),
23  theCharge(0) {}
24 
28 
30  TangentCircle(const GlobalPoint& outerPoint, const GlobalPoint& innerPoint, const GlobalPoint& vertexPoint);
31 
33  TangentCircle(const TangentCircle& primCircle, const GlobalPoint& outerPoint, const GlobalPoint& innerPoint);
34 
37 
38  double x0() const { return theX0; }
39 
40  double y0() const { return theY0; }
41 
42  double rho() const { return theRho; }
43 
44  GlobalPoint outerPoint() const { return theOuterPoint; }
45 
46  GlobalPoint innerPoint() const { return theInnerPoint; }
47 
49 
50  double vertexError() const { return theVertexError; }
51 
52  double curvatureError();
53 
54  int charge(float magz);
55 
56 private:
60 
62 
63  double theX0;
64  double theY0;
65  double theRho;
67  double theVertexError;
69  bool valid;
70  int theCharge;
71 
72  double isTangent(const TangentCircle& primCircle, const TangentCircle& secCircle) const;
74  const GlobalPoint& initalPosition,
75  double theta,
76  int direction) const;
77  int chargeLocally(float magz, GlobalVector v) const;
79 };
80 
81 #endif
double curvatureError()
double y0() const
Definition: TangentCircle.h:40
double x0() const
Definition: TangentCircle.h:38
Geom::Theta< T > theta() const
GlobalPoint innerPoint() const
Definition: TangentCircle.h:46
double vertexError() const
Definition: TangentCircle.h:50
GlobalPoint getPosition(const TangentCircle &circle, const GlobalPoint &initalPosition, double theta, int direction) const
double rho() const
Definition: TangentCircle.h:42
GlobalPoint theVertexPoint
Definition: TangentCircle.h:59
GlobalPoint outerPoint() const
Definition: TangentCircle.h:44
GlobalPoint theOuterPoint
Definition: TangentCircle.h:58
GlobalVector directionAtVertex()
Return the direction at the vertex.
int chargeLocally(float magz, GlobalVector v) const
GlobalVector direction(const GlobalPoint &point) const
GlobalPoint theInnerPoint
Definition: TangentCircle.h:57
GlobalVector theDirectionAtVertex
Definition: TangentCircle.h:61
double theVertexError
Definition: TangentCircle.h:67
int charge(float magz)
double isTangent(const TangentCircle &primCircle, const TangentCircle &secCircle) const
GlobalPoint vertexPoint() const
Definition: TangentCircle.h:48
*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