-
Notifications
You must be signed in to change notification settings - Fork 178
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
bug: interpolation out of bounds with ATLAS B-field map #1484
Comments
I think the underlying issue is that the propagation even gets to |
since it happens in |
That's possible yeah. I guess you're right that It might have slipped through beampipe, but I guess the normal abort mechanism would have / should have caught it in this case. |
This issue/PR has been automatically marked as stale because it has not had recent activity. The stale label will be removed if any interaction occurs. |
Ok coming back from this: should we discuss this in the developers meeting to try to agree on a solution? I personally think we should stick to explicit warnings and extend the magnetic field map(s) where this occurs. At the very least we should make this configurable and default to an explicit error. |
So I think this issue is related to what I tried to fix here #1454. Currently CKF does not support standard aborters and will propagate particles much further than necessary. |
I see #1454 has been merged. Thanks! |
Ok. Could you try to get a verbose navigation output when the error occurs? This would confirm if this is in fact due to a navigation failure. |
interesting. when I saw |
This issue/PR has been automatically marked as stale because it has not had recent activity. The stale label will be removed if any interaction occurs. |
I have removed the workaround for this issue from #1467 and confirmed that the errors still occur with the latest
So back to square one. What next? |
From my perspective there are two solutions
|
But this is a navigation failure isn't it?. I still don't think we should be hiding this by patching the B field interpolation. Concretely:
|
But couldn't the propagation in principle leave the detector without the track finding noticing it? In this case you will always reach the point without any valid magnetic field, no? I think we did the same with the stopped particle no? We abort the CKF propagation and continue as if the propagation is complete. ad 2: I don't think we should change our B field interpolation implementation but the user might want to have a zero field outside the interpolation so they could just decorate our interpolation with a default value outside the defined region. |
In principle this should happen when the outermost volume is hit, i.e. there's no destination linked to the boundary surface. |
@timadye could you try to isolate the particle/seed which is causing this failure? If the propagation should stop at the end of the detector and it does not I agree that we have an underlying propagation/navigation problem that needs to be fixed. I am happy to help. Just need to setup ITk locally. tagging @noemina because of ITk relevance |
We get 3518 interpolation errors per ttbar+PU200 event, so it's not difficult to reproduce 😄. Most errors print the initial parameters, eg.
I'll try to narrow it down in a smaller case and print more debug. What information do you want? |
I would hope all of them are caused by the same underlying problem but lets see. I fear I also need the surface but at this point it might be easier if I run the ttbar PU200 myself. is this plain full chain itk? |
yes, default |
I don't think we see this in ODD ttbar pu200, which would point to a navigation issue in the ITk geometry |
Looked into this today. The underlying bug looks quite significant to me and makes me wonder how the CKF produced any results at all... Will create a fix and link it here. |
Apparently our CKF was not able to smooth multiple tracks for a single seed in some cases. The problem was that we expected the CKF actor to be called a second time after the first smoothing was done but there is a Stepper step in between which could kick you out of the detector because the step length is basically unconstrained. fixes - #1484 --------- Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
This bug is largely fixed by #2299, and completely by #2300. There are no remaining Those fixes each improve the The #2300 improvement is by filtering out particles from the beampipe (or outside), so doesn't indicate any improvement in the |
Apparently our CKF was not able to smooth multiple tracks for a single seed in some cases. The problem was that we expected the CKF actor to be called a second time after the first smoothing was done but there is a Stepper step in between which could kick you out of the detector because the step length is basically unconstrained. fixes - acts-project#1484 --------- Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Using the propagator with the ATLAS B-field map can give error messages:
This can give a lot of messages: ~259
MagneticFieldError
s per ttbar+μ=200 event, each of which produces 2 errors, and 4 warnings (1.6 GB logfile for 1000 events)!This error is due to
InterpolatedBFieldMap::getField()
called for a position outside the mapped ATLAS B-fieldgetField({-2849, -2486, 54450})
#1467 removes these error messages by trying to return the edge-bin values instead of giving an error. That is still WiP because I couldn't yet get it to pass the unit tests: seems to work with B=(0,0,0) at the edges (as for ATLAS), but not otherwise.
Even if that can be resolved, the question remains: why is
getField()
called for points so far outside the detector? @Corentin-Allaire suggested (ACTS-ITk meeting) that the world volume is too large. If so, it may be an ATLAS-specific error, but I hope it's OK to discuss here.The text was updated successfully, but these errors were encountered: