EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
|
Class for measurements implementing a space point hit geometry. More...
#include <fun4all_GenFit/blob/master/measurements/include/SpacepointMeasurement.h>
Public Member Functions | |
SpacepointMeasurement (int nDim=3) | |
SpacepointMeasurement (const TVectorD &rawHitCoords, const TMatrixDSym &rawHitCov, int detId, int hitId, TrackPoint *trackPoint, bool weightedPlaneContruction=true, bool cutCov=true) | |
virtual | ~SpacepointMeasurement () |
virtual AbsMeasurement * | clone () const override |
Deep copy ctor for polymorphic class. | |
virtual SharedPlanePtr | constructPlane (const StateOnPlane &state) const override |
Contruct the virtual detector plane. | |
virtual std::vector < MeasurementOnPlane * > | constructMeasurementsOnPlane (const StateOnPlane &state) const override |
virtual const AbsHMatrix * | constructHMatrix (const AbsTrackRep *) const override |
bool | getWeightedPlaneConstruction () const |
false: project 3D cov onto DetPlane. true: cut 3D cov with DetPlane | |
void | setWeightedPlaneConstruction (bool value) |
bool | getCutCov () const |
false: use POCA to construct DetPlane. true: Use metric G to construct POCA | |
void | setCutCov (bool value) |
Public Member Functions inherited from genfit::AbsMeasurement | |
AbsMeasurement () | |
AbsMeasurement (int nDims) | |
AbsMeasurement (const TVectorD &rawHitCoords, const TMatrixDSym &rawHitCov, int detId, int hitId, TrackPoint *trackPoint) | |
virtual | ~AbsMeasurement () |
TrackPoint * | getTrackPoint () const |
void | setTrackPoint (TrackPoint *tp) |
const TVectorD & | getRawHitCoords () const |
const TMatrixDSym & | getRawHitCov () const |
TVectorD & | getRawHitCoords () |
TMatrixDSym & | getRawHitCov () |
int | getDetId () const |
int | getHitId () const |
virtual bool | isLeftRightMeasurement () const |
If the AbsMeasurement is a wire hit, the left/right resolution will be used. | |
virtual int | getLeftRightResolution () const |
unsigned int | getDim () const |
void | setRawHitCoords (const TVectorD &coords) |
void | setRawHitCov (const TMatrixDSym &cov) |
void | setDetId (int detId) |
void | setHitId (int hitId) |
virtual void | Print (const Option_t *="") const |
Protected Member Functions | |
void | initG () |
Protected Member Functions inherited from genfit::AbsMeasurement | |
AbsMeasurement (const AbsMeasurement &) | |
protect from calling copy c'tor from outside the class. Use clone() if you want a copy! | |
Private Attributes | |
bool | weightedPlaneContruction_ |
TMatrixDSym | G_ |
bool | cutCov_ |
inverse of 3x3 cov | |
Additional Inherited Members | |
Protected Attributes inherited from genfit::AbsMeasurement | |
TVectorD | rawHitCoords_ |
TMatrixDSym | rawHitCov_ |
int | detId_ |
int | hitId_ |
TrackPoint * | trackPoint_ |
Pointer to TrackPoint where the measurement belongs to. | |
Class for measurements implementing a space point hit geometry.
For a space point the detector plane has to be defined with respect to a track representation. SpacepointMeasurement implements a scheme where the detectorplane is chosen perpendicular to the track. In a track fit, only two of the three coordinates of a space point are independent (the track is a one-dimensional object). Therefore the 3D data of the hit is used to define a proper detector plane into which the hit coordinates are then projected.
Definition at line 46 of file SpacepointMeasurement.h.
View newest version in sPHENIX GitHub at line 46 of file SpacepointMeasurement.h
genfit::SpacepointMeasurement::SpacepointMeasurement | ( | int | nDim = 3 | ) |
Definition at line 33 of file SpacepointMeasurement.cc.
View newest version in sPHENIX GitHub at line 33 of file SpacepointMeasurement.cc
Referenced by clone().
genfit::SpacepointMeasurement::SpacepointMeasurement | ( | const TVectorD & | rawHitCoords, |
const TMatrixDSym & | rawHitCov, | ||
int | detId, | ||
int | hitId, | ||
TrackPoint * | trackPoint, | ||
bool | weightedPlaneContruction = true , |
||
bool | cutCov = true |
||
) |
Definition at line 41 of file SpacepointMeasurement.cc.
View newest version in sPHENIX GitHub at line 41 of file SpacepointMeasurement.cc
References initG(), genfit::AbsMeasurement::rawHitCoords_, and weightedPlaneContruction_.
|
inlinevirtual |
Definition at line 53 of file SpacepointMeasurement.h.
View newest version in sPHENIX GitHub at line 53 of file SpacepointMeasurement.h
|
inlineoverridevirtual |
Deep copy ctor for polymorphic class.
Implements genfit::AbsMeasurement.
Reimplemented in genfit::mySpacepointMeasurement, and genfit::ProlateSpacepointMeasurement.
Definition at line 55 of file SpacepointMeasurement.h.
View newest version in sPHENIX GitHub at line 55 of file SpacepointMeasurement.h
References SpacepointMeasurement().
|
overridevirtual |
Returns a new AbsHMatrix object. Caller must take ownership.
Implements genfit::AbsMeasurement.
Definition at line 120 of file SpacepointMeasurement.cc.
View newest version in sPHENIX GitHub at line 120 of file SpacepointMeasurement.cc
Referenced by constructMeasurementsOnPlane().
|
overridevirtual |
Construct MeasurementOnPlane on plane of the state and wrt the states TrackRep. The state will usually be the prediction or reference state, and has to be defined AT the measurement. The AbsMeasurement will be projected onto the plane. It's possible to make corrections to the coordinates here (e.g. by using the state coordinates). Usually the vector will contain only one element. But in the case of e.g. a WireMeasurement, it will be 2 (left and right).
Implements genfit::AbsMeasurement.
Definition at line 69 of file SpacepointMeasurement.cc.
View newest version in sPHENIX GitHub at line 69 of file SpacepointMeasurement.cc
References constructHMatrix(), cutCov_, genfit::MeasuredStateOnPlane::getCov(), genfit::StateOnPlane::getPlane(), genfit::StateOnPlane::getRep(), genfit::StateOnPlane::getState(), genfit::tools::invertMatrix(), Acts::UnitConstants::m, genfit::AbsMeasurement::rawHitCoords_, genfit::AbsMeasurement::rawHitCov_, Acts::UnitConstants::u, and v.
|
overridevirtual |
Contruct the virtual detector plane.
Per default, the plane will be constructed such that it contains the measurement and POCA to the measurement in cartesian space. The plane is perpendicular to the track (at the POCA).
If weightedPlaneContruction_ is set, the POCA will be calculated in a space weighted with the inverse of the 3D covariance. E.g. if the covariance is very oblate, the plane will be almost defined by the covariance shape. If the covariance is very prolate, the behaviour will be very similar to the ProlateSpacepointHit.
Implements genfit::AbsMeasurement.
Reimplemented in genfit::ProlateSpacepointMeasurement.
Definition at line 53 of file SpacepointMeasurement.cc.
View newest version in sPHENIX GitHub at line 53 of file SpacepointMeasurement.cc
References genfit::StateOnPlane::extrapolateToPoint(), G_, genfit::StateOnPlane::getPlane(), genfit::AbsMeasurement::rawHitCoords_, and weightedPlaneContruction_.
|
inline |
false: use POCA to construct DetPlane. true: Use metric G to construct POCA
Definition at line 78 of file SpacepointMeasurement.h.
View newest version in sPHENIX GitHub at line 78 of file SpacepointMeasurement.h
References cutCov_.
|
inline |
false: project 3D cov onto DetPlane. true: cut 3D cov with DetPlane
Definition at line 74 of file SpacepointMeasurement.h.
View newest version in sPHENIX GitHub at line 74 of file SpacepointMeasurement.h
References weightedPlaneContruction_.
|
protected |
Definition at line 130 of file SpacepointMeasurement.cc.
View newest version in sPHENIX GitHub at line 130 of file SpacepointMeasurement.cc
References G_, genfit::tools::invertMatrix(), and genfit::AbsMeasurement::rawHitCov_.
Referenced by genfit::mySpacepointMeasurement::mySpacepointMeasurement(), and SpacepointMeasurement().
|
inline |
Definition at line 79 of file SpacepointMeasurement.h.
View newest version in sPHENIX GitHub at line 79 of file SpacepointMeasurement.h
|
inline |
Definition at line 75 of file SpacepointMeasurement.h.
View newest version in sPHENIX GitHub at line 75 of file SpacepointMeasurement.h
References value, and weightedPlaneContruction_.
|
private |
inverse of 3x3 cov
Definition at line 88 of file SpacepointMeasurement.h.
View newest version in sPHENIX GitHub at line 88 of file SpacepointMeasurement.h
Referenced by constructMeasurementsOnPlane(), getCutCov(), and setCutCov().
|
private |
Definition at line 87 of file SpacepointMeasurement.h.
View newest version in sPHENIX GitHub at line 87 of file SpacepointMeasurement.h
Referenced by constructPlane(), and initG().
|
private |
Definition at line 86 of file SpacepointMeasurement.h.
View newest version in sPHENIX GitHub at line 86 of file SpacepointMeasurement.h
Referenced by constructPlane(), getWeightedPlaneConstruction(), setWeightedPlaneConstruction(), and SpacepointMeasurement().