Skip to content

Positivity plots in comparefits are wrong #695

@Zaharid

Description

@Zaharid

To quote from:

#595 (comment)

The idea is that you start with:

dataspecs:
 -  speclabel: current
    posdatasets:
        - {dataset: A,  ...}
        - {dataset: B, ...}
    other_stuff: ...

 -  speclabel: reference
    posdatasets: 
        - {dataset: A,  ...}
        - {dataset: C, ...}
    other_stuff: ...

And want to end up with something like:

dataspecs:
  - posdataset_name: A
    dataspecs:
      - posdataset: {dataset: A, ...}
        speclabel: current
        other_stuff_from_the_first_spec
      - posdataset: {dataset: A, ...}
        speclabel: reference
        other_stuff_from_the_second_spec

  - posdataset_name: B
    dataspecs:
      - posdataset: {dataset: B, ...}
        speclabel: current
        other_stuff_from_the_first_spec.
      - posdataset: {dataset: B, ...}
        speclabel: reference
        other_stuff_from_the_second_spec.

which is all good and nice. And took me a while to figure out. The idea is that you "transpose" the original specification so as to group by the same positivity specs, so you can put together e.g. predictions with different theories. However in the report, we are not collecting over the inner dataspecs and then giving that to something like plot_positivity_dataspecs as we should, but instead iterating over the inner dataspecs and repeating the plots each time. You can indeed see that they are duplicated here:

https://vp.nnpdf.science/rSw4iSvIQyWP0sABi7HOMQ==/#positivity

more concretely, it is computing the positivity with the common pdfs in plural, but potentially a different theory (i.e. the base and the reference one) upstairs and downstairs. So it is doing something like:

for each inner dataspec:
    positivity_plot(
        pdf from outer namespace,
        positivity + theory from inner dataspec
)

Apparently nobody ever realized. Possibly has to do with the ridiculous impossible to read names. But that will get better thanks to #589 .

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions