Repository for the paper: "Cons-training tensor networks".
ConstrainTNet.jl requires a forked version of ITensors.jl containing relevant functionality related to constraint handling.
Currently the maximum number of constraints that can be handled is fixed to 20. This can be increased by modifying the following line in qn/qn.jl within ITensors.jl.
const maxQNs = 20 # increase for > 20 constraints
To install ConstrainTNet.jl along with the forked version of ITensors.jl as a submodule, please follow these steps:
Clone the repository with its submodules:
git clone --recurse-submodules https://github.com/JaviLoPiq/ConstrainTNet.jl.git
Open the Julia REPL within the repo and set up the environment:
using Pkg
Pkg.activate(".")
Pkg.instantiate()
Load ConstrainTNet.jl
using ConstrainTNet