SRC/zlaqps.f(3)

πŸ’… SRC/zlaqps.f

okay bestie, welcome to the glow-up of a LAPACK subroutine πŸ’– this is SRC/zlaqps.f, living its best life in the Library Functions Manual. no cap, it's a whole vibe. let's get into it ✨


πŸ¦‹ SYNOPSIS πŸ¦‹

Functions/Subroutines

  • subroutine zlaqps (m, n, offset, nb, kb, a, lda, jpvt, tau, vn1, vn2, auxv, f, ldf) β€” ZLAQPS computes a step of QR factorization with column pivoting of a real m-by-n matrix A by using BLAS level 3.

πŸ‘‘ Function/Subroutine Documentation πŸ‘‘

subroutine zlaqps (integer m, integer n, integer offset, integer nb, integer
    kb, complex*16, dimension( lda, * ) a, integer lda, integer, dimension(
    * ) jpvt, complex*16, dimension( * ) tau, double precision, dimension( *
    ) vn1, double precision, dimension( * ) vn2, complex*16, dimension( * )
    auxv, complex*16, dimension( ldf, * ) f, integer ldf)

ZLAQPS computes a step of QR factorization with column pivoting of a real m-by-n matrix A by using BLAS level 3. fr fr, that's the whole gig 🫢

🌸 Purpose 🌸

!> !> ZLAQPS computes a step of QR factorization with column pivoting !> of a complex M-by-N matrix A by using Blas-3. It tries to factorize !> NB columns from A starting from the row OFFSET+1, and updates all !> of the matrix with Blas-3 xGEMM. !> !> In some cases, due to catastrophic cancellations, it cannot !> factorize NB columns. Hence, the actual number of factorized !> columns is returned in KB. !> !> Block A(1:OFFSET,1:N) is accordingly pivoted, but not factorized. !>

so like, it tries to factorize NB columns β€” and when catastrophic cancellations show up and ruin the party 😭, it just tells you how many it actually got done in KB. main character honesty, honestly.


✨ 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.
  • OFFSET β€” OFFSET is INTEGER, the number of rows of A that have been factorized in previous steps.
  • NB β€” NB is INTEGER, the number of columns to factorize.
  • KB β€” KB is INTEGER, the number of columns actually factorized. (the receipts πŸ’…)
  • A β€” A is COMPLEX*16 array, dimension (LDA,N). On entry, the M-by-N matrix A. On exit, block A(OFFSET+1:M,1:KB) is the triangular factor obtained and block A(1:OFFSET,1:N) has been accordingly pivoted, but no factorized. The rest of the matrix, block A(OFFSET+1:M,KB+1:N) has been updated.
  • LDA β€” LDA is INTEGER, the leading dimension of the array A. LDA >= max(1,M).
  • JPVT β€” JPVT is INTEGER array, dimension (N). JPVT(I) = K <==> Column K of the full matrix A has been permuted into position I in AP.
  • TAU β€” TAU is COMPLEX*16 array, dimension (KB), the scalar factors of the elementary reflectors.
  • VN1 β€” VN1 is DOUBLE PRECISION array, dimension (N), the vector with the partial column norms.
  • VN2 β€” VN2 is DOUBLE PRECISION array, dimension (N), the vector with the exact column norms. (the ✨accurate✨ queen)
  • AUXV β€” AUXV is COMPLEX*16 array, dimension (NB), auxiliary vector.
  • F β€” F is COMPLEX*16 array, dimension (LDF,NB), matrix F**H = L * Y**H * A.
  • LDF β€” LDF is INTEGER, the leading dimension of the array F. LDF >= max(1,N).

πŸŽ€ Author πŸŽ€

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

Contributors:

  • G. Quintana-Orti, Depto. de Informatica, Universidad Jaime I, Spain
  • X. Sun, Computer Science Dept., Duke University, USA
  • Partial column norm updating strategy modified on April 2011 Z. Drmac and Z. Bujanovic, Dept. of Mathematics, University of Zagreb, Croatia.

References:

LAPACK Working Note 176 πŸ“š

Definition at line 175 of file zlaqps.f.


πŸ’œ Author πŸ’œ

Generated automatically by Doxygen for LAPACK from the source code.


ok that's the whole page, no skips, no crumbs left behind πŸ“ every param, every bound, every contributor stayed. iykyk πŸ’…

and that's the tea, bestie β€” this beauty is from LAPACK, Version 3.12.0, dated the LAPACK release line, and it's giving timeless icon energy 😭πŸ”₯ go factorize something slay βœ¨πŸ¦‹πŸ‘‘

πŸ“¦ where this page comes from