c++ - 计算矩阵的最大特征值的最佳小型 C++ 包是什么?

标签 c++ matrix eigenvalue

我需要计算(稀疏)矩阵的最大特征值。我实现了幂次迭代的方法,但是收敛速度太慢了,所以我想用一个包来实现它。有人有推荐吗?

最好的 C++ 特征值计算包是什么?最好是小型且易于编译的。

最佳答案

我无法向您提供任何细节,因为我自己没有使用过它,但我认为 ARPACK 可能会有所帮助,尤其是 ARPACK++,它是 C++ 改编版,因为原始包位于 Fortran77 中。我认为 MATLAB 函数 eigs() 使用它来找到最大的特征值(和相应的特征向量)。据我所知,t 应该也可以与 STL 交互。

MATLAB 使用 Fortran77 例程 DSAUPD、DSEUPD、DNAUPD、DNEUPD、ZNAUPD 和 ZNEUPD。它们似乎是 ARPACK++ 中要寻找的。

Check it out here.

关于c++ - 计算矩阵的最大特征值的最佳小型 C++ 包是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3125543/

相关文章:

c++ - 我应该在构造函数初始化列表中使用列表初始化吗?

c++ - Unordered_map 有 indrection 需要指针操作数

c++ - 访问实例类的变量

java - Hadamard矩阵的递归求解

重新排列矩阵 : collapsing columns to remove NAs

matrix - 向量矩阵乘法与特征

python - 如何确定sympy.matrices.dense.MutableDenseMatrix的特征值?

algorithm - 将Fortran77代码转换为Matlab代码以查找特征值/向量

C++:程序 "Not Responding"执行时

python - numpy.linalg.cond返回最大和最小特征值之比吗?