LAPACK中的DGGEV或DSYGV特征求解器实现了哪种算法?它是QZ' MATLAB使用的算法?
http://www.netlib.org/lapack/explore-html/d9/d52/dggev_8f_source.html
http://www.netlib.org/lapack/explore-html/d5/d2e/dsygv_8f.html
有谁知道在哪里可以找到 QZ算法(广义 Schur分解)的实现来计算特征值& C ++中的向量?
编辑:
我实现了一些LAPACK例程,并在此链接中提到了一些观察结果:
https://scicomp.stackexchange.com/questions/16220/eigenvectors-matlab-vs-lapack-dggev-or-dggevx
答案 0 :(得分:2)
MATLAB过去在其文档中有eig
函数使用的LAPACK rountine列表,但由于某种原因决定删除它。
我不能保证从那时起事情没有改变。
qz
function的doc页面有一个类似的LAPACK rountines表:
作为参考,您还可以了解其他科学框架如何实现此功能:
Octave :具有等效的qz
function。以下是源代码:http://hg.octave.org/octave/file/tip/libinterp/corefcn/qz.cc
SciPy :同时实现generalized Schur decomposition。 You can see它最终也会从LAPACK调用DGGES。
Julia :以下是Julia对Schur decomposition的实施的引用:https://github.com/JuliaLang/julia/blob/master/base/linalg/factorization.jl#L697,https://github.com/JuliaLang/julia/blob/master/base/linalg/lapack.jl#L3358
R :这是广义特征值问题的等价R包。您可以检查源代码:http://cran.r-project.org/web/packages/geigen/index.html