StRoot
1
|
Public Member Functions | |
THelixTrack_ (const double *xyz, const double *dir, double rho) | |
THelixTrack_ (const THelixTrack_ &from) | |
THelixTrack_ (const THelixTrack_ *from) | |
THelixTrack_ & | operator= (const THelixTrack_ &from) |
void | Set (const double *xyz, const double *dir, double rho) |
void | Set (double rho) |
void | SetEmx (const double *err2xy, const double *err2z) |
void | SetEmx (const double *err=0) |
THEmx_t_ * | Emx () const |
void | StiEmx (double emx[21]) const |
void | GetSpot (const double axis[3][3], double emx[3]) const |
void | Fill (TCircle_ &circ) const |
void | Backward () |
Change direction. | |
double | Move (double step) |
Move along helix. | |
double | Move (double step, double F[5][5]) |
double | Eval (double step, double *xyz, double *dir=0, double *rho=0) const |
Evaluate params with given step along helix. | |
double | Path (double stmax, const double *surf, int nsurf, double *x=0, double *dir=0, int nearest=0) const |
double | Path (const double point[3], double *xyz=0, double *dir=0) const |
Distance to nearest point to given space point. | |
double | Dca (const double point[3], double *dcaErr=0) const |
DCA to given space point (with error matrix) | |
double | Path (double x, double y) const |
Distance to nearest point to given 2dim point. | |
double | Dca (double x, double y, double *dcaErr=0) const |
DCA to given 2dim point (with error matrix) | |
double | Path (const THelixTrack_ &hlx, double *s2=0) const |
double | PathX (const THelixTrack_ &hlx, double *s2=0, double *dist=0, double *xyz=0) const |
double | Dca (const double point[3], double &dcaXY, double &dcaZ, double dcaEmx[3], int kind=3) const |
distance and DCAxy and DCAz to given space point (with error matrix) More... | |
const double * | GetXYZ () const |
const double * | Pos () const |
double * | Pos () |
const double * | Dir () const |
double * | Dir () |
double | GetRho () const |
double | GetCos () const |
double | GetSin () const |
double | GetTan () const |
double | GetPeriod () const |
void | Rot (double angle) |
void | Rot (double cosa, double sina) |
void | Show (double len, const THelixTrack_ *other=0) const |
void | Print (Option_t *opt="") const |
Static Public Member Functions | |
static void | InvertMtx (double derivs[5][5]) |
static void | Test1 () |
static void | Test2 () |
static void | Test3 () |
static void | Test4 () |
static void | Test5 () |
static void | TestMtx () |
static void | TestDer () |
static void | TestErr () |
static void | TestTwoHlx () |
static void | TestBak () |
Protected Member Functions | |
void | MakeMtx (double step, double F[5][5]) |
double | Path (double stmin, double stmax, const double *surf, int nsurf, double *x=0, double *dir=0, int nearest=0) const |
double | PathHZ (const double *surf, int nsurf, double *x=0, double *dir=0, int nearest=0) const |
void | Build () |
Protected Attributes | |
char | fBeg [1] |
double | fX [3] |
double | fP [3] |
double | fRho |
double | fCosL |
THEmx_t_ * | fEmx |
char | fEnd [1] |
Definition at line 214 of file THelixTrack_.h.
double THelixTrack_::Dca | ( | const double | point[3], |
double & | dcaXY, | ||
double & | dcaZ, | ||
double | dcaEmx[3], | ||
int | kind = 3 |
||
) | const |
distance and DCAxy and DCAz to given space point (with error matrix)
Full 3d dca evaluation point[3] - x,y,z of vertex dcaXY - dca in xy plane dcaZ - dca in Z direction dcaEmx[3] - err(dcaXY*dcaXY),err(dcaXY*dcaZ),err(dcaZ*dcaZ) kind - 3=3d dca,2=2d dca return distance to dca point
Definition at line 809 of file THelixTrack_.cxx.
References Move().
void THelixTrack_::GetSpot | ( | const double | axis[3][3], |
double | emx[3] | ||
) | const |
THelixTrack_::GetSpot(double axis[3][3],emx[3]) const axis[0,1] - vectors in plane. axis[2] - normal vector of plane emx[3] error matrix of coordinates according vectors in plane.
Definition at line 347 of file THelixTrack_.cxx.
References TCL::traat(), TCL::trasat(), TCL::trsa(), and TCL::trsinv().
Referenced by TCircleFitter_::FixAt().
|
protected |
Make transformatiom matrix to transform errors called only after Eval()
Definition at line 388 of file THelixTrack_.cxx.
Referenced by Move().
double THelixTrack_::Path | ( | double | stmax, |
const double * | surf, | ||
int | nsurf, | ||
double * | x = 0 , |
||
double * | dir = 0 , |
||
int | nearest = 0 |
||
) | const |
Get current parameters Distance to crossing 2nd order surface surf[0]+surf[1]*x+surf[2]*y+surf[3]*z +surf[4]*x*x +surf[5]*y*y+surf[6]*z*z +surf[7]*x*y +surf[8]*y*z+surf[9]*z*x == 0 nearest==0 search alon direction, else the nearest
Definition at line 443 of file THelixTrack_.cxx.
Referenced by TCircleFitter_::FixAt(), THelix3d::Path(), and TestDer().
double THelixTrack_::Path | ( | const THelixTrack_ & | hlx, |
double * | s2 = 0 |
||
) | const |
Returns length to nearest point of other helix along this helix. *s2 the length along the other helix Both lengths are positive
Definition at line 597 of file THelixTrack_.cxx.
References Move().
double THelixTrack_::PathX | ( | const THelixTrack_ & | hlx, |
double * | s2 = 0 , |
||
double * | dist = 0 , |
||
double * | xyz = 0 |
||
) | const |
Extention of previous method. Both lengths could be -ve. *dist - distance between helicies xyz[6] - 1st and 2nd space points on the helicies
Definition at line 646 of file THelixTrack_.cxx.
References Backward(), and Eval().
|
static |