用eigs奇异矩阵

60视图(30天)
我想计算0特征值所对应特征向量的一个大型的、稀疏的奇异矩阵。然而,如果我试着eigs (A, 1, ' smallestabs '), MATLAB问题由于它是单一的。对于较小的矩阵,eig没问题,但我需要一些与大owrk矩阵。有什么方法我可以eigs工作呢?

接受的答案

克里斯汀Tobler
克里斯汀Tobler 2020年2月5日
“smallestabs” 选项 eigs 取决于解决几个线性系统矩阵A的传入。如果是单数,那是不可能的。
最好的选择可能是,而不是通过一个很小的σ: eigs(1σ) 。例如,您可以设置 σ= 1依照 ,这取决于 一个 。现在 eigs 计算特征值最接近吗 σ 通过求解几个线性系统矩阵 A -σ* speye(大小(A)) 。您可能需要调整 σ :
  • 增加σ如果一个错误或警告显示的矩阵接近奇异。
  • 减少σ如果返回的特征值太远离零(有些小舍入误差是可以预料到的)。
减少的风险又称eigs用不同的σ,你可以计算一些特征值和选择一个接近零。
在一个不同的,而不是改变你的方式调用 eigs ,因为你正在寻找特征值0也可以调用 圣言会 “最小” 选项,因为奇异向量和奇异值零也是一个特征向量与特征值为零。

更多的答案(0)

类别

找到更多的在线性代数帮助中心文件交换

s manbetx 845


释放

R2017b

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!