Skip to content

Conversation

@Marcellocosti
Copy link
Contributor

In this PR, the selector, task, and tree creator for simulation performance of HF 3-prong candidates is implemented. Moreover, an header to apply bdt selection is also added. The current code covers only the Lc baryon, but the aim is to cover all 3-prong species with proper templetization.

@github-actions
Copy link

github-actions bot commented Nov 15, 2025

O2 linter results: ❌ 52 errors, ⚠️ 66 warnings, 🔕 1 disabled

@github-actions github-actions bot changed the title [ALICE3, PWGHF] Implement task and tree creator for 3-prong candidates [ALICE3,PWGHF] Implement task and tree creator for 3-prong candidates Nov 15, 2025
Marcello Di Costanzo and others added 3 commits November 19, 2025 10:00
@Marcellocosti Marcellocosti marked this pull request as ready for review November 19, 2025 09:18
@Marcellocosti
Copy link
Contributor Author

Hi all, I moved the implementation under the ALICE3 folder, please let me know if I overlooked anything!

@vkucera
Copy link
Collaborator

vkucera commented Nov 19, 2025

Hi all, I moved the implementation under the ALICE3 folder, please let me know if I overlooked anything!

Hi @Marcellocosti , thanks for the update, but now it seems that you are duplicating a lot of Run3 HF stuff. I thought you would just put in ALICE3 the stuff that is different from the Run3 stuff. Why do you need a new full candidate table a new selector array and a new ML response?

@Marcellocosti
Copy link
Contributor Author

Marcellocosti commented Nov 19, 2025

Hi Vit, thanks for the comment, here my ideas

  • The new ML response is needed as Run 5 BDT models will have different PID variables from Run3, and these represent the majority of the features I implemented
  • For the new selector array, the existing ones for Run 3 are specific to each particle specie in their name. Given that for simulation we have a simplified workflow compared to Run 3 analyses, I thought of implementing Alice3HfSelector3Prong, Alice3HfTask3Prong and Alice3HfTreeCreator3Prong which can cover D+, Ds, Lc, Xic with templetization of process functions. Therefore, I thought that defining a new selector array would be better
  • I introduced a new candidate table with the aim to decouple ALICE3 code from Run 3 code

Please let me know if you have any suggestion on these points

@vkucera
Copy link
Collaborator

vkucera commented Nov 19, 2025

Hi Vit, thanks for the comment, here my ideas

* The new ML response is needed as Run 5 BDT models will have different PID variables from Run3, and these represent the majority of the features I implemented

* For the new selector array, the existing ones for Run 3 are specific to each particle specie in their name. Given that for simulation we have a simplified workflow compared to Run 3 analyses, I thought of implementing `Alice3HfSelector3Prong`, `Alice3HfTask3Prong` and `Alice3HfTreeCreator3Prong` which can cover D+, Ds, Lc, Xic with templetization of process functions. Therefore, I thought that defining a new selector array would be better

* I introduced a new candidate table with the aim to decouple ALICE3 code from Run 3 code

Please let me know if you have any suggestion on these points

Thanks for the clarification. Indeed, after a closer look I can see that it is not a copy-paste and it has ALICE3-specific features. That makes sense to me.

Please consider the following formatting changes to AliceO2Group#13845
@Marcellocosti
Copy link
Contributor Author

Hi @vkucera, I have implemented your comments!

@vkucera
Copy link
Collaborator

vkucera commented Nov 19, 2025

Hi @vkucera, I have implemented your comments!

Thanks a lot, @Marcellocosti . Sorry, the comment about the prong index columns was a mistake.

njacazio
njacazio previously approved these changes Nov 20, 2025
@njacazio njacazio enabled auto-merge (squash) November 20, 2025 07:14
auto-merge was automatically disabled November 21, 2025 09:20

Head branch was pushed to by a user without write access

@njacazio njacazio enabled auto-merge (squash) November 21, 2025 09:20
@alibuild
Copy link
Collaborator

Error while checking build/O2Physics/o2 for d574c2f at 2025-11-21 11:20:

## sw/BUILD/O2Physics-latest/log
CMake Error at ALICE3/TableProducer/CMakeLists.txt:54:

Full log here.

@njacazio njacazio merged commit a4cdb1c into AliceO2Group:master Nov 22, 2025
11 of 13 checks passed
[](float dca, float err) -> float { return dca / err; });

/// prong PID nsigma
DECLARE_SOA_COLUMN(NSigTrkPi0, nSigTrkPi0, float); //!
Copy link
Member

Choose a reason for hiding this comment

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

Are you sure you do not want an array, for nSigTrkPi0 / nSigTrkPi1 /nSigTrkPi2 ?

yakparo pushed a commit to yakparo/O2Physics that referenced this pull request Nov 29, 2025
…eO2Group#13845)

Co-authored-by: Marcello Di Costanzo <mdicosta@aliceml.cern.ch>
Co-authored-by: ALICE Action Bot <alibuild@cern.ch>
Co-authored-by: Nicolò Jacazio <njacazio@users.noreply.github.com>
lmattei01 pushed a commit to lmattei01/O2Physics that referenced this pull request Dec 5, 2025
…eO2Group#13845)

Co-authored-by: Marcello Di Costanzo <mdicosta@aliceml.cern.ch>
Co-authored-by: ALICE Action Bot <alibuild@cern.ch>
Co-authored-by: Nicolò Jacazio <njacazio@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

6 participants