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

#include <LmvmTask.h>

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

Public Member Functions

 LmvmTask ()
 
virtual ~LmvmTask ()
 
virtual InitStatus Init ()
 
virtual void Exec (Option_t *option)
 
template<typename T>
T * InitOrFatal (const std::string &name)
 
void PairSource (const LmvmCand &candP, const LmvmCand &candM, ELmvmAnaStep step, const LmvmKinePar &parRec)
 
void FillPairHists (const LmvmCand &candP, const LmvmCand &candM, const LmvmKinePar &parMc, const LmvmKinePar &parRec, ELmvmAnaStep step)
 
void FillMomHists (const CbmMCTrack *mct, const LmvmCand *cand, ELmvmSrc src, ELmvmAnaStep step)
 
void FillCandsForEventMix ()
 
void TrackSource (const LmvmCand &cand, ELmvmAnaStep step, int pdg)
 
void BgPairPdg (const LmvmCand &candP, const LmvmCand &candM, ELmvmAnaStep step)
 
void DoMcTrack ()
 
void DoMcPair ()
 
void FillRichRingNofHits ()
 
bool IsRecoTrackAccepted (const CbmGlobalTrack *gTrack)
 
void RichPmtXY ()
 
void FillTopologyCands ()
 
void FillCands ()
 
void AssignMcToCands (std::vector< LmvmCand > &cands)
 
void AssignMcToTopologyCands (std::vector< LmvmCand > &topoCands)
 
void FillSourceHistos (const LmvmCand &cand)
 
void InitHists ()
 
double MinvScale (const CbmMCTrack *mct, const std::string &signal)
 
void AnalyseCandidates ()
 
void AnalyseGlobalTracks ()
 
void AnalyseRichRings ()
 
void AnalyseProperties ()
 
void FillHistosForFastSim ()
 
void CheckLikeSignCorrelations ()
 
void CheckMismatches (const CbmGlobalTrack *gTrack, int pdg, bool isElectron, const std::string &ptcl, double weight)
 
void BetaMom (const CbmMCTrack *mct, const CbmGlobalTrack *gTrack, const std::string &ptcl)
 
void PidVsMom (const CbmGlobalTrack *gTrack, int iGTrack, int pdg, double mom, bool isAcc)
 
CbmMCTrackGetMcTrackSts (int stsIndex)
 
void CheckGammaConvAndPi0 ()
 
void CheckClosestMvdHit (int mvdStationNum, const std::string &hist, const std::string &histQa)
 
void CheckTopologyCut (ELmvmTopologyCut cut, const std::string &name)
 
void CalculateNofTopologyPairs (const std::string &name, ELmvmSrc src)
 
void MvdCutMcDistance ()
 
void CombinatorialPairs ()
 
void RatioMomentum (const CbmMCTrack *mct, const LmvmCand &cand, ELmvmAnaStep step, int pdg)
 
void CheckTofId (const CbmMCTrack *mcTrack, const LmvmCand &cand, ELmvmAnaStep step, int pdg)
 
bool IsInTofPile (double mom, double m2)
 
bool IsInBox (double boxX, double boxY, double xVal, double yVal, double width)
 
std::string GetPidString (const CbmMCTrack *mct, const LmvmCand *cand)
 
std::string GetPidString (double vertexZ, int pdg)
 
bool IsInAllDets (const CbmGlobalTrack *gTrack)
 
bool IsPrimary (double vertexZ)
 
virtual void Finish ()
 
 ClassDef (LmvmTask, 1)
 
void SetUseMvd (bool use)
 
void SetWeight (double w)
 
void SetEnergyAndPlutoParticle (const std::string &energy, const std::string &particle)
 
void SetTaskId (const std::string &taskId)
 
void SetPionMisidLevel (double level)
 

Public Attributes

std::string fhrep
 
std::string fhrec
 

Private Member Functions

 LmvmTask (const LmvmTask &)
 
LmvmTaskoperator= (const LmvmTask &)
 

Private Attributes

FairMCEventHeader * fMCEventHeader = nullptr
 
TClonesArray * fCbmEvents = nullptr
 
TClonesArray * fMCTracks = nullptr
 
TClonesArray * fRichRings = nullptr
 
TClonesArray * fRichProj = nullptr
 
TClonesArray * fRichPoints = nullptr
 
TClonesArray * fRichRingMatches = nullptr
 
TClonesArray * fRichHits = nullptr
 
TClonesArray * fGlobalTracks = nullptr
 
TClonesArray * fStsTracks = nullptr
 
TClonesArray * fStsTrackMatches = nullptr
 
TClonesArray * fStsHits = nullptr
 
TClonesArray * fMvdHits = nullptr
 
TClonesArray * fMvdPoints = nullptr
 
TClonesArray * fMvdHitMatches = nullptr
 
TClonesArray * fTrdTracks = nullptr
 
TClonesArray * fTrdHits = nullptr
 
TClonesArray * fTrdTrackMatches = nullptr
 
TClonesArray * fTofHits = nullptr
 
TClonesArray * fTofHitsMatches = nullptr
 
TClonesArray * fTofPoints = nullptr
 
TClonesArray * fTofTracks = nullptr
 
CbmVertexfPrimVertex = nullptr
 
CbmDigiManagerfDigiManager = nullptr
 
CbmKFVertex fKFVertex
 
CbmStsKFTrackFitter fKFFitter
 
bool fUseMvd = false
 
std::vector< LmvmCandfCands
 
std::vector< LmvmCandfCandsTotal
 
std::vector< LmvmCandfCandsMix
 
std::vector< LmvmCandfSTCands
 
std::vector< LmvmCandfTTCands
 
std::vector< LmvmCandfRTCands
 
double fW = 0.
 
double fPionMisidLevel = -1.
 
Int_t fEventNumber = 0
 
LmvmCuts fCuts
 
LmvmHist fH
 
std::map< int, int > fNofHitsInRingMap
 
double fZ = -44.
 
int fNofMinHitsStsMvd = 4
 
int fNofMinHitsRich = 7
 
int fNofMinHitsTrd = 2
 
int fNofMinHitsTof = 1
 
std::string fParticle = ""
 
std::string fTaskId = ""
 

Detailed Description

Definition at line 33 of file LmvmTask.h.

Constructor & Destructor Documentation

◆ LmvmTask() [1/2]

LmvmTask::LmvmTask ( )

Definition at line 57 of file LmvmTask.cxx.

Referenced by ClassDef(), LmvmTask(), and operator=().

◆ ~LmvmTask()

LmvmTask::~LmvmTask ( )
virtual

Definition at line 60 of file LmvmTask.cxx.

◆ LmvmTask() [2/2]

LmvmTask::LmvmTask ( const LmvmTask & )
private

References LmvmTask().

Member Function Documentation

◆ AnalyseCandidates()

◆ AnalyseGlobalTracks()

◆ AnalyseProperties()

void LmvmTask::AnalyseProperties ( )

Definition at line 2181 of file LmvmTask.cxx.

References ElId, fCands, fH, and GetPidString().

Referenced by Exec().

◆ AnalyseRichRings()

◆ AssignMcToCands()

◆ AssignMcToTopologyCands()

void LmvmTask::AssignMcToTopologyCands ( std::vector< LmvmCand > & topoCands)

◆ BetaMom()

void LmvmTask::BetaMom ( const CbmMCTrack * mct,
const CbmGlobalTrack * gTrack,
const std::string & ptcl )

◆ BgPairPdg()

void LmvmTask::BgPairPdg ( const LmvmCand & candP,
const LmvmCand & candM,
ELmvmAnaStep step )

◆ CalculateNofTopologyPairs()

◆ CheckClosestMvdHit()

◆ CheckGammaConvAndPi0()

void LmvmTask::CheckGammaConvAndPi0 ( )

Definition at line 2276 of file LmvmTask.cxx.

References LmvmKinePar::Create(), ElId, fCands, fCuts, and LmvmKinePar::fMinv.

Referenced by AnalyseCandidates().

◆ CheckLikeSignCorrelations()

void LmvmTask::CheckLikeSignCorrelations ( )

Definition at line 500 of file LmvmTask.cxx.

Referenced by Exec().

◆ CheckMismatches()

◆ CheckTofId()

void LmvmTask::CheckTofId ( const CbmMCTrack * mcTrack,
const LmvmCand & cand,
ELmvmAnaStep step,
int pdg )

Definition at line 2251 of file LmvmTask.cxx.

References fH, LmvmCand::fIsTofElectron, CbmMCTrack::GetStartVertex(), sqrt(), and v.

Referenced by AnalyseCandidates().

◆ CheckTopologyCut()

void LmvmTask::CheckTopologyCut ( ELmvmTopologyCut cut,
const std::string & name )

Definition at line 2293 of file LmvmTask.cxx.

References LmvmKinePar::Create(), ElId, LmvmKinePar::fAngle, fCands, fCuts, fH, fRTCands, fSTCands, fTTCands, RT, ST, and TT.

Referenced by AnalyseCandidates().

◆ ClassDef()

LmvmTask::ClassDef ( LmvmTask ,
1  )

References LmvmTask().

◆ CombinatorialPairs()

◆ DoMcPair()

◆ DoMcTrack()

◆ Exec()

◆ FillCands()

void LmvmTask::FillCands ( )

Definition at line 1348 of file LmvmTask.cxx.

References AssignMcToCands(), AssignMcToTopologyCands(), LmvmUtils::CalculateAndSetTrackParams(), fCands, LmvmCand::fCharge, LmvmCand::fChi2Prim, LmvmCand::fChi2Rich, LmvmCand::fChi2Tof, LmvmCand::fChi2Trd, fCuts, LmvmCand::fELossSts, LmvmCand::fEventNumber, fEventNumber, fGlobalTracks, LmvmCand::fGTrackInd, LmvmCand::fIsAcc, LmvmCand::fIsChi2Prim, LmvmCand::fIsElectron, LmvmCand::fIsMvd1Cut, LmvmCand::fIsMvd2Cut, LmvmCand::fIsPtCut, LmvmCand::fIsRec, fKFVertex, LmvmCand::fLength, fMCTracks, LmvmCand::fMomentum, LmvmCand::fNofHitsMvd, LmvmCand::fNofHitsRich, LmvmCand::fNofHitsSts, LmvmCand::fNofHitsTof, LmvmCand::fNofHitsTrd, fPionMisidLevel, LmvmCand::fRichInd, fRichProj, fRichRings, LmvmCand::fStsInd, fStsTracks, LmvmCand::fTaskId, fTaskId, LmvmCand::fTime, LmvmCand::fTofDist, LmvmCand::fTofHitInd, fTofHits, LmvmCand::fTofTrackInd, fTofTracks, LmvmCand::fTrdInd, LmvmCand::fTrdLikeEl, LmvmCand::fTrdLikePi, fTrdTracks, fTTCands, fUseMvd, CbmRichRing::GetChi2(), CbmTrack::GetChiSq(), CbmTofTrack::GetDistance(), CbmStsTrack::GetELoss(), CbmGlobalTrack::GetLength(), GetMcTrackSts(), CbmRichRing::GetNDF(), CbmTrack::GetNDF(), CbmRichRing::GetNofHits(), CbmTrack::GetNofHits(), CbmStsTrack::GetNofMvdHits(), CbmStsTrack::GetNofStsHits(), CbmTofTrack::GetNofTofHits(), CbmMCTrack::GetPdgCode(), CbmTrdTrack::GetPidLikeEL(), CbmTrdTrack::GetPidLikePI(), CbmGlobalTrack::GetRichRingIndex(), CbmGlobalTrack::GetStsTrackIndex(), CbmHit::GetTime(), CbmGlobalTrack::GetTofHitIndex(), CbmGlobalTrack::GetTofTrackIndex(), CbmGlobalTrack::GetTrdTrackIndex(), LmvmUtils::IsElectron(), LmvmUtils::IsElectronMc(), IsRecoTrackAccepted(), LmvmUtils::IsRichElectron(), LmvmUtils::IsTofElectron(), LmvmUtils::IsTrdElectron(), and richProj.

Referenced by Exec().

◆ FillCandsForEventMix()

void LmvmTask::FillCandsForEventMix ( )

Definition at line 443 of file LmvmTask.cxx.

References ElId, fCands, fCandsTotal, and LmvmCand::IsCutTill().

Referenced by Exec().

◆ FillHistosForFastSim()

void LmvmTask::FillHistosForFastSim ( )

Definition at line 549 of file LmvmTask.cxx.

References fCands, fH, and fParticle.

Referenced by Exec().

◆ FillMomHists()

◆ FillPairHists()

◆ FillRichRingNofHits()

void LmvmTask::FillRichRingNofHits ( )

◆ FillSourceHistos()

◆ FillTopologyCands()

◆ Finish()

void LmvmTask::Finish ( )
virtual

Definition at line 2570 of file LmvmTask.cxx.

References CombinatorialPairs(), fCandsTotal, fH, fParticle, and fTaskId.

◆ GetMcTrackSts()

◆ GetPidString() [1/2]

◆ GetPidString() [2/2]

string LmvmTask::GetPidString ( double vertexZ,
int pdg )

Definition at line 1945 of file LmvmTask.cxx.

References fH, and IsPrimary().

◆ Init()

◆ InitHists()

void LmvmTask::InitHists ( )

Definition at line 63 of file LmvmTask.cxx.

References fH, fParticle, fZ, and Cbm::NumberToString().

Referenced by Init().

◆ InitOrFatal()

template<typename T>
T * LmvmTask::InitOrFatal ( const std::string & name)
inline

Definition at line 57 of file LmvmTask.h.

Referenced by Init().

◆ IsInAllDets()

◆ IsInBox()

bool LmvmTask::IsInBox ( double boxX,
double boxY,
double xVal,
double yVal,
double width )

Definition at line 2176 of file LmvmTask.cxx.

Referenced by AnalyseCandidates().

◆ IsInTofPile()

bool LmvmTask::IsInTofPile ( double mom,
double m2 )

◆ IsPrimary()

bool LmvmTask::IsPrimary ( double vertexZ)
inline

Definition at line 163 of file LmvmTask.h.

References fZ.

Referenced by AnalyseGlobalTracks(), GetPidString(), and RichPmtXY().

◆ IsRecoTrackAccepted()

◆ MinvScale()

double LmvmTask::MinvScale ( const CbmMCTrack * mct,
const std::string & signal )

◆ MvdCutMcDistance()

◆ operator=()

LmvmTask & LmvmTask::operator= ( const LmvmTask & )
private

References LmvmTask().

◆ PairSource()

void LmvmTask::PairSource ( const LmvmCand & candP,
const LmvmCand & candM,
ELmvmAnaStep step,
const LmvmKinePar & parRec )

◆ PidVsMom()

◆ RatioMomentum()

void LmvmTask::RatioMomentum ( const CbmMCTrack * mct,
const LmvmCand & cand,
ELmvmAnaStep step,
int pdg )

◆ RichPmtXY()

◆ SetEnergyAndPlutoParticle()

void LmvmTask::SetEnergyAndPlutoParticle ( const std::string & energy,
const std::string & particle )

Definition at line 2596 of file LmvmTask.cxx.

References fParticle, LmvmSimParam::GetWeight(), and SetWeight().

◆ SetPionMisidLevel()

void LmvmTask::SetPionMisidLevel ( double level)
inline

Definition at line 239 of file LmvmTask.h.

References fPionMisidLevel.

◆ SetTaskId()

void LmvmTask::SetTaskId ( const std::string & taskId)
inline

Definition at line 238 of file LmvmTask.h.

References fTaskId.

◆ SetUseMvd()

void LmvmTask::SetUseMvd ( bool use)
inline

Definition at line 235 of file LmvmTask.h.

References fUseMvd.

◆ SetWeight()

void LmvmTask::SetWeight ( double w)
inline

