Belle II Software  release-08-01-10
FourHitFilters Class Reference

The class 'FourHitFilters' bundles filter methods using 4 hits which are stored in B2Vector3Ds. More...

#include <FourHitFilters.h>

Collaboration diagram for FourHitFilters:

Public Member Functions

 FourHitFilters ()
 Empty constructor. More...
 
 FourHitFilters (const B2Vector3D &outer, const B2Vector3D &outerCenter, const B2Vector3D &innerCenter, const B2Vector3D &inner, const double magneticFieldStrength=1.5)
 Constructor. More...
 
 ~FourHitFilters ()
 Destructor.
 
void resetValues (const B2Vector3D &outer, const B2Vector3D &outerCenter, const B2Vector3D &innerCenter, const B2Vector3D &inner)
 Overrides Constructor-Setup. More...
 
void resetMagneticField (const double magneticFieldStrength=1.5)
 Overrides Constructor-Setup for magnetic field. More...
 
double calcDeltapT ()
 calculates dpt-value (dpt= difference in transverse momentum of 2 subsets of the hits), returning unit: GeV/c More...
 
double deltapT ()
 legacy - compatibility for old cases
 
double calcDeltaDistCircleCenter ()
 calculates ddist2IP-value directly (ddist2IP= difference in magnitude of the points of closest approach of two circles calculated using 2 subsets of the hits)
 
double deltaDistCircleCenter ()
 legacy - compatibility for old cases
 

Protected Member Functions

void calcCircle ()
 calculates an estimation of circleCenter position including an estimation for the circle radius
 

Protected Attributes

B2Vector3D m_hitA
 outer hit (position relevant for useful filter calculation) used for the filter calculation
 
B2Vector3D m_hitB
 outerCenter hit (position relevant for useful filter calculation) used for the filter calculation
 
B2Vector3D m_hitC
 innerCenter hit (position relevant for useful filter calculation) used for the filter calculation
 
B2Vector3D m_hitD
 inner hit (position relevant for useful filter calculation) used for the filter calculation
 
B2Vector3D m_centerABC
 estimation of a circleCenterPosition using hits A, B & C
 
B2Vector3D m_centerBCD
 estimation of a circleCenterPosition using hitsBA, C & D
 
double m_radiusABC
 estimation of the radius of the circle using hits A, B & C
 
double m_radiusBCD
 estimation of a radius of the circle using hitsBA, C & D
 
ThreeHitFilters m_threeHitFilter
 instance of ThreeHitFilters-class used for some internal calculations
 
bool m_circleCalculated
 initially set to false, will be set true if calcCircle() is used at least once
 

Detailed Description

The class 'FourHitFilters' bundles filter methods using 4 hits which are stored in B2Vector3Ds.

Definition at line 23 of file FourHitFilters.h.

Constructor & Destructor Documentation

◆ FourHitFilters() [1/2]

FourHitFilters ( )
inline

Empty constructor.

For initialisation only, an object generated this way is useless unless resetValues(a, b) is called at least once

Definition at line 28 of file FourHitFilters.h.

28  :
29  m_radiusABC(0.),
30  m_radiusBCD(0.),
31  m_circleCalculated(false) {}
double m_radiusABC
estimation of the radius of the circle using hits A, B & C
double m_radiusBCD
estimation of a radius of the circle using hitsBA, C & D
bool m_circleCalculated
initially set to false, will be set true if calcCircle() is used at least once

◆ FourHitFilters() [2/2]

FourHitFilters ( const B2Vector3D outer,
const B2Vector3D outerCenter,
const B2Vector3D innerCenter,
const B2Vector3D inner,
const double  magneticFieldStrength = 1.5 
)
inline

Constructor.

expects 4 hits in B2Vector3D format, first parameter is outer hit, second is outerCenter hit, third is innercenter hit, last one is the innermost hit, optional parameter sets strength of magnetic field (standard is 1.5T)

Definition at line 34 of file FourHitFilters.h.

Member Function Documentation

◆ calcDeltapT()

double calcDeltapT ( )

calculates dpt-value (dpt= difference in transverse momentum of 2 subsets of the hits), returning unit: GeV/c

TODO: evtly do a 'nan'-check for return values.

Definition at line 17 of file FourHitFilters.cc.

18 {
19  if (m_circleCalculated == false) { calcCircle(); }
20  return fabs(m_threeHitFilter.calcPt(m_radiusABC -
21  m_radiusBCD)); // , or, pT[GeV/c] = 0.299710*B[T]*r[m] = 0,449565*r[cm]/100 = 0.00449565*r[cm]
22 }
void calcCircle()
calculates an estimation of circleCenter position including an estimation for the circle radius
ThreeHitFilters m_threeHitFilter
instance of ThreeHitFilters-class used for some internal calculations
double calcPt()
calculates the estimation of the transverse momentum of the 3-hit-tracklet, returning unit: GeV/c

◆ resetMagneticField()

void resetMagneticField ( const double  magneticFieldStrength = 1.5)
inline

Overrides Constructor-Setup for magnetic field.

if no value is given, magnetic field is assumed to be Belle2-Detector standard of 1.5T

Definition at line 61 of file FourHitFilters.h.

◆ resetValues()

void resetValues ( const B2Vector3D outer,
const B2Vector3D outerCenter,
const B2Vector3D innerCenter,
const B2Vector3D inner 
)
inline

Overrides Constructor-Setup.

Needed if you want to reuse the instance instead of recreating one

Definition at line 49 of file FourHitFilters.h.


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