-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add executable to compare truth vs. CUDA seeding #906
base: main
Are you sure you want to change the base?
Conversation
This commit adds a new executable that compares the truth seeding to the CUDA seeding, emitting a CSV file with matched seeds allowing further analysis with e.g. Python.
|
const measurement& bot_meas = | ||
truth_track_candidates.at(i_trk).items.at(0); | ||
const measurement& mid_meas = | ||
truth_track_candidates.at(i_trk).items.at(1); | ||
const measurement& top_meas = | ||
truth_track_candidates.at(i_trk).items.at(2); | ||
|
||
const std::map<particle, std::size_t>& bot_ptc_map = | ||
evt_data.m_meas_to_ptc_map.at(bot_meas); | ||
const std::map<particle, std::size_t>& mid_ptc_map = | ||
evt_data.m_meas_to_ptc_map.at(mid_meas); | ||
const std::map<particle, std::size_t>& top_ptc_map = | ||
evt_data.m_meas_to_ptc_map.at(top_meas); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@beomki-yeo I've noticed that if I get the bottom, middle, and top spacepoint positions like this, I get non-sensical
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is not expected and the track candidates do not have to be sorted.
How did you get the spacepoint positions from bot_meas
, mid_meas
and top_meas
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
After going through event_data.cpp
, it is possible that we may need to sort the track candidate if csv_measurements
is not sorted in the timing order:
traccc/performance/src/utils/event_data.cpp
Line 230 in 6fee5ca
m_ptc_to_meas_map[ptc].push_back(meas); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I found that measurement.csv
of geant4 odd data does not have truth timing information (all of them are set to zero).
We will have to find the truth time from the corresponding hit object in hits.csv
, which has truth timing information, via measurement-simhit-map.csv
Then you can run sorting on measurement (track candidate) vectors w.r.t. truth timing
This commit adds a new executable that compares the truth seeding to the CUDA seeding, emitting a CSV file with matched seeds allowing further analysis with e.g. Python.