SRC/sormrz.f(3)

✨ NAME ✨

okay bestie, welcome to the SRC/sormrz.f man page from the LAPACK Library Functions Manual. this is the glow-up guide to SORMRZ, and we're gonna get into it. πŸ’…

✨ SYNOPSIS ✨

✨ Functions/Subroutines ✨

   Functions/Subroutines
       subroutine sormrz (side, trans, m, n, k, l, a, lda, tau, c, ldc, work,
           lwork, info)
           SORMRZ

and the star of the show: SORMRZ πŸ‘‘

✨ Function/Subroutine Documentation ✨

   subroutine sormrz (character side, character trans, integer m, integer n,
       integer k, integer l, real, dimension( lda, * ) a, integer lda, real,
       dimension( * ) tau, real, dimension( ldc, * ) c, integer ldc, real,
       dimension( * ) work, integer lwork, integer info)
       SORMRZ

✨ Purpose: ✨

           !>
           !> SORMRZ 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)
           !>
           !> as returned by STZRZF. Q is of order M if SIDE = 'L' and of order N
           !> if SIDE = 'R'.
           !>

✨ Parameters ✨

  • SIDE β€” it's a CHARACTER*1, bestie. = 'L': apply Q or QT from the Left; = 'R': apply Q or QT from the Right. πŸ’…
  • TRANS β€” another CHARACTER*1. = 'N': No transpose, apply Q; = 'T': Transpose, apply Q**T. so iconic. ✨
  • M β€” INTEGER. the number of rows of the matrix C. M >= 0. no cap. πŸ”₯
  • N β€” INTEGER. the number of columns of the matrix C. N >= 0. periodt. πŸ’œ
  • K β€” INTEGER. the number of elementary reflectors whose product defines the matrix Q. if SIDE = 'L', M >= K >= 0; if SIDE = 'R', N >= K >= 0. 🫢
  • L β€” INTEGER. the number of columns of the matrix A containing the meaningful part of the Householder reflectors. if SIDE = 'L', M >= L >= 0, if SIDE = 'R', N >= L >= 0. πŸ’–
  • A β€” REAL array, dimension (LDA,M) if SIDE = 'L', or (LDA,N) if SIDE = 'R'. the i-th row must contain the vector which defines the elementary reflector H(i), for i = 1,2,...,k, as returned by STZRZF in the last k rows of its array argument A. A is modified by the routine but restored on exit. ngl, that's a lot but we love it. 🌸
  • LDA β€” INTEGER. the leading dimension of the array A. LDA >= max(1,K). slay. πŸ‘‘
  • TAU β€” REAL array, dimension (K). TAU(i) must contain the scalar factor of the elementary reflector H(i), as returned by STZRZF. πŸ’…
  • C β€” REAL array, dimension (LDC,N). on entry, the M-by-N matrix C. on exit, C is overwritten by Q*C or Q**H*C or C*Q**H or C*Q. wait, Q**H? that's conjugate transpose energy. πŸ’€
  • LDC β€” INTEGER. the leading dimension of the array C. LDC >= max(1,M). periodt. ✨
  • WORK β€” REAL array, dimension (MAX(1,LWORK)). on exit, if INFO = 0, WORK(1) returns the optimal LWORK. πŸŽ€
  • LWORK β€” INTEGER. the dimension of the array WORK. if SIDE = 'L', LWORK >= max(1,N); if SIDE = 'R', LWORK >= max(1,M). for good performance, LWORK should generally be larger. 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. lowkey important. πŸ¦‹
bestie, if you set LWORK = -1, it's a workspace query, so don't freak out if it only calculates the optimal size. πŸ’…
  • INFO β€” 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: ✨

A. Petitet, Computer Science Dept., Univ. of Tenn., Knoxville, USA

✨ Further Details: ✨

bestie, there's literally nothing here. it's giving empty. πŸ’€

Definition at line 185 of file sormrz.f.

✨ Author ✨

Generated automatically by Doxygen for LAPACK from the source code.


shoutout to LAPACK Version 3.12.0 and SRC/sormrz.f(3) for making this possible. periodt. ✨

πŸ“¦ where this page comes from