Eigen decomposition accuracy

Post here if you have a question about LAPACK or ScaLAPACK algorithm or data format

Eigen decomposition accuracy

Postby vladimirtodorov » Wed Jul 11, 2012 7:51 am

Hi everyone,

I have a problem with the accuracy of the Eigen decomposition in LAPACK. I have compiled my program using a 32-bit compiler and I am using LAPACK wrapped with Armadillo. When I do a decomposition in my 32-bit compiled code it is accurate. I have checked it against MATLAB. However, when I compile for a 64-bit, the accuracy degrades. The 64bit MATLAB still produces the correct output, but my 64-bit application fails to do so. I have tried with the lapack installed on my mainframe as well as with versions 3.4.0 and 3.4.1, which I built myself. Attached you may find my matrix on which LAPACK fails.

Regards,
Vladimir

Z=[ 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 5.0000000000e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 5.0000000000e-01 0.0000000000e+00;
0.0000000000e+00 0.0000000000e+00 1.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00;
0.0000000000e+00 5.0000000000e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 5.0000000000e-01 0.0000000000e+00;
0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 1.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00;
0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 2.3809465760e-02 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 2.3809465760e-02 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 9.5238106848e-01 0.0000000000e+00;
9.8591550515e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 1.4084494854e-02 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00;
0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 1.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00;
0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 1.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00;
0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 5.0000000000e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 5.0000000000e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00;
0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 3.0769215646e-03 3.0769215646e-03 3.0769215646e-03 6.1538305260e-03 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 9.8461540478e-01 0.0000000000e+00;
0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 1.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00;
0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 4.5454545455e-01 0.0000000000e+00 4.5454545455e-01 0.0000000000e+00 0.0000000000e+00 9.0909090909e-02 0.0000000000e+00;
0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 5.0000000000e-01 0.0000000000e+00 0.0000000000e+00 5.0000000000e-01 0.0000000000e+00 0.0000000000e+00;
0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 1.0000000000e+00 0.0000000000e+00 0.0000000000e+00;
0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 5.0000000000e-01 5.0000000000e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00;
1.0574026819e-02 0.0000000000e+00 1.2084597659e-02 0.0000000000e+00 1.2084597659e-02 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 4.8338390638e-02 0.0000000000e+00 1.5105739340e-01 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 7.6586099382e-01;
0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 0.0000000000e+00 1.0000000000e+00 0.0000000000e+00]
vladimirtodorov
 
Posts: 1
Joined: Wed Jul 11, 2012 7:44 am

Return to Algorithm / Data

Who is online

Users browsing this forum: Google [Bot] and 1 guest