Definition at line 236 of file LmvmTask.h.

References fW.

Referenced by SetEnergyAndPlutoParticle().

◆ TrackSource()

Member Data Documentation

◆ fCands

◆ fCandsMix

std::vector<LmvmCand> LmvmTask::fCandsMix
private

Definition at line 205 of file LmvmTask.h.

◆ fCandsTotal

std::vector<LmvmCand> LmvmTask::fCandsTotal
private

Definition at line 203 of file LmvmTask.h.

Referenced by CombinatorialPairs(), FillCandsForEventMix(), and Finish().

◆ fCbmEvents

TClonesArray* LmvmTask::fCbmEvents = nullptr
private

Definition at line 174 of file LmvmTask.h.

Referenced by Init().

◆ fCuts

◆ fDigiManager

CbmDigiManager* LmvmTask::fDigiManager = nullptr
private

Definition at line 196 of file LmvmTask.h.

Referenced by FillRichRingNofHits(), Init(), and RichPmtXY().

◆ fEventNumber

Int_t LmvmTask::fEventNumber = 0
private

Definition at line 217 of file LmvmTask.h.

Referenced by Exec(), and FillCands().

◆ fGlobalTracks

TClonesArray* LmvmTask::fGlobalTracks = nullptr
private

◆ fH

◆ fhrec

std::string LmvmTask::fhrec

Definition at line 117 of file LmvmTask.h.

◆ fhrep

std::string LmvmTask::fhrep

Definition at line 116 of file LmvmTask.h.

◆ fKFFitter

CbmStsKFTrackFitter LmvmTask::fKFFitter
private

Definition at line 198 of file LmvmTask.h.

Referenced by Init().

◆ fKFVertex

CbmKFVertex LmvmTask::fKFVertex
private

◆ fMCEventHeader

FairMCEventHeader* LmvmTask::fMCEventHeader = nullptr
private

Definition at line 173 of file LmvmTask.h.

Referenced by Init().

◆ fMCTracks

◆ fMvdHitMatches

TClonesArray* LmvmTask::fMvdHitMatches = nullptr
private

Definition at line 187 of file LmvmTask.h.

Referenced by CheckClosestMvdHit(), Init(), and MvdCutMcDistance().

◆ fMvdHits

TClonesArray* LmvmTask::fMvdHits = nullptr
private

Definition at line 185 of file LmvmTask.h.

Referenced by CheckClosestMvdHit(), FillSourceHistos(), Init(), and MvdCutMcDistance().

◆ fMvdPoints

TClonesArray* LmvmTask::fMvdPoints = nullptr
private

Definition at line 186 of file LmvmTask.h.

Referenced by Init().

◆ fNofHitsInRingMap

std::map<int, int> LmvmTask::fNofHitsInRingMap
private

Definition at line 222 of file LmvmTask.h.

Referenced by DoMcTrack(), and FillRichRingNofHits().

◆ fNofMinHitsRich

int LmvmTask::fNofMinHitsRich = 7
private

Definition at line 227 of file LmvmTask.h.

Referenced by IsRecoTrackAccepted().

◆ fNofMinHitsStsMvd

int LmvmTask::fNofMinHitsStsMvd = 4
private

Definition at line 226 of file LmvmTask.h.

Referenced by IsRecoTrackAccepted().

◆ fNofMinHitsTof

int LmvmTask::fNofMinHitsTof = 1
private

Definition at line 229 of file LmvmTask.h.

Referenced by IsRecoTrackAccepted().

◆ fNofMinHitsTrd

int LmvmTask::fNofMinHitsTrd = 2
private

Definition at line 228 of file LmvmTask.h.

Referenced by IsRecoTrackAccepted().

◆ fParticle

std::string LmvmTask::fParticle = ""
private

◆ fPionMisidLevel

double LmvmTask::fPionMisidLevel = -1.
private

Definition at line 215 of file LmvmTask.h.

Referenced by AssignMcToCands(), Exec(), FillCands(), and SetPionMisidLevel().

◆ fPrimVertex

CbmVertex* LmvmTask::fPrimVertex = nullptr
private

