MATLAB Function Reference | Search  Help Desk |
svds | Examples See Also |
s = svds(A) s = svds(A,k) s = svds(A,k,0) [U,S,V] = svds(A,...)
svds(A)
computes the five largest singular values and associated singular vectors of the matrix A
.
svds(A,k)
computes the k
largest singular values and associated singular vectors of the matrix A
.
svds(A,k,0)
computes the k
smallest singular values and associated singular vectors.
With one output argument, s
is a vector of singular values. With three output arguments and if A
is m
-by-n
:
U
is m
-by-k
with orthonormal columns
S
is k
-by-k
diagonal
V
is n
-by-k
with orthonormal columns
U*S*V'
is the closest rank k
approximation to A
eigs
to find the k
largest magnitude eigenvalues and corresponding eigenvectors of B = [0 A; A' 0]
.
svds(A,k,0) uses eigs
to find the 2k
smallest magnitude eigenvalues and corresponding eigenvectors of B = [0 A; A' 0]
, and then selects the k
positive eigenvalues and their eigenvectors.
west0479
is a real 479-by-479 sparse matrix. svd
calculates all 479 singular values. svds
picks out the largest and smallest singular values.
load west0479 s = svd(full(west0479)) sl = svds(west0479,4) ss = svds(west0479,6,0)These plots show some of the singular values of
west0479
as computed by svd
and svds
.west0479
can be computed a few different ways:
svds(west0479,1) = 3.189517598808622e+05 max(svd(full(west0479))) = 3.18951759880862e+05 norm(full(west0479)) = 3.189517598808623e+05and estimated:
normest(west0479) = 3.189385666549991e+05
svd
Singular value decomposition
eigs
Find a few eigenvalues and eigenvectors