-
Notifications
You must be signed in to change notification settings - Fork 2
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
Per-mass GM-VFNS #124
Per-mass GM-VFNS #124
Conversation
I thought a bit about how to proceed (detect things and replace by With f929570 I started the operation of breaking, reshuffling stuffs from Worst case, we can just revert, but I'm pretty confident we can manage to solve in a reasonable amount of time (less than one day, hopefully less than half). |
In 5d58def I started introducing I don't want to push for its development, but I just thought it was a nice place to put helpers for runcards generation (in a way that is suitable to expose to the end user). |
According to the new plan, we should further restrict the information available in |
Codecov Report
@@ Coverage Diff @@
## develop #124 +/- ##
===========================================
- Coverage 76.16% 67.44% -8.72%
===========================================
Files 81 81
Lines 3637 3671 +34
===========================================
- Hits 2770 2476 -294
- Misses 867 1195 +328
Flags with carried forward coverage won't be shown. Click here to find out more.
|
The plan is almost finished, to run it: cd extras
python -m gmvfns You can set the heavy flavors and the observable as options. |
I definitely want a Actually I would not care so much about an entire class, I want a type for the generator, to tell that I'm going to use a generator, and if someone wonders about what a generator is, it can look for the definition and documentation. We can still do it in two ways:
However, there is an elegant syntax we can use to implement the first way: we make a decorator. class Generator:
def __init__(self, collector):
self.collector = collector
def __call__(self, nf, ihq, ...):
self.collector(nf, ihq, ...)
@Generator
def generate_light_kernels(nf, ihq, ...):
... |
P.S.: we could think about reuse the pattern above to kill some exceeding classes even somewhere else... |
Planning completed, now I need a review, i.e. run the thing and check the output is correct, who cares about the code itself... |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think, I mostly agree, however there are two things:
Fmiss(3f:b, /b, ~~1)
- I don't understand what exactly the nomenclature is, but I think one of the twob
s is redundant; or at least I couldn't generate a configuration with the two things different- we should continue to provide the "heavy-light":
this should be
$ python -mgmvfns -o charm ┌───────────────────┐ │ active flavors: 4 │ └───────────────────┘ Fcharm =
Flight(zm:1|c)
; otherwise we run immediately again into trouble for Hera, since most of the points are in the 5FS patch ... of coursestill holdsFlight = Flight(zm:4) Ftotal = Flight
|
The
This only depends on the mass treatment and the patch, and it's already accounted for. Nothing else to do.
This is intended:
|
@felixhekhorn: I tried to include intrinsic in the simulation, so as soon as you can please have a look if the printed simulation actually make sense |
At the moment actually I didn't solve the full intrinsic problem:
Singlet channel only appears in NNLO (so ruled out by 1), and gluon is of course not intrinsic (so ruled out by 2.). Nevertheless, at some point we might have to deal with intrinsic NNLO, there you can have a couple more channels:
For the time being is already quite a mess without this further complication... |
It might be working (except intrinsic, for which I still need a review of the plan). Can you @felixhekhorn please try to review with (At this point, I regret both missing APFEL benchmarks, and regression tests) |
Actually (surprisingly enough), IC+FONLL almost work as before, it only screws a bit more the smallest Nevertheless, IC+ FFNS is screwed all over the place, I'm currently checking if it's a compatibility problem, or it's genuinely the new algorithm to be bugged. |
Problem solved in abdab2f:
In principle (assuming we choose compatible setups) the new implementation produce the exact same numbers of the old one. Still to be tested deeper and by someone else than me, I'm rather biased |
On a first quick glance looks alright! I want to test it more extensively on Thursday though ... |
* develop: Minimal runner renaming Silence xspace-bench benchmark for the time being Silence apfel benchmark for the time being Polish benchmark workflow, update triggers Update benchmark workflow to use provided container image
Plan
KernelGroup
Implementation
KernelGroup
==Generator
Info
xs
andexs
Kernel
andPartonicChannel