Closed mmottl closed 5 years ago
In case of repeated eigenvalues, the bases of the eigenspaces are not uniquely defined. I.e., there are infinitely many possible solutions. When computing the Taylor series approximation of the real-symmetric eigenvalue decomposition, higher order information imposes additional constraints on the choice of the lower-order eigenbases.
The algorithm automatically corrects the lower-order eigenbases.
Therefore, it may happen that for different higher-order coefficients A[1:,0, :, :]
vs A[1:,1, :, :]
different lower-order eigenbases Z[0:,0,:,:]
and Z[0:,1,:,:]
result, even if A[0,0,:,;] == A[0,1,:,:]
.
It seems that
eigh
is inherently incompatible with multidirectional UTP in the presence of repeated eigenvalues. The Python implementation seems correct wrt. the mathematical theorems, but can only work if the UTP is unidirectional. Here is a case reproducing the problem:Could you please confirm whether this issue cannot be solved for multidirectional UTP, i.e. symmetric eigendecompositions containing repeated eigenvalues can only ever work in the unidirectional case?