SRC/dlaqps.f(3)

πŸ’– NAME πŸ’–

Okay bestie, this page is for SRC/dlaqps.f, and it lives in the Library Functions Manual β€” that’s the manual-name vibe folded in right at the top, no boring header line needed. Minimal. Iconic. πŸŽ€


✨ SYNOPSIS ✨

🌈 Functions/Subroutines 🌈

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

🧚 Function/Subroutine Documentation 🧚

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

DLAQPS computes a step of QR factorization with column pivoting of a real m-by-n matrix A by using BLAS level 3. That’s the short story, and the full tea is below. 🫢

🎯 Purpose 🎯

DLAQPS computes a step of QR factorization with column pivoting of a real 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.

πŸ‘€ Real talk: 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.

🧸 Parameters 🧸

  • M β€” M is INTEGER. It’s the number of rows of the matrix A. M >= 0.
  • N β€” N is INTEGER. It’s the number of columns of the matrix A. N >= 0.
  • OFFSET β€” OFFSET is INTEGER. It’s the number of rows of A that have been factorized in previous steps.
  • NB β€” NB is INTEGER. It’s the number of columns to factorize.
  • KB β€” KB is INTEGER. It’s the number of columns actually factorized.
  • A β€” A is a DOUBLE PRECISION array, dimension (LDA,N). On entry, it’s 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 not factorized. The rest of the matrix, block A(OFFSET+1:M,KB+1:N), has been updated.
  • LDA β€” LDA is INTEGER. It’s the leading dimension of the array A. LDA >= max(1,M).
  • JPVT β€” JPVT is an INTEGER array, dimension (N). The docs say: JPVT(I) = K <==> Column K of the full matrix A has been permuted into position I in AP.
  • TAU β€” TAU is a DOUBLE PRECISION array, dimension (KB). These are the scalar factors of the elementary reflectors.
  • VN1 β€” VN1 is a DOUBLE PRECISION array, dimension (N). It’s the vector with the partial column norms.
  • VN2 β€” VN2 is a DOUBLE PRECISION array, dimension (N). It’s the vector with the exact column norms.
  • AUXV β€” AUXV is a DOUBLE PRECISION array, dimension (NB). It’s an auxiliary vector.
  • F β€” F is a DOUBLE PRECISION array, dimension (LDF,NB). Matrix F**T = L*Y**T*A.
  • LDF β€” LDF is INTEGER. It’s 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 dlaqps.f.


πŸ“ Author πŸ“

Generated automatically by Doxygen for LAPACK from the source code.


πŸ’– That’s the whole page, bestie! The footer’s source/version energy is LAPACK Version 3.12.0, SRC/dlaqps.f(3) β€” and yes, we ate. Periodt. πŸ’…βœ¨

πŸ“¦ where this page comes from