0
$\begingroup$

I know that theoretically eigenvectors of real symmetric matrix are orthogonal to each other. So for each pair, dot product will be zero. But when I am calculating eigenvectors from real symmetric matrix using MATLAB as well as LAPACK, I am not getting dot product to zero. Can any one help me to clear about this issue? INPUT MATRIX:

 0     1     1     1     0     0     0     0
 1     0     1     0     0     0     0     0
 1     1     0     0     0     0     0     0
 1     0     0     0     1     1     0     0
 0     0     0     1     0     0     0     0
 0     0     0     1     0     0     1     1
 0     0     0     0     0     1     0     1
 0     0     0     0     0     1     1     0

LAPACK Output: Eigenvalues: -2.00000 -1.00000 -1.00000 -1.00000 -0.41421 1.00000 2.00000 2.41421

Eigen vector matrix:(Each column is an eigen vector of Input matrix)

0.46291 0.40993 0.40433 -0.04251 -0.30389 -0.00000 -0.40825 -0.43973

-0.15430 -0.15295 -0.18080 0.72612 0.21488 0.28868 -0.40825 -0.31094

-0.15430 -0.25698 -0.22353 -0.68361 0.21488 0.28868 -0.40825 -0.31094

-0.61721 0.00000 -0.00000 0.00000 -0.30389 -0.57735 0.00000 -0.43973

0.30861 0.00000 0.00000 -0.00000 0.73366 -0.57735 0.00000 -0.18214

0.46291 -0.40993 -0.40433 0.04251 -0.30389 -0.00000 0.40825 -0.43973

-0.15430 0.70017 -0.30213 -0.04251 0.21488 0.28868 0.40825 -0.31094

-0.15430 -0.29025 0.70646 0.00000 0.21488 0.28868 0.40825 -0.31094

MATLAB output:

Eigenvalues: -2.0000 -1.0000 -1.0000 -1.0000 -0.4142 1.0000 2.0000 2.4142

Eigen vector matrix:(Each column is an eigen vector of Input matrix)

-0.4629 0.3255 -0.2001 -0.4328 0.3039 0.0000 0.4082 0.4397

0.1543 0.0179 -0.4585 0.6106 -0.2149 -0.2887 0.4082 0.3109

0.1543 -0.3434 0.6586 -0.1777 -0.2149 -0.2887 0.4082 0.3109

0.6172 -0.0000 -0.0000 -0.0000 0.3039 0.5774 0.0000 0.4397

-0.3086 0.0000 -0.0000 0.0000 -0.7337 0.5774 -0.0000 0.1821

-0.4629 -0.3255 0.2001 0.4328 0.3039 0.0000 -0.4082 0.4397

0.1543 -0.3926 -0.4577 -0.4687 -0.2149 -0.2887 -0.4082 0.3109

0.1543 0.7181 0.2576 0.0359 -0.2149 -0.2887 -0.4082 0.3109

[evacB, evalB]=eig(B)

Thank you.

$\endgroup$
2
  • $\begingroup$ Can you post the output that you are getting? That will help us to identify what the issue is. Also include the code that you used as that will be helpful also. $\endgroup$
    – Daryl
    Feb 5, 2016 at 8:00
  • $\begingroup$ Come on... It is impossible to know what is wrong if you don't show anything. $\endgroup$
    – Eff
    Feb 6, 2016 at 14:58

1 Answer 1

0
$\begingroup$

If the deviation is significant, then it likely you have made a simple programming error. Check to see that you can recover the original matrix using the computed eigenvalue decomposition. I would expect to see small errors in individual component, but nothing major.

If your inner products are tiny, but not zero, then is is most likely the inevitable consequence of the limitations of finite precision arithmetic.

Even if your eigenvectors were floating point vectors and available, it is extremely unlikely that the inner products would be exactly zero.

$\endgroup$

You must log in to answer this question.

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