Version:

This page here has been created for the latest stable release of Salvus. You have chosen to view the documentation for another Salvus version. Please be aware there might be some small differences you have to account for.

Python Environment

Salvus, except the compute binary, comes us a single Python package.

Please note that Python is not necessary for SalvusCompute to run on HPC systems and other large clusters.

Python Version Support


Salvus is currently available for Python 3.11.

We will support every odd version of Python and in general stick to the recommendations of SPEC 0.

Setting up Python

Salvus currently requires an installation of Python 3.11. There are different ways to set this up and most should work fine. We recommend to install the latest Miniforge distribution.

Please note that the user is responsible for complying with the licenses provided by any Python package installed and used.

Installing the Dependencies

Assuming you are following our recommendation of using Miniforge, you can, after installing it, proceed with the instructions below.

The environment.yml describes a Python envionment containing all dependencies required to run Salvus. Additionally, it contains the Jupyter project, which we recommend as an interface to Salvus.

Run the following command to obtain the list of dependencies.

Copy
curl https://mondaic.com/environment-py311.yml -o environment.yml

If the above does not work, you can also right click to manually download the yaml file.

The next block will now install all Python packages listed in the environment.

# Create a new environment with all required dependencies.
mamba env create -n salvus -f environment.yml
# Activate that environment.
conda activate salvus

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

Please note that this only installed the dependencies of Salvus, Salvus itself will be installed by following the instructions here.

PAGE CONTENTS