gives a list of the nonzero singular values of a matrix m.
gives the generalized singular values of m with respect to a.
gives the k largest singular values of m.
gives the k largest generalized singular values of m.
Details and Options
- Singular values are sorted from largest to smallest.
- Repeated singular values appear with their appropriate multiplicity.
- By default, singular values are kept only when they are larger than 100 times 10-p, where p is Precision[m].
- SingularValueList[m,Tolerance->t] keeps only singular values that are at least t times the largest singular value.
- SingularValueList[m,Tolerance->0] returns all singular values.
- The matrix m can be rectangular; the total number of singular values is always Min[Dimensions[m]].
- Exact and symbolic matrices can be used, with zero tolerance assumed by default.
- The singular values can be obtained from Sqrt[Eigenvalues[ConjugateTranspose[m].m]].
Examplesopen allclose all
Basic Examples (2)
Basic Uses (7)
Find the nonzero singular values of a machine-precision matrix:
Singular values of a complex matrix:
Singular values for an exact matrix:
Singular values for an arbitrary-precision matrix:
Singular values of a symbolic matrix:
The singular values of large numerical matrices are computed efficiently:
Subsets of Singular Values (5)
Find the three largest singular values:
And the three smallest singular values:
Find the four largest singular values, including zero values, or as many as there are if fewer:
Zero singular values are included when computing the smallest singular values:
Repeated singular values are listed multiple times:
Repeated singular values are counted separately when extracting a subset of the singular values:
Generalized Singular Values (3)
Special Matrices (4)
Singular values of sparse matrices:
Find the three largest singular values:
Singular values of structured matrices:
The units go with the singular values:
IdentityMatrix always has all-one singular values:
Singular values of HilbertMatrix:
Compute the singular values larger than of the largest singular value:
Setting Tolerance to will directly compute the same set of singular values:
The matrix is positive definite, so with exact arithmetic there are 16 nonzero singular values:
Many of the singular values are too small to show up at machine precision:
Setting the tolerance to zero will make them all show up:
Because of numerical roundoff, the values are not computed accurately:
Find the maximum value of for the following matrix :
The maximum is equal to the largest singular value of :
Confirm the result using MaxValue:
Find the minimum value of subject to for the following matrix :
Because the matrix has at least as many rows as columns, the minimum is the smallest singular value of :
Confirm the result using MinValue:
The operator norm of a matrix, also called the spectral norm or 2-norm, is defined as the maximum value of subject to the constraint that . Find the operator norm of the following :
The maximum of , and thus the norm, is the largest singular value of :
Verify the result using Norm:
Use the singular values of to compute its norm, the norm of and the condition number of the matrices:
The 2-norm of a matrix is equal to the largest singular value:
The 2-norm of the inverse is equal to the reciprocal of the smallest singular value:
Verify using Norm:
The condition number is and thus equals the ratio of largest to smallest singular values:
Properties & Relations (11)
The nonzero singular values of are the square roots of the nonzero eigenvalues of :
Equivalently, they are the square roots of the nonzero eigenvalues of :
The complete set of singular values of is the square root of the eigenvalues of either or :
The product that produces the smaller square matrix, in this case , should be used:
The order that produces a larger square matrix has additional zero eigenvalues:
m and ConjugateTranspose[m] have the same singular values:
The product of the singular values of a square matrix m equals Abs[Det[m]]:
For a normal matrix n, the singular values equal Abs[Eigenvalues[n]]:
MatrixRank[m] equals the number of nonzero singular values:
The singular values of are the reciprocals of the singular values of in the opposite order:
For a submatrix s of m, the largest singular value of m is greater than or equal to the singular values of s:
The generalized singular values of to equal the roots of the generalized eigenvalues of to :
Unlike ordinary singular values, they are not related to the generalized eigenvalues of to :
The largest singular value of with respect to (with having independent columns) is :
Call the input that gave the maximum :
The second singular value is the maximum of the ratio with the constraint that is -orthogonal to :
Each subsequent singular value is found by requiring to be -orthogonal to all the preceding inputs:
The generalized singular values of with respect to differ from those of with respect to :
Wolfram Research (2003), SingularValueList, Wolfram Language function, https://reference.wolfram.com/language/ref/SingularValueList.html (updated 2015).
Wolfram Language. 2003. "SingularValueList." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2015. https://reference.wolfram.com/language/ref/SingularValueList.html.
Wolfram Language. (2003). SingularValueList. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/SingularValueList.html