How can the Cholesky decomposition step in eigs() be avoided without passing a matrix to eigs that is a Cholesky decomposition?
3 次查看(过去 30 天)
显示 更早的评论
Hello,
I have been looking at the following set of notes:
and specifically this quote in those notes:
"If SIGMA is a real or complex scalar including 0, EIGS finds the eigenvalues closest to SIGMA. For scalar SIGMA, and when SIGMA = ’SM’, B need only be symmetric (or Hermitian) positive semi-definite since it is not Cholesky factored as in the other cases."
I have a Hermitian positive-semidefinite matrix A, of which I want to find the 3 smallest eigenvalues. The Cholesky-decomposition is too memory intensive for the matrices I am working with. Please, is there a way to use eigs() without having to perform the Cholesky decomposition either in eigs() or outside of it?
Thank you very much.
0 个评论
回答(2 个)
Walter Roberson
2012-1-23
Try
eigs(YourArray, 3, 'SM')
However, note that this requires that you be seeking the 3 eigenvalues with smallest absolute magnitude. If you need to find the smallest magnitude (e.g., -11.49 being smaller than -1.149) then you will not be able to use this option.
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!