CbmRoot
Loading...
Searching...
No Matches
cbm::kfp::V0FinderTask Class Reference

A class to find V0 candidates in mCBM. More...

#include <CbmKFV0FinderTask.h>

Inheritance diagram for cbm::kfp::V0FinderTask:
[legend]
Collaboration diagram for cbm::kfp::V0FinderTask:
[legend]

Classes

struct  DcaVector
 A vector representation of DCA to target. More...
 
struct  QpAndBeta
 Qp and beta container. More...
 

Public Types

enum class  ECounter : uint8_t {
  TracksTotal , TracksSelected , TracksInfiniteParam , TracksWoTofHits ,
  TracksWNegativeTofHitTime , TracksWoStsHits , TracksWoPid , TracksWoMomentum ,
  TracksWAtLeastOneTofHit , TracksWAtLeastTwoTofHits , TracksWithUnphysicalBeta , TracksW2Sts2Tof ,
  Pions , Protons , EventsTotal , EventsWoTzero ,
  EventsLambdaCand , KfpEventsLambdaCand , KfpLambdaCandidates , END
}
 
enum class  EPidApproach : uint8_t { Topo , Mc }
 PID approach used. More...
 
enum class  EProcessingMode : uint8_t { TimeBased , EventBased }
 Data processing mode. More...
 
enum class  EPvUsageMode : uint8_t {
  Target , Reconstructed , ReconstructSingle , ReconstructMultiple ,
  Mc
}
 Primary vertex finding/handling mode. More...
 

Public Member Functions

 V0FinderTask (int verbose=1)
 Constructor.
 
 ~V0FinderTask ()=default
 Destructor.
 
 V0FinderTask (const V0FinderTask &)=delete
 
 V0FinderTask (V0FinderTask &&)=delete
 
V0FinderTaskoperator= (const V0FinderTask &)=delete
 
V0FinderTaskoperator= (V0FinderTask &&)=delete
 
void Exec (Option_t *) override
 Executes the task.
 
void Finish () override
 Action on the end of the run.
 
InitStatus Init () override
 Initializes the task.
 
KFParticleFinder * GetKFParticleFinder ()
 Mutable access to the KfParticleFinder of the run topology reconstructor.
 
const KFParticleFinder * GetKFParticleFinder () const
 Constant access to the KfParticleFinder of the run topology reconstructor.
 
const auto & GetTrackDcaToOrigin () const
 Gets DCA to origin.
 
const std::shared_ptr< const KFParticleTopoReconstructor > GetTopoReconstructor () const
 Accessor to the topology reconstructor.
 
const std::vector< DcaVector > & GetTrackDca ()
 Accessor to the track DCA.
 
void SetConfigName (const TString &fileName)
 Sets name of the configuration file.
 
void SetProcessingMode (EProcessingMode mode)
 Sets processing mode (time-based/event-based)
 
void SetPidApproach (EPidApproach pid)
 Sets PID approach.
 
void SetPvFindingMode (EPvUsageMode mode)
 Sets PV finding mode.
 
void SetUseMc (bool bUseMc)
 Sets the MC flag (if MC information required)
 
void SetRunQa (bool bRunQa)
 Sets the flag: if the QA should be executed.
 
void SetPionVelocityRange (double vMin, double vMax)
 Sets pion velocity range.
 
void SetProtonVelocityRange (double vMin, double vMax)
 Sets proton velocity range.
 
void SetMinPionDca (double dca)
 Sets minimal pion DCA to primary vertex.
 
void SetMinProtonDca (double dca)
 Sets minimal proton DCA to primary vertex.
 
void SetQaOutputFileName (const TString &fileName)
 Sets a file name for the QA.
 
void SetQpAssignedUncertainty (double uncertainty)
 Assignes an uncertainty to the momentum measurement.
 
void SetTzeroOffset (double offset)
 Sets an offset to t0.
 
void SetMixedEventMode (bool bMixedEvent)
 Special settings in the mixed-event analysis mode.
 
void AddDecayToReconstructionList (int pdg)
 Adds particle to reconstruction list.
 
void SetPrimaryProbCut (double pVal)
 Sets P-value cut to the topology reconstructor.
 
void SetMaxDistanceBetweenParticlesCut (float cut)
 Sets cut on the distance between secondary tracks at the DCA point.
 
void SetLCut (float cut)
 Sets cut on the distance to the primary vertex from the decay vertex.
 
void SetChiPrimaryCut2D (float cut)
 Sets cut on $\chi^2_{prim}$ of each track for 2-daughter decays.
 
void SetChi2Cut2D (float cut)
 Sets cut on $\chi^2_{geo}$ for 2-daughter decays.
 
void SetLdLCut2D (float cut)
 Sets cut on $l/\Delta l$ for 2-daughter decays.
 
void SetSecondaryCuts (float sigmaMass, float chi2Topo, float ldl)
 Sets cuts on selection of secondary and primary candidates.
 
void SetLdLCutXiOmega (float cut)
 Sets $l/\Delta l$ cut for $\Xi$ and $\Omega$.
 
void SetChi2TopoCutXiOmega (float cut)
 Sets $\chi^2_{topo}$ cut for $\Xi$ and $\Omega$.
 
void SetChi2CutXiOmega (float cut)
 Sets $\chi^2_{geo}$ cut for $\Xi$ and $\Omega$.
 
void SetChi2TopoCutResonances (float cut)
 Sets $\chi^2_{topo}$ cut for resonances.
 
void SetChi2CutResonances (float cut)
 Sets $\chi^2_{geo}$ cut for resonances.
 
void SetPtCutLMVM (float cut)
 Sets the cut on transverse momentum of each daughter track of low mass vector mesons.
 
void SetPCutLMVM (float cut)
 Sets the cut on momentum of each daughter track of low mass vector mesons in dimuon channel.
 
void SetPtCutJPsi (float cut)
 Sets the cut on transverse momentum of each daughter track of $J/\psi$.
 
void SetPtCutCharm (float cut)
 Sets the cut on transverse momentum of each daughter track of open charm particles.
 
void SetChiPrimaryCutCharm (float cut)
 Sets cut on $\chi^2_{prim}$ of each track for open charm particles.
 
