ZGTTRF(3)

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

πŸ’– ZGTTRF(3) β€” the tridiagonal glow-up page πŸ’–

okay so bestie, welcome to the zgttrf.f page from LAPACK β€” yes, the whole path is part of the vibe: /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/zgttrf.f

This is a Library Functions Manual moment, and honestly? iconic. Let's get into it. πŸ¦‹


✨ SYNOPSIS ✨

Functions/Subroutines

  • subroutine ZGTTRF (n, dl, d, du, du2, ipiv, info) β€” that's the whole squad right there, and yes, the description is literally just ZGTTRF. no notes. πŸ’…

πŸŽ€ Function/Subroutine Documentation πŸŽ€

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

ZGTTRF β€” say it with me. Main character energy, no cap.

πŸ’œ Purpose:

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

okay so like β€” it takes your complex tridiagonal matrix A and factorizes it as A = L * U. L is a product of permutation matrices and unit lower bidiagonal ones, and U is upper triangular but lowkey sparse: nonzeros only on the main diagonal and the first two superdiagonals. she's giving efficiency. she ate. πŸ”₯


🌸 Parameters 🌸

  • N β€” N is INTEGER, the order of the matrix A. the queen herself, the size of the whole situation.
  • DL β€” DL is COMPLEX*16 array, dimension (N-1). On entry, DL must contain the (n-1) sub-diagonal elements of A. On exit, DL is overwritten by the (n-1) multipliers that define the matrix L from the LU factorization of A. so it goes in as your sub-diagonal and comes out as L's multipliers, glow-up complete. ✨
  • D β€” D is COMPLEX*16 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. the main diagonal stays booked and busy.
  • DU β€” DU is COMPLEX*16 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. first superdiagonal, first in line, obsessed.
  • DU2 β€” DU2 is COMPLEX*16 array, dimension (N-2). On exit, DU2 is overwritten by the (n-2) elements of the second super-diagonal of U. note: output only, bestie β€” don't come at her with input, she didn't ask. πŸ™ˆ
  • IPIV β€” IPIV is INTEGER array, dimension (N), the pivot indices; for 1 <= i <= n, row i of the matrix was interchanged with row IPIV(i). IPIV(i) will always be either i or i+1; IPIV(i) = i indicates a row interchange was not required. so basically it only ever swaps with the next row or stays put β€” very "i'm not doing too much" of her. πŸ’…
  • 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.
⚠️ warning bestie: that INFO > 0 case is the dramatic one. the factorization did finish, but U is exactly singular, so if you go solve a system with it you're dividing by zero. no cap, that's a bad time. 😭

πŸ‘‘ Author πŸ‘‘

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

Definition at line 123 of file zgttrf.f.


⭐ Author ⭐

Generated automatically by Doxygen for LAPACK from the source code.


🌈 and that's the whole page, bestie β€” LAPACK, Version 3.12.0, dated at /home/abui...RC/zgttrf.f(3). go forth and factorize your tridiagonal complex matrices with partial pivoting and row interchanges. slay, periodt. πŸ«ΆπŸ’–πŸŽ€

πŸ“¦ where this page comes from