Matrix LAPACK/BLAS或其他地方是否有Fortran子程序来计算LDL分解?

Matrix LAPACK/BLAS或其他地方是否有Fortran子程序来计算LDL分解?,matrix,linear-algebra,lapack,decomposition,Matrix,Linear Algebra,Lapack,Decomposition,正如标题所说,我需要对正定矩阵A进行cholesky LDL分解(与正常的cholesky一样,但L有一个对角线,D是对角线矩阵)。我在Lapack中只找到了一个函数,它可以做到这一点,但它说矩阵A必须是三对角的。在一些免费的子例程库(如lapack)中是否有这样的函数?请查看lapack中的SSPTRF函数: 目的 ======= SSPTRF计算存储的实对称矩阵a的因式分解 采用Bunch-Kaufman对角线旋转法的压缩格式: A=U*D*U**T或A=L*D*L**T 其中U(或L

正如标题所说,我需要对正定矩阵A进行cholesky LDL分解(与正常的cholesky一样,但L有一个对角线,D是对角线矩阵)。我在Lapack中只找到了一个函数,它可以做到这一点,但它说矩阵A必须是三对角的。在一些免费的子例程库(如lapack)中是否有这样的函数?

请查看lapack中的SSPTRF函数:

目的
=======

SSPTRF计算存储的实对称矩阵a的因式分解 采用Bunch-Kaufman对角线旋转法的压缩格式:

A=U*D*U**T或A=L*D*L**T

其中U(或L)是置换和单位上(下)的乘积 三角矩阵,D是对称的,块对角的 1乘1和2乘2对角块。

此外,Golub和van Loan的《矩阵计算》一书给出了进行分解的算法。在我的第三版中,它在第138页,第4.1.2节“对称性和LDL^T因子分解”