SRC/sgemqrt.f(3)

πŸ¦‹ NAME

Okay so this page is SRC/sgemqrt.f, and it comes from the Library Functions Manual β€” yes bestie, it's Fortran linear algebra with main-character energy. πŸ’–

✨ SYNOPSIS

πŸŽ€ Functions/Subroutines

Here's the quick "who dis" call shape:

subroutine sgemqrt (side, trans, m, n, k, nb, v, ldv, t, ldt, c, ldc,
    work, info)
    SGEMQRT

🧚 Function/Subroutine Documentation

πŸ’… SGEMQRT

Full signature, exactly as printed, no cap:

subroutine sgemqrt (character side, character trans, integer m, integer n,
    integer k, integer nb, real, dimension( ldv, * ) v, integer ldv, real,
    dimension( ldt, * ) t, integer ldt, real, dimension( ldc, * ) c, integer
    ldc, real, dimension( * ) work, integer info)
    SGEMQRT

🌸 Purpose

The source comment lays out the whole matrix transformation situation like this:

!>
!> SGEMQRT overwrites the general real M-by-N matrix C with
!>
!>                 SIDE = 'L'     SIDE = 'R'
!> TRANS = 'N':      Q C            C Q
!> TRANS = 'T':   Q**T C            C Q**T
!>
!> where Q is a real orthogonal matrix defined as the product of K
!> elementary reflectors:
!>
!>       Q = H(1) H(2) . . . H(K) = I - V T V**T
!>
!> generated using the compact WY representation as returned by SGEQRT.
!>
!> Q is of order M if SIDE = 'L' and of order N  if SIDE = 'R'.
!>

πŸ’… Parameters

Okay, parameter by parameter, because we're not skipping a single one:

  • SIDE β€” SIDE is CHARACTER*1. = 'L': apply Q or QT from the Left; = 'R': apply Q or QT from the Right.
  • TRANS β€” TRANS is CHARACTER*1. = 'N': No transpose, apply Q; = 'T': Transpose, apply Q**T.
  • M β€” M is INTEGER. The number of rows of the matrix C. M >= 0.
  • N β€” N is INTEGER. The number of columns of the matrix C. N >= 0.
  • K β€” K is INTEGER. The number of elementary reflectors whose product defines the matrix Q. If SIDE = 'L', M >= K >= 0; if SIDE = 'R', N >= K >= 0.
  • NB β€” NB is INTEGER. The block size used for the storage of T. K >= NB >= 1. This must be the same value of NB used to generate T in SGEQRT.
  • V β€” V is REAL array, dimension (LDV,K). The i-th column must contain the vector which defines the elementary reflector H(i), for i = 1,2,...,k, as returned by SGEQRT in the first K columns of its array argument A.
  • LDV β€” LDV is INTEGER. The leading dimension of the array V. If SIDE = 'L', LDA >= max(1,M); if SIDE = 'R', LDA >= max(1,N).
  • T β€” T is REAL array, dimension (LDT,K). The upper triangular factors of the block reflectors as returned by SGEQRT, stored as a NB-by-N matrix.
  • LDT β€” LDT is INTEGER. The leading dimension of the array T. LDT >= NB.
  • C β€” C is REAL array, dimension (LDC,N). On entry, the M-by-N matrix C. On exit, C is overwritten by Q C, Q**T C, C Q**T or C Q.
  • LDC β€” LDC is INTEGER. The leading dimension of the array C. LDC >= max(1,M).
  • WORK β€” WORK is REAL array. The dimension of WORK is N*NB if SIDE = 'L', or M*NB if SIDE = 'R'.
  • 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.

Definition at line 166 of file sgemqrt.f.

🌈 Author

Generated automatically by Doxygen for LAPACK from the source code.


That's the whole page, bestie β€” LAPACK, Version 3.12.0, from SRC/sgemqrt.f(3). The footer doesn't print a separate date, so we're not inventing one; mwah πŸ’œβœ¨

πŸ“¦ where this page comes from