Project
Loading...
Searching...
No Matches
o2::globaltracking::MatchTPCITS Class Reference

#include <MatchTPCITS.h>

Public Types

enum  DebugFlagTypes : UInt_t { MatchTreeAll = 0x1 << 1 , MatchTreeAccOnly = 0x1 << 2 , WinnerMatchesTree = 0x1 << 3 , TPCOrigTree = 0x1 << 4 }
 
using ITSCluster = o2::BaseCluster< float >
 
using ClusRange = o2::dataformats::RangeReference< int, int >
 
using TPCTransform = o2::gpu::TPCFastTransform
 
using BracketF = o2::math_utils::Bracket< float >
 
using BracketIR = o2::math_utils::Bracket< o2::InteractionRecord >
 
using Params = o2::globaltracking::MatchTPCITSParams
 
using MatCorrType = o2::base::Propagator::MatCorrType
 
using VDTriplet = o2::dataformats::Triplet< float, float, float >
 
using AlpParamITS = o2::itsmft::DPLAlpideParam< o2::detectors::DetID::ITS >
 

Public Member Functions

 MatchTPCITS ()
 
 ~MatchTPCITS ()
 
void run (const o2::globaltracking::RecoContainer &inp, pmr::vector< o2::dataformats::TrackTPCITS > &matchedTracks, pmr::vector< o2::itsmft::TrkClusRef > &ABTrackletRefs, pmr::vector< int > &ABTrackletClusterIDs, pmr::vector< o2::MCCompLabel > &matchLabels, pmr::vector< o2::MCCompLabel > &ABTrackletLabels, pmr::vector< o2::dataformats::Triplet< float, float, float > > &calib)
 perform matching for provided input
 
void refitWinners (pmr::vector< o2::dataformats::TrackTPCITS > &matchedTracks, pmr::vector< o2::MCCompLabel > &matchLabels, pmr::vector< o2::dataformats::Triplet< float, float, float > > &calib)
 
bool refitTrackTPCITS (int slot, int iTPC, int &iITS, pmr::vector< o2::dataformats::TrackTPCITS > &matchedTracks, pmr::vector< o2::MCCompLabel > &matchLabels, pmr::vector< o2::dataformats::Triplet< float, float, float > > &calib)
 
void fillCalibDebug (int ifit, int iTPC, const o2::dataformats::TrackTPCITS &match, pmr::vector< o2::dataformats::Triplet< float, float, float > > &calib)
 
void reportSizes (pmr::vector< o2::dataformats::TrackTPCITS > &matchedTracks, pmr::vector< o2::itsmft::TrkClusRef > &ABTrackletRefs, pmr::vector< int > &ABTrackletClusterIDs, pmr::vector< o2::MCCompLabel > &matchLabels, pmr::vector< o2::MCCompLabel > &ABTrackletLabels, pmr::vector< o2::dataformats::Triplet< float, float, float > > &calib)
 
bool runAfterBurner (pmr::vector< o2::dataformats::TrackTPCITS > &matchedTracks, pmr::vector< o2::MCCompLabel > &matchLabels, pmr::vector< o2::MCCompLabel > &ABTrackletLabels, pmr::vector< int > &ABTrackletClusterIDs, pmr::vector< o2::itsmft::TrkClusRef > &ABTrackletRefs, pmr::vector< o2::dataformats::Triplet< float, float, float > > &calib)
 
void refitABWinners (pmr::vector< o2::dataformats::TrackTPCITS > &matchedTracks, pmr::vector< o2::MCCompLabel > &matchLabels, pmr::vector< o2::MCCompLabel > &ABTrackletLabels, pmr::vector< int > &ABTrackletClusterIDs, pmr::vector< o2::itsmft::TrkClusRef > &ABTrackletRefs, pmr::vector< o2::dataformats::Triplet< float, float, float > > &calib)
 
bool refitABTrack (int iITSAB, const TPCABSeed &seed, pmr::vector< o2::dataformats::TrackTPCITS > &matchedTracks, pmr::vector< int > &ABTrackletClusterIDs, pmr::vector< o2::itsmft::TrkClusRef > &ABTrackletRefs)
 
void setSkipTPCOnly (bool v)
 
void setCosmics (bool v)
 
bool isCosmics () const
 
void setNThreads (int n)
 perform all initializations
 
void init ()
 
void end ()
 
void reportTiming ()
 clear results of previous event reco
 
void clear ()
 set Bunch filling and init helpers for validation by BCs
 
void setBunchFilling (const o2::BunchFilling &bf)
 
void setNHBPerTF (int n)
 ITS readout mode.
 
void setITSTriggered (bool v)
 
bool isITSTriggered () const
 
void setUseFT0 (bool v)
 
bool getUseFT0 () const
 
void setUseBCFilling (bool v)
 
bool getUseBCFilling () const
 
void setAlpideParam (const AlpParamITS *p)
 
const AlpParamITS * getAlpideParam () const
 layer whose ROF defines the granularity of the ITS tracks ROFRecords (0 if all layers share the same ROF)
 
int getITSClockLayer () const
 per-layer ITS ROF length and bias, always defined for all NITSLayers
 
int getITSROFrameLengthInBC (int lr) const
 
float getITSROFrameLengthMUS (int lr) const
 
float getITSROFrameLengthMUSInv (int lr) const
 
float getITSTimeResMUS (int lr) const
 
int getITSTimeBiasInBC (int lr) const
 
float getITSTimeBiasMUS (int lr) const
 time bracket (wrt TF start) of the ROF starting at nBC of the given layer
 
BracketF getITSROFTimeBracket (long nBC, int lr) const
 
void setITSDictionary (const o2::itsmft::TopologyDictionary *d)
 set flag to use MC truth
 
void setMCTruthOn (bool v)
 request VDrift calibration
 
void setVDriftCalib (bool v)
 
void setTPCVDrift (const o2::tpc::VDriftCorrFact &v)
 
void setTPCCorrMaps (const o2::gpu::TPCFastTransformPOD *maph, float lumi)
 print settings
 
void print () const
 
void printCandidatesTPC () const
 
void printCandidatesITS () const
 
void setUseMatCorrFlag (MatCorrType f)
 
auto getUseMatCorrFlag () const
 
bool isDebugFlag (UInt_t flags) const
 get debug trees flags
 
UInt_t getDebugFlags () const
 set or unset debug stream flag
 
void setDebugFlag (UInt_t flag, bool on=true)
 set the name of output debug file
 
void setDebugTreeFileName (std::string name)
 get the name of output debug file
 
const std::string & getDebugTreeFileName () const
 fill matching debug tree
 
void fillTPCITSmatchTree (int itsID, int tpcID, int rejFlag, float chi2=-1., float tCorr=0.)
 
void dumpWinnerMatches ()
 
void dumpTPCOrig (bool acc, int tpcIndex)
 

Static Public Attributes

static constexpr int MaxUpDnLadders = 3
 
static constexpr int MaxLadderCand = 2 * MaxUpDnLadders + 1
 
static constexpr int MaxSeedsPerLayer = 50
 
static constexpr int NITSLayers = o2::its::RecoGeomHelper::getNLayers()
 

Detailed Description

Definition at line 357 of file MatchTPCITS.h.

Member Typedef Documentation

◆ AlpParamITS

Definition at line 368 of file MatchTPCITS.h.

◆ BracketF

◆ BracketIR

◆ ClusRange

◆ ITSCluster

◆ MatCorrType

◆ Params

◆ TPCTransform

◆ VDTriplet

Definition at line 367 of file MatchTPCITS.h.

Member Enumeration Documentation

◆ DebugFlagTypes

Enumerator
MatchTreeAll 

produce matching candidates tree for all candidates

MatchTreeAccOnly 

fill the matching candidates tree only once the cut is passed

WinnerMatchesTree 

separate debug tree for winner matches

TPCOrigTree 

original TPC tracks with some aux info

Definition at line 499 of file MatchTPCITS.h.

Constructor & Destructor Documentation

◆ MatchTPCITS()

MatchTPCITS::MatchTPCITS ( )
default

◆ ~MatchTPCITS()

MatchTPCITS::~MatchTPCITS ( )
default

Member Function Documentation

◆ clear()

void MatchTPCITS::clear ( )

set Bunch filling and init helpers for validation by BCs

< clear results of previous TF reconstruction

Definition at line 164 of file MatchTPCITS.cxx.

◆ dumpTPCOrig()

void o2::globaltracking::MatchTPCITS::dumpTPCOrig ( bool  acc,
int  tpcIndex 
)

◆ dumpWinnerMatches()

void o2::globaltracking::MatchTPCITS::dumpWinnerMatches ( )

◆ end()

void MatchTPCITS::end ( )

Definition at line 156 of file MatchTPCITS.cxx.

◆ fillCalibDebug()

