Greetings,
We have discovered a problem with DSYEVX. The problem occurs for certain
matrices created using a specific algorithm.
We are able to work around the problem by removing the "matrix splitting"
code in dstebz. This problem also occurs in sstebz.
DO 10 J = 2, N
TMP1 = E( J-1 )**2
!! IF( ABS( D( J )*D( J-1 ) )*ULP**2+SAFEMN.GT.TMP1 ) THEN
!! ISPLIT( NSPLIT ) = J - 1
!! NSPLIT = NSPLIT + 1
!! WORK( J-1 ) = ZERO
!! ELSE
WORK( J-1 ) = TMP1
PIVMIN = MAX( PIVMIN, TMP1 )
!! END IF
10 CONTINUE
Please see the attached test program testevx.f which demonstrates the
failure.
(See attached file: testevx.f)
Output from the test:.
*** Math check results for DSYT22 with N= 7 and M= 5
*** exceeded the threshold value of .10000000D+03
*** Math check: | U' A U - S | / ( |A| m ulp )
*** result was .76390963D+13
*** Math check: | I - U'U | / ( m ulp )
*** result was .15278193D+15
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
http://lists.cs.utk.edu/private/lapack/attachments/20090629/0b84bc2a/attachment.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: testevx.f
Type: application/octet-stream
Size: 9269 bytes
Desc: not available
Url :
http://lists.cs.utk.edu/private/lapack/attachments/20090629/0b84bc2a/testevx.obj
|