ZHERFS(3)
Okay bestie, this is ZHERFS(3) β yes, the whole manual page, and no we are not skipping the βboringβ parts. π
The source file is /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/zherfs.f β thatβs the exact path, character for character (the original just wrapped it).
πΈ NAME πΈ
The official NAME line points at the file /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/zherfs.f. So yeah: the thing this page documents lives in that file. π
β¨ SYNOPSIS β¨
π Functions/Subroutines π
Hereβs the short version, bestie:
subroutine ZHERFS (uplo, n, nrhs, a, lda, af, ldaf, ipiv, b, ldb, x,
ldx, ferr, berr, work, rwork, info)
ZHERFS
π Function/Subroutine Documentation π
Full signature drip, exactly like the source:
subroutine ZHERFS (character uplo, integer n, integer nrhs, complex*16,
dimension( lda, * ) a, integer lda, complex*16, dimension( ldaf, * ) af,
integer ldaf, 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)
ZHERFS
And the name is ZHERFS again, because obviously. π
π― Purpose
ZHERFS improves the computed solution to a system of linear equations when the coefficient matrix is Hermitian indefinite, and it provides error bounds and backward error estimates for the solution. Itβs giving careful, precise, and honestly very helpful. β¨
π§ Parameters
Every single one, no skips:
UPLOβUPLO is CHARACTER*1;= 'U': Upper triangle ofAis stored;= 'L': Lower triangle ofAis stored. πNβN is INTEGER; the order of the matrixA.N >= 0.NRHSβNRHS is INTEGER; the number of right hand sides, i.e., the number of columns of the matricesBandX.NRHS >= 0.AβA is COMPLEX*16 array, dimension (LDA,N); the Hermitian matrixA. IfUPLO = 'U', the leadingN-by-Nupper triangular part ofAcontains the upper triangular part of the matrixA, and the strictly lower triangular part ofAis not referenced. IfUPLO = 'L', the leadingN-by-Nlower triangular part ofAcontains the lower triangular part of the matrixA, and the strictly upper triangular part ofAis not referenced.LDAβLDA is INTEGER; the leading dimension of the arrayA.LDA >= max(1,N).AFβAF is COMPLEX*16 array, dimension (LDAF,N); the factored form of the matrixA.AFcontains the block diagonal matrixDand the multipliers used to obtain the factorUorLfrom the factorizationA = U*D*U**HorA = L*D*L**Has computed byZHETRF.LDAFβLDAF is INTEGER; the leading dimension of the arrayAF.LDAF >= max(1,N).IPIVβIPIV is INTEGER array, dimension (N); details of the interchanges and the block structure ofDas determined byZHETRF.BβB is COMPLEX*16 array, dimension (LDB,NRHS); the right hand side matrixB.LDBβLDB is INTEGER; the leading dimension of the arrayB.LDB >= max(1,N).XβX is COMPLEX*16 array, dimension (LDX,NRHS); on entry, the solution matrixX, as computed byZHETRS. On exit, the improved solution matrixX.LDXβLDX is INTEGER; the leading dimension of the arrayX.LDX >= max(1,N).FERRβFERR is DOUBLE PRECISION array, dimension (NRHS); the estimated forward error bound for each solution vectorX(j)(the j-th column of the solution matrixX). 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.BERRβBERR is DOUBLE PRECISION array, dimension (NRHS); the componentwise relative backward error of each solution vectorX(j)(i.e., the smallest relative change in any element ofAorBthat makesX(j)an exact solution).WORKβWORK is COMPLEX*16 array, dimension (2*N).RWORKβRWORK is DOUBLE PRECISION array, dimension (N).INFOβINFO is INTEGER;= 0: successful exit;< 0: ifINFO = -i, the i-th argument had an illegal value.
π Internal Parameters
ITMAX is the maximum number of steps of iterative refinement. Thatβs the whole note, bestie. π«Ά
π Author π
Shoutout to the author squad:
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
π Definition at line 190 of file zherfs.f. π
Exactly: Definition at line 190 of file zherfs.f. This is where the source says itβs defined. π
ποΈ Author ποΈ
Generated automatically by Doxygen for LAPACK from the source code. So itβs not a person in this bit, itβs the doc generator doing its thing. π»β¨
π Cute sign-off, bestie: LAPACK Version 3.12.0, and the footer path is /home/abui...RC/zherfs.f(3). Thereβs no date in this footer β just those two facts β so weβre not inventing one. π«Άπ
π¦ 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