SRC/dsyrfs.f(3)
๐ธ SRC/dsyrfs.f โ like, the dsyrfs situation ๐
okay bestie, welcome to the Library Functions Manual entry for SRC/dsyrfs.f โ yes it's a Fortran file, yes it's from LAPACK, and yes we're gonna get through this together. grab a snack ๐
โจ NAME โจ
SRC/dsyrfs.f โ like, that's literally the name, no cap. this is the home of the dsyrfs subroutine and it's giving very "symmetric indefinite systems get error bounds" energy ๐ฆ
โจ SYNOPSIS โจ
๐ Functions/Subroutines
subroutine dsyrfs (uplo, n, nrhs, a, lda, af, ldaf, ipiv, b, ldb, x, ldx, ferr, berr, work, iwork, info)โ the one, the only,DSYRFS๐
๐ Function/Subroutine Documentation ๐
๐ the subroutine itself
subroutine dsyrfs (character uplo, integer n, integer nrhs, double precision, dimension( lda, * ) a, integer lda, double precision, dimension( ldaf, * ) af, integer ldaf, integer, dimension( * ) ipiv, double precision, dimension( ldb, * ) b, integer ldb, double precision, dimension( ldx, * ) x, integer ldx, double precision, dimension( * ) ferr, double precision, dimension( * ) berr, double precision, dimension( * ) work, integer, dimension( * ) iwork, integer info)
DSYRFS โ that's the whole title card, iconic, no notes ๐
โญ Purpose:
!>DSYRFS improves the computed solution to a system of linear!>equations when the coefficient matrix is symmetric indefinite, and!>provides error bounds and backward error estimates for the solution.!>
so like โ you already solved something, and now you want it better, plus you want receipts on how wrong it might still be. that's the whole gig ๐ซถ
๐ง Parameters (yes, all of them, I would never skip one)
UPLOโUPLOisCHARACTER*1. it tells you which triangle of A is the one doing the work:= 'U': Upper triangle of A is stored;= 'L': Lower triangle of A is stored.
NโNisINTEGER. The order of the matrix A.N >= 0.NRHSโNRHSisINTEGER. The number of right hand sides, i.e., the number of columns of the matrices B and X.NRHS >= 0.AโAisDOUBLE PRECISIONarray, dimension(LDA,N). The symmetric matrix A. IfUPLO = 'U', the leading N-by-N upper triangular part of A contains the upper triangular part of the matrix A, and the strictly lower triangular part of A is not referenced. IfUPLO = 'L', the leading N-by-N lower triangular part of A contains the lower triangular part of the matrix A, and the strictly upper triangular part of A is not referenced. (half of it is literally just vibes, it's not read ๐)LDAโLDAisINTEGER. The leading dimension of the array A.LDA >= max(1,N).AFโAFisDOUBLE PRECISIONarray, dimension(LDAF,N). The factored form of the matrix A. AF 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 byDSYTRF.LDAFโLDAFisINTEGER. The leading dimension of the array AF.LDAF >= max(1,N).IPIVโIPIVisINTEGERarray, dimension(N). Details of the interchanges and the block structure of D as determined byDSYTRF.BโBisDOUBLE PRECISIONarray, dimension(LDB,NRHS). The right hand side matrix B.LDBโLDBisINTEGER. The leading dimension of the array B.LDB >= max(1,N).XโXisDOUBLE PRECISIONarray, dimension(LDX,NRHS). On entry, the solution matrix X, as computed byDSYTRS. On exit, the improved solution matrix X. โจ glow-up on exit โจLDXโLDXisINTEGER. The leading dimension of the array X.LDX >= max(1,N).FERRโ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.BERRโ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). lowkey the most useful little number ever ๐งฎWORKโWORKisDOUBLE PRECISIONarray, dimension(3*N). that's right, three whole N's, bring the big scratch pad.IWORKโIWORKisINTEGERarray, dimension(N).INFOโINFOisINTEGER:= 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 it, that's the internal one โ iterative refinement has a step budget and ITMAX is its name ๐
๐ Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 189 of file dsyrfs.f.
๐ Author
Generated automatically by Doxygen for LAPACK from the source code. (so like, don't come for the formatting, a robot did it ๐ค)
okay that's the whole page, you made it, I'm so proud ๐ฅน this was LAPACK Version 3.12.0 dropping SRC/dsyrfs.f(3) from the Library Functions Manual โ mwah, go improve some solutions 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