i am developing an application where i need to calculate the eigenvalues and it's corresponding eigenvectors,i understand how to calculate it from this links: http://people.revoledu.com/kardi/tutorial/LinearAlgebra/EigenValueEigenVector.html http://people.revoledu.com/kardi/tutorial/LinearAlgebra/MatrixDiagonalization.html

so if the matrix is A= \begin{bmatrix} 5 & 4\\ 1 & 2 \end{bmatrix}

,so the eigenvectors V= \begin{bmatrix} 4 & 1\\ 1 & -1 \end{bmatrix}

and this exactly the values which i'am looking for ,but i have aproblem as i got diffrent result,and when i checked an eigenvalue and eigenvector online calculator in this link: http://www.arndt-bruenner.de/mathe/scripts/engl_eigenwert2.htm

i found that there are two options to get the result whether to get the eigenvector as :absolute value 1 or :integer if possible

that for the same problem if i choose "absolute vale 1" the result will be :


for Eigenvalue 1: [ -0.7071067811865475 ; 0.7071067811865475 ]

for Eigenvalue 6: [ 0.9701425001453319 ; 0.24253562503633297 ]

but if i choose "integer if possible":i got the result i want which is : Eigenvectors:

for Eigenvalue 1: [ -1 ; 1 ]

for Eigenvalue 6: [ 4 ; 1 ]

,now my main problem is that what i receive from my application is the first result which is equivalent to "absolute vale 1",and i need to know how to mathematically transform that result to second choice which is the equivalent to "integer if possible",and to know actually what is the difference.

  • $\begingroup$ Please use LaTeX to write mathematics here since, as you can see, it is very hard to understand and follow what you're trying to say. in the FAQ sections there are directions. $\endgroup$ – DonAntonio Mar 7 '13 at 20:18
  • $\begingroup$ For each eigenvalue, there are infinitely many eigenvectors. If the multiplicity is one, you can impose a norm condition, say that you restrict to unit vectors. In the real case, this still leaves you with two eigenvectors. And if the multiplicity is greater than one... $\endgroup$ – Julien Mar 7 '13 at 21:32

They are just normalizing the eigenvectors.

To do this, divide each eigenvector by the square root of the sum of the squares.

$\displaystyle \frac{[-1,1]}{\sqrt{(-1)^2 + (1)^2}}$.


$\displaystyle \frac{[4,1]}{\sqrt{(4)^2 + (1)^2}}$.

and you will get those results.

Computer Algebra Systems use exact results as opposed to numerically based algorithms. I think you should find the integer result and then normalize if possible. If you are using floating point calculations, how would you convert the normalized number back to exact integers given loss of precision?

It is also not clear to me how you could know that apriori from the normalized eigenvector. In other words, try to calculate integer results first, then numerical and then normalized if the operator asks.

Make sense?

  • $\begingroup$ yah i understand now,actually i'am using a library which is calculating the eigenvectors values ,and now i'am stuck i got the normalized value and what i need is the original integer values. $\endgroup$ – HATEM EL-AZAB Mar 7 '13 at 23:20
  • $\begingroup$ Can you change libraries? $\endgroup$ – Amzoti Mar 7 '13 at 23:22
  • $\begingroup$ Nice work, as usual! ++++ $\endgroup$ – amWhy Apr 24 '13 at 0:14
  • $\begingroup$ @amWhy: Thank you for all the kind words and support! Regards $\endgroup$ – Amzoti Apr 24 '13 at 0:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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