CbmRoot
Loading...
Searching...
No Matches
CbmL1 Class Reference

#include <CbmL1.h>

Inheritance diagram for CbmL1:
[legend]
Collaboration diagram for CbmL1:
[legend]

Classes

struct  TH1FParameters
 

Public Types

enum class  EInitMode { Full , Param }
 
using DFSET = std::set<std::pair<int, int>>
 

Public Member Functions

 CbmL1 ()
 Default constructor.
 
 CbmL1 (const char *name, Int_t verbose=1, Int_t performance=0)
 
 CbmL1 (const CbmL1 &)=delete
 Copy constructor.
 
 CbmL1 (CbmL1 &&)=delete
 Move constructor.
 
CbmL1operator= (const CbmL1 &)=delete
 Copy assignment operator.
 
CbmL1operator= (CbmL1 &&)=delete
 Move assignment operator.
 
 ~CbmL1 ()
 Destructor.
 
virtual InitStatus Init ()
 Defines action in the beginning of the run (initialization)
 
virtual InitStatus ReInit ()
 Reruns the initialization.
 
void Finish ()
 Defines action in the end of the run (saves results)
 
const cbm::algo::ca::McDataGetMCData () const
 Gets reference to MC data object.
 
void DisableTrackingStation (ca::EDetectorID detID, int iSt)
 Disables tracking station for a given detector subsystem.
 
void SetInitMode (EInitMode mode)
 Sets initialization mode.
 
void SetSafeMaterialInitialization (bool val=true)
 
void SetMaterialBudgetNbins (int nBinsPerDimension)
 Sets material budget binning.
 
void SetMaterialBudgetNrays (int nRaysPerDimension)
 Sets material budget n rays per dimansion in each bin.
 
void SetMaterialBudgetPitch (double pitchCm)
 Sets material budget minimal bin size in cm.
 
void SetMaterialBudgetParallelProjection ()
 
void SetConfigUser (const char *path)
 Sets user configuration filename.
 
void SetParameterFilename (const char *filename)
 Sets a name for the ca-parameter file.
 
void SetSetupFilename (const char *filename)
 Sets a name for the kf-setup file.
 
void SetOutputDataDir (const char *dirname)
 Sets a name for parameters output dir.
 
void SetOutputMcTripletsTreeFilename (const char *filename)
 Sets output file for MC triplets tree If the filename is empty string, tree is not filled.
 
const auto & GetQaHits () const
 
void SetExtrapolateToTheEndOfSTS (bool b)
 
void SetStsOnlyMode ()
 
void SetMcbmMode ()
 
void SetGlobalMode ()
 
void Reconstruct (CbmEvent *event=nullptr)
 
void SetMvdMaterialBudgetFileName (const TString &)
 Obsolete setters to be removed.
 
void SetStsMaterialBudgetFileName (const TString &)
 Sets material budget file name for STS.
 
void SetMuchMaterialBudgetFileName (const TString &)
 Sets material budget file name for MuCh.
 
void SetTrdMaterialBudgetFileName (const TString &)
 Sets material budget file name for TRD.
 
void SetTofMaterialBudgetFileName (const TString &)
 Sets material budget file name for TOF.
 

Static Public Member Functions

static CbmL1Instance ()
 Pointer to CbmL1 instance.
 
static constexpr const char * GetDetectorName (ca::EDetectorID detectorID)
 Utility to map the L1DetectorID items into detector names.
 
static double boundedGaus (double sigma)
 

Public Attributes

ca::TrackingMonitor fMonitor {}
 Tracking monitor.
 
ca::FrameworkfpAlgo = nullptr
 Pointer to the L1 track finder algorithm.
 
ca::TrackingMode fTrackingMode = ca::TrackingMode::kSts
 Tracking mode.
 
ca::Vector< CbmL1TrackfvRecoTracks = {"CbmL1::fvRecoTracks"}
 Reconstructed tracks container.
 
ca::Vector< CbmL1HitIdfvExternalHits = {"CbmL1::fvExternalHits"}
 Array of hits.
 

Private Member Functions

void IdealTrackFinder ()
 Runs ideal track finder: copies all MC-tracks into reconstructed tracks.
 
void Fill_vMCTracks ()
 Fills the fvMCTracks vector and the fmMCTracksMap.
 
template<ca::EDetectorID DetId>
std::tuple< int, std::vector< int > > MatchHitWithMc (int iHit) const
 Matches hit with MC point.
 
void FieldApproxCheck ()
 
void FieldIntegralCheck ()
 
void TimeHist ()
 
void SetRandomSeed (unsigned int)
 Sets random seed to CA internal random generator.
 
void EfficienciesPerformance (bool doFinish=kFALSE)
 Calculates tracking efficiencies (counters)
 
void TrackFitPerformance ()
 
void FillFitHistos (cbm::algo::kf::TrackParamV &tr, const cbm::algo::ca::McPoint &mc, bool isTimeFitted, TH1F *h[])
 
void HistoPerformance ()
 Fills performance histograms.
 
void DumpMCTripletsToTree ()
 
void DefineSTAPNames ()
 Defines names for output in STAP mode.
 
void WriteSTAPParamObject ()
 Writes initialized L1Parameters object to file "".
 
void WriteSTAPAlgoInputData (int iJob=0)
 
void WriteSTAPPerfInputData ()
 
void ReadSTAPParamObject ()
 
void ReadSTAPAlgoInputData (int iJob=0)
 
void ReadSTAPPerfInputData ()
 
void WriteHistosCurFile (TObject *obj)
 
void DumpMaterialToFile (TString fileName, std::shared_ptr< const cbm::algo::ca::Parameters< double > > par)
 
 ClassDef (CbmL1, 0)
 

Static Private Member Functions

static std::istream & eatwhite (std::istream &is)
 
static void writedir2current (TObject *obj)
 

Private Attributes

std::string fInputDataFilename {}
 File name to read/write input hits.
 
std::string fsUserConfig {}
 User config path.
 
std::unique_ptr< cbm::ca::TimeSliceReaderfpTSReader = nullptr
 event/TS reader
 
std::unique_ptr< cbm::ca::MCModulefpMCModule = nullptr
 MC module.
 
cbm::algo::ca::McData fMCData
 MC Data object.
 
std::shared_ptr< ca::DataManagerfpIODataManager = nullptr
 Input-output data manager.
 
bool fDoSafeMaterialInitialization {false}
 
double fTargetX {1.e10}
 target position X
 
double fTargetY {1.e10}
 target position Y
 
double fTargetZ {1.e10}
 target position Z
 
int fNStations = 0
 number of total active detector stations
 
Int_t fPerformance = 0
 performance mode: 0 - w\o perf. 1 - L1-Efficiency definition. 2 - QA-Eff.definition
 
double fTrackingTime = 0.
 time of track finding procedure
 
int fSTAPDataMode = 4
 Option to work with files for the standalone mode.
 
TString fSTAPDataDir = ""
 Name of input/output directory for running in a STAP mode.
 
TString fSTAPDataPrefix = "test"
 Name of input/output file prefix. The prefix is defined by output TTree file.
 
TString fSTAPParamFile = ""
 Name of the parameter file (generated automatically, if not provided manually)
 
TString fSTAPSetupFile = ""
 Name of the setup file (generated automatically, if not provided manually)
 
Int_t fTrackingLevel = 2
 
Double_t fMomentumCutOff = 0.1
 
int fEventNo = 0
 Current number of event/TS.
 
int fNofRecoTracks = 0
 Total number of reconstructed tracks.
 
ca::Vector< cbm::algo::ca::McHitInfofvHitDebugInfo
 Container of hits with extended information.
 
cbm::ca::DetIdArr_t< std::set< int > > fvmDisabledStationIDs
 
TFile * fPerfFile {nullptr}
 Array of local indices of disabled tracking stations.
 
TDirectory * fHistoDir {nullptr}
 
TDirectory * fTableDir {nullptr}
 
TH1F * fTimeHisto [fNTimeHistos] {nullptr}
 
TH1F * fGhostHisto [fNGhostHistos] {nullptr}
 
TFile * fpMcTripletsOutFile = nullptr
 File to save MC-triplets tree.
 
TTree * fpMcTripletsTree = nullptr
 Tree to save MC-triplets.
 
std::string fsMcTripletsOutputFilename = ""
 Name of file to save MC-triplets tree.
 
int fMatBudgetNbins {100}
 n bins in mat budget maps (fMatBudgetNbins x fMatBudgetNbins)
 
int fMatBudgetNrays {3}
 material budget n rays per dimansion in each bin
 
double fMatBudgetPitch {0.1}
 material budget minimal bin size in cm
 
EInitMode fInitMode = EInitMode::Full
 Initialization mode.
 
bool fMatBudgetParallelProjection {false}
 
bool fExtrapolateToTheEndOfSTS {false}
 
std::vector< cbm::algo::kf::MaterialMonitorfMaterialMonitor {}
 Material monitors for each material budget map.
 

Static Private Attributes

static CbmL1fpInstance = nullptr
 Instance of CbmL1.
 
static constexpr std::string_view kSTAPParamSuffix = "ca.par"
 Extension for IO of the L1Parameters object.
 
static constexpr std::string_view kSTAPSetupSuffix = "kf.setup"
 
