簡體   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