MATRIX commands


PROGRAM NAME

msvd - Compute Singular Value Decomposition (SVD)

DESCRIPTION

msvd computes the Singular Value Decomposition of a matrix.

The output matrices will be of type DOUBLE unless the input matrix was a complex type. In that case the output will be of type KDCOMPLEX. In all cases, the S matrix is always of type KDOUBLE since singular values are always positive and always real.

The singular value decomposition produces a diagonal matrix S (available via -o2) of the same dimensions as the input matrix. and with nonnegative diagonal elements in decreasing order. Also produced are unitary matrices U (available via -o1) and V (available via -o3) such that A=U*S*V', where A is the input matrix and V' means the transpose of V. The columns of U and V are the left and right singular vectors, respectively. The singular vectors are orthonormal to each other within both U and V.

For a real, symmetric, square input matrix, U=V and the singular vectors are the eigenvectors. The eigenvalues are the square root of the singular values.

REQUIRED ARGUMENTS

-i
type: infile
desc: Input matrix
-o1
type: outfile
desc: Output matrix U
-o2
type: outfile
desc: Output matrix S
-o3
type: outfile
desc: Output matrix V

OPTIONAL ARGUMENTS

none

EXAMPLES

SEE ALSO

RESTRICTIONS

REFERENCES

LAPACK Users' Guide, E. Anderson et. al., SIAM 1992. ISBN 0-89871-294-7

COPYRIGHT

Copyright (C) 1993 - 1997, Khoral Research, Inc. ("KRI") All rights reserved.