CGRQTS

   Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd..
   November 2006

Purpose

CGRQTS tests CGGRQF, which computes the GRQ factorization of an
M-by-N matrix A and a P-by-N matrix B: A = R*Q and B = Z*T*Q.

Arguments

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) COMPLEX array, dimension (LDA,N)
The M-by-N matrix A.
AF
(output) COMPLEX array, dimension (LDA,N)
Details of the GRQ factorization of A and B, as returned
by CGGRQF, see CGGRQF for further details.
Q
(output) COMPLEX array, dimension (LDA,N)
The N-by-N unitary matrix Q.
R
(workspace) COMPLEX array, dimension (LDA,MAX(M,N))
LDA
(input) INTEGER
The leading dimension of the arrays A, AF, R and Q.
LDA >= max(M,N).
TAUA
(output) COMPLEX array, dimension (min(M,N))
The scalar factors of the elementary reflectors, as returned
by SGGQRC.
B
(input) COMPLEX array, dimension (LDB,N)
On entry, the P-by-N matrix A.
BF
(output) COMPLEX array, dimension (LDB,N)
Details of the GQR factorization of A and B, as returned
by CGGRQF, see CGGRQF for further details.
Z
(output) REAL array, dimension (LDB,P)
The P-by-P unitary matrix Z.
T
(workspace) COMPLEX array, dimension (LDB,max(P,N))
BWK
(workspace) COMPLEX array, dimension (LDB,N)
LDB
(input) INTEGER
The leading dimension of the arrays B, BF, Z and T.
LDB >= max(P,N).
TAUB
(output) COMPLEX array, dimension (min(P,N))
The scalar factors of the elementary reflectors, as returned
by SGGRQF.
WORK
(workspace) COMPLEX array, dimension (LWORK)
LWORK
(input) INTEGER
The dimension of the array WORK, LWORK >= max(M,P,N)**2.
RWORK
(workspace) REAL array, dimension (M)
RESULT
(output) REAL array, dimension (4)
The test ratios:
  RESULT(1) = norm( R - A*Q' ) / ( MAX(M,N)*norm(A)*ULP)
  RESULT(2) = norm( T*Q - Z'*B ) / (MAX(P,N)*norm(B)*ULP)
  RESULT(3) = norm( I - Q'*Q ) / ( N*ULP )
  RESULT(4) = norm( I - Z'*Z ) / ( P*ULP )

Call Graph

Caller Graph