Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[RF] RooAddPdf still emits unexpected errors about missing normalization sets #11476

Closed
guitargeek opened this issue Oct 2, 2022 · 1 comment · Fixed by #11696
Closed

[RF] RooAddPdf still emits unexpected errors about missing normalization sets #11476

guitargeek opened this issue Oct 2, 2022 · 1 comment · Fixed by #11696

Comments

@guitargeek
Copy link
Contributor

guitargeek commented Oct 2, 2022

Describe the bug

If you generate a toy dataset from a model that is a product of sums, you still get the Evaluating RooAddPdf without a defined normalization set warnings, even though the normalization set is defined.

Expected behavior

There should be no such warnings, because the normalization set is defined. When you generate toy data for a given set of observables.

To Reproduce

void testProdOfSum()
{
    RooWorkspace ws{"ws"};
    ws.factory("Gaussian::gs(x[0,10], mu[2, 0, 10], sg[2, 0.1, 10])");
    ws.factory("Exponential::ex(x, lm[-0.1, -10, 0])");
    ws.factory("SUM::gs_ex(f[0.5, 0, 1] * gs, ex)");
    ws.factory("Gaussian::gs_1(x, mu_1[4, 0, 10], sg_1[2, 0.1, 10])");
    ws.factory("PROD::pdf(gs_1, gs_ex)");

    std::unique_ptr<RooDataSet>data{ws.pdf("pdf")->generate(*ws.var("x"), 10000)};
}

Setup

ROOT master on Arch Linux.

Additional context

This issue was observed when running the reproducer code from the related JIRA issues ROOT-9436 and ROOT-10483. If this GitHub issue is fixed, this should also be taken as a opportunity to implement a unit test that covers the linked JIRA issues, which was already fixed in 6.24 but there is yet no unit test that covers it.

There are also two more JIRA issues that might be related to this one:

@guitargeek
Copy link
Contributor Author

The unit test that covers ROOT-10483 is implemented in #11485.

guitargeek added a commit to guitargeek/root that referenced this issue Nov 13, 2022
In the RooRealIntegral and RooGenProdProj classes, the normalization
sets were so far not forwarded to the servers, which resulted in
undefined normalization sets for integrated PDFs as reported in root-project#11476.

A unit test that covers root-project#11476 and the related JIRA issue ROOT-9436 is
also implemented.

Closes root-project#11476.
guitargeek added a commit that referenced this issue Nov 25, 2022
In the RooRealIntegral and RooGenProdProj classes, the normalization
sets were so far not forwarded to the servers, which resulted in
undefined normalization sets for integrated PDFs as reported in #11476.

A unit test that covers #11476 and the related JIRA issue ROOT-9436 is
also implemented.

Closes #11476.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant