LArSoft
v06_85_00
Liquid Argon Software toolkit - http://larsoft.org/
|
#include "GeaneTrackRep2.h"
Public Member Functions | |
GeaneTrackRep2 () | |
GeaneTrackRep2 (const GFDetPlane &plane, const TVector3 &mom, const TVector3 &poserr, const TVector3 &momerr, int PDGCode) | |
virtual | ~GeaneTrackRep2 () |
virtual GFAbsTrackRep * | clone () const |
virtual GFAbsTrackRep * | prototype () const |
virtual double | extrapolate (const GFDetPlane &, TMatrixT< Double_t > &statePred) |
returns the tracklength spanned in this extrapolation More... | |
virtual double | extrapolate (const GFDetPlane &, TMatrixT< Double_t > &statePred, TMatrixT< Double_t > &covPred) |
Extrapolates the track to the given detectorplane. More... | |
void | extrapolateToPoint (const TVector3 &pos, TVector3 &poca, TVector3 &normVec) |
This method is to extrapolate the track to point of closest approach to a point in space. More... | |
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 TVector3 | getPos (const GFDetPlane &) |
virtual TVector3 | getMom (const GFDetPlane &) |
virtual void | getPosMom (const GFDetPlane &, TVector3 &pos, TVector3 &mom) |
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 |
int | getPDG () |
void | switchDirection () |
double | extrapolate (const GFDetPlane &plane) |
This changes the state and cov and plane of the rep. More... | |
virtual void | stepalong (double h) |
make step of h cm along the track 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 |
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) |
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 | poca2Line (const TVector3 &, const TVector3 &, const TVector3 &, TVector3 &) |
void | pocaLine2Line (const TVector3 &point1, const TVector3 &line1, const TVector3 &point2, const TVector3 &line2, TVector3 &result1, TVector3 &result2) |
Private Attributes | |
int | fPdg |
int | fG3ParticleID |
double | fCharge |
Friends | |
std::ostream & | operator<< (std::ostream &s, const GeaneTrackRep2 &me) |
Definition at line 36 of file GeaneTrackRep2.h.
genf::GeaneTrackRep2::GeaneTrackRep2 | ( | ) |
genf::GeaneTrackRep2::GeaneTrackRep2 | ( | const GFDetPlane & | plane, |
const TVector3 & | mom, | ||
const TVector3 & | poserr, | ||
const TVector3 & | momerr, | ||
int | PDGCode | ||
) |
Definition at line 41 of file GeaneTrackRep2.cxx.
References e, fCharge, genf::GFAbsTrackRep::fCov, fG3ParticleID, fPdg, genf::GFAbsTrackRep::fRefPlane, genf::GFAbsTrackRep::fState, genf::GFDetPlane::getO(), genf::GFDetPlane::getU(), genf::GFDetPlane::getV(), GFException::setFatal(), and w.
|
virtual |
Definition at line 105 of file GeaneTrackRep2.cxx.
|
inlineinherited |
|
inlineinherited |
Definition at line 296 of file GFAbsTrackRep.h.
References n.
Referenced by genf::GFKalman::processHit().
|
inlinevirtual |
Implements genf::GFAbsTrackRep.
Definition at line 51 of file GeaneTrackRep2.h.
References GeaneTrackRep2().
|
virtual |
returns the tracklength spanned in this extrapolation
TODO: make this faster by neglecting covariances ?
Reimplemented from genf::GFAbsTrackRep.
Definition at line 114 of file GeaneTrackRep2.cxx.
Referenced by getMom(), getPos(), getPosMom(), and prototype().
|
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!
Implements genf::GFAbsTrackRep.
Definition at line 124 of file GeaneTrackRep2.cxx.
References d, dir, genf::GFDetPlane::dist(), E, e, fCharge, genf::GFAbsTrackRep::fCov, genf::GFAbsTrackRep::fDimension, fG3ParticleID, genf::GFAbsTrackRep::fRefPlane, genf::GFAbsTrackRep::fState, genf::GFAbsTrackRep::getMom(), genf::GFDetPlane::getO(), genf::GFDetPlane::getU(), genf::GFDetPlane::getV(), GFException::setFatal(), THETACUT, x1, and x2.
|
inherited |
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.
References genf::GFAbsTrackRep::extrapolate(), genf::GFAbsTrackRep::fDimension, and genf::GFAbsTrackRep::setData().
|
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 from genf::GFAbsTrackRep.
Definition at line 449 of file GeaneTrackRep2.cxx.
References dir, genf::GFDetPlane::dist(), E, fCharge, genf::GFAbsTrackRep::fCov, fG3ParticleID, genf::GFAbsTrackRep::fRefPlane, genf::GFAbsTrackRep::getMom(), genf::GFAbsTrackRep::getPos(), poca2Line(), pocaLine2Line(), GFException::setFatal(), THETACUT, x1, and x2.
Referenced by prototype().
|
virtual |
This method is to extrapolate the track to point of closest approach to a point in space.
Reimplemented from genf::GFAbsTrackRep.
Definition at line 262 of file GeaneTrackRep2.cxx.
References dir, genf::GFDetPlane::dist(), E, fCharge, genf::GFAbsTrackRep::fCov, fG3ParticleID, genf::GFAbsTrackRep::fRefPlane, genf::GFAbsTrackRep::getMom(), genf::GFAbsTrackRep::getPos(), poca2Line(), GFException::setFatal(), THETACUT, x1, and x2.
Referenced by prototype().
|
inlinevirtual |
|
inlineinherited |
Definition at line 245 of file GFAbsTrackRep.h.
References genf::GFAbsTrackRep::fChiSqu.
Referenced by genf::GFTrack::getChiSqu(), genf::GFAbsTrackRep::getRedChiSqu(), trkf::Track3DKalman::produce(), and trkf::Track3DKalmanSPS::produce().
|
inlineinherited |
Definition at line 199 of file GFAbsTrackRep.h.
References genf::GFAbsTrackRep::fCov.
Referenced by genf::GFDaf::blowUpCovs(), genf::GFKalman::blowUpCovs(), genf::GFKalman::blowUpCovsDiag(), genf::GFKalman::processHit(), genf::GFDaf::processTrack(), genf::GFKalman::processTrack(), trkf::Track3DKalman::produce(), and trkf::Track3DKalmanSPS::produce().
|
inlineinherited |
Definition at line 202 of file GFAbsTrackRep.h.
References genf::GFAbsTrackRep::fCov, genf::GFAbsTrackRep::getCharge(), genf::GFAbsTrackRep::getMom(), genf::GFAbsTrackRep::getPos(), genf::GFAbsTrackRep::getPosMom(), and genf::GFAbsTrackRep::getPosMomCov().
|
inlineinherited |
returns dimension of state vector
Definition at line 194 of file GFAbsTrackRep.h.
References genf::GFAbsTrackRep::fDimension, and genf::GFAbsTrackRep::Print().
Referenced by genf::GFKalman::getChi2Hit(), genf::GFAbsTrackRep::getNDF(), genf::GFTrack::getResiduals(), genf::GFKalman::processHit(), and genf::GFDaf::processTrack().
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Definition at line 227 of file GFAbsTrackRep.h.
References genf::GFAbsTrackRep::fFirstState.
|
inlineinherited |
|
inlineinherited |
Definition at line 242 of file GFAbsTrackRep.h.
References genf::GFAbsTrackRep::fLastPlane.
Referenced by trkf::Track3DKalman::produce(), and trkf::Track3DKalmanSPS::produce().
|
inlineinherited |
|
virtual |
Implements genf::GFAbsTrackRep.
Definition at line 605 of file GeaneTrackRep2.cxx.
References extrapolate(), genf::GFAbsTrackRep::fRefPlane, genf::GFAbsTrackRep::fState, genf::GFDetPlane::getNormal(), genf::GFDetPlane::getU(), and genf::GFDetPlane::getV().
|
inlineinherited |
Definition at line 221 of file GFAbsTrackRep.h.
References genf::GFAbsTrackRep::getMom().
Referenced by extrapolate(), extrapolateToLine(), extrapolateToPoint(), genf::GFAbsTrackRep::getCovElem(), genf::GFAbsTrackRep::getMom(), genf::SlTrackRep::getPosMom(), prototype(), genf::RKTrackRep::prototype(), and genf::SlTrackRep::setReferencePlane().
|
inlineinherited |
Definition at line 253 of file GFAbsTrackRep.h.
References genf::GFAbsTrackRep::getDim().
Referenced by genf::GFTrack::getNDF(), genf::GFAbsTrackRep::getRedChiSqu(), trkf::Track3DKalman::produce(), and trkf::Track3DKalmanSPS::produce().
|
inline |
|
virtual |
Implements genf::GFAbsTrackRep.
Definition at line 597 of file GeaneTrackRep2.cxx.
References extrapolate(), genf::GFAbsTrackRep::fRefPlane, genf::GFAbsTrackRep::fState, genf::GFDetPlane::getO(), genf::GFDetPlane::getU(), and genf::GFDetPlane::getV().
|
inlineinherited |
Definition at line 220 of file GFAbsTrackRep.h.
References genf::GFAbsTrackRep::getPos().
Referenced by extrapolateToLine(), extrapolateToPoint(), genf::GFAbsTrackRep::getCovElem(), genf::GFAbsTrackRep::getPos(), genf::SlTrackRep::getPosMom(), prototype(), genf::RKTrackRep::prototype(), and genf::SlTrackRep::setReferencePlane().
|
virtual |
Implements genf::GFAbsTrackRep.
Definition at line 617 of file GeaneTrackRep2.cxx.
References extrapolate(), genf::GFAbsTrackRep::fRefPlane, genf::GFAbsTrackRep::fState, genf::GFDetPlane::getNormal(), genf::GFDetPlane::getO(), genf::GFDetPlane::getU(), and genf::GFDetPlane::getV().
Referenced by prototype().
|
virtual |
method which gets position, momentum and 6x6 covariance matrix
default implementation in cxx file, if a ConcreteTrackRep can not implement this functionality
Reimplemented from genf::GFAbsTrackRep.
Definition at line 628 of file GeaneTrackRep2.cxx.
Referenced by prototype().
|
inlineinherited |
Definition at line 223 of file GFAbsTrackRep.h.
References genf::GFAbsTrackRep::getPosMomCov().
|
inlineinherited |
returns chi2/ndf
Definition at line 249 of file GFAbsTrackRep.h.
References genf::GFAbsTrackRep::getChiSqu(), and genf::GFAbsTrackRep::getNDF().
Referenced by genf::GFTrack::getRedChiSqu().
|
inlineinherited |
Definition at line 285 of file GFAbsTrackRep.h.
References genf::GFAbsTrackRep::fRefPlane.
Referenced by genf::GFKalman::processHit(), genf::GFDaf::processTrack(), genf::GFKalman::processTrack(), trkf::Track3DKalman::produce(), and trkf::Track3DKalmanSPS::produce().
|
inlineinherited |
Definition at line 198 of file GFAbsTrackRep.h.
References genf::GFAbsTrackRep::fState.
Referenced by genf::GFTrack::fillGeoTrack(), genf::GFKalman::processHit(), genf::GFDaf::processTrack(), genf::GFKalman::processTrack(), trkf::Track3DKalman::produce(), and trkf::Track3DKalmanSPS::produce().
|
inlineinherited |
Definition at line 201 of file GFAbsTrackRep.h.
References genf::GFAbsTrackRep::fState.
|
inlineinherited |
Definition at line 308 of file GFAbsTrackRep.h.
References genf::GFAbsTrackRep::Abort(), genf::GFAbsTrackRep::fStatusFlag, and genf::GFAbsTrackRep::reset().
Referenced by genf::GFDaf::blowUpCovs(), genf::GFKalman::blowUpCovs(), genf::GFKalman::blowUpCovsDiag(), genf::GFKalman::fittingPass(), genf::GFDaf::processTrack(), trkf::Track3DKalman::produce(), and trkf::Track3DKalmanSPS::produce().
|
private |
Definition at line 566 of file GeaneTrackRep2.cxx.
Referenced by extrapolateToLine(), and extrapolateToPoint().
|
private |
Definition at line 577 of file GeaneTrackRep2.cxx.
Referenced by extrapolateToLine().
|
virtualinherited |
Definition at line 93 of file GFAbsTrackRep.cxx.
References genf::GFAbsTrackRep::fChiSqu, genf::GFAbsTrackRep::fCov, genf::GFAbsTrackRep::fRefPlane, genf::GFAbsTrackRep::fState, genf::GFDetPlane::Print(), and genf::PrintROOTmatrix().
Referenced by genf::GFAbsTrackRep::getDim(), and genf::GFTrack::Print().
|
inlinevirtual |
Implements genf::GFAbsTrackRep.
Definition at line 52 of file GeaneTrackRep2.h.
References extrapolate(), extrapolateToLine(), extrapolateToPoint(), GeaneTrackRep2(), genf::GFAbsTrackRep::getMom(), genf::GFAbsTrackRep::getPos(), getPosMom(), getPosMomCov(), operator<<, and s.
|
virtualinherited |
Definition at line 80 of file GFAbsTrackRep.cxx.
References genf::GFAbsTrackRep::fCov, genf::GFAbsTrackRep::fFirstCov, genf::GFAbsTrackRep::fFirstState, genf::GFAbsTrackRep::fLastCov, genf::GFAbsTrackRep::fLastState, genf::GFAbsTrackRep::fRefPlane, genf::GFAbsTrackRep::fState, and genf::GFDetPlane::set().
Referenced by genf::GFAbsTrackRep::getStatusFlag().
|
inlineinherited |
|
inlineinherited |
Definition at line 263 of file GFAbsTrackRep.h.
Referenced by genf::GFDaf::blowUpCovs(), genf::GFKalman::blowUpCovs(), and genf::GFKalman::blowUpCovsDiag().
|
inlinevirtualinherited |
Definition at line 258 of file GFAbsTrackRep.h.
Referenced by genf::GFAbsTrackRep::extrapolate(), genf::GFKalman::processHit(), genf::GFDaf::processTrack(), genf::RKTrackRep::setData(), and genf::RKTrackRep::switchDirection().
|
inlineinherited |
Definition at line 269 of file GFAbsTrackRep.h.
|
inlineinherited |
Definition at line 272 of file GFAbsTrackRep.h.
|
inlineinherited |
Definition at line 266 of file GFAbsTrackRep.h.
|
inlineinherited |
Deprecated. Should be removed soon.
Definition at line 306 of file GFAbsTrackRep.h.
References f.
|
inlineinherited |
Definition at line 278 of file GFAbsTrackRep.h.
|
inlineinherited |
Definition at line 281 of file GFAbsTrackRep.h.
|
inlineinherited |
Definition at line 275 of file GFAbsTrackRep.h.
|
inlineinherited |
Definition at line 290 of file GFAbsTrackRep.h.
References n.
Referenced by genf::GFKalman::fittingPass().
|
inlineinherited |
Definition at line 299 of file GFAbsTrackRep.h.
References genf::GFAbsTrackRep::switchDirection().
Referenced by genf::GFKalman::fittingPass(), and genf::GFDaf::processTrack().
|
virtualinherited |
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.
References genf::GFAbsTrackRep::Abort().
|
inlinevirtual |
|
friend |
Referenced by prototype().
|
private |
Definition at line 109 of file GeaneTrackRep2.h.
Referenced by extrapolate(), extrapolateToLine(), extrapolateToPoint(), GeaneTrackRep2(), and getCharge().
|
protectedinherited |
chiSqu of the track fit
Definition at line 99 of file GFAbsTrackRep.h.
Referenced by genf::GFAbsTrackRep::getChiSqu(), and genf::GFAbsTrackRep::Print().
|
protectedinherited |
The covariance matrix.
Definition at line 96 of file GFAbsTrackRep.h.
Referenced by genf::SlTrackRep::extrapolate(), extrapolate(), genf::RKTrackRep::extrapolate(), extrapolateToLine(), extrapolateToPoint(), GeaneTrackRep2(), genf::GFAbsTrackRep::getCov(), genf::GFAbsTrackRep::getCovElem(), genf::GFAbsTrackRep::Print(), genf::RKTrackRep::rescaleCovOffDiags(), genf::GFAbsTrackRep::reset(), genf::RKTrackRep::RKTrackRep(), and genf::SlTrackRep::SlTrackRep().
|
protectedinherited |
Dimensionality of track representation.
Definition at line 90 of file GFAbsTrackRep.h.
Referenced by genf::SlTrackRep::extrapolate(), extrapolate(), genf::GFAbsTrackRep::extrapolate(), and genf::GFAbsTrackRep::getDim().
|
protectedinherited |
Definition at line 109 of file GFAbsTrackRep.h.
Referenced by genf::GFAbsTrackRep::getFirstCov(), and genf::GFAbsTrackRep::reset().
|
protectedinherited |
Definition at line 113 of file GFAbsTrackRep.h.
Referenced by genf::GFAbsTrackRep::getFirstPlane().
|
protectedinherited |
state, cov and plane for first and last point in fit
Definition at line 108 of file GFAbsTrackRep.h.
Referenced by genf::GFAbsTrackRep::getFirstState(), and genf::GFAbsTrackRep::reset().
|
private |
Definition at line 108 of file GeaneTrackRep2.h.
Referenced by extrapolate(), extrapolateToLine(), extrapolateToPoint(), and GeaneTrackRep2().
|
protectedinherited |
specifies the direction of flight of the particle
Definition at line 105 of file GFAbsTrackRep.h.
|
protectedinherited |
Definition at line 112 of file GFAbsTrackRep.h.
Referenced by genf::GFAbsTrackRep::getLastCov(), and genf::GFAbsTrackRep::reset().
|
protectedinherited |
Definition at line 114 of file GFAbsTrackRep.h.
Referenced by genf::GFAbsTrackRep::getLastPlane().
|
protectedinherited |
Definition at line 111 of file GFAbsTrackRep.h.
Referenced by genf::GFAbsTrackRep::getLastState(), genf::RKTrackRep::getMomLast(), and genf::GFAbsTrackRep::reset().
|
protectedinherited |
Definition at line 100 of file GFAbsTrackRep.h.
|
private |
Definition at line 107 of file GeaneTrackRep2.h.
Referenced by GeaneTrackRep2(), and getPDG().
|
protectedinherited |
Definition at line 117 of file GFAbsTrackRep.h.
Referenced by genf::SlTrackRep::extrapolate(), extrapolate(), genf::RKTrackRep::extrapolate(), genf::SlTrackRep::extrapolateToLine(), extrapolateToLine(), genf::RKTrackRep::extrapolateToLine(), genf::SlTrackRep::extrapolateToPoint(), extrapolateToPoint(), genf::RKTrackRep::extrapolateToPoint(), GeaneTrackRep2(), genf::SlTrackRep::getMom(), getMom(), genf::RKTrackRep::getMom(), genf::SlTrackRep::getPos(), getPos(), genf::RKTrackRep::getPos(), getPosMom(), genf::RKTrackRep::getPosMom(), genf::GFAbsTrackRep::getReferencePlane(), genf::GFAbsTrackRep::Print(), genf::GFAbsTrackRep::reset(), genf::RKTrackRep::RKTrackRep(), and genf::SlTrackRep::setReferencePlane().
|
protectedinherited |
The vector of track parameters.
Definition at line 93 of file GFAbsTrackRep.h.
Referenced by genf::SlTrackRep::extrapolate(), extrapolate(), genf::RKTrackRep::extrapolate(), genf::SlTrackRep::extrapolateToLine(), genf::RKTrackRep::extrapolateToLine(), genf::SlTrackRep::extrapolateToPoint(), genf::RKTrackRep::extrapolateToPoint(), GeaneTrackRep2(), genf::SlTrackRep::getMom(), getMom(), genf::RKTrackRep::getMom(), genf::SlTrackRep::getPos(), getPos(), genf::RKTrackRep::getPos(), getPosMom(), genf::RKTrackRep::getPosMom(), genf::GFAbsTrackRep::getState(), genf::GFAbsTrackRep::getStateElem(), genf::GFAbsTrackRep::Print(), genf::GFAbsTrackRep::reset(), genf::RKTrackRep::RKTrackRep(), genf::RKTrackRep::setData(), and genf::SlTrackRep::SlTrackRep().
|
protectedinherited |
status of track representation: 0 means everything's OK
Definition at line 103 of file GFAbsTrackRep.h.
Referenced by genf::GFAbsTrackRep::getStatusFlag().