Definition at line 195 of file LmvmTask.h.

Referenced by Exec(), and Init().

◆ fRichHits

TClonesArray* LmvmTask::fRichHits = nullptr
private

Definition at line 180 of file LmvmTask.h.

Referenced by FillRichRingNofHits(), Init(), and RichPmtXY().

◆ fRichPoints

TClonesArray* LmvmTask::fRichPoints = nullptr
private

Definition at line 178 of file LmvmTask.h.

Referenced by FillRichRingNofHits(), Init(), and RichPmtXY().

◆ fRichProj

TClonesArray* LmvmTask::fRichProj = nullptr
private

Definition at line 177 of file LmvmTask.h.

Referenced by AnalyseRichRings(), FillCands(), and Init().

◆ fRichRingMatches

TClonesArray* LmvmTask::fRichRingMatches = nullptr
private

Definition at line 179 of file LmvmTask.h.

Referenced by AssignMcToCands(), CheckMismatches(), and Init().

◆ fRichRings

TClonesArray* LmvmTask::fRichRings = nullptr
private

◆ fRTCands

std::vector<LmvmCand> LmvmTask::fRTCands
private

Definition at line 211 of file LmvmTask.h.

Referenced by CalculateNofTopologyPairs(), CheckTopologyCut(), and FillTopologyCands().

◆ fSTCands

std::vector<LmvmCand> LmvmTask::fSTCands
private

Definition at line 207 of file LmvmTask.h.

Referenced by CalculateNofTopologyPairs(), CheckTopologyCut(), and FillTopologyCands().

◆ fStsHits

TClonesArray* LmvmTask::fStsHits = nullptr
private

Definition at line 184 of file LmvmTask.h.

Referenced by Init().

◆ fStsTrackMatches

TClonesArray* LmvmTask::fStsTrackMatches = nullptr
private

Definition at line 183 of file LmvmTask.h.

Referenced by AssignMcToCands(), CheckMismatches(), GetMcTrackSts(), and Init().

◆ fStsTracks

◆ fTaskId

std::string LmvmTask::fTaskId = ""
private

Definition at line 232 of file LmvmTask.h.

Referenced by FillCands(), Finish(), and SetTaskId().

◆ fTofHits

TClonesArray* LmvmTask::fTofHits = nullptr
private

◆ fTofHitsMatches

TClonesArray* LmvmTask::fTofHitsMatches = nullptr
private

Definition at line 192 of file LmvmTask.h.

Referenced by AssignMcToCands(), CheckMismatches(), and Init().

◆ fTofPoints

TClonesArray* LmvmTask::fTofPoints = nullptr
private

Definition at line 193 of file LmvmTask.h.

Referenced by AssignMcToCands(), CheckMismatches(), and Init().

◆ fTofTracks

TClonesArray* LmvmTask::fTofTracks = nullptr
private

Definition at line 194 of file LmvmTask.h.

Referenced by AnalyseCandidates(), Exec(), FillCands(), Init(), and IsRecoTrackAccepted().

◆ fTrdHits

TClonesArray* LmvmTask::fTrdHits = nullptr
private

Definition at line 189 of file LmvmTask.h.

◆ fTrdTrackMatches

TClonesArray* LmvmTask::fTrdTrackMatches = nullptr
private

Definition at line 190 of file LmvmTask.h.

Referenced by AssignMcToCands(), CheckMismatches(), and Init().

◆ fTrdTracks

TClonesArray* LmvmTask::fTrdTracks = nullptr
private

◆ fTTCands

std::vector<LmvmCand> LmvmTask::fTTCands
private

Definition at line 209 of file LmvmTask.h.

Referenced by CalculateNofTopologyPairs(), CheckTopologyCut(), and FillCands().

◆ fUseMvd

bool LmvmTask::fUseMvd = false
private

◆ fW

double LmvmTask::fW = 0.
private

◆ fZ

double LmvmTask::fZ = -44.
private

Definition at line 224 of file LmvmTask.h.

Referenced by InitHists(), and IsPrimary().


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