Skip to content

[PWGCF] Femto: Add D0 meson support to the femto framework - #17253

Open
IgorPtak wants to merge 8 commits into
AliceO2Group:masterfrom
IgorPtak:charm-hadrons
Open

[PWGCF] Femto: Add D0 meson support to the femto framework#17253
IgorPtak wants to merge 8 commits into
AliceO2Group:masterfrom
IgorPtak:charm-hadrons

Conversation

@IgorPtak

Copy link
Copy Markdown
Contributor

Adds D0 mesons as a new particle species to the unified femto framework, enabling D0-hadron femtoscopic correlations.

What is added

Data model - three new tables:

  • FD0s - kinematics, mass of the accepted hypothesis and daughter indices
  • FD0Masks - selection bitmask
  • FD0Extras - QA/debug: both mass hypotheses, topological variables, BDT scores and the PWGHF selection flags
  • FD0Labels - MC labels

Core: charmHadronBuilder.h and charmHadronHistManager.h, following the structure of the existing V0/cascade builders. D0 candidates are taken from PWGHF (HfCand2Prong), with the acceptance applied as a rapidity cut via HfHelper. The D0/D0bar hypothesis is encoded in the sign of the stored signed pT.

Tasks: two new workflows:

  • femto-d0-qa - QA for D0 candidates and their daughters
  • femto-pair-track-d0 - D0-hadron correlations, same and mixed event

MC: D0 candidates have no direct MC label, so both prongs are matched to a generated D0 -> K pi decay with RecoDecay::getMatchedMCRec. Charm hadrons are additionally classified as prompt or non-prompt, which required extending the McOrigin enum.

@github-actions

Copy link
Copy Markdown

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

@alibuild

Copy link
Copy Markdown
Collaborator

Error while checking build/O2Physics/code-check for e6b7555 at 2026-07-29 19:46:

## sw/BUILD/O2Physics-code-check-latest/log
--
========== List of issues found ==========
++ echo 'Found 9 errors and 2 warnings.'
Found 9 errors and 2 warnings.
++ [[ 9 -gt 0 ]]
++ cat /sw/BUILD/0f9cdfd2185751249e7c2c145bfdaaf9ce837c70/O2Physics-code-check/errors.txt
PWGCF/Femto/Core/charmHadronBuilder.h:25:1: error: included header CandidateReconstructionTables.h is not used directly [misc-include-cleaner,-warnings-as-errors]
PWGCF/Femto/Core/charmHadronBuilder.h:67:36: error: no header providing "std::vector" is directly included [misc-include-cleaner,-warnings-as-errors]
PWGCF/Femto/Core/charmHadronBuilder.h:166:92: error: no header providing "o2::analysis::femto::limits::kLowerLimit" is directly included [misc-include-cleaner,-warnings-as-errors]
PWGCF/Femto/Core/charmHadronBuilder.h:168:149: error: no header providing "o2::analysis::femto::limits::kUpperLimit" is directly included [misc-include-cleaner,-warnings-as-errors]
PWGCF/Femto/Core/charmHadronBuilder.h:169:119: error: no header providing "o2::analysis::femto::limits::kAbsUpperLimit" is directly included [misc-include-cleaner,-warnings-as-errors]
PWGCF/Femto/Core/charmHadronBuilder.h:318:49: error: no header providing "int64_t" is directly included [misc-include-cleaner,-warnings-as-errors]
PWGCF/Femto/Core/charmHadronBuilder.h:348:21: error: no header providing "int8_t" is directly included [misc-include-cleaner,-warnings-as-errors]
PWGCF/Femto/Core/charmHadronHistManager.h:34:1: error: included header cstddef is not used directly [misc-include-cleaner,-warnings-as-errors]
PWGCF/Femto/Core/mcBuilder.h:246:102: error: no header providing "std::array" is directly included [misc-include-cleaner,-warnings-as-errors]
++ [[ 2 -gt 0 ]]
++ cat /sw/BUILD/0f9cdfd2185751249e7c2c145bfdaaf9ce837c70/O2Physics-code-check/warnings.txt
PWGCF/Femto/TableProducer/femtoProducer.cxx:389:71: warning: statement should be inside braces [readability-braces-around-statements]
PWGCF/Femto/TableProducer/femtoProducer.cxx:403:73: warning: statement should be inside braces [readability-braces-around-statements]
++ [[ 9 -gt 0 ]]
++ exit 1
--

Full log here.

@alibuild

Copy link
Copy Markdown
Collaborator

Error while checking build/O2Physics/o2 for 06079ed at 2026-07-30 02:27:

## sw/BUILD/O2Physics-latest/log
c++: fatal error: Killed signal terminated program cc1plus
c++: fatal error: Killed signal terminated program cc1plus
ninja: build stopped: subcommand failed.

Full log here.

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.

2 participants