如何找到一个更好的算法来计算一个非常大的矩阵的特征值和特征向量

时间:2015-03-19 08:38:27

标签: c eigenvector eigenvalue

我使用Jacobi方法在c代码中查找所有特征值和特征向量。虽然Jacobi方法的复杂性是O(n ^ 3),但我矩阵的维数很大(17814 X 17814)。这需要很多时间。我想知道一个更好的算法,通过它我可以解决这个问题。如果你愿意,我可以附上我的c代码。

1 个答案:

答案 0 :(得分:2)

评论中建议的算法不一定是最好的算法 正如您所看到的here,使用特殊技术时,Jacobi方法可以大大加快 最重要的是,Jacobi很容易并行运行,稀疏矩阵比密集矩阵快得多,所以你也可以利用它,这取决于你的架构和矩阵的类型。

我说最好的方法是测试一些不同的方法,并在实践中看到哪些方法可以获得最佳效果。
O(n^2.376)不一定比O(n^3)更好,具体取决于常数。