TESTING/LIN/ddrvrfp.f(3)
π TESTING/LIN/ddrvrfp.f(3) π
okay so this page lives in the Library Functions Manual, and it is literally all about the DDRVRFP routine, bestie. π
πΈ NAME πΈ
TESTING/LIN/ddrvrfp.f β yes queen, that's the page. It documents DDRVRFP in the Library Functions Manual.
β¨ SYNOPSIS β¨
π¦ Functions/Subroutines π¦
subroutine ddrvrfp (nout, nn, nval, nns, nsval, nnt, ntval, thresh, a, asav, afac, ainv, b, bsav, xact, x, arf, arfinv, d_work_dlatms, d_work_dpot01, d_temp_dpot02, d_temp_dpot03, d_work_dlansy, d_work_dpot02, d_work_dpot03)
DDRVRFP
π Function/Subroutine Documentation π
subroutine ddrvrfp (integer nout, integer nn, integer, dimension( nn ) nval, integer nns, integer, dimension( nns ) nsval, integer nnt, integer, dimension( nnt ) ntval, double precision thresh, double precision, dimension( * ) a, double precision, dimension( * ) asav, double precision, dimension( * ) afac, double precision, dimension( * ) ainv, double precision, dimension( * ) b, double precision, dimension( * ) bsav, double precision, dimension( * ) xact, double precision, dimension( * ) x, double precision, dimension( * ) arf, double precision, dimension( * ) arfinv, double precision, dimension( * ) d_work_dlatms, double precision, dimension( * ) d_work_dpot01, double precision, dimension( * ) d_temp_dpot02, double precision, dimension( * ) d_temp_dpot03, double precision, dimension( * ) d_work_dlansy, double precision, dimension( * ) d_work_dpot02, double precision, dimension( * ) d_work_dpot03)
DDRVRFP
π Purpose π
DDRVRFP tests the LAPACK RFP routines: DPFTRF, DPFTRS, and DPFTRI.
This testing routine follows the same tests as DDRVPO (the test for the full format Symmetric Positive Definite solver).
The tests happen in Full Format, and conversion back and forth from full format to RFP format is performed using the routines DTRTTF and DTFTTR.
First, a specific matrix A of size N is created. There are nine types of different matrixes possible:
- Diagonal
- Random,
CNDNUM = 2 *First row and column zero*Last row and column zero*Middle row and column zero- Random,
CNDNUM = sqrt(0.1/EPS) - Random,
CNDNUM = 0.1/EPS - Scaled near underflow
- Scaled near overflow
(* - tests error exits from DPFTRF, 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 DPFTRF 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 the INFO parameter is not as expected. Failures occur when a test ratio is greater than THRES.
π Parameters π
NOUTβNOUT is INTEGER. The unit number for output.NNβNN is INTEGER. The number of values ofNcontained in the vectorNVAL.NVALβNVAL is INTEGER array, dimension (NN). The values of the matrix dimensionN.NNSβNNS is INTEGER. The number of values ofNRHScontained in the vectorNSVAL.NSVALβNSVAL is INTEGER array, dimension (NNS). The values of the number of right-hand sidesNRHS.NNTβNNT is INTEGER. The number of values ofMATRIX TYPEcontained in the vectorNTVAL.NTVALβNTVAL is INTEGER array, dimension (NNT). The values of matrix type (between 0 and 9 for PO/PP/PF matrices).THRESHβTHRESH is DOUBLE PRECISION. The threshold value for the test ratios. A result is included in the output file ifRESULT >= THRESH. To have every test ratio printed, useTHRESH = 0.AβA is DOUBLE PRECISION array, dimension (NMAX*NMAX)ASAVβASAV is DOUBLE PRECISION array, dimension (NMAX*NMAX)AFACβAFAC is DOUBLE PRECISION array, dimension (NMAX*NMAX)AINVβAINV is DOUBLE PRECISION array, dimension (NMAX*NMAX)BβB is DOUBLE PRECISION array, dimension (NMAX*MAXRHS)BSAVβBSAV is DOUBLE PRECISION array, dimension (NMAX*MAXRHS)XACTβXACT is DOUBLE PRECISION array, dimension (NMAX*MAXRHS)XβX is DOUBLE PRECISION array, dimension (NMAX*MAXRHS)ARFβARF is DOUBLE PRECISION array, dimension ((NMAX*(NMAX+1))/2)ARFINVβARFINV is DOUBLE PRECISION array, dimension ((NMAX*(NMAX+1))/2)D_WORK_DLATMSβD_WORK_DLATMS is DOUBLE PRECISION array, dimension ( 3*NMAX )D_WORK_DPOT01βD_WORK_DPOT01 is DOUBLE PRECISION array, dimension ( NMAX )D_TEMP_DPOT02βD_TEMP_DPOT02 is DOUBLE PRECISION array, dimension ( NMAX*MAXRHS )D_TEMP_DPOT03βD_TEMP_DPOT03 is DOUBLE PRECISION array, dimension ( NMAX*NMAX )D_WORK_DLANSYβD_WORK_DLANSY is DOUBLE PRECISION array, dimension ( NMAX )D_WORK_DPOT02βD_WORK_DPOT02 is DOUBLE PRECISION array, dimension ( NMAX )D_WORK_DPOT03βD_WORK_DPOT03 is DOUBLE PRECISION array, dimension ( NMAX )
π Author π
Univ. of TennesseeUniv. of California BerkeleyUniv. of Colorado DenverNAG Ltd.
Definition at line 232 of file ddrvrfp.f.
π«Ά Author π«Ά
Generated automatically by Doxygen for LAPACK from the source code.
π That's the whole page, bestie. Signing off from LAPACK, Version 3.12.0, on TESTING/LIN/ddrvrfp.f(3) β go slay your RFP tests. π
β¨
π¦ 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