void SetLdLCutCharmManybodyDecays (float cut)
 Sets $l/\Delta l$ cut for open charm with >=3 daughters.
 
void SetChi2TopoCutCharmManybodyDecays (float cut)
 Sets $\chi^2_{topo}$ cut for open charm with >=3 daughters.
 
void SetChi2CutCharmManybodyDecays (float cut)
 Sets $\chi^2_{geo}$ cut for open charm with >=3 daughters.
 
void SetLdLCutCharm2D (float cut)
 Sets $l/\Delta l$ cut for open charm with 2 daughters.
 
void SetChi2TopoCutCharm2D (float cut)
 Sets $\chi^2_{topo}$ cut for open charm with 2 daughters.
 
void SetChi2CutCharm2D (float cut)
 Sets $\chi^2_{geo}$ cut for open charm with 2 daughters.
 

Static Public Member Functions

static std::string ToString (EProcessingMode mode)
 String representation of processing mode.
 
static std::string ToString (EPidApproach pid)
 String representation of PID approach.
 
static std::string ToString (EPvUsageMode pvMode)
 String representation of the PV finding mode.
 
static std::string ToString (const FairTrackParam *pParam)
 String representation of.
 
static bool CheckTrackParam (const FairTrackParam *pParam)
 Checks track parameter validity.
 

Private Member Functions

void ApplyConfiguration ()
 Applies configuration from fsConfigName.
 
bool AssignMomentum (CbmGlobalTrack *pTrack, int pdg)
 Assigns momentum to a global track.
 
DcaVector EstimateDcaToOrigin (const CbmStsTrack *pTrack) const
 Estimates distance to the origin.
 
