The representation of a tensor could be a multi dimensional array, but there are other representations. This thread is a bit outdated now, I’ve since created my own tensor algebra package Grassmann.jl where the representation is based on multivectors and DirectSum.jl. If you are only familiar with arrays and not multivectors having graded multi-linear space, it might seem strange. Yet, they actually offer a more insightful representation than multi-dimensional arrays, which are actually quite cumbersome and can have a lot of unnecessary redundancy compared to graded multivectors.
Looks like a really nice library, thanks for mentioning!
update:
-
ITensors
(Julia port of the C++ libraryITensor
) is available now. It uses a new typeITensor
, and provides a high-level interface for tensor operations without having to specify index orders or reshape tensors.
Lots of great discussion… so, if I were interested in exploring General Relativity within Julia, which package would I be looking for??
I found Tensorial.jl which has almost the same functionality and performance as the Tensors.jl but supports arbitrary size of tensors.
I think this is where I should have asked my question. Is there any package that can solve multilinear equations where tensors are represented in a compressed format? I am thinking of ALS or some other optimisation type method or SVD type, whatever works.
Have you tried Zarr.jl? You could also try using the zfp_jll
wrapper if you want to roll your own.
is this answer valid to this day?
thank you
Over the past three years, the Finch.jl project has come a long way, so that’s a new tensor package in the mix.