SRC/ssprfs.f(3)
π SRC/ssprfs.f π
okay so bestie, welcome to SRC/ssprfs.f from the Library Functions Manual β this is the LAPACK page for SSPRFS, and it's giving "packed symmetric-indefinite solver gets an extra glow-up pass." β¨
NAME
SRC/ssprfs.f β that's the name, no cap. π«Ά
SYNOPSIS
Functions/Subroutines
subroutine ssprfs (uplo, n, nrhs, ap, afp, ipiv, b, ldb, x, ldx, ferr,
berr, work, iwork, info)
SSPRFS
Function/Subroutine Documentation
subroutine ssprfs (character uplo, integer n, integer nrhs, real, dimension(
* ) ap, real, dimension( * ) afp, integer, dimension( * ) ipiv, real,
dimension( ldb, * ) b, integer ldb, real, dimension( ldx, * ) x, integer
ldx, real, dimension( * ) ferr, real, dimension( * ) berr, real,
dimension( * ) work, integer, dimension( * ) iwork, integer info)
SSPRFS
The subroutine is SSPRFS, and yes, she is iconic. π
Purpose
SSPRFS improves the computed solution to a system of linear equations when the coefficient matrix is symmetric indefinite and packed, and it provides error bounds and backward error estimates for the solution. That's the whole assignment. π
Parameters
UPLOβUPLO is CHARACTER*1.= 'U': upper triangle of A is stored;= 'L': lower triangle of A is stored. Pick your triangle, bestie. πNβN is INTEGER. The order of the matrix A.N >= 0.NRHSβNRHS is INTEGER. The number of right hand sides, i.e., the number of columns of the matrices B and X.NRHS >= 0.APβAP is REAL array, dimension (N*(N+1)/2). The upper or lower triangle of the symmetric matrix A, packed columnwise in a linear array. The j-th column of A is stored in the array AP as follows: ifUPLO = 'U',AP(i + (j-1)*j/2) = A(i,j)for1<=i<=j; ifUPLO = 'L',AP(i + (j-1)*(2*n-j)/2) = A(i,j)forj<=i<=n.AFPβAFP is REAL array, dimension (N*(N+1)/2). The factored form of the matrix A. AFP contains the block diagonal matrix D and the multipliers used to obtain the factor U or L from the factorizationA = U*D*U**TorA = L*D*L**Tas computed bySSPTRF, stored as a packed triangular matrix.IPIVβIPIV is INTEGER array, dimension (N). Details of the interchanges and the block structure of D as determined bySSPTRF.BβB is REAL array, dimension (LDB,NRHS). The right hand side matrix B.LDBβLDB is INTEGER. The leading dimension of the array B.LDB >= max(1,N).XβX is REAL array, dimension (LDX,NRHS). On entry, the solution matrix X, as computed bySSPTRS. On exit, the improved solution matrix X.LDXβLDX is INTEGER. The leading dimension of the array X.LDX >= max(1,N).FERRβFERR is REAL array, 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. That's the "how cooked is my answer" vibe, but mathematically. πBERRβBERR is REAL array, 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).WORKβWORK is REAL array, dimension (3*N).IWORKβIWORK is INTEGER array, dimension (N).INFOβINFO is INTEGER.= 0: successful exit;< 0: ifINFO = -i, the i-th argument had an illegal value.
Internal Parameters
ITMAXβITMAXis the maximum number of steps of iterative refinement. That's the secret-sauce counter. π₯
Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 177 of file ssprfs.f.
Yep β this one lives at line 177 of ssprfs.f. π
Author
Generated automatically by Doxygen for LAPACK from the source code. π€β¨
Cute sign-off: this is LAPACK Version 3.12.0, page SRC/ssprfs.f(3) β that's the footer's whole story; no separate date is printed here, so I'm not inventing one, bestie. π«Άπ
π¦ 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