SRC/sgetrf2.f(3)
β¨ SRC/sgetrf2.f(3) β¨ β like, the whole LAPACK Library Functions Manual vibe π
okay bestie, so this one is SRC/sgetrf2.f(3), a manual page from the LAPACK Library Functions Manual, and it's literally the glow-up doc for one very recursive little Fortran subroutine. buckle up π
πΈ NAME πΈ
SRC/sgetrf2.f β yes, that's the whole name, she's lowkey mysterious like that π¦
π«Ά SYNOPSIS π«Ά
Functions/Subroutines
recursive subroutine sgetrf2 (m, n, a, lda, ipiv, info)β SGETRF2, that's her π
π Function/Subroutine Documentation π
recursive subroutine sgetrf2 (integer m, integer n, real, dimension( lda, * ) a, integer lda, integer, dimension( * ) ipiv, integer info)
SGETRF2 β¨ (yes the recursion in the signature is real, she contains multitudes)
π― Purpose
SGETRF2 computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges.
the factorization has the form:
A = P * L * U
where P is a permutation matrix, L is lower triangular with unit diagonal elements (lower trapezoidal if m > n), and U is upper triangular (upper trapezoidal if m < n). no cap, that's the whole deal π
this is the recursive version of the algorithm. it divides the matrix into four submatrices, like so:
[ A11 | A12 ] where A11 is n1 by n1 and A22 is n2 by n2
A = [ -----|----- ] with n1 = min(m,n)/2
[ A21 | A22 ] n2 = n-n1
and then, bestie, it does this:
[ A11 ]
The subroutine calls itself to factor [ --- ],
[ A12 ]
[ A12 ]
do the swaps on [ --- ], solve A12, update A22,
[ A22 ]
then calls itself to factor A22 and do the swaps on A21.
she literally calls herself. main character energy fr fr ππ₯
π 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 to be factored. on exit, the factors L and U from the factorization A = P*L*U; the unit diagonal elements of L are not stored. (she's minimal, she's efficient π
)
LDA
LDA is INTEGER the leading dimension of the array A. LDA >= max(1,M). β¨
IPIV
IPIV is INTEGER array, dimension (min(M,N)) the pivot indices; for 1 <= i <= min(M,N), row i of the matrix was interchanged with row IPIV(i). π
INFO
INFO is INTEGER
= 0: successful exit π< 0: ifINFO = -i, the i-th argument had an illegal value π> 0: ifINFO = i,U(i,i)is exactly zero. the factorization has been completed, but the factor U is exactly singular, and division by zero will occur if it is used to solve a system of equations. π
π Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 112 of file sgetrf2.f. π
π Author (the meta one) π
Generated automatically by Doxygen for LAPACK from the source code. (she didn't write herself, a robot did, and honestly? iconic π€β¨)
and that's the whole page, bestie β no notes, she ate and left absolutely no crumbs π§π
LAPACK Β· Version 3.12.0 Β· SRC/sgetrf2.f(3) β mwah, signed, sealed, and delivered with love ππ«Άπ
π¦ 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