SRC/dorgl2.f(3)
π
SRC/dorgl2.f β the dorgl2 one (LAPACK, bestie)
okay so real talk, this page is from the LAPACK manual, and it's a Fortran thing, so buckle up π
β¨ SYNOPSIS β¨
Functions/Subroutines π¦
subroutine dorgl2 (m, n, k, a, lda, tau, work, info)β literally the whole vibe, it'sDORGL2
πΈ Function/Subroutine Documentation πΈ
subroutine dorgl2 (integer m, integer n, integer k, double precision,
dimension( lda, * ) a, integer lda, double precision, dimension( * )
tau, double precision, dimension( * ) work, integer info)
DORGL2 π
π«Ά Purpose:
!>
!> DORGL2 generates an m by n real matrix Q with orthonormal rows,
!> which is defined as the first m rows of a product of k elementary
!> reflectors of order n
!>
!> Q = H(k) . . . H(2) H(1)
!>
!> as returned by DGELQF.
!>
so basically it builds Q for you β an m-by-n real matrix with orthonormal rows, defined as the first m rows of that product of k elementary reflectors of order n, exactly the way DGELQF hands them back to you. no cap, it's giving "I do the math so you don't have to" energy π
π Parameters
π M
!> M is INTEGER
!> The number of rows of the matrix Q. M >= 0.
!>
the row count of Q. constraint: M >= 0 β negative rows are not a thing, bestie π
π§ N
!> N is INTEGER
!> The number of columns of the matrix Q. N >= M.
!>
the column count of Q. constraint: N >= M β the columns gotta cover the rows, periodt.
β K
!> K is INTEGER
!> The number of elementary reflectors whose product defines the
!> matrix Q. M >= K >= 0.
!>
how many elementary reflectors are multiplying together to define Q. constraint: M >= K >= 0 β sandwich it between zero and M, okay? π₯ͺ
π¦ A
!> A is DOUBLE PRECISION array, dimension (LDA,N)
!> On entry, the i-th row must contain the vector which defines
!> the elementary reflector H(i), for i = 1,2,...,k, as returned
!> by DGELQF in the first k rows of its array argument A.
!> On exit, the m-by-n matrix Q.
!>
DOUBLE PRECISION array, dimension (LDA,N). on entry, row i has to contain the vector defining the elementary reflector H(i) for i = 1,2,...,k, exactly as DGELQF returns them in the first k rows of its array argument A. on exit? it's literally Q, the m-by-n matrix. glow-up complete β¨
π LDA
!> LDA is INTEGER
!> The first dimension of the array A. LDA >= max(1,M).
!>
the first dimension of A. constraint: LDA >= max(1,M) β don't try to be cute and shrink it, it will not slay π
π TAU
!> TAU is DOUBLE PRECISION array, dimension (K)
!> TAU(i) must contain the scalar factor of the elementary
!> reflector H(i), as returned by DGELQF.
!>
DOUBLE PRECISION array, dimension (K). TAU(i) must hold the scalar factor of the elementary reflector H(i), as returned by DGELQF. the little scalars behind the whole operation, iykyk π
π₯ WORK
!> WORK is DOUBLE PRECISION array, dimension (M)
!>
DOUBLE PRECISION array, dimension (M). that's it, that's the whole description β it's the workspace, it works, slay.
π INFO
!> INFO is INTEGER
!> = 0: successful exit
!> < 0: if INFO = -i, the i-th argument has an illegal value
!>
INTEGER, and here's the tea:
= 0β successful exit, we ate π< 0β ifINFO = -i, thei-th argument had an illegal value π
π§ Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 112 of file dorgl2.f. π
π Author (the meta one)
Generated automatically by Doxygen for LAPACK from the source code. yes, a robot wrote the page, and I'm just here to make it cute π€π
ngl, everything above is a spec β don't invent behaviour, just pass the right args and let DORGL2 cook π₯
and that's the whole page, bestie! this was LAPACK, Version 3.12.0, page SRC/dorgl2.f(3) β go forth and generate those orthonormal rows π
β¨π«Ά
π¦ 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