void MatchTPCITS::fillCalibDebug ( int  ifit,
int  iTPC,
const o2::dataformats::TrackTPCITS &  match,
pmr::vector< o2::dataformats::Triplet< float, float, float > > &  calib 
)

Definition at line 1561 of file MatchTPCITS.cxx.

◆ fillTPCITSmatchTree()

void o2::globaltracking::MatchTPCITS::fillTPCITSmatchTree ( int  itsID,
int  tpcID,
int  rejFlag,
float  chi2 = -1.,
float  tCorr = 0. 
)

◆ getAlpideParam()

const AlpParamITS * o2::globaltracking::MatchTPCITS::getAlpideParam ( ) const
inline

layer whose ROF defines the granularity of the ITS tracks ROFRecords (0 if all layers share the same ROF)

Definition at line 444 of file MatchTPCITS.h.

◆ getDebugFlags()

UInt_t o2::globaltracking::MatchTPCITS::getDebugFlags ( ) const
inline

set or unset debug stream flag

Definition at line 509 of file MatchTPCITS.h.

◆ getDebugTreeFileName()

const std::string & o2::globaltracking::MatchTPCITS::getDebugTreeFileName ( ) const
inline

fill matching debug tree

Definition at line 523 of file MatchTPCITS.h.

◆ getITSClockLayer()

int o2::globaltracking::MatchTPCITS::getITSClockLayer ( ) const
inline

per-layer ITS ROF length and bias, always defined for all NITSLayers

Definition at line 447 of file MatchTPCITS.h.

◆ getITSROFrameLengthInBC()

int o2::globaltracking::MatchTPCITS::getITSROFrameLengthInBC ( int  lr) const
inline

Definition at line 450 of file MatchTPCITS.h.

◆ getITSROFrameLengthMUS()

float o2::globaltracking::MatchTPCITS::getITSROFrameLengthMUS ( int  lr) const
inline

Definition at line 451 of file MatchTPCITS.h.

◆ getITSROFrameLengthMUSInv()

float o2::globaltracking::MatchTPCITS::getITSROFrameLengthMUSInv ( int  lr) const
inline

Definition at line 452 of file MatchTPCITS.h.

◆ getITSROFTimeBracket()

BracketF o2::globaltracking::MatchTPCITS::getITSROFTimeBracket ( long  nBC,
int  lr 
) const
inline

Definition at line 458 of file MatchTPCITS.h.

◆ getITSTimeBiasInBC()

int o2::globaltracking::MatchTPCITS::getITSTimeBiasInBC ( int  lr) const
inline

Definition at line 454 of file MatchTPCITS.h.

◆ getITSTimeBiasMUS()

float o2::globaltracking::MatchTPCITS::getITSTimeBiasMUS ( int  lr) const
inline

time bracket (wrt TF start) of the ROF starting at nBC of the given layer

Definition at line 455 of file MatchTPCITS.h.

◆ getITSTimeResMUS()

float o2::globaltracking::MatchTPCITS::getITSTimeResMUS ( int  lr) const
inline

Definition at line 453 of file MatchTPCITS.h.

◆ getUseBCFilling()

bool o2::globaltracking::MatchTPCITS::getUseBCFilling ( ) const
inline

set ITS Alpide parameters: all per-layer ITS ROF lengths, biases and the clock layer are derived from them, no other ITS timing setter is needed. Can be called in any order wrt setITSTriggered().

Definition at line 438 of file MatchTPCITS.h.

◆ getUseFT0()

bool o2::globaltracking::MatchTPCITS::getUseFT0 ( ) const
inline

Definition at line 435 of file MatchTPCITS.h.

◆ getUseMatCorrFlag()

auto o2::globaltracking::MatchTPCITS::getUseMatCorrFlag ( ) const
inline

Definition at line 494 of file MatchTPCITS.h.

◆ init()

void MatchTPCITS::init ( )

< perform initizalizations, precalculate what is needed

< max Y in the sector at reference X

Definition at line 222 of file MatchTPCITS.cxx.

◆ isCosmics()

bool o2::globaltracking::MatchTPCITS::isCosmics ( ) const
inline

Definition at line 408 of file MatchTPCITS.h.

◆ isDebugFlag()

bool o2::globaltracking::MatchTPCITS::isDebugFlag ( UInt_t  flags) const
inline

get debug trees flags

Definition at line 506 of file MatchTPCITS.h.

◆ isITSTriggered()

bool o2::globaltracking::MatchTPCITS::isITSTriggered ( ) const
inline

Definition at line 432 of file MatchTPCITS.h.

◆ print()

