TESTING/EIG/zgqrts.f(3)

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

πŸ’… TESTING/EIG/zgqrts.f

okay so this page comes from the Library Functions Manual, and the title is literally TESTING/EIG/zgqrts.f β€” bestie, we are deep in LAPACK testing land and it’s giving subroutine-documentation realness ✨

🌸 NAME

TESTING/EIG/zgqrts.f

πŸ“œ SYNOPSIS

🧚 Functions/Subroutines

subroutine zgqrts (n, m, p, a, af, q, r, lda, taua, b, bf, z, t, bwk,
    ldb, taub, work, lwork, rwork, result)
    ZGQRTS

πŸ“š Function/Subroutine Documentation

🧬 subroutine zgqrts

subroutine zgqrts (integer n, integer m, integer p, complex*16, dimension(
    lda, * ) a, complex*16, dimension( lda, * ) af, complex*16, dimension(
    lda, * ) q, complex*16, dimension( lda, * ) r, integer lda, complex*16,
    dimension( * ) taua, complex*16, dimension( ldb, * ) b, complex*16,
    dimension( ldb, * ) bf, complex*16, dimension( ldb, * ) z, complex*16,
    dimension( ldb, * ) t, complex*16, dimension( ldb, * ) bwk, integer ldb,
    complex*16, dimension( * ) taub, complex*16, dimension( lwork ) work,
    integer lwork, double precision, dimension( * ) rwork, double precision,
    dimension( 4 ) result)
    ZGQRTS

🎯 Purpose

okay so ZGQRTS tests ZGGQRF, 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. periodt πŸ’–

🧾 Parameters

  • N β€” N is INTEGER. The number of rows of the matrices A and B. N >= 0.
  • M β€” M is INTEGER. The number of columns of the matrix A. M >= 0.
  • P β€” P is INTEGER. The number of columns of the matrix B. P >= 0.
  • A β€” A is COMPLEX*16 array, dimension (LDA,M). The N-by-M matrix A.
  • AF β€” AF is COMPLEX*16 array, dimension (LDA,N). Details of the GQR factorization of A and B, as returned by ZGGQRF, see CGGQRF for further details.
  • Q β€” Q is COMPLEX*16 array, dimension (LDA,N). The M-by-M unitary matrix Q.
  • R β€” R is COMPLEX*16 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*16 array, dimension (min(M,N)). The scalar factors of the elementary reflectors, as returned by ZGGQRF.
  • B β€” B is COMPLEX*16 array, dimension (LDB,P). On entry, the N-by-P matrix A.
  • BF β€” BF is COMPLEX*16 array, dimension (LDB,N). Details of the GQR factorization of A and B, as returned by ZGGQRF, see CGGQRF for further details.
  • Z β€” Z is COMPLEX*16 array, dimension (LDB,P). The P-by-P unitary matrix Z.
  • T β€” T is COMPLEX*16 array, dimension (LDB,max(P,N)).
  • BWK β€” BWK is COMPLEX*16 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*16 array, dimension (min(P,N)). The scalar factors of the elementary reflectors, as returned by DGGRQF.
  • WORK β€” WORK is COMPLEX*16 array, dimension (LWORK).
  • LWORK β€” LWORK is INTEGER. The dimension of the array WORK, LWORK >= max(N,M,P)**2.
  • RWORK β€” RWORK is DOUBLE PRECISION array, dimension (max(N,M,P)).
  • RESULT β€” RESULT is DOUBLE PRECISION 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 )
vibe check: all those bounds are part of the lore β€” N >= 0, M >= 0, P >= 0, LDA >= max(M,N), LDB >= max(P,N), and LWORK >= max(N,M,P)**2. do not skip them πŸ’€

🫢 Author

  • Univ. of Tennessee
  • Univ. of California Berkeley
  • Univ. of Colorado Denver
  • NAG Ltd.

Definition at line 174 of file zgqrts.f.

πŸ› οΈ Author

Generated automatically by Doxygen for LAPACK from the source code.


okay bestie, that’s the whole page πŸ’– the auto-generated sign-off is: generated automatically by Doxygen for LAPACK from the source code; footer vibes are LAPACK Version 3.12.0 and TESTING/EIG/zgqrts.f(3) β€” slay, stay bounded, and read the test ratios 🫢✨

πŸ“¦ where this page comes from