[Numpy-discussion] SVD does not converge on "clean" matrix

dhanjal@telecom-pariste... dhanjal@telecom-pariste...
Thu Aug 11 08:23:22 CDT 2011


Hi all,

I get an error message "numpy.linalg.linalg.LinAlgError: SVD did not
converge" when calling numpy.linalg.svd on a "clean" matrix of size (1952,
895). The matrix is clean in the sense that it contains no NaN or Inf
values. The corresponding npz file is available here:
https://docs.google.com/leaf?id=0Bw0NXKxxc40jMWEyNTljMWUtMzBmNS00NGZmLThhZWUtY2I2MWU2MGZiNDgx&hl=fr

Here is some information about my setup: I use Python 2.7.1 on Ubuntu
11.04 with numpy 1.6.1. Furthermore, I thought the problem might be solved
by recompiling numpy with my local ATLAS library (version 3.8.3), and this
didn't seem to help. On another machine with Python 2.7.1 and numpy 1.5.1
the SVD does converge however it contains 1 NaN singular value and 3
negative singular values of the order -10^-1 (singular values should
always be non-negative).

I also tried computing the SVD of the matrix using Octave 3.2.4 and Matlab
7.10.0.499 (R2010a) 64-bit (glnxa64) and there were no problems. Any help
is greatly appreciated.

Thanks in advance,
Charanpal





More information about the NumPy-Discussion mailing list