Python Packages

The SalvusMesh, SalvusFlow, and SalvusOpt packages are part of a single Salvus Python module.

Please note that Python is not necessary for SalvusCompute and we don't recommend installing the Python packages on an HPC system or other big cluster by default.

Setting up Python

Salvus currently requires an installation of Python 3.7. There are different possibilities to achieve this and most should work fine. We recommend to install the latest Miniconda distribution.

Please note that the use of conda is optional, and that the user is responsible for complying with the licenses provided by any Python package used.

If you follow our recommended installation procedure you will first install conda and then create a new conda environment in which to finally install Salvus and all dependencies. In case this is new to you there are a lot of guides and instructions around, e.g. this one.

Installing the Dependencies

Assuming you are following our recommendations of using conda, please use this environment.yml file. It describes a conda envionment containing everything required to run Salvus. Additionally it contains the Jupyter project which we recommend as an interface to Salvus.

After installing conda just run:

# Download the file. If that does not work just right click -> Save Link As ...
# on the link in the previous paragraph.
curl -o environment.yml
# Create a new environment with all required dependencies.
conda env create -n salvus -f environment.yml
# Activate that environment.
conda activate salvus
# Activating this plug-in results in nicer error traces in the notebooks.
jupyter nbextension enable skip-traceback/main

By now there should be some indication in your shell that you have an active Salvus conda environment. Remember to always activate it, otherwise Salvus will not be available.