[Numpy-discussion] SVD does not converge on "clean" matrix
Sun Aug 14 07:22:07 CDT 2011
I had a quick look at the code
the numpy.linalg.svd function calls lapack_lite.dgesdd (for real
matrices) so I guess the non-convergence occurs in this function. As I
understood lapack_lite is used by default unless numpy is installed with
ATLAS/MKL etc. I wonder why svd works for Nadav and not for anyone else?
Any ideas anyone?
On Sat, 13 Aug 2011 13:13:25 -0600, Charles R Harris wrote:
> On Thu, Aug 11, 2011 at 7:23 AM, wrote:
>> Hi all,
>> I get an error message "numpy.linalg.linalg.LinAlgError: SVD did
>> converge" when calling numpy.linalg.svd on a "clean" matrix of size
>> 895). The matrix is clean in the sense that it contains no NaN or
>> values. The corresponding npz file is available here:
>> Here is some information about my setup: I use Python 2.7.1 on
>> 11.04 with numpy 1.6.1. Furthermore, I thought the problem might be
>> by recompiling numpy with my local ATLAS library (version 3.8.3),
>> and this
>> didnt seem to help. On another machine with Python 2.7.1 and numpy
>> the SVD does converge however it contains 1 NaN singular value and
>> negative singular values of the order -10^-1 (singular values
>> always be non-negative).
>> I also tried computing the SVD of the matrix using Octave 3.2.4 and
>> 22.214.171.1249 (R2010a) 64-bit (glnxa64) and there were no problems.
>> Any help
>> is greatly appreciated.
>> Thanks in advance,
> Fails here also, fedora 15 64 bits AMD 940. There should be a maximum
> iterations argument somewhere...
>  mailto:email@example.com
More information about the NumPy-Discussion