/home/abui...RC/dgtsv.f(3)
π dgtsv.f β the manual page, but make it make sense
okay so bestie, this page lives at /home/abui...RC/dgtsv.f(3) and it's from the Library Functions Manual. buckle up, we're solving tridiagonal systems and it's actually kind of iconic π
β¨ NAME β¨
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/dgtsv.f
that's the whole name. yes really. it's just the file path being its full self. main character energy tbh π
πΈ SYNOPSIS πΈ
Functions/Subroutines
subroutine DGTSV (n, nrhs, dl, d, du, b, ldb, info)
DGTSV computes the solution to system of linear equations A * X = B for GT matrices. slay π
π¦ Function/Subroutine Documentation π¦
subroutine DGTSV (integer n, integer nrhs, double precision, dimension( * )
dl, double precision, dimension( * ) d, double precision, dimension( * )
du, double precision, dimension( ldb, * ) b, integer ldb, integer info)
π« DGTSV computes the solution to system of linear equations A * X = B for GT matrices
Purpose:
!>
!> DGTSV 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 like β it does Gaussian elimination with partial pivoting on a tridiagonal matrix. and here's the little hack, iykyk: wanna solve A**T*X = B instead? just swap the order of the arguments DU and DL. that's it. that's the trick. no cap π₯
π Parameters π
NβN is INTEGER. the order of the matrix A.N >= 0. βNRHSβNRHS is INTEGER. the number of right hand sides, like, the number of columns of the matrix B.NRHS >= 0.DLβDL is DOUBLE PRECISION array, dimension (N-1). on entry,DLmust contain the(n-1)sub-diagonal elements of A. on exit? the glow-up is real:DLgets overwritten by the(n-2)elements of the second super-diagonal of the upper triangular matrix U from the LU factorization of A, sitting inDL(1), ..., DL(n-2). π bye original contentsDβD is DOUBLE PRECISION array, dimension (N). on entry,Dmust contain the diagonal elements of A. on exit,Dis overwritten by thendiagonal elements of U. πDUβDU is DOUBLE PRECISION array, dimension (N-1). on entry,DUmust contain the(n-1)super-diagonal elements of A. on exit,DUis overwritten by the(n-1)elements of the first super-diagonal of U.BβB is DOUBLE PRECISION array, dimension (LDB,NRHS). on entry, theNbyNRHSmatrix of right hand side matrix B. on exit, ifINFO = 0, theNbyNRHSsolution matrix X. it literally becomes the answer π«ΆLDBβLDB is INTEGER. the leading dimension of the array B.LDB >= max(1,N). π§INFOβINFO is INTEGER:= 0: successful exit π< 0: ifINFO = -i, the i-th argument had an illegal value π> 0: ifINFO = i,U(i,i)is exactly zero, and the solution has not been computed. the factorization has not been completed unlessi = N. π so yeah, zero pivot, no solution, we don't talk about it
π Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 126 of file dgtsv.f.
π Author
Generated automatically by Doxygen for LAPACK from the source code. (not a human, just a very diligent little robot π€β¨)
fr fr the vibe is: it's a Fortran tridiagonal solver and it ate. periodt. π₯
LAPACK Β· Version 3.12.0 Β· /home/abui...RC/dgtsv.f(3) β mwah, that's the sign-off bestie, hope tridiagonal systems are now your whole personality π¦ππ
π¦ where this page comes from
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms