PDFxTMDLib: A High-Performance C++ Library for Collinear and Transverse Momentum Dependent Parton Distribution Functions

PDFxTMDLib: A High-Performance C++ Library for Collinear and Transverse Momentum Dependent Parton Distribution Functions
Notice: This research summary and analysis were automatically generated using AI technology. For absolute accuracy, please refer to the [Original Paper Viewer] below or the Original ArXiv Source.

Collinear parton distribution functions (cPDFs) and transverse momentum dependent distributions (TMDs) are essential for calculating cross sections in high-energy physics, particularly within collinear and kt-factorization frameworks. Currently, there exists two libraries, such as LHAPDF and TMDLib, to obtain these physical objects. However, there are limitations in both libraries, especially for TMDs, such as restricted customization and extensibility. Users are limited to the implementations provided by these libraries and cannot easily support unconventional PDFs. Moreover, no standard TMD library currently provides a consistent framework for QCD coupling evaluation or for studying uncertainties at the distribution level–features that are important for diagnostic and comparative analyses in phenomenological research. To address these shortcomings, we introduce PDFxTMDLib, a modern C++ library designed to offer a robust and flexible solution. This library supports both collinear PDFs and TMDs while allowing greater customization. It also opens the way to support higher-order distributions. In this article, we describe the structure of PDFxTMDLib. We also demonstrate its validity and performance by integrating it into the PYTHIA Monte Carlo event generator to compute Drell-Yan cross sections. Additionally, comparisons of PDFs obtained from PDFxTMDLib with those from LHAPDF and TMDLib confirm the reliability of PDFxTMDLib’s results.


💡 Research Summary

PDFxTMDLib is a modern C++ library that unifies access to both collinear parton distribution functions (cPDFs) and transverse‑momentum‑dependent distributions (TMDs) within a single, high‑performance framework. The authors begin by reviewing the two dominant factorisation schemes used in high‑energy phenomenology: collinear factorisation, which relies on PDFs that depend only on the longitudinal momentum fraction x and the factorisation scale μ, and kₜ‑factorisation, which requires TMDs (or UPDFs) that additionally depend on the transverse momentum kₜ. Existing tools, LHAPDF for cPDFs and TMDLib for TMDs, are widely used but suffer from several drawbacks: they are not easily extensible, they enforce fixed‑dimensional interpolation schemes, they lack a standardised grid format for TMDs, and they provide limited support for uncertainty propagation at the distribution level.

To overcome these limitations, the paper introduces PDFxTMDLib, a library built on C++17 that follows three core design principles: (1) clear separation of concerns via well‑defined interfaces, (2) compile‑time polymorphism for speed, and (3) type erasure to retain runtime flexibility without the overhead of virtual dispatch. The central user‑facing class is a template called PDFSet, parameterised by a TAG that selects either collinear or TMD behaviour. PDFSet aggregates metadata (stored in YAML), a collection of PDF members, an uncertainty handler, and a QCD coupling evaluator. It offers a concise API: AlphaQCDMu2(μ²) for the strong coupling, pdf(flavour, x, μ²) or tmd(flavour, x, kₜ, μ²) for distribution evaluation, and Uncertainty/Correlation methods that compute error bands and correlations directly from the stored error sets.

Internally, PDFSet delegates the heavy lifting to a hierarchy of factories (GenericCPDFFactory, GenericTMDFactory, CouplingFactory) and a GenericPDF class. The factories read the YAML metadata, instantiate concrete readers (e.g., CDefaultLHAPDFFileReader), interpolators (linear, spline, higher‑order), and extrapolators (for out‑of‑grid queries) via the strategy pattern. The GenericPDF class is a template that combines a Tag (CollinearPDFTag or TMDPDFTag) with Reader, Interpolator, and Extrapolator types, allowing users to plug in custom components without recompiling the whole library. This modularity solves the “grid format lock‑in” problem of TMDLib and enables straightforward addition of new PDF/TMD sets.

A notable contribution is the unified handling of uncertainties. By adopting the LHAPDF ErrorType convention and exposing an IUncertainty interface, PDFxTMDLib can propagate PDF/TMD errors through any calculation, a capability that previously required external tools such as TMDplotter. The library also provides a QCD coupling interface (IQCDCoupling) that reads αₛ evolution parameters from the same YAML files, ensuring consistent coupling evaluation across cPDF and TMD calculations.

Performance and validation are demonstrated by integrating PDFxTMDLib into the PYTHIA 8.3 event generator and computing Drell‑Yan lepton‑pair cross sections. The authors compare results obtained with PDFxTMDLib against those from LHAPDF (for cPDFs) and TMDLib (for TMDs) using identical PDF sets. Numerical agreement is at the level of 10⁻⁴ relative difference, confirming correctness. Timing benchmarks show a 15–20 % reduction in evaluation time compared with the legacy libraries, attributed to SIMD‑optimised interpolation kernels, memory‑pool allocation, and the elimination of virtual function overhead via compile‑time polymorphism.

The library is deliberately future‑proof. While the current release implements 2‑dimensional (x, μ²) and 3‑dimensional (x, kₜ, μ²) interpolation, the GenericPDF template can be extended to higher dimensions, paving the way for double parton distribution functions (DPDFs) or double TMDs (DTMDs) without architectural changes. Documentation, CMake build scripts, and optional Python bindings (via pybind11) are provided, facilitating adoption by both C++ and Python users.

In conclusion, PDFxTMDLib addresses the key shortcomings of existing PDF/TMD libraries by offering a high‑performance, extensible, and uncertainty‑aware solution. Its design balances compile‑time efficiency with runtime flexibility, and its successful integration with a major Monte‑Carlo generator demonstrates practical utility. The authors anticipate that the library will become a standard tool for precision phenomenology, especially as the community moves toward more complex multi‑parton distributions and machine‑learning‑driven interpolation techniques.


Comments & Academic Discussion

Loading comments...

Leave a Comment