Fix bug in the definition of the 1D luminosity.
This PR addresses #1442 (closed) (see explanation there). A quick computation of the gg 1D luminosity plot (see attachment) reveals that it is the same as the one computed with APFELweb.
validphys
APFELweb
Additional checks must be carried out to verify that luminosities are indeed defined as in Eqs. (9.1)-(9.2)-(9.3) of the NNPDF4.0 paper.
Merge request reports
Activity
Also, as you were mentioning in #1442 (closed), I'm not 100% sure that the definitions of the luminosity channels correspond to those written in the NNPDF4.0 paper.
assigned to @enocera
added bug label
I've carefully checked the definitions of parton luminosities implemented in validphys. I have concluded that these are as in Eqs.(1-4) of https://arxiv.org/pdf/1607.01831.pdf which, in my opinion, are the expression that we should use. I assume that Eqs. (9.1-9.3) in the NNPDF4.0 paper are meant to denote the same thing, even if they are written in a sloppier way (in my opinion). I've redefined the way in which we integrate the 2D luminosity to obtain the 1D luminosity. I think it's more transparent to use the rapidity as integration variable (instead of x1) and so I did. I've redone the affected luminosity plots that appear in the NNPDF4.0 paper:
- Fig. 9.1: https://vp.nnpdf.science/Vxf13puVS2OvA06Allj-9g==
- Fig. 9.3: https://vp.nnpdf.science/-374FIEmTzyWP7wZyzhDUg==
Fig 9.2 is not affected, as it should, and as I've explicitly checked.
requested review from @enocera
requested review from @enocera
requested review from @enocera
Created by: Zaharid
With these settings I now get a warning running one of the examples.
meta: title: Luminosity plot example author: Rosalyn Pearson keywords: [example] pdfs: - {id: "NNPDF31_nlo_as_0118", label: "3.1 NLO"} - {id: "NNPDF31_nnlo_as_0118", label: "3.1 NNLO"} - {id: "NNPDF31_nnlo_as_0118_DISonly", label: "3.1 DIS only NNLO"} pdf: {id: "NNPDF31_nlo_as_0118", label: "3.1 NLO"} sqrts: 13000 # GeV lumi_channel: "gg" # one of [gg, gq, qqbar, qq, ddbar, uubar, ssbar, # ccbar, bbbar, dubar, udbar, scbar, csbar, pp, gp] PDFscalespecs: - xscale: log xscaletitle: Log template_text: | {@with PDFscalespecs@} {@xscaletitle@} scale ===================== {@plot_lumi1d@} {@plot_lumi1d_uncertainties@} {@endwith@} actions_: - report(main=True)
/home/zah/nngit/nnpdf/validphys2/src/validphys/pdfgrids.py:205: IntegrationWarning: The maximum number of subdivisions (50) has been achieved. If increasing the limit yields no improvement it is advised to analyze the integrand in order to determine the difficulties. If the position of a local difficulty can be determined (singularity, discontinuity) one will probably gain from splitting up the interval and calling the integrator on the subranges. Perhaps a special-purpose integrator should be used. res = integrate.quad(f, y_min, y_max, epsrel=1e-5, limit=50)[0]
Do we really need 1e-5 in error?
Created by: Zaharid
@enocera ok to merge this?