繁体   English   中英

SGETRF的Lapack错误

[英]Lapack error with SGETRF

我正在使用LAPACK library来解决优化问题。 我收到了不同的Lapack错误(Lapack error(1,2,3,4) with SGETRF) 是否有任何文档来源可供阅读,以了解这些错误的确切含义?

大多数Lapack例程在INFO参数中返回错误代码。 此输出的含义在函数sgetrf()的文档中指定

如果INFO为null,则一切正常! 如果INFO <0,则在输入参数中检测到错误。 例如,对于sgetrf()

  • INFO = -1:矩阵的行数为负
  • INFO = -2:矩阵的列数为负
  • INFO = -4:LDA低于MAX(1,M)

例程xerbla()可以用于打印正确的错误消息:

XERBLA( 'SGETRF', -INFO )

如果INFO> 0,文档将清楚地描述正在发生的事情:

U(i,i)恰好为零。 分解已经完成,但是因子U恰好是单数,如果将其用于求解方程组,则将被零除。

如果矩阵是奇异的或病态的,则会发生此问题。 如果矩阵A是奇异的,那么对于问题Ax=b可能有不同的解决方案,或者根本没有解决方案。 如果INFO = 1,则矩阵很可能为空。

因此,测试INFO被认为是一种好习惯,因为诸如sgetrf()sgesv()类的函数被称为...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM