Installation

One can install HepLib automatically or manually, the recommended one is to use the install.sh script or the makefile.

Install Automatically

One can install HepLib automatically with the all-in-one script install.sh or the all-in-one makefile.

wget https://heplib.github.io/install.sh
chmod +x install.sh
INSTALL_PATH=<INSTALL PATH> jn=<jn> ./install.sh
  • <INSTALL PATH> the directory to which all external libraries/programs will be installed.

  • <jn> the number of jobs in invoking make -j $jn.

Install Manually

One can also install HepLib manually which is NOT recommended, including to install the required external libraries, external programs and HepLib iteself following the steps below.

circle-info

Assuming one has exported the environment variable INSTALL_PATH.

export INSTALL_PATH="<INSTALL PATH>"

1. Install External Libraries

curl -L -O https://gmplib.org/download/gmp/gmp-6.2.0.tar.gz
tar zxf gmp-6.2.0.tar.gz
cd gmp-6.2.0
./configure --prefix=$INSTALL_PATH
make -j 16
make install
  • MPFRarrow-up-right : it is used to handle the multiple precision in the numerical integration. MPFR needs to be compiled with the option --enable-float128.

circle-exclamation
  • GiNaCarrow-up-right : The underlying language of HepLib, which is used for symbolic operations.

circle-info

The version with quadruple precision libcubaq is actually used, by adding the option --with--real=16 --fPIC to the configure script. One may also need the option -fcommon while using gcc 10.

2. Install External Programs

  • Fermatarrow-up-right : it is used for matrix operation, multivariate rational polynormial simplification, etc..

  • Formarrow-up-right : it is used for Dirac and Color matrix trace, Lorentz index contraction, etc..

3. Install HepLib

One can download the most recent version of HepLib as a compressed archive: HepLib.tar.gz, uncompress it and change current directory into HepLib/src by the commands:

Create a directory for cmake to build the library as follows:

circle-info

If GiNaC or other dependent external library is not installed to CMAKE_INSTALL_PREFIX, the user needs to specify the locations by supplying the variables INC_PATH and LIB_PATH in the cmake arguments as:

Last updated