geqr2(3)

🌸 geqr2(3) 🌸

okay so bestie, welcome to geqr2(3) from the Library Functions Manual β€” this is the level-2 QR factorization page and it's honestly kind of a whole vibe. ✨


πŸ’– NAME πŸ’–

geqr2 β€” geqr2: QR factor, level 2

like, that's the name, that's the function, that's the energy. geqr2 does QR factorization at level 2. no cap. πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

✨ Functions ✨

okay so there are four of these bad boys β€” one for each flavor of precision, and they all lowkey do the same iconic thing. here's the lineup, and yes you're gonna want to memorize the argument list because it never changes:

  • subroutine cgeqr2 (m, n, a, lda, tau, work, info) β€” CGEQR2 computes the QR factorization of a general rectangular matrix using an unblocked algorithm. πŸ’œ complex single precision, main character energy.
  • subroutine dgeqr2 (m, n, a, lda, tau, work, info) β€” DGEQR2 computes the QR factorization of a general rectangular matrix using an unblocked algorithm. πŸ’™ double precision, the reliable one.
  • subroutine sgeqr2 (m, n, a, lda, tau, work, info) β€” SGEQR2 computes the QR factorization of a general rectangular matrix using an unblocked algorithm. πŸ’š single precision, fast and cute.
  • subroutine zgeqr2 (m, n, a, lda, tau, work, info) β€” ZGEQR2 computes the QR factorization of a general rectangular matrix using an unblocked algorithm. πŸ’– complex double precision, literally royalty. πŸ‘‘
ngl the only thing that changes between them is the type of a, tau, and work β€” m, n, lda, and info stay the same everywhere. iykyk.

🌈 Detailed Description 🌈

...and that's where part 1 leaves us, bestie β€” the details are still coming, don't go anywhere 🫢

🌟 FUNCTION DOCUMENTATION 🌟

okay bestie, buckle up πŸ’… because this page is literally a four-for-one. Same routine, four different data types β€” it's giving "the squad all wore matching outfits but in different colors" energy. Let's go one by one ✨


πŸ¦‹ cgeqr2 β€” the complex single-precision one πŸ¦‹

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

CGEQR2 computes the QR factorization of a general rectangular matrix using an unblocked algorithm. no cap, that's the whole vibe 🫢

πŸŽ€ Purpose

CGEQR2 computes a QR factorization of a complex m-by-n matrix A:

A = Q * ( R ),
         ( 0 )

where:

  • Q is a m-by-m orthogonal matrix;
  • R is an upper-triangular n-by-n matrix;
  • 0 is a (m-n)-by-n zero matrix, if m > n.

🌸 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 unitary 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). 🚨 respect the constraint fr fr
  • 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 (N).
  • 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.

πŸ”₯ 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**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), and tau in TAU(i). 🧚

Definition at line 129 of file cgeqr2.f. β€” bestie it's literally right there πŸ“

πŸ“ dgeqr2 β€” the double-precision real one πŸ“

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

DGEQR2 computes the QR factorization of a general rectangular matrix using an unblocked algorithm. same energy, double the precision 😌✨

πŸŽ€ Purpose

DGEQR2 computes a QR factorization of a real m-by-n matrix A:

A = Q * ( R ),
         ( 0 )

where:

  • Q is a m-by-m orthogonal matrix;
  • R is an upper-triangular n-by-n matrix;
  • 0 is a (m-n)-by-n zero matrix, if m > n.

🌸 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 DOUBLE PRECISION 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 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

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

πŸ”₯ 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**T

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). 🧚

Definition at line 129 of file dgeqr2.f. β€” iconic πŸ“

🌈 sgeqr2 β€” the single-precision real one 🌈

subroutine sgeqr2 (integer m, integer n, real, dimension( lda, * ) a,
    integer lda, real, dimension( * ) tau, real, dimension( * ) work,
    integer info)

SGEQR2 computes the QR factorization of a general rectangular matrix using an unblocked algorithm. yes it's the same sentence again, she's consistent, we stan πŸ’…

πŸŽ€ Purpose

SGEQR2 computes a QR factorization of a real m-by-n matrix A:

A = Q * ( R ),
         ( 0 )

where:

  • Q is a m-by-m orthogonal matrix;
  • R is an upper-triangular n-by-n matrix;
  • 0 is a (m-n)-by-n zero matrix, if m > n.

🌸 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 REAL 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 elementary reflectors (see Further Details). πŸ‘€
  • LDA β€” LDA is INTEGER. The leading dimension of the array A. LDA >= max(1,M). 🚨
  • TAU β€” TAU is REAL array, dimension (min(M,N)). The scalar factors of the elementary reflectors (see Further Details).
  • WORK β€” WORK is REAL array, dimension (N).
  • 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.

πŸ”₯ 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**T

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). 🧚

Definition at line 129 of file sgeqr2.f. β€” periodt πŸ“

πŸ’œ zgeqr2 β€” the complex*16 one, the main character πŸ’œ

subroutine zgeqr2 (integer m, integer n, complex*16, dimension( lda, * ) a,
    integer lda, complex*16, dimension( * ) tau, complex*16, dimension( * )
    work, integer info)

ZGEQR2 computes the QR factorization of a general rectangular matrix using an unblocked algorithm. she's giving double-complex, she's giving range, she ATE πŸ”₯

πŸŽ€ Purpose

ZGEQR2 computes a QR factorization of a complex m-by-n matrix A:

A = Q * ( R ),
         ( 0 )

where:

  • Q is a m-by-m orthogonal matrix;
  • R is an upper-triangular n-by-n matrix;
  • 0 is a (m-n)-by-n zero matrix, if m > n.

🌸 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*16 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 unitary 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 COMPLEX*16 array, dimension (min(M,N)). The scalar factors of the elementary reflectors (see Further Details).
  • WORK β€” WORK is COMPLEX*16 array, dimension (N).
  • 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.

πŸ”₯ 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**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), and tau in TAU(i). 🧚

Definition at line 129 of file zgeqr2.f. β€” and that's the last one, we did it bestie πŸ₯ΉπŸ“

🫢 Author (the meta one)

Generated automatically by Doxygen for LAPACK from the source code. πŸ€–βœ¨ (yes, the docs have their own author line, it's very "credit where credit is due")


and that's the whole page, bestie πŸ’– you officially know all four flavors of geqr2 β€” every parameter, every constraint, every reflector, every tau. go forth and factorize responsibly πŸŒΈπŸ‘‘

this cutie little page is from LAPACK, Version 3.12.0, dated geqr2(3) β€” mwah, thanks for reading, love u, bye πŸŽ€πŸ’œ

πŸ“¦ where this page comes from