Difference between eigs and svds
1 回表示 (過去 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!