This code implements the computation of the DIS structure functions at NLO in the dipole picture. Computation is implemented in C and C++.
IMPORTANT NOTE: The source code in this repository is considered under development, and it is not guaranteed to always work or to reproduce previously published results. For the highest reliability and accuracy in scientific computation, it is recommended to use the source code available on the Releases page. This can also be done by selecting the latest release tag after cloning the repository:
git clone https://github.com/hejajama/nlodis
cd nlodis
git checkout v1.0.0
When you use this code, please cite the following publications:
- [1] H. Hänninen, H. Mäntysaari and J. Penttala, "A numerical implementation of the NLO DIS structure functions in the dipole picture", Submitted to SciPost Physics Codebases, arXiv:2604.09071
- [2] H. Hänninen, H. Mäntysaari and J. Penttala, "NLO DIS in dipole picture" (software), Zenodo doi:10.5281/zenodo.19367635
This is a cleaned-up version of the code originally written by H. Hänninen, with non-zero masses implemented by H. Hänninen and J. Penttala.
This code has been developed and used in the following publications:
- H. Hänninen, H. Mäntysaari, R. Paatelainen, J. Penttala, Phys. Rev. Lett. 130 (2023) 19, 19, arXiv:2211.03504
- G. Beuf, H. Hänninen, T. Lappi and H. Mäntysaari, Phys. Rev. D102 (2020) 074028 , arXiv:2007.01645
- B. Ducloué, H. Hänninen, T. Lappi, Y. Zhu, Phys. Rev.D 96 (2017) 9, 094017, arXiv:1708.07328
The NLO DIS calculation in the dipole picture with massive quarks, implemented in this code, has been published in
- G. Beuf, T. Lappi, R. Paatelainen, Phys.Rev.D 106 (2022) 3, 034013, arXiv:2204.02486
- G. Beuf, T. Lappi, R. Paatelainen, Phys. Rev. Lett. 129 (2022) 7, 072001, arXiv:2112.03158
- G. Beuf, T. Lappi, R. Paatelainen, Phys.Rev.D 104 (2021) 5, 056032, [arXiv:2103.14549]
- Dependencies: CMake and GNU Scientific Library (GSL). The code also uses the Cuba library for multidimensional numerical integration. Cuba-4.2.2 is included in this code package and compiled automatically.
- Do
mkdir build; cd build; cmake ..; make
This code requires a dipole-proton scattering amplitude (that should satisfy the NLO BK evolution equation). For example, one can use dipole amplitudes obtained in C. Casuga, H. Hänninen, H. Mäntysaari, Phys. Rev. D112 (2025) 3, 034003, arXiv:2506.00487. Data files compatible with this code can be found in the Zenodo repository DOI:10.5281/zenodo.15552940
For further instructions, see Ref. [1].
An example program is provided and described in the published article [1], and can be executed after compilation with:
./build/bin/nlodis
See ./src/main.cpp for the source code. A simple example program is implemented in ./src/simple_example.cpp and automatically compiled.
Before using this program, the user is encourated to verify that the current version passes unit tests by running
./bin/nlodis_tests
in the build directory.
The aligned jet contribution gives a large logarithm --mcintpoints.
The API documentation can be generated as follows
cd docs
doxygenThis project is licensed under the MIT License. You are free to use, modify, and distribute the code, including for commercial purposes, provided that the original copyright notice and license are included.
If you use this code in scientific work, please cite the associated publication (see above).
The unmodified version of the Cuba library, which is distributed as part of this package (src/Cuba-4.2.2), is available under the GNU LGPL license. See src/Cuba-4.2.2/COPYING.
- Include support for
$b$ -dependent dipoles - "Undo"
$z_2$ integral in$\sigma_{\mathrm{dip}}$ , allowing the user to use a$z_2$ -dependent evolution rapidity also in$\sigma_\mathrm{dip}$ similarly as in$\sigma_{qg}$ . See arXiv:2112.08818 Sec. 3.3.3 (for the$m_q=0$ case) - Include zero quark mass limit results