Getting Started
TNC is not yet on crates.io. Instead, it can be added to your project by running
cargo add --git https://github.com/qc-tum/TNC tnc
or by directly modifying your Cargo.toml file to include
[dependencies]
tnc = { git = "https://github.com/qc-tum/TNC.git" }
Features
There are no default features activated. The list of optional features to include is:
cotengra: Enables Rust bindings to the tree annealing, tree reconfiguration and tree tempering methods of cotengra (for improving contraction paths)
System Requirements
As noted in the README, the library relies on system dependencies. To install them, run
sudo apt install libhdf5-dev openmpi-bin libopenmpi-dev libboost-program-options-dev
Furthermore, the library relies on C++ libraries that are being built when building the library.
For this, cmake and a C++ compiler are required on the system.
Optionally, to use the cotengra feature, Python must be installed and the following Python packages must be installed:
pip install cotengra kahypar optuna