CPOT05(3)
β¨ CPOT05 β¨
okay so bestie, buckle up π this is a page from the LAPACK manual β the <pink>Library Functions Manual</pink> β and it's all about one lil Fortran subroutine called CPOT05. It lives at /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/TESTING/LIN/cpot05.f and honestly? she's a tester, not a solver. she checks other people's homework. iconic behavior tbh π
πΈ SYNOPSIS πΈ
Functions/Subroutines
subroutine CPOT05 (uplo, n, nrhs, a, lda, b, ldb, x, ldx, xact, ldxact,
ferr, berr, reslts)
CPOT05 β that's the whole name, no notes π
π¦ Function/Subroutine Documentation π¦
subroutine CPOT05 (character uplo, integer n, integer nrhs, complex,
dimension( lda, * ) a, integer lda, complex, dimension( ldb, * ) b,
integer ldb, complex, dimension( ldx, * ) x, integer ldx, complex,
dimension( ldxact, * ) xact, integer ldxact, real, dimension( * ) ferr,
real, dimension( * ) berr, real, dimension( * ) reslts)
CPOT05 β¨ (yes she gets her own heading, main character energy π)
π Purpose π
!> !> CPOT05 tests the error bounds from iterative refinement for the !> computed solution to a system of equations A*X = B, where A is a !> Hermitian n by n matrix. !> !> RESLTS(1) = test of the error bound !> = norm(X - XACT) / ( norm(X) * FERR ) !> !> A large value is returned if this ratio is not less than one. !> !> RESLTS(2) = residual from the iterative refinement routine !> = the maximum of BERR / ( (n+1)EPS + () ), where !> (*) = (n+1)*UNFL / (min_i (abs(A)*abs(X) +abs(b))_i ) !>
so basically: she takes your solution, takes the actual answer, and is like "girl. how far off are we." π and if <hotpink>RESLTS(1)</hotpink> comes back large (i.e. the ratio is not less than one), that's your red flag bestie π
π Parameters π
UPLOβCHARACTER*1. Tells us which triangle of the Hermitian matrixAis actually stored.= 'U': Upper triangular πΈ.= 'L': Lower triangular π¦. (pick one, she needs to know!)NβINTEGER. The number of rows of the matricesX,B, andXACT, and also the order of matrixA. Requirement:N >= 0. no negatives, we don't do that here β¨NRHSβINTEGER. The number of columns of the matricesX,B, andXACT. Requirement:NRHS >= 0. same vibe check π«ΆAβCOMPLEXarray, dimension(LDA,N). The Hermitian matrixAherself π. IfUPLO = 'U', the leading n by n upper triangular part ofAholds the upper triangular part of the matrixA, and the strictly lower triangular part ofAis not referenced (she simply doesn't look, ngl π). IfUPLO = 'L', the leading n by n lower triangular part ofAholds the lower triangular part of the matrixA, and the strictly upper triangular part ofAis not referenced.LDAβINTEGER. The leading dimension of the arrayA. Requirement:LDA >= max(1,N). don't skimp on this one πBβCOMPLEXarray, dimension(LDB,NRHS). The right hand side vectors for the system of linear equations πLDBβINTEGER. The leading dimension of the arrayB. Requirement:LDB >= max(1,N).XβCOMPLEXarray, dimension(LDX,NRHS). The computed solution vectors. Each vector is stored as a column of the matrixXπLDXβINTEGER. The leading dimension of the arrayX. Requirement:LDX >= max(1,N).XACTβCOMPLEXarray, dimension(LDX,NRHS). The exact solution vectors, fr fr. Each vector is stored as a column of the matrixXACTβLDXACTβINTEGER. The leading dimension of the arrayXACT. Requirement:LDXACT >= max(1,N).FERRβREALarray, dimension(NRHS). The estimated forward error bounds for each solution vectorX. IfXTRUEis the true solution,FERRbounds the magnitude of the largest entry in(X - XTRUE)divided by the magnitude of the largest entry inX. it's giving "how wrong could you possibly be" energy πBERRβREALarray, dimension(NRHS). The componentwise relative backward error of each solution vector β that's the smallest relative change in any entry ofAorBthat makesXan exact solution π§ (yes, she'll move the goalposts just enough. respectfully.)RESLTSβREALarray, dimension(2). The maximum over theNRHSsolution vectors of the ratios:RESLTS(1) = norm(X - XACT) / ( norm(X) * FERR )RESLTS(2) = BERR / ( (n+1)*EPS + (*) )
like the purpose said, (*) = (n+1)*UNFL / (min_i (abs(A)*abs(X) +abs(b))_i ) π
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 163 of file cpot05.f. π (go look, it's right there)
π Author (the meta one) π
Generated automatically by Doxygen for LAPACK from the source code. yes she was built by a robot, and yes she still ate π€β¨
okay that's the whole page bestie, you're officially smarter than you were three minutes ago π«Ά this was LAPACK, Version 3.12.0, served fresh from /home/abui...IN/cpot05.f(3) β go forth and check those error bounds, mwah πππ¦
π¦ 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