QpAndBeta EstimateQp (const CbmTofHit *pTofHit, int pdg) const
 Estimates q/p of the track, using one TOF hit (Norbert's method)
 
KFPTrackVector MakeKfpTrackVector (const std::vector< const CbmGlobalTrack * > &vpTracks, const std::vector< int > &vTrackIds, const std::vector< float > &vChi2ToPv, bool bAtFirstPoint) const
 Makes a KF-particle track vector.
 
KFVertex MakeKfpPrimaryVertex (float x, float y, float z) const
 Makes a KF vertex.
 
int InferTrackPidTopo (double dca) const
 Infers PID hypothesis for a track using track topology.
 
template<bool UseEvent>
bool ProcessEvent (const CbmEvent *pEvent)
 Processes one event.
 
bool SelectTrack (CbmGlobalTrack *pTrack, int iTrk)
 Selects/rejects a track.
 
double ShiftTofHitsToTzero (const CbmEvent *pEvent)
 Shifts TOF hits to the t0 estimation.
 
void StoreParticles ()
 Stores particles, reconstructed in event to the run topology reconstructor.
 
 ClassDefOverride (V0FinderTask, 0)
 

Private Attributes

double fTzeroOffset {0.}
 Offset for T0.
 
double fMinPionDca {1.5}
 Minimum DCA to PV for pions.
 
double fMinProtonDca {0.5}
 Minimum DCA to PV for protons.
 
double fQpAssignedUncertainty {0.1}
 Assigned relative uncertainty for q/p estimation.
 
int fPrimaryAssignedPdg {321}
 Assigned PDG hypothesis for primary particles.
 
double fMinBetaProton {0.}
 Minimal proton velocity (beta) [c].
 
double fMaxBetaProton {1.}
 Maximal proton velocity (beta) [c].
 
double fMinBetaPion {0.}
 Minimal proton velocity (beta) [c].
 
double fMaxBetaPion {1.}
 Maximal proton velocity (beta) [c].
 
TClonesArray * fpBrRecoEvents {nullptr}
 
TClonesArray * fpBrGlobalTracks {nullptr}
 
TClonesArray * fpBrStsTracks {nullptr}
 
TClonesArray * fpBrTrdTracks {nullptr}
 
TClonesArray * fpBrTofTracks {nullptr}
 
TClonesArray * fpBrStsHits {nullptr}
 
TClonesArray * fpBrTrdHits {nullptr}
 
TClonesArray * fpBrTofHits {nullptr}
 
CbmVertexfpBrPrimaryVertex {nullptr}
 
std::vector< CbmEventTriggers > * fpBrEventTriggers {nullptr}
 
std::vector< DcaVectorfvTrackDca
 Track DCA vector [n global tracks].
 
std::unique_ptr< CbmVertexfpOrigin
 Origin (e.g., can be either reconstructed PV or target)
 
std::shared_ptr< KFParticleTopoReconstructor > fpTopoReconstructorRun
 Main topology reconstructor.
 
std::unique_ptr< KFParticleTopoReconstructor > fpTopoReconstructorEvent
 
EProcessingMode fProcessingMode {EProcessingMode::TimeBased}
 Processing mode.
 
EPidApproach fPidApproach {EPidApproach::Topo}
 PID approach used.
 
EPvUsageMode fPvUsageMode {EPvUsageMode::Target}
 Primary vertex mode.
 
bool fbMixedEventMode {false}
 Run in a mix-event mode.
 
bool fbUseMc {false}
 Run using MC-information.
 
bool fbRunQa {false}
 Run QA.
 
bool fbUsePvChi2Selection {false}
 Select.
 
cbm::core::EnumArray< ECounter, size_t > fCounters {{0}}
 Counters per run.
 
std::unique_ptr< V0FinderQafpQa {nullptr}
 If QA is processed.
 
TString fsQaOutputName {"./V0FinderQa.root"}
 Output QA name.
 
TString fsConfigName {""}
 Name of the config.
 

Static Private Attributes

static constexpr int kPrimaryPdg {321}
 PID hypothesis of primary tracks (kaons?)
 
static constexpr int kUndefPdg {-2}
 Undefined value, such tracks will be skipped.
 
static constexpr float kChi2PvPrimThrsh {3.}
 Chi2 threshold of assigning tracks as primaries in PV reco.
 
static constexpr double kPionMass {0.13957039}
 Pion mass [GeV/c2].
 
static constexpr double kProtonMass {0.938272088}
 Proton mass [GeV/c2].
 
static constexpr double kSpeedOfLight {29.9792458}
 Speed of light [cm/ns].
 

Detailed Description

A class to find V0 candidates in mCBM.

Definition at line 40 of file CbmKFV0FinderTask.h.

Member Enumeration Documentation

◆ ECounter

enum class cbm::kfp::V0FinderTask::ECounter : uint8_t
strong
Enumerator
TracksTotal 
TracksSelected 
TracksInfiniteParam 
TracksWoTofHits 
TracksWNegativeTofHitTime 
TracksWoStsHits 
TracksWoPid 
TracksWoMomentum 
TracksWAtLeastOneTofHit 
TracksWAtLeastTwoTofHits 
TracksWithUnphysicalBeta 
TracksW2Sts2Tof 
Pions 
Protons 
EventsTotal 
EventsWoTzero 
EventsLambdaCand 
KfpEventsLambdaCand 
KfpLambdaCandidates 
END 

Definition at line 44 of file CbmKFV0FinderTask.h.

◆ EPidApproach

enum class cbm::kfp::V0FinderTask::EPidApproach : uint8_t
strong

PID approach used.

Enumerator
Topo 
Mc 

Definition at line 70 of file CbmKFV0FinderTask.h.

◆ EProcessingMode

enum class cbm::kfp::V0FinderTask::EProcessingMode : uint8_t
strong

Data processing mode.

Enumerator
TimeBased 
EventBased 

Definition at line 78 of file CbmKFV0FinderTask.h.

◆ EPvUsageMode

enum class cbm::kfp::V0FinderTask::EPvUsageMode : uint8_t
strong

Primary vertex finding/handling mode.

Enumerator
Target 
Reconstructed 
ReconstructSingle 
ReconstructMultiple 
Mc 

Definition at line 86 of file CbmKFV0FinderTask.h.

Constructor & Destructor Documentation

◆ V0FinderTask() [1/3]

cbm::kfp::V0FinderTask::V0FinderTask ( int verbose = 1)
inlineexplicit

Constructor.

Parameters
verboseVerbosity of the task

Definition at line 114 of file CbmKFV0FinderTask.h.

◆ ~V0FinderTask()

cbm::kfp::V0FinderTask::~V0FinderTask ( )
default

Destructor.

◆ V0FinderTask() [2/3]

cbm::kfp::V0FinderTask::V0FinderTask ( const V0FinderTask & )
delete

◆ V0FinderTask() [3/3]

cbm::kfp::V0FinderTask::V0FinderTask ( V0FinderTask && )
delete

Member Function Documentation

◆ AddDecayToReconstructionList()

void cbm::kfp::V0FinderTask::AddDecayToReconstructionList ( int pdg)
inline

Adds particle to reconstruction list.

Parameters
pdgA PDG code of the particle to be reconstructed

Definition at line 229 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

Referenced by ApplyConfiguration().

◆ ApplyConfiguration()

void V0FinderTask::ApplyConfiguration ( )
private

◆ AssignMomentum()

bool V0FinderTask::AssignMomentum ( CbmGlobalTrack * pTrack,
int pdg )
private

Assigns momentum to a global track.

Parameters
pTrackPointer to a global track
pdgPID hypothesis
Returns
true Momentum is set
false Momentum is not set (the track must be rejected)

Definition at line 130 of file CbmKFV0FinderTask.cxx.

References EstimateQp(), fbRunQa, fCounters, fMaxBetaPion, fMaxBetaProton, fMinBetaPion, fMinBetaProton, fpBrTofHits, fpBrTofTracks, fpQa, CbmGlobalTrack::GetParamFirst(), CbmGlobalTrack::GetParamLast(), CbmGlobalTrack::GetTofTrackIndex(), nTofHits, CbmGlobalTrack::SetParamFirst(), CbmGlobalTrack::SetParamLast(), TracksWAtLeastOneTofHit, TracksWithUnphysicalBeta, TracksWNegativeTofHitTime, and TracksWoTofHits.

Referenced by SelectTrack().

◆ CheckTrackParam()

bool V0FinderTask::CheckTrackParam ( const FairTrackParam * pParam)
static

Checks track parameter validity.

Parameters
pParamPointer to a track parameter
Returns
true The parameters are ok
false The parameters are invalid

Definition at line 302 of file CbmKFV0FinderTask.cxx.

Referenced by SelectTrack().

◆ ClassDefOverride()

cbm::kfp::V0FinderTask::ClassDefOverride ( V0FinderTask ,
0  )
private

◆ EstimateDcaToOrigin()

V0FinderTask::DcaVector V0FinderTask::EstimateDcaToOrigin ( const CbmStsTrack * pTrack) const
private

Estimates distance to the origin.

Parameters
pStsTrackSTS track
Returns
Vector of the DCA {abs, ex, ey}

Definition at line 327 of file CbmKFV0FinderTask.cxx.

References cbm::kfp::V0FinderTask::DcaVector::fAbs, fpBrStsHits, fpOrigin, cbm::kfp::V0FinderTask::DcaVector::fX, cbm::kfp::V0FinderTask::DcaVector::fY, CbmStsTrack::GetNofStsHits(), and CbmStsTrack::GetStsHitIndex().

Referenced by SelectTrack().

◆ EstimateQp()

V0FinderTask::QpAndBeta V0FinderTask::EstimateQp ( const CbmTofHit * pTofHit,
int pdg ) const
private

Estimates q/p of the track, using one TOF hit (Norbert's method)

Parameters
pTofHitPointer to a TOF hit
pdgPID hypothesis
Note
Gives smaller statistical uncertainty, but has a systematic effect (to be studied with MC)

Definition at line 349 of file CbmKFV0FinderTask.cxx.

References cbm::kfp::V0FinderTask::QpAndBeta::fBeta, cbm::kfp::V0FinderTask::QpAndBeta::fBetaVar, fpOrigin, cbm::kfp::V0FinderTask::QpAndBeta::fQp, fQpAssignedUncertainty, cbm::kfp::V0FinderTask::QpAndBeta::fQpVar, CbmPixelHit::GetDx(), CbmPixelHit::GetDy(), CbmHit::GetDz(), CbmHit::GetTime(), CbmHit::GetTimeError(), CbmPixelHit::GetX(), CbmPixelHit::GetY(), CbmHit::GetZ(), kPionMass, kProtonMass, kSpeedOfLight, x, and y.

Referenced by AssignMomentum().

◆ Exec()

void V0FinderTask::Exec ( Option_t * )
override

◆ Finish()

◆ GetKFParticleFinder() [1/2]

◆ GetKFParticleFinder() [2/2]

const KFParticleFinder * cbm::kfp::V0FinderTask::GetKFParticleFinder ( ) const
inline

Constant access to the KfParticleFinder of the run topology reconstructor.

Definition at line 144 of file CbmKFV0FinderTask.h.

References fpTopoReconstructorRun.

◆ GetTopoReconstructor()

const std::shared_ptr< const KFParticleTopoReconstructor > cbm::kfp::V0FinderTask::GetTopoReconstructor ( ) const
inline

Accessor to the topology reconstructor.

Definition at line 150 of file CbmKFV0FinderTask.h.

References fpTopoReconstructorRun.

◆ GetTrackDca()

const std::vector< DcaVector > & cbm::kfp::V0FinderTask::GetTrackDca ( )
inline

Accessor to the track DCA.

Definition at line 156 of file CbmKFV0FinderTask.h.

References fvTrackDca.

◆ GetTrackDcaToOrigin()

const auto & cbm::kfp::V0FinderTask::GetTrackDcaToOrigin ( ) const
inline

Gets DCA to origin.

Definition at line 147 of file CbmKFV0FinderTask.h.

References fvTrackDca.

◆ InferTrackPidTopo()

int V0FinderTask::InferTrackPidTopo ( double dca) const
private

Infers PID hypothesis for a track using track topology.

Parameters
dcaAn absolute value of DCA to the PV estimation
Returns
PDG code of the particle
-2 If the PID analysis cannot be performed for a track of a given quality

Definition at line 471 of file CbmKFV0FinderTask.cxx.

References fMinPionDca, fMinProtonDca, and kPrimaryPdg.

Referenced by SelectTrack().

◆ Init()

◆ MakeKfpPrimaryVertex()

KFVertex V0FinderTask::MakeKfpPrimaryVertex ( float x,
float y,
float z ) const
private

Makes a KF vertex.

Parameters
xx-coordinate of PV [cm]
yy-coordinate of PV [cm]
zz-coordinate of PV [cm]

Definition at line 738 of file CbmKFV0FinderTask.cxx.

References x, and y.

Referenced by ProcessEvent().

◆ MakeKfpTrackVector()

KFPTrackVector V0FinderTask::MakeKfpTrackVector ( const std::vector< const CbmGlobalTrack * > & vpTracks,
const std::vector< int > & vTrackIds,
const std::vector< float > & vChi2ToPv,
bool bAtFirstPoint ) const
private

Makes a KF-particle track vector.

Parameters
vpTracksVector of pointers to global tracks
vTrackIdsVector of track indices
vChi2ToPvVector of chi2 of assigning a track as primary
bAtFirstPointtrue: the first track point is used, false: the last track point is used
Note
No track selection is performed

Definition at line 603 of file CbmKFV0FinderTask.cxx.

Referenced by ProcessEvent().

◆ operator=() [1/2]

V0FinderTask & cbm::kfp::V0FinderTask::operator= ( const V0FinderTask & )
delete

◆ operator=() [2/2]

V0FinderTask & cbm::kfp::V0FinderTask::operator= ( V0FinderTask && )
delete

◆ ProcessEvent()

template<bool UseEvent>
bool V0FinderTask::ProcessEvent ( const CbmEvent * pEvent)
private

Processes one event.

Template Parameters
UseEventExplicit flag of using the CbmEvent pointer to access data
Parameters
pEventPointer to event
Returns
true Event is accepted for V0 reconstruction
false Event is rejected for V0 reconstruction
Note
In the event-based mode, the ProcessEvent(nullptr) must be called explicitly

Definition at line 197 of file CbmKFV0FinderTask.cxx.

References EventsLambdaCand, EventsWoTzero, fbRunQa, fCounters, fpBrGlobalTracks, fpOrigin, fpQa, fpTopoReconstructorEvent, fPvUsageMode, CbmEvent::GetIndex(), CbmEvent::GetNofData(), CbmEvent::GetNumber(), KfpEventsLambdaCand, KfpLambdaCandidates, kGlobalTrack, CbmEventTriggers::Lambda, MakeKfpPrimaryVertex(), MakeKfpTrackVector(), Pions, Protons, SelectTrack(), ShiftTofHitsToTzero(), StoreParticles(), Target, TracksSelected, TracksTotal, x, and y.

Referenced by Exec().

◆ SelectTrack()

bool V0FinderTask::SelectTrack ( CbmGlobalTrack * pTrack,
int iTrk )
private

Selects/rejects a track.

Parameters
pTrackA pointer to global track
iTrkGlobal index of the track
Returns
true: Track is selected
false: Track is rejected
Note
Modifies the track, assigning momentum and PID hypothesis

In this function the preliminary selection of tracks is performed. The selection criteria: 1) the track has at least two STS hits for estimation of the PDG codes (pi-, proton, or primary (kaon PDG)) 2) the track has at least one TOF hit for estimation of its momentum 2.1) tracks with the TOF hit times (t - t0) < 0 are rejected 2.2) tracks with the beta > 1 are rejected 3) the track has defined parameters in the first hit NOTE: this cut was used, because the tracks with negative TOF times were not rejected. Now it seems, that the track parameters are always defined.

