我正在使用LAPACK library
来解决优化问题。我得到了不同的Lapack错误(Lapack error(1,2,3,4) with SGETRF)
。是否有任何文档源,我可以阅读以了解这些错误究竟是什么意思?
答案 0 :(得分:1)
大多数Lapack例程在参数INFO
中返回错误代码。此输出的含义在函数sgetrf()
如果INFO为空,那么就可以了!
如果INFO <0,则在输入参数中检测到错误。例如,对于sgetrf()
:
可以应用例程xerbla()
来打印正确的错误消息:
XERBLA( 'SGETRF', -INFO )
如果INFO> 0,该文件清楚地描述了正在发生的事情:
U(i,i)正好为零。分解已经完成,但因子U恰好是单数,如果使用则会出现除零 解决方程组。
如果矩阵是单数或不合理的,则会出现此问题。如果矩阵A
是单数的,则可能存在不同的解决方案,或根本没有解决问题Ax=b
的解决方案。
如果INFO = 1,则矩阵很可能为空。
因此,测试INFO
应被视为一种良好做法,因为sgetrf()
或sgesv()
等函数被称为...