图的特征值求解器

时间:2015-11-04 20:01:33

标签: eigenvalue

假设我有一个10百万个节点和100百万个边缘的图表。我想计算该图的邻接矩阵上的最大特征值。哪个特征值求解器应该对图表起作用。请注意,矩阵是稀疏的。

1 个答案:

答案 0 :(得分:0)

你可以使用Arpack [1],它只需要一个计算矩阵向量积的函数(因此它适用于稀疏矩阵)。

Arpack具有不同的操作模式,用于计算高频(小特征值)或低频(大特征值)。不幸的是,它对于高频一般工作得更快,但你可以做的是使用稀疏LU分解算法(例如SuperLU [2])对矩阵进行预分解,然后计算M ^ -1的高频率,求解线性系统而不是计算稀疏矩阵向量积,那么特征值就是Arpack计算的那个的倒数。

我尝试使用具有十分之一百万个节点的网格,并且它运行良好。详情见我的文章[3]和伴随源代码[4]

参考文献:

[1] http://www.caam.rice.edu/software/ARPACK/

[2] http://crd-legacy.lbl.gov/~xiaoye/SuperLU/

[3] http://alice.loria.fr/index.php/publications.html?redirect=0&Paper=ManifoldHarmonics@2007

[4] http://alice.loria.fr/WIKI/index.php/Graphite/ManifoldHarmonics