[Numpy-discussion] Bug in scipy.linalg.svd?

Webb Sprague webb.sprague at gmail.com
Mon Mar 27 15:07:10 CST 2006

Hi all,

scipy.__version__: 0.3.2

numpy.__version__: 0.9.4

OS: Gentoo.

Maybe I am missing something key here, but my Numerical Recipes book says:

"Any M x N matrix A whose number of rows M is greater than or equal to
its number of columns N, can be written as the product of of an *M x
N* column orthogonal matrix U, an N x N diagonal matrix W, ... and the
transpose of an N x N orthogh matrix V."

So...  why do I get the following behavior:

(u, x, v) = scipy.linalg.svd(RandomArray.normal(0,1,[10,4])
u.shape == (10,10)

By the way, if you run this from Numeric, U[:, 0:4] are the same, but
Numeric doesn't generate the additional columns.  I think we should
write a unit test such that matrixmultipy(matrixmultiply(u,diag(x)),
transpose(v)) == A.

More information about the Numpy-discussion mailing list