-
Notifications
You must be signed in to change notification settings - Fork 173
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
fix: GX2F: Finish material-less fit by resetting the track container #2739
Conversation
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## main #2739 +/- ##
==========================================
+ Coverage 48.69% 49.56% +0.86%
==========================================
Files 479 474 -5
Lines 27894 27059 -835
Branches 13173 12502 -671
==========================================
- Hits 13583 13411 -172
+ Misses 4765 4748 -17
+ Partials 9546 8900 -646 ☔ View full report in Codecov by Sentry. |
📊: Physics performance monitoring for dc71e2cphysmon summary
|
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 would be in favour to get this in, in order to have a first application test outside our ecosystem.
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 think the logging output probably needs an overhaul in any case: multi-line outputs in the logger often look weird anyway. But this is not a blocker for the actual change, so let's go.
It is probably not the most optimal solution but it makes the GX2F (Global Chi Square Fitter) work. Instead of revisiting and updating track states during each iteration, we now flush the track container after each iteration and add them from scratch.
Regarding the performance: The track container works similar to a vector, so by clearing it the space for n track states remains reserved, which makes this approach less bad than one might suspect.
This finally gives us also nice phi-, theta-, and q/p-pulls with the Generic detector. We can also see that we most of the time only need 3-4 updates for convergence.
Generic Detector