此代码提供了基于 Lapack 子例程的可靠双对角分解例程。 Lapack 是数值分析中最可靠的 Fortran 程序之一。 在 Lapack 中,双对角化用于通过例程 zgebrd 和 zungbr 计算矩阵的 SVD。 请参阅http://www.netlib.org/lapack/lug/node53.html但是,Matlab 不支持将双向例程作为独立样式。 因此,此提交帮助人们使用矩阵的双对角化,A = Q * B * P',其中 A 是非平方的复数或实数,B 是双对角的实数,Q 和 P 是酉或正交的。 最初的 Lapack 接口例程来自 Tim Toolan 在“文件交换”中的工作。 此代码可用于理解 Lapack 接口。 此代码也与 Octave 平台兼容。 请注意,双对角化是矩阵约简保留奇异值的好工具。 相反,如果您减少保留特征值的矩阵,您可能需要使用相似变换,例如 Hes
2021-10-14 21:48:31
21KB
matlab
1