cggsvp man page on YellowDog

Man page or keyword search:  
man Server   18644 pages
apropos Keyword Search (all sections)
Output format
YellowDog logo
[printable version]

CGGSVP(l)			       )			     CGGSVP(l)

NAME
       CGGSVP  -  compute  unitary  matrices  U,  V and Q such that  N-K-L K L
       U'*A*Q = K ( 0 A12 A13 ) if M-K-L >= 0

SYNOPSIS
       SUBROUTINE CGGSVP( JOBU, JOBV, JOBQ, M, P, N, A,	 LDA,  B,  LDB,	 TOLA,
			  TOLB,	 K,  L,	 U, LDU, V, LDV, Q, LDQ, IWORK, RWORK,
			  TAU, WORK, INFO )

	   CHARACTER	  JOBQ, JOBU, JOBV

	   INTEGER	  INFO, K, L, LDA, LDB, LDQ, LDU, LDV, M, N, P

	   REAL		  TOLA, TOLB

	   INTEGER	  IWORK( * )

	   REAL		  RWORK( * )

	   COMPLEX	  A( LDA, * ), B( LDB, * ), Q( LDQ, * ), TAU( * ),  U(
			  LDU, * ), V( LDV, * ), WORK( * )

PURPOSE
       CGGSVP  computes unitary matrices U, V and Q such that N-K-L K L U'*A*Q
       = K ( 0 A12 A13 ) if M-K-L >= 0;		      L ( 0	0   A23 )
		 M-K-L ( 0     0    0  )

			N-K-L  K    L
	       =     K ( 0    A12  A13 )  if M-K-L < 0;
		   M-K ( 0     0   A23 )

		      N-K-L  K	  L
	V'*B*Q =   L ( 0     0	 B13 )
		 P-L ( 0     0	  0  )

       where the K-by-K matrix A12 and L-by-L matrix B13 are nonsingular upper
       triangular; A23 is L-by-L upper triangular if M-K-L >= 0, otherwise A23
       is (M-K)-by-L upper trapezoidal.	 K+L = the effective numerical rank of
       the  (M+P)-by-N matrix (A',B')'.	 Z' denotes the conjugate transpose of
       Z.

       This decomposition is the preprocessing step for computing the General‐
       ized Singular Value Decomposition (GSVD), see subroutine CGGSVD.

ARGUMENTS
       JOBU    (input) CHARACTER*1
	       = 'U':  Unitary matrix U is computed;
	       = 'N':  U is not computed.

       JOBV    (input) CHARACTER*1
	       = 'V':  Unitary matrix V is computed;
	       = 'N':  V is not computed.

       JOBQ    (input) CHARACTER*1
	       = 'Q':  Unitary matrix Q is computed;
	       = 'N':  Q is not computed.

       M       (input) INTEGER
	       The number of rows of the matrix A.  M >= 0.

       P       (input) INTEGER
	       The number of rows of the matrix B.  P >= 0.

       N       (input) INTEGER
	       The number of columns of the matrices A and B.  N >= 0.

       A       (input/output) COMPLEX array, dimension (LDA,N)
	       On  entry, the M-by-N matrix A.	On exit, A contains the trian‐
	       gular (or trapezoidal) matrix described in the Purpose section.

       LDA     (input) INTEGER
	       The leading dimension of the array A. LDA >= max(1,M).

       B       (input/output) COMPLEX array, dimension (LDB,N)
	       On entry, the P-by-N matrix B.  On exit, B contains the	trian‐
	       gular matrix described in the Purpose section.

       LDB     (input) INTEGER
	       The leading dimension of the array B. LDB >= max(1,P).

       TOLA    (input) REAL
	       TOLB    (input) REAL TOLA and TOLB are the thresholds to deter‐
	       mine the effective numerical rank of matrix B and a subblock of
	       A.  Generally, they are set to TOLA = MAX(M,N)*norm(A)*MACHEPS,
	       TOLB = MAX(P,N)*norm(B)*MACHEPS.	 The size of TOLA and TOLB may
	       affect the size of backward errors of the decomposition.

       K       (output) INTEGER
	       L       (output) INTEGER On exit, K and L specify the dimension
	       of the subblocks described in Purpose section.  K + L =	effec‐
	       tive numerical rank of (A',B')'.

       U       (output) COMPLEX array, dimension (LDU,M)
	       If JOBU = 'U', U contains the unitary matrix U.	If JOBU = 'N',
	       U is not referenced.

       LDU     (input) INTEGER
	       The leading dimension of the array U. LDU >= max(1,M) if JOBU =
	       'U'; LDU >= 1 otherwise.

       V       (output) COMPLEX array, dimension (LDV,M)
	       If JOBV = 'V', V contains the unitary matrix V.	If JOBV = 'N',
	       V is not referenced.

       LDV     (input) INTEGER
	       The leading dimension of the array V. LDV >= max(1,P) if JOBV =
	       'V'; LDV >= 1 otherwise.

       Q       (output) COMPLEX array, dimension (LDQ,N)
	       If JOBQ = 'Q', Q contains the unitary matrix Q.	If JOBQ = 'N',
	       Q is not referenced.

       LDQ     (input) INTEGER
	       The leading dimension of the array Q. LDQ >= max(1,N) if JOBQ =
	       'Q'; LDQ >= 1 otherwise.

       IWORK   (workspace) INTEGER array, dimension (N)

       RWORK   (workspace) REAL array, dimension (2*N)

       TAU     (workspace) COMPLEX array, dimension (N)

       WORK    (workspace) COMPLEX array, dimension (max(3*N,M,P))

       INFO    (output) INTEGER
	       = 0:  successful exit
	       < 0:  if INFO = -i, the i-th argument had an illegal value.

FURTHER DETAILS
       The  subroutine	uses LAPACK subroutine CGEQPF for the QR factorization
       with column pivoting to detect the effective numerical rank  of	the  a
       matrix. It may be replaced by a better rank determination strategy.

LAPACK version 3.0		 15 June 2000			     CGGSVP(l)
[top]

List of man pages available for YellowDog

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net