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$ Commented 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$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .