matlab:eigs似乎给出了不一致的结果

时间:2011-06-03 23:53:14

标签: matlab eigenvector

我正在尝试获得矩阵的两个最小特征向量:

[v,c]=eigs(lap,2,'sm');

结果v“正确”〜66%的时间。当我说的正确时,我的意思是“看起来正确”,当然是我想解决的问题。 另一部分时间我得到不同的向量。

我知道eigs使用数值求解器,并且它的初始猜测是随机的,因此可以解释这一点。困扰我的是根据matlab的文档我发现用作停止标准的容差最初设置为eps,我尝试增加opts.maxit=10000000;,但它似乎不会影响结果,也不会影响结果运行时间,所以我假设在达到最大迭代次数之前满足容差。

我可以做些什么来获得一致的结果?在计算时间方面没有问题。

请注意,矩阵非常大且稀疏,因此我无法使用eig,只能使用eigs

0 个答案:

没有答案