CbmRoot
Loading...
Searching...
No Matches
cbm::algo::ca Namespace Reference

TODO: SZh 8.11.2022: add selection of parameterisation. More...

Namespaces

namespace  constants
 
namespace  utils
 

Classes

class  Branch
 
struct  CaHitTimeInfo
 
class  CloneMerger
 
class  Config
 Configuration of the CA tracking (excluding geometry) More...
 
class  ConfigReader
 A reader for the CA parameters from the YAML configuration files. More...
 
class  DataManager
 A manager for the input-output data of the CA tracking algorithm. More...
 
struct  DetIdTypeArr_t
 Array of types, indexed by EDetectorID. More...
 
class  DoubletSearchWindowMap
 Class DoubletSearchWindowMap parameterisation for hit search area for doublets in the CA tracking. More...
 
class  EnumArray
 Class of arrays, which can be accessed by an enum class entry as an index. More...
 
class  Framework
 
class  Grid
 Class for storing 2d objects in a grid. More...
 
class  GridArea
 Class for accessing objects in the 2D area that are stored in ca::Grid. More...
 
struct  GridEntry
 A class to store hit information on the ca::Grid. More...
 
class  Hit
 ca::Hit class describes a generic hit for the CA tracker More...
 
class  InputData
 
class  Iteration
 A set of parameters for the CA Track finder iteration. More...
 
class  McData
 This class represents a package for tracking-related data. More...
 
class  McHitInfo
 
struct  McLinkKey
 
struct  McMatch
 
class  McPoint
 Class describes a unified MC-point, used in CA tracking QA analysis. More...
 
class  McTrack
 
class  MisalignmentTolerance
 Misalignment correction for x, y and time measurements in tracking. More...
 
class  Monitor
 Monitor class for the CA tracking. More...
 
class  MonitorData
 Monitor data block. More...
 
class  ObjectInitController
 
class  Parameters
 A container for all external parameters of the CA tracking algorithm. More...
 
class  ParametersBuilder
 A builder class for ca::Parameters. More...
 
class  ParametersIO
 A class for loading/storing the Parameters objects. More...
 
class  PolynomialSearchWindow
 Class L1PolynomialSearchWindow defines a parameterisation of hits search window for CA tracking algorithm TODO: SZh 8.11.2022: add description. More...
 
class  Qa
 
class  Random
 A class, providing ROOT-free access to randomly generated variables. More...
 
class  SearchWindowMap
 Class SearchWindowMap parameterisation for hit search windows in the CA tracking. More...
 
class  SearchWindowMapContainer
 A container for search window maps. More...
 
class  SearchWindowMapContainerFactory
 A factory class for seach window map container. More...
 
class  Setup
 Setup representation for tracking. More...
 
class  Timer
 A timer class for the monitor. More...
 
class  TimesliceHeader
 Structure for keeping the current information on the timeslice. More...
 
class  Track
 Class representing an output track in the CA tracking algorithm. More...
 
class  TrackExtender
 
class  TrackFinder
 
class  TrackFinderWindow
 
class  TrackFitter
 
class  TrackingMonitor
 A monitor specialization for cbm::algo::ca::Framework class. More...
 
class  TrackParam
 TrackParam classes of different types. More...
 
class  Triplet
 Triplet class represents a short 3-hits track segment called a "triplet". More...
 
class  TripletConstructor
 
class  TripletConstructorSW
 
class  TripletSearchWindowMap
 Class TripletSearchWindowMap parameterisation for hit search area for Triplets in the CA tracking. More...
 
class  Vector
 
class  Vector< bool >
 
class  WindowData
 Container for internal data, processed on a single time window. More...
 

Typedefs

using HitIndex_t = unsigned int
 Index of ca::Hit.
 
using HitKeyIndex_t = unsigned int
 Index of the hit key (e.g. front / back cluster id for STS)
 
using IterationsContainer_t = Vector<Iteration>
 Type definitions for used containers.
 
using Tindex = int
 
using fvec = kf::fvec
 
using fscal = kf::fscal
 
using fmask = kf::fmask
 
using TrackingMonitorData = MonitorData<ECounter, ETimer>
 
template<typename T>
using DetIdArray_t = EnumArray<EDetectorID, T>
 Alias to array, indexed by the EDetectorID enum.
 
using MvdHit = ::cbm::algo::mvd::Hit
 Hit vector types.
 
using StsHit = ::cbm::algo::sts::Hit
 
using MuchHit = ::cbm::algo::much::Hit
 
using TrdHit = ::cbm::algo::trd::Hit
 
using TofHit = ::cbm::algo::tof::Hit
 
using HitTypes_t = DetIdTypeArr_t<MvdHit, StsHit, MuchHit, TrdHit, TofHit>
 
typedef TrackParam< fvecTrackParamV
 

Enumerations

enum  TrackingMode { kSts , kGlobal , kMcbm }
 
enum class  EDummy { END }
 Dummy enum, representing an array with zero elements. More...
 
enum class  ECounter {
  TrackingCall , SubTS , RecoTrack , RecoHit ,
  RecoHitUsed , Triplet , RecoMvdHit , RecoStsHit ,
  RecoMuchHit , RecoTrdHit , RecoTofHit , UndefinedMvdHit ,
  UndefinedStsHit , UndefinedMuchHit , UndefinedTrdHit , UndefinedTofHit ,
  END
}
 Counter keys for the CA algo monitor. More...
 
enum class  ETimer {
  TrackingChain , PrepareInputData , PrepareStsHits , PrepareTrdHits ,
  PrepareTofHits , InputDataTransmission , CaHitCreation , Tracking ,
  PrepareTimeslice , TrackingThread , PrepareThread , PrepareWindow ,
  TrackingWindow , InitWindow , PrepareGrid , FindTracks ,
  PrepareIteration , ConstructTriplets , SearchNeighbours , CreateTracks ,
  SuppressHitKeys , FitTracks , MergeClones , StoreTracksWindow ,
  StoreTracksFinal , Qa , END
}
 Timer keys for the CA algo monitor. More...
 
enum class  EDetectorID {
  kMvd = 0 , kSts , kMuch , kTrd ,
  kTof , END
}
 Enumeration for the tracking detector subsystems in CBM-CA. More...
 

Functions

template<fles::Subsystem subsys>
constexpr EDetectorID FromFlesSubsystem ()
 
template<EDetectorID detID>
constexpr fles::Subsystem ToFlesSubsystem ()
 
constexpr ECbmModuleId ToCbmModuleId (EDetectorID detID)
 Conversion map from EDetectorID to ECbmModuleId.
 
constexpr EDetectorID ToCaDetectorID (ECbmModuleId modId)
 Conversion map from EDetectorID to ECbmModuleId.
 

Variables

class cbm::algo::ca::WindowData _fvecalignment
 
constexpr DetIdArray_t< const char * > kDetName = {{"MVD", "STS", "MUCH", "TRD", "TOF"}}
 Detector subsystem names.
 
template<typename T1, typename T2 = T1>
constexpr T2 Undef
 Undefined values.
 
constexpr double ProtonMassD
 Proton mass [GeV/c2] (PDG 11.08.2022)
 
constexpr fscal SpeedOfLightInv
 Inverse speed of light [ns/cm].
 
constexpr double SpeedOfLightInvD
 Inverse speed of light [ns/cm].
 
constexpr double ProtonMassD
 Proton mass [GeV/c2] (PDG 11.08.2022)
 
constexpr fscal SpeedOfLightInv
 Inverse speed of light [ns/cm].
 
constexpr double SpeedOfLightInvD
 Inverse speed of light [ns/cm].
 

Detailed Description

TODO: SZh 8.11.2022: add selection of parameterisation.

CBM-specific definitions for CA-tracking.

Typedef Documentation

◆ DetIdArray_t

template<typename T>
using cbm::algo::ca::DetIdArray_t = EnumArray<EDetectorID, T>

Alias to array, indexed by the EDetectorID enum.

Note
To be used only in CBM-specific code

Definition at line 92 of file TrackingDefs.h.

◆ fmask

Definition at line 15 of file CaSimd.h.

◆ fscal

Definition at line 14 of file CaSimd.h.

◆ fvec

Definition at line 13 of file CaSimd.h.

◆ HitIndex_t

using cbm::algo::ca::HitIndex_t = unsigned int

Index of ca::Hit.

Definition at line 27 of file CaHit.h.

◆ HitKeyIndex_t

using cbm::algo::ca::HitKeyIndex_t = unsigned int

Index of the hit key (e.g. front / back cluster id for STS)

Definition at line 28 of file CaHit.h.

◆ HitTypes_t

◆ IterationsContainer_t

Type definitions for used containers.

Definition at line 38 of file CaParameters.h.

◆ MuchHit

using cbm::algo::ca::MuchHit = ::cbm::algo::much::Hit

Definition at line 106 of file TrackingDefs.h.

◆ MvdHit

using cbm::algo::ca::MvdHit = ::cbm::algo::mvd::Hit

Hit vector types.

Definition at line 104 of file TrackingDefs.h.

◆ StsHit

Definition at line 105 of file TrackingDefs.h.

◆ Tindex

using cbm::algo::ca::Tindex = int

Definition at line 50 of file CaFramework.h.

◆ TofHit

Definition at line 108 of file TrackingDefs.h.

◆ TrackingMonitorData

◆ TrackParamV

Definition at line 675 of file KfTrackParam.h.

◆ TrdHit

Definition at line 107 of file TrackingDefs.h.

Enumeration Type Documentation

◆ ECounter

enum class cbm::algo::ca::ECounter
strong

Counter keys for the CA algo monitor.

Enumerator
TrackingCall 

number of the routine calls

SubTS 

number of sub time-slices

RecoTrack 

number of reconstructed tracks

RecoHit 

number of reconstructed hits

RecoHitUsed 

number of used reconstructed hits

Triplet 

number of triplets

RecoMvdHit 

number of MVD hits in tracks

RecoStsHit 

number of STS hits in tracks

RecoMuchHit 

number of MUCH hits in tracks

RecoTrdHit 

number of TRD hits in tracks

RecoTofHit 

