Skip to content

QCDLab/neopdf

Repository files navigation

NeoPDF Logo

Codecov MSRV Crates.io PyPI - Version GitHub License

NeoPDF is a fast, reliable, and scalable interpolation library for Non-Perturbative Distribution Functions with modern features designed for both present and future hadron collider experiments:

  • Beyond interpolations over the kinematic variables (x, ξ, Δ, kT, ), NeoPDF also supports interpolations along the nucleon numbers A (relevant for nuclear PDFs and TMDs) and the strong coupling αs(MZ).

  • NeoPDF implements its own file format using binary serialization and LZ4 compression, prioritizing speed and efficiency over human-readable formats. A command Line Interface (CLI) is provided to easily inspect and perform various operations on NeoPDF grids.

  • NeoPDF is esigned as much as possible with a “no-code migration” philosophy across the various API interfaces (Fortran, C/C++, Python, Mathematica). It thus preserves naming conventions and method signatures in close alignment with LHAPDF, ensuring that existing codes can switch to NeoPDF with minimal or no modifications.

Supported distributions

NeoPDF supports generic classes of distributions that are functions of different combinations of the kinematic variables. Examples of distribution functions are given in the diagram below with their simplified relationships.

graph TD

A["**Generalized Tranverse Momentum Distribution** <br> GTMD(x, ξ, Δ, kT​​, Q²)"]

A -->|∫ dkT| B["**Generalized Parton Distributions** <br> GPD(x, ξ, Δ, Q²)"]
A -->|ξ → 0, Δ → 0| C["**Transverse Momentum Distributions** <br> TMD(x, kT, Q²)"]

B -->|ξ → 0, Δ → 0| D["**Collinear Parton Distribution Functions** <br> PDF(x, Q²)"]
C -->|∫ dkT| D

style A fill:#ffd580,stroke:#b8860b,stroke-width:2px
style B fill:#add8e6,stroke:#1e90ff,stroke-width:2px
style C fill:#98fb98,stroke:#228b22,stroke-width:2px
style D fill:#f08080,stroke:#8b0000,stroke-width:2px
Loading

Quick Links

Citation

If you use NeoPDF, please cite the software itself and the paper. If you are also using the TMDlib interface of NeoPDF and/or LHAPDF, please cite them accordingly.

Note

As of v0.2.0, NeoPDF (and in particular its APIs) is stable and will fully maintain backward compatibility.