static constexpr std::string_view kSTAPAlgoIDataSuffix = "job%d.ca.input.dat"
 
static constexpr std::string_view kSTAPAlgoIDataDir = "input_hits"
 Name of subdirectory for handling ca::InputData objects.
 
static const int fNTimeHistos = 22
 
static const int fNGhostHistos = 9
 

Friends

class L1AlgoDraw
 
class L1AlgoPulls
 
template<int NHits>
class L1AlgoEfficiencyPerformance
 
class CbmL1PFFitter
 

Detailed Description

ca::Framework runtime constants modification can be performed in run_reco.C. Example:

Definition at line 105 of file CbmL1.h.

Member Typedef Documentation

◆ DFSET

using CbmL1::DFSET = std::set<std::pair<int, int>>

Definition at line 111 of file CbmL1.h.

Member Enumeration Documentation

◆ EInitMode

enum class CbmL1::EInitMode
strong
Enumerator
Full 

Full initialization (default)

Param 

Parameter initialization (when algorithm execution is not required)

Definition at line 125 of file CbmL1.h.

Constructor & Destructor Documentation

◆ CbmL1() [1/4]

CbmL1::CbmL1 ( )

Default constructor.

Definition at line 85 of file CbmL1.cxx.

References CbmL1().

Referenced by CbmL1(), CbmL1(), CbmL1(), ClassDef(), Instance(), operator=(), and operator=().

◆ CbmL1() [2/4]

CbmL1::CbmL1 ( const char * name,
Int_t verbose = 1,
Int_t performance = 0 )

Constructor from parameters

Parameters
nameName of the task
verboseVerbosity level
performancePerformance run flag:
  • #0 run without performance measurement
  • #1 require 4 consecutive hits on reconstructible mc track
  • #2 require 4 hits on reconstructible mc track
  • #3 require 4 consecutive mc points on reconstructible mc track

Definition at line 89 of file CbmL1.cxx.

References fPerformance, fpInstance, fpIODataManager, and fSTAPDataMode.

◆ CbmL1() [3/4]

CbmL1::CbmL1 ( const CbmL1 & )
delete

Copy constructor.

References CbmL1().

◆ CbmL1() [4/4]

CbmL1::CbmL1 ( CbmL1 && )
delete

Move constructor.

References CbmL1().

◆ ~CbmL1()

CbmL1::~CbmL1 ( )

Destructor.

Definition at line 104 of file CbmL1.cxx.

References fpInstance.

Member Function Documentation

◆ boundedGaus()

static double CbmL1::boundedGaus ( double sigma)
static

◆ ClassDef()

CbmL1::ClassDef ( CbmL1 ,
0  )
private

References CbmL1().

◆ DefineSTAPNames()

void CbmL1::DefineSTAPNames ( )
private

Defines names for output in STAP mode.

--— STandAlone Package service-functions --------------------------—

Defines the name of input/output directory [dir] and prefix of the files [pref], which is used to define input and output data trees in the reconstruction macro. If the output TTree file has name /path/to/[pref].reco.root, the data files will be: [dir]/input_hits/[pref].job[No].ca.input.dat - hits input files, containing serialized ca::InputData objects, stored for each job (each call of CbmL1::ReadEvent function) [dir]/[pref].ca.par - parameters input files, containing serialized L1Parameters object

Definition at line 562 of file CbmL1.cxx.

References fSTAPDataDir, fSTAPDataMode, and fSTAPDataPrefix.

Referenced by Init().

◆ DisableTrackingStation()

void CbmL1::DisableTrackingStation ( ca::EDetectorID detID,
int iSt )

Disables tracking station for a given detector subsystem.

Parameters
detIDDetector ID
iStIndex of station in tracking station interface

Possible entries of Detector ID are listed in CbmL1DetectorID.h.

Definition at line 111 of file CbmL1.cxx.

References cbm::algo::ca::END, and fvmDisabledStationIDs.

◆ DumpMaterialToFile()

void CbmL1::DumpMaterialToFile ( TString fileName,
std::shared_ptr< const cbm::algo::ca::Parameters< double > > par )
private

Definition at line 644 of file CbmL1.cxx.

References fMatBudgetParallelProjection, and kf::tools::RootUtils::ToHistogram().

Referenced by Init().

◆ DumpMCTripletsToTree()

void CbmL1::DumpMCTripletsToTree ( )
private

Writes MC triplets to tree

Note
Executed only if the filename for MC tracks ntuple output is defined

< mother ID of track

< PDG code of track

< process ID (see ROOT::TMCProcessID)

< abs. momentum of track [GeV/c]

< charge of track [e]

< z-component of the MC track vertex [cm]

< global index of the left MC point station

< x-component of the left MC point in a triplet [cm]

< y-component of the left MC point in a triplet [cm]

< z-component of the left MC point in a triplet [cm]

< x-component of the middle MC point in a triplet [cm]

< y-component of the middle MC point in a triplet [cm]

< z-component of the middle MC point in a triplet [cm]

< x-component of the right MC point in a triplet [cm]

< y-component of the right MC point in a triplet [cm]

< z-component of the right MC point in a triplet [cm]

< global active index of tracking station

< x-component of point position [cm]

< y-component of point position [cm]

< z-component of point position [cm]

Definition at line 1746 of file CbmL1Performance.cxx.

References fMCData, fpMcTripletsOutFile, fpMcTripletsTree, fsMcTripletsOutputFilename, x, and y.

Referenced by Reconstruct().

◆ eatwhite()

static std::istream & CbmL1::eatwhite ( std::istream & is)
staticprivate

◆ EfficienciesPerformance()

◆ FieldApproxCheck()

void CbmL1::FieldApproxCheck ( )
private

Definition at line 1570 of file CbmL1Performance.cxx.

References fpAlgo, sqrt(), x, and y.

◆ FieldIntegralCheck()

void CbmL1::FieldIntegralCheck ( )
private

Definition at line 1679 of file CbmL1Performance.cxx.

References sqrt(), x, and y.

◆ Fill_vMCTracks()

void CbmL1::Fill_vMCTracks ( )
private

Fills the fvMCTracks vector and the fmMCTracksMap.

◆ FillFitHistos()

◆ Finish()

◆ GetDetectorName()

static constexpr const char * CbmL1::GetDetectorName ( ca::EDetectorID detectorID)
inlinestaticconstexpr

Utility to map the L1DetectorID items into detector names.

Definition at line 239 of file CbmL1.h.

References cbm::algo::ca::END, cbm::algo::ca::kMuch, cbm::algo::ca::kMvd, cbm::algo::ca::kSts, cbm::algo::ca::kTof, and cbm::algo::ca::kTrd.

Referenced by cbm::ca::TimeSliceReader::ReadHitsForDetector().

◆ GetMCData()

const cbm::algo::ca::McData & CbmL1::GetMCData ( ) const
inline

Gets reference to MC data object.

Definition at line 180 of file CbmL1.h.

References fMCData.

◆ GetQaHits()

const auto & CbmL1::GetQaHits ( ) const
inline

Gets vector of the extended QA hits TODO: It is a temporary function, do not rely on it

Definition at line 236 of file CbmL1.h.

References fvHitDebugInfo.

◆ HistoPerformance()

◆ IdealTrackFinder()

◆ Init()

◆ Instance()

◆ MatchHitWithMc()

template<ca::EDetectorID DetId>
std::tuple< int, std::vector< int > > CbmL1::MatchHitWithMc ( int iHit) const
private

Matches hit with MC point.

Template Parameters
DetIdDetector ID
Parameters
iHitExternal index of hit
Returns
MC-point index in fvMCPoints array

◆ operator=() [1/2]

CbmL1 & CbmL1::operator= ( CbmL1 && )
delete

Move assignment operator.

References CbmL1().

◆ operator=() [2/2]

CbmL1 & CbmL1::operator= ( const CbmL1 & )
delete

Copy assignment operator.

References CbmL1().

◆ ReadSTAPAlgoInputData()

void CbmL1::ReadSTAPAlgoInputData ( int iJob = 0)
private

◆ ReadSTAPParamObject()

void CbmL1::ReadSTAPParamObject ( )
private

Reads a sample of an ca::InputData object from defined directory fSTAPDataDir

Parameters
iJobNumber of job, usually is defined by the nCalls of executing function
Note
Reads from a file fSTAPDataDir + "/" + fSTAPDataPrefix + "." + TString::Format(kSTAPAlgoIDataSuffix, iJob)

◆ ReadSTAPPerfInputData()

void CbmL1::ReadSTAPPerfInputData ( )
private

Definition at line 637 of file CbmL1.cxx.

◆ Reconstruct()

◆ ReInit()

InitStatus CbmL1::ReInit ( )
virtual

Reruns the initialization.

Definition at line 120 of file CbmL1.cxx.

References Init().

◆ SetConfigUser()

void CbmL1::SetConfigUser ( const char * path)
inline

Sets user configuration filename.

Parameters
pathPath to the config

Definition at line 214 of file CbmL1.h.

References fsUserConfig.

◆ SetExtrapolateToTheEndOfSTS()

void CbmL1::SetExtrapolateToTheEndOfSTS ( bool b)
inline

Definition at line 252 of file CbmL1.h.

References fExtrapolateToTheEndOfSTS.

◆ SetGlobalMode()

void CbmL1::SetGlobalMode ( )
inline

Definition at line 255 of file CbmL1.h.

References fTrackingMode, and cbm::algo::ca::kGlobal.

◆ SetInitMode()

void CbmL1::SetInitMode ( EInitMode mode)
inline

Sets initialization mode.

Parameters
modeA CbmL1::EInitMode enumeration entry

Definition at line 193 of file CbmL1.h.

References fInitMode.

◆ SetMaterialBudgetNbins()

void CbmL1::SetMaterialBudgetNbins ( int nBinsPerDimension)
inline

Sets material budget binning.

Definition at line 200 of file CbmL1.h.

References fMatBudgetNbins.

◆ SetMaterialBudgetNrays()

void CbmL1::SetMaterialBudgetNrays ( int nRaysPerDimension)
inline

Sets material budget n rays per dimansion in each bin.

Definition at line 203 of file CbmL1.h.

References fMatBudgetNrays.

◆ SetMaterialBudgetParallelProjection()

void CbmL1::SetMaterialBudgetParallelProjection ( )
inline

Calculate material budget with rays, parallel to Z axis Only needed in debug mode to produce detailed picture of the material

Definition at line 210 of file CbmL1.h.

References fMatBudgetParallelProjection.

◆ SetMaterialBudgetPitch()

void CbmL1::SetMaterialBudgetPitch ( double pitchCm)
inline

Sets material budget minimal bin size in cm.

Definition at line 206 of file CbmL1.h.

References fMatBudgetPitch.

◆ SetMcbmMode()

void CbmL1::SetMcbmMode ( )
inline

Definition at line 254 of file CbmL1.h.

References fTrackingMode, and cbm::algo::ca::kMcbm.

◆ SetMuchMaterialBudgetFileName()

void CbmL1::SetMuchMaterialBudgetFileName ( const TString & )
inline

Sets material budget file name for MuCh.

Definition at line 286 of file CbmL1.h.

◆ SetMvdMaterialBudgetFileName()

void CbmL1::SetMvdMaterialBudgetFileName ( const TString & )
inline

Obsolete setters to be removed.

Sets material budget file name for MVD

Definition at line 272 of file CbmL1.h.

◆ SetOutputDataDir()

void CbmL1::SetOutputDataDir ( const char * dirname)
inline

Sets a name for parameters output dir.

Parameters
dirnameName of the directory for parameters output
Note
If not provided, the files will be stored in ${PWD}

Definition at line 227 of file CbmL1.h.

References fSTAPDataDir.

◆ SetOutputMcTripletsTreeFilename()

void CbmL1::SetOutputMcTripletsTreeFilename ( const char * filename)
inline

Sets output file for MC triplets tree If the filename is empty string, tree is not filled.

Parameters
filenameName of the output file name

Definition at line 232 of file CbmL1.h.

References fsMcTripletsOutputFilename.

◆ SetParameterFilename()

void CbmL1::SetParameterFilename ( const char * filename)
inline

Sets a name for the ca-parameter file.

Parameters
filenameName of the parameter file

Definition at line 218 of file CbmL1.h.

References fSTAPParamFile.

◆ SetRandomSeed()

void CbmL1::SetRandomSeed ( unsigned int )
inlineprivate

Sets random seed to CA internal random generator.

Parameters
seedRandom seed

Definition at line 340 of file CbmL1.h.

◆ SetSafeMaterialInitialization()

void CbmL1::SetSafeMaterialInitialization ( bool val = true)
inline

Sets safe but slow material initialisation to get around potential problems in TGeoVoxelFinder (use it only in case of a crash at the initialisation of material maps)

Definition at line 197 of file CbmL1.h.

References fDoSafeMaterialInitialization.

◆ SetSetupFilename()

void CbmL1::SetSetupFilename ( const char * filename)
inline

Sets a name for the kf-setup file.

Parameters
filenameName of the kf-setup file

Definition at line 222 of file CbmL1.h.

References fSTAPSetupFile.

◆ SetStsMaterialBudgetFileName()

void CbmL1::SetStsMaterialBudgetFileName ( const TString & )
inline

Sets material budget file name for STS.

Definition at line 279 of file CbmL1.h.

◆ SetStsOnlyMode()

void CbmL1::SetStsOnlyMode ( )
inline

Definition at line 253 of file CbmL1.h.

References fTrackingMode, and cbm::algo::ca::kSts.

◆ SetTofMaterialBudgetFileName()

void CbmL1::SetTofMaterialBudgetFileName ( const TString & )
inline

Sets material budget file name for TOF.

Definition at line 300 of file CbmL1.h.

◆ SetTrdMaterialBudgetFileName()