Definition at line 753 of file CbmKFV0FinderTask.cxx.

References AssignMomentum(), CheckTrackParam(), EstimateDcaToOrigin(), fbRunQa, fCounters, fpBrStsTracks, fPidApproach, fpQa, fvTrackDca, CbmGlobalTrack::GetParamFirst(), CbmGlobalTrack::GetStsTrackIndex(), InferTrackPidTopo(), kUndefPdg, CbmGlobalTrack::SetPidHypo(), Topo, TracksInfiniteParam, TracksWoMomentum, TracksWoPid, and TracksWoStsHits.

Referenced by ProcessEvent().

◆ SetChi2Cut2D()

void cbm::kfp::V0FinderTask::SetChi2Cut2D ( float cut)
inline

Sets cut on $\chi^2_{geo}$ for 2-daughter decays.

Parameters
cutCut value

Definition at line 253 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

Referenced by ApplyConfiguration().

◆ SetChi2CutCharm2D()

void cbm::kfp::V0FinderTask::SetChi2CutCharm2D ( float cut)
inline

Sets $\chi^2_{geo}$ cut for open charm with 2 daughters.

Parameters
cutCut value

Definition at line 330 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

◆ SetChi2CutCharmManybodyDecays()

void cbm::kfp::V0FinderTask::SetChi2CutCharmManybodyDecays ( float cut)
inline

