SRC/sgetf2.f(3)

πŸ’… SRC/sgetf2.f(3)

ok so this is one of those Library Functions Manual pages (yes bestie, the manual name is literally "Library Functions Manual", we love a descriptive queen) and today's main character is SRC/sgetf2.f β€” the unblocked LU factorization girlie. buckle up πŸŽ€


✨ NAME ✨

SRC/sgetf2.f β€” no cap, that's the whole name section. short and iconic.


🌸 SYNOPSIS 🌸

Functions/Subroutines

  • subroutine sgetf2 (m, n, a, lda, ipiv, info) β€” SGETF2 computes the LU factorization of a general m-by-n matrix using partial pivoting with row interchanges (unblocked algorithm).

πŸ¦‹ Function/Subroutine Documentation πŸ¦‹

subroutine sgetf2 (integer m, integer n, real, dimension( lda, * ) a, integer lda, integer, dimension( * ) ipiv, integer info)

SGETF2 computes the LU factorization of a general m-by-n matrix using partial pivoting with row interchanges (unblocked algorithm). periodt πŸ’…

🧚 Purpose:

!>
!> SGETF2 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).
!>
!> This is the right-looking Level 2 BLAS version of the algorithm.
!>

so literally: 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). and it's the right-looking Level 2 BLAS version of the algorithm β€” iykyk πŸ”₯


πŸ’– Parameters πŸ’–

M

!>          M is INTEGER
!>          The number of rows of the matrix A.  M >= 0.
!>

the number of rows of the matrix A, and M >= 0 fr fr.

N

!>          N is INTEGER
!>          The number of columns of the matrix A.  N >= 0.
!>

the number of columns of the matrix A, and N >= 0. slay.

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.
!>

REAL array, dimension (LDA,N). on entry it's the m by n matrix to be factored; on exit it's holding the factors L and U from A = P*L*U β€” and bestie listen, the unit diagonal elements of L are not stored πŸ™ˆ

LDA

!>          LDA is INTEGER
!>          The leading dimension of the array A.  LDA >= max(1,M).
!>

the leading dimension of the array A, and it better be 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).
!>

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). the lore 🫢

INFO

!>          INFO is INTEGER
!>          = 0: successful exit
!>          < 0: if INFO = -k, the k-th argument had an illegal value
!>          > 0: if INFO = k, U(k,k) 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.
!>

INTEGER, and here's the vibe check:

  • = 0: successful exit, we ate πŸ’…
  • < 0: if INFO = -k, the k-th argument had an illegal value
  • > 0: if INFO = k, U(k,k) 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 😭
⚠️ that last one is not a drill β€” INFO > 0 means singular U and division by zero is coming for you if you try to solve with it.

πŸ‘‘ Author πŸ‘‘

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

the whole squad showed up for this one 🌈

Definition at line 107 of file sgetf2.f.


⭐ Author (yes, again) ⭐

Generated automatically by Doxygen for LAPACK from the source code. not me being auto-generated πŸ™ˆ


and that's the page bestie!! πŸ’œ this was rendered for LAPACK, Version 3.12.0, page SRC/sgetf2.f(3) β€” catch you in the next manpage, mwah πŸ“βœ¨

πŸ“¦ where this page comes from