-
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
Refactor the event map #692
Refactor the event map #692
Conversation
Indeed DigitizationAlgorithm of ACTS write measurements.csv with the same measurement creation algorithm. I will use the truth hit information and do the coordinate transformation instead |
I believe that this is due to the fact that ACTS digitization is a rather simple heuristic that does not have any uncertainty, and that also ensures that the weighted centroid of the hits matches exactly with the measurement; i.e., the traccc CCA is the perfect inverse function of the ACTS digitization. |
Are you sure about this? The digitization seems more complicated than that 🤔 |
Maybe this one? Not sure if this is an inversion of CCA. I think this one is what I was looking for: |
e5f09ad
to
c4d16f1
Compare
c4d16f1
to
cec247d
Compare
cec247d
to
cc07ad9
Compare
cc07ad9
to
9fba431
Compare
a861e38
to
53a83ee
Compare
The PR won't be able to pass the test unless the EOS data is updated. |
53a83ee
to
3aae79b
Compare
5fea9ce
to
1503e97
Compare
e0e1a50
to
97cfe67
Compare
I removed the event maps and replace them with the Especially the measurement information is handled in a more sophisticated way - there are three types of them in
I have not checked the outputs of |
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 like that you make use of the detector description object. 😄 Though I don't fully understand how... Could you explain a bit more how use_detray_simulation
is meant to be used/understood exactly?
c4199a5
to
ba1e36e
Compare
fa07bf4
to
9a239f7
Compare
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.
On one hand it would be nice to get all of this into main
before CHEP, but I feel relatively strongly about some of the design points that I highlighted. So I'd still rather spend the time to set this up correctly, for our future selves.
Beomki, see me at one point today, as we need to talk this out live.
I'll explain in more detail face to face. |
It is good to go from my side |
f253944
to
96bef6b
Compare
@krasznaa The IO input is fixed now. |
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'm fine with the I/O code's general setup at this point. The main part of the code, the event_data
class, I can also make my peace with. (The goal sanctifies the means...) Let's just fix up some of the smaller issues, and then finally push this in today.
|
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.
Let's get this thing finally in. 👍
Outdated description
I will go through a massive cleanup in the near future, but let me mess it up one more time..
This PR also removes the annoying clusterization in the event map
UPDATE
I compared the local positions of measurements from traccc CPU CCA against the local positions of
measurements.csv
(data directory:odd/geant4_1muon_100GeV
).And I found that they have the same local positions (the below table shows the measurements of the first event).
I thought the local positions of
measurements.csv
are the truth value, so there must be gap between them.Perhaps,
measurements.csv
is not for storing the truth value but for storing CCA value in ACTS simulation? (But how does ACTS simulation perform the CCA?) Maybe I am just doing something stupid. @asalzburger @krasznaa Do you have some ideas on this?PR Description
I decided to refactor the
event_map
along with the measurement creation validation as I found it makes things easier. Followings are the major changes:event_map
andevent_map
are removed and unified intoevent_data
which can support both acts simulation data and detray simulation data.Validation suites for the measurement creation are added. As expected, the qualities of the pull values of
d0
andz0
are not great, thus, the conditions are quite loose.csv geometry is deprecated as we are not supposed to use it anymore. Also the the ACTS cell data format has replaced
hit_id
column (csv tml) withmeasurement_id
column (new format), and it is quite painful to deal with different data formats.Physics Performance of seq_example (double precision)
The pull value from the measurement creation is not great but can be tolerated for the moment.
The pull value from Kalman fit is definitely bad for unknown reasons - It will be followed up in the near future
Physics Performance of seeding_example (double precision)