table of contents
/home/abuild/rpmbuild/BUILD/lapack-3.12.0/TESTING/EIG/cgsvts3.f(3) | Library Functions Manual | /home/abuild/rpmbuild/BUILD/lapack-3.12.0/TESTING/EIG/cgsvts3.f(3) |
NAME¶
/home/abuild/rpmbuild/BUILD/lapack-3.12.0/TESTING/EIG/cgsvts3.f
SYNOPSIS¶
Functions/Subroutines¶
subroutine CGSVTS3 (m, p, n, a, af, lda, b, bf, ldb, u,
ldu, v, ldv, q, ldq, alpha, beta, r, ldr, iwork, work, lwork, rwork, result)
CGSVTS3
Function/Subroutine Documentation¶
subroutine CGSVTS3 (integer m, integer p, integer n, complex, dimension( lda, * ) a, complex, dimension( lda, * ) af, integer lda, complex, dimension( ldb, * ) b, complex, dimension( ldb, * ) bf, integer ldb, complex, dimension( ldu, * ) u, integer ldu, complex, dimension( ldv, * ) v, integer ldv, complex, dimension( ldq, * ) q, integer ldq, real, dimension( * ) alpha, real, dimension( * ) beta, complex, dimension( ldr, * ) r, integer ldr, integer, dimension( * ) iwork, complex, dimension( lwork ) work, integer lwork, real, dimension( * ) rwork, real, dimension( 6 ) result)¶
CGSVTS3
Purpose:
!> !> CGSVTS3 tests CGGSVD3, which computes the GSVD of an M-by-N matrix A !> and a P-by-N matrix B: !> U'*A*Q = D1*R and V'*B*Q = D2*R. !>
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,M) !> The M-by-N matrix A. !>
AF
!> AF is COMPLEX array, dimension (LDA,N) !> Details of the GSVD of A and B, as returned by CGGSVD3, !> see CGGSVD3 for further details. !>
LDA
!> LDA is INTEGER !> The leading dimension of the arrays A and AF. !> LDA >= max( 1,M ). !>
B
!> B is COMPLEX array, dimension (LDB,P) !> On entry, the P-by-N matrix B. !>
BF
!> BF is COMPLEX array, dimension (LDB,N) !> Details of the GSVD of A and B, as returned by CGGSVD3, !> see CGGSVD3 for further details. !>
LDB
!> LDB is INTEGER !> The leading dimension of the arrays B and BF. !> LDB >= max(1,P). !>
U
!> U is COMPLEX array, dimension(LDU,M) !> The M by M unitary matrix U. !>
LDU
!> LDU is INTEGER !> The leading dimension of the array U. LDU >= max(1,M). !>
V
!> V is COMPLEX array, dimension(LDV,M) !> The P by P unitary matrix V. !>
LDV
!> LDV is INTEGER !> The leading dimension of the array V. LDV >= max(1,P). !>
Q
!> Q is COMPLEX array, dimension(LDQ,N) !> The N by N unitary matrix Q. !>
LDQ
!> LDQ is INTEGER !> The leading dimension of the array Q. LDQ >= max(1,N). !>
ALPHA
!> ALPHA is REAL array, dimension (N) !>
BETA
!> BETA is REAL array, dimension (N) !> !> The generalized singular value pairs of A and B, the !> ``diagonal'' matrices D1 and D2 are constructed from !> ALPHA and BETA, see subroutine CGGSVD3 for details. !>
R
!> R is COMPLEX array, dimension(LDQ,N) !> The upper triangular matrix R. !>
LDR
!> LDR is INTEGER !> The leading dimension of the array R. LDR >= max(1,N). !>
IWORK
!> IWORK is INTEGER array, dimension (N) !>
WORK
!> WORK is COMPLEX array, dimension (LWORK) !>
LWORK
!> LWORK is INTEGER !> The dimension of the array WORK, !> LWORK >= max(M,P,N)*max(M,P,N). !>
RWORK
!> RWORK is REAL array, dimension (max(M,P,N)) !>
RESULT
!> RESULT is REAL array, dimension (6) !> The test ratios: !> RESULT(1) = norm( U'*A*Q - D1*R ) / ( MAX(M,N)*norm(A)*ULP) !> RESULT(2) = norm( V'*B*Q - D2*R ) / ( MAX(P,N)*norm(B)*ULP) !> RESULT(3) = norm( I - U'*U ) / ( M*ULP ) !> RESULT(4) = norm( I - V'*V ) / ( P*ULP ) !> RESULT(5) = norm( I - Q'*Q ) / ( N*ULP ) !> RESULT(6) = 0 if ALPHA is in decreasing order; !> = ULPINV otherwise. !>
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Definition at line 206 of file cgsvts3.f.
Author¶
Generated automatically by Doxygen for LAPACK from the source code.
Version 3.12.0 | LAPACK |