void MatchTPCITS::print ( ) const

< print all settings

Definition at line 1441 of file MatchTPCITS.cxx.

◆ printCandidatesITS()

void MatchTPCITS::printCandidatesITS ( ) const

< print mathing records

Definition at line 1315 of file MatchTPCITS.cxx.

◆ printCandidatesTPC()

void MatchTPCITS::printCandidatesTPC ( ) const

< print mathing records

Definition at line 1294 of file MatchTPCITS.cxx.

◆ refitABTrack()

bool MatchTPCITS::refitABTrack ( int  iITSAB,
const TPCABSeed &  seed,
pmr::vector< o2::dataformats::TrackTPCITS > &  matchedTracks,
pmr::vector< int > &  ABTrackletClusterIDs,
pmr::vector< o2::itsmft::TrkClusRef > &  ABTrackletRefs 
)

< refit AfterBurner track

Definition at line 1812 of file MatchTPCITS.cxx.

◆ refitABWinners()

void MatchTPCITS::refitABWinners ( pmr::vector< o2::dataformats::TrackTPCITS > &  matchedTracks,
pmr::vector< o2::MCCompLabel > &  matchLabels,
pmr::vector< o2::MCCompLabel > &  ABTrackletLabels,
pmr::vector< int > &  ABTrackletClusterIDs,
pmr::vector< o2::itsmft::TrkClusRef > &  ABTrackletRefs,
pmr::vector< o2::dataformats::Triplet< float, float, float > > &  calib 
)

Definition at line 2347 of file MatchTPCITS.cxx.

◆ refitTrackTPCITS()

bool MatchTPCITS::refitTrackTPCITS ( int  slot,
int  iTPC,
int &  iITS,
pmr::vector< o2::dataformats::TrackTPCITS > &  matchedTracks,
pmr::vector< o2::MCCompLabel > &  matchLabels,
pmr::vector< o2::dataformats::Triplet< float, float, float > > &  calib 
)

< refit in inward direction the pair of TPC and ITS tracks

precise time estimate, optionally corrected for bias

track time is outside of the nominal ITS time

assign ITS boundary

Definition at line 1645 of file MatchTPCITS.cxx.

◆ refitWinners()

void MatchTPCITS::refitWinners ( pmr::vector< o2::dataformats::TrackTPCITS > &  matchedTracks,
pmr::vector< o2::MCCompLabel > &  matchLabels,
pmr::vector< o2::dataformats::Triplet< float, float, float > > &  calib 
)

< refit winning tracks

Definition at line 1487 of file MatchTPCITS.cxx.

◆ reportSizes()

void MatchTPCITS::reportSizes ( pmr::vector< o2::dataformats::TrackTPCITS > &  matchedTracks,
pmr::vector< o2::itsmft::TrkClusRef > &  ABTrackletRefs,
pmr::vector< int > &  ABTrackletClusterIDs,
pmr::vector< o2::MCCompLabel > &  matchLabels,
pmr::vector< o2::MCCompLabel > &  ABTrackletLabels,
pmr::vector< o2::dataformats::Triplet< float, float, float > > &  calib 
)

Definition at line 2946 of file MatchTPCITS.cxx.

◆ reportTiming()

void MatchTPCITS::reportTiming ( )

clear results of previous event reco

Definition at line 148 of file MatchTPCITS.cxx.

◆ run()

void MatchTPCITS::run ( const o2::globaltracking::RecoContainer &  inp,
pmr::vector< o2::dataformats::TrackTPCITS > &  matchedTracks,
pmr::vector< o2::itsmft::TrkClusRef > &  ABTrackletRefs,
pmr::vector< int > &  ABTrackletClusterIDs,
pmr::vector< o2::MCCompLabel > &  matchLabels,
pmr::vector< o2::MCCompLabel > &  ABTrackletLabels,
pmr::vector< o2::dataformats::Triplet< float, float, float > > &  calib 
)

perform matching for provided input

< perform matching for provided input

Definition at line 80 of file MatchTPCITS.cxx.

◆ runAfterBurner()

bool MatchTPCITS::runAfterBurner ( pmr::vector< o2::dataformats::TrackTPCITS > &  matchedTracks,
pmr::vector< o2::MCCompLabel > &  matchLabels,
pmr::vector< o2::MCCompLabel > &  ABTrackletLabels,
pmr::vector< int > &  ABTrackletClusterIDs,
pmr::vector< o2::itsmft::TrkClusRef > &  ABTrackletRefs,
pmr::vector< o2::dataformats::Triplet< float, float, float > > &  calib 
)

