SRC/dgeql2.f(3)

🌸 NAME 🌸

okay bestie, you’re looking at SRC/dgeql2.f from the Library Functions Manual β€” manual name folded in near the top, as requested, and yes we’re being cute and correct. This page is all about dgeql2, a LAPACK subroutine situation. πŸ’…βœ¨

✨ SYNOPSIS ✨

Functions/Subroutines

  • subroutine dgeql2 (m, n, a, lda, tau, work, info) β€” DGEQL2 computes the QL factorization of a general rectangular matrix using an unblocked algorithm.

πŸŽ€ Function/Subroutine Documentation πŸŽ€

Here’s the full signature, copied exactly because we do not play with code:

subroutine dgeql2 (integer m, integer n, double precision, dimension( lda, *
       ) a, integer lda, double precision, dimension( * ) tau, double
       precision, dimension( * ) work, integer info)

and the vibe is: DGEQL2 computes the QL factorization of a general rectangular matrix using an unblocked algorithm. No cap. πŸ¦‹

πŸ’– Purpose πŸ’–

fr fr, here’s the purpose tea: DGEQL2 computes a QL factorization of a real m by n matrix A:

A = Q * L.

That’s it, that’s the whole purpose. βœ¨πŸ‘‘

🫢 Parameters 🫢

Okay, parameter parade, bestie β€” every single one is here:

  • 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 DOUBLE PRECISION array, dimension (LDA,N). On entry, the m by n matrix A. On exit, if m >= n, the lower triangle of the subarray A(m-n+1:m,1:n) contains the n by n lower triangular matrix L; if m <= n, the elements on and below the (n-m)-th superdiagonal contain the m by n lower trapezoidal matrix L; the remaining elements, with the array TAU, represent the orthogonal matrix Q as a product of elementary reflectors (see Further Details).
  • LDA β€” LDA is INTEGER. The leading dimension of the array A. LDA >= max(1,M).
  • TAU β€” TAU is DOUBLE PRECISION array, dimension (min(M,N)). The scalar factors of the elementary reflectors (see Further Details).
  • WORK β€” WORK is DOUBLE PRECISION array, dimension (N).
  • INFO β€” INFO is INTEGER. = 0: successful exit. < 0: if INFO = -i, the i-th argument had an illegal value.

🧚 Author 🧚

Shoutout to the author squad:

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

🌈 Further Details 🌈

Okay, this is the details section and it’s lowkey iconic:

The matrix Q is represented as a product of elementary reflectors:

Q = H(k) . . . H(2) H(1), where k = min(m,n).

Each H(i) has the form:

H(i) = I - tau * v * v**T

where tau is a real scalar, and v is a real vector with v(m-k+i+1:m) = 0 and v(m-k+i) = 1; v(1:m-k+i-1) is stored on exit in A(1:m-k+i-1,n-k+i), and tau in TAU(i).

Definition at line 122 of file dgeql2.f.

🧚 Author (Doxygen’s Version) 🧚

Generated automatically by Doxygen for LAPACK from the source code.


Bye bestie πŸ’–βœ¨ β€” this masterpiece is from LAPACK Version 3.12.0, page SRC/dgeql2.f(3). That’s the footer tea, and we’re out. πŸ«ΆπŸ’…

πŸ“¦ where this page comes from