[Scipy-tickets] [SciPy] #375: FAIL: check_syevr (scipy.lib.tests.test_lapack.test_flapack_float)

SciPy scipy-tickets@scipy....
Sun Nov 9 01:27:38 CST 2008


#375: FAIL: check_syevr (scipy.lib.tests.test_lapack.test_flapack_float)
-----------------------+----------------------------------------------------
 Reporter:  nils       |        Owner:  cdavid  
     Type:  defect     |       Status:  assigned
 Priority:  normal     |    Milestone:  0.7.0   
Component:  scipy.lib  |      Version:          
 Severity:  normal     |   Resolution:          
 Keywords:             |  
-----------------------+----------------------------------------------------
Comment (by cdavid):

 Ok, this error is specific to lapack 3.1.1 (vs 3.0) I believe. Here is a
 simple test to reproduce the problem:

 {{{
 #include <stdio.h>

 extern void ssyevr_(char *jobsz, char *range, char* uplo,
                     int *N, float A[], int* LDA, float *VL, float *VU,
                     int *IL, int *IU, float *ABSTOL,
                     int *M, float W[], float Z[], int *LDZ,
                     int ISUPPZ[], float WORK[], int *LWORK, int IWORK[],
                     int *LIWORK, int *INFO);

 int main(void)
 {
         int i;

         //char jobsz = 'N';
         char jobsz = 'N';
         char range = 'A';
         char uplo = 'U';
         int n = 3;
         int lda = 3;

         float vl = 0, vu = 0;
         int il = 0, iu = 0;
         float A[] = { 1, 2, 3, 2, 2, 3, 3, 3, 6};
         float abstol = -1;

         int m;
         float w[n];
         int ldz = n;
         float z[n * ldz];
         int isuppz[2 * m];

         int lwork = 1000;
         float work[lwork];

         int liwork = 10 * n;
         int iwork[liwork];

         int info;

         ssyevr_(&jobsz, &range, &uplo,
                 &n, A, &lda, &vl, &vu,
                 &il, &iu, &abstol,
                 &m, w, z, &ldz,
                 isuppz, work, &lwork, iwork, &liwork,
                 &info);

         for(i = 0; i < n; ++i) {
                 printf("%1.8f, ", w[i]);
         }
         printf("\n");

         return 0;
 }
 }}}

 Depending on whether the jobz is 'N' (only eigen values) or 'V' (compute
 eigenvectors as well), the difference is more significant with lapack
 3.1.1 than with 3.0.

-- 
Ticket URL: <http://www.scipy.org/scipy/scipy/ticket/375#comment:9>
SciPy <http://www.scipy.org/>
SciPy is open-source software for mathematics, science, and engineering.


More information about the Scipy-tickets mailing list