DGGSVP man page on IRIX

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



DGGSVP(3F)							    DGGSVP(3F)

NAME
     DGGSVP - compute orthogonal 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 DGGSVP( JOBU, JOBV, JOBQ, M, P, N, A, LDA, B, LDB, TOLA, TOLB,
			K, L, U, LDU, V, LDV, Q, LDQ, IWORK, TAU, WORK, INFO )

	 CHARACTER	JOBQ, JOBU, JOBV

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

	 DOUBLE		PRECISION TOLA, TOLB

	 INTEGER	IWORK( * )

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

PURPOSE
     DGGSVP computes orthogonal matrices U, V and Q such that
		   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 transpose of Z.

     This decomposition is the preprocessing step for computing the
     Generalized Singular Value Decomposition (GSVD), see subroutine DGGSVD.

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

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

									Page 1

DGGSVP(3F)							    DGGSVP(3F)

     JOBQ    (input) CHARACTER*1
	     = 'Q':  Orthogonal 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) DOUBLE PRECISION array, dimension (LDA,N)
	     On entry, the M-by-N matrix A.  On exit, A contains the
	     triangular (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) DOUBLE PRECISION array, dimension (LDB,N)
	     On entry, the P-by-N matrix B.  On exit, B contains the
	     triangular matrix described in the Purpose section.

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

     TOLA    (input) DOUBLE PRECISION
	     TOLB    (input) DOUBLE PRECISION TOLA and TOLB are the thresholds
	     to determine the effective numerical rank of matrix B and a
	     subblock of A. 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 errors of
	     the decomposition.

     K	     (output) INTEGER
	     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')'.

     U	     (output) DOUBLE PRECISION array, dimension (LDU,M)
	     If JOBU = 'U', U contains the orthogonal 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) DOUBLE PRECISION array, dimension (LDV,M)
	     If JOBV = 'V', V contains the orthogonal matrix V.	 If JOBV =
	     'N', V is not referenced.

									Page 2

DGGSVP(3F)							    DGGSVP(3F)

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

     Q	     (output) DOUBLE PRECISION array, dimension (LDQ,N)
	     If JOBQ = 'Q', Q contains the orthogonal 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)

     TAU     (workspace) DOUBLE PRECISION array, dimension (N)

     WORK    (workspace) DOUBLE PRECISION 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 DGEQPF 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.

									Page 3

[top]

List of man pages available for IRIX

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