SND@LHC Software
Loading...
Searching...
No Matches
genfit::MeasurementOnPlane Class Reference

Measured coordinates on a plane. More...

#include <MeasurementOnPlane.h>

Inheritance diagram for genfit::MeasurementOnPlane:
Collaboration diagram for genfit::MeasurementOnPlane:

Public Member Functions

 MeasurementOnPlane (const AbsTrackRep *rep=NULL)
 
 MeasurementOnPlane (const TVectorD &state, const TMatrixDSym &cov, SharedPlanePtr plane, const AbsTrackRep *rep, const AbsHMatrix *hMatrix, double weight=1.)
 
 MeasurementOnPlane (const MeasurementOnPlane &other)
 copy constructor
 
MeasurementOnPlaneoperator= (MeasurementOnPlane other)
 assignment operator
 
void swap (MeasurementOnPlane &other)
 
virtual ~MeasurementOnPlane ()
 
const AbsHMatrixgetHMatrix () const
 
double getWeight () const
 
TMatrixDSym getWeightedCov ()
 
void setHMatrix (const AbsHMatrix *hMatrix)
 
void setWeight (double weight)
 
void Print (Option_t *option="") const
 
- Public Member Functions inherited from genfit::MeasuredStateOnPlane
 MeasuredStateOnPlane (const AbsTrackRep *rep=NULL)
 
 MeasuredStateOnPlane (const TVectorD &state, const TMatrixDSym &cov, const genfit::SharedPlanePtr &plane, const AbsTrackRep *rep)
 
 MeasuredStateOnPlane (const TVectorD &state, const TMatrixDSym &cov, const genfit::SharedPlanePtr &plane, const AbsTrackRep *rep, const TVectorD &auxInfo)
 
 MeasuredStateOnPlane (const MeasuredStateOnPlane &o)
 
 MeasuredStateOnPlane (const StateOnPlane &state, const TMatrixDSym &cov)
 
MeasuredStateOnPlaneoperator= (MeasuredStateOnPlane other)
 
void swap (MeasuredStateOnPlane &other)
 
virtual ~MeasuredStateOnPlane ()
 
const TMatrixDSym & getCov () const
 
TMatrixDSym & getCov ()
 
void blowUpCov (double blowUpFac, bool resetOffDiagonals=true)
 
void setStateCov (const TVectorD &state, const TMatrixDSym &cov)
 
void setStateCovPlane (const TVectorD &state, const TMatrixDSym &cov, const SharedPlanePtr &plane)
 
void setCov (const TMatrixDSym &cov)
 
TMatrixDSym get6DCov () const
 
void getPosMomCov (TVector3 &pos, TVector3 &mom, TMatrixDSym &cov) const
 
void get6DStateCov (TVectorD &stateVec, TMatrixDSym &cov) const
 
double getMomVar () const
 
void setPosMomErr (const TVector3 &pos, const TVector3 &mom, const TVector3 &posErr, const TVector3 &momErr)
 
void setPosMomCov (const TVector3 &pos, const TVector3 &mom, const TMatrixDSym &cov6x6)
 
void setPosMomCov (const TVectorD &state6, const TMatrixDSym &cov6x6)
 
- Public Member Functions inherited from genfit::StateOnPlane
 StateOnPlane (const AbsTrackRep *rep=NULL)
 
 StateOnPlane (const TVectorD &state, const SharedPlanePtr &plane, const AbsTrackRep *rep)
 
 StateOnPlane (const TVectorD &state, const SharedPlanePtr &plane, const AbsTrackRep *rep, const TVectorD &auxInfo)
 
StateOnPlaneoperator= (StateOnPlane other)
 
void swap (StateOnPlane &other)
 
virtual ~StateOnPlane ()
 
const TVectorD & getState () const
 
TVectorD & getState ()
 
const TVectorD & getAuxInfo () const
 
TVectorD & getAuxInfo ()
 
const SharedPlanePtrgetPlane () const
 
const AbsTrackRepgetRep () const
 
void setState (const TVectorD &state)
 
void setPlane (const SharedPlanePtr &plane)
 
void setStatePlane (const TVectorD &state, const SharedPlanePtr &plane)
 
void setAuxInfo (const TVectorD &auxInfo)
 
void setRep (const AbsTrackRep *rep)
 
double extrapolateToPlane (const SharedPlanePtr &plane, bool stopAtBoundary=false, bool calcJacobianNoise=false)
 
double extrapolateToLine (const TVector3 &linePoint, const TVector3 &lineDirection, bool stopAtBoundary=false, bool calcJacobianNoise=false)
 
double extrapolateToPoint (const TVector3 &point, bool stopAtBoundary=false, bool calcJacobianNoise=false)
 
double extrapolateToPoint (const TVector3 &point, const TMatrixDSym &G, bool stopAtBoundary=false, bool calcJacobianNoise=false)
 
double extrapolateToCylinder (double radius, const TVector3 &linePoint=TVector3(0., 0., 0.), const TVector3 &lineDirection=TVector3(0., 0., 1.), bool stopAtBoundary=false, bool calcJacobianNoise=false)
 
double extrapolateToSphere (double radius, const TVector3 &point=TVector3(0., 0., 0.), bool stopAtBoundary=false, bool calcJacobianNoise=false)
 
double extrapolateBy (double step, bool stopAtBoundary=false, bool calcJacobianNoise=false)
 
double extrapolateToMeasurement (const AbsMeasurement *measurement, bool stopAtBoundary=false, bool calcJacobianNoise=false)
 
TVector3 getPos () const
 
TVector3 getMom () const
 
TVector3 getDir () const
 
void getPosMom (TVector3 &pos, TVector3 &mom) const
 
void getPosDir (TVector3 &pos, TVector3 &dir) const
 
TVectorD get6DState () const
 
double getMomMag () const
 
int getPDG () const
 
double getCharge () const
 
double getQop () const
 
double getMass () const
 
void setPosMom (const TVector3 &pos, const TVector3 &mom)
 
void setPosMom (const TVectorD &state6)
 
void setChargeSign (double charge)
 
void setQop (double qop)
 

Protected Attributes

boost::scoped_ptr< const AbsHMatrixhMatrix_
 
double weight_
 
- Protected Attributes inherited from genfit::MeasuredStateOnPlane
TMatrixDSym cov_
 
- Protected Attributes inherited from genfit::StateOnPlane
TVectorD state_
 
TVectorD auxInfo_
 
SharedPlanePtr sharedPlane_
 

Detailed Description

Measured coordinates on a plane.

The dimensionality will usually be 1 or 2. The HMatrix is a projetion matrix, which is used to project the track parameters with the originalt dimesionality down to the measured dimensionality.

Definition at line 44 of file MeasurementOnPlane.h.

Constructor & Destructor Documentation

◆ MeasurementOnPlane() [1/3]

genfit::MeasurementOnPlane::MeasurementOnPlane ( const AbsTrackRep rep = NULL)
inline

Definition at line 48 of file MeasurementOnPlane.h.

48 :
49 MeasuredStateOnPlane(rep), hMatrix_(NULL), weight_(0) {}
MeasuredStateOnPlane(const AbsTrackRep *rep=NULL)
boost::scoped_ptr< const AbsHMatrix > hMatrix_

◆ MeasurementOnPlane() [2/3]

genfit::MeasurementOnPlane::MeasurementOnPlane ( const TVectorD &  state,
const TMatrixDSym &  cov,
SharedPlanePtr  plane,
const AbsTrackRep rep,
const AbsHMatrix hMatrix,
double  weight = 1. 
)
inline

Definition at line 50 of file MeasurementOnPlane.h.

50 :
51 MeasuredStateOnPlane(state, cov, plane, rep), hMatrix_(hMatrix), weight_(weight) {}

◆ MeasurementOnPlane() [3/3]

genfit::MeasurementOnPlane::MeasurementOnPlane ( const MeasurementOnPlane other)

copy constructor

Definition at line 28 of file MeasurementOnPlane.cc.

28 :
30 weight_(other.weight_)
31{
32 hMatrix_.reset(other.hMatrix_->clone());
33}

◆ ~MeasurementOnPlane()

virtual genfit::MeasurementOnPlane::~MeasurementOnPlane ( )
inlinevirtual

Definition at line 59 of file MeasurementOnPlane.h.

59{}

Member Function Documentation

◆ getHMatrix()

const AbsHMatrix * genfit::MeasurementOnPlane::getHMatrix ( ) const
inline

Definition at line 61 of file MeasurementOnPlane.h.

61{return hMatrix_.get();}

◆ getWeight()

double genfit::MeasurementOnPlane::getWeight ( ) const
inline

Definition at line 62 of file MeasurementOnPlane.h.

62{return weight_;}

◆ getWeightedCov()

TMatrixDSym genfit::MeasurementOnPlane::getWeightedCov ( )
inline

Definition at line 64 of file MeasurementOnPlane.h.

◆ operator=()

MeasurementOnPlane & genfit::MeasurementOnPlane::operator= ( MeasurementOnPlane  other)

assignment operator

Definition at line 36 of file MeasurementOnPlane.cc.

36 {
37 swap(other);
38 return *this;
39}
void swap(MeasurementOnPlane &other)

◆ Print()

void genfit::MeasurementOnPlane::Print ( Option_t *  option = "") const
virtual

Reimplemented from genfit::MeasuredStateOnPlane.

Definition at line 49 of file MeasurementOnPlane.cc.

50{
51 std::cout << "genfit::MeasurementOnPlane, weight = " << weight_ << "\n";
52 std::cout << " state vector: "; state_.Print();
53 std::cout << " covariance matrix: "; cov_.Print();
54 if (sharedPlane_ != NULL)
55 std::cout << " defined in plane "; sharedPlane_->Print();
56 std::cout << " hMatrix: "; hMatrix_->Print();
57
58}
SharedPlanePtr sharedPlane_

◆ setHMatrix()

void genfit::MeasurementOnPlane::setHMatrix ( const AbsHMatrix hMatrix)
inline

Definition at line 66 of file MeasurementOnPlane.h.

66{hMatrix_.reset(hMatrix);}

◆ setWeight()

void genfit::MeasurementOnPlane::setWeight ( double  weight)
inline

Definition at line 67 of file MeasurementOnPlane.h.

67{weight_ = fmax(weight, 1.E-10);}

◆ swap()

void genfit::MeasurementOnPlane::swap ( MeasurementOnPlane other)

Definition at line 42 of file MeasurementOnPlane.cc.

42 {
44 this->hMatrix_.swap(other.hMatrix_);
45 std::swap(this->weight_, other.weight_);
46}
void swap(MeasuredStateOnPlane &other)

Member Data Documentation

◆ hMatrix_

boost::scoped_ptr<const AbsHMatrix> genfit::MeasurementOnPlane::hMatrix_
protected

Definition at line 74 of file MeasurementOnPlane.h.

◆ weight_

double genfit::MeasurementOnPlane::weight_
protected

Definition at line 78 of file MeasurementOnPlane.h.


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