ZGBRFS(3)
π¦ NAME
So bestie, this page is literally about one file, and the path is the whole name, no cap:
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/zgbrfs.f
It's a manpage from the Library Functions Manual (that's the manual name, folding it in here at the top like a good little header π
), and it's all about ZGBRFS β the LAPACK girlie who refines banded solves and hands you error bounds on a silver platter. Obsessed.
β¨ SYNOPSIS
π Functions/Subroutines
subroutine ZGBRFS (trans, n, kl, ku, nrhs, ab, ldab, afb, ldafb, ipiv,
b, ldb, x, ldx, ferr, berr, work, rwork, info)
ZGBRFS
π Function/Subroutine Documentation
Here's the full signature in all its glory β literally every argument, exactly how it's declared:
subroutine ZGBRFS (character trans, integer n, integer kl, integer ku,
integer nrhs, complex*16, dimension( ldab, * ) ab, integer ldab,
complex*16, dimension( ldafb, * ) afb, integer ldafb, integer,
dimension( * ) ipiv, complex*16, dimension( ldb, * ) b, integer ldb,
complex*16, dimension( ldx, * ) x, integer ldx, double precision,
dimension( * ) ferr, double precision, dimension( * ) berr, complex*16,
dimension( * ) work, double precision, dimension( * ) rwork, integer
info)
ZGBRFS
πΈ Purpose
Okay so the vibe: ZGBRFS improves the computed solution to a system of linear equations when the coefficient matrix is banded, and it also provides error bounds and backward error estimates for the solution. It's giving glow-up for your answer vector, plus receipts for how wrong it might still be. π«Ά
π Parameters
TRANSisCHARACTER*1β specifies the form of the system of equations, bestie:= 'N':A * X = B(No transpose)= 'T':A**T * X = B(Transpose)= 'C':A**H * X = B(Conjugate transpose)
NisINTEGERβ the order of the matrix A.N >= 0. π«KLisINTEGERβ the number of subdiagonals within the band of A.KL >= 0.KUisINTEGERβ the number of superdiagonals within the band of A.KU >= 0.NRHSisINTEGERβ the number of right hand sides, i.e., the number of columns of the matrices B and X.NRHS >= 0.ABisCOMPLEX*16array, dimension(LDAB,N)β the original band matrix A, stored in rows1toKL+KU+1. The j-th column of A is stored in the j-th column of the array AB like this:AB(ku+1+i-j,j) = A(i,j)formax(1,j-ku)<=i<=min(n,j+kl). Math slay. π₯LDABisINTEGERβ the leading dimension of the array AB.LDAB >= KL+KU+1.AFBisCOMPLEX*16array, dimension(LDAFB,N)β details of the LU factorization of the band matrix A, as computed byZGBTRF. U is stored as an upper triangular band matrix withKL+KUsuperdiagonals in rows1toKL+KU+1, and the multipliers used during the factorization are stored in rowsKL+KU+2to2*KL+KU+1. Iconic layering tbh. β¨LDAFBisINTEGERβ the leading dimension of the array AFB.LDAFB >= 2*KL*KU+1. (Yeah, that's exactly what it says, don't come for me π)IPIVisINTEGERarray, dimension(N)β the pivot indices fromZGBTRF; for1<=i<=N, row i of the matrix was interchanged with rowIPIV(i).BisCOMPLEX*16array, dimension(LDB,NRHS)β the right hand side matrix B.LDBisINTEGERβ the leading dimension of the array B.LDB >= max(1,N).XisCOMPLEX*16array, dimension(LDX,NRHS)β on entry, the solution matrix X, as computed byZGBTRS. On exit, the improved solution matrix X. Glow-up complete πLDXisINTEGERβ the leading dimension of the array X.LDX >= max(1,N).FERRisDOUBLE PRECISIONarray, dimension(NRHS)β the estimated forward error bound for each solution vectorX(j)(the j-th column of the solution matrix X). IfXTRUEis the true solution corresponding toX(j),FERR(j)is an estimated upper bound for the magnitude of the largest element in(X(j) - XTRUE)divided by the magnitude of the largest element inX(j). The estimate is as reliable as the estimate forRCOND, and is almost always a slight overestimate of the true error. It's an overthinker, but like, in a useful way. πBERRisDOUBLE PRECISIONarray, dimension(NRHS)β the componentwise relative backward error of each solution vectorX(j)(i.e., the smallest relative change in any element of A or B that makesX(j)an exact solution).WORKisCOMPLEX*16array, dimension(2*N).RWORKisDOUBLE PRECISIONarray, dimension(N).INFOisINTEGERβ the status check bestie:= 0: successful exit β¨< 0: ifINFO = -i, the i-th argument had an illegal value π
π§ Internal Parameters
ITMAXis the maximum number of steps of iterative refinement.
π Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 203 of file zgbrfs.f.
π Author
Generated automatically by Doxygen for LAPACK from the source code. (Not a human, just a very hardworking doc generator π)
Okay that's the whole page, bestie β every flag, bound, and row index accounted for, fr fr. π
Sign-off: this cutie is LAPACK Version 3.12.0, and you can find it chilling at the path /home/abui...RC/zgbrfs.f(3) β mwah, bye! ππ¦π
π¦ 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