2
$\begingroup$

How to calculate easily the eigenmatrix of a 3D tensor.

I try immersing the tensor in a big matrix, in my case, the tensor is of nxnxn and I can build an n^2 x n^2 matrix that contains all the "coefficients" of my original tensor, but my calculations give me more eigenvalues that I have in my original problem (n^2).

There exist any numerical library for eigenvalues/eigenmatrices of a tensor?

$\endgroup$
1
  • 3
    $\begingroup$ Could you please edit your question to specify how you define these eigenvalues and eigenmatrices? There are multiple definitions of eigenvalues of a tensor. $\endgroup$ Dec 28, 2018 at 13:32

1 Answer 1

5
$\begingroup$

You ask for the eigenvalues of an $m=3$-order $n$-dimensional tensor $M$. There is no unique definition of the "eigenvalue" $\lambda$ for $m\geq 3$. One frequently used definition is $$\sum_{i_2,i_3,\ldots i_m=1}^n M_{i,i_2,i_3,\ldots i_m}x_{i_2}x_{i_3}\cdots x_{i_m}=\lambda x_i^{m-1}, \;\;\text{for all}\;\;i=1,2,\ldots n$$ The problem of computing the eigenvalues for $m\geq 3$ is NP-hard, see All Real Eigenvalues of Symmetric Tensors (2014). A treatment specifically for $m=3$ is in A Spectral Theory for Tensors (2010) and in the Wikipedia article on higher-order singular value decomposition. Algorithms are part of the MatLab toolbox.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.