PandaRoot
PndTrackingQA Class Reference

Performs quality assurance tests on PndTrack and PndTrackCandidates. More...

#include <PndTrackingQA.h>

Public Member Functions

 PndTrackingQA (TString trackBranchName, TString idealTrackName, Bool_t pndTrackNotTrackCand=kTRUE)
 constructor More...
 
 PndTrackingQA (TString trackBranchName, TString idealTrackName, PndTrackFunctor *posTrack, Bool_t pndTrackNotTrackCand=kTRUE)
 second constructor More...
 
virtual ~PndTrackingQA ()
 
virtual void Init ()
 
void AddHitsBranchName (TString name)
 Add branch names of hits which should be considere in the tracking QA. More...
 
void SetHitsBranchNames (std::vector< TString > names)
 
void SetSttInfo (TClonesArray *sttHitArray, TClonesArray *sttTubeArray)
 STT info if a hit was in a skewed or parallel tube is needed. Therefore the TClonesArray with the STTHits and the tube array created by PndSttMapCreator has to be set. More...
 
void SetVerbose (int val)
 
void AnalyseEvent (TClonesArray *recoTrackInfo, TClonesArray *mcTrackInfo)
 Main method of algorithms. More...
 

Protected Member Functions

std::map< FairLink, PndTrackingQAMCInfo * > FillMCTrackInfo (TClonesArray *mcTrackInfo)
 
double CalcPCA (PndTrack *track)
 
int GetMCInfoQualification (PndTrackingQAMCInfo *mcInfo, PndTrack *idealTrack)
 
std::map< TString, FairMultiLinkedData > AnalyseTrackCand (PndTrackCand *trackCand)
 
FairMultiLinkedData GetMCInfoForBranch (TString branchName, PndTrackCand *trackCand)
 
void PrintTrackInfo (std::map< TString, FairMultiLinkedData > info)
 
FairLink GetMostProbableMCTrack (std::map< TString, FairMultiLinkedData > &trackInfo)
 
PndTrackingQARecoInfo GetRecoInfoFromRecoTrack (FairLink trackId, PndTrackingQAMCInfo *mcTrackInfo)
 
void AssociateRecoTracksToMCTracks (PndTrackingQARecoInfo &recoInfo)
 

Detailed Description

Performs quality assurance tests on PndTrack and PndTrackCandidates.

Analyses if hits in found PndTrack(Cands) are comming from the same MC track, checks how many MC tracks have been found, determines efficiency and purity information and assigns a quality label to each found track. The result is stored in two TClonesArrays, one for the information per reconstructed track one for each MC track. Needs as an input the reconstructed track data and, as a basis, the output of an ideal tracking algorithm from the same data.

Date
21.06.2023
Author
Tobias Stockmanns t.sto.nosp@m.ckma.nosp@m.nns@f.nosp@m.z-ju.nosp@m.elich.nosp@m..de

Definition at line 25 of file PndTrackingQA.h.

Constructor & Destructor Documentation

◆ PndTrackingQA() [1/2]

PndTrackingQA::PndTrackingQA ( TString  trackBranchName,
TString  idealTrackName,
Bool_t  pndTrackNotTrackCand = kTRUE 
)

constructor

Parameters
trackBranchNamename of the branch containing the track or trackCand data
idealTrackNamename of the track data from the ideal track finder
pndTrackNotTrackCanddecides if the trackBranch contains PndTracks or PndTrackCands

◆ PndTrackingQA() [2/2]

PndTrackingQA::PndTrackingQA ( TString  trackBranchName,
TString  idealTrackName,
PndTrackFunctor posTrack,
Bool_t  pndTrackNotTrackCand = kTRUE 
)

second constructor

Parameters
trackBranchNamename of the branch containing the track or trackCand data
idealTrackNamename of the track data from the ideal track finder
posTrackPndTrackFunctor which determines if a track is reconstructible or not
pndTrackNotTrackCanddecides if the trackBranch contains PndTracks or PndTrackCands

◆ ~PndTrackingQA()

virtual PndTrackingQA::~PndTrackingQA ( )
virtual

Member Function Documentation

◆ AddHitsBranchName()

void PndTrackingQA::AddHitsBranchName ( TString  name)
inline

Add branch names of hits which should be considere in the tracking QA.

Definition at line 54 of file PndTrackingQA.h.

54 { fBranchNames.push_back(name); }

◆ AnalyseEvent()

void PndTrackingQA::AnalyseEvent ( TClonesArray *  recoTrackInfo,
TClonesArray *  mcTrackInfo 
)

Main method of algorithms.

Parameters
recoTrackInfoempty TClonesArray of type PndTrackingQARecoInfo to store reco info data
mcTrackInfoempty TClonesArray of type PndTrackingQAMCInfo to store mc info data

Referenced by SetVerbose().

◆ AnalyseTrackCand()

std::map<TString, FairMultiLinkedData> PndTrackingQA::AnalyseTrackCand ( PndTrackCand trackCand)
protected

Referenced by SetVerbose().

◆ AssociateRecoTracksToMCTracks()

void PndTrackingQA::AssociateRecoTracksToMCTracks ( PndTrackingQARecoInfo recoInfo)
protected

Referenced by SetVerbose().

◆ CalcPCA()

double PndTrackingQA::CalcPCA ( PndTrack track)
protected

Referenced by SetVerbose().

◆ FillMCTrackInfo()

std::map<FairLink, PndTrackingQAMCInfo *> PndTrackingQA::FillMCTrackInfo ( TClonesArray *  mcTrackInfo)
protected

Referenced by SetVerbose().

◆ GetMCInfoForBranch()

FairMultiLinkedData PndTrackingQA::GetMCInfoForBranch ( TString  branchName,
PndTrackCand trackCand 
)
protected

Referenced by SetVerbose().

◆ GetMCInfoQualification()

int PndTrackingQA::GetMCInfoQualification ( PndTrackingQAMCInfo mcInfo,
PndTrack idealTrack 
)
protected

Referenced by SetVerbose().

◆ GetMostProbableMCTrack()

FairLink PndTrackingQA::GetMostProbableMCTrack ( std::map< TString, FairMultiLinkedData > &  trackInfo)
protected

Referenced by SetVerbose().

◆ GetRecoInfoFromRecoTrack()

PndTrackingQARecoInfo PndTrackingQA::GetRecoInfoFromRecoTrack ( FairLink  trackId,
PndTrackingQAMCInfo mcTrackInfo 
)
protected

Referenced by SetVerbose().

◆ Init()

virtual void PndTrackingQA::Init ( )
virtual

◆ PrintTrackInfo()

void PndTrackingQA::PrintTrackInfo ( std::map< TString, FairMultiLinkedData >  info)
protected

Referenced by SetVerbose().

◆ SetHitsBranchNames()

void PndTrackingQA::SetHitsBranchNames ( std::vector< TString >  names)
inline

Definition at line 55 of file PndTrackingQA.h.

55 { fBranchNames = names; }

◆ SetSttInfo()

void PndTrackingQA::SetSttInfo ( TClonesArray *  sttHitArray,
TClonesArray *  sttTubeArray 
)
inline

STT info if a hit was in a skewed or parallel tube is needed. Therefore the TClonesArray with the STTHits and the tube array created by PndSttMapCreator has to be set.

Definition at line 63 of file PndTrackingQA.h.

64  {
65  fSttHitArray = sttHitArray;
66  fSttTubeArray = sttTubeArray;
67  }

◆ SetVerbose()


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