Factorization
A = UΣVᵀThe columns of U and V are orthonormal, and the diagonal entries of Σ are nonnegative.
Enter real integers, decimals, or scientific notation. Display rounding does not change the calculation.
The calculator scales A, uses right Jacobi rotations to make its working columns orthogonal, then normalizes and sorts those columns. For a wide matrix, it decomposes Aᵀ and swaps the left and right factors.
For an m × n matrix and k = min(m,n), the thin SVD uses U of size m × k, diagonal Σ of size k × k, and Vᵀ of size k × n.
A = UΣVᵀThe columns of U and V are orthonormal, and the diagonal entries of Σ are nonnegative.
σᵢ = √λᵢ(AᵀA)Equivalently, the one-sided Jacobi method obtains each σᵢ as the norm of an orthogonalized working column.
rank(A) = #{σᵢ > τ}, ‖A‖₂ = σ₁A scale-aware tolerance τ separates retained singular directions from numerical zero.
For the diagonal matrix A = [[3,0],[0,2]], its column directions are already orthogonal. The singular values are their lengths, 3 and 2, so one valid decomposition is:
U = I, Σ = diag(3,2), Vᵀ = I
The product UΣVᵀ reconstructs A exactly, the numerical rank is 2, and the 2-norm condition number is 3/2 = 1.5.
Small singular values reveal directions where a linear system is weakly determined and can be truncated or regularized.
Keeping the largest singular values gives the best rank-r approximation in the 2-norm and Frobenius norm.
Dominant singular vectors identify strong directions in images, text matrices, and centered data.
SVD writes any real matrix as A = UΣVᵀ. U and V supply orthonormal directions, while the nonnegative diagonal of Σ measures the strength of each paired direction.
Yes. This calculator accepts tall, square, and wide real matrices from 2×2 through 8×8 and returns the thin SVD.
The full SVD includes complete square orthogonal U and V matrices. The thin form keeps only k = min(m,n) paired columns, which is enough to reconstruct A and is more compact.
It uses one-sided Jacobi rotations on a scaled tall working matrix. Each sweep reduces correlations between column pairs. The final column lengths become singular values, normalized columns form one singular-vector factor, and the accumulated rotations form the other.
Negating matching singular vectors leaves the product unchanged. If singular values repeat, any orthonormal basis of the corresponding singular subspace is valid.
The calculator counts singular values above a tolerance based on the largest singular value, dimensions, and double-precision machine epsilon. Near the threshold, rank can change with small input perturbations.
Yes. Calculation, clipboard text, and downloaded files are created locally in your browser. This page does not send or save matrix entries.
Last reviewed: August 5, 2026 by the Starlight Tools editorial team.
Inputs use JavaScript double-precision arithmetic and must be zero or have magnitude from 10⁻¹⁰⁰ through 10¹⁰⁰. The one-sided Jacobi iteration is limited to 80 sweeps. Extremely ill-conditioned or nearly rank-deficient problems may require higher-precision numerical software.