######################### Installation and building ######################### System requirements =================== SuperSpinsim is build on top of `numba.cuda `__, which is a python package used to compile python code into LLVM code for Nvidia cuda GPUs. Follow the link to see the system requirements for numba.cuda. In particular, one must have an Nvidia GPU installed in the device being used, as well as the `Nvidia cuda toolkit `__ and official Nvidia graphics drivers. Right now the package requirements for SuperSpinsim mean that SuperSpinsim can be used only with python versions 3.11 to 3.13. Python version 3.14 is not supported yet, due to the requirements of the numba package. We have tested SuperSpinsim on various versions of GNU/Linux (Arch, Manjaro and Ubuntu), as well as on Windows 11. It will not work on Mac OS, as modern Mac computers are not compatible with Nvidia GPUs. Installation ============ First, make sure you have satisfied the the system requirements (above). Then, to install from PyPI from within a python environment, .. code:: bash uv add superspinsim # If using uv as a python package manager pip install superspinsim # If using pip as a python package manager Building and installing from source =================================== These are instructions for building the package from source. Module ~~~~~~ The package is built using the `uv `__ tool for python package management. See the link for installation instructions. To build the package with uv, first clone it, .. code:: bash git clone https://github.com/monashNV/superspinsim.git Then, from the package directory, .. code:: bash uv build This will build python wheels under the `builds` directory. These wheels can be installed using using `pip install` or `uv add`. Alternatively, to install SuperSpinsim from source to a project that uses uv as a package manager, use .. code:: bash uv add to use the package without building it. Documentation ~~~~~~~~~~~~~ This documentation is built using the sphinx tool. The easiest way to build the documentation requires the tools `make `__ and `uv `__. From the SuperSpinsim source directory, .. code:: bash cd docs uv run make html