cgrqts.f3
Usage
Functions/Subroutines
subroutine cgrqts (m, p, n, a, af, q, r, lda, taua, b, bf, z, t, bwk, ldb, taub, work, lwork, rwork, result)
CGRQTS
Function/Subroutine Documentation
subroutine cgrqts (integer m, integer p, integer n, complex, dimension( lda, * ) a, complex, dimension( lda, * ) af, complex, dimension( lda, * ) q, complex, dimension( lda, * ) r, integer lda, complex, dimension( * ) taua, complex, dimension( ldb, * ) b, complex, dimension( ldb, * ) bf, complex, dimension( ldb, * ) z, complex, dimension( ldb, * ) t, complex, dimension( ldb, * ) bwk, integer ldb, complex, dimension( * ) taub, complex, dimension( lwork ) work, integer lwork, real, dimension( * ) rwork, real, dimension( 4 ) result)
CGRQTS
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. !>
Parameters
M
!> M is INTEGER !> The number of rows of the matrix A. M >= 0. !>
P
!> P is INTEGER !> The number of rows of the matrix B. P >= 0. !>
N
!> N is INTEGER !> The number of columns of the matrices A and B. N >= 0. !>
A
!> A is COMPLEX array, dimension (LDA,N) !> The M-by-N matrix A. !>
AF
!> AF is COMPLEX array, dimension (LDA,N) !> Details of the GRQ factorization of A and B, as returned !> by CGGRQF, see CGGRQF for further details. !>
Q
!> Q is COMPLEX array, dimension (LDA,N) !> The N-by-N unitary matrix Q. !>
R
!> R is COMPLEX array, dimension (LDA,MAX(M,N)) !>
LDA
!> LDA is INTEGER !> The leading dimension of the arrays A, AF, R and Q. !> LDA >= max(M,N). !>
TAUA
!> TAUA is COMPLEX array, dimension (min(M,N)) !> The scalar factors of the elementary reflectors, as returned !> by SGGQRC. !>
B
!> B is COMPLEX array, dimension (LDB,N) !> On entry, the P-by-N matrix A. !>
BF
!> BF is COMPLEX array, dimension (LDB,N) !> Details of the GQR factorization of A and B, as returned !> by CGGRQF, see CGGRQF for further details. !>
Z
!> Z is REAL array, dimension (LDB,P) !> The P-by-P unitary matrix Z. !>
T
!> T is COMPLEX array, dimension (LDB,max(P,N)) !>
BWK
!> BWK is COMPLEX array, dimension (LDB,N) !>
LDB
!> LDB is INTEGER !> The leading dimension of the arrays B, BF, Z and T. !> LDB >= max(P,N). !>
TAUB
!> TAUB is COMPLEX array, dimension (min(P,N)) !> The scalar factors of the elementary reflectors, as returned !> by SGGRQF. !>
WORK
!> WORK is COMPLEX array, dimension (LWORK) !>
LWORK
!> LWORK is INTEGER !> The dimension of the array WORK, LWORK >= max(M,P,N)**2. !>
RWORK
!> RWORK is REAL array, dimension (M) !>
RESULT
!> RESULT is 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 ) !>
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Definition at line 174 of file cgrqts.f.