SRC/zgtsv.f(3)
β¨ SRC/zgtsv.f β¨
LAPACK Library Functions Manual β SRC/zgtsv.f
Okay bestie, gather round π because this is the manual for SRC/zgtsv.f, and it's literally about solving linear equations like the absolute main character it is. Let's get into it π«Ά
π NAME π
SRC/zgtsv.f
πΈ SYNOPSIS πΈ
Functions/Subroutines
subroutine zgtsv (n, nrhs, dl, d, du, b, ldb, info) <br> ZGTSV computes the solution to system of linear equations A * X = B for GT matrices
π¦ Function/Subroutine Documentation π¦
subroutine zgtsv (integer n, integer nrhs, complex*16, dimension( * ) dl, complex*16, dimension( * ) d, complex*16, dimension( * ) du, complex*16, dimension( ldb, * ) b, integer ldb, integer info)
ZGTSV computes the solution to system of linear equations A * X = B for GT matrices
β Purpose:
!>
!> ZGTSV solves the equation
!>
!> A*X = B,
!>
!> where A is an N-by-N tridiagonal matrix, by Gaussian elimination with
!> partial pivoting.
!>
!> Note that the equation A**T *X = B may be solved by interchanging the
!> order of the arguments DU and DL.
!>
So basically: you've got this N-by-N tridiagonal matrix A, and you're solving A*X = B using Gaussian elimination with partial pivoting. And there's this iconic little note: if you wanna solve A**T *X = B instead, just swap the order of DU and DL. Slay π
π Parameters π
Nβ Okay soNisINTEGER. It's the order of the matrixA. AndN >= 0, periodt.NRHSβNRHSisINTEGER. It's the number of right hand sides, aka the number of columns of the matrixB.NRHS >= 0, no cap.DLβDLisCOMPLEX*16 array, dimension (N-1). On entry,DLmust contain the(n-1)subdiagonal elements ofA. On exit,DLis overwritten by the(n-2)elements of the second superdiagonal of the upper triangular matrixUfrom the LU factorization ofA, inDL(1), ..., DL(n-2). Iconic behavior tbh.
!> DL is COMPLEX*16 array, dimension (N-1)
!> On entry, DL must contain the (n-1) subdiagonal elements of
!> A.
!> On exit, DL is overwritten by the (n-2) elements of the
!> second superdiagonal of the upper triangular matrix U from
!> the LU factorization of A, in DL(1), ..., DL(n-2).
!>
DβDisCOMPLEX*16 array, dimension (N). On entry,Dmust contain the diagonal elements ofA. On exit,Dis overwritten by thendiagonal elements ofU. She gets a glow-up π
!> 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 U.
!>
DUβDUisCOMPLEX*16 array, dimension (N-1). On entry,DUmust contain the(n-1)superdiagonal elements ofA. On exit,DUis overwritten by the(n-1)elements of the first superdiagonal ofU.
!> DU is COMPLEX*16 array, dimension (N-1)
!> On entry, DU must contain the (n-1) superdiagonal elements
!> of A.
!> On exit, DU is overwritten by the (n-1) elements of the first
!> superdiagonal of U.
!>
BβBisCOMPLEX*16 array, dimension (LDB,NRHS). On entry, it's the N-by-NRHS right hand side matrixB. On exit, ifINFO = 0, it's the N-by-NRHS solution matrixX. Level up β¨
!> B is COMPLEX*16 array, dimension (LDB,NRHS)
!> On entry, the N-by-NRHS right hand side matrix B.
!> On exit, if INFO = 0, the N-by-NRHS solution matrix X.
!>
LDBβLDBisINTEGER. It's the leading dimension of the arrayB. AndLDB >= max(1,N), okay? Respect the dimension π«Ά
!> LDB is INTEGER
!> The leading dimension of the array B. LDB >= max(1,N).
!>
INFOβINFOisINTEGER. Here's the vibe check:= 0: successful exit, we love to see it π< 0: ifINFO = -i, the i-th argument had an illegal value, oop π> 0: ifINFO = i,U(i,i)is exactly zero, and the solution has not been computed. The factorization has not been completed unlessi = N. That's a big yikes, bestie π
!> INFO is INTEGER
!> = 0: successful exit
!> < 0: if INFO = -i, the i-th argument had an illegal value
!> > 0: if INFO = i, U(i,i) is exactly zero, and the solution
!> has not been computed. The factorization has not been
!> completed unless i = N.
!>
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 123 of file zgtsv.f.
π Author (again, but meta) π
Generated automatically by Doxygen for LAPACK from the source code.
Friendly reminder bestie: this was generated by Doxygen from LAPACKβs source code, so itβs literally the source code speaking for itself π
β¨ LAPACK β Version 3.12.0 β SRC/zgtsv.f(3) β¨
And that's the whole manual, bestie! LAPACK Version 3.12.0, literally serving tridiagonal matrix solutions with Gaussian elimination and partial pivoting. Slay, periodt πππ
π¦ 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