Installation

From PyPI

pip install orbitsi

Wheels are published for Linux (x86-64). On other platforms pip builds the package from source, which needs a C++17 compiler.

From source

git clone https://github.com/sitauhidi/OrbitSI.git
cd OrbitSI
pip install .

Requirements: Python 3.8 or later, NumPy, NetworkX, pybind11, and a C++17 compiler (for example g++ or clang++). The package builds three extension modules: _orbitsi_core (filtering, ordering, counting and the graph reader), _evoke_cpp (EVOKE) and _orca_cpp (ORCA).

Check the installation with:

orbitsi --help

Tests

The tests are in tests/; run them from the repository root with:

pip install pytest orbit-count
pytest

Most tests generate their own graphs. The benchmark tests need the SubgraphMatching test data (the HPRD data graph, its query graphs and their expected counts) in tests/datasets, or in the directory named by ORBITSI_TEST_DATA; orbit-count is the reference for induced orbit counts. See tests/README.md.