Sets $\chi^2_{geo}$ cut for open charm with >=3 daughters.

Parameters
cutCut value

Definition at line 318 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

◆ SetChi2CutResonances()

void cbm::kfp::V0FinderTask::SetChi2CutResonances ( float cut)
inline

Sets $\chi^2_{geo}$ cut for resonances.

Parameters
cutCut value

Definition at line 286 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

◆ SetChi2CutXiOmega()

void cbm::kfp::V0FinderTask::SetChi2CutXiOmega ( float cut)
inline

Sets $\chi^2_{geo}$ cut for $\Xi$ and $\Omega$.

Parameters
cutCut value

Definition at line 278 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

◆ SetChi2TopoCutCharm2D()

void cbm::kfp::V0FinderTask::SetChi2TopoCutCharm2D ( float cut)
inline

Sets $\chi^2_{topo}$ cut for open charm with 2 daughters.

Parameters
cutCut value

Definition at line 326 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

◆ SetChi2TopoCutCharmManybodyDecays()

void cbm::kfp::V0FinderTask::SetChi2TopoCutCharmManybodyDecays ( float cut)
inline

Sets $\chi^2_{topo}$ cut for open charm with >=3 daughters.

Parameters
cutCut value

Definition at line 314 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

◆ SetChi2TopoCutResonances()

void cbm::kfp::V0FinderTask::SetChi2TopoCutResonances ( float cut)
inline

Sets $\chi^2_{topo}$ cut for resonances.

Parameters
cutCut value

Definition at line 282 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

◆ SetChi2TopoCutXiOmega()

void cbm::kfp::V0FinderTask::SetChi2TopoCutXiOmega ( float cut)
inline

Sets $\chi^2_{topo}$ cut for $\Xi$ and $\Omega$.

Parameters
cutCut value

Definition at line 274 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

◆ SetChiPrimaryCut2D()

void cbm::kfp::V0FinderTask::SetChiPrimaryCut2D ( float cut)
inline

Sets cut on $\chi^2_{prim}$ of each track for 2-daughter decays.

Parameters
cutCut value

Definition at line 249 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

Referenced by ApplyConfiguration().

◆ SetChiPrimaryCutCharm()

void cbm::kfp::V0FinderTask::SetChiPrimaryCutCharm ( float cut)
inline

Sets cut on $\chi^2_{prim}$ of each track for open charm particles.

Parameters
cutCut value [GeV/c]

Definition at line 306 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

◆ SetConfigName()

void cbm::kfp::V0FinderTask::SetConfigName ( const TString & fileName)
inline

Sets name of the configuration file.

Parameters
fileNameName of the config file

Definition at line 162 of file CbmKFV0FinderTask.h.

References fsConfigName.

◆ SetLCut()

void cbm::kfp::V0FinderTask::SetLCut ( float cut)
inline

Sets cut on the distance to the primary vertex from the decay vertex.

Parameters
cutCut value [cm]

Definition at line 245 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

Referenced by ApplyConfiguration().

◆ SetLdLCut2D()

void cbm::kfp::V0FinderTask::SetLdLCut2D ( float cut)
inline

Sets cut on $l/\Delta l$ for 2-daughter decays.

Parameters
cutCut value

Definition at line 257 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

Referenced by ApplyConfiguration().

◆ SetLdLCutCharm2D()

void cbm::kfp::V0FinderTask::SetLdLCutCharm2D ( float cut)
inline

Sets $l/\Delta l$ cut for open charm with 2 daughters.

Parameters
cutCut value

Definition at line 322 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

◆ SetLdLCutCharmManybodyDecays()

void cbm::kfp::V0FinderTask::SetLdLCutCharmManybodyDecays ( float cut)
inline

Sets $l/\Delta l$ cut for open charm with >=3 daughters.

Parameters
cutCut value

Definition at line 310 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

◆ SetLdLCutXiOmega()

void cbm::kfp::V0FinderTask::SetLdLCutXiOmega ( float cut)
inline

Sets $l/\Delta l$ cut for $\Xi$ and $\Omega$.

Parameters
cutCut value

Definition at line 270 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

◆ SetMaxDistanceBetweenParticlesCut()

void cbm::kfp::V0FinderTask::SetMaxDistanceBetweenParticlesCut ( float cut)
inline

Sets cut on the distance between secondary tracks at the DCA point.

Parameters
cutCut value [cm]

Definition at line 241 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

◆ SetMinPionDca()

void cbm::kfp::V0FinderTask::SetMinPionDca ( double dca)
inline

Sets minimal pion DCA to primary vertex.

Parameters
dcaDCA [cm]

Definition at line 199 of file CbmKFV0FinderTask.h.

References fMinPionDca.

Referenced by ApplyConfiguration().

◆ SetMinProtonDca()

void cbm::kfp::V0FinderTask::SetMinProtonDca ( double dca)
inline

Sets minimal proton DCA to primary vertex.

Parameters
dcaDCA [cm]

Definition at line 203 of file CbmKFV0FinderTask.h.

References fMinProtonDca.

Referenced by ApplyConfiguration().

◆ SetMixedEventMode()

void cbm::kfp::V0FinderTask::SetMixedEventMode ( bool bMixedEvent)
inline

Special settings in the mixed-event analysis mode.

Parameters
bMixedEventFlag: true - run in the mixed-event mode

Definition at line 222 of file CbmKFV0FinderTask.h.

References fbMixedEventMode.

◆ SetPCutLMVM()

void cbm::kfp::V0FinderTask::SetPCutLMVM ( float cut)
inline

Sets the cut on momentum of each daughter track of low mass vector mesons in dimuon channel.

Parameters
cutCut value [GeV/c]

Definition at line 294 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

◆ SetPidApproach()

void cbm::kfp::V0FinderTask::SetPidApproach ( EPidApproach pid)
inline

Sets PID approach.

Definition at line 168 of file CbmKFV0FinderTask.h.

References fPidApproach.

◆ SetPionVelocityRange()

void cbm::kfp::V0FinderTask::SetPionVelocityRange ( double vMin,
double vMax )
inline

Sets pion velocity range.

Parameters
vMinMinimal velocity [cm/ns]
vMaxMaximal velocity [cm/ns]

Definition at line 182 of file CbmKFV0FinderTask.h.

References fMaxBetaPion, fMinBetaPion, and kSpeedOfLight.

Referenced by ApplyConfiguration().

◆ SetPrimaryProbCut()

void cbm::kfp::V0FinderTask::SetPrimaryProbCut ( double pVal)
inline

Sets P-value cut to the topology reconstructor.

Parameters
pValP-value cut

Definition at line 233 of file CbmKFV0FinderTask.h.

References fpTopoReconstructorRun, and CbmKFParticleFinder::InversedChi2Prob().

◆ SetProcessingMode()

void cbm::kfp::V0FinderTask::SetProcessingMode ( EProcessingMode mode)
inline

Sets processing mode (time-based/event-based)

Definition at line 165 of file CbmKFV0FinderTask.h.

References fProcessingMode.

◆ SetProtonVelocityRange()

void cbm::kfp::V0FinderTask::SetProtonVelocityRange ( double vMin,
double vMax )
inline

Sets proton velocity range.

Parameters
vMinMinimal velocity [cm/ns]
vMaxMaximal velocity [cm/ns]

Definition at line 191 of file CbmKFV0FinderTask.h.

References fMaxBetaProton, fMinBetaProton, and kSpeedOfLight.

Referenced by ApplyConfiguration().

◆ SetPtCutCharm()

void cbm::kfp::V0FinderTask::SetPtCutCharm ( float cut)
inline

Sets the cut on transverse momentum of each daughter track of open charm particles.

Parameters
cutCut value [GeV/c]

Definition at line 302 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

◆ SetPtCutJPsi()

void cbm::kfp::V0FinderTask::SetPtCutJPsi ( float cut)
inline

Sets the cut on transverse momentum of each daughter track of $J/\psi$.

Parameters
cutCut value [GeV/c]

Definition at line 298 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

◆ SetPtCutLMVM()

void cbm::kfp::V0FinderTask::SetPtCutLMVM ( float cut)
inline

Sets the cut on transverse momentum of each daughter track of low mass vector mesons.

Parameters
cutCut value [GeV/c]

Definition at line 290 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

◆ SetPvFindingMode()

void cbm::kfp::V0FinderTask::SetPvFindingMode ( EPvUsageMode mode)
inline

Sets PV finding mode.

Definition at line 171 of file CbmKFV0FinderTask.h.

References fPvUsageMode.

◆ SetQaOutputFileName()

void cbm::kfp::V0FinderTask::SetQaOutputFileName ( const TString & fileName)
inline

Sets a file name for the QA.

Parameters
fileNameName of file

Definition at line 207 of file CbmKFV0FinderTask.h.

References fsQaOutputName.

◆ SetQpAssignedUncertainty()

void cbm::kfp::V0FinderTask::SetQpAssignedUncertainty ( double uncertainty)
inline

Assignes an uncertainty to the momentum measurement.

Parameters
uncertaintyRelative uncertainty ( = sqrt(var(q/p)) / (q/p))

Definition at line 211 of file CbmKFV0FinderTask.h.

References fQpAssignedUncertainty.

Referenced by ApplyConfiguration().

◆ SetRunQa()

void cbm::kfp::V0FinderTask::SetRunQa ( bool bRunQa)
inline

Sets the flag: if the QA should be executed.

Definition at line 177 of file CbmKFV0FinderTask.h.

References fbRunQa.

◆ SetSecondaryCuts()

void cbm::kfp::V0FinderTask::SetSecondaryCuts ( float sigmaMass,
float chi2Topo,
float ldl )
inline

Sets cuts on selection of secondary and primary candidates.

Parameters
sigmaMass$\sigma_{M}$ [GeV/c2]
chi2Topo$\chi^2_{topo}$
ldl$l/\Delta l$

Definition at line 263 of file CbmKFV0FinderTask.h.

References GetKFParticleFinder().

◆ SetTzeroOffset()

void cbm::kfp::V0FinderTask::SetTzeroOffset ( double offset)
inline

Sets an offset to t0.

Parameters
offsetAn offset [ns]

Definition at line 215 of file CbmKFV0FinderTask.h.

References fTzeroOffset.

Referenced by ApplyConfiguration().

◆ SetUseMc()

void cbm::kfp::V0FinderTask::SetUseMc ( bool bUseMc)
inline

Sets the MC flag (if MC information required)

Definition at line 174 of file CbmKFV0FinderTask.h.

References fbUseMc.

◆ ShiftTofHitsToTzero()

double V0FinderTask::ShiftTofHitsToTzero ( const CbmEvent * pEvent)
private

Shifts TOF hits to the t0 estimation.

Parameters
pEventPointer to the event
Returns
value of estimated t0 [ns]

Definition at line 800 of file CbmKFV0FinderTask.cxx.

References fpBrTofHits, fTzeroOffset, CbmEvent::GetIndex(), CbmEvent::GetNofData(), kTofHit, and nTofHits.

Referenced by ProcessEvent().

◆ StoreParticles()

void V0FinderTask::StoreParticles ( )
private

Stores particles, reconstructed in event to the run topology reconstructor.

Definition at line 831 of file CbmKFV0FinderTask.cxx.

References fpTopoReconstructorEvent, fpTopoReconstructorRun, and size().

Referenced by ProcessEvent().

◆ ToString() [1/4]

std::string V0FinderTask::ToString ( const FairTrackParam * pParam)
static

String representation of.

Parameters
pParamParameters of the track

Definition at line 896 of file CbmKFV0FinderTask.cxx.

◆ ToString() [2/4]

