Base Class for genfit track representations. Defines interface for track parameterizations. More...
#include <GFAbsTrackRep.h>
Public Member Functions | |
virtual GFAbsTrackRep * | clone () const =0 |
virtual GFAbsTrackRep * | prototype () const =0 |
virtual double | extrapolate (const GFDetPlane &plane, TMatrixT< Double_t > &statePred) |
returns the tracklength spanned in this extrapolation More... | |
GFAbsTrackRep () | |
GFAbsTrackRep (int) | |
virtual | ~GFAbsTrackRep () |
virtual void | extrapolateToPoint (const TVector3 &point, TVector3 &poca, TVector3 &normVec) |
This method is to extrapolate the track to point of closest approach to a point in space. More... | |
virtual void | extrapolateToLine (const TVector3 &point1, const TVector3 &point2, TVector3 &poca, TVector3 &normVec, TVector3 &poca_onwire) |
This method extrapolates to the point of closest approach to a line. More... | |
virtual void | stepalong (double h) |
make step of h cm along the track More... | |
virtual double | extrapolate (const GFDetPlane &plane, TMatrixT< Double_t > &statePred, TMatrixT< Double_t > &covPred)=0 |
Extrapolates the track to the given detectorplane. More... | |
double | extrapolate (const GFDetPlane &plane) |
This changes the state and cov and plane of the rep. More... | |
unsigned int | getDim () const |
returns dimension of state vector More... | |
virtual void | Print (std::ostream &out=std::cout) const |
const TMatrixT< Double_t > & | getState () const |
const TMatrixT< Double_t > & | getCov () const |
double | getStateElem (int i) const |
double | getCovElem (int i, int j) const |
virtual TVector3 | getPos (const GFDetPlane &pl)=0 |
virtual TVector3 | getMom (const GFDetPlane &pl)=0 |
virtual void | getPosMom (const GFDetPlane &pl, TVector3 &pos, TVector3 &mom)=0 |
virtual void | getPosMomCov (const GFDetPlane &pl, TVector3 &pos, TVector3 &mom, TMatrixT< Double_t > &cov) |
method which gets position, momentum and 6x6 covariance matrix More... | |
virtual double | getCharge () const =0 |
TVector3 | getPos () |
TVector3 | getMom () |
void | getPosMomCov (TVector3 &pos, TVector3 &mom, TMatrixT< Double_t > &c) |
TMatrixT< Double_t > | getFirstState () const |
TMatrixT< Double_t > | getFirstCov () const |
GFDetPlane | getFirstPlane () const |
TMatrixT< Double_t > | getLastState () const |
TMatrixT< Double_t > | getLastCov () const |
GFDetPlane | getLastPlane () const |
double | getChiSqu () const |
double | getRedChiSqu () const |
returns chi2/ndf More... | |
unsigned int | getNDF () const |
virtual void | setData (const TMatrixT< Double_t > &st, const GFDetPlane &pl, const TMatrixT< Double_t > *cov=NULL) |
void | setCov (const TMatrixT< Double_t > &aCov) |
void | setFirstState (const TMatrixT< Double_t > &aState) |
void | setFirstCov (const TMatrixT< Double_t > &aCov) |
void | setFirstPlane (const GFDetPlane &aPlane) |
void | setLastState (const TMatrixT< Double_t > &aState) |
void | setLastCov (const TMatrixT< Double_t > &aCov) |
void | setLastPlane (const GFDetPlane &aPlane) |
const GFDetPlane & | getReferencePlane () const |
void | setChiSqu (double aChiSqu) |
void | setNDF (unsigned int n) |
void | addChiSqu (double aChiSqu) |
void | addNDF (unsigned int n) |
void | setStatusFlag (int _val) |
virtual void | switchDirection ()=0 |
bool | setInverted (bool f=true) |
Deprecated. Should be removed soon. More... | |
bool | getStatusFlag () |
virtual void | reset () |
Protected Attributes | |
unsigned int | fDimension |
Dimensionality of track representation. More... | |
TMatrixT< Double_t > | fState |
The vector of track parameters. More... | |
TMatrixT< Double_t > | fCov |
The covariance matrix. More... | |
double | fChiSqu |
chiSqu of the track fit More... | |
unsigned int | fNdf |
int | fStatusFlag |
status of track representation: 0 means everything's OK More... | |
bool | fInverted |
specifies the direction of flight of the particle More... | |
TMatrixT< Double_t > | fFirstState |
state, cov and plane for first and last point in fit More... | |
TMatrixT< Double_t > | fFirstCov |
TMatrixT< Double_t > | fLastState |
TMatrixT< Double_t > | fLastCov |
GFDetPlane | fFirstPlane |
GFDetPlane | fLastPlane |
GFDetPlane | fRefPlane |
Private Member Functions | |
void | Abort (std::string method) |
virtual void | Print (Option_t *) const |
Base Class for genfit track representations. Defines interface for track parameterizations.
It is important to understand the difference between a track and a track representation in genfit:
All track tepresentations must inherit GFAbsTrackRep to be available in genfit. Algorithms in genfit use this class as interface to access track parameters
Provides:
The track extrapolation engine can be exchanged in genfit. Or one can even use more than one engine in parallel! In order to use a track extrapolation engine (like e.g. GEANE) with genfit one has to write a TrackRep class that inherits from GFAbsTrackRep. This makes it possible to uses different track extrapolation codes within a unified framework without major changes in the detector code.
There is only one thing one has to do to use a specific track representation together with the hits from a detector: add the respective code in the GFAbsRecoHit::getHMatrix method implementation of the RecoHit in question.
Definition at line 83 of file GFAbsTrackRep.h.
genf::GFAbsTrackRep::GFAbsTrackRep | ( | ) |
Definition at line 23 of file GFAbsTrackRep.cxx.
genf::GFAbsTrackRep::GFAbsTrackRep | ( | int | dim | ) |
Definition at line 27 of file GFAbsTrackRep.cxx.
|
virtual |
Definition at line 31 of file GFAbsTrackRep.cxx.
|
private |
Definition at line 47 of file GFAbsTrackRep.cxx.
|
inline |
Definition at line 291 of file GFAbsTrackRep.h.
|
inline |
Definition at line 294 of file GFAbsTrackRep.h.
|
pure virtual |
Implemented in genf::RKTrackRep, and genf::SlTrackRep.
|
virtual |
returns the tracklength spanned in this extrapolation
Reimplemented in genf::RKTrackRep.
Definition at line 42 of file GFAbsTrackRep.cxx.
|
pure virtual |
Extrapolates the track to the given detectorplane.
Results are put into statePred and covPred This method does NOT alter the state of the object!
Implemented in genf::RKTrackRep.
double genf::GFAbsTrackRep::extrapolate | ( | const GFDetPlane & | plane | ) |
This changes the state and cov and plane of the rep.
This method extrapolates to to the plane and sets the results of state, cov and also plane in itself.
Definition at line 33 of file GFAbsTrackRep.cxx.
|
virtual |
This method extrapolates to the point of closest approach to a line.
This method extrapolates to the POCA to a line, i.e. a wire. There is a default implementation just like for the extrapolateToPoca for trackReps which do not need this feature, which will abort the execution if it is ever called.
Reimplemented in genf::RKTrackRep, and genf::SlTrackRep.
Definition at line 62 of file GFAbsTrackRep.cxx.
|
virtual |
This method is to extrapolate the track to point of closest approach to a point in space.
Reimplemented in genf::RKTrackRep, and genf::SlTrackRep.
Definition at line 56 of file GFAbsTrackRep.cxx.
|
pure virtual |
Implemented in genf::RKTrackRep, and genf::SlTrackRep.
|
inline |
Definition at line 243 of file GFAbsTrackRep.h.
|
inline |
Definition at line 197 of file GFAbsTrackRep.h.
|
inline |
Definition at line 200 of file GFAbsTrackRep.h.
|
inline |
returns dimension of state vector
Definition at line 192 of file GFAbsTrackRep.h.
|
inline |
Definition at line 228 of file GFAbsTrackRep.h.
|
inline |
Definition at line 231 of file GFAbsTrackRep.h.
|
inline |
Definition at line 225 of file GFAbsTrackRep.h.
|
inline |
Definition at line 237 of file GFAbsTrackRep.h.
|
inline |
Definition at line 240 of file GFAbsTrackRep.h.
|
inline |
Definition at line 234 of file GFAbsTrackRep.h.
|
pure virtual |
Implemented in genf::RKTrackRep, and genf::SlTrackRep.
|
inline |
Definition at line 219 of file GFAbsTrackRep.h.
|
inline |
Definition at line 251 of file GFAbsTrackRep.h.
|
pure virtual |
Implemented in genf::RKTrackRep, and genf::SlTrackRep.
|
inline |
Definition at line 218 of file GFAbsTrackRep.h.
|
pure virtual |
Implemented in genf::RKTrackRep, and genf::SlTrackRep.
|
virtual |
method which gets position, momentum and 6x6 covariance matrix
default implementation in cxx file, if a ConcreteTrackRep can not implement this functionality
Definition at line 75 of file GFAbsTrackRep.cxx.
|
inline |
Definition at line 221 of file GFAbsTrackRep.h.
|
inline |
|
inline |
Definition at line 283 of file GFAbsTrackRep.h.
|
inline |
Definition at line 196 of file GFAbsTrackRep.h.
|
inline |
Definition at line 199 of file GFAbsTrackRep.h.
|
inline |
Definition at line 306 of file GFAbsTrackRep.h.
|
virtual |
Definition at line 93 of file GFAbsTrackRep.cxx.
|
inlineprivatevirtual |
Definition at line 315 of file GFAbsTrackRep.h.
|
pure virtual |
Implemented in genf::RKTrackRep, and genf::SlTrackRep.
|
virtual |
Definition at line 80 of file GFAbsTrackRep.cxx.
|
inline |
Definition at line 285 of file GFAbsTrackRep.h.
|
inline |
Definition at line 261 of file GFAbsTrackRep.h.
|
inlinevirtual |
Definition at line 256 of file GFAbsTrackRep.h.
|
inline |
Definition at line 267 of file GFAbsTrackRep.h.
|
inline |
Definition at line 270 of file GFAbsTrackRep.h.
|
inline |
Definition at line 264 of file GFAbsTrackRep.h.
|
inline |
Deprecated. Should be removed soon.
Definition at line 304 of file GFAbsTrackRep.h.
|
inline |
Definition at line 276 of file GFAbsTrackRep.h.
|
inline |
Definition at line 279 of file GFAbsTrackRep.h.
|
inline |
Definition at line 273 of file GFAbsTrackRep.h.
|
inline |
Definition at line 288 of file GFAbsTrackRep.h.
|
inline |
Definition at line 297 of file GFAbsTrackRep.h.
|
virtual |
make step of h cm along the track
There is an emply implementation in GFAbsTrackRep.cxx which will abort (see one of the extrapolate methods above). This can be overwritten, if this feature is needed.
Definition at line 71 of file GFAbsTrackRep.cxx.
|
pure virtual |
Implemented in genf::RKTrackRep, and genf::SlTrackRep.
|
protected |
chiSqu of the track fit
Definition at line 97 of file GFAbsTrackRep.h.
|
protected |
The covariance matrix.
Definition at line 94 of file GFAbsTrackRep.h.
|
protected |
Dimensionality of track representation.
Definition at line 88 of file GFAbsTrackRep.h.
|
protected |
Definition at line 107 of file GFAbsTrackRep.h.
|
protected |
Definition at line 111 of file GFAbsTrackRep.h.
|
protected |
state, cov and plane for first and last point in fit
Definition at line 106 of file GFAbsTrackRep.h.
|
protected |
specifies the direction of flight of the particle
Definition at line 103 of file GFAbsTrackRep.h.
|
protected |
Definition at line 110 of file GFAbsTrackRep.h.
|
protected |
Definition at line 112 of file GFAbsTrackRep.h.
|
protected |
Definition at line 109 of file GFAbsTrackRep.h.
|
protected |
Definition at line 98 of file GFAbsTrackRep.h.
|
protected |
Definition at line 115 of file GFAbsTrackRep.h.
|
protected |
The vector of track parameters.
Definition at line 91 of file GFAbsTrackRep.h.
|
protected |
status of track representation: 0 means everything's OK
Definition at line 101 of file GFAbsTrackRep.h.