我正在尝试计算一个可能很大且稀疏的非对称NxN
矩阵的特征值和特征向量(N
> 10 ^ 6)的特征值和特征向量。我不需要所有这些,但也许是第一个。理想情况下,我想从 Java 中这样做,但如果需要,可以迁移到 C、C++ 或 Python。
我的矩阵可能同时具有复杂的特征值和特征向量。例如,查看此 Wolfram Alpha 样本的结果的结果。
我找到了几种方法来使用一些 Java 库并为它们编写了一些评估代码:
但我面临的问题是这些库不返回(或者至少我没有办法得到)复值特征向量。它们中的大多数确实返回复值特征值,但不返回复特征向量。它们通常以具有列作为每个特征向量的“实数向量”或“实数矩阵”的形式提供后者。
事实上,我确实需要复杂形式的特征值,如果有的话。
现在,我最近开始研究似乎支持我的用例的Spectra (C++)。但是我想先问一下,也许会抛弃我这边的一个误解,或者我可能从 Java 领域跳过的东西,因为我想尽可能地继续使用单一平台/语言。
有什么我应该调查的吗?另外,如果我最终放弃了 Java 来完成这项任务,我可以寻找其他 Spectra 的替代品吗?谢谢!