Skip to content

Hardcode theories needed for scale variations

Emanuele Roberto Nocera requested to merge hardcode_scale_var_theories into master

Created by: voisey

Aims to close https://github.com/NNPDF/nnpdf/issues/454.

This is still a WIP because among other things the docs need to be updated, but I'll do this once we have settled on the code.

A runcard that worked with the old set up is this:

default_theory:
   - theoryid: 163

theoryids:
   - 163
   - 180
   - 173

fit: 190315_ern_nlo_central_163_global
use_cuts: "fromfit"

pdf:
    from_: fit

experiments:
  - experiment: NMC
    datasets:
      - dataset: NMCPD
      - dataset: NMC
  - experiment: SLAC
    datasets:
      - dataset: SLACP
      - dataset: SLACD

template_text: |

   {@with default_theory@}
      {@chi2_impact_custom@}
   {@endwith@}

actions_:
  - report(main=true)

whereas now we can have something like this:

default_theory:
   - theoryid: 163

theoryid: 163
point_prescription: '3 point'

theoryids:
    from_: scale_variation_theories

fit: 190315_ern_nlo_central_163_global
use_cuts: "fromfit"

pdf:
    from_: fit

experiments:
  - experiment: NMC
    datasets:
      - dataset: NMCPD
      - dataset: NMC
  - experiment: SLAC
    datasets:
      - dataset: SLACP
      - dataset: SLACD

template_text: |

   {@with default_theory@}
      {@chi2_impact_custom@}
   {@endwith@}

actions_:
  - report(main=true)

where you get an error if you try to use a point_prescription without 163 as the theoryid and there are five allowed point_prescriptions: '3 point', '5 point', '5bar point', '7 point', '7 point (original)' and '9 point'. Also, note that the first runcard will still work with the new set up.

Let me know what you think. I was also wondering whether it would it be sensible for us to change it so the user no longer has to explicitly define what the default_theory is, but rather this is hardcoded too?

Merge request reports

Loading