|
BOSS 7.1.3
BESIII Offline Software System
|
A class to represent a track in tracking. More...
#include <TRunge.h>
Inheritance diagram for TRunge:Public Member Functions | |
| TRunge () | |
| Constructors. | |
| TRunge (const TTrack &) | |
| TRunge (const Helix &) | |
| TRunge (const TRunge &) | |
| TRunge (const RecMdcTrack &) | |
| ~TRunge () | |
| Destructor. | |
| unsigned | objectType (void) const |
| returns object type | |
| double | dr (void) const |
| Track parameters (at pivot) | |
| double | phi0 (void) const |
| double | kappa (void) const |
| double | dz (void) const |
| double | tanl (void) const |
| const HepPoint3D & | pivot (void) const |
| pivot position | |
| const Vector & | a (void) const |
| returns helix parameter | |
| const SymMatrix & | Ea (void) const |
| returns error matrix | |
| Helix | helix (void) const |
| returns helix class | |
| unsigned | ndf (void) const |
| returns NDF | |
| double | chi2 (void) const |
| returns chi2. | |
| double | reducedchi2 (void) const |
| returns reduced-chi2 | |
| int | BfieldID (void) const |
| returns B field ID | |
| double | StepSize (void) const |
| returns step size | |
| const double * | Yscal (void) const |
| return error parameters for fitting with step size control | |
| double | Eps (void) const |
| double | StepSizeMax (void) const |
| double | StepSizeMin (void) const |
| float | Mass (void) const |
| return mass | |
| double | MaxFlightLength (void) const |
| return max flight length | |
| int | approach (TMLink &, const RkFitMaterial, bool sagCorrection=true) |
| int | approach (TMLink &, float &tof, HepVector3D &p, const RkFitMaterial, bool sagCorrection=true) |
| int | approach_line (TMLink &, const HepPoint3D &, const HepVector3D &, HepPoint3D &onLine, HepPoint3D &onTrack, const RkFitMaterial material) |
| caluculate closest points between a line and this track | |
| int | approach_line (TMLink &, const HepPoint3D &, const HepVector3D &, HepPoint3D &onLine, HepPoint3D &onTrack, float &tof, HepVector3D &p, const RkFitMaterial material) |
| int | approach_line (TMLink &, const HepPoint3D &, const HepVector3D &, HepPoint3D &onLine, HepPoint3D &onTrack, float &tof, HepVector3D &p, const RkFitMaterial material, unsigned &stepNum) |
| int | approach_point (TMLink &, const HepPoint3D &, HepPoint3D &onTrack, const RkFitMaterial material) const |
| caluculate closest point between a point and this track | |
| const HepPoint3D & | pivot (const HepPoint3D &) |
| set new pivot | |
| const Vector & | a (const Vector &) |
| set helix parameter | |
| const SymMatrix & | Ea (const SymMatrix &) |
| set helix error matrix | |
| int | BfieldID (int) |
| set B field map ID | |
| double | StepSize (double) |
| set step size to calc. trajectory | |
| const double * | Yscal (const double *) |
| set error parameters for fitting with step size control | |
| double | Eps (double) |
| double | StepSizeMax (double) |
| double | StepSizeMin (double) |
| float | Mass (float) |
| set mass for tof calc. | |
| double | MaxFlightLength (double) |
| double | DisToWire (TMLink &, double, HepPoint3D, HepPoint3D &) |
| double | dEpath (double, double, double) const |
| void | eloss (double path, const RkFitMaterial *material, double mass, double y[6], int index) const |
| unsigned | Fly (const RkFitMaterial material) const |
| make the trajectory in cache, return the number of step | |
| unsigned | Fly_SC (void) const |
| double | intersect_cylinder (double r) const |
| double | intersect_yz_plane (const HepTransform3D &plane, double x) const |
| double | intersect_zx_plane (const HepTransform3D &plane, double y) const |
| double | intersect_xy_plane (double z) const |
| void | Propagate (double y[6], const double &step, const RkFitMaterial material) const |
| propagate the track using 4th-order Runge-Kutta method | |
| void | Function (const double y[6], double f[6]) const |
| void | Propagate1 (const double y[6], const double dydx[6], const double &step, double yout[6]) const |
| void | Propagate_QC (double y[6], double dydx[6], const double &steptry, const double &eps, const double yscal[6], double &stepdid, double &stepnext) const |
| void | SetFirst (double y[6]) const |
| set first point (position, momentum) s=0, phi=0 | |
| unsigned | Nstep (void) const |
| access to trajectory cache | |
| int | GetXP (unsigned stepNum, double y[6]) const |
| int | GetStep (unsigned stepNum, double &step) const |
| double | SetFlightLength (void) |
| set flight length using wire hits | |
Public Member Functions inherited from TTrackBase | |
| TTrackBase () | |
| Constructor. | |
| TTrackBase (const AList< TMLink > &links) | |
| Constructor. | |
| virtual | ~TTrackBase () |
| Destructor. | |
| virtual unsigned | type (void) const |
| returns type. Definition is depending on an object class. | |
| virtual void | dump (const std::string &message=std::string(""), const std::string &prefix=std::string("")) const |
| dumps debug information. | |
| const AList< TMLink > & | links (unsigned mask=0) const |
| returns a list of masked TMLinks assigned to this track. 'mask' will be applied if mask is not 0. | |
| unsigned | nLinks (unsigned mask=0) const |
| returns # of masked TMLinks assigned to this track object. | |
| const AList< TMLink > & | cores (unsigned mask=0) const |
| returns a list of masked TMLinks for fit. 'mask' will be applied if mask is not 0. | |
| unsigned | nCores (unsigned mask=0) const |
| returns # of masked TMLinks for fit. 'mask' will be applied if mask is not 0. | |
| void | update (void) const |
| update cache. | |
| void | append (TMLink &) |
| appends a TMLink. | |
| void | append (const AList< TMLink > &) |
| appends TMLinks. | |
| void | appendByApproach (AList< TMLink > &list, double maxSigma) |
| appends TMLinks by approach. 'list' is an input. Unappended TMLinks will be removed from 'list' when returned. | |
| void | appendByDistance (AList< TMLink > &list, double maxDistance) |
| appends TMLinks by distance. 'list' is an input. Unappended TMLinks will be removed from 'list' when returned. | |
| void | remove (TMLink &a) |
| removes a TMLink. | |
| void | remove (const AList< TMLink > &) |
| removes TMLinks. | |
| virtual void | refine (AList< TMLink > &list, double maxSigma) |
| removes bad points by pull. The bad points are removed from the track, and are returned in 'list'. | |
| virtual void | refine (double maxSigma) |
| removes bad points by pull. The bad points are masked not to be used in fit. | |
| virtual int | DropWorst () |
| virtual void | removeLinks (void) |
| virtual double | distance (const TMLink &) const |
| returns distance to a position of TMLink in TMLink space. | |
| virtual int | approach (TMLink &) const |
| calculates the closest approach to a wire in real space. Results are stored in TMLink. Return value is negative if error happened. | |
| unsigned | testByApproach (const TMLink &list, double sigma) const |
| returns # of good hits to be appended. | |
| unsigned | testByApproach (const AList< TMLink > &list, double sigma) const |
| virtual int | fit (void) |
| fits itself by a default fitter. Error was happened if return value is not zero. | |
| const TMFitter *const | fitter (void) const |
| returns a pointer to a default fitter. | |
| const TMFitter *const | fitter (const TMFitter *) |
| sets a default fitter. | |
| void | falseFit () |
| false Fit | |
| TMLink * | operator[] (unsigned i) const |
| const TTrackHEP *const | hep (void) const |
| returns TTrackHEP. | |
| unsigned | nHeps (void) const |
| returns # of contributed TTrackHEP tracks. | |
| const TTrackMC *const | mc (void) const |
| returns a pointer to TTrackMC. | |
| bool | fitted (void) const |
| returns true if fitted. | |
| bool | fittedWithCathode (void) const |
| returns true if fitted with cathode hits(TEMPORARY). | |
Friends | |
| class | TRungeFitter |
Additional Inherited Members | |
Protected Attributes inherited from TTrackBase | |
| AList< TMLink > | _links |
| bool | _fitted |
| bool | _fittedWithCathode |
| TTrackMC * | _mc |
| TRunge::TRunge | ( | ) |
Constructors.
Definition at line 47 of file TRunge.cxx.
Referenced by TRunge().
| TRunge::TRunge | ( | const TTrack & | a | ) |
Definition at line 114 of file TRunge.cxx.
| TRunge::TRunge | ( | const Helix & | h | ) |
Definition at line 149 of file TRunge.cxx.
| TRunge::TRunge | ( | const TRunge & | a | ) |
Definition at line 178 of file TRunge.cxx.
| TRunge::TRunge | ( | const RecMdcTrack & | a | ) |
Definition at line 79 of file TRunge.cxx.
| TRunge::~TRunge | ( | ) |
set helix parameter
Definition at line 299 of file TRunge.cxx.
| const Vector & TRunge::a | ( | void | ) | const |
returns helix parameter
Definition at line 230 of file TRunge.cxx.
Referenced by dEpath(), DisToWire(), TRunge(), TRunge(), TRunge(), and TRunge().
| int TRunge::approach | ( | TMLink & | l, |
| const RkFitMaterial | material, | ||
| bool | sagCorrection = true ) |
calculates the closest approach to a wire in real space. Results are stored in TMLink. Return value is negative if error happened.
Definition at line 360 of file TRunge.cxx.
Referenced by approach().
| int TRunge::approach | ( | TMLink & | l, |
| float & | tof, | ||
| HepVector3D & | p, | ||
| const RkFitMaterial | material, | ||
| bool | sagCorrection = true ) |
Definition at line 366 of file TRunge.cxx.
| int TRunge::approach_line | ( | TMLink & | l, |
| const HepPoint3D & | w0, | ||
| const HepVector3D & | v, | ||
| HepPoint3D & | onLine, | ||
| HepPoint3D & | onTrack, | ||
| const RkFitMaterial | material ) |
caluculate closest points between a line and this track
Definition at line 428 of file TRunge.cxx.
Referenced by approach(), approach_line(), and approach_line().
| int TRunge::approach_line | ( | TMLink & | l, |
| const HepPoint3D & | w0, | ||
| const HepVector3D & | v, | ||
| HepPoint3D & | onLine, | ||
| HepPoint3D & | onTrack, | ||
| float & | tof, | ||
| HepVector3D & | p, | ||
| const RkFitMaterial | material ) |
Definition at line 435 of file TRunge.cxx.
| int TRunge::approach_line | ( | TMLink & | l, |
| const HepPoint3D & | w0, | ||
| const HepVector3D & | v, | ||
| HepPoint3D & | onLine, | ||
| HepPoint3D & | onTrack, | ||
| float & | tof, | ||
| HepVector3D & | p, | ||
| const RkFitMaterial | material, | ||
| unsigned & | stepNum ) |
Definition at line 442 of file TRunge.cxx.
| int TRunge::approach_point | ( | TMLink & | l, |
| const HepPoint3D & | p0, | ||
| HepPoint3D & | onTrack, | ||
| const RkFitMaterial | material ) const |
caluculate closest point between a point and this track
Definition at line 777 of file TRunge.cxx.
| int TRunge::BfieldID | ( | int | id | ) |
set B field map ID
Definition at line 313 of file TRunge.cxx.
| int TRunge::BfieldID | ( | void | ) | const |
returns B field ID
Definition at line 258 of file TRunge.cxx.
Referenced by TRunge().
| double TRunge::chi2 | ( | void | ) | const |
| double TRunge::dEpath | ( | double | mass, |
| double | path, | ||
| double | p ) const |
Definition at line 1239 of file TRunge.cxx.
| double TRunge::DisToWire | ( | TMLink & | l, |
| double | z, | ||
| HepPoint3D | a, | ||
| HepPoint3D & | b ) |
Definition at line 1215 of file TRunge.cxx.
Referenced by approach_line().
| double TRunge::dr | ( | void | ) | const |
Track parameters (at pivot)
Definition at line 206 of file TRunge.cxx.
| double TRunge::dz | ( | void | ) | const |
Definition at line 218 of file TRunge.cxx.
Referenced by approach_line(), and intersect_xy_plane().
set helix error matrix
Definition at line 307 of file TRunge.cxx.
| const SymMatrix & TRunge::Ea | ( | void | ) | const |
| void TRunge::eloss | ( | double | path, |
| const RkFitMaterial * | material, | ||
| double | mass, | ||
| double | y[6], | ||
| int | index ) const |
Definition at line 1299 of file TRunge.cxx.
Referenced by RkFitCylinder::updateTrack().
| double TRunge::Eps | ( | double | eps | ) |
Definition at line 331 of file TRunge.cxx.
| double TRunge::Eps | ( | void | ) | const |
| unsigned TRunge::Fly | ( | const RkFitMaterial | material | ) | const |
make the trajectory in cache, return the number of step
Definition at line 836 of file TRunge.cxx.
Referenced by approach_line(), and approach_point().
| unsigned TRunge::Fly_SC | ( | void | ) | const |
Definition at line 1097 of file TRunge.cxx.
Referenced by approach_line(), and approach_point().
| void TRunge::Function | ( | const double | y[6], |
| double | f[6] ) const |
Definition at line 916 of file TRunge.cxx.
Referenced by approach_line(), Fly_SC(), Propagate(), Propagate1(), and Propagate_QC().
| int TRunge::GetStep | ( | unsigned | stepNum, |
| double & | step ) const |
Definition at line 985 of file TRunge.cxx.
| int TRunge::GetXP | ( | unsigned | stepNum, |
| double | y[6] ) const |
Definition at line 979 of file TRunge.cxx.
| Helix TRunge::helix | ( | void | ) | const |
returns helix class
Definition at line 238 of file TRunge.cxx.
Referenced by RkFitCylinder::intersect(), RkFitCylinder::intersect(), intersect_cylinder(), intersect_xy_plane(), intersect_yz_plane(), intersect_zx_plane(), pivot(), SetFlightLength(), TRunge(), and TRunge().
| double TRunge::intersect_cylinder | ( | double | r | ) | const |
Definition at line 1316 of file TRunge.cxx.
Referenced by RkFitCylinder::intersect(), RkFitCylinder::intersect(), intersect_yz_plane(), and intersect_zx_plane().
| double TRunge::intersect_xy_plane | ( | double | z | ) | const |
Definition at line 1362 of file TRunge.cxx.
Referenced by RkFitCylinder::intersect(), and RkFitCylinder::intersect().
| double TRunge::intersect_yz_plane | ( | const HepTransform3D & | plane, |
| double | x ) const |
Definition at line 1345 of file TRunge.cxx.
| double TRunge::intersect_zx_plane | ( | const HepTransform3D & | plane, |
| double | y ) const |
Definition at line 1328 of file TRunge.cxx.
| double TRunge::kappa | ( | void | ) | const |
Definition at line 214 of file TRunge.cxx.
| float TRunge::Mass | ( | float | mass | ) |
set mass for tof calc.
Definition at line 347 of file TRunge.cxx.
| float TRunge::Mass | ( | void | ) | const |
return mass
Definition at line 279 of file TRunge.cxx.
Referenced by TRunge().
| double TRunge::MaxFlightLength | ( | double | length | ) |
Definition at line 353 of file TRunge.cxx.
| double TRunge::MaxFlightLength | ( | void | ) | const |
return max flight length
Definition at line 283 of file TRunge.cxx.
Referenced by TRunge().
| unsigned TRunge::ndf | ( | void | ) | const |
returns NDF
Definition at line 242 of file TRunge.cxx.
Referenced by TRunge().
| unsigned TRunge::Nstep | ( | void | ) | const |
access to trajectory cache
Definition at line 975 of file TRunge.cxx.
|
inlinevirtual |
returns object type
Reimplemented from TTrackBase.
| double TRunge::phi0 | ( | void | ) | const |
Definition at line 210 of file TRunge.cxx.
| const HepPoint3D & TRunge::pivot | ( | const HepPoint3D & | newpivot | ) |
set new pivot
!!!!! under construction !!!!! track parameter should be extracted after track propagation.
Definition at line 287 of file TRunge.cxx.
| const HepPoint3D & TRunge::pivot | ( | void | ) | const |
pivot position
Definition at line 226 of file TRunge.cxx.
Referenced by intersect_xy_plane(), TRunge(), TRunge(), and TRunge().
| void TRunge::Propagate | ( | double | y[6], |
| const double & | step, | ||
| const RkFitMaterial | material ) const |
propagate the track using 4th-order Runge-Kutta method
Definition at line 862 of file TRunge.cxx.
Referenced by approach_line(), approach_point(), and Fly().
| void TRunge::Propagate1 | ( | const double | y[6], |
| const double | dydx[6], | ||
| const double & | step, | ||
| double | yout[6] ) const |
Definition at line 991 of file TRunge.cxx.
Referenced by Propagate_QC().
| void TRunge::Propagate_QC | ( | double | y[6], |
| double | dydx[6], | ||
| const double & | steptry, | ||
| const double & | eps, | ||
| const double | yscal[6], | ||
| double & | stepdid, | ||
| double & | stepnext ) const |
Definition at line 1048 of file TRunge.cxx.
Referenced by Fly_SC().
| double TRunge::reducedchi2 | ( | void | ) | const |
returns reduced-chi2
Definition at line 250 of file TRunge.cxx.
| void TRunge::SetFirst | ( | double | y[6] | ) | const |
set first point (position, momentum) s=0, phi=0
Definition at line 956 of file TRunge.cxx.
| double TRunge::SetFlightLength | ( | void | ) |
set flight length using wire hits
Definition at line 1141 of file TRunge.cxx.
| double TRunge::StepSize | ( | double | step | ) |
set step size to calc. trajectory
Definition at line 320 of file TRunge.cxx.
| double TRunge::StepSize | ( | void | ) | const |
returns step size
Definition at line 262 of file TRunge.cxx.
Referenced by TRunge().
| double TRunge::StepSizeMax | ( | double | step | ) |
Definition at line 336 of file TRunge.cxx.
| double TRunge::StepSizeMax | ( | void | ) | const |
Definition at line 272 of file TRunge.cxx.
Referenced by TRunge().
| double TRunge::StepSizeMin | ( | double | step | ) |
Definition at line 341 of file TRunge.cxx.
| double TRunge::StepSizeMin | ( | void | ) | const |
Definition at line 275 of file TRunge.cxx.
Referenced by TRunge().
| double TRunge::tanl | ( | void | ) | const |
Definition at line 222 of file TRunge.cxx.
Referenced by intersect_xy_plane(), and SetFlightLength().
| const double * TRunge::Yscal | ( | const double * | ) |
set error parameters for fitting with step size control
| const double * TRunge::Yscal | ( | void | ) | const |
return error parameters for fitting with step size control
Definition at line 266 of file TRunge.cxx.
|
friend |
Definition at line 224 of file TRunge.h.
Referenced by TRungeFitter, and Yscal().