CGQRTS

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

Purpose

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

Arguments

N
(input) INTEGER
The number of rows of the matrices A and B.  N >= 0.
M
(input) INTEGER
The number of columns of the matrix A.  M >= 0.
P
(input) INTEGER
The number of columns of the matrix B.  P >= 0.
A
(input) COMPLEX array, dimension (LDA,M)
The N-by-M matrix A.
AF
(output) COMPLEX array, dimension (LDA,N)
Details of the GQR factorization of A and B, as returned
by CGGQRF, see CGGQRF for further details.
Q
(output) COMPLEX array, dimension (LDA,N)
The M-by-M 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 CGGQRF.
B
(input) COMPLEX array, dimension (LDB,P)
On entry, the N-by-P matrix A.
BF
(output) COMPLEX array, dimension (LDB,N)
Details of the GQR factorization of A and B, as returned
by CGGQRF, see CGGQRF for further details.
Z
(output) COMPLEX 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(N,M,P)**2.
RWORK
(workspace) REAL array, dimension (max(N,M,P))
RESULT
(output) REAL array, dimension (4)
The test ratios:
  RESULT(1) = norm( R - Q'*A ) / ( MAX(M,N)*norm(A)*ULP)
  RESULT(2) = norm( T*Z - Q'*B ) / (MAX(P,N)*norm(B)*ULP)
  RESULT(3) = norm( I - Q'*Q ) / ( M*ULP )
  RESULT(4) = norm( I - Z'*Z ) / ( P*ULP )

Call Graph

Caller Graph