PandaRoot
PndSTEMvdHitFinder Class Reference

#include <PndSTEMvdHitFinder.h>

Inheritance diagram for PndSTEMvdHitFinder:
PndSTETrackBase PndSTESettings

Public Member Functions

 PndSTEMvdHitFinder ()
 
virtual ~PndSTEMvdHitFinder ()
 
std::vector< PndSdsHit * > FindBestHits3D (PndRiemannTrack mvdRiemannTrack, TClonesArray *mvdPixelHitsArray, TClonesArray *mvdStripHitsArray)
 Function for finding the best fitting MVD hits to the track in 3D. More...
 
std::vector< PndSdsHit * > FindBestHitsFromRiemannTrack (PndRiemannTrack riemannTrack, TClonesArray *mvdPixelHitsArray, TClonesArray *mvdStripHitsArray)
 Function to find the hits fitting the best with one Riemann track. More...
 
std::vector< PndSdsHit * > FindBestHitsWithHelix (PndTrack *mvdTrack, TClonesArray *mvdPixelHitsArray, TClonesArray *mvdStripHitsArray)
 Function for finding the best fitting MVD hits to the track in 3D. More...
 
void SetXYPosTrack (double x, double y)
 Funtion to set the x and y psition of the first hit of the track. More...
 
- Public Member Functions inherited from PndSTETrackBase
 PndSTETrackBase ()
 
virtual ~PndSTETrackBase ()
 
PndTrack GetTrack (int i)
 Function to get a track after the refit. More...
 
PndTrackCand GetTrackCand (int i)
 Function to get a track candidate after the refit. More...
 
PndRiemannTrack GetRiemannTrack (int i)
 Function to get a Riemann track after the refit. More...
 
int NumTrackCands ()
 Function to get the number of track candidates after the refit. More...
 
int NumRiemannTracks ()
 Function to get the number of Riemann tracks after the refit. More...
 
- Public Member Functions inherited from PndSTESettings
 PndSTESettings ()
 
virtual ~PndSTESettings ()
 
void SetMagneticField ()
 Function to set the magnetic field strength. More...
 
double GetMagneticField ()
 
void IncludeDetector (bool includeMvd, bool includeGem, bool includeBtof)
 Function to choose which detectors to include. More...
 
void SetMvdHitDist (Double_t val)
 Function to set the maximum allowed distance of closest approach between the MVD hit and the track. More...
 
void SetGemHitDist (Double_t val)
 Function to set the maximum allowed distance of closest approach between the GEM hit and the track. More...
 
void SetBtofHitDist (Double_t val)
 Function to set the maximum allowed distance of closest approach between the BTOF hit and the track. More...
 
void SetUseHelix (Bool_t val)
 Function to set ia a helix extrapolation should be used in the procedure. More...
 
void SetUseRiemannTrack (Bool_t val)
 Function to set ia a Riemann track should be used in the procedure. More...
 
void SetUseIdealTrack (bool val)
 Function to choose to give an ideal track as input to the MVD hit fiinding. More...
 
void SetRunIn3D (bool val)
 Function to choose if the 2D or 3D function should be used. More...
 
void SetNoAreaExclusion (bool val)
 Function to choose if there is an area exclusion in the Mvd hit inclusion. More...
 
void SetUseHemisphere (bool useHemisphere)
 Function to choose to use the hemispehere method for excluding a certain area of the detector. More...
 
void SetWeightsMvdHit (double weight)
 Function to set the proper weights for the MVD hits for the Riemann fitting procedure. More...
 
void SetDrawTracks (bool val)
 

Additional Inherited Members

- Protected Member Functions inherited from PndSTETrackBase
 ClassDef (PndSTETrackBase, 1)
 
- Protected Member Functions inherited from PndSTESettings
 ClassDef (PndSTESettings, 1)
 
- Protected Attributes inherited from PndSTETrackBase
std::map< PndSdsHit *, int > fMapMvdHitBranchId
 
std::vector< PndTrackCandfTrackCands
 
std::vector< PndTrackfTracks
 
std::vector< PndRiemannTrackfRiemannTracks
 
double fxc
 x-coordinate of the center of gravity of the hits in one track, used for computing hemispheres The x-coordinate but not y-coordinate is not used to test which hemisphere the hit is in More...
 
double fLineSlope = 0
 
std::vector< double > fChi2OneHit
 
double fSumChi2 = 0
 
double fReducedChi2 = 0
 
std::map< double, PndSdsHit * > fMapChi2OneHitMvdHit
 
std::vector< double > fChi2OneHitSZ
 
double fSumChi2SZ = 0
 
double fReducedChi2SZ = 0
 
std::map< double, PndSdsHit * > fMapChi2OneHitMvdHitSZ
 
- Protected Attributes inherited from PndSTESettings
bool fIncludeMvd = false
 
bool fIncludeGem = false
 
bool fIncludeBtof = false
 
double fBz
 
bool fUseHelix = false
 
bool fIdealTrack = false
 
bool fUseRiemann = false
 
bool fRunIn3D = false
 
bool fUseHemisphere = false
 
bool fNoMVDAreaExclusion = false
 
bool fAdjustWeightsMvd = false
 
double fWeightMVD = -1.0
 
double fMvdHitDist = 9999999.0
 
double fGemHitDist = 9999999.0
 
double fBtofHitDist = 9999999.0
 
bool fDrawTrack = false
 

Detailed Description

Definition at line 31 of file PndSTEMvdHitFinder.h.

Constructor & Destructor Documentation

◆ PndSTEMvdHitFinder()

PndSTEMvdHitFinder::PndSTEMvdHitFinder ( )
inline

Default Constructor

Definition at line 34 of file PndSTEMvdHitFinder.h.

34 {};

◆ ~PndSTEMvdHitFinder()

virtual PndSTEMvdHitFinder::~PndSTEMvdHitFinder ( )
inlinevirtual

Default Destructor

Definition at line 37 of file PndSTEMvdHitFinder.h.

References FindBestHits3D(), FindBestHitsFromRiemannTrack(), and FindBestHitsWithHelix().

37  {
38 
39  };

Member Function Documentation

◆ FindBestHits3D()

std::vector<PndSdsHit *> PndSTEMvdHitFinder::FindBestHits3D ( PndRiemannTrack  mvdRiemannTrack,
TClonesArray *  mvdPixelHitsArray,
TClonesArray *  mvdStripHitsArray 
)

Function for finding the best fitting MVD hits to the track in 3D.

Parameters
mvdRiemannTrackAlready fitted Riemann track from STT tracking
mvdPixelHitsArrayArray of MVD pixel hits
mvdStripHitsArrayArray of MVD strip hits
Returns
A vector of compatible hits

Referenced by ~PndSTEMvdHitFinder().

◆ FindBestHitsFromRiemannTrack()

std::vector<PndSdsHit *> PndSTEMvdHitFinder::FindBestHitsFromRiemannTrack ( PndRiemannTrack  riemannTrack,
TClonesArray *  mvdPixelHitsArray,
TClonesArray *  mvdStripHitsArray 
)

Function to find the hits fitting the best with one Riemann track.

This function only handles barrel layers

Parameters
riemannTrackAlready fitted Riemann track from STT tracking
mvdPixelHitsArrayArray of MVD pixel hits
mvdStripHitsArrayArray of MVD strip hits
Returns
A vector of compatible hits

Referenced by ~PndSTEMvdHitFinder().

◆ FindBestHitsWithHelix()

std::vector<PndSdsHit *> PndSTEMvdHitFinder::FindBestHitsWithHelix ( PndTrack mvdTrack,
TClonesArray *  mvdPixelHitsArray,
TClonesArray *  mvdStripHitsArray 
)

Function for finding the best fitting MVD hits to the track in 3D.

A helix propagation is used to find the best hits

Parameters
mvdTrackAlready fitted track from STT tracking
mvdPixelHitsArrayArray of MVD pixel hits
mvdStripHitsArrayArray of MVD strip hits
Returns
A vector of compatible hits

Referenced by ~PndSTEMvdHitFinder().

◆ SetXYPosTrack()

void PndSTEMvdHitFinder::SetXYPosTrack ( double  x,
double  y 
)
inline

Funtion to set the x and y psition of the first hit of the track.

Used for the quadrant exclusion

Parameters
xX-position of the first hit in the track
yY-position of the first hit in the track

Definition at line 72 of file PndSTEMvdHitFinder.h.

73  {
74  fXposTrack = x;
75  fYposTrack = y;
76  }

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