SIMUnet installation guide#

The installation process for SIMUnet is very similar to the one for NNPDF, more details can be found on their website. The only difference is that you need to clone the SIMUnet repository from SIMUnet GitHub.

Linux#

The following instructions have been tested on a Linux system.

Dependencies installation#

The dependencies need by to be installed via conda:

conda create -n simunet
conda activate simunet
conda install --only-deps nnpdf=4.0.5
conda install gxx_linux-64
conda install pkg-config swig cmake
conda install sysroot_linux-64=2.17
conda install pineappl=0.8.7

Code compilation#

The SIMUnet code can be downloaded from GitHub:

mkdir simunet_git
cd simunet_git
git clone https://github.com/HEP-PBSP/SIMUnet.git

The code can then be compiled and installed with the following commands:

simunet_git$ cd simunet_release
mkdir conda-bld
cd conda-bld
cmake .. -DCMAKE_INSTALL_PREFIX=$CONDA_PREFIX
make
make install

The SIMUnet code, in addition to the regular files that are needed in the NNPDF methodology to produce theoretical predictions, requires K-factors to account for the effect of SMEFT operators. These K-factors are implemented in simu_fac files, which exists for each dataset in the SIMUnet methodology. For a given dataset, the simu_fac file includes the SM theory prediction, and the SMEFT theory prediction at LO and/or NLO, if applicable. These K-factors are hosted in the NNPDF theory_270 folder, which will be automatically downloaded when required by the user’s runcard.

Arm64 MacOS#

The following instructions have been tested on MacOS systems with arm processors like, i.e. the M-series.

Dependencies installation#

To install SIMUnet on arm64 MacOS machines using conda, we must create an environment which is able to accommodate a x86 C++ compiler, therefore, we must create a conda environment setting the CONDA_SUBDIR=osx-64:

export CONDA_SUBDIR=osx-64

Then, we create the simunet environment, we download a proper MacOSX-SDK in the base folder of the SIMUnet conda environment:

conda create -n simunet
conda activate simunet
cd $CONDA_PREFIX
curl -L -O https://github.com/phracker/MacOSX-SDKs/releases/download/11.3/MacOSX10.9.sdk.tar.xz
tar -xzf MacOSX10.9.sdk.tar.xz

We must set up the variable CONDA_BUILD_SYSROOT:

export CONDA_BUILD_SYSROOT=$CONDA_PREFIX/MacOSX10.9.sdk

Then, we must install the correct dependencies to finally install SIMUnet:

conda install --only-deps nnpdf=4.0.5
conda install tensorflow=2.10
conda install pkg-config=0.29.2 cmake=3.31.2 swig=4.0.2
conda install libarchive=3.4.2
conda install h5py=3.9.0 hdf5=1.14.0
conda install pineappl=0.8.7

We spot an issue with librhash, to solve it:

ln -s $CONDA_PREFIX/lib/librhash.dylib $CONDA_PREFIX/lib/librhash.0.dylib

Code compilation#

The SIMUnet code can be downloaded from GitHub:

git clone https://github.com/HEP-PBSP/SIMUnet.git
cd SIMUnet
mkdir conda-bld
cd conda-bld

The code can then be compiled and installed with the following commands:

cmake .. -DCMAKE_INSTALL_PREFIX=$CONDA_PREFIX
make
make install

Note that if your CPU has more than one core, which is the case for M-series Mac machines, the option -j4 can be used to speed up the make command.

Moreover, the make install command will raise some non-stopping errors, which do invalidated the installation.

The SIMUnet code, in addition to the regular files that are needed in the NNPDF methodology to produce theoretical predictions, requires K-factors to account for the effect of SMEFT operators. These K-factors are implemented in simu_fac files, which exists for each dataset in the SIMUnet methodology. For a given dataset, the simu_fac file includes the SM theory prediction, and the SMEFT theory prediction at LO and/or NLO, if applicable. These K-factors are hosted in the NNPDF theory_270 folder, which will be automatically downloaded when required by the user’s runcard.