-
Notifications
You must be signed in to change notification settings - Fork 46
Raven installation instructions
The instructions below will install simsopt
, VMEC
, and booz_xform
for the Max Planck Computing and Data Facility's Raven supercomputer. These instructions work as of September 2023.
-
Load the required modules:
module load intel/21.7.1 impi/2021.7 anaconda/3/2023.03 module load mkl/2021.2 netcdf-mpi mpi4py fftw-mpi boost-mpi/1.79
-
Set environment variables. These must also be available at runtime, so include the following also in your submit scripts.
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${NETCDF_HOME}/lib:${MKL_HOME}/lib/intel64
-
Set up a virtual environment as explained here: https://docs.mpcdf.mpg.de/doc/computing/software/data_analytics-machine_learning#how-to-install-additional-python-packages
python -m venv --system-site-packages <path/to/my_venv> source <path/to/my_venv>/bin/activate
-
Clone the
simsopt
repository and navigate to that directory:git clone https://github.com/hiddenSymmetries/simsopt.git cd simsopt
-
Install requirements:
pip install -r requirements.txt
-
Install simsopt
pip install -e .[MPI,SPEC]
If you do not need VMEC
, for example if you are running stage-2 coil optimization, you can stop here.
-
If you do need
VMEC
, clone thehiddenSymmetries/VMEC2000
repository and navigate to that directory:git clone https://github.com/hiddenSymmetries/VMEC2000 cd VMEC2000
-
Install requirements:
pip install f90wrap scikit-build
-
Replace
cmake_config_file.json
with the following, replacing the environmental variables with the appropriate paths, such as thesed
commands below:{ "cmake_args": [ "-DCMAKE_C_COMPILER=mpiicc", "-DCMAKE_CXX_COMPILER=mpiicpc", "-DCMAKE_Fortran_COMPILER=mpiifort", "-DNETCDF_INC_PATH=${NETCDF_HOME}/include", "-DNETCDF_LIB_PATH=${NETCDF_HOME}/lib", "-DBLA_VNEDOR=Intel10_64lp", "-DSCALAPACK_LIB_DIR=${MKL_HOME}/lib/intel64", "-DSCALAPACK_LIB_NAME=mkl_scalapack_lp64", "-DBLACS_LIB_DIR=${MKL_HOME}/lib/intel64", "-DBLACS_LIB_NAME=mkl_blacs_intelmpi_lp64" ] }
sed -i 's#\${NETCDF_HOME}#'${NETCDF_HOME}'#g' cmake_config_file.json sed -i 's#\${MKL_HOME}#'${MKL_HOME}'#g' cmake_config_file.json
-
Install VMEC:
python setup.py build_ext python setup.py install
- If you need
booz_xform
, it can be installed via
pip install booz_xform