Skip to content

mganahl/SparseTensor

Repository files navigation

SparseTensor

Pure python/python3 library for supporting block sparse tensors with arbitrarily many U(1) symmetries

The library supports a bunch of operations on tensors (see sparsenumpy.py):

tensor contraction (using tensordot)

merging and splitting indices

svd decomposition

truncation

qr decomposition

vectorization of SparseTensor for use in sparse solvers (might not be very fast)

testCaseTensor.py does some unittest checks

The file tensordotprof.py runs a small profiling on the tensordot function. It produces a file tensdotprof, which you can pass to snakeviz to visualize the result. It shows that for tensors with many small blocks, the overhead of python verus numpy.tensordot is large. When the blocksize gets larger than 50, the overhead becomes small and for 80 its negligible

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages