svd - singular value decomposition
[U,S,V] = svd(X) produces a diagonal matrix S , of the same dimension as X and with nonnegative diagonal elements in decreasing order, and unitary matrices U and V so that X = U*S*V'.
[U,S,V] = svd(X,0) produces the "economy size" decomposition. If X is m-by-n with m > n, then only the first n columns of U are computed and S is n-by-n.
s = svd(X) by itself, returns a vector s containing the singular values.
[U,S,V,rk]=svd(X,tol) gives in addition rk, the numerical rank of X i.e. the number of singular values larger than tol.
The default value of tol is the same as in rank.
X=rand(4,2)*rand(2,4) svd(X) sqrt(spec(X*X'))
rank, qr, colcomp, rowcomp, sva, spec,
svd decompositions are based on the Lapack routines DGESVD for real matrices and ZGESVD for the complex case.