我正在尝试使用最小二乘法来解决矩阵问题:b = A*x for x。系统是超定的,A 是一个稠密矩阵。
在 LAPACK 库中,我相信例程 DGELSY 最适合这个问题(或最接近 Matlab 的 LSQMINNORM 函数的任何东西)。但是,我是编码方面的相对业余爱好者,尤其是 Fortran,并且对此函数的输入存在问题。
你的语法如下:
call dgelsy(m, n, nrhs, a, lda, b, ldb, jpvt, rcond, rank, work, lwork, info)
(这里是文档站点:https ://software.intel.com/en-us/mkl-developer-reference-fortran-gelsy )。
例如,令 A 为 40,000 x 3,000 矩阵,b 为 40,000 元素向量,x 为 3,000 元素向量。
问题:在这种情况下,DGELSY 的输入应该是什么?
[旁白:如果有更适合解决此问题的 LAPACK 功能,请随时告诉我!]