1

我正在研究一个涉及计算一个非常大的稀疏矩阵的特征向量的项目。 更具体地说,我有一个矩阵,它是一个大图的拉普拉斯算子,我有兴趣找到与第二小特征值相关的特征向量。 当然Matlab需要很长时间来计算特征向量,即使它计算了所有的特征向量。 有什么建议吗? 非常感谢您 安德烈稀疏矩阵的特征向量的快速计算

+1

使用'eigs'? ... – bla 2014-09-05 22:37:42

+0

eigs返回aigenvalues,而不是特征向量 – MagoNick 2014-09-05 22:38:28

+0

'[V,D] = eigs(A)'同时返回,只需阅读文档http://www.mathworks.com/help/matlab/ref/eigs.html – bla 2014-09-05 22:38:58

回答

3

您是否尝试过这种用法的eigs

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

例如:

A = delsq(numgrid('C',256)); 
[v,c]=eigs(A,2,'sm'); 

生成〜50K X 50K稀疏矩阵和发现它的2个smallerst特征值并在我的旧笔记本电脑中约1秒的特征向量...

+1

完美的作品!从文档我明白,这是不可能的 – MagoNick 2014-09-05 22:58:41

+0

是的,有时需要阅读文档,直到结束:) – bla 2014-09-05 23:00:23

+0

完成,非常感谢你 – MagoNick 2014-09-05 23:01:43