std::string V0FinderTask::ToString ( EPidApproach pid)
static

String representation of PID approach.

Parameters
pidPID approach

Definition at line 871 of file CbmKFV0FinderTask.cxx.

References Mc, and Topo.

◆ ToString() [3/4]

std::string V0FinderTask::ToString ( EProcessingMode mode)
static

String representation of processing mode.

Parameters
modeData processing mode

Definition at line 860 of file CbmKFV0FinderTask.cxx.

References EventBased, and TimeBased.

Referenced by Init().

◆ ToString() [4/4]

std::string V0FinderTask::ToString ( EPvUsageMode pvMode)
static

String representation of the PV finding mode.

Parameters
pvModePV finding mode

Definition at line 882 of file CbmKFV0FinderTask.cxx.

References Mc, Reconstructed, ReconstructMultiple, ReconstructSingle, and Target.

Member Data Documentation

◆ fbMixedEventMode

bool cbm::kfp::V0FinderTask::fbMixedEventMode {false}
private

Run in a mix-event mode.

Definition at line 492 of file CbmKFV0FinderTask.h.

Referenced by SetMixedEventMode().

◆ fbRunQa

bool cbm::kfp::V0FinderTask::fbRunQa {false}
private

Run QA.

Definition at line 494 of file CbmKFV0FinderTask.h.

Referenced by AssignMomentum(), Finish(), Init(), ProcessEvent(), SelectTrack(), and SetRunQa().

◆ fbUseMc

bool cbm::kfp::V0FinderTask::fbUseMc {false}
private

Run using MC-information.

Definition at line 493 of file CbmKFV0FinderTask.h.

Referenced by Init(), and SetUseMc().

◆ fbUsePvChi2Selection

bool cbm::kfp::V0FinderTask::fbUsePvChi2Selection {false}
private

Select.

Definition at line 495 of file CbmKFV0FinderTask.h.

◆ fCounters

cbm::core::EnumArray<ECounter, size_t> cbm::kfp::V0FinderTask::fCounters {{0}}
private

Counters per run.

Definition at line 498 of file CbmKFV0FinderTask.h.

Referenced by AssignMomentum(), Exec(), Finish(), Init(), ProcessEvent(), and SelectTrack().

◆ fMaxBetaPion

double cbm::kfp::V0FinderTask::fMaxBetaPion {1.}
private

Maximal proton velocity (beta) [c].

Definition at line 458 of file CbmKFV0FinderTask.h.

Referenced by AssignMomentum(), and SetPionVelocityRange().

◆ fMaxBetaProton

double cbm::kfp::V0FinderTask::fMaxBetaProton {1.}
private

Maximal proton velocity (beta) [c].

Definition at line 456 of file CbmKFV0FinderTask.h.

Referenced by AssignMomentum(), and SetProtonVelocityRange().

◆ fMinBetaPion

double cbm::kfp::V0FinderTask::fMinBetaPion {0.}
private

Minimal proton velocity (beta) [c].

Definition at line 457 of file CbmKFV0FinderTask.h.

Referenced by AssignMomentum(), and SetPionVelocityRange().

◆ fMinBetaProton

double cbm::kfp::V0FinderTask::fMinBetaProton {0.}
private

Minimal proton velocity (beta) [c].

Definition at line 455 of file CbmKFV0FinderTask.h.

Referenced by AssignMomentum(), and SetProtonVelocityRange().

◆ fMinPionDca

double cbm::kfp::V0FinderTask::fMinPionDca {1.5}
private

Minimum DCA to PV for pions.

Definition at line 451 of file CbmKFV0FinderTask.h.

Referenced by InferTrackPidTopo(), and SetMinPionDca().

◆ fMinProtonDca

double cbm::kfp::V0FinderTask::fMinProtonDca {0.5}
private

Minimum DCA to PV for protons.

Definition at line 452 of file CbmKFV0FinderTask.h.

Referenced by InferTrackPidTopo(), and SetMinProtonDca().

◆ fpBrEventTriggers

std::vector<CbmEventTriggers>* cbm::kfp::V0FinderTask::fpBrEventTriggers {nullptr}
private

Definition at line 472 of file CbmKFV0FinderTask.h.

Referenced by Exec(), and Init().

◆ fpBrGlobalTracks

TClonesArray* cbm::kfp::V0FinderTask::fpBrGlobalTracks {nullptr}
private

Definition at line 462 of file CbmKFV0FinderTask.h.

Referenced by Exec(), Init(), and ProcessEvent().

◆ fpBrPrimaryVertex

CbmVertex* cbm::kfp::V0FinderTask::fpBrPrimaryVertex {nullptr}
private

Definition at line 469 of file CbmKFV0FinderTask.h.

Referenced by Init().

◆ fpBrRecoEvents

TClonesArray* cbm::kfp::V0FinderTask::fpBrRecoEvents {nullptr}
private

Definition at line 461 of file CbmKFV0FinderTask.h.

Referenced by Exec(), and Init().

◆ fpBrStsHits

TClonesArray* cbm::kfp::V0FinderTask::fpBrStsHits {nullptr}
private

Definition at line 466 of file CbmKFV0FinderTask.h.

Referenced by EstimateDcaToOrigin(), and Init().

◆ fpBrStsTracks

TClonesArray* cbm::kfp::V0FinderTask::fpBrStsTracks {nullptr}
private

Definition at line 463 of file CbmKFV0FinderTask.h.

Referenced by Init(), and SelectTrack().

◆ fpBrTofHits

TClonesArray* cbm::kfp::V0FinderTask::fpBrTofHits {nullptr}
private

Definition at line 468 of file CbmKFV0FinderTask.h.

Referenced by AssignMomentum(), Init(), and ShiftTofHitsToTzero().

◆ fpBrTofTracks

TClonesArray* cbm::kfp::V0FinderTask::fpBrTofTracks {nullptr}
private

Definition at line 465 of file CbmKFV0FinderTask.h.

Referenced by AssignMomentum(), and Init().

◆ fpBrTrdHits

TClonesArray* cbm::kfp::V0FinderTask::fpBrTrdHits {nullptr}
private

Definition at line 467 of file CbmKFV0FinderTask.h.

Referenced by Init().

◆ fpBrTrdTracks

