NOTE: This class is ported almost verbatim from the public domain JAMA Matrix package. It is modified to handle only 3x3 matrices and our Geom::Matrix affine transform class. We give full attribution to them, along with many thanks. JAMA can be found at: http://math.nist.gov/javanumerics/jama
Singular Value Decomposition.
For an m-by-n matrix A with m >= n, the singular value decomposition is an m-by-n orthogonal matrix U, an n-by-n diagonal matrix S, and an n-by-n orthogonal matrix V so that A = U*S*V'.
The singular values, sigma[k] = S[k][k], are ordered so that sigma >= sigma >= ... >= sigma[n-1].
The singular value decompostion always exists, so the constructor will never fail. The matrix condition number and the effective numerical rank can be computed from this decomposition.
Public Member Functions
|double||getS (unsigned int index)|
|SVDMatrix &||getU ()|
|SVDMatrix &||getV ()|
|SingularValueDecomposition (const SVDMatrix &mat)|
Private Member Functions