我有一个程序运行通过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