我有一個程序運行通過R但使用BLAS例程。它正確運行了大約8次,但然後拋出一個錯誤:BLAS DGEMV錯誤代碼-6是什麼意思?
BLAS/LAPACK routine 'DGEMV ' gave error code -6
這個錯誤代碼是什麼意思?
我有一個程序運行通過R但使用BLAS例程。它正確運行了大約8次,但然後拋出一個錯誤:BLAS DGEMV錯誤代碼-6是什麼意思?
BLAS/LAPACK routine 'DGEMV ' gave error code -6
這個錯誤代碼是什麼意思?
ř定義XERBLA功能
void F77_NAME(xerbla)(const char *srname, int *info)
{
/* srname is not null-terminated. It should be 6 characters. */
char buf[7];
strncpy(buf, srname, 6);
buf[6] = '\0';
error(_("BLAS/LAPACK routine '%6s' gave error code %d"), buf, -(*info));
}
從SRC /主/ print.c文件。
dgemv.f的Netlib版本顯示只檢查輸入參數。代碼6顯示LDA或M參數的問題。
*...
ELSE IF (LDA.LT.MAX(1,M)) THEN
INFO = 6
*...
END IF
IF (INFO.NE.0) THEN
CALL XERBLA('DGEMV ',INFO)
RETURN
這樣看來,R取的BLAS錯誤代碼的否定,我認爲原因很多困惑。我認爲這回答我的問題,但不是我的問題,因爲它在拋出錯誤之前使用相同的參數工作多次。
BLAS有一個名爲XERBLA的錯誤處理程序。 R覆蓋XERBLA以傳遞錯誤消息。從我可以看到的信息變量中調用該錯誤。 – 2010-06-16 23:33:53
看起來你在那裏得到了答案。 – 2010-06-17 01:10:33