TESTING/EIG/cgsvts3.f(3)

πŸ“¦
version 3.12.1 Β· 3 versions
, in arch rolling

🌸 NAME 🌸

TESTING/EIG/cgsvts3.f β€” from the Library Functions Manual, bestie. This is the page for CGSVTS3, and it's giving β€œtest routine with a whole lot of arrays.” πŸ’…

πŸ¦‹ 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 πŸ’…

Full signature, exactly as written:

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: πŸŽ€

Okay so 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.

That's the whole purpose, and it ate. ✨

πŸ“ 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.


That's the page, bestie! 🌈 Footer vibes: LAPACK, Version 3.12.0, and the page title TESTING/EIG/cgsvts3.f(3). The original footer didn't print a date, so no fake date here β€” periodt. πŸ’–πŸŽ€

πŸ“¦ where this page comes from