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

Upgrade to PineAPPL v1 #206

Open
wants to merge 26 commits into
base: main
Choose a base branch
from
Open

Upgrade to PineAPPL v1 #206

wants to merge 26 commits into from

Conversation

Radonirinaunimi
Copy link
Member

@Radonirinaunimi Radonirinaunimi commented Nov 13, 2024

This PR tests the new Python interface of the upcoming PineAPPL v1. There are a few notable changes affecting pineko directly:

  • The types of convolutions (be it for grids or FK tables) are accessed through the convolutions attributes. These information are no longer determined from the metadata (address the shortcomings discussed in Bump pineappl version nnpdf#2129 (comment) and Allow evolution and convolution with different ekos for a single grid  #181 (comment)).
  • Grids can be evolved with an arbitrary number of EKOs (no longer limited to two operators). This removes the need for operator1 and operator2 in favor of just operators.
  • Grids and FK tables can be convolved with an arbitrary number of PDFs (no longer limited to two PDFs). Similarly, this removes the need for pdf1 and pdf2 in favor of pdfs.
  • Add a new variation of scale - which is the fragmentation scale xia.

The only remaining thing for which we will still require an ad-hoc hack/tweak is the checks that the PDFs are ordered according to the type of convolutions. This is an LHAPDF problem so there isn't much that we can do.

This will deprecate #192.

Remaining to do:

  • profile the computation of the Jet EKOs

@Radonirinaunimi Radonirinaunimi added enhancement New feature or request physics Physics feature pineappl modifications related to PineAPPL labels Nov 13, 2024
@cschwan
Copy link
Contributor

cschwan commented Nov 14, 2024

When this is working I suggest you also try to implement #183 - this should decrease the time and space needed to perform an evolution. Also the required changes should be minimal.

@Radonirinaunimi
Copy link
Member Author

When this is working I suggest you also try to implement #183 - this should decrease the time and space needed to perform an evolution. Also the required changes should be minimal.

Thanks for letting me know about this! I will surely do once this is working indeed.

Copy link
Contributor

@giacomomagni giacomomagni left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great to me. Some really minor comments:

  • Just a small question: why key_values are still around and now we don't have just metadata ? Why the theory card is still saved to key_values ?

# propagate metadata
for k, v in ori_grid.key_values.items():
new_grid.set_key_value(k, v)

  • I did not check, I'm able to produce a real FKtable myself.

@cschwan
Copy link
Contributor

cschwan commented Feb 26, 2025

Looks great to me. Some really minor comments:

* Just a small question: why `key_values` are still around and now we don't have just metadata ? Why the theory card is still saved to `key_values` ?

Indeed, it should be {set_,}metadata instead of {set_,}key_value. I'm not why it still works the old way.

@Radonirinaunimi
Copy link
Member Author

Thanks a lot @giacomomagni for the review! I will address them once I am in front of a computer this afternoon.

Looks great to me. Some really minor comments:

* Just a small question: why `key_values` are still around and now we don't have just metadata ? Why the theory card is still saved to `key_values` ?

Indeed, it should be {set_,}metadata instead of {set_,}key_value. I'm not why it still works the old way.

Some of these set_key_values are redefinitions coming from FakeObject classes in the tests and hence why still work (and also why I didn't catch them). I will replace these when addressing the reviews.

Copy link
Contributor

@giacomomagni giacomomagni left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As long as it works it's good for me!

Co-authored-by: Giacomo Magni <[email protected]>
@Radonirinaunimi Radonirinaunimi removed the waiting-pineappl-v1 Waiting for the release of PineAPPL v1 label Feb 28, 2025
@Radonirinaunimi
Copy link
Member Author

As long as it works it's good for me!

Perfect, thanks! Let's wait for #215 and we can test it here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request pineappl modifications related to PineAPPL
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants