MyMarlinTPC  170316
Public Member Functions | Private Attributes | List of all members
marlintpc::rb_Triplet Class Reference

Row based triplet. More...

#include <RowTripletBasedTrackFinderProcessor.h>

Public Member Functions

 rb_Triplet (rb_Doublet &, rb_Hit *)
 Construct row based triplet. More...
 
int getRow () const
 Get row number (of center hit). More...
 
double getX () const
 Get X coordinate. More...
 
double getY () const
 Get Y coordinate. More...
 
double getZ () const
 Get Z coordinate. More...
 
void getPos (double *) const
 Get position. More...
 
double getVarXYPos (const double=0.) const
 Get XY variance (position). More...
 
double getVarXYDir () const
 Get XY variance (direction: phi). More...
 
double getVarZPos (const double=0.) const
 Get Z variance (position). More...
 
double getVarZDir () const
 Get Z variance (direction: tan(lambda)). More...
 
double getPhiMeas () const
 Get XY measurement direction (average of outer hits). More...
 
double getPhi () const
 Get direction in XY. More...
 
double getTanl () const
 Get slope in ZS. More...
 
void getPosCloseTo (const double, const double, double *, double &) const
 Get position close to reference point. More...
 
rb_HitgetHit (const int) const
 Get hit. More...
 
bool match (rb_Triplet *, const double, const double) const
 Match triplet with other triplet. More...
 
double getCosBeta () const
 Get cos(beta). More...
 

Private Attributes

rb_Hit_hit [3]
 pointers to hits More...
 
double _phiMeas
 (average) measurement direction in XY More...
 
double _posX
 X position. More...
 
double _posY
 Y position. More...
 
double _posZ
 Z position. More...
 
double _varXY [2]
 (diagonal of) XY covariance matrix (position, slope) More...
 
double _phi
 XY direction. More...
 
double _tanl
 slope in ZS More...
 
double _varZ [2]
 (diagonal of) ZS covariance matrix (position, slope) More...
 
double _length
 length More...
 
double _cosb
 cos(beta) More...
 

Detailed Description

Row based triplet.

Is build from matching hits in even or odd rows and has a position and a direction (determined from seeding doublet) in XY and ZS with corresponding covariances.

Definition at line 207 of file RowTripletBasedTrackFinderProcessor.h.

Constructor & Destructor Documentation

◆ rb_Triplet()

marlintpc::rb_Triplet::rb_Triplet ( rb_Doublet doublet,
rb_Hit hit 
)

Construct row based triplet.

Parameters
[in]doubletdoublet of outer hits
[in]hitcenter hit

Definition at line 726 of file RowTripletBasedTrackFinderProcessor.cc.

References marlintpc::rb_Hit::_cosb, marlintpc::rb_Doublet::getHit(), and marlintpc::rb_Doublet::getParameters().

Member Function Documentation

◆ getCosBeta()

double marlintpc::rb_Triplet::getCosBeta ( ) const

Get cos(beta).

Definition at line 813 of file RowTripletBasedTrackFinderProcessor.cc.

References marlintpc::rb_Hit::_cosb.

◆ getHit()

rb_Hit * marlintpc::rb_Triplet::getHit ( const int  ihit) const

Get hit.

Parameters
[in]ihithit index
Returns
hit

Definition at line 879 of file RowTripletBasedTrackFinderProcessor.cc.

◆ getPhi()

double marlintpc::rb_Triplet::getPhi ( ) const

Get direction in XY.

Definition at line 803 of file RowTripletBasedTrackFinderProcessor.cc.

Referenced by match().

◆ getPhiMeas()

double marlintpc::rb_Triplet::getPhiMeas ( ) const

Get XY measurement direction (average of outer hits).

Definition at line 798 of file RowTripletBasedTrackFinderProcessor.cc.

Referenced by match().

◆ getPos()

void marlintpc::rb_Triplet::getPos ( double *  position) const

Get position.

Parameters
[out]positionposition

Definition at line 765 of file RowTripletBasedTrackFinderProcessor.cc.

◆ getPosCloseTo()

void marlintpc::rb_Triplet::getPosCloseTo ( const double  xref,
const double  yref,
double *  position,
double &  ds 
) const

Get position close to reference point.

Parameters
[in]xrefX of reference point
[in]yrefY of reference point
[out]positionposition
[out]dsarc length (to position)

Definition at line 865 of file RowTripletBasedTrackFinderProcessor.cc.

Referenced by match().

◆ getRow()

int marlintpc::rb_Triplet::getRow ( ) const

Get row number (of center hit).

Definition at line 742 of file RowTripletBasedTrackFinderProcessor.cc.

Referenced by match().

◆ getTanl()

double marlintpc::rb_Triplet::getTanl ( ) const

Get slope in ZS.

Definition at line 808 of file RowTripletBasedTrackFinderProcessor.cc.

Referenced by match().

◆ getVarXYDir()

double marlintpc::rb_Triplet::getVarXYDir ( ) const

Get XY variance (direction: phi).

Definition at line 780 of file RowTripletBasedTrackFinderProcessor.cc.

References marlintpc::rb_Hit::_cosb.

Referenced by match().

◆ getVarXYPos()

double marlintpc::rb_Triplet::getVarXYPos ( const double  ds = 0.) const

Get XY variance (position).

Parameters
[in]dsarc length

Definition at line 775 of file RowTripletBasedTrackFinderProcessor.cc.

Referenced by match().

◆ getVarZDir()

double marlintpc::rb_Triplet::getVarZDir ( ) const

Get Z variance (direction: tan(lambda)).

Definition at line 793 of file RowTripletBasedTrackFinderProcessor.cc.

Referenced by match().

◆ getVarZPos()

double marlintpc::rb_Triplet::getVarZPos ( const double  ds = 0.) const

Get Z variance (position).

Parameters
[in]dsarc length

Definition at line 788 of file RowTripletBasedTrackFinderProcessor.cc.

Referenced by match().

◆ getX()

double marlintpc::rb_Triplet::getX ( ) const

Get X coordinate.

Definition at line 747 of file RowTripletBasedTrackFinderProcessor.cc.

Referenced by match().

◆ getY()

double marlintpc::rb_Triplet::getY ( ) const

Get Y coordinate.

Definition at line 752 of file RowTripletBasedTrackFinderProcessor.cc.

Referenced by match().

◆ getZ()

double marlintpc::rb_Triplet::getZ ( ) const

Get Z coordinate.

Definition at line 757 of file RowTripletBasedTrackFinderProcessor.cc.

◆ match()

bool marlintpc::rb_Triplet::match ( rb_Triplet trp,
const double  posCut,
const double  dirCut 
) const

Match triplet with other triplet.

Match triplets in position and direction in XY and ZS.

Parameters
[in]trptriplet to compare with
[in]posCutcuts in normalized variance for position matching of (disjunct, overlapping) triplets
[in]dirCutcuts in normalized variance for direction matching of (disjunct, overlapping) triplets
Returns
matching flag

Chi2 values calculated from differences in position (at mid point) and direction and covariance matrices in XY and ZS are used as matching criteria (separately).

Matching cuts at ~4 sigma.

Definition at line 831 of file RowTripletBasedTrackFinderProcessor.cc.

References getPhi(), marlintpc::rb_Hit::getPhiMeas(), getPhiMeas(), getPosCloseTo(), marlintpc::rb_Hit::getRow(), getRow(), getTanl(), getVarXYDir(), getVarXYPos(), getVarZDir(), getVarZPos(), getX(), and getY().

Member Data Documentation

◆ _cosb

double marlintpc::rb_Triplet::_cosb
private

cos(beta)

Definition at line 238 of file RowTripletBasedTrackFinderProcessor.h.

◆ _hit

rb_Hit* marlintpc::rb_Triplet::_hit[3]
private

pointers to hits

Definition at line 228 of file RowTripletBasedTrackFinderProcessor.h.

◆ _length

double marlintpc::rb_Triplet::_length
private

length

Definition at line 237 of file RowTripletBasedTrackFinderProcessor.h.

◆ _phi

double marlintpc::rb_Triplet::_phi
private

XY direction.

Definition at line 234 of file RowTripletBasedTrackFinderProcessor.h.

◆ _phiMeas

double marlintpc::rb_Triplet::_phiMeas
private

(average) measurement direction in XY

Definition at line 229 of file RowTripletBasedTrackFinderProcessor.h.

◆ _posX

double marlintpc::rb_Triplet::_posX
private

X position.

Definition at line 230 of file RowTripletBasedTrackFinderProcessor.h.

◆ _posY

double marlintpc::rb_Triplet::_posY
private

Y position.

Definition at line 231 of file RowTripletBasedTrackFinderProcessor.h.

◆ _posZ

double marlintpc::rb_Triplet::_posZ
private

Z position.

Definition at line 232 of file RowTripletBasedTrackFinderProcessor.h.

◆ _tanl

double marlintpc::rb_Triplet::_tanl
private

slope in ZS

Definition at line 235 of file RowTripletBasedTrackFinderProcessor.h.

◆ _varXY

double marlintpc::rb_Triplet::_varXY[2]
private

(diagonal of) XY covariance matrix (position, slope)

Definition at line 233 of file RowTripletBasedTrackFinderProcessor.h.

◆ _varZ

double marlintpc::rb_Triplet::_varZ[2]
private

(diagonal of) ZS covariance matrix (position, slope)

Definition at line 236 of file RowTripletBasedTrackFinderProcessor.h.


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