EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
|
Track Representation module based on a Runge-Kutta algorithm including a full material model. More...
#include <EicRoot/blob/master/GenfitTools/trackrep/RKTrackRep/RKTrackRep.h>
Public Member Functions | |
RKTrackRep () | |
RKTrackRep (const TVector3 &pos, const TVector3 &mom, const TVector3 &poserr, const TVector3 &momerr, const int &PDGCode) | |
RKTrackRep (const TVector3 &pos, const TVector3 &mom, const int &PDGCode) | |
RKTrackRep (const GFTrackCand *aGFTrackCandPtr, int pdgcode=0) | |
virtual | ~RKTrackRep () |
virtual GFAbsTrackRep * | clone () const |
virtual GFAbsTrackRep * | prototype () const |
double | extrapolate (const GFDetPlane &, TMatrixD &statePred, TMatrixD &covPred) |
returns the tracklength spanned in this extrapolation | |
double | extrapolate (const GFDetPlane &, TMatrixD &statePred) |
returns the tracklength spanned in this extrapolation | |
void | extrapolateToPoint (const TVector3 &pos, TVector3 &poca, TVector3 &dirInPoca) |
This method is to extrapolate the track to point of closest approach to a point in space. | |
void | extrapolateToLine (const TVector3 &point1, const TVector3 &point2, TVector3 &poca, TVector3 &dirInPoca, TVector3 &poca_onwire) |
This method extrapolates to the point of closest approach to a line. | |
double | stepalong (double h, TVector3 &point, TVector3 &dir) |
make step of h cm along the track, returns the tracklength spanned in this extrapolation | |
TVector3 | getPos (const GFDetPlane &) |
Returns position of the track in the plane. | |
TVector3 | getMom (const GFDetPlane &) |
Returns momentum of the track in the plane. | |
void | getPosMom (const GFDetPlane &, TVector3 &pos, TVector3 &mom) |
Gets position and momentum in the plane. | |
void | getPosMomCov (const GFDetPlane &pl, TVector3 &pos, TVector3 &mom, TMatrixD &cov) |
double | getCharge () const |
Returns charge. | |
int | getPDG () |
method which gets pdg particle code | |
void | setPropDir (int dir) |
Set propagation direction. (-1,0,1) -> (backward prop,decide myself,forward) | |
void | switchDirection () |
Switch propagation direction. Has no effect if propdir is set to 0. | |
void | setPDG (int) |
Set PDG particle code. | |
void | setData (const TMatrixD &st, const GFDetPlane &pl, const TMatrixD *cov=NULL, const TMatrixD *aux=NULL) |
Sets state, plane and (optionally) covariance. | |
void | setPosMomCov (const TVector3 &pos, const TVector3 &mom, const TMatrixD &cov) |
Sets state, plane and covariance from position, momentum and 6x6 covariance. | |
void | disableMaterialEffects (bool opt=true) |
const TMatrixD * | getAuxInfo (const GFDetPlane &pl) |
Get auxillary information from the track representation. | |
bool | hasAuxInfo () |
See if the track representation has auxillary information stored. | |
Public Member Functions inherited from GFAbsTrackRep | |
virtual double | extrapolate (const GFDetPlane &plane, TMatrixT< double > &statePred) |
returns the tracklength spanned in this extrapolation | |
GFAbsTrackRep () | |
GFAbsTrackRep (int) | |
virtual | ~GFAbsTrackRep () |
virtual double | extrapolate (const GFDetPlane &plane, TMatrixT< double > &statePred, TMatrixT< double > &covPred)=0 |
Extrapolates the track to the given detectorplane. | |
double | extrapolate (const GFDetPlane &plane) |
This changes the state and cov and plane of the rep. | |
unsigned int | getDim () const |
returns dimension of state vector | |
virtual void | Print (const Option_t *="") const |
TMatrixT< double > | getState () const |
TMatrixT< double > | getCov () const |
double | getStateElem (int i) const |
double | getCovElem (int i, int j) const |
virtual void | getPosMomCov (const GFDetPlane &pl, TVector3 &pos, TVector3 &mom, TMatrixT< double > &cov) |
method which gets position, momentum and 6x6 covariance matrix | |
TVector3 | getPos () |
TVector3 | getMom () |
void | getPosMomCov (TVector3 &pos, TVector3 &mom, TMatrixT< double > &c) |
TMatrixT< double > | getFirstState () const |
TMatrixT< double > | getFirstCov () const |
GFDetPlane | getFirstPlane () const |
TMatrixT< double > | getLastState () const |
TMatrixT< double > | getLastCov () const |
GFDetPlane | getLastPlane () const |
double | getChiSqu () const |
double | getForwardChiSqu () const |
double | getRedChiSqu () const |
returns chi2/ndf | |
double | getPVal () const |
unsigned int | getNDF () const |
double | getXX0 () const |
X/X0 (total fraction of radiation length passed), cumulated during last extrapolation. The fitter has to reset XX0 via resetXX0() | |
virtual void | setData (const TMatrixT< double > &st, const GFDetPlane &pl, const TMatrixT< double > *cov=NULL, const TMatrixT< double > *aux=NULL) |
Puts the track representation in a given state. | |
void | setCov (const TMatrixT< double > &aCov) |
void | setFirstState (const TMatrixT< double > &aState) |
void | setFirstCov (const TMatrixT< double > &aCov) |
void | setFirstPlane (const GFDetPlane &aPlane) |
void | setLastState (const TMatrixT< double > &aState) |
void | setLastCov (const TMatrixT< double > &aCov) |
void | setLastPlane (const GFDetPlane &aPlane) |
virtual void | setPosMomCov (const TVector3 &pos, const TVector3 &mom, const TMatrixT< double > &cov) |
method which sets position, momentum and 6x6 covariance matrix | |
const GFDetPlane & | getReferencePlane () const |
void | setChiSqu (double aChiSqu) |
void | setForwardChiSqu (double aChiSqu) |
void | setNDF (unsigned int n) |
void | addChiSqu (double aChiSqu) |
void | addForwardChiSqu (double aChiSqu) |
void | addNDF (unsigned int n) |
void | setStatusFlag (int _val) |
bool | setInverted (bool f=true) |
Deprecated. Should be removed soon. | |
bool | getStatusFlag () |
virtual void | reset () |
void | resetXX0 () |
Private Member Functions | |
void | initArrays () |
void | calcStateCov (const TVector3 &pos, const TVector3 &mom, const TVector3 &poserr, const TVector3 &momerr) |
void | calcState (const TVector3 &pos, const TVector3 &mom) |
void | getState7 (M1x7 &state7) |
void | getState7 (M1x7 &state7, const TMatrixD &state5, const GFDetPlane &pl, const double &spu) |
TMatrixD | getState5 (const M1x7 &state7, const GFDetPlane &pl, double &spu) |
void | transformPM7 (const TMatrixD &in5x5, M7x7 &out7x7, const GFDetPlane &pl, const TMatrixD &state5, const double &spu, TMatrixD *Jac=NULL) |
void | transformPM6 (const TMatrixD &in5x5, M6x6 &out6x6, const GFDetPlane &pl, const TMatrixD &state5, const double &spu, TMatrixD *Jac=NULL) |
void | transformM7P (const M7x7 &in7x7, TMatrixD &out5x5, const GFDetPlane &pl, const M1x7 &state7, TMatrixD *Jac=NULL) |
void | transformM6P (const M6x6 &in6x6, TMatrixD &out5x5, const GFDetPlane &pl, const M1x7 &state7, TMatrixD *Jac=NULL) |
RKTrackRep & | operator= (const RKTrackRep *) |
bool | RKutta (const GFDetPlane &plane, M8x7 &P, double &coveredDistance, std::vector< GFPointPath > &points, bool &checkJacProj, bool calcCov=true, bool onlyOneStep=false, double maxStep=1.E99) |
Propagates the particle through the magnetic field. | |
double | estimateStep (std::vector< GFPointPath > &points, const TVector3 &pos, const TVector3 &dir, const M1x4 &SU, const TVector3 &MagField, const GFDetPlane &plane, const double &mom, double &relMomLoss, double &deltaAngle, bool &momLossExceeded, bool &atPlane, double maxStep=1.E99) const |
TVector3 | poca2Line (const TVector3 &extr1, const TVector3 &extr2, const TVector3 &point) const |
double | Extrap (const GFDetPlane &plane, M1x7 &state7, M7x7 *cov=NULL, bool onlyOneStep=false, double maxStep=1.E99) |
Handles propagation and material effects. | |
Private Attributes | |
int | fDirection |
bool | fNoMaterial |
int | fPdg |
PDG particle code. | |
double | fMass |
Mass (in GeV) | |
double | fCharge |
Charge. | |
GFDetPlane | fCachePlane |
double | fCacheSpu |
double | fSpu |
TMatrixD | fAuxInfo |
TVector3 | fO |
TVector3 | fU |
TVector3 | fV |
TVector3 | fW |
TVector3 | fPos |
TVector3 | fDir |
TVector3 | fpTilde |
TVector3 | fDirectionBefore |
TVector3 | fDirectionAfter |
TVector3 | fH |
M8x7 | fStateJac |
M7x7 | fNoise |
M7x7 | fOldCov |
M5x7 | fJ_pM_5x7 |
M5x6 | fJ_pM_5x6 |
M7x5 | fJ_Mp_7x5 |
M6x5 | fJ_Mp_6x5 |
Additional Inherited Members | |
Protected Attributes inherited from GFAbsTrackRep | |
unsigned int | fDimension |
Dimensionality of track representation. | |
TMatrixT< double > | fState |
The vector of track parameters. | |
TMatrixT< double > | fCov |
The covariance matrix. | |
double | fChiSqu |
chiSqu of the track fit | |
double | fForwardChiSqu |
unsigned int | fNdf |
int | fStatusFlag |
status of track representation: 0 means everything's OK | |
bool | fInverted |
specifies the direction of flight of the particle | |
TMatrixT< double > | fFirstState |
state, cov and plane for first and last point in fit | |
TMatrixT< double > | fFirstCov |
TMatrixT< double > | fLastState |
TMatrixT< double > | fLastCov |
GFDetPlane | fFirstPlane |
GFDetPlane | fLastPlane |
GFDetPlane | fRefPlane |
double | fXX0 |
Track Representation module based on a Runge-Kutta algorithm including a full material model.
The Runge Kutta implementation stems from GEANT3 originally (R. Brun et al.). Porting to C goes back to Igor Gavrilenko @ CERN. The code was taken from the Phast analysis package of the COMPASS experiment (Sergei Gerrassimov @ CERN).
The state is 5D: (q/p, u', v', u,v)
Definition at line 53 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 53 of file RKTrackRep.h
RKTrackRep::RKTrackRep | ( | ) |
Definition at line 65 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 65 of file RKTrackRep.cxx
References initArrays().
Referenced by clone(), and prototype().
RKTrackRep::RKTrackRep | ( | const TVector3 & | pos, |
const TVector3 & | mom, | ||
const TVector3 & | poserr, | ||
const TVector3 & | momerr, | ||
const int & | PDGCode | ||
) |
Definition at line 70 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 70 of file RKTrackRep.cxx
References calcStateCov(), initArrays(), and setPDG().
RKTrackRep::RKTrackRep | ( | const TVector3 & | pos, |
const TVector3 & | mom, | ||
const int & | PDGCode | ||
) |
Definition at line 83 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 83 of file RKTrackRep.cxx
References calcState(), GFAbsTrackRep::fCov, initArrays(), setPDG(), and value.
RKTrackRep::RKTrackRep | ( | const GFTrackCand * | aGFTrackCandPtr, |
int | pdgcode = 0 |
||
) |
Definition at line 103 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 103 of file RKTrackRep.cxx
References calcStateCov(), GFTrackCand::getCovSeed(), GFTrackCand::getPdgCode(), GFTrackCand::getStateSeed(), initArrays(), charm_jet_coverage::mom, pos(), and setPDG().
|
virtual |
Definition at line 46 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 46 of file RKTrackRep.cxx
|
private |
Definition at line 226 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 226 of file RKTrackRep.cxx
References fCharge, GFAbsTrackRep::fRefPlane, fSpu, GFAbsTrackRep::fState, and GFDetPlane::setON().
Referenced by calcStateCov(), RKTrackRep(), and setPosMomCov().
|
private |
Definition at line 187 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 187 of file RKTrackRep.cxx
References calcState(), fCharge, GFAbsTrackRep::fCov, GFAbsTrackRep::fRefPlane, fU, fV, fW, GFDetPlane::getNormal(), GFDetPlane::getU(), and GFDetPlane::getV().
Referenced by RKTrackRep().
|
inlinevirtual |
Implements GFAbsTrackRep.
Definition at line 74 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 74 of file RKTrackRep.h
References RKTrackRep().
|
inline |
Definition at line 222 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 222 of file RKTrackRep.h
References fNoMaterial.
|
private |
Definition at line 1347 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 1347 of file RKTrackRep.cxx
References starlightConstants::A2, fCharge, fDirection, fNoMaterial, fPdg, GFMaterialEffects::getInstance(), GFDetPlane::inActive(), MINSTEP, momentum, G4BECAL::radius, and GFMaterialEffects::stepper().
Referenced by RKutta().
|
private |
Handles propagation and material effects.
extrapolate(), extrapolateToPoint() and extrapolateToLine() call this function. Extrap() needs a plane as an argument, hence extrapolateToPoint() and extrapolateToLine() create virtual detector planes. In this function, RKutta() is called and the resulting points and point paths are filtered so that the direction doesn't change and tiny steps are filtered out. After the propagation the material effects are called via the GFMaterialEffects singleton. Extrap() will loop until the plane is reached, unless the propagation fails or the maximum number of iterations is exceeded. fXX0 is also updated here.
Definition at line 829 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 829 of file RKTrackRep.cxx
References GFDetPlane::distance(), GFMaterialEffects::effects(), fCharge, fDirectionAfter, fDirectionBefore, fNoise, fNoMaterial, fOldCov, fPdg, fPos, fStateJac, GFAbsTrackRep::fXX0, GFMaterialEffects::getInstance(), GFDetPlane::inActive(), RKTools::J_MMTxcov7xJ_MM(), MINSTEP, RKutta(), and GFException::setFatal().
Referenced by extrapolate(), extrapolateToLine(), extrapolateToPoint(), getMom(), getPos(), getPosMom(), and stepalong().
double RKTrackRep::extrapolate | ( | const GFDetPlane & | pl, |
TMatrixD & | statePred, | ||
TMatrixD & | covPred | ||
) |
returns the tracklength spanned in this extrapolation
The covariance matrix is transformed from the plane coordinate system to the master reference system (for the propagation) and, after propagation, back to the plane coordinate system.
Also the parameter spu (which is +1 or -1 and indicates the direction of the particle) is calculated and stored in fCacheSpu. The plane is stored in fCachePlane.
The transformation from plane- to master reference system obeys:
with
The following equations define the transformation from master- to plane reference system:
with
Jacobians:
Definition at line 742 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 742 of file RKTrackRep.cxx
References Extrap(), fCachePlane, fCacheSpu, GFAbsTrackRep::fCov, GFAbsTrackRep::fRefPlane, fSpu, GFAbsTrackRep::fState, getState5(), getState7(), transformM7P(), and transformPM7().
Referenced by getPosMomCov().
double RKTrackRep::extrapolate | ( | const GFDetPlane & | pl, |
TMatrixD & | statePred | ||
) |
returns the tracklength spanned in this extrapolation
Definition at line 769 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 769 of file RKTrackRep.cxx
References Extrap(), getState5(), and getState7().
|
virtual |
This method extrapolates to the point of closest approach to a line.
Reimplemented from GFAbsTrackRep.
Definition at line 683 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 683 of file RKTrackRep.cxx
References Extrap(), fDir, getState7(), MINSTEP, poca2Line(), GFDetPlane::setO(), GFDetPlane::setU(), GFDetPlane::setV(), and Acts::Test::step().
|
virtual |
This method is to extrapolate the track to point of closest approach to a point in space.
Reimplemented from GFAbsTrackRep.
Definition at line 616 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 616 of file RKTrackRep.cxx
References Extrap(), fDir, getState7(), MINSTEP, GFDetPlane::setON(), and Acts::Test::step().
|
virtual |
Get auxillary information from the track representation.
AuxInfo is a mechanism which allows creators of track repersentations to hand out any information they like (as long as it is compatible with a TMatrixT<double>). It should be used if setData requires additional information to update the representation, but it can also be used for debugging information if needed. See also the documentation of GFAbsTrackRep::setData().
Reimplemented from GFAbsTrackRep.
Definition at line 161 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 161 of file RKTrackRep.cxx
References fAuxInfo, fCachePlane, fCacheSpu, and fDirection.
|
inlinevirtual |
Returns charge.
Implements GFAbsTrackRep.
Definition at line 192 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 192 of file RKTrackRep.h
References fCharge.
|
virtual |
Returns momentum of the track in the plane.
If GFDetPlane equals the reference plane fRefPlane, returns current momentum; otherwise it extrapolates the track to the plane and returns the momentum.
Implements GFAbsTrackRep.
Definition at line 541 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 541 of file RKTrackRep.cxx
References Extrap(), fCharge, GFAbsTrackRep::fRefPlane, getState7(), and charm_jet_coverage::mom.
|
inlinevirtual |
method which gets pdg particle code
default implementation in cxx; should be implemented in a ConcreteTrackRep
Reimplemented from GFAbsTrackRep.
Definition at line 194 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 194 of file RKTrackRep.h
References fPdg.
|
virtual |
Returns position of the track in the plane.
If GFDetPlane equals the reference plane fRefPlane, returns current position; otherwise it extrapolates the track to the plane and returns the position.
Implements GFAbsTrackRep.
Definition at line 530 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 530 of file RKTrackRep.cxx
References Extrap(), GFAbsTrackRep::fRefPlane, and getState7().
|
virtual |
Gets position and momentum in the plane.
If GFDetPlane equals the reference plane fRefPlane, it gets current position and momentum; otherwise it extrapolates the track to the plane and gets the position and momentum.
Implements GFAbsTrackRep.
Definition at line 555 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 555 of file RKTrackRep.cxx
References Extrap(), fCharge, GFAbsTrackRep::fRefPlane, and getState7().
void RKTrackRep::getPosMomCov | ( | const GFDetPlane & | pl, |
TVector3 & | pos, | ||
TVector3 & | mom, | ||
TMatrixD & | cov | ||
) |
Definition at line 569 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 569 of file RKTrackRep.cxx
References extrapolate(), fCacheSpu, fCharge, GFAbsTrackRep::fCov, GFAbsTrackRep::fRefPlane, fSpu, GFAbsTrackRep::fState, getState7(), and transformPM6().
|
private |
Definition at line 273 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 273 of file RKTrackRep.cxx
References fDir, fPos, fU, fV, GFDetPlane::getNormal(), GFDetPlane::getO(), GFDetPlane::getU(), and GFDetPlane::getV().
Referenced by extrapolate().
|
private |
Definition at line 245 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 245 of file RKTrackRep.cxx
References GFAbsTrackRep::fRefPlane, fSpu, and GFAbsTrackRep::fState.
Referenced by extrapolate(), extrapolateToLine(), extrapolateToPoint(), getMom(), getPos(), getPosMom(), getPosMomCov(), setPosMomCov(), and stepalong().
|
private |
Definition at line 250 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 250 of file RKTrackRep.cxx
References fO, fU, fV, fW, GFDetPlane::getNormal(), GFDetPlane::getO(), GFDetPlane::getU(), and GFDetPlane::getV().
|
inlinevirtual |
See if the track representation has auxillary information stored.
See if auxillary information is stored in the track representation. See the documentation of GFAbsTrackRep::getAuxInfo() for details.
Reimplemented from GFAbsTrackRep.
Definition at line 226 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 226 of file RKTrackRep.h
|
private |
Definition at line 132 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 132 of file RKTrackRep.cxx
References fJ_Mp_6x5, fJ_Mp_7x5, fJ_pM_5x6, fJ_pM_5x7, fNoise, and fStateJac.
Referenced by RKTrackRep().
|
inlineprivate |
Definition at line 272 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 272 of file RKTrackRep.h
|
private |
Definition at line 670 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 670 of file RKTrackRep.cxx
References t.
Referenced by extrapolateToLine().
|
inlinevirtual |
Implements GFAbsTrackRep.
Definition at line 75 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 75 of file RKTrackRep.h
References RKTrackRep().
|
private |
Propagates the particle through the magnetic field.
If the propagation is successfull and the plane is reached, the function returns true. The argument P has to contain the state (#P[0] - #P[6]) and a unity matrix (#P[7] - #P[55]) with the last column multiplied wit q/p (hence #P[55] is not 1 but q/p). Propagated state and the jacobian (with the last column multiplied wit q/p) of the extrapolation are written to #P. In the main loop of the Runge Kutta algorithm, the steppers in #fEffect are called and may reduce the estimated stepsize so that a maximum momentum loss will not be exceeded. If this is the case, RKutta() will only propagate the reduced distance and then return. This is to ensure that material effects, which are calculated after the propagation, are taken into account properly.
Definition at line 1011 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 1011 of file RKTrackRep.cxx
References starlightConstants::A2, charm_jet_strange_helicity::dA, GFDetPlane::distance(), estimateStep(), fCharge, fDir, fH, fPos, GFFieldManager::getFieldVal(), GFDetPlane::getNormal(), GFDetPlane::getO(), MINSTEP, momentum, GFDetPlane::Print(), Acts::IntegrationTest::R, and GFException::setFatal().
Referenced by Extrap().
void RKTrackRep::setData | ( | const TMatrixD & | st, |
const GFDetPlane & | pl, | ||
const TMatrixD * | cov = NULL , |
||
const TMatrixD * | aux = NULL |
||
) |
Sets state, plane and (optionally) covariance.
This function also sets the parameter fSpu to the value stored in fCacheSpu. Therefore it has to be ensured that the plane #pl is the same as the plane of the last extrapolation (i.e. fCachePlane), where fCacheSpu was calculated. Hence, if the argument #pl is not equal to fCachePlane, an error message is shown an an exception is thrown.
Definition at line 144 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 144 of file RKTrackRep.cxx
References fCachePlane, fCacheSpu, fCharge, fDirection, fSpu, GFAbsTrackRep::fState, and GFAbsTrackRep::setData().
void RKTrackRep::setPDG | ( | int | i | ) |
Set PDG particle code.
Definition at line 174 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 174 of file RKTrackRep.cxx
References fCharge, fMass, fPdg, and part.
Referenced by RKTrackRep().
void RKTrackRep::setPosMomCov | ( | const TVector3 & | pos, |
const TVector3 & | mom, | ||
const TMatrixD & | cov | ||
) |
Sets state, plane and covariance from position, momentum and 6x6 covariance.
Also sets the reference plane at position
Definition at line 593 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 593 of file RKTrackRep.cxx
References calcState(), fCachePlane, fCacheSpu, GFAbsTrackRep::fCov, GFAbsTrackRep::fRefPlane, getState7(), and transformM6P().
void RKTrackRep::setPropDir | ( | int | dir | ) |
Set propagation direction. (-1,0,1) -> (backward prop,decide myself,forward)
Definition at line 1557 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 1557 of file RKTrackRep.cxx
References fDirection.
|
virtual |
make step of h cm along the track, returns the tracklength spanned in this extrapolation
Also returns the position and direction by reference. It does NOT alter the state of the trackrep and starts extrapolating from fRefPlane.
Reimplemented from GFAbsTrackRep.
Definition at line 787 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 787 of file RKTrackRep.cxx
References Extrap(), getState7(), MINSTEP, and GFDetPlane::setON().
|
inlinevirtual |
Switch propagation direction. Has no effect if propdir is set to 0.
Implements GFAbsTrackRep.
Definition at line 200 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 200 of file RKTrackRep.h
References fDirection.
|
private |
Definition at line 472 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 472 of file RKTrackRep.cxx
References fCharge, fDir, fJ_Mp_6x5, fU, fV, fW, GFDetPlane::getNormal(), GFDetPlane::getU(), GFDetPlane::getV(), RKTools::J_MpTxcov6xJ_Mp(), and p.
Referenced by setPosMomCov().
|
private |
Definition at line 419 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 419 of file RKTrackRep.cxx
References fDir, fJ_Mp_7x5, fU, fV, fW, GFDetPlane::getNormal(), GFDetPlane::getU(), GFDetPlane::getV(), and RKTools::J_MpTxcov7xJ_Mp().
Referenced by extrapolate().
|
private |
Definition at line 360 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 360 of file RKTrackRep.cxx
References fCharge, fJ_pM_5x6, fpTilde, fU, fV, fW, GFDetPlane::getU(), GFDetPlane::getV(), RKTools::J_pMTxcov5xJ_pM(), and p.
Referenced by getPosMomCov().
|
private |
Definition at line 304 of file RKTrackRep.cxx.
View newest version in sPHENIX GitHub at line 304 of file RKTrackRep.cxx
References fJ_pM_5x7, fpTilde, fU, fV, fW, GFDetPlane::getNormal(), GFDetPlane::getU(), GFDetPlane::getV(), and RKTools::J_pMTxcov5xJ_pM().
Referenced by extrapolate().
|
private |
Definition at line 345 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 345 of file RKTrackRep.h
Referenced by getAuxInfo().
|
private |
Definition at line 342 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 342 of file RKTrackRep.h
Referenced by extrapolate(), getAuxInfo(), setData(), and setPosMomCov().
|
private |
Definition at line 343 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 343 of file RKTrackRep.h
Referenced by extrapolate(), getAuxInfo(), getPosMomCov(), setData(), and setPosMomCov().
|
private |
Charge.
Definition at line 340 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 340 of file RKTrackRep.h
Referenced by calcState(), calcStateCov(), estimateStep(), Extrap(), getCharge(), getMom(), getPosMom(), getPosMomCov(), RKutta(), setData(), setPDG(), transformM6P(), and transformPM6().
|
private |
Definition at line 349 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 349 of file RKTrackRep.h
Referenced by extrapolateToLine(), extrapolateToPoint(), getState5(), RKutta(), transformM6P(), and transformM7P().
|
private |
Definition at line 332 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 332 of file RKTrackRep.h
Referenced by estimateStep(), getAuxInfo(), setData(), setPropDir(), and switchDirection().
|
private |
Definition at line 351 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 351 of file RKTrackRep.h
Referenced by Extrap().
|
private |
Definition at line 351 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 351 of file RKTrackRep.h
Referenced by Extrap().
|
private |
Definition at line 352 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 352 of file RKTrackRep.h
Referenced by RKutta().
|
private |
Definition at line 363 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 363 of file RKTrackRep.h
Referenced by initArrays(), and transformM6P().
|
private |
Definition at line 362 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 362 of file RKTrackRep.h
Referenced by initArrays(), and transformM7P().
|
private |
Definition at line 361 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 361 of file RKTrackRep.h
Referenced by initArrays(), and transformPM6().
|
private |
Definition at line 360 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 360 of file RKTrackRep.h
Referenced by initArrays(), and transformPM7().
|
private |
Mass (in GeV)
Definition at line 338 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 338 of file RKTrackRep.h
Referenced by setPDG().
|
private |
Definition at line 357 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 357 of file RKTrackRep.h
Referenced by Extrap(), and initArrays().
|
private |
Definition at line 333 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 333 of file RKTrackRep.h
Referenced by disableMaterialEffects(), estimateStep(), and Extrap().
|
private |
Definition at line 348 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 348 of file RKTrackRep.h
Referenced by getState7().
|
private |
Definition at line 358 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 358 of file RKTrackRep.h
Referenced by Extrap().
|
private |
PDG particle code.
Definition at line 336 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 336 of file RKTrackRep.h
Referenced by estimateStep(), Extrap(), getPDG(), and setPDG().
|
private |
Definition at line 349 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 349 of file RKTrackRep.h
Referenced by Extrap(), getState5(), and RKutta().
|
private |
Definition at line 350 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 350 of file RKTrackRep.h
Referenced by transformPM6(), and transformPM7().
|
private |
Definition at line 344 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 344 of file RKTrackRep.h
Referenced by calcState(), extrapolate(), getPosMomCov(), getState7(), and setData().
|
private |
Definition at line 356 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 356 of file RKTrackRep.h
Referenced by Extrap(), and initArrays().
|
private |
Definition at line 348 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 348 of file RKTrackRep.h
Referenced by calcStateCov(), getState5(), getState7(), transformM6P(), transformM7P(), transformPM6(), and transformPM7().
|
private |
Definition at line 348 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 348 of file RKTrackRep.h
Referenced by calcStateCov(), getState5(), getState7(), transformM6P(), transformM7P(), transformPM6(), and transformPM7().
|
private |
Definition at line 348 of file RKTrackRep.h.
View newest version in sPHENIX GitHub at line 348 of file RKTrackRep.h
Referenced by calcStateCov(), getState7(), transformM6P(), transformM7P(), transformPM6(), and transformPM7().