LAPACK Archives

[Lapack] stevx error handling


Hello,

Do you agree that this is a problem?

this looks like a serious problem, you are right.

[lapackers: I can have a look in two weeks for myself.]

Thanks for reporting the problem,
Best wishes, 
Julien.


On Fri, 29 Jun 2007, Elias Rudberg wrote:

Hello!

I have some troubles with the dstevx LAPACK routine; it sometimes returns
wrong results, while the "info" variable is zero which should mean
success.

I think the problem originates somewhere deep down in the routines called
internally by stevx, but in the stevx code itself there is anyway a
problem with error handling: the routine should not return with info=0 if
problems were encountered. Part of the stevx code looks like this:

      CALL DSTEBZ( RANGE, ORDER, N, VLL, VUU, IL, IU, ABSTOL, D, E, M,
     $             NSPLIT, W, IWORK( INDIBL ), IWORK( INDISP ),
     $             WORK( INDWRK ), IWORK( INDIWO ), INFO )
*
      IF( WANTZ ) THEN
         CALL DSTEIN( N, D, E, M, W, IWORK( INDIBL ), IWORK( INDISP ),
     $                Z, LDZ, WORK( INDWRK ), IWORK( INDIWO ), IFAIL,
     $                INFO )
      END IF

Here, if the call to DSTEBZ fails, an error code != 0 is placed in INFO.
However, that error code is ignored and the program proceeds to call
DSTEIN regardless. DSTEIN will then overwrite the error code from DSTEBZ
so the information that something was wrong is lost.

Do you agree that this is a problem?

Best regards

Elias

-----------------------------
Elias Rudberg
elias@Domain.Removed
Department of Theoretical Chemistry
Royal Institute of Technology
S-106 91 Stockholm, Sweden
----------------------------
_______________________________________________
Lapack mailing list
Lapack@Domain.Removed
http://lists.cs.utk.edu/listinfo/lapack


<Prev in Thread] Current Thread [Next in Thread>


For additional information you may use the LAPACK/ScaLAPACK Forum.
Or one of the mailing lists, or