I am trying (and have been recommended) to use the Lanczos algorithm to find the $k$ smallest eigenvectors. However, all of the literature seems to talk about this algorithm as a way to estimate the $k$ largest eigenvectors.

Just to clarify, by largest or smallest eigenvector I mean the eigenvector with the largest / smallest eigenvalue respectively.

I am wondering if anyone has any advice on how we can use Lanczos for the $k$ smallest instead of largest eigenvectors?


You use inverse iteration, as described very well in Sanghavi's UTexas notes.

| cite | improve this answer | |
  • $\begingroup$ I am a computer science student and am struggling a little bit with this maths. How would i go about using inverse iteration with the lanczos algorithm? Thanks again $\endgroup$ – toblatp Aug 13 '18 at 16:48
  • 1
    $\begingroup$ @toblatp this is a math-oriented community. We can gladly help with specific answers to specific questions. Did you read the notes? Is there something specific there you don't understand? Also, if you're looking for implementations, maybe ask at stack.overflow or scientific computing se. Even there, I must advise you, you'd have to be concrete. $\endgroup$ – Amir Sagiv Aug 14 '18 at 7:09

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.