Main Page | Modules | Class List | File List | Class Members | File Members

Singular Value Decomposition of a General Size Matrix
[General Size Matrices]


Classes

struct  SVDOrder
struct  SVDOrder

Typedefs

typedef SVDOrder SVDOrder
typedef SVDOrder SVDOrder

Functions

Gan_Bool gan_mat_svd (Gan_Matrix *A, Gan_Matrix *U, Gan_SquMatrix *S, Gan_Matrix *VT, double *work, unsigned long work_size)
 Computes singular value decomposition of matrix.
Gan_Bool gan_matf_svd (Gan_Matrix_f *A, Gan_Matrix_f *U, Gan_SquMatrix_f *S, Gan_Matrix_f *VT, float *work, unsigned long work_size)
 Computes singular value decomposition of matrix.

Function Documentation

Gan_Bool gan_mat_svd Gan_Matrix A,
Gan_Matrix U,
Gan_SquMatrix S,
Gan_Matrix VT,
double *  work,
unsigned long  work_size
 

Computes singular value decomposition of matrix.

Parameters:
A Pointer to the input matrix
U Matrix_f of left singular vectors
S Diagonal matrix of singular values
VT Matrix_f of transposed right singular vectors
work Workspace array
work_size size of the work array
Returns:
GAN_TRUE on success, GAN_FALSE on failure.
Computes singular value decomposition of matrix. The SVD of matrix A is

\[ A = U\: S\: VT \]

where U and VT are orthogonal matrices of singular vectors (left and right singular vectors respectively) and S is a diagonal matrix of singular values. The singular values are returned in descending order.

work is a workspace array of size work_size, which should be at least $ \mbox{max}(3 \mbox{min}(m,n)+\mbox{max}(m,n),5*\mbox{min}(m,n)-4) $ where $ m,n $ are the row, column dimensions of A. If work is passed as NULL, it is allocated and freed internally.

Gan_Bool gan_matf_svd Gan_Matrix_f A,
Gan_Matrix_f U,
Gan_SquMatrix_f S,
Gan_Matrix_f VT,
float *  work,
unsigned long  work_size
 

Computes singular value decomposition of matrix.

Parameters:
A Pointer to the input matrix
U Matrix_f of left singular vectors
S Diagonal matrix of singular values
VT Matrix_f of transposed right singular vectors
work Workspace array
work_size size of the work array
Returns:
GAN_TRUE on success, GAN_FALSE on failure.
Computes singular value decomposition of matrix. The SVD of matrix A is

\[ A = U\: S\: VT \]

where U and VT are orthogonal matrices of singular vectors (left and right singular vectors respectively) and S is a diagonal matrix of singular values. The singular values are returned in descending order.

work is a workspace array of size work_size, which should be at least $ \mbox{max}(3 \mbox{min}(m,n)+\mbox{max}(m,n),5*\mbox{min}(m,n)-4) $ where $ m,n $ are the row, column dimensions of A. If work is passed as NULL, it is allocated and freed internally.


Generated on Fri Mar 17 12:44:59 2006 by  doxygen 1.3.9.1