TESTING/LIN/cdrvrfp.f(3)

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

πŸ¦‹ TESTING/LIN/cdrvrfp.f(3) πŸ¦‹

okay bestie, welcome to TESTING/LIN/cdrvrfp.f(3) from the Library Functions Manual β€” this is the CDRVRFP tester page and it is very β€œLAPACK lab report but make it iconic.” πŸ§ͺπŸ’…


🌸 NAME 🌸

TESTING/LIN/cdrvrfp.f


✨ SYNOPSIS ✨

🫢 Functions/Subroutines

subroutine cdrvrfp (nout, nn, nval, nns, nsval, nnt, ntval, thresh, a,
    asav, afac, ainv, b, bsav, xact, x, arf, arfinv, c_work_clatms,
    c_work_cpot02, c_work_cpot03, s_work_clatms, s_work_clanhe,
    s_work_cpot01, s_work_cpot02, s_work_cpot03)

CDRVRFP


πŸ’– FUNCTION/SUBROUTINE DOCUMENTATION πŸ’–

subroutine cdrvrfp (integer nout, integer nn, integer, dimension( nn ) nval,
    integer nns, integer, dimension( nns ) nsval, integer nnt, integer,
    dimension( nnt ) ntval, real thresh, complex, dimension( * ) a, complex,
    dimension( * ) asav, complex, dimension( * ) afac, complex, dimension( *
    ) ainv, complex, dimension( * ) b, complex, dimension( * ) bsav,
    complex, dimension( * ) xact, complex, dimension( * ) x, complex,
    dimension( * ) arf, complex, dimension( * ) arfinv, complex, dimension(
    * ) c_work_clatms, complex, dimension( * ) c_work_cpot02, complex,
    dimension( * ) c_work_cpot03, real, dimension( * ) s_work_clatms, real,
    dimension( * ) s_work_clanhe, real, dimension( * ) s_work_cpot01, real,
    dimension( * ) s_work_cpot02, real, dimension( * ) s_work_cpot03)

CDRVRFP

🎯 Purpose 🎯

CDRVRFP tests the LAPACK RFP routines: CPFTRF, CPFTRS, and CPFTRI.

This testing routine follows the same tests as CDRVPO (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 CTRTTF and CTFTTR.

First, a specific matrix A of size N is created. There are nine types of different matrixes possible.

  • 1. Diagonal
  • 2. Random, CNDNUM = 2
  • *3. First row and column zero
  • *4. Last row and column zero
  • *5. Middle row and column zero
  • 6. Random, CNDNUM = sqrt(0.1/EPS)
  • 7. Random, CNDNUM = 0.1/EPS
  • 8. Scaled near underflow
  • 9. Scaled near overflow
(* - tests error exits from CPFTRF, 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 CPFTRF 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 β€” INTEGER; the unit number for output.
  • NN β€” INTEGER; the number of values of N contained in the vector NVAL.
  • NVAL β€” INTEGER array, dimension (NN); the values of the matrix dimension N.
  • NNS β€” INTEGER; the number of values of NRHS contained in the vector NSVAL.
  • NSVAL β€” INTEGER array, dimension (NNS); the values of the number of right-hand sides NRHS.
  • NNT β€” INTEGER; the number of values of MATRIX TYPE contained in the vector NTVAL.
  • NTVAL β€” INTEGER array, dimension (NNT); the values of matrix type (between 0 and 9 for PO/PP/PF matrices).
  • THRESH β€” 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 β€” COMPLEX array, dimension (NMAX*NMAX)
  • ASAV β€” COMPLEX array, dimension (NMAX*NMAX)
  • AFAC β€” COMPLEX array, dimension (NMAX*NMAX)
  • AINV β€” COMPLEX array, dimension (NMAX*NMAX)
  • B β€” COMPLEX array, dimension (NMAX*MAXRHS)
  • BSAV β€” COMPLEX array, dimension (NMAX*MAXRHS)
  • XACT β€” COMPLEX array, dimension (NMAX*MAXRHS)
  • X β€” COMPLEX array, dimension (NMAX*MAXRHS)
  • ARF β€” COMPLEX array, dimension ((NMAX*(NMAX+1))/2)
  • ARFINV β€” COMPLEX array, dimension ((NMAX*(NMAX+1))/2)
  • C_WORK_CLATMS β€” COMPLEX array, dimension ( 3*NMAX )
  • C_WORK_CPOT02 β€” COMPLEX array, dimension ( NMAX*MAXRHS )
  • C_WORK_CPOT03 β€” COMPLEX array, dimension ( NMAX*NMAX )
  • S_WORK_CLATMS β€” REAL array, dimension ( NMAX )
  • S_WORK_CLANHE β€” REAL array, dimension ( NMAX )
  • S_WORK_CPOT01 β€” REAL array, dimension ( NMAX )
  • S_WORK_CPOT02 β€” REAL array, dimension ( NMAX )
  • S_WORK_CPOT03 β€” REAL array, dimension ( NMAX )

🌈 Author 🌈

  • Univ. of Tennessee
  • Univ. of California Berkeley
  • Univ. of Colorado Denver
  • NAG Ltd.

Definition at line 238 of file cdrvrfp.f.


πŸ‘‘ AUTHOR πŸ‘‘

Generated automatically by Doxygen for LAPACK from the source code.


signed off with main-character energy by LAPACK Version 3.12.0, source page TESTING/LIN/cdrvrfp.f(3) πŸ’– β€” and bestie, the footer does not print a date here, so we are absolutely not inventing one, periodt πŸŽ€πŸ’…

πŸ“¦ where this page comes from