number of TOF hits in tracks

UndefinedMvdHit 

number of undefined MVD hits

UndefinedStsHit 

number of undefined STS hits

UndefinedMuchHit 

number of undefined MuCh hits

UndefinedTrdHit 

number of undefined TRD hits

UndefinedTofHit 

number of undefined TOF hits

END 

Definition at line 25 of file CaTrackingMonitor.h.

◆ EDetectorID

enum class cbm::algo::ca::EDetectorID
strong

Enumeration for the tracking detector subsystems in CBM-CA.

Enumerator
kMvd 
kSts 
kMuch 
kTrd 
kTof 
END 

Definition at line 215 of file CbmDefs.h.

◆ EDummy

enum class cbm::algo::ca::EDummy
strong

Dummy enum, representing an array with zero elements.

This enumeration is to be used as the default template parameter

Enumerator
END 

Definition at line 23 of file CaEnumArray.h.

◆ ETimer

enum class cbm::algo::ca::ETimer
strong

Timer keys for the CA algo monitor.

Enumerator
TrackingChain 
PrepareInputData 
PrepareStsHits 
PrepareTrdHits 
PrepareTofHits 
InputDataTransmission 
CaHitCreation 
Tracking 
PrepareTimeslice 
TrackingThread 
PrepareThread 
PrepareWindow 
TrackingWindow 
InitWindow 
PrepareGrid 
FindTracks 
PrepareIteration 

(iterations loop)

ConstructTriplets 
SearchNeighbours 
CreateTracks 
SuppressHitKeys 
FitTracks 
MergeClones 
StoreTracksWindow 
StoreTracksFinal 
Qa 
END 

Definition at line 51 of file CaTrackingMonitor.h.

◆ TrackingMode

Enumerator
kSts 
kGlobal 
kMcbm 

Definition at line 41 of file CaParameters.h.

Function Documentation

◆ FromFlesSubsystem()

template<fles::Subsystem subsys>
EDetectorID cbm::algo::ca::FromFlesSubsystem ( )
constexpr

Definition at line 44 of file TrackingDefs.h.

References END, kMuch, kMvd, kSts, kTof, and kTrd.

◆ ToCaDetectorID()

EDetectorID cbm::algo::ca::ToCaDetectorID ( ECbmModuleId modId)
constexpr

Conversion map from EDetectorID to ECbmModuleId.

Definition at line 242 of file CbmDefs.h.

References END, kMuch, kMuch, kMvd, kMvd, kSts, kSts, kTof, kTof, kTrd, and kTrd.

Referenced by cbm::ca::InputQaSetup::CreateSummary(), and cbm::ca::InputQaSetup::InitQa().

◆ ToCbmModuleId()

◆ ToFlesSubsystem()

template<EDetectorID detID>
fles::Subsystem cbm::algo::ca::ToFlesSubsystem ( )
constexpr

Definition at line 67 of file TrackingDefs.h.

References END, kMuch, kMvd, kSts, kTof, and kTrd.

Variable Documentation

◆ _fvecalignment

◆ kDetName

DetIdArray_t<const char*> cbm::algo::ca::kDetName = {{"MVD", "STS", "MUCH", "TRD", "TOF"}}
constexpr

Detector subsystem names.

Definition at line 112 of file TrackingDefs.h.

Referenced by cbm::algo::ca::Qa::Init(), and cbm::algo::TrackingChain::ReadHits().

◆ ProtonMassD [1/2]

double cbm::algo::ca::constants::phys::ProtonMassD
constexpr

Proton mass [GeV/c2] (PDG 11.08.2022)

Definition at line 85 of file CaDefs.h.

Referenced by cbm::algo::ca::TrackFinder::FindTracks().

◆ ProtonMassD [2/2]

double cbm::algo::ca::constants::phys::ProtonMassD
constexpr

Proton mass [GeV/c2] (PDG 11.08.2022)

Definition at line 85 of file CaDefs.h.

◆ SpeedOfLightInv [1/2]

fscal cbm::algo::ca::constants::phys::SpeedOfLightInv
constexpr

Inverse speed of light [ns/cm].

Definition at line 96 of file CaDefs.h.

Referenced by cbm::algo::ca::TrackFinder::FindTracks().

◆ SpeedOfLightInv [2/2]

fscal cbm::algo::ca::constants::phys::SpeedOfLightInv
constexpr

Inverse speed of light [ns/cm].

Definition at line 96 of file CaDefs.h.

◆ SpeedOfLightInvD [1/2]

double cbm::algo::ca::constants::phys::SpeedOfLightInvD
constexpr

Inverse speed of light [ns/cm].

Definition at line 87 of file CaDefs.h.

Referenced by cbm::algo::ca::TrackFinder::FindTracks().

◆ SpeedOfLightInvD [2/2]

double cbm::algo::ca::constants::phys::SpeedOfLightInvD
constexpr

Inverse speed of light [ns/cm].

Definition at line 87 of file CaDefs.h.

◆ Undef

template<typename T1, typename T2 = T1>
T2 cbm::algo::ca::constants::Undef
constexpr

Undefined values.

Definition at line 117 of file CaDefs.h.