cggsvd (l) - Linux Manuals
cggsvd: computes the generalized singular value decomposition (GSVD) of an M-by-N complex matrix A and P-by-N complex matrix B
NAME
CGGSVD - computes the generalized singular value decomposition (GSVD) of an M-by-N complex matrix A and P-by-N complex matrix BSYNOPSIS
- SUBROUTINE CGGSVD(
- JOBU, JOBV, JOBQ, M, N, P, K, L, A, LDA, B, LDB, ALPHA, BETA, U, LDU, V, LDV, Q, LDQ, WORK, RWORK, IWORK, INFO )
- CHARACTER JOBQ, JOBU, JOBV
- INTEGER INFO, K, L, LDA, LDB, LDQ, LDU, LDV, M, N, P
- INTEGER IWORK( * )
- REAL ALPHA( * ), BETA( * ), RWORK( * )
- COMPLEX A( LDA, * ), B( LDB, * ), Q( LDQ, * ), U( LDU, * ), V( LDV, * ), WORK( * )
PURPOSE
CGGSVD computes the generalized singular value decomposition (GSVD) of an M-by-N complex matrix A and P-by-N complex matrix B:Uaq*A*Q
where U, V and Q are unitary matrices, and Zaq means the conjugate transpose of Z. Let K+L = the effective numerical rank of the matrix (Aaq,Baq)aq, then R is a (K+L)-by-(K+L) nonsingular upper triangular matrix, D1 and D2 are M-by-(K+L) and P-by-(K+L) "diagonal" matrices and of the following structures, respectively:
If M-K-L >= 0,
where
If M-K-L < 0,