EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
|
Wrapper class for use with GFDaf. More...
#include <EicRoot/blob/master/genfit/GFDafHit.h>
Public Member Functions | |
GFDafHit () | |
~GFDafHit () | |
GFDafHit (std::vector< GFAbsRecoHit * > HitsInPlane) | |
Constructor adding hits. | |
void | getMeasurement (const GFAbsTrackRep *rep, const GFDetPlane &pl, const TMatrixT< double > &statePred, const TMatrixT< double > &covPred, TMatrixT< double > &m, TMatrixT< double > &V) |
Get the measurement m,V. | |
TMatrixT< double > | getHMatrix (const GFAbsTrackRep *rep) |
Get the H matrix. | |
GFDafHit * | clone () |
Get clone of this object. | |
const GFDetPlane & | getDetPlane (GFAbsTrackRep *rep) |
Get the detector plane. | |
void | setWeights (std::vector< double > weights) |
Set the weights. | |
unsigned int | getNumHits () |
Get the number of hits in the GFDafHit. | |
GFAbsRecoHit * | getHit (unsigned int ihit) |
Get at hit from the GFDafHit. | |
const std::string & | getPolicyName () |
Get the name of the hit policy. | |
Public Member Functions inherited from GFAbsRecoHit | |
virtual | ~GFAbsRecoHit () |
GFAbsRecoHit (int NparHit) | |
Constructor specifying dimension of coordinate vector. | |
GFAbsRecoHit () | |
Default constructor needed for compatibility with ROOT. | |
TMatrixT< double > | getRawHitCov () const |
Get raw hit covariances. | |
TMatrixT< double > | getRawHitCoord () const |
Get raw hit coordinates. | |
double | getRho () |
void | setRho (double rho) |
virtual void | Print (const Option_t *option="") const |
Print raw hit coordinates. | |
int | getNparHit () |
Private Attributes | |
bool | fHitUpd |
GFDetPlane | fPl |
std::vector< TMatrixT< double > > | fCovInvs |
std::vector< GFAbsRecoHit * > | fRawHits |
std::vector< double > | fWeights |
Additional Inherited Members | |
Protected Attributes inherited from GFAbsRecoHit | |
TMatrixT< double > | fHitCoord |
Vector of raw coordinates of hit. | |
TMatrixT< double > | fHitCov |
Covariance of raw hit coordinates. | |
double | fRho |
Sorting parameter used in GFTrack::sortHits() | |
Wrapper class for use with GFDaf.
The GFDafHit is a hit class which acts as an effective hit. As the DAF is capable of handling multiple hits in one plane, but GFKalman cannot handle this, the GFDafHit combines all hits in one plane.
Definition at line 40 of file GFDafHit.h.
View newest version in sPHENIX GitHub at line 40 of file GFDafHit.h
|
inline |
Definition at line 43 of file GFDafHit.h.
View newest version in sPHENIX GitHub at line 43 of file GFDafHit.h
Referenced by clone().
|
inline |
Definition at line 45 of file GFDafHit.h.
View newest version in sPHENIX GitHub at line 45 of file GFDafHit.h
References fRawHits.
GFDafHit::GFDafHit | ( | std::vector< GFAbsRecoHit * > | HitsInPlane | ) |
Constructor adding hits.
With this constructor, the GFDafHit is normally initialized. All the hits of the argument should be in one plane.
Definition at line 22 of file GFDafHit.cxx.
View newest version in sPHENIX GitHub at line 22 of file GFDafHit.cxx
|
virtual |
Get clone of this object.
Virtual abstract method. Has to be implemented by inherting classes. Creates a deep copy of this object. Ownership is trandsferred to the caller!
Implements GFAbsRecoHit.
Definition at line 139 of file GFDafHit.cxx.
View newest version in sPHENIX GitHub at line 139 of file GFDafHit.cxx
References fRawHits, fWeights, GFDafHit(), and setWeights().
|
virtual |
Get the detector plane.
Returns the plane as returned by GFDetPlan() of the first hit in the GFDafHit. This is valid because all hits are on the same plane.
Implements GFAbsRecoHit.
Definition at line 42 of file GFDafHit.cxx.
View newest version in sPHENIX GitHub at line 42 of file GFDafHit.cxx
References fRawHits.
GFAbsRecoHit * GFDafHit::getHit | ( | unsigned int | ihit | ) |
Get at hit from the GFDafHit.
Definition at line 30 of file GFDafHit.cxx.
View newest version in sPHENIX GitHub at line 30 of file GFDafHit.cxx
References fRawHits.
Referenced by GFDaf::calcWeights().
|
virtual |
Get the H matrix.
Returns the H matrix of the first hit in the GFDafHit. This is valid because all hits are on the same plane.
Implements GFAbsRecoHit.
Definition at line 133 of file GFDafHit.cxx.
View newest version in sPHENIX GitHub at line 133 of file GFDafHit.cxx
References fRawHits.
|
virtual |
Get the measurement m,V.
Due to the nature of the GFDafHit, the coordinates returned are not necessarily the coordinates of the real hits. There are two cases: if the GFDafHit contains only one hit, then the hit coordinates of this hit are returned. If however, the GFDafHit contains several hits, then the following formula is used to obtain the hit coordinates:
with the real hit coordinates, the real hit covariance and the weights. The sum runs over all real hits in the GFDafHit. is the effective hit covariance as returned by getHitCov(). This calculation is only done, if the plane has changed from the last time gitHitCoord() was called.
And now for the covariance matrix: There are two cases as well: if the GFDafHit contains only one hit, the covariance is calculated like:
with the symbols analog to getHitCoord(). If there are several hits in the GFDafHit, the following formula is used:
As before, these calculations are only done if the plane is different from the one getHitCov was last called.
Implements GFAbsRecoHit.
Definition at line 48 of file GFDafHit.cxx.
View newest version in sPHENIX GitHub at line 48 of file GFDafHit.cxx
References Acts::UnitConstants::e, fCovInvs, GFAbsRecoHit::fHitCoord, GFAbsRecoHit::fHitCov, fHitUpd, fPl, fRawHits, fWeights, and GFTools::invertMatrix().
|
inline |
Get the number of hits in the GFDafHit.
Definition at line 111 of file GFDafHit.h.
View newest version in sPHENIX GitHub at line 111 of file GFDafHit.h
References fRawHits.
Referenced by GFDaf::calcWeights(), and GFDaf::copySmoothing().
|
virtual |
Get the name of the hit policy.
Returns the name of the hit policy of the first hit in the GFDafHit. This is valid because if there are several hits, they all have to be planar hits.
Reimplemented from GFAbsRecoHit.
Definition at line 147 of file GFDafHit.cxx.
View newest version in sPHENIX GitHub at line 147 of file GFDafHit.cxx
References fRawHits.
void GFDafHit::setWeights | ( | std::vector< double > | weights | ) |
Set the weights.
Set the weights as used by getHitCoord() and getHitCov().
Definition at line 36 of file GFDafHit.cxx.
View newest version in sPHENIX GitHub at line 36 of file GFDafHit.cxx
References fHitUpd, and fWeights.
Referenced by clone(), and GFDaf::processTrack().
|
private |
Definition at line 127 of file GFDafHit.h.
View newest version in sPHENIX GitHub at line 127 of file GFDafHit.h
Referenced by getMeasurement().
|
private |
Definition at line 125 of file GFDafHit.h.
View newest version in sPHENIX GitHub at line 125 of file GFDafHit.h
Referenced by getMeasurement(), GFDafHit(), and setWeights().
|
private |
Definition at line 126 of file GFDafHit.h.
View newest version in sPHENIX GitHub at line 126 of file GFDafHit.h
Referenced by getMeasurement().
|
private |
Definition at line 128 of file GFDafHit.h.
View newest version in sPHENIX GitHub at line 128 of file GFDafHit.h
Referenced by clone(), getDetPlane(), getHit(), getHMatrix(), getMeasurement(), getNumHits(), getPolicyName(), GFDafHit(), and ~GFDafHit().
|
private |
Definition at line 129 of file GFDafHit.h.
View newest version in sPHENIX GitHub at line 129 of file GFDafHit.h
Referenced by clone(), getMeasurement(), GFDafHit(), and setWeights().