LAPACK 3.3.0

cerrpox.f

Go to the documentation of this file.
00001       SUBROUTINE CERRPO( PATH, NUNIT )
00002 *
00003 *  -- LAPACK test routine (version 3.2.1) --
00004 *     Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd..
00005 *     April 2009
00006 *
00007 *     .. Scalar Arguments ..
00008       CHARACTER*3        PATH
00009       INTEGER            NUNIT
00010 *     ..
00011 *
00012 *  Purpose
00013 *  =======
00014 *
00015 *  CERRPO tests the error exits for the COMPLEX routines
00016 *  for Hermitian positive definite matrices.
00017 *
00018 *  Note that this file is used only when the XBLAS are available,
00019 *  otherwise cerrpo.f defines this subroutine.
00020 *
00021 *  Arguments
00022 *  =========
00023 *
00024 *  PATH    (input) CHARACTER*3
00025 *          The LAPACK path name for the routines to be tested.
00026 *
00027 *  NUNIT   (input) INTEGER
00028 *          The unit number for output.
00029 *
00030 *  =====================================================================
00031 *
00032 *     .. Parameters ..
00033       INTEGER            NMAX
00034       PARAMETER          ( NMAX = 4 )
00035 *     ..
00036 *     .. Local Scalars ..
00037       CHARACTER          EQ
00038       CHARACTER*2        C2
00039       INTEGER            I, INFO, J, N_ERR_BNDS, NPARAMS
00040       REAL               ANRM, RCOND, BERR
00041 *     ..
00042 *     .. Local Arrays ..
00043       REAL               S( NMAX ), R( NMAX ), R1( NMAX ), R2( NMAX ),
00044      $                   ERR_BNDS_N( NMAX, 3 ), ERR_BNDS_C( NMAX, 3 ),
00045      $                   PARAMS( 1 )
00046       COMPLEX            A( NMAX, NMAX ), AF( NMAX, NMAX ), B( NMAX ),
00047      $                   W( 2*NMAX ), X( NMAX )
00048 *     ..
00049 *     .. External Functions ..
00050       LOGICAL            LSAMEN
00051       EXTERNAL           LSAMEN
00052 *     ..
00053 *     .. External Subroutines ..
00054       EXTERNAL           ALAESM, CHKXER, CPBCON, CPBEQU, CPBRFS, CPBTF2,
00055      $                   CPBTRF, CPBTRS, CPOCON, CPOEQU, CPORFS, CPOTF2,
00056      $                   CPOTRF, CPOTRI, CPOTRS, CPPCON, CPPEQU, CPPRFS,
00057      $                   CPPTRF, CPPTRI, CPPTRS, CPOEQUB, CPORFSX
00058 *     ..
00059 *     .. Scalars in Common ..
00060       LOGICAL            LERR, OK
00061       CHARACTER*32       SRNAMT
00062       INTEGER            INFOT, NOUT
00063 *     ..
00064 *     .. Common blocks ..
00065       COMMON             / INFOC / INFOT, NOUT, OK, LERR
00066       COMMON             / SRNAMC / SRNAMT
00067 *     ..
00068 *     .. Intrinsic Functions ..
00069       INTRINSIC          CMPLX, REAL
00070 *     ..
00071 *     .. Executable Statements ..
00072 *
00073       NOUT = NUNIT
00074       WRITE( NOUT, FMT = * )
00075       C2 = PATH( 2: 3 )
00076 *
00077 *     Set the variables to innocuous values.
00078 *
00079       DO 20 J = 1, NMAX
00080          DO 10 I = 1, NMAX
00081             A( I, J ) = CMPLX( 1. / REAL( I+J ), -1. / REAL( I+J ) )
00082             AF( I, J ) = CMPLX( 1. / REAL( I+J ), -1. / REAL( I+J ) )
00083    10    CONTINUE
00084          B( J ) = 0.
00085          R1( J ) = 0.
00086          R2( J ) = 0.
00087          W( J ) = 0.
00088          X( J ) = 0.
00089          S( J ) = 0.
00090    20 CONTINUE
00091       ANRM = 1.
00092       OK = .TRUE.
00093 *
00094 *     Test error exits of the routines that use the Cholesky
00095 *     decomposition of a Hermitian positive definite matrix.
00096 *
00097       IF( LSAMEN( 2, C2, 'PO' ) ) THEN
00098 *
00099 *        CPOTRF
00100 *
00101          SRNAMT = 'CPOTRF'
00102          INFOT = 1
00103          CALL CPOTRF( '/', 0, A, 1, INFO )
00104          CALL CHKXER( 'CPOTRF', INFOT, NOUT, LERR, OK )
00105          INFOT = 2
00106          CALL CPOTRF( 'U', -1, A, 1, INFO )
00107          CALL CHKXER( 'CPOTRF', INFOT, NOUT, LERR, OK )
00108          INFOT = 4
00109          CALL CPOTRF( 'U', 2, A, 1, INFO )
00110          CALL CHKXER( 'CPOTRF', INFOT, NOUT, LERR, OK )
00111 *
00112 *        CPOTF2
00113 *
00114          SRNAMT = 'CPOTF2'
00115          INFOT = 1
00116          CALL CPOTF2( '/', 0, A, 1, INFO )
00117          CALL CHKXER( 'CPOTF2', INFOT, NOUT, LERR, OK )
00118          INFOT = 2
00119          CALL CPOTF2( 'U', -1, A, 1, INFO )
00120          CALL CHKXER( 'CPOTF2', INFOT, NOUT, LERR, OK )
00121          INFOT = 4
00122          CALL CPOTF2( 'U', 2, A, 1, INFO )
00123          CALL CHKXER( 'CPOTF2', INFOT, NOUT, LERR, OK )
00124 *
00125 *        CPOTRI
00126 *
00127          SRNAMT = 'CPOTRI'
00128          INFOT = 1
00129          CALL CPOTRI( '/', 0, A, 1, INFO )
00130          CALL CHKXER( 'CPOTRI', INFOT, NOUT, LERR, OK )
00131          INFOT = 2
00132          CALL CPOTRI( 'U', -1, A, 1, INFO )
00133          CALL CHKXER( 'CPOTRI', INFOT, NOUT, LERR, OK )
00134          INFOT = 4
00135          CALL CPOTRI( 'U', 2, A, 1, INFO )
00136          CALL CHKXER( 'CPOTRI', INFOT, NOUT, LERR, OK )
00137 *
00138 *        CPOTRS
00139 *
00140          SRNAMT = 'CPOTRS'
00141          INFOT = 1
00142          CALL CPOTRS( '/', 0, 0, A, 1, B, 1, INFO )
00143          CALL CHKXER( 'CPOTRS', INFOT, NOUT, LERR, OK )
00144          INFOT = 2
00145          CALL CPOTRS( 'U', -1, 0, A, 1, B, 1, INFO )
00146          CALL CHKXER( 'CPOTRS', INFOT, NOUT, LERR, OK )
00147          INFOT = 3
00148          CALL CPOTRS( 'U', 0, -1, A, 1, B, 1, INFO )
00149          CALL CHKXER( 'CPOTRS', INFOT, NOUT, LERR, OK )
00150          INFOT = 5
00151          CALL CPOTRS( 'U', 2, 1, A, 1, B, 2, INFO )
00152          CALL CHKXER( 'CPOTRS', INFOT, NOUT, LERR, OK )
00153          INFOT = 7
00154          CALL CPOTRS( 'U', 2, 1, A, 2, B, 1, INFO )
00155          CALL CHKXER( 'CPOTRS', INFOT, NOUT, LERR, OK )
00156 *
00157 *        CPORFS
00158 *
00159          SRNAMT = 'CPORFS'
00160          INFOT = 1
00161          CALL CPORFS( '/', 0, 0, A, 1, AF, 1, B, 1, X, 1, R1, R2, W, R,
00162      $                INFO )
00163          CALL CHKXER( 'CPORFS', INFOT, NOUT, LERR, OK )
00164          INFOT = 2
00165          CALL CPORFS( 'U', -1, 0, A, 1, AF, 1, B, 1, X, 1, R1, R2, W, R,
00166      $                INFO )
00167          CALL CHKXER( 'CPORFS', INFOT, NOUT, LERR, OK )
00168          INFOT = 3
00169          CALL CPORFS( 'U', 0, -1, A, 1, AF, 1, B, 1, X, 1, R1, R2, W, R,
00170      $                INFO )
00171          CALL CHKXER( 'CPORFS', INFOT, NOUT, LERR, OK )
00172          INFOT = 5
00173          CALL CPORFS( 'U', 2, 1, A, 1, AF, 2, B, 2, X, 2, R1, R2, W, R,
00174      $                INFO )
00175          CALL CHKXER( 'CPORFS', INFOT, NOUT, LERR, OK )
00176          INFOT = 7
00177          CALL CPORFS( 'U', 2, 1, A, 2, AF, 1, B, 2, X, 2, R1, R2, W, R,
00178      $                INFO )
00179          CALL CHKXER( 'CPORFS', INFOT, NOUT, LERR, OK )
00180          INFOT = 9
00181          CALL CPORFS( 'U', 2, 1, A, 2, AF, 2, B, 1, X, 2, R1, R2, W, R,
00182      $                INFO )
00183          CALL CHKXER( 'CPORFS', INFOT, NOUT, LERR, OK )
00184          INFOT = 11
00185          CALL CPORFS( 'U', 2, 1, A, 2, AF, 2, B, 2, X, 1, R1, R2, W, R,
00186      $                INFO )
00187          CALL CHKXER( 'CPORFS', INFOT, NOUT, LERR, OK )
00188 *
00189 *        CPORFSX
00190 *
00191          N_ERR_BNDS = 3
00192          NPARAMS = 0
00193          SRNAMT = 'CPORFSX'
00194          INFOT = 1
00195          CALL CPORFSX( '/', EQ, 0, 0, A, 1, AF, 1, S, B, 1, X, 1,
00196      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00197      $        PARAMS, W, R, INFO )
00198          CALL CHKXER( 'CPORFSX', INFOT, NOUT, LERR, OK )
00199          INFOT = 2
00200          CALL CPORFSX( 'U', EQ, -1, 0, A, 1, AF, 1, S, B, 1, X, 1,
00201      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00202      $        PARAMS, W, R, INFO )
00203          CALL CHKXER( 'CPORFSX', INFOT, NOUT, LERR, OK )
00204          EQ = 'N'
00205          INFOT = 3
00206          CALL CPORFSX( 'U', EQ, -1, 0, A, 1, AF, 1, S, B, 1, X, 1,
00207      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00208      $        PARAMS, W, R, INFO )
00209          CALL CHKXER( 'CPORFSX', INFOT, NOUT, LERR, OK )
00210          INFOT = 4
00211          CALL CPORFSX( 'U', EQ, 0, -1, A, 1, AF, 1, S, B, 1, X, 1,
00212      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00213      $        PARAMS, W, R, INFO )
00214          CALL CHKXER( 'CPORFSX', INFOT, NOUT, LERR, OK )
00215          INFOT = 6
00216          CALL CPORFSX( 'U', EQ, 2, 1, A, 1, AF, 2, S, B, 2, X, 2,
00217      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00218      $        PARAMS, W, R, INFO )
00219          CALL CHKXER( 'CPORFSX', INFOT, NOUT, LERR, OK )
00220          INFOT = 8
00221          CALL CPORFSX( 'U', EQ, 2, 1, A, 2, AF, 1, S, B, 2, X, 2,
00222      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00223      $        PARAMS, W, R, INFO )
00224          CALL CHKXER( 'CPORFSX', INFOT, NOUT, LERR, OK )
00225          INFOT = 11
00226          CALL CPORFSX( 'U', EQ, 2, 1, A, 2, AF, 2, S, B, 1, X, 2,
00227      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00228      $        PARAMS, W, R, INFO )
00229          CALL CHKXER( 'CPORFSX', INFOT, NOUT, LERR, OK )
00230          INFOT = 13
00231          CALL CPORFSX( 'U', EQ, 2, 1, A, 2, AF, 2, S, B, 2, X, 1,
00232      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00233      $        PARAMS, W, R, INFO )
00234          CALL CHKXER( 'CPORFSX', INFOT, NOUT, LERR, OK )
00235 *
00236 *        CPOCON
00237 *
00238          SRNAMT = 'CPOCON'
00239          INFOT = 1
00240          CALL CPOCON( '/', 0, A, 1, ANRM, RCOND, W, R, INFO )
00241          CALL CHKXER( 'CPOCON', INFOT, NOUT, LERR, OK )
00242          INFOT = 2
00243          CALL CPOCON( 'U', -1, A, 1, ANRM, RCOND, W, R, INFO )
00244          CALL CHKXER( 'CPOCON', INFOT, NOUT, LERR, OK )
00245          INFOT = 4
00246          CALL CPOCON( 'U', 2, A, 1, ANRM, RCOND, W, R, INFO )
00247          CALL CHKXER( 'CPOCON', INFOT, NOUT, LERR, OK )
00248          INFOT = 5
00249          CALL CPOCON( 'U', 1, A, 1, -ANRM, RCOND, W, R, INFO )
00250          CALL CHKXER( 'CPOCON', INFOT, NOUT, LERR, OK )
00251 *
00252 *        CPOEQU
00253 *
00254          SRNAMT = 'CPOEQU'
00255          INFOT = 1
00256          CALL CPOEQU( -1, A, 1, R1, RCOND, ANRM, INFO )
00257          CALL CHKXER( 'CPOEQU', INFOT, NOUT, LERR, OK )
00258          INFOT = 3
00259          CALL CPOEQU( 2, A, 1, R1, RCOND, ANRM, INFO )
00260          CALL CHKXER( 'CPOEQU', INFOT, NOUT, LERR, OK )
00261 *
00262 *        CPOEQUB
00263 *
00264          SRNAMT = 'CPOEQUB'
00265          INFOT = 1
00266          CALL CPOEQUB( -1, A, 1, R1, RCOND, ANRM, INFO )
00267          CALL CHKXER( 'CPOEQUB', INFOT, NOUT, LERR, OK )
00268          INFOT = 3
00269          CALL CPOEQUB( 2, A, 1, R1, RCOND, ANRM, INFO )
00270          CALL CHKXER( 'CPOEQUB', INFOT, NOUT, LERR, OK )
00271 *
00272 *     Test error exits of the routines that use the Cholesky
00273 *     decomposition of a Hermitian positive definite packed matrix.
00274 *
00275       ELSE IF( LSAMEN( 2, C2, 'PP' ) ) THEN
00276 *
00277 *        CPPTRF
00278 *
00279          SRNAMT = 'CPPTRF'
00280          INFOT = 1
00281          CALL CPPTRF( '/', 0, A, INFO )
00282          CALL CHKXER( 'CPPTRF', INFOT, NOUT, LERR, OK )
00283          INFOT = 2
00284          CALL CPPTRF( 'U', -1, A, INFO )
00285          CALL CHKXER( 'CPPTRF', INFOT, NOUT, LERR, OK )
00286 *
00287 *        CPPTRI
00288 *
00289          SRNAMT = 'CPPTRI'
00290          INFOT = 1
00291          CALL CPPTRI( '/', 0, A, INFO )
00292          CALL CHKXER( 'CPPTRI', INFOT, NOUT, LERR, OK )
00293          INFOT = 2
00294          CALL CPPTRI( 'U', -1, A, INFO )
00295          CALL CHKXER( 'CPPTRI', INFOT, NOUT, LERR, OK )
00296 *
00297 *        CPPTRS
00298 *
00299          SRNAMT = 'CPPTRS'
00300          INFOT = 1
00301          CALL CPPTRS( '/', 0, 0, A, B, 1, INFO )
00302          CALL CHKXER( 'CPPTRS', INFOT, NOUT, LERR, OK )
00303          INFOT = 2
00304          CALL CPPTRS( 'U', -1, 0, A, B, 1, INFO )
00305          CALL CHKXER( 'CPPTRS', INFOT, NOUT, LERR, OK )
00306          INFOT = 3
00307          CALL CPPTRS( 'U', 0, -1, A, B, 1, INFO )
00308          CALL CHKXER( 'CPPTRS', INFOT, NOUT, LERR, OK )
00309          INFOT = 6
00310          CALL CPPTRS( 'U', 2, 1, A, B, 1, INFO )
00311          CALL CHKXER( 'CPPTRS', INFOT, NOUT, LERR, OK )
00312 *
00313 *        CPPRFS
00314 *
00315          SRNAMT = 'CPPRFS'
00316          INFOT = 1
00317          CALL CPPRFS( '/', 0, 0, A, AF, B, 1, X, 1, R1, R2, W, R, INFO )
00318          CALL CHKXER( 'CPPRFS', INFOT, NOUT, LERR, OK )
00319          INFOT = 2
00320          CALL CPPRFS( 'U', -1, 0, A, AF, B, 1, X, 1, R1, R2, W, R,
00321      $                INFO )
00322          CALL CHKXER( 'CPPRFS', INFOT, NOUT, LERR, OK )
00323          INFOT = 3
00324          CALL CPPRFS( 'U', 0, -1, A, AF, B, 1, X, 1, R1, R2, W, R,
00325      $                INFO )
00326          CALL CHKXER( 'CPPRFS', INFOT, NOUT, LERR, OK )
00327          INFOT = 7
00328          CALL CPPRFS( 'U', 2, 1, A, AF, B, 1, X, 2, R1, R2, W, R, INFO )
00329          CALL CHKXER( 'CPPRFS', INFOT, NOUT, LERR, OK )
00330          INFOT = 9
00331          CALL CPPRFS( 'U', 2, 1, A, AF, B, 2, X, 1, R1, R2, W, R, INFO )
00332          CALL CHKXER( 'CPPRFS', INFOT, NOUT, LERR, OK )
00333 *
00334 *        CPPCON
00335 *
00336          SRNAMT = 'CPPCON'
00337          INFOT = 1
00338          CALL CPPCON( '/', 0, A, ANRM, RCOND, W, R, INFO )
00339          CALL CHKXER( 'CPPCON', INFOT, NOUT, LERR, OK )
00340          INFOT = 2
00341          CALL CPPCON( 'U', -1, A, ANRM, RCOND, W, R, INFO )
00342          CALL CHKXER( 'CPPCON', INFOT, NOUT, LERR, OK )
00343          INFOT = 4
00344          CALL CPPCON( 'U', 1, A, -ANRM, RCOND, W, R, INFO )
00345          CALL CHKXER( 'CPPCON', INFOT, NOUT, LERR, OK )
00346 *
00347 *        CPPEQU
00348 *
00349          SRNAMT = 'CPPEQU'
00350          INFOT = 1
00351          CALL CPPEQU( '/', 0, A, R1, RCOND, ANRM, INFO )
00352          CALL CHKXER( 'CPPEQU', INFOT, NOUT, LERR, OK )
00353          INFOT = 2
00354          CALL CPPEQU( 'U', -1, A, R1, RCOND, ANRM, INFO )
00355          CALL CHKXER( 'CPPEQU', INFOT, NOUT, LERR, OK )
00356 *
00357 *     Test error exits of the routines that use the Cholesky
00358 *     decomposition of a Hermitian positive definite band matrix.
00359 *
00360       ELSE IF( LSAMEN( 2, C2, 'PB' ) ) THEN
00361 *
00362 *        CPBTRF
00363 *
00364          SRNAMT = 'CPBTRF'
00365          INFOT = 1
00366          CALL CPBTRF( '/', 0, 0, A, 1, INFO )
00367          CALL CHKXER( 'CPBTRF', INFOT, NOUT, LERR, OK )
00368          INFOT = 2
00369          CALL CPBTRF( 'U', -1, 0, A, 1, INFO )
00370          CALL CHKXER( 'CPBTRF', INFOT, NOUT, LERR, OK )
00371          INFOT = 3
00372          CALL CPBTRF( 'U', 1, -1, A, 1, INFO )
00373          CALL CHKXER( 'CPBTRF', INFOT, NOUT, LERR, OK )
00374          INFOT = 5
00375          CALL CPBTRF( 'U', 2, 1, A, 1, INFO )
00376          CALL CHKXER( 'CPBTRF', INFOT, NOUT, LERR, OK )
00377 *
00378 *        CPBTF2
00379 *
00380          SRNAMT = 'CPBTF2'
00381          INFOT = 1
00382          CALL CPBTF2( '/', 0, 0, A, 1, INFO )
00383          CALL CHKXER( 'CPBTF2', INFOT, NOUT, LERR, OK )
00384          INFOT = 2
00385          CALL CPBTF2( 'U', -1, 0, A, 1, INFO )
00386          CALL CHKXER( 'CPBTF2', INFOT, NOUT, LERR, OK )
00387          INFOT = 3
00388          CALL CPBTF2( 'U', 1, -1, A, 1, INFO )
00389          CALL CHKXER( 'CPBTF2', INFOT, NOUT, LERR, OK )
00390          INFOT = 5
00391          CALL CPBTF2( 'U', 2, 1, A, 1, INFO )
00392          CALL CHKXER( 'CPBTF2', INFOT, NOUT, LERR, OK )
00393 *
00394 *        CPBTRS
00395 *
00396          SRNAMT = 'CPBTRS'
00397          INFOT = 1
00398          CALL CPBTRS( '/', 0, 0, 0, A, 1, B, 1, INFO )
00399          CALL CHKXER( 'CPBTRS', INFOT, NOUT, LERR, OK )
00400          INFOT = 2
00401          CALL CPBTRS( 'U', -1, 0, 0, A, 1, B, 1, INFO )
00402          CALL CHKXER( 'CPBTRS', INFOT, NOUT, LERR, OK )
00403          INFOT = 3
00404          CALL CPBTRS( 'U', 1, -1, 0, A, 1, B, 1, INFO )
00405          CALL CHKXER( 'CPBTRS', INFOT, NOUT, LERR, OK )
00406          INFOT = 4
00407          CALL CPBTRS( 'U', 0, 0, -1, A, 1, B, 1, INFO )
00408          CALL CHKXER( 'CPBTRS', INFOT, NOUT, LERR, OK )
00409          INFOT = 6
00410          CALL CPBTRS( 'U', 2, 1, 1, A, 1, B, 1, INFO )
00411          CALL CHKXER( 'CPBTRS', INFOT, NOUT, LERR, OK )
00412          INFOT = 8
00413          CALL CPBTRS( 'U', 2, 0, 1, A, 1, B, 1, INFO )
00414          CALL CHKXER( 'CPBTRS', INFOT, NOUT, LERR, OK )
00415 *
00416 *        CPBRFS
00417 *
00418          SRNAMT = 'CPBRFS'
00419          INFOT = 1
00420          CALL CPBRFS( '/', 0, 0, 0, A, 1, AF, 1, B, 1, X, 1, R1, R2, W,
00421      $                R, INFO )
00422          CALL CHKXER( 'CPBRFS', INFOT, NOUT, LERR, OK )
00423          INFOT = 2
00424          CALL CPBRFS( 'U', -1, 0, 0, A, 1, AF, 1, B, 1, X, 1, R1, R2, W,
00425      $                R, INFO )
00426          CALL CHKXER( 'CPBRFS', INFOT, NOUT, LERR, OK )
00427          INFOT = 3
00428          CALL CPBRFS( 'U', 1, -1, 0, A, 1, AF, 1, B, 1, X, 1, R1, R2, W,
00429      $                R, INFO )
00430          CALL CHKXER( 'CPBRFS', INFOT, NOUT, LERR, OK )
00431          INFOT = 4
00432          CALL CPBRFS( 'U', 0, 0, -1, A, 1, AF, 1, B, 1, X, 1, R1, R2, W,
00433      $                R, INFO )
00434          CALL CHKXER( 'CPBRFS', INFOT, NOUT, LERR, OK )
00435          INFOT = 6
00436          CALL CPBRFS( 'U', 2, 1, 1, A, 1, AF, 2, B, 2, X, 2, R1, R2, W,
00437      $                R, INFO )
00438          CALL CHKXER( 'CPBRFS', INFOT, NOUT, LERR, OK )
00439          INFOT = 8
00440          CALL CPBRFS( 'U', 2, 1, 1, A, 2, AF, 1, B, 2, X, 2, R1, R2, W,
00441      $                R, INFO )
00442          CALL CHKXER( 'CPBRFS', INFOT, NOUT, LERR, OK )
00443          INFOT = 10
00444          CALL CPBRFS( 'U', 2, 0, 1, A, 1, AF, 1, B, 1, X, 2, R1, R2, W,
00445      $                R, INFO )
00446          CALL CHKXER( 'CPBRFS', INFOT, NOUT, LERR, OK )
00447          INFOT = 12
00448          CALL CPBRFS( 'U', 2, 0, 1, A, 1, AF, 1, B, 2, X, 1, R1, R2, W,
00449      $                R, INFO )
00450          CALL CHKXER( 'CPBRFS', INFOT, NOUT, LERR, OK )
00451 *
00452 *        CPBCON
00453 *
00454          SRNAMT = 'CPBCON'
00455          INFOT = 1
00456          CALL CPBCON( '/', 0, 0, A, 1, ANRM, RCOND, W, R, INFO )
00457          CALL CHKXER( 'CPBCON', INFOT, NOUT, LERR, OK )
00458          INFOT = 2
00459          CALL CPBCON( 'U', -1, 0, A, 1, ANRM, RCOND, W, R, INFO )
00460          CALL CHKXER( 'CPBCON', INFOT, NOUT, LERR, OK )
00461          INFOT = 3
00462          CALL CPBCON( 'U', 1, -1, A, 1, ANRM, RCOND, W, R, INFO )
00463          CALL CHKXER( 'CPBCON', INFOT, NOUT, LERR, OK )
00464          INFOT = 5
00465          CALL CPBCON( 'U', 2, 1, A, 1, ANRM, RCOND, W, R, INFO )
00466          CALL CHKXER( 'CPBCON', INFOT, NOUT, LERR, OK )
00467          INFOT = 6
00468          CALL CPBCON( 'U', 1, 0, A, 1, -ANRM, RCOND, W, R, INFO )
00469          CALL CHKXER( 'CPBCON', INFOT, NOUT, LERR, OK )
00470 *
00471 *        CPBEQU
00472 *
00473          SRNAMT = 'CPBEQU'
00474          INFOT = 1
00475          CALL CPBEQU( '/', 0, 0, A, 1, R1, RCOND, ANRM, INFO )
00476          CALL CHKXER( 'CPBEQU', INFOT, NOUT, LERR, OK )
00477          INFOT = 2
00478          CALL CPBEQU( 'U', -1, 0, A, 1, R1, RCOND, ANRM, INFO )
00479          CALL CHKXER( 'CPBEQU', INFOT, NOUT, LERR, OK )
00480          INFOT = 3
00481          CALL CPBEQU( 'U', 1, -1, A, 1, R1, RCOND, ANRM, INFO )
00482          CALL CHKXER( 'CPBEQU', INFOT, NOUT, LERR, OK )
00483          INFOT = 5
00484          CALL CPBEQU( 'U', 2, 1, A, 1, R1, RCOND, ANRM, INFO )
00485          CALL CHKXER( 'CPBEQU', INFOT, NOUT, LERR, OK )
00486       END IF
00487 *
00488 *     Print a summary line.
00489 *
00490       CALL ALAESM( PATH, OK, NOUT )
00491 *
00492       RETURN
00493 *
00494 *     End of CERRPO
00495 *
00496       END
 All Files Functions