Skip to content

[Common] Fix TPC side determination in VDrift correction - #17846

Open
matthias-kleiner wants to merge 3 commits into
AliceO2Group:masterfrom
matthias-kleiner:fix-tpc-vdrift-ce-side
Open

[Common] Fix TPC side determination in VDrift correction#17846
matthias-kleiner wants to merge 3 commits into
AliceO2Group:masterfrom
matthias-kleiner:fix-tpc-vdrift-ce-side

Conversation

@matthias-kleiner

Copy link
Copy Markdown

No description provided.

@github-actions

github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown

O2 linter results: ❌ 0 errors, ⚠️ 4 warnings, 🔕 0 disabled

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
ddobrigk
ddobrigk previously approved these changes Sep 11, 2026
@ddobrigk

Copy link
Copy Markdown
Collaborator

Hi @matthias-kleiner, thanks a lot for this fix!

However, I was wondering what will happen with data for which the TPC side flags are not stored: this is relevant, since those were added only in February this year. Further, since they were added "adiabatically" by taking unused bits in the flags integer, older datasets will appear to have all tracks only in one side, and thus the fix will break in that situation. Is there perhaps some way in which the TPC side information could be inferred from other parameters that existed already before? For instance, a combination of tgl and the sign of Z (given we store tracks at the position of their innermost update?)... Sorry if I am overlooking something. Thanks again!

The TPCSideA/TPCSideC flags were only added to the AOD format in
February 2026, so datasets produced before that always have neither
bit set. Detect CE-crossing tracks from the track's asymmetric time
margins and otherwise infer the side from a cross-check of Z and tgl
sign, per TPC domain expert guidance, instead of silently skipping
the correction for all tracks in older datasets.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@matthias-kleiner

Copy link
Copy Markdown
Author

Hi @matthias-kleiner, thanks a lot for this fix!

However, I was wondering what will happen with data for which the TPC side flags are not stored: this is relevant, since those were added only in February this year. Further, since they were added "adiabatically" by taking unused bits in the flags integer, older datasets will appear to have all tracks only in one side, and thus the fix will break in that situation. Is there perhaps some way in which the TPC side information could be inferred from other parameters that existed already before? For instance, a combination of tgl and the sign of Z (given we store tracks at the position of their innermost update?)... Sorry if I am overlooking something. Thanks again!

Hi @ddobrigk ,
I added a fallback solution for the older data as @shahor02 suggested. @shahor02 could you have look if this is correct?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Development

Successfully merging this pull request may close these issues.

3 participants