C++ DGGEV或DSYGV特征解算器在LAPACK中实现哪种算法?是';QZ';MATLAB使用的算法是什么?

C++ DGGEV或DSYGV特征解算器在LAPACK中实现哪种算法?是';QZ';MATLAB使用的算法是什么?,c++,matlab,linear-algebra,lapack,eigenvalue,C++,Matlab,Linear Algebra,Lapack,Eigenvalue,DGGEV或DSYGV特征解算器在LAPACK中实现哪种算法?是MATLAB使用的“QZ”算法吗 (广义Schur分解)来计算特征值和向量? 编辑: 我实现了一些LAPACK例程,并在该链接中提到了一些观察结果: MATLAB过去在其文档中有一个由eig函数使用的LAPACK rountine列表,但出于某种原因决定将其删除 以下是表格的屏幕截图: 我不能保证从那以后一切都没有改变 编辑: 的doc页面有一个类似的LAPACK rountines表: 作为参考,您还可以了解其他科学

DGGEV或DSYGV特征解算器在LAPACK中实现哪种算法?是MATLAB使用的“QZ”算法吗

<有人知道在C++中?

中,在哪里可以找到<强> qz算法< /强>(广义Schur分解)来计算特征值和向量?
编辑:

我实现了一些LAPACK例程,并在该链接中提到了一些观察结果:


MATLAB过去在其文档中有一个由
eig
函数使用的LAPACK rountine列表,但出于某种原因决定将其删除

以下是表格的屏幕截图:

我不能保证从那以后一切都没有改变


编辑: 的doc页面有一个类似的LAPACK rountines表:


作为参考,您还可以了解其他科学框架如何实现此功能:

  • 八度音阶:具有等效音阶。以下是源代码:

  • SciPy:还实现了。它最后也从拉帕克打电话来

  • Julia:以下是Julia实施的参考:‌​,

  • R:这里是广义特征值问题的等效R包。您可以检查源代码:


我想知道我是否可以联系Mathworks,询问他们正在调用哪些LAPACK子程序来在最新版本的MATLAB中进行特征分析。他们会回答吗?也许在较新版本的MATLAB中,他们使用了一些方法,如本文所述,调用LAPACK的3个子例程,使用
qz
进行特征分析。我不确定。我想直接调用我的C++代码中的LAPACK子程序,但我不确定要调用哪些子程序。也许唯一的方法就是通过试错来看看哪些子程序可以生成病态输入矩阵的精确MATLAB结果(我处理病态矩阵,这是主要的挑战)。我很高兴听到对此的任何评论。谢谢。@user3853917:哦,不知什么原因,我还以为你在问关于EIG功能的问题。。查看我的编辑,我添加了一个类似的截图,截图取自
qz
函数的R2009存档文档。@user3853917:这里有一个相关的问题:关于历史,直到v5 MATLAB使用EISPACK中的例程来计算,但后来被从v6开始的LAPACK例程取代(大约2000年):