# PDF set storage and interpolation

LHAPDF is a C++ library that evaluates PDFs by interpolating the discretised PDF ‘grids’ that PDF collaborations produce. It also gives its users access to proton and nuclear PDF sets from a variety of PDF collaborations, including NNPDF, MMHT and CTEQ. A list of all currently available PDF sets can be found on their website. Particle physics programmes that typically make use of PDFs, such as Monte Carlo event generators, will usually be interfaced with LHAPDF, to allow a user to easily specify the PDF set that they wish to use in their calculations. You can read more about LHAPDF by reading the paper that marked their latest release.

## PDF evolution

APFEL (‘A PDF Evolution Library’) is the PDF evolution code currently used by the NNPDF Collaboration. In addition to its PDF evolution capabilities, it also produces predictions of deep-inelastic scattering structure functions. In recent years it has been developed alongside NNPDF, and so it therefore contains the features and settings required in an NNPDF fit. That is, it includes quark masses in the MSbar scheme, the various FONLL heavy quark schemes, scale variations up to NLO, etc. Note that at the time of writing, a more streamlined code is being written to replace APFEL, which is currently dubbed EKO (‘Evolution Kernel Operator’). To find more general information about PDF evolution and the DGLAP equations, you can go to the Theory section.

## PDF compression

PDF compression seeks to maintain the statistical accuracy of a large sample of replicas produced by a fit when using a PDF set with a smaller number of replicas (and thus fewer convolutions required to compute cross sections with PDF uncertainties). For example the main published PDFs are typically based on a 1000 replica fit, which can then be compressed to around a 100 replicas PDF set while maintaining good accuracy of most relevant statistical estimators. This is done with the pyCompressor library, a python compression code that extracts, from an initial PDF set of replicas, the subset that most truthfully reproduces the underlying probability distribution of the prior. pyCompressor is an updated python version of compressor, which was used in previous releases.