Difference between eigs and svds
2 次查看(过去 30 天)
显示 更早的评论
Hi,
Im trying to find the 6 smallest eigenvalues and thier coresponding eigevectors of a matrix L.
i tried the 2 following commands:
[V1,S1]=eigs(L,6,'smallestabs')
[U2,S2,V2]=svds(L,6,'smallest')
but i found that V1 in not equal to V2 (and also not equal to U2).
can someone explain what is the difference between the two commands?
0 个评论
采纳的回答
Manas Minnoor
2021-6-6
Hi Orr,
eigs returns the eigenvalues while svds returns the singular values of the matrix.
If the matrix is not a real symmetric N*N matrix with positive eigenvalues, the singular values and eigenvalues may not coincide. This may be your issue.
You may refer to the following link for more clarity:
Hope this helps.
0 个评论
更多回答(1 个)
Paul
2021-6-6
编辑:Paul
2021-6-6
eigs returns eigenvalues and eigenvectors. svds resturns singular valuese and singular vectors. Why would there be an expectation that these two functions return the same quantities (except perhaps for special cases)?
Can you edit your question to add an example?
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!