Skip to content

Conversation

@aferrero2707
Copy link
Contributor

The MFT-MCH matching task now stores by default multiple matching candidates for each MCH standalone track.
In order to properly assess the tracking quality and avoid a large combinatorial background, only the best matching candidate for each MCH track must be processed by the QC tracks task.

The MFT-MCH matching task now stores by default multiple matching
candidates for each MCH standalone track. In order to properly assess the
tracking quality and avoid a large combinatorial background, only the
best matching candidate for each MCH track must be processed by the
QC tracks task.
@aferrero2707
Copy link
Contributor Author

@Barthelemy @justonedev1 @knopers8 could you please have a look? The changes are rather small, and a similar method of selecting the best matching candidates is already used in O2Physics.

It would be great if we could still include this PR in the online software before the start of the Pb-Pb data taking.

Comment on lines +491 to +493
if (matchingCandidates.empty()) {
continue;
}
Copy link
Collaborator

@knopers8 knopers8 Oct 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is probably not even reachable, but it looks harmless.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indeed this should never happen, but since below I am accessing the first element I prefer to be extra-safe.

Copy link
Collaborator

@knopers8 knopers8 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Assuming I understood correctly the lifetimes of objects and pointers in the new snippet, it seems safe.

@knopers8 knopers8 enabled auto-merge (squash) October 17, 2025 07:15
@knopers8 knopers8 disabled auto-merge October 17, 2025 07:36
@knopers8
Copy link
Collaborator

macOS build failing in O2, but o2-dataflow-slc9 is green, merging and hoping for the best.

@knopers8 knopers8 merged commit fb5fa62 into AliceO2Group:master Oct 17, 2025
3 of 5 checks passed
knopers8 pushed a commit that referenced this pull request Oct 17, 2025
* [MUON] process only best matching candidates

The MFT-MCH matching task now stores by default multiple matching
candidates for each MCH standalone track. In order to properly assess the
tracking quality and avoid a large combinatorial background, only the
best matching candidate for each MCH track must be processed by the
QC tracks task.

* [MUON] clang formatting
@aferrero2707
Copy link
Contributor Author

Assuming I understood correctly the lifetimes of objects and pointers in the new snippet, it seems safe.

The map structure that temporarily keeps the indexes of the matching candidates is local to the code block that I have added, and only used to collect and sort the candidates. The rest reuses structures that were already used before.

akavumpa pushed a commit to akavumpa/QualityControl that referenced this pull request Nov 7, 2025
* [MUON] process only best matching candidates

The MFT-MCH matching task now stores by default multiple matching
candidates for each MCH standalone track. In order to properly assess the
tracking quality and avoid a large combinatorial background, only the
best matching candidate for each MCH track must be processed by the
QC tracks task.

* [MUON] clang formatting
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants