Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Eigenvalues & eigenvectors of N x N matrix?

  1. Jul 20, 2008 #1
    How to get eigenvalues & eigenvectors of N x N matrix?
    Please can anyone help me out i have searched a lot but not able to find the solution.

  2. jcsd
  3. Jul 20, 2008 #2


    User Avatar
    Staff Emeritus
    Science Advisor
    Gold Member

    Your textbook should present a complete algorithm for computing them; have you looked there? If you've already looked at it, then in what way are you having trouble using it?
  4. Jul 20, 2008 #3


    User Avatar
    Science Advisor

    My goodness! This is one of the major problems of Linear Algebra and, indeed, of mathematics in general! Surely, as Hurkyl suggests, any textbook on Linear Algebra will devote one or more chapters to this!

    This is much too general a question for a forum like this. Can you post specific problems?
  5. Jul 20, 2008 #4


    User Avatar
    Science Advisor
    Homework Helper

    c is an eigenvalue of A iff A-c fails to be invertible iff det(A-c) = 0. so compute det(A-c) considering c as a variable and set this polynomial equal to zero. if c is a root of it, then compute a basis for the kernel of A-c by gaussian elimination.

    doing this for all roots c of det(A-c) gives a maximal independent set of eigenvectors, hence basis of them if one exists.
  6. Jul 23, 2008 #5
    well actually i want find eigenvalues of huge matrix i.e 12 x 70000 so hope you have understood my problem.
    thanks to all for replying.

  7. Jul 23, 2008 #6
    And not only eigenvalues but also the eigenvectors.Because i am implementing a face recognition algorithm if someone give me any idea with respect to programming that will be appreciated.Thanks
  8. Jul 23, 2008 #7


    User Avatar
    Science Advisor
    Homework Helper

    apparently you knlow more than i do, but here is what my old linear aklgebra book says:

    assuming your matrix A is diagonalizable, and the largest eigenvalue is unique and much larger than the other eigenvalues, then for any vector u which has a non zero coefficient with respect to the corresponding "largest" eigenvector, Au has a large component of that eigenvector.

    then (Au.u)/(u.u) is an approximation to the dominant eigenvalue.

    iterating A makes the dominance more pronounced, so (Au.u)/u.u) will hopefully converge to the dominant eigenvalue if we repeat the calculation with Au in place of u, and continue many times.

    these are called rayleigh quotients.
  9. Jul 23, 2008 #8
  10. Jul 23, 2008 #9
    Have you thought about using a standard eigensolver package, like LAPACK?
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook