Obtaining and installing PyRETIS

Note

You are reading the documentation for PyRETIS 4 (v4.0.0.dev), a development version that is not yet released on PyPI. To use the version these docs describe, install PyRETIS from source with git: clone the repository and check out the develop branch. The step-by-step instructions – including the development requirements – are given in Installing a development version later on this page. If you want the latest stable release (PyRETIS 3) instead, install it directly with pip install pyretis.

PyRETIS and its requirements can be installed using pip or using conda as described below. We also describe how it can be installed directly from the source code using git.


Requirements for PyRETIS

In order to run PyRETIS, several Python libraries are needed, for instance SciPy, NumPy, and matplotlib (see also the information on installing the SciPy Stack). A list of the requirements can be found in the file requirements.txt in the source code directory. These packages can be installed by:

python -m pip install -r requirements.txt

after downloading the requirements.txt file. This should be automatically done if you are installing PyRETIS using pip/conda. Notes: (1) the analysis and visualization package PyVisA requires PyQt5 and graphviz, which must be installed separately as described below.


Prerequisites

PyRETIS requires Python 3.11 or higher. Please make sure that you have an updated version of Python installed on your system. PyRETIS depends on several other Python packages, however, these should be installed automatically as part of the installation of PyRETIS. The requirements list is shown above.


Installing via pip

The latest version of PyRETIS can be installed using pip with the following command:

python -m pip install git+https://gitlab.com/pyretis/pyretis.git

A direct installation of PyRETIS 4 (stable release):

python -m pip install pyretis

PyRETIS offers an analysis and visualization tool, named PyVisA. Its GUI requires PyQt5, mdtraj, scikit-learn, and graphviz. To install them via pip:

python -m pip install pyqt5 mdtraj scikit-learn graphviz

Note: Please make sure that you are using a Python environment of version 3.11 or newer. On some systems, Python 2 may still be the default version and pip might actually try to install for Python 2. In this case, use pip3 in the command above.


Installing via conda

PyRETIS can be installed using conda with the following commands:

conda create --name pyretis python=3.12
conda activate pyretis
conda install pyretis -c conda-forge

PyRETIS offers an analysis and visualization tool, named PyVisA. Its GUI requires PyQt5, mdtraj, scikit-learn, and graphviz to be executed. To install them via conda:

conda install pyqt mdtraj scikit-learn python-graphviz -c conda-forge

Note: Since PyRETIS will only work with Python 3.11 or newer, please make sure that you are using an environment with a recent version of Python.


Optional: Installing from the PyRETIS git repository

Previous versions and the latest (possibly unstable) sources can be obtained using git:

git clone git@gitlab.com:pyretis/pyretis.git

or,

git clone https://gitlab.com/pyretis/pyretis.git

After cloning the repository, PyRETIS can be installed via pip (after navigating to the main source directory):

pip install .

Note: If you want to be able to make modifications locally and to apply them, you can install the package with the -e option. PyRETIS will be executed with the files present in the folder you created.

To be able to run PyVisA’s GUI, you need to install pyqt5, mdtraj, scikit-learn, and graphviz:

python -m pip install pyqt5 mdtraj scikit-learn graphviz

Optional: Installing a development version from the PyRETIS git repository

After cloning the repository as described above, check out the development branch you are interested in, e.g.:

git checkout develop

Then install the development requirements (these are defined in the file requirements-dev.txt, note that they include pyqt5, which is not supported in some environments):

pip install -r requirements-dev.txt

Finally, install PyRETIS using:

pip install -e .

Testing your installation

After installing from the PyRETIS source, your installation can be tested by running the unit-test suite from the main directory:

python -m pytest test

To also run style and lint checks alongside the unit tests, use the provided helper script:

./test-easy.sh

To exercise the bundled engine examples (internal, GROMACS, PyVisA, CP2K, OpenMM, LAMMPS) end-to-end, run:

./test-heavy.sh

The example suite has a longer runtime than the unit tests because it covers two complementary parts, both chained together by test-heavy.sh:

  • Consistency tests (examples/run-tests.sh) – the engine reference-data suites (internal, GROMACS, PyVisA, CP2K, OpenMM and LAMMPS). Each regenerates output and compares it against pre-computed reference data, so the checks are deterministic and re-runnable. The GROMACS sub-suite runs a reduced smoke scope by default; set PYRETIS_GROMACS_SCOPE=full to run the complete GROMACS matrix.

  • Tutorials (examples/run-tutorials.sh) – every documented tutorial, run to confirm that its commands still work. Their length is controlled by PYRETIS_TUTORIAL_TIMEOUT: test-heavy.sh sets it to 2s so each tutorial only has to start cleanly (a short smoke check), whereas running the driver with the variable unset – its default – lets every tutorial run to completion at full length.