CGTTRF(3)

πŸ“¦ version 3.12.0, in opensuse-leap 16.0

πŸŽ€ CGTTRF(3) πŸŽ€

ok so we're in the Library Functions Manual bestie, and this page is literally about /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/cgttrf.f β€” yes that's the whole path, she's committed πŸ’…


✨ SYNOPSIS ✨

Functions/Subroutines

subroutine CGTTRF (n, dl, d, du, du2, ipiv, info)

CGTTRF β€” that's her name, that's her whole thing 🫢


πŸ’– Function/Subroutine Documentation πŸ’–

subroutine CGTTRF (integer n, complex, dimension( * ) dl, complex,
    dimension( * ) d, complex, dimension( * ) du, complex, dimension( * )
    du2, integer, dimension( * ) ipiv, integer info)

CGTTRF πŸ’« (yes, again, she's the main character, we said her name twice)

🌸 Purpose 🌸

!>
!> CGTTRF computes an LU factorization of a complex tridiagonal matrix A
!> using elimination with partial pivoting and row interchanges.
!>
!> The factorization has the form
!>    A = L * U
!> where L is a product of permutation and unit lower bidiagonal
!> matrices and U is upper triangular with nonzeros in only the main
!> diagonal and first two superdiagonals.
!>

so basically: she takes your complex tridiagonal matrix A, does elimination with partial pivoting and row interchanges (iconic behavior), and hands you back A = L * U. and like β€” L is a product of permutation and unit lower bidiagonal matrices, and U is upper triangular but lowkey only has nonzeros in the main diagonal and the first two superdiagonals. slay, sparse queen ✨


🌈 Parameters 🌈

  • N β€” N is INTEGER, the order of the matrix A. that's it, that's the vibe check πŸ”₯
  • DL β€” DL is COMPLEX array, dimension (N-1) On entry, DL must contain the (n-1) sub-diagonal elements of A β€” like, required, no cap. On exit, DL is overwritten by the (n-1) multipliers that define the matrix L from the LU factorization of A. she ate and left no crumbs πŸ’€
  • D β€” D is COMPLEX array, dimension (N) On entry, D must contain the diagonal elements of A. On exit, D is overwritten by the n diagonal elements of the upper triangular matrix U from the LU factorization of A. glow-up fr fr πŸ’œ
  • DU β€” DU is COMPLEX array, dimension (N-1) On entry, DU must contain the (n-1) super-diagonal elements of A. On exit, DU is overwritten by the (n-1) elements of the first super-diagonal of U. ✨
  • DU2 β€” DU2 is COMPLEX array, dimension (N-2) On exit, DU2 is overwritten by the (n-2) elements of the second super-diagonal of U. note that she's exit-only babes, no entry duties πŸŽ€
  • IPIV β€” IPIV is INTEGER array, dimension (N) the pivot indices bestie! for 1 <= i <= n, row i of the matrix was interchanged with row IPIV(i). and IPIV(i) will always be either i or i+1 β€” IPIV(i) = i indicates a row interchange was not required. it's giving "chill, nothing moved" 😌
  • 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. 😭
⚠️ ok real talk β€” that last one? INFO > 0 means U is exactly singular. the factorization ran, it finished, but if you go solve a system with it you WILL divide by zero. not a drill, not a vibe, a genuine warning πŸ’€

πŸ‘‘ Author πŸ‘‘

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

the whole squad co-signed this one 🫢

⭐ Definition ⭐

Definition at line 123 of file cgttrf.f.


πŸ¦‹ Author πŸ¦‹

Generated automatically by Doxygen for LAPACK from the source code. (she wasn't written, she was generated β€” literal nepo baby of the docs world, and we love her for it πŸ’…)


ok that's the whole page bestie, go factor something tridiagonal responsibly πŸ’–βœ¨πŸŽ€πŸ¦‹πŸŒΈπŸ’…

LAPACK β€” Version 3.12.0 🌈 and fr fr, this page came from /home/abui...RC/cgttrf.f(3) β€” mwah, bye πŸ‘‹πŸ’œ

πŸ“¦ where this page comes from