diff options
author | julie <julielangou@users.noreply.github.com> | 2011-04-02 11:08:56 +0000 |
---|---|---|
committer | julie <julielangou@users.noreply.github.com> | 2011-04-02 11:08:56 +0000 |
commit | f2953573ede24d7f8c01fdb18de48f65f00a9943 (patch) | |
tree | 53172aa9083b9aa1abe2d6c130f7c173d8d8725b /SRC/zggsvd.f | |
parent | 53b71f5605f83d116ab6bcf477bfb6d2ca757de1 (diff) | |
download | lapack-f2953573ede24d7f8c01fdb18de48f65f00a9943.tar.gz lapack-f2953573ede24d7f8c01fdb18de48f65f00a9943.tar.bz2 lapack-f2953573ede24d7f8c01fdb18de48f65f00a9943.zip |
First pass to homgenize notation for transpose (**T) and conjugate transpose (**H)
Corresponds to bug0024
Diffstat (limited to 'SRC/zggsvd.f')
-rw-r--r-- | SRC/zggsvd.f | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/SRC/zggsvd.f b/SRC/zggsvd.f index 6727531c..c7be33f2 100644 --- a/SRC/zggsvd.f +++ b/SRC/zggsvd.f @@ -24,11 +24,11 @@ * ZGGSVD computes the generalized singular value decomposition (GSVD) * of an M-by-N complex matrix A and P-by-N complex matrix B: * -* U'*A*Q = D1*( 0 R ), V'*B*Q = D2*( 0 R ) +* U**H*A*Q = D1*( 0 R ), V**H*B*Q = D2*( 0 R ) * -* where U, V and Q are unitary matrices, and Z' means the conjugate -* transpose of Z. Let K+L = the effective numerical rank of the -* matrix (A',B')', then R is a (K+L)-by-(K+L) nonsingular upper +* where U, V and Q are unitary matrices. +* Let K+L = the effective numerical rank of the +* matrix (A**H,B**H)**H, 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: * @@ -85,13 +85,13 @@ * * In particular, if B is an N-by-N nonsingular matrix, then the GSVD of * A and B implicitly gives the SVD of A*inv(B): -* A*inv(B) = U*(D1*inv(D2))*V'. -* If ( A',B')' has orthnormal columns, then the GSVD of A and B is also +* A*inv(B) = U*(D1*inv(D2))*V**H. +* If ( A**H,B**H)**H has orthnormal columns, then the GSVD of A and B is also * equal to the CS decomposition of A and B. Furthermore, the GSVD can * be used to derive the solution of the eigenvalue problem: -* A'*A x = lambda* B'*B x. +* A**H*A x = lambda* B**H*B x. * In some literature, the GSVD of A and B is presented in the form -* U'*A*X = ( 0 D1 ), V'*B*X = ( 0 D2 ) +* U**H*A*X = ( 0 D1 ), V**H*B*X = ( 0 D2 ) * where U and V are orthogonal and X is nonsingular, and D1 and D2 are * ``diagonal''. The former GSVD form can be converted to the latter * form by taking the nonsingular matrix X as @@ -127,7 +127,7 @@ * L (output) INTEGER * On exit, K and L specify the dimension of the subblocks * described in Purpose. -* K + L = effective numerical rank of (A',B')'. +* K + L = effective numerical rank of (A**H,B**H)**H. * * A (input/output) COMPLEX*16 array, dimension (LDA,N) * On entry, the M-by-N matrix A. @@ -209,7 +209,7 @@ * TOLA DOUBLE PRECISION * TOLB DOUBLE PRECISION * TOLA and TOLB are the thresholds to determine the effective -* rank of (A',B')'. Generally, they are set to +* rank of (A**H,B**H)**H. Generally, they are set to * TOLA = MAX(M,N)*norm(A)*MAZHEPS, * TOLB = MAX(P,N)*norm(B)*MAZHEPS. * The size of TOLA and TOLB may affect the size of backward |