void CbmL1::SetTrdMaterialBudgetFileName ( const TString & )
inline

Sets material budget file name for TRD.

Definition at line 293 of file CbmL1.h.

◆ TimeHist()

void CbmL1::TimeHist ( )
private

◆ TrackFitPerformance()

◆ writedir2current()

void CbmL1::writedir2current ( TObject * obj)
staticprivate

Definition at line 488 of file CbmL1.cxx.

References writedir2current().

Referenced by Finish(), and writedir2current().

◆ WriteHistosCurFile()

void CbmL1::WriteHistosCurFile ( TObject * obj)
private

◆ WriteSTAPAlgoInputData()

void CbmL1::WriteSTAPAlgoInputData ( int iJob = 0)
private

Writes a sample of an ca::InputData object to defined directory fSTAPDataDir

Parameters
iJobNumber of job, usually is defined by the nCalls of executing function
Note
Creates a file fSTAPDataDir + "/" + fSTAPDataPrefix + "." + TString::Format(kSTAPAlgoIDataSuffix, iJob)

Definition at line 608 of file CbmL1.cxx.

References fpIODataManager, fSTAPDataDir, fSTAPDataPrefix, and kSTAPAlgoIDataSuffix.

◆ WriteSTAPParamObject()

void CbmL1::WriteSTAPParamObject ( )
private

Writes initialized L1Parameters object to file "".

◆ WriteSTAPPerfInputData()

void CbmL1::WriteSTAPPerfInputData ( )
private

Definition at line 619 of file CbmL1.cxx.

Friends And Related Symbol Documentation

◆ CbmL1PFFitter

friend class CbmL1PFFitter
friend

Definition at line 123 of file CbmL1.h.

References CbmL1PFFitter.

Referenced by CbmL1PFFitter.

◆ L1AlgoDraw

friend class L1AlgoDraw
friend

Definition at line 117 of file CbmL1.h.

References L1AlgoDraw.

Referenced by L1AlgoDraw.

◆ L1AlgoEfficiencyPerformance

template<int NHits>
friend class L1AlgoEfficiencyPerformance
friend

Definition at line 121 of file CbmL1.h.

References L1AlgoEfficiencyPerformance.

Referenced by L1AlgoEfficiencyPerformance.

◆ L1AlgoPulls

friend class L1AlgoPulls
friend

Definition at line 118 of file CbmL1.h.

References L1AlgoPulls.

Referenced by L1AlgoPulls.

Member Data Documentation

◆ fDoSafeMaterialInitialization

bool CbmL1::fDoSafeMaterialInitialization {false}
private

Definition at line 427 of file CbmL1.h.

Referenced by SetSafeMaterialInitialization().

◆ fEventNo

int CbmL1::fEventNo = 0
private

Current number of event/TS.

Definition at line 473 of file CbmL1.h.

Referenced by Reconstruct().

◆ fExtrapolateToTheEndOfSTS

bool CbmL1::fExtrapolateToTheEndOfSTS {false}
private

Definition at line 517 of file CbmL1.h.

Referenced by SetExtrapolateToTheEndOfSTS().

◆ fGhostHisto

TH1F* CbmL1::fGhostHisto[fNGhostHistos] {nullptr}
private

Definition at line 502 of file CbmL1.h.

◆ fHistoDir

TDirectory* CbmL1::fHistoDir {nullptr}
private

Definition at line 495 of file CbmL1.h.

Referenced by Finish(), HistoPerformance(), Init(), and TrackFitPerformance().

◆ fInitMode

EInitMode CbmL1::fInitMode = EInitMode::Full
private

Initialization mode.

Definition at line 512 of file CbmL1.h.

Referenced by Init(), and SetInitMode().

◆ fInputDataFilename

std::string CbmL1::fInputDataFilename {}
private

File name to read/write input hits.

Definition at line 405 of file CbmL1.h.

◆ fMatBudgetNbins

int CbmL1::fMatBudgetNbins {100}
private

n bins in mat budget maps (fMatBudgetNbins x fMatBudgetNbins)

Definition at line 508 of file CbmL1.h.

Referenced by SetMaterialBudgetNbins().

◆ fMatBudgetNrays

int CbmL1::fMatBudgetNrays {3}
private

material budget n rays per dimansion in each bin

Definition at line 509 of file CbmL1.h.

Referenced by SetMaterialBudgetNrays().

◆ fMatBudgetParallelProjection

bool CbmL1::fMatBudgetParallelProjection {false}
private

Calculate material budget with rays, parallel to Z axis Only needed in debug mode to produce detailed picture of the material

Definition at line 514 of file CbmL1.h.

Referenced by DumpMaterialToFile(), and SetMaterialBudgetParallelProjection().

◆ fMatBudgetPitch

double CbmL1::fMatBudgetPitch {0.1}
private

material budget minimal bin size in cm

Definition at line 510 of file CbmL1.h.

Referenced by SetMaterialBudgetPitch().

◆ fMaterialMonitor

std::vector<cbm::algo::kf::MaterialMonitor> CbmL1::fMaterialMonitor {}
private

Material monitors for each material budget map.

Definition at line 519 of file CbmL1.h.

Referenced by Finish(), Init(), and Reconstruct().

◆ fMCData

◆ fMomentumCutOff

Double_t CbmL1::fMomentumCutOff = 0.1
private

Definition at line 471 of file CbmL1.h.

◆ fMonitor

ca::TrackingMonitor CbmL1::fMonitor {}

Tracking monitor.

Definition at line 257 of file CbmL1.h.

Referenced by Finish(), Init(), and Reconstruct().

◆ fNGhostHistos

const int CbmL1::fNGhostHistos = 9
staticprivate

Definition at line 501 of file CbmL1.h.

◆ fNofRecoTracks

int CbmL1::fNofRecoTracks = 0
private

Total number of reconstructed tracks.

Definition at line 474 of file CbmL1.h.

◆ fNStations

int CbmL1::fNStations = 0
private

number of total active detector stations

Definition at line 435 of file CbmL1.h.

Referenced by EfficienciesPerformance(), Init(), and TrackFitPerformance().

◆ fNTimeHistos

const int CbmL1::fNTimeHistos = 22
staticprivate

Definition at line 498 of file CbmL1.h.

◆ fpAlgo

◆ fPerfFile

TFile* CbmL1::fPerfFile {nullptr}
private

Array of local indices of disabled tracking stations.

Definition at line 494 of file CbmL1.h.

◆ fPerformance

Int_t CbmL1::fPerformance = 0
private

performance mode: 0 - w\o perf. 1 - L1-Efficiency definition. 2 - QA-Eff.definition

Definition at line 437 of file CbmL1.h.

Referenced by CbmL1(), Finish(), Init(), and Reconstruct().

◆ fpInstance

CbmL1 * CbmL1::fpInstance = nullptr
staticprivate

Instance of CbmL1.

Definition at line 425 of file CbmL1.h.

Referenced by CbmL1(), Instance(), and ~CbmL1().

◆ fpIODataManager

std::shared_ptr<ca::DataManager> CbmL1::fpIODataManager = nullptr
private

Input-output data manager.

Definition at line 412 of file CbmL1.h.

Referenced by CbmL1(), Init(), ReadSTAPAlgoInputData(), Reconstruct(), and WriteSTAPAlgoInputData().

◆ fpMCModule

std::unique_ptr<cbm::ca::MCModule> CbmL1::fpMCModule = nullptr
private

MC module.

Definition at line 409 of file CbmL1.h.

Referenced by Init(), and Reconstruct().

◆ fpMcTripletsOutFile

TFile* CbmL1::fpMcTripletsOutFile = nullptr
private

File to save MC-triplets tree.

Definition at line 504 of file CbmL1.h.

Referenced by DumpMCTripletsToTree(), and Finish().

◆ fpMcTripletsTree

TTree* CbmL1::fpMcTripletsTree = nullptr
private

Tree to save MC-triplets.

Definition at line 505 of file CbmL1.h.

Referenced by DumpMCTripletsToTree(), and Finish().

◆ fpTSReader

std::unique_ptr<cbm::ca::TimeSliceReader> CbmL1::fpTSReader = nullptr
private

event/TS reader

Definition at line 408 of file CbmL1.h.

Referenced by Init(), and Reconstruct().

◆ fsMcTripletsOutputFilename

std::string CbmL1::fsMcTripletsOutputFilename = ""
private

Name of file to save MC-triplets tree.

Definition at line 506 of file CbmL1.h.

Referenced by DumpMCTripletsToTree(), Reconstruct(), and SetOutputMcTripletsTreeFilename().

◆ fSTAPDataDir

TString CbmL1::fSTAPDataDir = ""
private

Name of input/output directory for running in a STAP mode.

Definition at line 449 of file CbmL1.h.

Referenced by DefineSTAPNames(), Init(), ReadSTAPAlgoInputData(), SetOutputDataDir(), and WriteSTAPAlgoInputData().

◆ fSTAPDataMode

int CbmL1::fSTAPDataMode = 4
private

Option to work with files for the standalone mode.

Option to work with files for the standalone mode

  • #0 standalone mode is not used
  • #1 data for standalone mode is written to configuration file (currently does not work)
  • #2 tracking runs in standalone mode using configuration file (currently does not work)
  • #3 data is written and read (currently does not work)
  • #4 parameter file is saved, but the data does not

