TESTING/LIN/sdrvrfp.f(3) Library Functions Manual TESTING/LIN/sdrvrfp.f(3) NAME TESTING/LIN/sdrvrfp.f SYNOPSIS Functions/Subroutines subroutine sdrvrfp (nout, nn, nval, nns, nsval, nnt, ntval, thresh, a, asav, afac, ainv, b, bsav, xact, x, arf, arfinv, s_work_slatms, s_work_spot01, s_temp_spot02, s_temp_spot03, s_work_slansy, s_work_spot02, s_work_spot03) SDRVRFP Function/Subroutine Documentation subroutine sdrvrfp (integer nout, integer nn, integer, dimension( nn ) nval, integer nns, integer, dimension( nns ) nsval, integer nnt, integer, dimension( nnt ) ntval, real thresh, real, dimension( * ) a, real, dimension( * ) asav, real, dimension( * ) afac, real, dimension( * ) ainv, real, dimension( * ) b, real, dimension( * ) bsav, real, dimension( * ) xact, real, dimension( * ) x, real, dimension( * ) arf, real, dimension( * ) arfinv, real, dimension( * ) s_work_slatms, real, dimension( * ) s_work_spot01, real, dimension( * ) s_temp_spot02, real, dimension( * ) s_temp_spot03, real, dimension( * ) s_work_slansy, real, dimension( * ) s_work_spot02, real, dimension( * ) s_work_spot03) SDRVRFP Purpose: SDRVRFP tests the LAPACK RFP routines: SPFTRF, SPFTRS, and SPFTRI. This testing routine follow the same tests as DDRVPO (test for the full format Symmetric Positive Definite solver). The tests are performed in Full Format, conversion back and forth from full format to RFP format are performed using the routines STRTTF and STFTTR. First, a specific matrix A of size N is created. There is nine types of different matrixes possible. 1. Diagonal 6. Random, CNDNUM = sqrt(0.1/EPS) 2. Random, CNDNUM = 2 7. Random, CNDNUM = 0.1/EPS *3. First row and column zero 8. Scaled near underflow *4. Last row and column zero 9. Scaled near overflow *5. Middle row and column zero (* - tests error exits from SPFTRF, no test ratios are computed) A solution XACT of size N-by-NRHS is created and the associated right hand side B as well. Then SPFTRF is called to compute L (or U), the Cholesky factor of A. Then L (or U) is used to solve the linear system of equations AX = B. This gives X. Then L (or U) is used to compute the inverse of A, AINV. The following four tests are then performed: (1) norm( L*L' - A ) / ( N * norm(A) * EPS ) or norm( U'*U - A ) / ( N * norm(A) * EPS ), (2) norm(B - A*X) / ( norm(A) * norm(X) * EPS ), (3) norm( I - A*AINV ) / ( N * norm(A) * norm(AINV) * EPS ), (4) ( norm(X-XACT) * RCOND ) / ( norm(XACT) * EPS ), where EPS is the machine precision, RCOND the condition number of A, and norm( . ) the 1-norm for (1,2,3) and the inf-norm for (4). Errors occur when INFO parameter is not as expected. Failures occur when a test ratios is greater than THRES. Parameters NOUT NOUT is INTEGER The unit number for output. NN NN is INTEGER The number of values of N contained in the vector NVAL. NVAL NVAL is INTEGER array, dimension (NN) The values of the matrix dimension N. NNS NNS is INTEGER The number of values of NRHS contained in the vector NSVAL. NSVAL NSVAL is INTEGER array, dimension (NNS) The values of the number of right-hand sides NRHS. NNT NNT is INTEGER The number of values of MATRIX TYPE contained in the vector NTVAL. NTVAL NTVAL is INTEGER array, dimension (NNT) The values of matrix type (between 0 and 9 for PO/PP/PF matrices). THRESH THRESH is REAL The threshold value for the test ratios. A result is included in the output file if RESULT >= THRESH. To have every test ratio printed, use THRESH = 0. A A is REAL array, dimension (NMAX*NMAX) ASAV ASAV is REAL array, dimension (NMAX*NMAX) AFAC AFAC is REAL array, dimension (NMAX*NMAX) AINV AINV is REAL array, dimension (NMAX*NMAX) B B is REAL array, dimension (NMAX*MAXRHS) BSAV BSAV is REAL array, dimension (NMAX*MAXRHS) XACT XACT is REAL array, dimension (NMAX*MAXRHS) X X is REAL array, dimension (NMAX*MAXRHS) ARF ARF is REAL array, dimension ((NMAX*(NMAX+1))/2) ARFINV ARFINV is REAL array, dimension ((NMAX*(NMAX+1))/2) S_WORK_SLATMS S_WORK_SLATMS is REAL array, dimension ( 3*NMAX ) S_WORK_SPOT01 S_WORK_SPOT01 is REAL array, dimension ( NMAX ) S_TEMP_SPOT02 S_TEMP_SPOT02 is REAL array, dimension ( NMAX*MAXRHS ) S_TEMP_SPOT03 S_TEMP_SPOT03 is REAL array, dimension ( NMAX*NMAX ) S_WORK_SLANSY S_WORK_SLANSY is REAL array, dimension ( NMAX ) S_WORK_SPOT02 S_WORK_SPOT02 is REAL array, dimension ( NMAX ) S_WORK_SPOT03 S_WORK_SPOT03 is REAL array, dimension ( NMAX ) Author Univ. of Tennessee Univ. of California Berkeley Univ. of Colorado Denver NAG Ltd. Definition at line 232 of file sdrvrfp.f. Author Generated automatically by Doxygen for LAPACK from the source code. LAPACK Version 3.12.0 TESTING/LIN/sdrvrfp.f(3)