Skip to content

[RF] Only integrate own observables in RooRealSumPdf expected events - #23297

Open
guitargeek wants to merge 1 commit into
root-project:masterfrom
guitargeek:roorealsumpdf
Open

[RF] Only integrate own observables in RooRealSumPdf expected events#23297
guitargeek wants to merge 1 commit into
root-project:masterfrom
guitargeek:roorealsumpdf

Conversation

@guitargeek

Copy link
Copy Markdown
Contributor

RooRealSumPdf::createExpectedEventsFunc() created the yield integral over the full normalization set that was passed in. Variables in that set that are not dependents of the pdf don't contribute to the expected event count, but they ended up in the integration set anyway. Besides being wasteful, this could create inconsistent integral objects: for example, with a channel index variable in the normalization set (as passed down by RooAddPdf::compileForNormSet() in all-extendable mode when the RooRealSumPdf is the component of a simultaneous mixture), the analytical integration cache of the RooRealSumPdf was corrupted, leading to a crash in analyticalIntegralWN().

Restrict the integration set to the observables that the pdf actually depends on.

🤖 Done with the help of AI

RooRealSumPdf::createExpectedEventsFunc() created the yield integral
over the full normalization set that was passed in. Variables in that
set that are not dependents of the pdf don't contribute to the expected
event count, but they ended up in the integration set anyway. Besides
being wasteful, this could create inconsistent integral objects: for
example, with a channel index variable in the normalization set (as
passed down by RooAddPdf::compileForNormSet() in all-extendable mode
when the RooRealSumPdf is the component of a simultaneous mixture), the
analytical integration cache of the RooRealSumPdf was corrupted,
leading to a crash in analyticalIntegralWN().

Restrict the integration set to the observables that the pdf actually
depends on.

🤖 Done with the help of AI
@github-actions

github-actions Bot commented Sep 8, 2026

Copy link
Copy Markdown

Test Results

    19 files      19 suites   3d 3h 19m 40s ⏱️
 3 880 tests  3 880 ✅ 0 💤 0 ❌
64 927 runs  64 927 ✅ 0 💤 0 ❌

Results for commit 5dafed4.

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant