CbmRoot
|
#include <CbmL1GlobalTrackFinder.h>
Public Member Functions | |
CbmL1GlobalTrackFinder () | |
virtual | ~CbmL1GlobalTrackFinder () |
virtual void | Init () |
virtual Int_t | DoFind () |
virtual Int_t | FindTracks (CbmEvent *event) |
void | SetDefaultParticlePDG (int pdg=13) |
void | SetGlobalTracksArray (TClonesArray *tracks) |
void | SetStsTracksArray (TClonesArray *tracks) |
void | SetMuchTracksArray (TClonesArray *tracks) |
void | SetTrdTracksArray (TClonesArray *tracks) |
void | SetTofTracksArray (TClonesArray *tracks) |
void | FillEloss () |
Calculate the median energy loss for the tracks and fill the respective data members. | |
virtual void | Finish () |
void | SetDigiScheme (CbmStsDigiScheme *scheme) |
void | SetField (FairField *field) |
void | SetMvdHitArray (TClonesArray *hits) |
void | SetStsHitArray (TClonesArray *hits) |
void | SetTrackArray (TClonesArray *tracks) |
void | SetVerbose (Int_t verbose) |
Protected Member Functions | |
double | CalculateEloss (CbmStsTrack *cbmStsTrack) |
Protected Attributes | |
TClonesArray * | fGlobalTracks |
TClonesArray * | fStsTracks |
TClonesArray * | fMuchTracks |
TClonesArray * | fTrdTracks |
TClonesArray * | fTofTracks |
CbmStsDigiScheme * | fDigiScheme |
FairField * | fField |
TClonesArray * | fMvdHits |
TClonesArray * | fStsHits |
TClonesArray * | fTracks |
TClonesArray * | fStsClusters |
Int_t | fVerbose |
Private Member Functions | |
Int_t | CopyL1Tracks (CbmEvent *event=nullptr) |
void | CbmL1TrackToCbmTrack (CbmL1Track T, CbmTrack *track, int systemIdT) |
void | CbmL1TrackToCbmStsTrack (CbmL1Track T, CbmStsTrack *track) |
void | CbmL1TrackToCbmMuchTrack (CbmL1Track T, CbmMuchTrack *track, int systemIdT) |
void | CbmL1TrackToCbmTrdTrack (CbmL1Track T, CbmTrdTrack *track, int systemIdT) |
void | CbmL1TrackToCbmTofTrack (CbmL1Track T, CbmTofTrack *track, int systemIdT) |
CbmL1GlobalTrackFinder (const CbmL1GlobalTrackFinder &) | |
CbmL1GlobalTrackFinder & | operator= (const CbmL1GlobalTrackFinder &) |
ClassDef (CbmL1GlobalTrackFinder, 1) | |
double | VecMedian (std::vector< double > &vec) |
Static Private Member Functions | |
static constexpr int | MaxAdcVal () |
Definition at line 39 of file CbmL1GlobalTrackFinder.h.
CbmL1GlobalTrackFinder::CbmL1GlobalTrackFinder | ( | ) |
Default constructor
|
virtual |
Destructor
Definition at line 57 of file CbmL1GlobalTrackFinder.cxx.
|
private |
|
protectedinherited |
Median energy loss calculation for the tracks in event/timeslice Ported from CbmKFParticleFinderPID Description of the method given at 30th CBM CM https://indico.gsi.de/event/4760/session/4/contribution/80/material/slides/0.pdf
Definition at line 51 of file CbmStsTrackFinder.cxx.
References CbmStsTrack::ELossOverflow(), CbmStsTrackFinder::fStsClusters, CbmStsTrackFinder::fStsHits, CbmDigiManager::Get(), CbmStsHit::GetBackClusterId(), CbmStsCluster::GetCharge(), CbmCluster::GetDigi(), CbmStsHit::GetFrontClusterId(), CbmCluster::GetNofDigis(), CbmStsTrack::GetNofStsHits(), CbmStsTrack::GetStsHitIndex(), CbmPixelHit::GetX(), CbmPixelHit::GetY(), CbmHit::GetZ(), CbmDigiManager::Instance(), CbmStsTrackFinder::MaxAdcVal(), sqrt(), CbmStsTrackFinder::VecMedian(), x, and y.
Referenced by CbmStsTrackFinder::FillEloss().
|
private |
Definition at line 197 of file CbmL1GlobalTrackFinder.cxx.
References CbmTrack::AddHit(), cbm::kf::ConvertTrackParam(), CbmL1::fvExternalHits, CbmL1::Instance(), kMUCHPIXELHIT, CbmTrack::SetChiSq(), CbmTrack::SetNDF(), CbmTrack::SetParamFirst(), and CbmTrack::SetParamLast().
Referenced by CopyL1Tracks().
|
private |
Definition at line 165 of file CbmL1GlobalTrackFinder.cxx.
References CbmStsTrack::AddMvdHit(), CbmStsTrack::AddStsHit(), cbm::kf::ConvertTrackParam(), CbmL1::fvExternalHits, CbmL1::Instance(), CbmTrack::SetChiSq(), CbmTrack::SetFirstHitTime(), CbmTrack::SetFirstHitTimeError(), CbmTrack::SetFlag(), CbmTrack::SetLastHitTime(), CbmTrack::SetLastHitTimeError(), CbmTrack::SetNDF(), CbmTrack::SetParamFirst(), CbmTrack::SetParamLast(), CbmTrack::SetPidHypo(), CbmTrack::SetStartTime(), and CbmTrack::SetStartTimeError().
Referenced by CopyL1Tracks().
|
private |
Definition at line 243 of file CbmL1GlobalTrackFinder.cxx.
References CbmTrack::AddHit(), cbm::kf::ConvertTrackParam(), CbmL1::fvExternalHits, CbmL1::Instance(), kTOFHIT, CbmTrack::SetChiSq(), CbmTrack::SetNDF(), CbmTrack::SetParamFirst(), and CbmTrack::SetParamLast().
Referenced by CopyL1Tracks().
|
private |
Convert detector specific track info to a detector track
Definition at line 152 of file CbmL1GlobalTrackFinder.cxx.
References cbm::kf::ConvertTrackParam(), cbm::algo::kf::TrackParamBase< T >::GetChiSq(), cbm::algo::kf::TrackParamBase< T >::GetNdf(), CbmTrack::SetChiSq(), CbmTrack::SetNDF(), CbmTrack::SetParamFirst(), CbmTrack::SetParamLast(), and CbmL1Track::TLast.
|
private |
Definition at line 220 of file CbmL1GlobalTrackFinder.cxx.
References CbmTrack::AddHit(), cbm::kf::ConvertTrackParam(), CbmL1::fvExternalHits, CbmL1::Instance(), kTRDHIT, CbmTrack::SetChiSq(), CbmTrack::SetNDF(), CbmTrack::SetParamFirst(), and CbmTrack::SetParamLast().
Referenced by CopyL1Tracks().
|
private |
|
private |
Copy the tracks from the L1-internal format and array to the output TClonesArray. @value Number of created tracks
Definition at line 66 of file CbmL1GlobalTrackFinder.cxx.
References CbmL1TrackToCbmMuchTrack(), CbmL1TrackToCbmStsTrack(), CbmL1TrackToCbmTofTrack(), CbmL1TrackToCbmTrdTrack(), cbm::kf::ConvertTrackParam(), fGlobalTracks, fMuchTracks, fStsTracks, fTofTracks, fTrdTracks, CbmL1::fvExternalHits, CbmL1::fvRecoTracks, CbmL1::Instance(), kGlobalTrack, kMuchTrack, kStsTrack, kTofTrack, kTrdTrack, CbmGlobalTrack::SetChi2(), CbmGlobalTrack::SetChiSqTime(), CbmGlobalTrack::SetFlag(), CbmGlobalTrack::SetMuchTrackIndex(), CbmGlobalTrack::SetNDF(), CbmGlobalTrack::SetNdfTime(), CbmGlobalTrack::SetParamFirst(), CbmGlobalTrack::SetParamLast(), CbmGlobalTrack::SetPidHypo(), CbmGlobalTrack::SetStsTrackIndex(), CbmGlobalTrack::SetTofTrackIndex(), and CbmGlobalTrack::SetTrdTrackIndex().
Referenced by DoFind(), and FindTracks().
|
virtual |
Track finding algorithm
Implements CbmStsTrackFinder.
Definition at line 265 of file CbmL1GlobalTrackFinder.cxx.
References CopyL1Tracks(), CbmStsTrackFinder::fTracks, CbmL1::Instance(), and CbmL1::Reconstruct().
|
inherited |
Calculate the median energy loss for the tracks and fill the respective data members.
Definition at line 111 of file CbmStsTrackFinder.cxx.
References CbmStsTrackFinder::CalculateEloss(), CbmStsTrackFinder::fTracks, and CbmStsTrack::SetELoss().
Referenced by CbmStsFindTracks::Exec(), and CbmStsFindTracksEvents::ProcessEvent().
|
virtual |
Execute track finding on one event
event | Pointer to event object @value Number of created tracks |
Implements CbmStsTrackFinder.
Definition at line 286 of file CbmL1GlobalTrackFinder.cxx.
References CopyL1Tracks(), CbmL1::Instance(), and CbmL1::Reconstruct().
Referenced by CbmGlobalFindTracksEvents::ProcessEvent(), and CbmL1GlobalFindTracksEvents::ProcessEvent().
|
inlinevirtualinherited |
Virtual method Finish. If needed, to be implemented in the concrete class. Executed at the end of the run.
Definition at line 66 of file CbmStsTrackFinder.h.
Referenced by CbmStsFindTracks::Finish().
|
virtual |
Initialisation
Reimplemented from CbmStsTrackFinder.
Definition at line 61 of file CbmL1GlobalTrackFinder.cxx.
Referenced by CbmGlobalFindTracksEvents::Init(), and CbmL1GlobalFindTracksEvents::Init().
|
inlinestaticconstexprprivateinherited |
Definition at line 103 of file CbmStsTrackFinder.h.
Referenced by CbmStsTrackFinder::CalculateEloss().
|
private |
void CbmL1GlobalTrackFinder::SetDefaultParticlePDG | ( | int | pdg = 13 | ) |
set a default particle mass for the track fit it is used during reconstruction for the multiple scattering and energy loss estimation
set a default particle mass for the track fit it is used during reconstruction for the multiple scattering estimation
Definition at line 301 of file CbmL1GlobalTrackFinder.cxx.
References CbmL1::fpAlgo, CbmL1::Instance(), and cbm::algo::ca::Framework::SetDefaultParticleMass().
|
inlineinherited |
Modifiers
Definition at line 77 of file CbmStsTrackFinder.h.
References CbmStsTrackFinder::fDigiScheme.
|
inlineinherited |
Definition at line 78 of file CbmStsTrackFinder.h.
References CbmStsTrackFinder::fField.
Referenced by CbmStsFindTracks::Init().
|
inline |
Definition at line 68 of file CbmL1GlobalTrackFinder.h.
References fGlobalTracks, and tracks.
Referenced by CbmGlobalFindTracksEvents::Init(), and CbmL1GlobalFindTracksEvents::Init().
|
inline |
Definition at line 70 of file CbmL1GlobalTrackFinder.h.
References fMuchTracks, and tracks.
Referenced by CbmGlobalFindTracksEvents::Init(), and CbmL1GlobalFindTracksEvents::Init().
|
inlineinherited |
Definition at line 79 of file CbmStsTrackFinder.h.
References CbmStsTrackFinder::fMvdHits, and hits.
Referenced by CbmGlobalFindTracksEvents::Init(), CbmL1GlobalFindTracksEvents::Init(), CbmStsFindTracks::Init(), and CbmStsFindTracksEvents::Init().
|
inlineinherited |
Definition at line 80 of file CbmStsTrackFinder.h.
References CbmStsTrackFinder::fStsHits, and hits.
Referenced by CbmGlobalFindTracksEvents::Init(), CbmL1GlobalFindTracksEvents::Init(), CbmStsFindTracks::Init(), and CbmStsFindTracksEvents::Init().
|
inline |
Definition at line 69 of file CbmL1GlobalTrackFinder.h.
References fStsTracks, and tracks.
Referenced by CbmGlobalFindTracksEvents::Init(), and CbmL1GlobalFindTracksEvents::Init().
|
inline |
Definition at line 72 of file CbmL1GlobalTrackFinder.h.
References fTofTracks, and tracks.
Referenced by CbmGlobalFindTracksEvents::Init(), and CbmL1GlobalFindTracksEvents::Init().
|
inlineinherited |
Definition at line 81 of file CbmStsTrackFinder.h.
References CbmStsTrackFinder::fTracks, and tracks.
Referenced by CbmStsFindTracks::Init(), and CbmStsFindTracksEvents::Init().
|
inline |
Definition at line 71 of file CbmL1GlobalTrackFinder.h.
References fTrdTracks, and tracks.
Referenced by CbmGlobalFindTracksEvents::Init(), and CbmL1GlobalFindTracksEvents::Init().
|
inlineinherited |
Definition at line 82 of file CbmStsTrackFinder.h.
References CbmStsTrackFinder::fVerbose.
Referenced by CbmStsFindTracks::Init().
|
privateinherited |
Calculate median value of a vector
Definition at line 35 of file CbmStsTrackFinder.cxx.
Referenced by CbmStsTrackFinder::CalculateEloss().
|
protectedinherited |
Definition at line 86 of file CbmStsTrackFinder.h.
Referenced by CbmStsTrackFinder::SetDigiScheme().
|
protectedinherited |
Definition at line 87 of file CbmStsTrackFinder.h.
Referenced by CbmStsTrackFinder::SetField().
|
protected |
Definition at line 75 of file CbmL1GlobalTrackFinder.h.
Referenced by CopyL1Tracks(), and SetGlobalTracksArray().
|
protected |
Definition at line 77 of file CbmL1GlobalTrackFinder.h.
Referenced by CopyL1Tracks(), and SetMuchTracksArray().
|
protectedinherited |
Definition at line 88 of file CbmStsTrackFinder.h.
Referenced by CbmStsTrackFinder::SetMvdHitArray().
|
protectedinherited |
Definition at line 91 of file CbmStsTrackFinder.h.
Referenced by CbmStsTrackFinder::CalculateEloss().
|
protectedinherited |
Definition at line 89 of file CbmStsTrackFinder.h.
Referenced by CbmStsTrackFinder::CalculateEloss(), CbmStsTrackFinderIdeal::DoFind(), and CbmStsTrackFinder::SetStsHitArray().
|
protected |
Definition at line 76 of file CbmL1GlobalTrackFinder.h.
Referenced by CopyL1Tracks(), and SetStsTracksArray().
|
protected |
Definition at line 79 of file CbmL1GlobalTrackFinder.h.
Referenced by CopyL1Tracks(), and SetTofTracksArray().
|
protectedinherited |
Definition at line 90 of file CbmStsTrackFinder.h.
Referenced by CbmL1StsTrackFinder::CopyL1Tracks(), DoFind(), CbmL1StsTrackFinder::DoFind(), CbmStsTrackFinderIdeal::DoFind(), CbmStsTrackFinder::FillEloss(), and CbmStsTrackFinder::SetTrackArray().
|
protected |
Definition at line 78 of file CbmL1GlobalTrackFinder.h.
Referenced by CopyL1Tracks(), and SetTrdTracksArray().
|
protectedinherited |
Definition at line 92 of file CbmStsTrackFinder.h.
Referenced by CbmStsTrackFinderIdeal::CbmStsTrackFinderIdeal(), CbmStsTrackFinderIdeal::CbmStsTrackFinderIdeal(), CbmStsTrackFinderIdeal::DoFind(), and CbmStsTrackFinder::SetVerbose().