Repository navigation
[PWGEM,PWGEM-36] PhotonMeson: two-photon MC truth task, pair background QA and PCM-EMC MC - #18275
Merged
Merged
Conversation
mhemmer-cern
requested review from
alibuild,
amaringarcia,
dsekihat,
hscheid,
jokonig and
reygers
as code owners
October 13, 2026 14:09
|
O2 linter results: ❌ 0 errors, |
mhemmer-cern
force-pushed
the
PWGEM-36
branch
from
October 13, 2026 14:53
d1fabd8 to
9feec55
Compare
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
…nd QA and PCM-EMC MC Add tools to find out which parts of the same-event photon-pair spectrum the mixed event cannot describe, and add PCM-EMC to the MC pi0/eta task. twoPhotonMcTask (new): - Classify same-event PCM-PCM, EMC-EMC and PCM-EMC pairs by the closest common MC ancestor of the two candidates: none, same particle, pi0/eta direct, pi0/eta cross, omega, K0S, eta', other hadron, parton/string. Output THn (m_inv, pT, cent, pair truth, bucket). - Per-photon truth flag (true photon / non-photon / fake) and ancestor chains cached once per DF. EMC chains of a conversion e+- start at the photon. The colliding beam nuclei are never part of a chain. - Ancestor chain QA: length, why the chain ended, kind and PDG of the last element. - PCM-EMC same-particle diagnostics: what made the EMC cluster (V0 leg e+-, bremsstrahlung of a leg, other), and for leg clusters whether and where the leg appears among the matched primary/secondary tracks, with residuals and E/p. - Mixed-event process functions (z-vertex and centrality mixing, same event and photon selection as taskPi0FlowEMC), filling (m_inv, pT, cent, pair truth) to compare with the "none" component. MCUtilities.h: - Add isPartonLike, isNucleus, getAncestorChain and getFirstCommonAncestor. taskPi0FlowEMC: - Replace hEtaPhiAngleMassCent(Mixed) with hPairBkgSE/ME: THnF in (m_inv, pT, cent, alpha, atan2(deta, dphi)), with dphi folded to [0, pi] identically for SE and ME. Alpha is signed (PCM - EMC) for PCM-EMC. Filled after all pair cuts. - Fix processPCMMixed filling the same-event direction histogram. Pi0EtaToGammaGammaMC: - Add PCM-EMC: true conversion on the PCM side, photon below the pi0/eta on the EMC side, sharing the existing truth logic; new task pi0eta-to-gammagamma-mc-pcmemc. - Cut only the first photon in the generic cut block. The second photon is cut afterwards with its own tag (with matched tracks for EMC). NMHistograms.h: - Move pairname to the third parameter of addNMHistograms. The MC calls passed the name in that position, where it was silently converted to the sparseFullAxes bool, so PCM-Dalitz MC axes were labelled gamma-gamma. Build the occupancy/EP/vertex axes only where they are used.
mhemmer-cern
force-pushed
the
PWGEM-36
branch
from
October 14, 2026 08:59
eb811aa to
27c46e9
Compare
Collaborator
Author
|
macOS-arm failed build is not related to this PR. Hope it restarts the build soon. |
mhemmer-cern
marked this pull request as draft
October 14, 2026 13:11
mhemmer-cern
marked this pull request as ready for review
October 14, 2026 13:46
mhemmer-cern
enabled auto-merge (squash)
October 15, 2026 12:29
alibuild
approved these changes
Oct 15, 2026
alibuild
left a comment
Collaborator
There was a problem hiding this comment.
Auto-approving on behalf of @mhemmer-cern.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add tools to find out which parts of the same-event photon-pair spectrum
the mixed event cannot describe, and add PCM-EMC to the MC pi0/eta task.
twoPhotonMcTask (new):
common MC ancestor of the two candidates: none, same particle,
pi0/eta direct, pi0/eta cross, omega, K0S, eta', other hadron,
parton/string. Output THn (m_inv, pT, cent, pair truth, bucket).
chains cached once per DF. EMC chains of a conversion e+- start at the
photon. The colliding beam nuclei are never part of a chain.
last element.
e+-, bremsstrahlung of a leg, other), and for leg clusters whether and
where the leg appears among the matched primary/secondary tracks, with
residuals and E/p.
event and photon selection as taskPi0FlowEMC), filling (m_inv, pT,
cent, pair truth) to compare with the "none" component.
MCUtilities.h:
getFirstCommonAncestor.
taskPi0FlowEMC:
(m_inv, pT, cent, alpha, atan2(deta, dphi)), with dphi folded to
[0, pi] identically for SE and ME. Alpha is signed (PCM - EMC) for
PCM-EMC. Filled after all pair cuts.
Pi0EtaToGammaGammaMC:
on the EMC side, sharing the existing truth logic; new task
pi0eta-to-gammagamma-mc-pcmemc.
is cut afterwards with its own tag (with matched tracks for EMC).
NMHistograms.h:
passed the name in that position, where it was silently converted to
the sparseFullAxes bool, so PCM-Dalitz MC axes were labelled gamma-gamma.
Build the occupancy/EP/vertex axes only where they are used.