Skip to content

Improvements in cuts

Emanuele Roberto Nocera requested to merge intersectcuts into master

Created by: Zaharid

This introduces three improvements in the handling of cuts:

  • Integrate the cuts with validphys a bit better. In particular, do not have different paths for internal cuts and filter. With this change, the filter action only checks some legacy options and writes files to disk.
  • Allow vp-setupfit to take arbitrary cuts as input. One can explicitly set the value of use_cuts within the runcard, and have it do various things like e.g. taking the cuts from another fit.
  • Add a way to specify that cuts should be computed as the intersection of various cut specifiactions. In particular, one car write something like
fit: NNPDF31_nnlo_as_0118_1000

theoryid: 53

use_cuts: fromintersection

datacuts:
    from_: fit

w2min:
    from_: datacuts

q2min:
    from_: datacuts

cuts_intersection_spec:
    - theoryid: 52
    - theoryid: 53

experiments:
    from_: fit

pdf:
    from_: fit

actions_:
    - experiments::experiment plot_fancy

with the meaning that cuts are computed within each of the two namespaces (i.e. assuming that theorid is either 52 or 53) and then the intersection of the results is taken. As always, the outer namespaces (which set the values for q2min and w2min) are used as well. This then allows to write something like:

use_cuts: "fromintersection"
cuts_intersection_spec:
    - theoryid: 52
    - theoryid: 53

in the fit runcard (e.g. in the datacuts section) and have the common subset of theories 52 and 53 in the fit.

One more thing that might be good to do is make the internal cuts depend on commondata rather than on dataset. At the moment not doing this requires loading fktables for no reason and awkward hacks to get rid of missing cfactor errors. That should be easy.

Merge request reports

Loading