/home/abui...L/cgeqrf.f(3)

๐Ÿ“ฆ version 3.12.0, in opensuse-leap 16.0

๐ŸŒธ CGEQRF(3) โ€” the left-looking Level 3 BLAS queen ๐Ÿ‘‘

okay bestie, so you found yourself on a <pink>Library Functions Manual</pink> page and it's a whole LAPACK situation. This one's the cgeqrf.f page, and the file it lives in is literally this whole dramatic path:

/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/VARIANTS/qr/LL/cgeqrf.f

anyway she's an icon, let's get into it ๐Ÿ’…


โœจ SYNOPSIS โœจ

Functions/Subroutines

  • subroutine CGEQRF (m, n, a, lda, tau, work, lwork, info) โ€” CGEQRF VARIANT: left-looking Level 3 BLAS version of the algorithm. ๐Ÿซถ

๐Ÿฆ‹ Function/Subroutine Documentation ๐Ÿฆ‹

subroutine CGEQRF (integer m, integer n, complex, dimension( lda, * ) a, integer lda, complex, dimension( * ) tau, complex, dimension( * ) work, integer lwork, integer info)

CGEQRF VARIANT: left-looking Level 3 BLAS version of the algorithm. no cap.

Purpose ๐Ÿ’–

CGEQRF computes a QR factorization of a complex M-by-N matrix A: A = Q * R. This is the left-looking Level 3 BLAS version of the algorithm.

bestie that's the whole plot: it takes your complex M-by-N matrix A and factorizes it into Q * R. and yes, this specific one is the left-looking Level 3 BLAS variant, which is the main character of this page ๐ŸŽ€

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. N >= 0.
  • A โ€” A is COMPLEX array, dimension (LDA,N). On entry, the M-by-N matrix A. On exit, the elements on and above the diagonal of the array contain the min(M,N)-by-N upper trapezoidal matrix R (R is upper triangular if m >= n); the elements below the diagonal, with the array TAU, represent the orthogonal matrix Q as a product of min(m,n) elementary reflectors (see Further Details). she contains multitudes honestly โœจ
  • LDA โ€” LDA is INTEGER. The leading dimension of the array A. LDA >= max(1,M).
  • TAU โ€” TAU is COMPLEX array, dimension (min(M,N)). The scalar factors of the elementary reflectors (see Further Details). ๐ŸŒธ
  • WORK โ€” WORK is COMPLEX array, dimension (MAX(1,LWORK)). On exit, if INFO = 0, WORK(1) returns the optimal LWORK. ๐Ÿ‘‘
  • LWORK โ€” LWORK is INTEGER.

The dimension of the array WORK. LWORK >= 1 if MIN(M,N) = 0, otherwise the dimension can be divided into three parts. three parts!! she's got sections!!

  1. The part for the triangular factor T. If the very last T is not bigger than any of the rest, then this part is NB x ceiling(K/NB), otherwise, NB x (K-NT), where K = min(M,N) and NT is the dimension of the very last T
  2. The part for the very last T when T is bigger than any of the rest T. The size of this part is NT x NT, where NT = K - ceiling ((K-NX)/NB) x NB, where K = min(M,N), NX is calculated by
NX = MAX( 0, ILAENV( 3, 'CGEQRF', ' ', M, N, -1, -1 ) )
  1. The part for dlarfb is of size max((N-M)*K, (N-M)*NB, K*NB, NB*NB)

So LWORK = part1 + part2 + part3 ๐Ÿงฎ math girlies rise

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.

Date ๐ŸŒธ

December 2016

Further Details โญ

The matrix Q is represented as a product of elementary reflectors Q = H(1) H(2) . . . H(k), where k = min(m,n). Each H(i) has the form H(i) = I - tau * v * v' where tau is a real scalar, and v is a real vector with v(1:i-1) = 0 and v(i) = 1; v(i+1:m) is stored on exit in A(i+1:m,i), and tau in TAU(i).

(yes it says real scalar and real vector right there in the source, we're just reporting what the page says, don't come for me ๐Ÿ™ˆ)


Definition at line 151 of file cgeqrf.f. ๐Ÿ”ฅ


๐Ÿ’œ Author ๐Ÿ’œ

Generated automatically by Doxygen for LAPACK from the source code.


and that's the whole page bestie, periodt. ๐Ÿฆ‹ This icon is from LAPACK, Version 3.12.0, and the page you just read is /home/abui...L/cgeqrf.f(3) โ€” go forth and factorize your QR, you've got this ๐Ÿ’–โœจ

๐Ÿ“ฆ where this page comes from