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