TESTING/LIN/debchvxx.f(3)

NAME
TESTING/LIN/debchvxx.f

SYNOPSIS

  Functions/Subroutines
subroutine debchvxx (thresh, path)
DEBCHVXX

Function/Subroutine Documentation

  subroutine debchvxx (double precision thresh, character*3 path)

DEBCHVXX

Purpose:

      DEBCHVXX will run D**SVXX on a series of Hilbert matrices and then
      compare the error bounds returned by D**SVXX to see if the returned
      answer indeed falls within those bounds.
      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.
      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, CGESVXX 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 CGESVXX.  Let RCONDc be the RCOND returned by D**SVXX
              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 )).
           6. 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 )).
         .. Parameters ..
         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 debchvxx.f.

Author

Generated automatically by Doxygen for LAPACK from the source code.