【问题标题】:Which algorithm does DGESVD in LAPACK implement?LAPACK 中的 DGESVD 实现了哪种算法?
【发布时间】:2012-11-26 23:41:01
【问题描述】:

我很好奇 MATLAB 中用于计算 SVD 的 DGESVD 函数。据我从 Gene H. Golub 和 Charles F. Van Loan 的“矩阵计算”中可以看出,使用了两种可能的双对角化方案——Householder Bidiagonalization 和 R-Bidiagonalization。但是,我无法从正在使用的 LAPACK 文档中确定。有人有什么想法吗?

【问题讨论】:

    标签: lapack svd


    【解决方案1】:

    根据LAPACK User's Guide,减少为双对角形式是由使用 Householder 反射的例程 DGEBRD 完成的。

    2.4.6“奇异值分解”:

    例程 xGEBRD 以因子形式将 U1 和 V1 表示为基本反射器的乘积,如第 5.4 节所述。

    5.4 “正交或酉矩阵的表示”:

    实正交或复酉矩阵(通常表示为 Q)在 LAPACK 中通常表示为基本反射器的乘积——也称为基本 Householder 矩阵

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-02
      • 1970-01-01
      相关资源
      最近更新 更多