/home/abui.../zgemqrt.f(3)

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

πŸ’– NAME πŸ’–

/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/zgemqrt.f β€” bestie, that's the whole name, it's literally just the source file path and we're rolling with it ✨


πŸŽ€ SYNOPSIS πŸŽ€

Functions/Subroutines

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

ZGEMQRT β€” that's her, that's the icon πŸ‘‘


🌸 Function/Subroutine Documentation 🌸

subroutine ZGEMQRT (character side, character trans, integer m, integer n,
    integer k, integer nb, complex*16, dimension( ldv, * ) v, integer ldv,
    complex*16, dimension( ldt, * ) t, integer ldt, complex*16, dimension(
    ldc, * ) c, integer ldc, complex*16, dimension( * ) work, integer info)

✨ Purpose ✨

okay so here's the tea πŸ«– β€” ZGEMQRT overwrites the general complex M-by-N matrix C with:

                SIDE = 'L'     SIDE = 'R'
TRANS = 'N':      Q C            C Q
TRANS = 'C':    Q**H C            C Q**H

where Q is a complex orthogonal matrix defined as the product of K elementary reflectors:

      Q = H(1) H(2) . . . H(K) = I - V T V**H

generated using the compact WY representation as returned by ZGEQRT. no cap, that's the whole vibe πŸ’…

Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'. periodt.


πŸ¦‹ Parameters πŸ¦‹

  • SIDE β€” it's a CHARACTER*1, bestie. = 'L': apply Q or Q**H from the Left; = 'R': apply Q or Q**H from the Right. Left or right, she does both πŸ‘‘
  • TRANS β€” also a CHARACTER*1. = 'N': No transpose, apply Q; = 'C': Conjugate transpose, apply Q**H. pick your fighter πŸ₯Š
  • M β€” INTEGER, the number of rows of the matrix C. M >= 0. rows girlie 🌈
  • N β€” INTEGER, the number of columns of the matrix C. N >= 0. columns girlie 🌸
  • 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. the reflector count, iykyk πŸ”₯
  • NB β€” INTEGER, the block size used for the storage of T. K >= NB >= 1. 🚨 and listen β€” this must be the same value of NB used to generate T in ZGEQRT. don't be out here mixing numbers, fr fr 😭
  • V β€” COMPLEX*16 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 ZGEQRT in the first K columns of its array argument A. the vectors live here πŸ’œ
  • LDV β€” INTEGER, the leading dimension of the array V. If SIDE = 'L', LDA >= max(1,M); if SIDE = 'R', LDA >= max(1,N). ⭐
  • T β€” COMPLEX*16 array, dimension (LDT,K). The upper triangular factors of the block reflectors as returned by ZGEQRT, stored as a NB-by-N matrix. the triangular factor storage situation πŸŽ€
  • LDT β€” INTEGER, the leading dimension of the array T. LDT >= NB. 🧚
  • C β€” COMPLEX*16 array, dimension (LDC,N). On entry, the M-by-N matrix C. On exit, C is overwritten by Q C, Q**H C, C Q**H or C Q. she gets fully replaced, no survivors πŸ’€ (jk, it's fine, that's just the job)
  • LDC β€” INTEGER, the leading dimension of the array C. LDC >= max(1,M). πŸ“
  • WORK β€” COMPLEX*16 array. The dimension of WORK is N*NB if SIDE = 'L', or M*NB if SIDE = 'R'. size her correctly please πŸ™ˆ
  • INFO β€” INTEGER. = 0: successful exit πŸŽ‰ β€” < 0: if INFO = -i, the i-th argument had an illegal value. caught in 4k, argument number i said something wrong 😭

πŸ‘‘ Author πŸ‘‘

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

Definition at line 166 of file zgemqrt.f. πŸ“


🧚 Author 🧚

Generated automatically by Doxygen for LAPACK from the source code. (yes the robot wrote the docs about the docs, iconic behaviour honestly πŸ€–βœ¨)


and that's the whole page bestie β€” LAPACK, Version 3.12.0, from the file /home/abui.../zgemqrt.f(3) πŸ’…πŸ«Ά go forth and multiply your reflectors responsibly, mwah πŸŽ€

πŸ“¦ where this page comes from