SORGTSQR(3)

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

πŸ¦‹ SORGTSQR(3) πŸ¦‹

okay so bestie, welcome to the LAPACK Library Functions Manual page for SORGTSQR. The header path is /home/abui.../sorgtsqr.f(3) β€” I'm folding it in up here instead of copying the whole header line like a boring NPC. 🫢

πŸŽ€ NAME πŸŽ€

/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/sorgtsqr.f β€” that's the source file this page is about. It's the SORGTSQR routine's home. πŸ’…

✨ SYNOPSIS ✨

🌈 Functions/Subroutines 🌈

  • subroutine SORGTSQR (m, n, mb, nb, a, lda, t, ldt, work, lwork, info) β€” SORGTSQR

πŸ’… Function/Subroutine Documentation πŸ’…

Here's the full declaration, no cap:

   subroutine SORGTSQR (integer m, integer n, integer mb, integer nb, real,
       dimension( lda, * ) a, integer lda, real, dimension( ldt, * ) t, integer
       ldt, real, dimension( * ) work, integer lwork, integer info)

This is the docs for SORGTSQR. 🫢

🧚 Purpose 🧚

okay so SORGTSQR generates an M-by-N real matrix Q_out with orthonormal columns. Those columns are the first N columns of a product of real orthogonal matrices of order M that are returned by SLATSQR. The vibe is literally:

Q_out = first_N_columns_of( Q(1)_in * Q(2)_in * ... * Q(k)_in ).

See the documentation for SLATSQR for the full lore. ✨

πŸ“ Parameters πŸ“

  • M β€” M is INTEGER. The number of rows of the matrix A. M >= 0.
  • N β€” N is INTEGER. The number of columns of the matrix A. M >= N >= 0.
  • MB β€” MB is INTEGER. The row block size used by SLATSQR to return arrays A and T. MB > N. (Note that if MB > M, then M is used instead of MB as the row block size).
  • NB β€” NB is INTEGER. The column block size used by SLATSQR to return arrays A and T. NB >= 1. (Note that if NB > N, then N is used instead of NB as the column block size).
  • A β€” A is REAL array, dimension (LDA,N).
    • On entry: The elements on and above the diagonal are not accessed. The elements below the diagonal represent the unit lower-trapezoidal blocked matrix V computed by SLATSQR that defines the input matrices Q_in(k) (ones on the diagonal are not stored) (same format as the output A below the diagonal in SLATSQR).
    • On exit: The array A contains an M-by-N orthonormal matrix Q_out, i.e the columns of A are orthogonal unit vectors.
  • LDA β€” LDA is INTEGER. The leading dimension of the array A. LDA >= max(1,M).
  • T β€” T is REAL array, dimension (LDT, N * NIRB) where:
NIRB = Number_of_input_row_blocks
     = MAX( 1, CEIL((M-N)/(MB-N)) )

Let:

NICB = Number_of_input_col_blocks
     = CEIL(N/NB)

The upper-triangular block reflectors used to define the input matrices Q_in(k), k=(1:NIRB*NICB). The block reflectors are stored in compact form in NIRB block reflector sequences. Each of NIRB block reflector sequences is stored in a larger NB-by-N column block of T and consists of NICB smaller NB-by-NB upper-triangular column blocks. (same format as the output T in SLATSQR).

  • LDT β€” LDT is INTEGER. The leading dimension of the array T. LDT >= max(1,min(NB1,N)).
  • WORK β€” (workspace) REAL array, dimension (MAX(2,LWORK)). On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
  • LWORK β€” LWORK is INTEGER. The dimension of the array WORK. LWORK >= (M+NB)*N. If LWORK = -1, then a workspace query is assumed. The routine only calculates the optimal size of the WORK array, returns this value as the first entry of the WORK array, and no error message related to LWORK is issued by XERBLA.
  • INFO β€” INFO is INTEGER.
    • = 0: successful exit
    • < 0: if INFO = -i, the i-th argument had an illegal value

πŸ‘‘ Author πŸ‘‘

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

🌸 Contributors: 🌸

  • November 2019, Igor Kozachenko, Computer Science Division, University of California, Berkeley

πŸ“Œ Definition at line 174 of file sorgtsqr.f. πŸ“Œ

πŸ‘‘ Author πŸ‘‘

Generated automatically by Doxygen for LAPACK from the source code.


okay bestie, that's the whole page πŸ’– The sign-off footer says LAPACK Version 3.12.0 and the path is /home/abui.../sorgtsqr.f(3). Periodt. 🫢✨

πŸ“¦ where this page comes from