EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
genfit::SpacepointMeasurement Class Reference

Class for measurements implementing a space point hit geometry. More...

#include <fun4all_GenFit/blob/master/measurements/include/SpacepointMeasurement.h>

+ Inheritance diagram for genfit::SpacepointMeasurement:
+ Collaboration diagram for genfit::SpacepointMeasurement:

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 AbsMeasurementclone () 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 AbsHMatrixconstructHMatrix (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 ()
 
TrackPointgetTrackPoint () 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_
 
TrackPointtrackPoint_
 Pointer to TrackPoint where the measurement belongs to.
 

Detailed Description

Class for measurements implementing a space point hit geometry.

Author
Christian Höppner (Technische Universität München, original author)
Sebastian Neubert (Technische Universität München, original author)
Johannes Rauch (Technische Universität München, original author)

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

Constructor & Destructor Documentation

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().

+ Here is the caller graph for this function:

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_.

+ Here is the call graph for this function:

virtual genfit::SpacepointMeasurement::~SpacepointMeasurement ( )
inlinevirtual

Definition at line 53 of file SpacepointMeasurement.h.

View newest version in sPHENIX GitHub at line 53 of file SpacepointMeasurement.h

Member Function Documentation

virtual AbsMeasurement* genfit::SpacepointMeasurement::clone ( ) const
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().

+ Here is the call graph for this function:

const AbsHMatrix * genfit::SpacepointMeasurement::constructHMatrix ( const AbsTrackRep ) const
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().

+ Here is the caller graph for this function:

std::vector< MeasurementOnPlane * > genfit::SpacepointMeasurement::constructMeasurementsOnPlane ( const StateOnPlane state) const
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.

+ Here is the call graph for this function:

SharedPlanePtr genfit::SpacepointMeasurement::constructPlane ( const StateOnPlane state) const
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_.

+ Here is the call graph for this function:

bool genfit::SpacepointMeasurement::getCutCov ( ) const
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_.

bool genfit::SpacepointMeasurement::getWeightedPlaneConstruction ( ) const
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_.

void genfit::SpacepointMeasurement::initG ( )
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().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void genfit::SpacepointMeasurement::setCutCov ( bool  value)
inline

Definition at line 79 of file SpacepointMeasurement.h.

View newest version in sPHENIX GitHub at line 79 of file SpacepointMeasurement.h

References cutCov_, and value.

void genfit::SpacepointMeasurement::setWeightedPlaneConstruction ( bool  value)
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_.

Member Data Documentation

bool genfit::SpacepointMeasurement::cutCov_
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().

TMatrixDSym genfit::SpacepointMeasurement::G_
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().

bool genfit::SpacepointMeasurement::weightedPlaneContruction_
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().


The documentation for this class was generated from the following files: