Dependencies

  • git

  • Fortran (Intel fortran or gfortran>11)

  • C++

  • hdf5 (serial version)

  • CMake (v3.8 or higher)

  • MPI (v3.0 or higher)

Install dependencies on local computers

The compiler and some dependencies can be easily installed on personal computer via built-in software manager

Opting to install SurfATT within a Conda environment is beneficial in scenarios where compiler or library conflicts arise due to dependencies of other software.

conda create -n surfatt -c conda-forge openmpi cxx-compiler fortran-compiler cmake hdf5
conda activate surfatt
$ sudo dnf install gcc gcc-gfortran gcc-c++ cmake openmpi-devel hdf5-devel
$ sudo dnf install gcc-toolset-11 cmake openmpi-devel hdf5-devel
$ sudo apt install build-essential gfortran cmake libopenmpi-dev openmpi-bin libhdf5-dev
$ brew install gcc cmake open-mpi hdf5

Install dependencies on HPCs

The module-environment is extensively utilized for managing modules that are requisite for SurfATT. Dependencies can be loaded as illustrated below

module purge && module load gcc/11.2.0-nscc libfabric/1.11.0.4.125 openmpi/4.1.5-gcc11 cmake/3.23.1 hdf5/1.10.5
module purge && module load mpi/intel/20.0.4 hdf5/1.10.6-intel20 cmake/3.23.1