How can I get the (approximate) eigenvectors of a huge matrix?

9 views (last 30 days)
I have a huge symmetric matrix M and I want to get the eigenvectors to the k smallest eigenvalues of M (which have to be greater than 0). I know that the smallest eigenvalue is 0.
Currently I am using
eigs(M,k,eps)
but this results in memory consumption of over 100GB of RAM.
  3 Comments
Matt J
Matt J on 2 Dec 2014
Edited: Matt J on 2 Dec 2014
I don't really understand why it's taking so much memory. What happens when you do
eigs(M,k,'sm')

Sign in to comment.

Answers (2)

Thorsten
Thorsten on 2 Dec 2014
If M contains many 0's you can define M as a sparse matrix to speed up computation.
  1 Comment
Steffen
Steffen on 8 Dec 2014
M is already defined as sparse. I construct the matrix by using spconvert().

Sign in to comment.


Andrew Knyazev
Andrew Knyazev on 15 May 2015

Categories

Find more on Linear Algebra in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by