Analysis Software
Documentation for sPHENIX simulation software
|
Compares reconstructed tracks to truth particles. More...
#include <analysis/blob/master/Tracking/SvtxEvaluatorHaiwang/SvtxEvaluatorHaiwang.h>
Public Member Functions | |
SvtxEvaluatorHaiwang (const std::string &name="SVTXEVALUATOR", const std::string &filename="g4eval.root") | |
virtual | ~SvtxEvaluatorHaiwang () |
int | Init (PHCompositeNode *topNode) |
int | InitRun (PHCompositeNode *topNode) |
int | process_event (PHCompositeNode *topNode) |
int | End (PHCompositeNode *topNode) |
Called at the end of all processing. | |
void | set_strict (bool b) |
void | do_vertex_eval (bool b) |
void | do_gpoint_eval (bool b) |
void | do_g4hit_eval (bool b) |
void | do_hit_eval (bool b) |
void | do_cluster_eval (bool b) |
void | do_gtrack_eval (bool b) |
void | do_track_eval (bool b) |
void | scan_for_embedded (bool b) |
Public Member Functions inherited from SubsysReco | |
~SubsysReco () override | |
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 Member Functions | |
void | fillOutputNtuples (PHCompositeNode *topNode) |
dump the evaluator information into ntuple for external analysis | |
void | printInputInfo (PHCompositeNode *topNode) |
print out the input object information (debugging upstream components) | |
void | printOutputInfo (PHCompositeNode *topNode) |
print out the ancestry information for detailed diagnosis | |
Private Attributes | |
unsigned int | _ievent |
SvtxEvalStack * | _svtxevalstack |
bool | _strict |
unsigned int | _errors |
bool | _do_vertex_eval |
bool | _do_gpoint_eval |
bool | _do_g4hit_eval |
bool | _do_hit_eval |
bool | _do_cluster_eval |
bool | _do_gtrack_eval |
bool | _do_track_eval |
bool | _scan_for_embedded |
TNtuple * | _ntp_vertex |
TNtuple * | _ntp_gpoint |
TNtuple * | _ntp_g4hit |
TNtuple * | _ntp_hit |
TNtuple * | _ntp_cluster |
TNtuple * | _ntp_gtrack |
TNtuple * | _ntp_track |
std::string | _filename |
TFile * | _tfile |
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 = std::numeric_limits<int>::max() - 10 } |
Protected Member Functions inherited from SubsysReco | |
SubsysReco (const std::string &name="NONAME") | |
Compares reconstructed tracks to truth particles.
Plan: This module will trace the reconstructed tracks back to the greatest contributor Monte Carlo particle and then test one against the other.
Definition at line 29 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 29 of file SvtxEvaluatorHaiwang.h
SvtxEvaluatorHaiwang::SvtxEvaluatorHaiwang | ( | const std::string & | name = "SVTXEVALUATOR" , |
const std::string & | filename = "g4eval.root" |
||
) |
Definition at line 34 of file SvtxEvaluatorHaiwang.C.
View newest version in sPHENIX GitHub at line 34 of file SvtxEvaluatorHaiwang.C
References verbosity.
|
inlinevirtual |
Definition at line 35 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 35 of file SvtxEvaluatorHaiwang.h
|
inline |
Definition at line 48 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 48 of file SvtxEvaluatorHaiwang.h
References _do_cluster_eval, and KFPMath::b.
|
inline |
Definition at line 46 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 46 of file SvtxEvaluatorHaiwang.h
References _do_g4hit_eval, and KFPMath::b.
|
inline |
Definition at line 45 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 45 of file SvtxEvaluatorHaiwang.h
References _do_gpoint_eval, and KFPMath::b.
|
inline |
Definition at line 49 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 49 of file SvtxEvaluatorHaiwang.h
References _do_gtrack_eval, and KFPMath::b.
|
inline |
Definition at line 47 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 47 of file SvtxEvaluatorHaiwang.h
References _do_hit_eval, and KFPMath::b.
|
inline |
Definition at line 50 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 50 of file SvtxEvaluatorHaiwang.h
References _do_track_eval, and KFPMath::b.
|
inline |
Definition at line 44 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 44 of file SvtxEvaluatorHaiwang.h
References _do_vertex_eval, and KFPMath::b.
|
virtual |
Called at the end of all processing.
Reimplemented from SubsysReco.
Definition at line 171 of file SvtxEvaluatorHaiwang.C.
View newest version in sPHENIX GitHub at line 171 of file SvtxEvaluatorHaiwang.C
References _errors, _filename, _ievent, _ntp_cluster, _ntp_g4hit, _ntp_gpoint, _ntp_gtrack, _ntp_hit, _ntp_track, _ntp_vertex, _svtxevalstack, _tfile, Fun4AllReturnCodes::EVENT_OK, SvtxEvalStack::get_errors(), and verbosity.
|
private |
dump the evaluator information into ntuple for external analysis
Definition at line 550 of file SvtxEvaluatorHaiwang.C.
View newest version in sPHENIX GitHub at line 550 of file SvtxEvaluatorHaiwang.C
References _ievent, _ntp_cluster, _ntp_g4hit, _ntp_gpoint, _ntp_gtrack, _ntp_hit, _ntp_track, _ntp_vertex, _scan_for_embedded, _svtxevalstack, SvtxClusterEval::all_clusters_from(), SvtxTruthEval::all_truth_hits(), SvtxTrackMap::begin(), SvtxVertexMap::begin(), SvtxTrack::begin_clusters(), SvtxClusterEval::best_cluster_from(), SvtxTrackEval::best_track_from(), SvtxVertexEval::best_vertex_from(), SvtxTrack::CEMC, charge(), clusters, Acts::UnitConstants::e, efromtruth, SvtxTrackMap::end(), SvtxVertexMap::end(), SvtxTrack::end_clusters(), ephi, event, g4hitID, PHG4Hit::get_avg_t(), PHG4Hit::get_avg_x(), PHG4Hit::get_avg_y(), PHG4Hit::get_avg_z(), SvtxTrack::get_cal_cluster_e(), SvtxTrack::get_cal_deta(), SvtxTrack::get_cal_dphi(), SvtxTrack::get_cal_energy_3x3(), SvtxTrack::get_charge(), SvtxTrack::get_chisq(), SvtxEvalStack::get_cluster_eval(), SvtxTrack::get_dca2d(), SvtxTrack::get_dca2d_error(), PHG4Hit::get_edep(), PHG4Cell::get_edep(), SvtxTruthEval::get_embed(), SvtxHitEval::get_energy_contribution(), SvtxClusterEval::get_energy_contribution(), SvtxEvalStack::get_hit_eval(), PHG4Hit::get_hit_id(), SvtxTrack::get_id(), PHG4Hit::get_layer(), SvtxTrackEval::get_nclusters_contribution(), SvtxTrackEval::get_nclusters_contribution_by_layer(), SvtxTrack::get_ndf(), SvtxVertexEval::get_ntracks_contribution(), SvtxTruthEval::get_outermost_truth_hit(), SvtxTruthEval::get_particle(), PHG4Particle::get_pid(), PHG4Particle::get_px(), PHG4Hit::get_px(), SvtxTrack::get_px(), PHG4Particle::get_py(), PHG4Hit::get_py(), SvtxTrack::get_py(), PHG4Particle::get_pz(), PHG4Hit::get_pz(), SvtxTrack::get_pz(), SvtxTrack::get_quality(), PHG4VtxPoint::get_t(), SvtxEvalStack::get_track_eval(), PHG4Particle::get_track_id(), PHG4Hit::get_trkid(), SvtxEvalStack::get_truth_eval(), SvtxTruthEval::get_vertex(), SvtxEvalStack::get_vertex_eval(), PHG4VtxPoint::get_x(), PHG4Hit::get_x(), SvtxVertex::get_x(), SvtxTrack::get_x(), PHG4VtxPoint::get_y(), PHG4Hit::get_y(), SvtxVertex::get_y(), SvtxTrack::get_y(), PHG4VtxPoint::get_z(), PHG4Hit::get_z(), SvtxVertex::get_z(), SvtxTrack::get_z(), PHG4TruthInfoContainer::GetPrimaryParticleRange(), gflavor, gprimary, gpx, gpy, gpz, gtrackID, gvt, gx, gy, gz, SvtxTrack::HCALIN, SvtxTrack::HCALOUT, hitID, SvtxTruthEval::is_primary(), gen_gtest_pred_impl::Iter(), layer, SvtxHitEval::max_truth_hit_by_energy(), SvtxClusterEval::max_truth_hit_by_energy(), SvtxTrackEval::max_truth_particle_by_nclusters(), SvtxVertexEval::max_truth_point_by_ntracks(), ng4hits, ntracks, phisize, SvtxTrack::PRES, size, SvtxTrack::size_clusters(), SvtxVertex::size_tracks(), trackID, verbosity, vx, vy, vz, ambiguity_solver_full_chain::x, y, physmon_track_finding_ttbar::z, and zsize.
Referenced by process_event().
|
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 60 of file SvtxEvaluatorHaiwang.C.
View newest version in sPHENIX GitHub at line 60 of file SvtxEvaluatorHaiwang.C
References _do_cluster_eval, _do_g4hit_eval, _do_gpoint_eval, _do_gtrack_eval, _do_hit_eval, _do_track_eval, _do_vertex_eval, _filename, _ievent, _ntp_cluster, _ntp_g4hit, _ntp_gpoint, _ntp_gtrack, _ntp_hit, _ntp_track, _ntp_vertex, _tfile, and Fun4AllReturnCodes::EVENT_OK.
|
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 131 of file SvtxEvaluatorHaiwang.C.
View newest version in sPHENIX GitHub at line 131 of file SvtxEvaluatorHaiwang.C
References Fun4AllReturnCodes::EVENT_OK.
|
private |
print out the input object information (debugging upstream components)
Definition at line 206 of file SvtxEvaluatorHaiwang.C.
View newest version in sPHENIX GitHub at line 206 of file SvtxEvaluatorHaiwang.C
References _ievent, _strict, _svtxevalstack, SvtxTruthEval::all_truth_hits(), SvtxTrackMap::begin(), SvtxVertexMap::begin(), SvtxTrackMap::end(), SvtxVertexMap::end(), SvtxEvalStack::get_truth_eval(), SvtxVertex::identify(), PHG4Hit::identify(), SvtxTrack::identify(), gen_gtest_pred_impl::Iter(), PHWHERE, SvtxTruthEval::set_strict(), SvtxVertexMap::size(), SvtxTrackMap::size(), and verbosity.
Referenced by process_event().
|
private |
print out the ancestry information for detailed diagnosis
Definition at line 280 of file SvtxEvaluatorHaiwang.C.
View newest version in sPHENIX GitHub at line 280 of file SvtxEvaluatorHaiwang.C
References _ievent, _svtxevalstack, SvtxClusterEval::all_clusters_from(), SvtxTrackEval::all_tracks_from(), SvtxTruthEval::all_truth_hits(), SvtxVertexMap::begin(), SvtxTrack::begin_clusters(), clusters, distance(), SvtxVertexMap::empty(), SvtxTrack::end_clusters(), SvtxEvalStack::get_cluster_eval(), PHG4Hit::get_hit_id(), SvtxTrack::get_id(), PHG4Hit::get_layer(), SvtxTrackEval::get_nclusters_contribution(), PHG4Particle::get_px(), SvtxTrack::get_px(), PHG4Particle::get_py(), SvtxTrack::get_py(), PHG4Particle::get_pz(), SvtxTrack::get_pz(), SvtxTrack::get_quality(), SvtxEvalStack::get_track_eval(), PHG4Particle::get_track_id(), PHG4Hit::get_trkid(), SvtxEvalStack::get_truth_eval(), PHG4Particle::get_vtx_id(), PHG4VtxPoint::get_x(), PHG4Hit::get_x(), SvtxVertex::get_x(), PHG4Hit::get_y(), SvtxVertex::get_y(), PHG4Hit::get_z(), SvtxVertex::get_z(), PHG4TruthInfoContainer::GetPrimaryParticleRange(), PHG4TruthInfoContainer::GetPrimaryVertexIndex(), PHG4TruthInfoContainer::GetPrimaryVtx(), PHG4TruthInfoContainer::GetVtx(), PHG4Particle::identify(), PHG4Hit::identify(), PHG4TruthInfoContainer::isEmbeded(), gen_gtest_pred_impl::Iter(), SvtxClusterEval::max_truth_hit_by_energy(), ng4hits, particle, PHWHERE, SvtxTrackMap::size(), tracks(), verbosity, vx, vy, vz, ambiguity_solver_full_chain::x, y, and physmon_track_finding_ttbar::z.
Referenced by process_event().
|
virtual |
Called for each event. This is where you do the real work.
Reimplemented from SubsysReco.
Definition at line 135 of file SvtxEvaluatorHaiwang.C.
View newest version in sPHENIX GitHub at line 135 of file SvtxEvaluatorHaiwang.C
References _ievent, _strict, _svtxevalstack, Fun4AllReturnCodes::EVENT_OK, fillOutputNtuples(), SvtxEvalStack::next_event(), printInputInfo(), printOutputInfo(), SvtxEvalStack::set_strict(), SvtxEvalStack::set_verbosity(), and verbosity.
|
inline |
Definition at line 52 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 52 of file SvtxEvaluatorHaiwang.h
References _scan_for_embedded, and KFPMath::b.
|
inline |
Definition at line 42 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 42 of file SvtxEvaluatorHaiwang.h
References _strict, and KFPMath::b.
|
private |
Definition at line 71 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 71 of file SvtxEvaluatorHaiwang.h
Referenced by do_cluster_eval(), and Init().
|
private |
Definition at line 69 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 69 of file SvtxEvaluatorHaiwang.h
Referenced by do_g4hit_eval(), and Init().
|
private |
Definition at line 68 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 68 of file SvtxEvaluatorHaiwang.h
Referenced by do_gpoint_eval(), and Init().
|
private |
Definition at line 72 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 72 of file SvtxEvaluatorHaiwang.h
Referenced by do_gtrack_eval(), and Init().
|
private |
Definition at line 70 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 70 of file SvtxEvaluatorHaiwang.h
Referenced by do_hit_eval(), and Init().
|
private |
Definition at line 73 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 73 of file SvtxEvaluatorHaiwang.h
Referenced by do_track_eval(), and Init().
|
private |
Definition at line 67 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 67 of file SvtxEvaluatorHaiwang.h
Referenced by do_vertex_eval(), and Init().
|
private |
Definition at line 65 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 65 of file SvtxEvaluatorHaiwang.h
Referenced by End().
|
private |
Definition at line 86 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 86 of file SvtxEvaluatorHaiwang.h
|
private |
Definition at line 56 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 56 of file SvtxEvaluatorHaiwang.h
Referenced by End(), fillOutputNtuples(), Init(), printInputInfo(), printOutputInfo(), and process_event().
|
private |
Definition at line 81 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 81 of file SvtxEvaluatorHaiwang.h
Referenced by End(), fillOutputNtuples(), and Init().
|
private |
Definition at line 79 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 79 of file SvtxEvaluatorHaiwang.h
Referenced by End(), fillOutputNtuples(), and Init().
|
private |
Definition at line 78 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 78 of file SvtxEvaluatorHaiwang.h
Referenced by End(), fillOutputNtuples(), and Init().
|
private |
Definition at line 82 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 82 of file SvtxEvaluatorHaiwang.h
Referenced by End(), fillOutputNtuples(), and Init().
|
private |
Definition at line 80 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 80 of file SvtxEvaluatorHaiwang.h
Referenced by End(), fillOutputNtuples(), and Init().
|
private |
Definition at line 83 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 83 of file SvtxEvaluatorHaiwang.h
Referenced by End(), fillOutputNtuples(), and Init().
|
private |
Definition at line 77 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 77 of file SvtxEvaluatorHaiwang.h
Referenced by End(), fillOutputNtuples(), and Init().
|
private |
Definition at line 75 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 75 of file SvtxEvaluatorHaiwang.h
Referenced by fillOutputNtuples(), and scan_for_embedded().
|
private |
Definition at line 64 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 64 of file SvtxEvaluatorHaiwang.h
Referenced by printInputInfo(), process_event(), and set_strict().
|
private |
Definition at line 59 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 59 of file SvtxEvaluatorHaiwang.h
Referenced by End(), fillOutputNtuples(), printInputInfo(), printOutputInfo(), and process_event().
|
private |
Definition at line 87 of file SvtxEvaluatorHaiwang.h.
View newest version in sPHENIX GitHub at line 87 of file SvtxEvaluatorHaiwang.h