SCKGQR(3)

πŸ“¦ version 3.12.0, in opensuse-leap 16.0

πŸ’… SCKGQR(3) β€” like, the Library Functions Manual one, bestie ✨

Okay so real talk, this page lives at /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/TESTING/EIG/sckgqr.f and it's a Fortran thing from LAPACK, so buckle up πŸŽ€


🌸 NAME 🌸

/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/TESTING/EIG/sckgqr.f

Yeah. That's the whole name. It's giving "my parents named me after the family law firm" 😭 but we move.


✨ SYNOPSIS ✨

Functions/Subroutines

subroutine SCKGQR (nm, mval, np, pval, nn, nval, nmats, iseed, thresh,
    nmax, a, af, aq, ar, taua, b, bf, bz, bt, bwk, taub, work, rwork,
    nin, nout, info)

SCKGQR. That's her. That's the whole subroutine 🫢


πŸ¦‹ Function/Subroutine Documentation πŸ¦‹

subroutine SCKGQR (integer nm, integer, dimension( * ) mval, integer np,
    integer, dimension( * ) pval, integer nn, integer, dimension( * ) nval,
    integer nmats, integer, dimension( 4 ) iseed, real thresh, integer nmax,
    real, dimension( * ) a, real, dimension( * ) af, real, dimension( * )
    aq, real, dimension( * ) ar, real, dimension( * ) taua, real, dimension(
    * ) b, real, dimension( * ) bf, real, dimension( * ) bz, real,
    dimension( * ) bt, real, dimension( * ) bwk, real, dimension( * ) taub,
    real, dimension( * ) work, real, dimension( * ) rwork, integer nin,
    integer nout, integer info)

SCKGQR πŸ‘‘

🎯 Purpose 🎯

No cap, SCKGQR tests two whole factorization situations:

  • SGGQRF: the GQR factorization, for an N-by-M matrix A and an N-by-P matrix B.
  • SGGRQF: the GRQ factorization, for an M-by-N matrix A and a P-by-N matrix B.

Like, it's the vibe-check machine for both of them πŸ’…


🧚 Parameters 🧚

  • NM β€” NM is INTEGER. It's how many values of M are chillin' inside the vector MVAL.
  • MVAL β€” MVAL is INTEGER array, dimension (NM). These are the values of the matrix row(column) dimension M. Yes bestie, row or column, depending on which factorization is on stage that day.
  • NP β€” NP is INTEGER. The number of values of P contained in the vector PVAL.
  • PVAL β€” PVAL is INTEGER array, dimension (NP). The values of the matrix row(column) dimension P.
  • NN β€” NN is INTEGER. The number of values of N contained in the vector NVAL.
  • NVAL β€” NVAL is INTEGER array, dimension (NN). The values of the matrix column(row) dimension N. (Notice how it flips the other way, iykyk ✨)
  • NMATS β€” NMATS is INTEGER. It's the number of matrix types to be tested for each combination of matrix dimensions. Plot twist time:
    • If NMATS >= NTYPES (where NTYPES is the maximum number of matrix types), then literally all the different types get generated for testing.
    • If NMATS < NTYPES, another input line gets read to grab the numbers of the matrix types to be used.

So like, sometimes she reads a whole extra line. Main character energy, honestly.

  • ISEED β€” ISEED is INTEGER array, dimension (4). On entry, this is the seed of the random number generator. Here's the tea though πŸ”₯:
    • The array elements should be between 0 and 4095, otherwise they get reduced mod 4096.
    • ISEED(4) must be odd. Non-negotiable.
    • On exit, it holds the next seed in the random number sequence after all the test matrices have been generated. Glow-up arc complete πŸ’«
  • THRESH β€” THRESH is REAL. The threshold value for the test ratios. A result gets included in the output file if RESULT >= THRESH. And if you're the kind of person who wants every single test ratio printed, use THRESH = 0. No filter, no gatekeeping πŸ™ˆ
  • NMAX β€” NMAX is INTEGER. The maximum value permitted for M or N, used in dimensioning the work arrays. She's the ceiling, fr.
  • A β€” A is REAL array, dimension (NMAX*NMAX).
  • AF β€” AF is REAL array, dimension (NMAX*NMAX).
  • AQ β€” AQ is REAL array, dimension (NMAX*NMAX).
  • AR β€” AR is REAL array, dimension (NMAX*NMAX).
  • TAUA β€” TAUA is REAL array, dimension (NMAX).
  • B β€” B is REAL array, dimension (NMAX*NMAX).
  • BF β€” BF is REAL array, dimension (NMAX*NMAX).
  • BZ β€” BZ is REAL array, dimension (NMAX*NMAX).
  • BT β€” BT is REAL array, dimension (NMAX*NMAX).
  • BWK β€” BWK is REAL array, dimension (NMAX*NMAX).
  • TAUB β€” TAUB is REAL array, dimension (NMAX).
  • WORK β€” WORK is REAL array, dimension (NMAX*NMAX).
  • RWORK β€” RWORK is REAL array, dimension (NMAX).
  • NIN β€” NIN is INTEGER. The unit number for input. Where the tea gets read from β˜•
  • NOUT β€” NOUT is INTEGER. The unit number for output. Where the tea gets spilled πŸ“
  • INFO β€” INFO is INTEGER:
    • = 0 : successful exit. slay.
    • > 0 : if SLATMS returns an error code, the absolute value of it is returned. So like, a positive INFO means something went sideways and we're reporting it back with the sign stripped off 😭

πŸ‘‘ Author πŸ‘‘

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

The whole squad showed up for this one 🫢

πŸ“Œ Definition at line 207 of file sckgqr.f. πŸ“Œ


🌈 Author 🌈

Generated automatically by Doxygen for LAPACK from the source code. Not a human, just ✨ automation doing its thing ✨


ngl bestie, if you got all the way down here you're officially a LAPACK girlie now. Wear it with pride πŸ’…

kisses and compiler optimizations β€” this was LAPACK, Version 3.12.0, dated /home/abui...IG/sckgqr.f(3), from the Library Functions Manual (3) section πŸŽ€πŸ¦‹πŸ’–

πŸ“¦ where this page comes from