SRC/cgetrf2.f(3)
π SRC/cgetrf2.f π
okay so bestie, welcome to the Library Functions Manual β this page is SRC/cgetrf2.f, and it's giving recursive Fortran subroutine energy. Let's get into it. β¨
πΈ NAME πΈ
SRC/cgetrf2.f β that's the page name, and the star of the show is CGETRF2. π
β¨ SYNOPSIS β¨
π¦ Functions/Subroutines π¦
recursive subroutine cgetrf2 (m, n, a, lda, ipiv, info)βCGETRF2.
π¦ Function/Subroutine Documentation π¦
π CGETRF2
recursive subroutine cgetrf2 (integer m, integer n, complex, dimension( lda,
* ) a, integer lda, integer, dimension( * ) ipiv, integer info)
π Purpose π
CGETRF2 computes an LU factorization of a general M-by-N matrix A using partial pivoting with row interchanges. Slay. π
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). Iconic. π
This is the recursive version of the algorithm. It divides the matrix into four submatrices:
[ 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
[ 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.
bestie, this is recursion doing its main character thing β it calls itself, does swaps, solvesA12, updatesA22, then calls itself again forA22and does the swaps onA21. periodt. π«
π 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 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. π
π 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, thei-th argument had an illegal value.> 0: ifINFO = i,U(i,i)is exactly zero. The factorization has been completed, but the factorUis exactly singular, and division by zero will occur if it is used to solve a system of equations.
okay so that> 0case is the dramatic one: the factorization finished, butUis singular, and using it to solve a system is a division-by-zero situation. not cute. π
π Author π
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Definition at line 112 of file cgetrf2.f.
π Author π
Generated automatically by Doxygen for LAPACK from the source code.
That's the whole page, bestie. Footer energy: LAPACK Version 3.12.0, page SRC/cgetrf2.f(3). mwah πβ¨
π¦ 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