TESTING/LIN/cebchvxx.f(3)
π TESTING/LIN/cebchvxx.f(3) π
Welcome to the glow-up of TESTING/LIN/cebchvxx.f(3) from the Library Functions Manual. This is the page for the Fortran test routine that wants your linear algebra to be honest. π«Ά
πΈ NAME πΈ
TESTING/LIN/cebchvxx.f β thatβs the whole name, bestie. Iconic brevity.
β¨ SYNOPSIS β¨
Functions/Subroutines
subroutine cebchvxx (thresh, path)
CEBCHVXX
π¦ Function/Subroutine Documentation π¦
subroutine cebchvxx (real thresh, character*3 path)
CEBCHVXX Purpose:
Okay so CEBCHVXX is the vibe-check for CGESVXX: it runs CGESVXX on a series of Hilbert matrices, then compares the error bounds returned by CGESVXX to see if the returned answer actually falls within those bounds. No cap, weβre checking the receipts. π
Eight test ratios will be computed. The tests pass if they are .LT. THRESH. There are two cases, and theyβre determined by 1 / (SQRT( N ) * EPS). If that value is .LE. to the component wise reciprocal condition number, it uses the guaranteed case; otherwise it uses the unguaranteed case. The norm used is the infinity norm. Let Xc be X_computed and Xt be X_truth. Let A be the guaranteed case and B be the unguaranteed case. π§
Test ratios:
- Normwise guaranteed forward error bound.
- A:
norm ( abs( Xc - Xt ) / norm ( Xt ) .LE. ERRBND( *, nwise_i, bnd_i )andERRBND( *, nwise_i, bnd_i ) .LE. MAX(SQRT(N),10) * EPS. If these conditions are met, the test ratio is set to beERRBND( *, nwise_i, bnd_i ) / MAX(SQRT(N), 10). Otherwise it is1/EPS. - B: For this case,
CGESVXXshould just return1. If it is less than one, treat it the same as in1A. Otherwise it fails. (Set test ratio toERRBND( *, nwise_i, bnd_i ) * THRESH?)
- A:
- Componentwise guaranteed forward error bound.
- A:
norm ( abs( Xc(j) - Xt(j) ) ) / norm (Xt(j)) .LE. ERRBND( *, cwise_i, bnd_i )for allj.AND.ERRBND( *, cwise_i, bnd_i ) .LE. MAX(SQRT(N), 10) * EPS. If these conditions are met, the test ratio is set to beERRBND( *, cwise_i, bnd_i ) / MAX(SQRT(N), 10). Otherwise it is1/EPS. - B: Same as normwise test ratio.
- A:
- Backwards error.
- A: The test ratio is set to
BERR/EPS. - B: Same test ratio.
- A: The test ratio is set to
- Reciprocal condition number.
- A: A condition number is computed with
Xtand compared with the one returned fromCGESVXX. LetRCONDcbe theRCONDreturned byCGESVXXandRCONDtbe theRCONDfrom the truth value. Test ratio is set toMAX(RCONDc/RCONDt, RCONDt/RCONDc). - B: Test ratio is set to
1 / (EPS * RCONDc).
- A: A condition number is computed with
- Reciprocal normwise condition number.
- A: The test ratio is set to
MAX(ERRBND( *, nwise_i, cond_i ) / NCOND, NCOND / ERRBND( *, nwise_i, cond_i )). - B: Test ratio is set to
1 / (EPS * ERRBND( *, nwise_i, cond_i )).
- A: The test ratio is set to
- Reciprocal componentwise condition number.
- A: The test ratio is set to
MAX(ERRBND( *, cwise_i, cond_i ) / CCOND, CCOND / ERRBND( *, cwise_i, cond_i )). - B: Test ratio is set to
1 / (EPS * ERRBND( *, cwise_i, cond_i )).
- A: The test ratio is set to
.. Parameters ..
Quick parameter tea: NMAX is determined by the largest number in the inverse of the hilbert matrix. Precision is exhausted when the largest entry in it is greater than 2 to the power of the number of bits in the fraction of the data type used plus one, which is 24 for single precision. NMAX should be 6 for single and 11 for double.
Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 95 of file cebchvxx.f.
π Author π
Generated automatically by Doxygen for LAPACK from the source code.
Stay slay, bestie β this page is stamped from LAPACK Version 3.12.0 and TESTING/LIN/cebchvxx.f(3). π«Άβ¨π
π¦ 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