The `xerus` library is a general purpose library for numerical calculations with higher order tensors, Tensor-Train Decompositions / Matrix Product States and other Tensor Networks.
The focus of development was the simple usability and adaptibility to any setting that requires higher order tensors or decompositions thereof.
...
...
@@ -8,7 +9,8 @@ For tutorials and a documentation see <a href="http://libxerus.org">the document
The source code is licenced under the AGPL v3.0. For more details see the LICENSE file.
# Features #
Features
========
+ Intuitive notation for expressions involving tensors of arbitrary degree: `A(i,j) = B(i,k,l) * C(k,j,l)`;
+ Lazy evaluation of tensor expressions with automatically optimized contraction orders.
...
...
@@ -16,11 +18,14 @@ The source code is licenced under the AGPL v3.0. For more details see the LICENS
+ Implementations of common algorithms like the ALS, (multi-site-)DMRG, ASD, AFD, CG, and some less common ones e.g. to find the maximal entries in a Tensor Train.
# Building the Xerus library #
Building the Xerus library
==========================
Building from source
--------------------
Copy the default configuration and modify it for your needs
> cp config.mk.default config.mk
> nano config.mk
Test whether everything works correctly with
...
...
@@ -37,8 +42,18 @@ To install the python bindings run
For more details see <ahref="https://www.libxerus.org/building_xerus/">the "Building Xerus" page in the documentation</a>.
Building a conda package
------------------------
Modify `conda/meta.yaml`, `build.sh` and `run_test.sh` as needed and build the conda package.
For example, to create a conda package of the `SALSA` branch of `xerus` run the following commands.