TESTING/LIN/sebchvxx.f(3)

πŸ“¦
version 3.12.1 Β· 3 versions
, in arch rolling

πŸŽ€ TESTING/LIN/sebchvxx.f(3) πŸŽ€

from the Library Functions Manual, bestie β€” no cap, we're doing the whole thing. This is the page for the sebchvxx subroutine, and it's lowkey a whole vibe. πŸ’–


✨ NAME ✨

TESTING/LIN/sebchvxx.f β€” that's the name, periodt. This is the manual page for that file. πŸ’…


🌸 SYNOPSIS 🌸

Functions/Subroutines

subroutine sebchvxx (thresh, path)
  • SEBCHVXX β€” the short description. That's literally all it says here. 😭

πŸ¦‹ Function/Subroutine Documentation πŸ¦‹

subroutine sebchvxx (real thresh, character*3 path)

SEBCHVXX

πŸ’– Purpose πŸ’–

okay so SEBCHVXX will run S**SVXX on a series of Hilbert matrices and then compare the error bounds returned by SGESVXX to see if the returned answer indeed falls within those bounds. fr fr, that's the whole mission. 🫢

Eight test ratios will be computed. The tests will pass if they are .LT. THRESH. There are two cases that are determined by 1 / (SQRT( N ) * EPS). If that value is .LE. to the component wise reciprocal condition number, it uses the guaranteed case; other wise it uses the unguaranteed case. (Yes, β€œother wise” is two words in the original β€” we respect the source. πŸ’…)

Test ratios:

Let Xc be X_computed and Xt be X_truth. The norm used is the infinity norm.

Let A be the guaranteed case and B be the unguaranteed case.

  • 1. Normwise guaranteed forward error bound.
    • A: norm ( abs( Xc - Xt ) / norm ( Xt ) .LE. ERRBND( *, nwise_i, bnd_i ) and ERRBND( *, nwise_i, bnd_i ) .LE. MAX(SQRT(N),10) * EPS. If these conditions are met, the test ratio is set to be ERRBND( *, nwise_i, bnd_i ) / MAX(SQRT(N), 10). Otherwise it is 1/EPS.
    • B: For this case, SGESVXX should just return 1. If it is less than one, treat it the same as in 1A. Otherwise it fails. (Set test ratio to ERRBND( *, nwise_i, bnd_i ) * THRESH?)
  • 2. Componentwise guaranteed forward error bound.
    • A: norm ( abs( Xc(j) - Xt(j) ) ) / norm (Xt(j)) .LE. ERRBND( *, cwise_i, bnd_i ) for all j .AND. ERRBND( *, cwise_i, bnd_i ) .LE. MAX(SQRT(N), 10) * EPS. If these conditions are met, the test ratio is set to be ERRBND( *, cwise_i, bnd_i ) / MAX(SQRT(N), 10). Otherwise it is 1/EPS.
    • B: Same as normwise test ratio.
  • 3. Backwards error.
    • A: The test ratio is set to BERR/EPS.
    • B: Same test ratio.
  • 4. Reciprocal condition number.
    • A: A condition number is computed with Xt and compared with the one returned from SGESVXX. Let RCONDc be the RCOND returned by SGESVXX and RCONDt be the RCOND from the truth value. Test ratio is set to MAX(RCONDc/RCONDt, RCONDt/RCONDc).
    • B: Test ratio is set to 1 / (EPS * RCONDc).
  • 5. 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 )).
  • 7. Reciprocal componentwise condition number.
    • A: 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 )).
not me noticing the list goes 1, 2, 3, 4, 5, 7 β€” there is no 6 in the original, bestie. that's just how it is. πŸ™ˆ

The doc block also has a .. Parameters .. note: 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 sebchvxx.f.


πŸͺ„ Author πŸͺ„

Generated automatically by Doxygen for LAPACK from the source code.


okay that's the whole page, bestie! periodt πŸ’– the footer vibes are LAPACK Version 3.12.0 and TESTING/LIN/sebchvxx.f(3) β€” no separate date printed, so that's the source/version/reference situation. πŸŽ€πŸ’…

πŸ“¦ where this page comes from