Definition at line 2208 of file MatchTPCITS.cxx.

◆ setAlpideParam()

void MatchTPCITS::setAlpideParam ( const AlpParamITS *  p)

< derive all ITS ROF timings from the Alpide parameters. The per-layer arrays are always filled for all NITSLayers, also when every layer shares the same ROF length and bias.

Definition at line 2760 of file MatchTPCITS.cxx.

◆ setBunchFilling()

void MatchTPCITS::setBunchFilling ( const o2::BunchFilling &  bf)

Definition at line 2801 of file MatchTPCITS.cxx.

◆ setCosmics()

void o2::globaltracking::MatchTPCITS::setCosmics ( bool  v)
inline

Definition at line 407 of file MatchTPCITS.h.

◆ setDebugFlag()

void o2::globaltracking::MatchTPCITS::setDebugFlag ( UInt_t  flag,
bool  on = true 
)

set the name of output debug file

◆ setDebugTreeFileName()

void o2::globaltracking::MatchTPCITS::setDebugTreeFileName ( std::string  name)
inline

get the name of output debug file

Definition at line 515 of file MatchTPCITS.h.

◆ setITSDictionary()

void o2::globaltracking::MatchTPCITS::setITSDictionary ( const o2::itsmft::TopologyDictionary *  d)
inline

set flag to use MC truth

Definition at line 465 of file MatchTPCITS.h.

◆ setITSTriggered()

void o2::globaltracking::MatchTPCITS::setITSTriggered ( bool  v)
inline

Definition at line 425 of file MatchTPCITS.h.

◆ setMCTruthOn()

void o2::globaltracking::MatchTPCITS::setMCTruthOn ( bool  v)
inline

request VDrift calibration

Definition at line 474 of file MatchTPCITS.h.

◆ setNHBPerTF()

void o2::globaltracking::MatchTPCITS::setNHBPerTF ( int  n)
inline

ITS readout mode.

Definition at line 422 of file MatchTPCITS.h.

◆ setNThreads()

void MatchTPCITS::setNThreads ( int  n)

perform all initializations

Definition at line 3123 of file MatchTPCITS.cxx.

◆ setSkipTPCOnly()

void o2::globaltracking::MatchTPCITS::setSkipTPCOnly ( bool  v)
inline

Definition at line 403 of file MatchTPCITS.h.

◆ setTPCCorrMaps()

void MatchTPCITS::setTPCCorrMaps ( const o2::gpu::TPCFastTransformPOD *  maph,
float  lumi 
)

print settings

Definition at line 215 of file MatchTPCITS.cxx.

◆ setTPCVDrift()

void MatchTPCITS::setTPCVDrift ( const o2::tpc::VDriftCorrFact &  v)

Definition at line 207 of file MatchTPCITS.cxx.

◆ setUseBCFilling()

void o2::globaltracking::MatchTPCITS::setUseBCFilling ( bool  v)
inline

Definition at line 437 of file MatchTPCITS.h.

◆ setUseFT0()

void o2::globaltracking::MatchTPCITS::setUseFT0 ( bool  v)
inline

Definition at line 434 of file MatchTPCITS.h.

◆ setUseMatCorrFlag()

void o2::globaltracking::MatchTPCITS::setUseMatCorrFlag ( MatCorrType  f)
inline

Definition at line 493 of file MatchTPCITS.h.

◆ setVDriftCalib()

void o2::globaltracking::MatchTPCITS::setVDriftCalib ( bool  v)
inline

Definition at line 480 of file MatchTPCITS.h.

Member Data Documentation

◆ MaxLadderCand

constexpr int o2::globaltracking::MatchTPCITS::MaxLadderCand = 2 * MaxUpDnLadders + 1
staticconstexpr

Definition at line 374 of file MatchTPCITS.h.

◆ MaxSeedsPerLayer

constexpr int o2::globaltracking::MatchTPCITS::MaxSeedsPerLayer = 50
staticconstexpr

Definition at line 375 of file MatchTPCITS.h.

◆ MaxUpDnLadders

constexpr int o2::globaltracking::MatchTPCITS::MaxUpDnLadders = 3
staticconstexpr

Definition at line 373 of file MatchTPCITS.h.

◆ NITSLayers

constexpr int o2::globaltracking::MatchTPCITS::NITSLayers = o2::its::RecoGeomHelper::getNLayers()
staticconstexpr

Definition at line 376 of file MatchTPCITS.h.


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