TClonesArray* cbm::kfp::V0FinderTask::fpBrTrdTracks {nullptr}
private

Definition at line 464 of file CbmKFV0FinderTask.h.

Referenced by Init().

◆ fPidApproach

EPidApproach cbm::kfp::V0FinderTask::fPidApproach {EPidApproach::Topo}
private

PID approach used.

Definition at line 490 of file CbmKFV0FinderTask.h.

Referenced by Init(), SelectTrack(), and SetPidApproach().

◆ fpOrigin

std::unique_ptr<CbmVertex> cbm::kfp::V0FinderTask::fpOrigin
private
Initial value:
{
std::make_unique<CbmVertex>()}

Origin (e.g., can be either reconstructed PV or target)

Definition at line 477 of file CbmKFV0FinderTask.h.

Referenced by EstimateDcaToOrigin(), EstimateQp(), Init(), and ProcessEvent().

◆ fpQa

std::unique_ptr<V0FinderQa> cbm::kfp::V0FinderTask::fpQa {nullptr}
private

If QA is processed.

Definition at line 499 of file CbmKFV0FinderTask.h.

Referenced by AssignMomentum(), Finish(), Init(), ProcessEvent(), and SelectTrack().

◆ fPrimaryAssignedPdg

int cbm::kfp::V0FinderTask::fPrimaryAssignedPdg {321}
private

Assigned PDG hypothesis for primary particles.

Definition at line 454 of file CbmKFV0FinderTask.h.

Referenced by ApplyConfiguration().

◆ fProcessingMode

EProcessingMode cbm::kfp::V0FinderTask::fProcessingMode {EProcessingMode::TimeBased}
private

Processing mode.

Definition at line 489 of file CbmKFV0FinderTask.h.

Referenced by Exec(), Init(), and SetProcessingMode().

◆ fpTopoReconstructorEvent

std::unique_ptr<KFParticleTopoReconstructor> cbm::kfp::V0FinderTask::fpTopoReconstructorEvent
private
Initial value:
{
std::make_unique<KFParticleTopoReconstructor>()}

Definition at line 485 of file CbmKFV0FinderTask.h.

Referenced by Init(), ProcessEvent(), and StoreParticles().

◆ fpTopoReconstructorRun

std::shared_ptr<KFParticleTopoReconstructor> cbm::kfp::V0FinderTask::fpTopoReconstructorRun
private
Initial value:
{
std::make_shared<KFParticleTopoReconstructor>()}

Main topology reconstructor.

Definition at line 483 of file CbmKFV0FinderTask.h.

Referenced by Exec(), GetKFParticleFinder(), GetKFParticleFinder(), GetTopoReconstructor(), Init(), SetPrimaryProbCut(), and StoreParticles().

◆ fPvUsageMode

EPvUsageMode cbm::kfp::V0FinderTask::fPvUsageMode {EPvUsageMode::Target}
private

Primary vertex mode.

Definition at line 491 of file CbmKFV0FinderTask.h.

Referenced by Init(), ProcessEvent(), and SetPvFindingMode().

◆ fQpAssignedUncertainty

double cbm::kfp::V0FinderTask::fQpAssignedUncertainty {0.1}
private

Assigned relative uncertainty for q/p estimation.

Definition at line 453 of file CbmKFV0FinderTask.h.

Referenced by EstimateQp(), and SetQpAssignedUncertainty().

◆ fsConfigName

TString cbm::kfp::V0FinderTask::fsConfigName {""}
private

Name of the config.

Definition at line 501 of file CbmKFV0FinderTask.h.

Referenced by ApplyConfiguration(), Init(), and SetConfigName().

◆ fsQaOutputName

TString cbm::kfp::V0FinderTask::fsQaOutputName {"./V0FinderQa.root"}
private

Output QA name.

Definition at line 500 of file CbmKFV0FinderTask.h.

Referenced by Finish(), and SetQaOutputFileName().

◆ fTzeroOffset

double cbm::kfp::V0FinderTask::fTzeroOffset {0.}
private

Offset for T0.

Definition at line 450 of file CbmKFV0FinderTask.h.

Referenced by SetTzeroOffset(), and ShiftTofHitsToTzero().

◆ fvTrackDca

std::vector<DcaVector> cbm::kfp::V0FinderTask::fvTrackDca
private

Track DCA vector [n global tracks].

Definition at line 476 of file CbmKFV0FinderTask.h.

Referenced by Exec(), GetTrackDca(), GetTrackDcaToOrigin(), and SelectTrack().

◆ kChi2PvPrimThrsh

float cbm::kfp::V0FinderTask::kChi2PvPrimThrsh {3.}
staticconstexprprivate

Chi2 threshold of assigning tracks as primaries in PV reco.

Definition at line 442 of file CbmKFV0FinderTask.h.

◆ kPionMass

double cbm::kfp::V0FinderTask::kPionMass {0.13957039}
staticconstexprprivate

Pion mass [GeV/c2].

Definition at line 445 of file CbmKFV0FinderTask.h.

Referenced by EstimateQp().

◆ kPrimaryPdg

int cbm::kfp::V0FinderTask::kPrimaryPdg {321}
staticconstexprprivate

PID hypothesis of primary tracks (kaons?)

Definition at line 440 of file CbmKFV0FinderTask.h.

Referenced by InferTrackPidTopo().

◆ kProtonMass

double cbm::kfp::V0FinderTask::kProtonMass {0.938272088}
staticconstexprprivate

Proton mass [GeV/c2].

Definition at line 446 of file CbmKFV0FinderTask.h.

Referenced by EstimateQp().

◆ kSpeedOfLight

double cbm::kfp::V0FinderTask::kSpeedOfLight {29.9792458}
staticconstexprprivate

Speed of light [cm/ns].

Definition at line 447 of file CbmKFV0FinderTask.h.

Referenced by EstimateQp(), SetPionVelocityRange(), and SetProtonVelocityRange().

◆ kUndefPdg

int cbm::kfp::V0FinderTask::kUndefPdg {-2}
staticconstexprprivate

Undefined value, such tracks will be skipped.

Definition at line 441 of file CbmKFV0FinderTask.h.

Referenced by SelectTrack().


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