SRC/DEPRECATED/zgeqpf.f(3)
π SRC/DEPRECATED/zgeqpf.f π
okay bestie, so this page lives in the LAPACK Library Functions Manual, and it's the glow-up guide for SRC/DEPRECATED/zgeqpf.f β yes, the DEPRECATED folder, we'll get to that, don't @ me yet π
β¨ SYNOPSIS β¨
Functions/Subroutines
subroutine zgeqpf (m, n, a, lda, jpvt, tau, work, rwork, info)β ZGEQPF
πΈ Function/Subroutine Documentation πΈ
subroutine zgeqpf (integer m, integer n, complex*16, dimension( lda, * ) a,
integer lda, integer, dimension( * ) jpvt, complex*16, dimension( * )
tau, complex*16, dimension( * ) work, double precision, dimension( * )
rwork, integer info)
ZGEQPF π
π Purpose π
This routine is deprecated and has been replaced by routine ZGEQP3.
not me telling you it's deprecated in the very first line π okay but fr, it's still iconic:
ZGEQPF computes a QR factorization with column pivoting of a complex M-by-N matrix A: A*P = Q*R. slay π
π¦ Parameters π¦
MβMisINTEGER. the number of rows of the matrix A, andM >= 0. no negatives, bestie, we don't do that here.NβNisINTEGER. the number of columns of the matrix A, andN >= 0. same energy.AβAisCOMPLEX*16array, dimension(LDA,N). On entry, the M-by-N matrix A. On exit, the upper triangle of the array contains themin(M,N)-by-N upper triangular matrix R; the elements below the diagonal, together with the arrayTAU, represent the unitary matrix Q as a product ofmin(m,n)elementary reflectors. it's giving before-and-after transformation β¨LDAβLDAisINTEGER. the leading dimension of the array A, andLDA >= max(1,M). respect the constraint pls π«ΆJPVTβJPVTisINTEGERarray, dimension(N). On entry, ifJPVT(i) .ne. 0, the i-th column of A is permuted to the front ofA*P(a leading column); ifJPVT(i) = 0, the i-th column of A is a free column. On exit, ifJPVT(i) = k, then the i-th column ofA*Pwas the k-th column of A. the way it keeps receipts of every column's whole journey π iconicTAUβTAUisCOMPLEX*16array, dimension(min(M,N)). the scalar factors of the elementary reflectors.WORKβWORKisCOMPLEX*16array, dimension(N).RWORKβRWORKisDOUBLE PRECISIONarray, dimension(2*N).INFOβINFOisINTEGER.= 0: successful exit π< 0: ifINFO = -i, the i-th argument had an illegal value π
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
the whole squad showed up for this one π«Ά
π Further Details: π
The matrix Q is represented as a product of elementary reflectors
Q = H(1) H(2) . . . H(n)
Each H(i) has the form
H = I - tau * v * v**H
where tau is a complex scalar, and v is a complex 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).
The matrix P is represented in jpvt as follows: If
jpvt(j) = i
then the jth column of P is the ith canonical unit vector. main character unit vector energy, honestly π
Partial column norm updating strategy modified by
Z. Drmac and Z. Bujanovic, Dept. of Mathematics,
University of Zagreb, Croatia.
-- April 2011 --
For more details see LAPACK Working Note 176. iykyk π§
Definition at line 147 of file zgeqpf.f.
β Author β
Generated automatically by Doxygen for LAPACK from the source code. (the robots did this one, not me π)
ok so real talk:ZGEQPFis deprecated β the manpage says it plainly β and it's been replaced by routineZGEQP3. if you're writing new code, go hang out withZGEQP3instead. no cap. π
mwah, that's the whole page bestie π this cutie came from LAPACK Version 3.12.0, dated SRC/DEPRECATED/zgeqpf.f(3) β go forth and pivot those columns π¦β¨
π¦ where this page comes from
- arch rolling: lapack-doc 3.12.1-2 Β· custom
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms