Skip to content

Fix pure Fragmentation scale evolution#398

Open
Radonirinaunimi wants to merge 4 commits intomasterfrom
fix-frg-scale-evolution
Open

Fix pure Fragmentation scale evolution#398
Radonirinaunimi wants to merge 4 commits intomasterfrom
fix-frg-scale-evolution

Conversation

@Radonirinaunimi
Copy link
Copy Markdown
Member

Sorry for having been slow lately which has resulted in #394 being blocked. In the meantime, I stumbled upon an issue that has to do with evolving pure FF grids, ie with fac = NoScale and only fragmentation scale involved. This PR provides a fix for this and adds a test.

@Radonirinaunimi Radonirinaunimi added the bug Something isn't working label Apr 15, 2026
@Radonirinaunimi Radonirinaunimi changed the title Fix frg scale evolution Fix pure Fragmentation scale evolution Apr 15, 2026
@Radonirinaunimi Radonirinaunimi requested a review from cschwan April 15, 2026 20:21
Copy link
Copy Markdown
Contributor

@cschwan cschwan left a comment

Choose a reason for hiding this comment

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

I believe the TODO comment,

// TODO: implement evolution for non-zero fragmentation scales

signifies that any evolution with fragmentation function hasn't been tested yet. Is that the case and is you testing SIA just the first instance of finding something wrong?

/// Note: for pure time-like (FF) grids, PineAPPL stores only fragmentation scales. In that
/// case, this getter returns `frg1` as a backwards-compatible fallback.
#[getter]
fn fac1<'py>(&self, py: Python<'py>) -> Bound<'py, PyArray1<f64>> {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

This change will result in the Python and Rust APIs behaving differently. Is this justified?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Yes, I'd say that this is justified given how minimal this change is compared to say accounting it at the level of say pineko which would introduce non-negligible breaking changes.

@Radonirinaunimi
Copy link
Copy Markdown
Member Author

I believe the TODO comment,

// TODO: implement evolution for non-zero fragmentation scales

signifies that any evolution with fragmentation function hasn't been tested yet. Is that the case and is you testing SIA just the first instance of finding something wrong?

The comment indeed mentions that we FF scale evolution has not been tested at all. The reason was that until now we did not really grids and evolution operators to really test it. Now that we have PineAPFEL, we can easily test this for not only SIA but also for SIDIS, etc. The issue originally manifested from SIA but noticed it also for SIDIS. And this PR solves both.

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

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants