如何计算Fortran中的第一个特征值和特征向量

问题描述:

我尝试使用一些示例(here)使用ARPACK,但我甚至无法弄清楚如何输入我的矩阵。从这个question看来,Python和Matlab中的实现似乎是避免ARPACK复杂性的唯一解决方案。是否有一些(基于Fortran的)方法来做到这一点,也避免计算所有的特征值/特征向量?如何计算Fortran中的第一个特征值和特征向量

+0

*看起来*为什么看起来像?你真正的问题是什么?你是否能够使用ARPACK?什么是问题?如何正确输入矩阵?当它不起作用时你是如何做到的?问题是如何展示的?错误讯息?错误的结果?你的代码是怎么样的? –

+0

问题在于标题。我发现ARPACK对于我的问题来说太复杂了,我想知道在Fortran中是否有更简单的方法。 – Garini

+0

您是否知道图书馆推荐问题无题?相反,你应该描述这个问题,并且*“到目前为止已经做了什么来解决它”*。 –

我写了一个包装,它只需要设置矩阵A和特征值的数量(例如,如果只需要第一个特征值,则nev = 1)。该代码是从具体的应用程序,可以找到here改编。 我的模块状的版本只需要设置矩阵A,则多项功能,则数量特征值其中哪些应采取(“LM” - 震级最大的”

该代码可以作为一个要点here

NB:。ARPACK是从LAPACK不同,因为它虽然这对于大稀疏矩阵优化通常为密集矩阵优化

ARPACK包被设计用以计算几个特征值和对应的大型稀疏的或结构化矩阵 特征向量,使用 隐式重启动Arnoldi方法(IRAM),或者在 对称矩阵,兰克泽斯 的相应变体的情况下算法。它被许多流行的数值计算环境 如SciPy,Mathematica,GNU Octave和MATLAB所使用,以提供这种功能。 (来源:*)