gives a list of the nonzero singular values of a matrix m.
SingularValueList[{m,a}]
gives the generalized singular values of m with respect to a.
SingularValueList[m,k]
gives the k largest singular values of m.
SingularValueList[{m,a},k]
gives the k largest generalized singular values of m.
 
     
   SingularValueList
gives a list of the nonzero singular values of a matrix m.
SingularValueList[{m,a}]
gives the generalized singular values of m with respect to a.
SingularValueList[m,k]
gives the k largest singular values of m.
SingularValueList[{m,a},k]
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]].
Examples
open all close allBasic Examples (2)
Scope (19)
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:
Options (2)
Tolerance (2)
Compute the singular values larger than  of the largest singular value:
 of the largest singular value:
Setting Tolerance to  will directly compute the same set of singular values:
 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:
Applications (4)
Find the maximum value of ![TemplateBox[{{m, ., x}}, Norm]/TemplateBox[{x}, Norm] TemplateBox[{{m, ., x}}, Norm]/TemplateBox[{x}, Norm]](Files/SingularValueList.en/3.png) for the following matrix
 for the following matrix  :
:
The maximum is equal to the largest singular value of  :
:
Confirm the result using MaxValue:
Find the minimum value of ![TemplateBox[{{m, ., x}}, Norm] TemplateBox[{{m, ., x}}, Norm]](Files/SingularValueList.en/6.png) subject to
 subject to ![TemplateBox[{x}, Norm]=1 TemplateBox[{x}, Norm]=1](Files/SingularValueList.en/7.png) for the following matrix
 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 ![TemplateBox[{{m, ., x}}, Norm] TemplateBox[{{m, ., x}}, Norm]](Files/SingularValueList.en/10.png) subject to the constraint that
 subject to the constraint that ![TemplateBox[{x}, Norm]=1 TemplateBox[{x}, Norm]=1](Files/SingularValueList.en/11.png) . Find the operator norm of the following
. Find the operator norm of the following  :
:
The maximum of ![TemplateBox[{{m, ., x}}, Norm] TemplateBox[{{m, ., x}}, Norm]](Files/SingularValueList.en/13.png) , and thus the norm, is the largest singular value 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
 to compute its norm, the norm of ![TemplateBox[{m}, Inverse] TemplateBox[{m}, Inverse]](Files/SingularValueList.en/16.png) and the
 and the  condition number of the matrices:
 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
 condition number is ![TemplateBox[{m, 2}, Norm2] TemplateBox[{TemplateBox[{m}, Inverse, SyntaxForm -> SuperscriptBox], 2}, Norm2] TemplateBox[{m, 2}, Norm2] TemplateBox[{TemplateBox[{m}, Inverse, SyntaxForm -> SuperscriptBox], 2}, Norm2]](Files/SingularValueList.en/20.png) and thus equals the ratio of largest to smallest singular values:
 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
 are the square roots of the nonzero eigenvalues of ![m.TemplateBox[{m}, ConjugateTranspose] m.TemplateBox[{m}, ConjugateTranspose]](Files/SingularValueList.en/22.png) :
:
Equivalently, they are the square roots of the nonzero eigenvalues of ![TemplateBox[{m}, ConjugateTranspose].m TemplateBox[{m}, ConjugateTranspose].m](Files/SingularValueList.en/23.png) :
:
The complete set of singular values of  is the square root of the eigenvalues of either
 is the square root of the eigenvalues of either ![TemplateBox[{m}, ConjugateTranspose].m TemplateBox[{m}, ConjugateTranspose].m](Files/SingularValueList.en/25.png) or
 or ![TemplateBox[{{m, ., m}}, ConjugateTranspose] TemplateBox[{{m, ., m}}, ConjugateTranspose]](Files/SingularValueList.en/26.png) :
:
The product that produces the smaller square matrix, in this case ![TemplateBox[{m}, ConjugateTranspose].m TemplateBox[{m}, ConjugateTranspose].m](Files/SingularValueList.en/27.png) , should be used:
, 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 ![TemplateBox[{m}, Inverse] TemplateBox[{m}, Inverse]](Files/SingularValueList.en/28.png) are the reciprocals of the singular values of
 are the reciprocals of the singular values of  in the opposite order:
 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
 to  equal the roots of the generalized eigenvalues of
 equal the roots of the generalized eigenvalues of ![TemplateBox[{m}, ConjugateTranspose].m TemplateBox[{m}, ConjugateTranspose].m](Files/SingularValueList.en/32.png) to
 to ![TemplateBox[{a}, ConjugateTranspose].a TemplateBox[{a}, ConjugateTranspose].a](Files/SingularValueList.en/33.png) :
:
 Unlike ordinary singular values, they are not related to the generalized eigenvalues of ![TemplateBox[{{m, ., m}}, ConjugateTranspose] TemplateBox[{{m, ., m}}, ConjugateTranspose]](Files/SingularValueList.en/34.png) to
 to ![TemplateBox[{{a, ., a}}, ConjugateTranspose] TemplateBox[{{a, ., a}}, ConjugateTranspose]](Files/SingularValueList.en/35.png) :
:
The largest singular value of  with respect to
 with respect to  (with
 (with  having independent columns) is
 having independent columns) is ![max_(TemplateBox[{x}, Norm]=1)TemplateBox[{{m, ., x}}, Norm]/TemplateBox[{{a, ., x}}, Norm] max_(TemplateBox[{x}, Norm]=1)TemplateBox[{{m, ., x}}, Norm]/TemplateBox[{{a, ., x}}, Norm]](Files/SingularValueList.en/39.png) :
:
Call the input that gave the maximum  :
:
The second singular value is the maximum of the ratio with the constraint that  is
 is  -orthogonal to
-orthogonal to  :
:
Each subsequent singular value is found by requiring  to be
 to be  -orthogonal to all the preceding inputs:
-orthogonal to all the preceding inputs:
The generalized singular values of  with respect to
 with respect to  differ from those of
 differ from those of ![TemplateBox[{m}, ConjugateTranspose] TemplateBox[{m}, ConjugateTranspose]](Files/SingularValueList.en/48.png) with respect to
 with respect to ![TemplateBox[{a}, ConjugateTranspose] TemplateBox[{a}, ConjugateTranspose]](Files/SingularValueList.en/49.png) :
:
Tech Notes
Related Guides
History
Introduced in 2003 (5.0) | Updated in 2007 (6.0) ▪ 2014 (10.0) ▪ 2015 (10.3)
Text
Wolfram Research (2003), SingularValueList, Wolfram Language function, https://reference.wolfram.com/language/ref/SingularValueList.html (updated 2015).
CMS
Wolfram Language. 2003. "SingularValueList." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2015. https://reference.wolfram.com/language/ref/SingularValueList.html.
APA
Wolfram Language. (2003). SingularValueList. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/SingularValueList.html
BibTeX
@misc{reference.wolfram_2025_singularvaluelist, author="Wolfram Research", title="{SingularValueList}", year="2015", howpublished="\url{https://reference.wolfram.com/language/ref/SingularValueList.html}", note=[Accessed: 31-October-2025]}
BibLaTeX
@online{reference.wolfram_2025_singularvaluelist, organization={Wolfram Research}, title={SingularValueList}, year={2015}, url={https://reference.wolfram.com/language/ref/SingularValueList.html}, note=[Accessed: 31-October-2025]}

