PandaRoot
PndHoughUtilities Class Reference

#include <PndHoughUtilities.h>

Public Member Functions

 PndHoughUtilities (PndHoughData *fData)
 
virtual ~PndHoughUtilities ()
 
std::vector< double > getCircleFromPndTrack (PndTrack &tr)
 Determines the circle from a PndTrack. More...
 
double Pt (double B, double r)
 Determines the transverse momentum. More...
 
std::tuple< TVector3, Int_t > getPandqforHit (int i, double B, TVector3 &circle, PndTrackCand &myCand)
 Determines the charge q and the momentum p of a hit. More...
 
FairTrackParP getTrackParPForHit (Int_t i, Double_t B, PndTrackCand &myCand, TVector3 &circle)
 Helper function to find PndTrack parameters from a circle. More...
 
PndTrack getPndTrack (Double_t B, PndTrackCand &myCand, TVector3 &circle)
 Determined the PndTrack for a given track candidate and a circle. More...
 
TVector2 calcPointOnCircle (Int_t i, PndTrackCand &myCand, std::vector< double > &circle)
 Finds the point on a circle closest to the given hit point. More...
 
TVector2 findCorrectIntersectionPoint (std::vector< double > &intersectionPoints, TVector2 &point)
 Finds the correct intersection point. More...
 
std::vector< double > calcIntersectionPointCircleLine (std::vector< double > &circle, double m, double b, double Ax)
 Finds the intersection point between a line and a circle. More...
 
double calcDistanceTrackCandToTrack (PndTrackCand &trackCand, std::vector< double > &circle)
 Calculates the sum of distances from each hit of a track to the track circle. More...
 
double calcDistanceFromIsochroneToCircle (double &xi, double &yi, double &ri, double &xT, double &yT, double &rT)
 Calculates the distance from a hitpoint (MVD hit or nearest point of stt isochrone to track) to a circle from hough space. More...
 

Detailed Description

PndHoughUtilities

Author
Anna Alicke a.ali.nosp@m.cke@.nosp@m.fz-ju.nosp@m.elic.nosp@m.h.de
Since
29.10.2018 23.11.2021
Version
3.1

PANDA class to handle PndTracks vs Circles Task level RECO

Definition at line 37 of file PndHoughUtilities.h.

Constructor & Destructor Documentation

◆ PndHoughUtilities()

PndHoughUtilities::PndHoughUtilities ( PndHoughData fData)
inline

Definition at line 40 of file PndHoughUtilities.h.

40  : fMapFairLinktoFairHit(fData->GetMapFairLinktoFairHit()), fMapFairLinktoIsochrone(fData->GetMapFairLinktoIsochrone())
41  {
42  ioman = FairRootManager::Instance();
43  };
std::map< FairLink, FairHit * > GetMapFairLinktoFairHit() const
Returns the map linking FairLinks to FairHits.
Definition: PndHoughData.h:90
std::map< FairLink, Double_t > GetMapFairLinktoIsochrone() const
Returns the map linking FairLinks to isochrone radii.
Definition: PndHoughData.h:92

◆ ~PndHoughUtilities()

Member Function Documentation

◆ calcDistanceFromIsochroneToCircle()

double PndHoughUtilities::calcDistanceFromIsochroneToCircle ( double &  xi,
double &  yi,
double &  ri,
double &  xT,
double &  yT,
double &  rT 
)

Calculates the distance from a hitpoint (MVD hit or nearest point of stt isochrone to track) to a circle from hough space.

Referenced by ~PndHoughUtilities().

◆ calcDistanceTrackCandToTrack()

double PndHoughUtilities::calcDistanceTrackCandToTrack ( PndTrackCand trackCand,
std::vector< double > &  circle 
)

Calculates the sum of distances from each hit of a track to the track circle.

Referenced by ~PndHoughUtilities().

◆ calcIntersectionPointCircleLine()

std::vector<double> PndHoughUtilities::calcIntersectionPointCircleLine ( std::vector< double > &  circle,
double  m,
double  b,
double  Ax 
)

Finds the intersection point between a line and a circle.

Referenced by ~PndHoughUtilities().

◆ calcPointOnCircle()

TVector2 PndHoughUtilities::calcPointOnCircle ( Int_t  i,
PndTrackCand myCand,
std::vector< double > &  circle 
)

Finds the point on a circle closest to the given hit point.

Referenced by ~PndHoughUtilities().

◆ findCorrectIntersectionPoint()

TVector2 PndHoughUtilities::findCorrectIntersectionPoint ( std::vector< double > &  intersectionPoints,
TVector2 &  point 
)

Finds the correct intersection point.

Referenced by ~PndHoughUtilities().

◆ getCircleFromPndTrack()

std::vector<double> PndHoughUtilities::getCircleFromPndTrack ( PndTrack tr)

Determines the circle from a PndTrack.

Referenced by ~PndHoughUtilities().

◆ getPandqforHit()

std::tuple<TVector3, Int_t> PndHoughUtilities::getPandqforHit ( int  i,
double  B,
TVector3 &  circle,
PndTrackCand myCand 
)

Determines the charge q and the momentum p of a hit.

Referenced by ~PndHoughUtilities().

◆ getPndTrack()

PndTrack PndHoughUtilities::getPndTrack ( Double_t  B,
PndTrackCand myCand,
TVector3 &  circle 
)

Determined the PndTrack for a given track candidate and a circle.

Referenced by ~PndHoughUtilities().

◆ getTrackParPForHit()

FairTrackParP PndHoughUtilities::getTrackParPForHit ( Int_t  i,
Double_t  B,
PndTrackCand myCand,
TVector3 &  circle 
)

Helper function to find PndTrack parameters from a circle.

Referenced by ~PndHoughUtilities().

◆ Pt()

double PndHoughUtilities::Pt ( double  B,
double  r 
)

Determines the transverse momentum.

Referenced by ~PndHoughUtilities().


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