LAPACK中的DGESVD实现了哪种算法?

时间:2012-11-26 15:32:00

标签: lapack svd

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

1 个答案:

答案 0 :(得分:3)

根据LAPACK User's Guide,缩减到双对角形式是由常规DGEBRD完成的,它使用Householder反射。

2.4.6“奇异值分解”:

  
    

例程xGEBRD表示作为基本反射器产品的因子形式的U1和V1,如5.4节所述。

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

  
    

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