Skip to content

Latest commit

 

History

History
109 lines (86 loc) · 4.02 KB

README.md

File metadata and controls

109 lines (86 loc) · 4.02 KB

CircleCI CodeFactor CodeQL DOI

A PDF evolution library in C++

Introduction

APFEL++ is a C++ rewriting of the Fortran 77 code APFEL originally conceived to evolve collinear parton distribution functions (PDFs). However, APFEL++ is based on a completely new code design and guarantees a better performance along with a more optimal memory management. The new modular structure allows for better maintainability and easier extensibility. This makes APFEL++ suitable for a wide range of tasks: from the solution of the DGLAP evolution equations to the computation of deep-inelastic-scattering (DIS) and single-inclusive-annihilation cross sections. Also more complex computations, such as differential semi-inclusive DIS and Drell-Yan cross sections, are easily implementable in APFEL++.

APFEL++ is used as a prediction engine in: NangaParbat, a code devoted to the extraction of Trasverse-Momentum-Dependent (TMD) distributions; MontBlanc, a code for the determination of collinear fragmentation functions (FFs); and Denali, a code for the determination of collinear longitudinally polarised PDFs. APFEL++ is also currently interfaced to PARTONS, a software dedicated to the phenomenology of Generalised Parton Distributions (GPDs) and TMDs, and to xFitter, an open source fit framework devoted to the extraction of collinear distributions and to the assessment of the impact of new experimental data.

Homebrew (macOS)

APFEL++ is available through the Homebrew-hep tap of Homebrew. After having installed Homebrew and tapped Homebrew-hep, the latest stable release of APFEL++ can be downloaded and installed with:

brew install apfel++

Download

You can obtain APFEL++ directly from the GitHub repository:

https://github.com/vbertone/apfelxx/releases

For the latest development branch you can clone the master code:

git clone https://github.com/vbertone/apfelxx.git

If you instead want to download a specific tag:

git tag -l
git checkout tags/tag_name

Installation

The code can be compiled using the following procedure:

cd apfelxx
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=/your/installation/path/ ..
make && make install

By default, if no prefix is given, the program will be installed in the /usr/local folder. If you want (or need) to use a different path, remember to export the APFEL++ /lib and /bin folders into the $LD_LIBRARY_PATH and $PATH, respectively. More configuration options can be accessed by typing:

ccmake .

The library can be uninstalled by running:

make clean
xargs rm < install_manifest.txt

Code documentation

Code documentation automatically generated with Doxygen can be found at this link.

Relevant references

  • V. Bertone, APFEL++: A new PDF evolution library in C++, arXiv:1708.00911.
  • V. Bertone, S. Carrazza, J. Rojo, APFEL: A PDF Evolution Library with QED corrections, arXiv:1310.1394.

Contact information