The xerus
library is a general
purpose library for numerical calculations with higher order tensors,
Tensor-Train Decompositions / Matrix Product States and general Tensor
Networks.
The focus of development was the simple usability and adaptibility to
any setting that requires higher order tensors or decompositions
thereof.
The key features include:
- Modern code and concepts incorporating many features of the
C++11
standard. - Full python bindings with very similar syntax for easy transitions from and to c++.
- Calculation with tensors of arbitrary orders using an intuitive Einstein-like notation
A(i,j) = B(i,k,l) * C(k,j,l);
. - Full implementation of the Tensor-Train decompositions (MPS) with all neccessary capabilities (including Algorithms like ALS, ADF and CG).
- Lazy evaluation of (multiple) tensor contractions featuring heuristics to automatically find efficient contraction orders.
- Direct integration of the
blas
andlapack
, as high performance linear algebra backends. - Fast sparse tensor calculation by usage of the
suiteSparse
sparse matrix capabilities. - Capabilites to handle arbitrary Tensor Networks.
No comments:
Post a Comment