EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
QAG4SimulationTracking Class Reference

#include <fun4all_coresoftware/blob/master/offline/QA/modules/QAG4SimulationTracking.h>

+ Inheritance diagram for QAG4SimulationTracking:
+ Collaboration diagram for QAG4SimulationTracking:

Public Member Functions

 QAG4SimulationTracking (const std::string &name="QAG4SimulationTracking")
 
virtual ~QAG4SimulationTracking ()=default
 
int Init (PHCompositeNode *topNode)
 
int InitRun (PHCompositeNode *topNode)
 
int process_event (PHCompositeNode *topNode)
 
std::string get_histo_prefix ()
 
void addEmbeddingID (int embeddingID)
 
void setEtaRange (double low, double high)
 range of the truth track eta to be analyzed
 
void setUniqueTrackingMatch (bool b)
 only count unique truth<->reco track pair in tracking efficiency
 
- Public Member Functions inherited from SubsysReco
 ~SubsysReco () override
 
virtual int End (PHCompositeNode *)
 Called at the end of all processing.
 
virtual int EndRun (const int)
 Called at the end of each run.
 
virtual int Reset (PHCompositeNode *)
 Reset.
 
virtual int ResetEvent (PHCompositeNode *)
 Clean up after each event.
 
void Print (const std::string &="ALL") const override
 
- Public Member Functions inherited from Fun4AllBase
virtual ~Fun4AllBase ()
 
virtual const std::string Name () const
 Returns the name of this module.
 
virtual void Name (const std::string &name)
 Sets the name of this module.
 
virtual void Verbosity (const int ival)
 Sets the verbosity of this module (0 by default=quiet).
 
virtual void Verbosity (enu_Verbosity ival)
 Sets the verbosity of this module (0 by default=quiet).
 
virtual int Verbosity () const
 Gets the verbosity of this module.
 

Private Types

using G4HitSet = std::set< PHG4Hit * >
 

Private Member Functions

int load_nodes (PHCompositeNode *)
 load nodes
 
G4HitSet find_g4hits (TrkrDefs::cluskey) const
 

Private Attributes

std::unique_ptr< SvtxEvalStackm_svtxEvalStack
 
std::set< int > m_embeddingIDs
 
std::pair< double, double > m_etaRange = {-1, 1}
 range of the truth track eta to be analyzed
 
bool m_uniqueTrackingMatch = true
 only count unique truth<->reco track pair in tracking efficiency
 
PHG4TruthInfoContainerm_truthContainer = nullptr
 
SvtxTrackMapm_trackMap = nullptr
 
TrkrHitSetContainerm_hitsets = nullptr
 
TrkrClusterContainerm_cluster_map = nullptr
 
TrkrClusterHitAssocm_cluster_hit_map = nullptr
 
TrkrHitTruthAssocm_hit_truth_map = nullptr
 
PHG4HitContainerm_g4hits_tpc = nullptr
 
PHG4HitContainerm_g4hits_intt = nullptr
 
PHG4HitContainerm_g4hits_mvtx = nullptr
 
PHG4HitContainerm_g4hits_micromegas = nullptr
 

Additional Inherited Members

- Public Types inherited from Fun4AllBase
enum  enu_Verbosity {
  VERBOSITY_QUIET = 0, VERBOSITY_SOME = 1, VERBOSITY_MORE = 2, VERBOSITY_EVEN_MORE = 3,
  VERBOSITY_A_LOT = 4, VERBOSITY_MAX = INT_MAX - 10
}
 
- Protected Member Functions inherited from SubsysReco
 SubsysReco (const std::string &name="NONAME")
 

Detailed Description

Definition at line 26 of file QAG4SimulationTracking.h.

View newest version in sPHENIX GitHub at line 26 of file QAG4SimulationTracking.h

Member Typedef Documentation

using QAG4SimulationTracking::G4HitSet = std::set<PHG4Hit *>
private

Definition at line 62 of file QAG4SimulationTracking.h.

View newest version in sPHENIX GitHub at line 62 of file QAG4SimulationTracking.h

Constructor & Destructor Documentation

QAG4SimulationTracking::QAG4SimulationTracking ( const std::string &  name = "QAG4SimulationTracking")

Definition at line 44 of file QAG4SimulationTracking.cc.

View newest version in sPHENIX GitHub at line 44 of file QAG4SimulationTracking.cc

virtual QAG4SimulationTracking::~QAG4SimulationTracking ( )
virtualdefault

Member Function Documentation

void QAG4SimulationTracking::addEmbeddingID ( int  embeddingID)

If added, only process truth particle associated with the selected list of EmbeddingIDs Call multiple times to add multiple EmbeddingIDs For EmbeddingID<0, all negative embedding IDs are accepted for pile up events.

Definition at line 194 of file QAG4SimulationTracking.cc.

View newest version in sPHENIX GitHub at line 194 of file QAG4SimulationTracking.cc

References m_embeddingIDs.

QAG4SimulationTracking::G4HitSet QAG4SimulationTracking::find_g4hits ( TrkrDefs::cluskey  cluster_key) const
private

Definition at line 687 of file QAG4SimulationTracking.cc.

View newest version in sPHENIX GitHub at line 687 of file QAG4SimulationTracking.cc

References PHG4HitContainer::findHit(), TrkrHitTruthAssoc::getG4Hits(), TrkrClusterHitAssoc::getHits(), TrkrDefs::getHitSetKeyFromClusKey(), TrkrDefs::getTrkrId(), TrkrDefs::inttId, m_cluster_hit_map, m_g4hits_intt, m_g4hits_micromegas, m_g4hits_mvtx, m_g4hits_tpc, m_hit_truth_map, TrkrDefs::micromegasId, TrkrDefs::mvtxId, and TrkrDefs::tpcId.

Referenced by process_event().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

std::string QAG4SimulationTracking::get_histo_prefix ( )

Definition at line 682 of file QAG4SimulationTracking.cc.

View newest version in sPHENIX GitHub at line 682 of file QAG4SimulationTracking.cc

References Fun4AllBase::Name().

Referenced by Init(), and process_event().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int QAG4SimulationTracking::Init ( PHCompositeNode )
virtual

Called during initialization. Typically this is where you can book histograms, and e.g. register them to Fun4AllServer (so they can be output to file using Fun4AllServer::dumpHistos() method).

Reimplemented from SubsysReco.

Definition at line 63 of file QAG4SimulationTracking.cc.

View newest version in sPHENIX GitHub at line 63 of file QAG4SimulationTracking.cc

References Fun4AllReturnCodes::EVENT_OK, get_histo_prefix(), QAHistManagerDef::getHistoManager(), Acts::UnitConstants::h, Fun4AllHistoManager::registerHisto(), and QAHistManagerDef::useLogBins().

+ Here is the call graph for this function:

int QAG4SimulationTracking::InitRun ( PHCompositeNode )
virtual

Called for first event when run number is known. Typically this is where you may want to fetch data from database, because you know the run number.

Reimplemented from SubsysReco.

Definition at line 49 of file QAG4SimulationTracking.cc.

View newest version in sPHENIX GitHub at line 49 of file QAG4SimulationTracking.cc

References Fun4AllReturnCodes::EVENT_OK, m_svtxEvalStack, m_trackMap, and Fun4AllBase::Verbosity().

+ Here is the call graph for this function:

int QAG4SimulationTracking::load_nodes ( PHCompositeNode topNode)
private

load nodes

Definition at line 642 of file QAG4SimulationTracking.cc.

View newest version in sPHENIX GitHub at line 642 of file QAG4SimulationTracking.cc

References Fun4AllReturnCodes::ABORTEVENT, Fun4AllReturnCodes::EVENT_OK, m_cluster_hit_map, m_cluster_map, m_g4hits_intt, m_g4hits_micromegas, m_g4hits_mvtx, m_g4hits_tpc, m_hit_truth_map, m_hitsets, m_truthContainer, and PHWHERE.

Referenced by process_event().

+ Here is the caller graph for this function:

int QAG4SimulationTracking::process_event ( PHCompositeNode )
virtual

Called for each event. This is where you do the real work.

Reimplemented from SubsysReco.

Definition at line 199 of file QAG4SimulationTracking.cc.

View newest version in sPHENIX GitHub at line 199 of file QAG4SimulationTracking.cc

References Fun4AllReturnCodes::ABORTRUN, SvtxTrackMap::begin(), SvtxTrack::begin_cluster_keys(), SvtxTrackEval::best_track_from(), SvtxTrackMap::end(), SvtxTrack::end_cluster_keys(), Fun4AllReturnCodes::EVENT_OK, find_g4hits(), SvtxTrack::get_dca3d_xy(), SvtxTrack::get_dca3d_xy_error(), SvtxTrack::get_dca3d_z(), SvtxTrack::get_dca3d_z_error(), SvtxTruthEval::get_embed(), get_histo_prefix(), SvtxTrack::get_id(), PHG4Particle::get_pid(), PHG4Particle::get_px(), SvtxTrack::get_px(), PHG4Particle::get_py(), SvtxTrack::get_py(), PHG4Particle::get_pz(), SvtxTrack::get_pz(), PHG4Particle::get_track_id(), TrkrClusterContainer::getClusters(), Fun4AllHistoManager::getHisto(), QAHistManagerDef::getHistoManager(), TrkrHitSetContainer::getHitSets(), TrkrDefs::getLayer(), PHG4TruthInfoContainer::GetPrimaryParticleRange(), TrkrDefs::getTrkrId(), PHG4Particle::identify(), TrkrDefs::inttId, G4TTL::layer, load_nodes(), m_cluster_map, m_embeddingIDs, m_etaRange, m_hitsets, m_svtxEvalStack, m_trackMap, m_truthContainer, m_uniqueTrackingMatch, SvtxTrackEval::max_truth_particle_by_nclusters(), TrkrDefs::mvtxId, pid, TrkrDefs::tpcId, v, and Fun4AllBase::Verbosity().