Definition at line 447 of file CbmL1.h.

Referenced by CbmL1(), DefineSTAPNames(), and Init().

◆ fSTAPDataPrefix

TString CbmL1::fSTAPDataPrefix = "test"
private

Name of input/output file prefix. The prefix is defined by output TTree file.

Definition at line 450 of file CbmL1.h.

Referenced by DefineSTAPNames(), Init(), ReadSTAPAlgoInputData(), and WriteSTAPAlgoInputData().

◆ fSTAPParamFile

TString CbmL1::fSTAPParamFile = ""
private

Name of the parameter file (generated automatically, if not provided manually)

Definition at line 451 of file CbmL1.h.

Referenced by Init(), and SetParameterFilename().

◆ fSTAPSetupFile

TString CbmL1::fSTAPSetupFile = ""
private

Name of the setup file (generated automatically, if not provided manually)

Definition at line 452 of file CbmL1.h.

Referenced by SetSetupFilename().

◆ fsUserConfig

std::string CbmL1::fsUserConfig {}
private

User config path.

Definition at line 406 of file CbmL1.h.

Referenced by Init(), and SetConfigUser().

◆ fTableDir

TDirectory* CbmL1::fTableDir {nullptr}
private

Definition at line 496 of file CbmL1.h.

Referenced by EfficienciesPerformance(), Finish(), and Init().

◆ fTargetX

double CbmL1::fTargetX {1.e10}
private

target position X

Do safe but slow material initialisation to get around potential problems in TGeoVoxelFinder

Definition at line 431 of file CbmL1.h.

◆ fTargetY

double CbmL1::fTargetY {1.e10}
private

target position Y

Definition at line 432 of file CbmL1.h.

◆ fTargetZ

double CbmL1::fTargetZ {1.e10}
private

target position Z

Definition at line 433 of file CbmL1.h.

◆ fTimeHisto

TH1F* CbmL1::fTimeHisto[fNTimeHistos] {nullptr}
private

Definition at line 499 of file CbmL1.h.

◆ fTrackingLevel

Int_t CbmL1::fTrackingLevel = 2
private

Definition at line 470 of file CbmL1.h.

◆ fTrackingMode

ca::TrackingMode CbmL1::fTrackingMode = ca::TrackingMode::kSts

Tracking mode.

Definition at line 420 of file CbmL1.h.

Referenced by Init(), SetGlobalMode(), SetMcbmMode(), and SetStsOnlyMode().

◆ fTrackingTime

double CbmL1::fTrackingTime = 0.
private

time of track finding procedure

Definition at line 438 of file CbmL1.h.

Referenced by EfficienciesPerformance(), HistoPerformance(), and Reconstruct().

◆ fvExternalHits

◆ fvHitDebugInfo

ca::Vector<cbm::algo::ca::McHitInfo> CbmL1::fvHitDebugInfo
private
Initial value:
= {
"CbmL1::fvMcHitDebugInfo"}

Container of hits with extended information.

Definition at line 482 of file CbmL1.h.

Referenced by EfficienciesPerformance(), GetQaHits(), HistoPerformance(), IdealTrackFinder(), Init(), and TrackFitPerformance().

◆ fvmDisabledStationIDs

cbm::ca::DetIdArr_t<std::set<int> > CbmL1::fvmDisabledStationIDs
private

Definition at line 488 of file CbmL1.h.

Referenced by DisableTrackingStation(), and Init().

◆ fvRecoTracks

ca::Vector<CbmL1Track> CbmL1::fvRecoTracks = {"CbmL1::fvRecoTracks"}

◆ kSTAPAlgoIDataDir

std::string_view CbmL1::kSTAPAlgoIDataDir = "input_hits"
staticconstexprprivate

Name of subdirectory for handling ca::InputData objects.

Definition at line 467 of file CbmL1.h.

Referenced by ReadSTAPAlgoInputData().

◆ kSTAPAlgoIDataSuffix

std::string_view CbmL1::kSTAPAlgoIDataSuffix = "job%d.ca.input.dat"
staticconstexprprivate

Definition at line 464 of file CbmL1.h.

Referenced by ReadSTAPAlgoInputData(), and WriteSTAPAlgoInputData().

◆ kSTAPParamSuffix

std::string_view CbmL1::kSTAPParamSuffix = "ca.par"
staticconstexprprivate

Extension for IO of the L1Parameters object.

Definition at line 455 of file CbmL1.h.

Referenced by Init().

◆ kSTAPSetupSuffix

std::string_view CbmL1::kSTAPSetupSuffix = "kf.setup"
staticconstexprprivate

Definition at line 456 of file CbmL1.h.


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