+ Here is the call graph for this function:

void QAG4SimulationTracking::setEtaRange ( double  low,
double  high 
)
inline

range of the truth track eta to be analyzed

Definition at line 45 of file QAG4SimulationTracking.h.

View newest version in sPHENIX GitHub at line 45 of file QAG4SimulationTracking.h

References m_etaRange.

void QAG4SimulationTracking::setUniqueTrackingMatch ( bool  b)
inline

only count unique truth<->reco track pair in tracking efficiency

Definition at line 52 of file QAG4SimulationTracking.h.

View newest version in sPHENIX GitHub at line 52 of file QAG4SimulationTracking.h

References m_uniqueTrackingMatch.

Member Data Documentation

TrkrClusterHitAssoc* QAG4SimulationTracking::m_cluster_hit_map = nullptr
private

Definition at line 79 of file QAG4SimulationTracking.h.

View newest version in sPHENIX GitHub at line 79 of file QAG4SimulationTracking.h

Referenced by find_g4hits(), and load_nodes().

TrkrClusterContainer* QAG4SimulationTracking::m_cluster_map = nullptr
private

Definition at line 78 of file QAG4SimulationTracking.h.

View newest version in sPHENIX GitHub at line 78 of file QAG4SimulationTracking.h

Referenced by load_nodes(), and process_event().

std::set<int> QAG4SimulationTracking::m_embeddingIDs
private

Definition at line 66 of file QAG4SimulationTracking.h.

View newest version in sPHENIX GitHub at line 66 of file QAG4SimulationTracking.h

Referenced by addEmbeddingID(), and process_event().

std::pair<double, double> QAG4SimulationTracking::m_etaRange = {-1, 1}
private

range of the truth track eta to be analyzed

Definition at line 69 of file QAG4SimulationTracking.h.

View newest version in sPHENIX GitHub at line 69 of file QAG4SimulationTracking.h

Referenced by process_event(), and setEtaRange().

PHG4HitContainer* QAG4SimulationTracking::m_g4hits_intt = nullptr
private

Definition at line 83 of file QAG4SimulationTracking.h.

View newest version in sPHENIX GitHub at line 83 of file QAG4SimulationTracking.h

Referenced by find_g4hits(), and load_nodes().

PHG4HitContainer* QAG4SimulationTracking::m_g4hits_micromegas = nullptr
private

Definition at line 85 of file QAG4SimulationTracking.h.

View newest version in sPHENIX GitHub at line 85 of file QAG4SimulationTracking.h

Referenced by find_g4hits(), and load_nodes().

PHG4HitContainer* QAG4SimulationTracking::m_g4hits_mvtx = nullptr
private

Definition at line 84 of file QAG4SimulationTracking.h.

View newest version in sPHENIX GitHub at line 84 of file QAG4SimulationTracking.h

Referenced by find_g4hits(), and load_nodes().

PHG4HitContainer* QAG4SimulationTracking::m_g4hits_tpc = nullptr
private

Definition at line 82 of file QAG4SimulationTracking.h.

View newest version in sPHENIX GitHub at line 82 of file QAG4SimulationTracking.h

Referenced by find_g4hits(), and load_nodes().

TrkrHitTruthAssoc* QAG4SimulationTracking::m_hit_truth_map = nullptr
private

Definition at line 80 of file QAG4SimulationTracking.h.

View newest version in sPHENIX GitHub at line 80 of file QAG4SimulationTracking.h

Referenced by find_g4hits(), and load_nodes().

TrkrHitSetContainer* QAG4SimulationTracking::m_hitsets = nullptr
private

Definition at line 77 of file QAG4SimulationTracking.h.

View newest version in sPHENIX GitHub at line 77 of file QAG4SimulationTracking.h

Referenced by load_nodes(), and process_event().

std::unique_ptr<SvtxEvalStack> QAG4SimulationTracking::m_svtxEvalStack
private

Definition at line 65 of file QAG4SimulationTracking.h.

View newest version in sPHENIX GitHub at line 65 of file QAG4SimulationTracking.h

Referenced by InitRun(), and process_event().

SvtxTrackMap* QAG4SimulationTracking::m_trackMap = nullptr
private

Definition at line 75 of file QAG4SimulationTracking.h.

View newest version in sPHENIX GitHub at line 75 of file QAG4SimulationTracking.h

Referenced by InitRun(), and process_event().

PHG4TruthInfoContainer* QAG4SimulationTracking::m_truthContainer = nullptr
private

Definition at line 74 of file QAG4SimulationTracking.h.

View newest version in sPHENIX GitHub at line 74 of file QAG4SimulationTracking.h

Referenced by load_nodes(), and process_event().

bool QAG4SimulationTracking::m_uniqueTrackingMatch = true
private

only count unique truth<->reco track pair in tracking efficiency

Definition at line 72 of file QAG4SimulationTracking.h.

View newest version in sPHENIX GitHub at line 72 of file QAG4SimulationTracking.h

Referenced by process_event(), and setUniqueTrackingMatch().


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