LAPACK 3.3.0

zerrpox.f

Go to the documentation of this file.
00001       SUBROUTINE ZERRPO( 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 *  ZERRPO tests the error exits for the COMPLEX*16 routines
00016 *  for Hermitian positive definite matrices.
00017 *
00018 *  Note that this file is used only when the XBLAS are available,
00019 *  otherwise zerrpo.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       DOUBLE PRECISION   ANRM, RCOND, BERR
00041 *     ..
00042 *     .. Local Arrays ..
00043       DOUBLE PRECISION   S( NMAX ), R( NMAX ), R1( NMAX ), R2( NMAX ),
00044      $                   ERR_BNDS_N( NMAX, 3 ), ERR_BNDS_C( NMAX, 3 ),
00045      $                   PARAMS( 1 )
00046       COMPLEX*16         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, ZPBCON, ZPBEQU, ZPBRFS, ZPBTF2,
00055      $                   ZPBTRF, ZPBTRS, ZPOCON, ZPOEQU, ZPORFS, ZPOTF2,
00056      $                   ZPOTRF, ZPOTRI, ZPOTRS, ZPPCON, ZPPEQU, ZPPRFS,
00057      $                   ZPPTRF, ZPPTRI, ZPPTRS, ZPOEQUB, ZPORFSX
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          DBLE, DCMPLX
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 ) = DCMPLX( 1.D0 / DBLE( I+J ),
00082      $                  -1.D0 / DBLE( I+J ) )
00083             AF( I, J ) = DCMPLX( 1.D0 / DBLE( I+J ),
00084      $                   -1.D0 / DBLE( I+J ) )
00085    10    CONTINUE
00086          B( J ) = 0.D0
00087          R1( J ) = 0.D0
00088          R2( J ) = 0.D0
00089          W( J ) = 0.D0
00090          X( J ) = 0.D0
00091          S( J ) = 0.D0
00092    20 CONTINUE
00093       ANRM = 1.D0
00094       OK = .TRUE.
00095 *
00096 *     Test error exits of the routines that use the Cholesky
00097 *     decomposition of a Hermitian positive definite matrix.
00098 *
00099       IF( LSAMEN( 2, C2, 'PO' ) ) THEN
00100 *
00101 *        ZPOTRF
00102 *
00103          SRNAMT = 'ZPOTRF'
00104          INFOT = 1
00105          CALL ZPOTRF( '/', 0, A, 1, INFO )
00106          CALL CHKXER( 'ZPOTRF', INFOT, NOUT, LERR, OK )
00107          INFOT = 2
00108          CALL ZPOTRF( 'U', -1, A, 1, INFO )
00109          CALL CHKXER( 'ZPOTRF', INFOT, NOUT, LERR, OK )
00110          INFOT = 4
00111          CALL ZPOTRF( 'U', 2, A, 1, INFO )
00112          CALL CHKXER( 'ZPOTRF', INFOT, NOUT, LERR, OK )
00113 *
00114 *        ZPOTF2
00115 *
00116          SRNAMT = 'ZPOTF2'
00117          INFOT = 1
00118          CALL ZPOTF2( '/', 0, A, 1, INFO )
00119          CALL CHKXER( 'ZPOTF2', INFOT, NOUT, LERR, OK )
00120          INFOT = 2
00121          CALL ZPOTF2( 'U', -1, A, 1, INFO )
00122          CALL CHKXER( 'ZPOTF2', INFOT, NOUT, LERR, OK )
00123          INFOT = 4
00124          CALL ZPOTF2( 'U', 2, A, 1, INFO )
00125          CALL CHKXER( 'ZPOTF2', INFOT, NOUT, LERR, OK )
00126 *
00127 *        ZPOTRI
00128 *
00129          SRNAMT = 'ZPOTRI'
00130          INFOT = 1
00131          CALL ZPOTRI( '/', 0, A, 1, INFO )
00132          CALL CHKXER( 'ZPOTRI', INFOT, NOUT, LERR, OK )
00133          INFOT = 2
00134          CALL ZPOTRI( 'U', -1, A, 1, INFO )
00135          CALL CHKXER( 'ZPOTRI', INFOT, NOUT, LERR, OK )
00136          INFOT = 4
00137          CALL ZPOTRI( 'U', 2, A, 1, INFO )
00138          CALL CHKXER( 'ZPOTRI', INFOT, NOUT, LERR, OK )
00139 *
00140 *        ZPOTRS
00141 *
00142          SRNAMT = 'ZPOTRS'
00143          INFOT = 1
00144          CALL ZPOTRS( '/', 0, 0, A, 1, B, 1, INFO )
00145          CALL CHKXER( 'ZPOTRS', INFOT, NOUT, LERR, OK )
00146          INFOT = 2
00147          CALL ZPOTRS( 'U', -1, 0, A, 1, B, 1, INFO )
00148          CALL CHKXER( 'ZPOTRS', INFOT, NOUT, LERR, OK )
00149          INFOT = 3
00150          CALL ZPOTRS( 'U', 0, -1, A, 1, B, 1, INFO )
00151          CALL CHKXER( 'ZPOTRS', INFOT, NOUT, LERR, OK )
00152          INFOT = 5
00153          CALL ZPOTRS( 'U', 2, 1, A, 1, B, 2, INFO )
00154          CALL CHKXER( 'ZPOTRS', INFOT, NOUT, LERR, OK )
00155          INFOT = 7
00156          CALL ZPOTRS( 'U', 2, 1, A, 2, B, 1, INFO )
00157          CALL CHKXER( 'ZPOTRS', INFOT, NOUT, LERR, OK )
00158 *
00159 *        ZPORFS
00160 *
00161          SRNAMT = 'ZPORFS'
00162          INFOT = 1
00163          CALL ZPORFS( '/', 0, 0, A, 1, AF, 1, B, 1, X, 1, R1, R2, W, R,
00164      $                INFO )
00165          CALL CHKXER( 'ZPORFS', INFOT, NOUT, LERR, OK )
00166          INFOT = 2
00167          CALL ZPORFS( 'U', -1, 0, A, 1, AF, 1, B, 1, X, 1, R1, R2, W, R,
00168      $                INFO )
00169          CALL CHKXER( 'ZPORFS', INFOT, NOUT, LERR, OK )
00170          INFOT = 3
00171          CALL ZPORFS( 'U', 0, -1, A, 1, AF, 1, B, 1, X, 1, R1, R2, W, R,
00172      $                INFO )
00173          CALL CHKXER( 'ZPORFS', INFOT, NOUT, LERR, OK )
00174          INFOT = 5
00175          CALL ZPORFS( 'U', 2, 1, A, 1, AF, 2, B, 2, X, 2, R1, R2, W, R,
00176      $                INFO )
00177          CALL CHKXER( 'ZPORFS', INFOT, NOUT, LERR, OK )
00178          INFOT = 7
00179          CALL ZPORFS( 'U', 2, 1, A, 2, AF, 1, B, 2, X, 2, R1, R2, W, R,
00180      $                INFO )
00181          CALL CHKXER( 'ZPORFS', INFOT, NOUT, LERR, OK )
00182          INFOT = 9
00183          CALL ZPORFS( 'U', 2, 1, A, 2, AF, 2, B, 1, X, 2, R1, R2, W, R,
00184      $                INFO )
00185          CALL CHKXER( 'ZPORFS', INFOT, NOUT, LERR, OK )
00186          INFOT = 11
00187          CALL ZPORFS( 'U', 2, 1, A, 2, AF, 2, B, 2, X, 1, R1, R2, W, R,
00188      $                INFO )
00189          CALL CHKXER( 'ZPORFS', INFOT, NOUT, LERR, OK )
00190 *
00191 *        ZPORFSX
00192 *
00193          N_ERR_BNDS = 3
00194          NPARAMS = 0
00195          SRNAMT = 'ZPORFSX'
00196          INFOT = 1
00197          CALL ZPORFSX( '/', EQ, 0, 0, A, 1, AF, 1, S, B, 1, X, 1,
00198      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00199      $        PARAMS, W, R, INFO )
00200          CALL CHKXER( 'ZPORFSX', INFOT, NOUT, LERR, OK )
00201          INFOT = 2
00202          CALL ZPORFSX( 'U', EQ, -1, 0, A, 1, AF, 1, S, B, 1, X, 1,
00203      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00204      $        PARAMS, W, R, INFO )
00205          CALL CHKXER( 'ZPORFSX', INFOT, NOUT, LERR, OK )
00206          EQ = 'N'
00207          INFOT = 3
00208          CALL ZPORFSX( 'U', EQ, -1, 0, A, 1, AF, 1, S, B, 1, X, 1,
00209      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00210      $        PARAMS, W, R, INFO )
00211          CALL CHKXER( 'ZPORFSX', INFOT, NOUT, LERR, OK )
00212          INFOT = 4
00213          CALL ZPORFSX( 'U', EQ, 0, -1, A, 1, AF, 1, S, B, 1, X, 1,
00214      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00215      $        PARAMS, W, R, INFO )
00216          CALL CHKXER( 'ZPORFSX', INFOT, NOUT, LERR, OK )
00217          INFOT = 6
00218          CALL ZPORFSX( 'U', EQ, 2, 1, A, 1, AF, 2, S, B, 2, X, 2,
00219      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00220      $        PARAMS, W, R, INFO )
00221          CALL CHKXER( 'ZPORFSX', INFOT, NOUT, LERR, OK )
00222          INFOT = 8
00223          CALL ZPORFSX( 'U', EQ, 2, 1, A, 2, AF, 1, S, B, 2, X, 2,
00224      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00225      $        PARAMS, W, R, INFO )
00226          CALL CHKXER( 'ZPORFSX', INFOT, NOUT, LERR, OK )
00227          INFOT = 11
00228          CALL ZPORFSX( 'U', EQ, 2, 1, A, 2, AF, 2, S, B, 1, X, 2,
00229      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00230      $        PARAMS, W, R, INFO )
00231          CALL CHKXER( 'ZPORFSX', INFOT, NOUT, LERR, OK )
00232          INFOT = 13
00233          CALL ZPORFSX( 'U', EQ, 2, 1, A, 2, AF, 2, S, B, 2, X, 1,
00234      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00235      $        PARAMS, W, R, INFO )
00236          CALL CHKXER( 'ZPORFSX', INFOT, NOUT, LERR, OK )
00237 *
00238 *        ZPOCON
00239 *
00240          SRNAMT = 'ZPOCON'
00241          INFOT = 1
00242          CALL ZPOCON( '/', 0, A, 1, ANRM, RCOND, W, R, INFO )
00243          CALL CHKXER( 'ZPOCON', INFOT, NOUT, LERR, OK )
00244          INFOT = 2
00245          CALL ZPOCON( 'U', -1, A, 1, ANRM, RCOND, W, R, INFO )
00246          CALL CHKXER( 'ZPOCON', INFOT, NOUT, LERR, OK )
00247          INFOT = 4
00248          CALL ZPOCON( 'U', 2, A, 1, ANRM, RCOND, W, R, INFO )
00249          CALL CHKXER( 'ZPOCON', INFOT, NOUT, LERR, OK )
00250          INFOT = 5
00251          CALL ZPOCON( 'U', 1, A, 1, -ANRM, RCOND, W, R, INFO )
00252          CALL CHKXER( 'ZPOCON', INFOT, NOUT, LERR, OK )
00253 *
00254 *        ZPOEQU
00255 *
00256          SRNAMT = 'ZPOEQU'
00257          INFOT = 1
00258          CALL ZPOEQU( -1, A, 1, R1, RCOND, ANRM, INFO )
00259          CALL CHKXER( 'ZPOEQU', INFOT, NOUT, LERR, OK )
00260          INFOT = 3
00261          CALL ZPOEQU( 2, A, 1, R1, RCOND, ANRM, INFO )
00262          CALL CHKXER( 'ZPOEQU', INFOT, NOUT, LERR, OK )
00263 *
00264 *        ZPOEQUB
00265 *
00266          SRNAMT = 'ZPOEQUB'
00267          INFOT = 1
00268          CALL ZPOEQUB( -1, A, 1, R1, RCOND, ANRM, INFO )
00269          CALL CHKXER( 'ZPOEQUB', INFOT, NOUT, LERR, OK )
00270          INFOT = 3
00271          CALL ZPOEQUB( 2, A, 1, R1, RCOND, ANRM, INFO )
00272          CALL CHKXER( 'ZPOEQUB', INFOT, NOUT, LERR, OK )
00273 *
00274 *     Test error exits of the routines that use the Cholesky
00275 *     decomposition of a Hermitian positive definite packed matrix.
00276 *
00277       ELSE IF( LSAMEN( 2, C2, 'PP' ) ) THEN
00278 *
00279 *        ZPPTRF
00280 *
00281          SRNAMT = 'ZPPTRF'
00282          INFOT = 1
00283          CALL ZPPTRF( '/', 0, A, INFO )
00284          CALL CHKXER( 'ZPPTRF', INFOT, NOUT, LERR, OK )
00285          INFOT = 2
00286          CALL ZPPTRF( 'U', -1, A, INFO )
00287          CALL CHKXER( 'ZPPTRF', INFOT, NOUT, LERR, OK )
00288 *
00289 *        ZPPTRI
00290 *
00291          SRNAMT = 'ZPPTRI'
00292          INFOT = 1
00293          CALL ZPPTRI( '/', 0, A, INFO )
00294          CALL CHKXER( 'ZPPTRI', INFOT, NOUT, LERR, OK )
00295          INFOT = 2
00296          CALL ZPPTRI( 'U', -1, A, INFO )
00297          CALL CHKXER( 'ZPPTRI', INFOT, NOUT, LERR, OK )
00298 *
00299 *        ZPPTRS
00300 *
00301          SRNAMT = 'ZPPTRS'
00302          INFOT = 1
00303          CALL ZPPTRS( '/', 0, 0, A, B, 1, INFO )
00304          CALL CHKXER( 'ZPPTRS', INFOT, NOUT, LERR, OK )
00305          INFOT = 2
00306          CALL ZPPTRS( 'U', -1, 0, A, B, 1, INFO )
00307          CALL CHKXER( 'ZPPTRS', INFOT, NOUT, LERR, OK )
00308          INFOT = 3
00309          CALL ZPPTRS( 'U', 0, -1, A, B, 1, INFO )
00310          CALL CHKXER( 'ZPPTRS', INFOT, NOUT, LERR, OK )
00311          INFOT = 6
00312          CALL ZPPTRS( 'U', 2, 1, A, B, 1, INFO )
00313          CALL CHKXER( 'ZPPTRS', INFOT, NOUT, LERR, OK )
00314 *
00315 *        ZPPRFS
00316 *
00317          SRNAMT = 'ZPPRFS'
00318          INFOT = 1
00319          CALL ZPPRFS( '/', 0, 0, A, AF, B, 1, X, 1, R1, R2, W, R, INFO )
00320          CALL CHKXER( 'ZPPRFS', INFOT, NOUT, LERR, OK )
00321          INFOT = 2
00322          CALL ZPPRFS( 'U', -1, 0, A, AF, B, 1, X, 1, R1, R2, W, R,
00323      $                INFO )
00324          CALL CHKXER( 'ZPPRFS', INFOT, NOUT, LERR, OK )
00325          INFOT = 3
00326          CALL ZPPRFS( 'U', 0, -1, A, AF, B, 1, X, 1, R1, R2, W, R,
00327      $                INFO )
00328          CALL CHKXER( 'ZPPRFS', INFOT, NOUT, LERR, OK )
00329          INFOT = 7
00330          CALL ZPPRFS( 'U', 2, 1, A, AF, B, 1, X, 2, R1, R2, W, R, INFO )
00331          CALL CHKXER( 'ZPPRFS', INFOT, NOUT, LERR, OK )
00332          INFOT = 9
00333          CALL ZPPRFS( 'U', 2, 1, A, AF, B, 2, X, 1, R1, R2, W, R, INFO )
00334          CALL CHKXER( 'ZPPRFS', INFOT, NOUT, LERR, OK )
00335 *
00336 *        ZPPCON
00337 *
00338          SRNAMT = 'ZPPCON'
00339          INFOT = 1
00340          CALL ZPPCON( '/', 0, A, ANRM, RCOND, W, R, INFO )
00341          CALL CHKXER( 'ZPPCON', INFOT, NOUT, LERR, OK )
00342          INFOT = 2
00343          CALL ZPPCON( 'U', -1, A, ANRM, RCOND, W, R, INFO )
00344          CALL CHKXER( 'ZPPCON', INFOT, NOUT, LERR, OK )
00345          INFOT = 4
00346          CALL ZPPCON( 'U', 1, A, -ANRM, RCOND, W, R, INFO )
00347          CALL CHKXER( 'ZPPCON', INFOT, NOUT, LERR, OK )
00348 *
00349 *        ZPPEQU
00350 *
00351          SRNAMT = 'ZPPEQU'
00352          INFOT = 1
00353          CALL ZPPEQU( '/', 0, A, R1, RCOND, ANRM, INFO )
00354          CALL CHKXER( 'ZPPEQU', INFOT, NOUT, LERR, OK )
00355          INFOT = 2
00356          CALL ZPPEQU( 'U', -1, A, R1, RCOND, ANRM, INFO )
00357          CALL CHKXER( 'ZPPEQU', INFOT, NOUT, LERR, OK )
00358 *
00359 *     Test error exits of the routines that use the Cholesky
00360 *     decomposition of a Hermitian positive definite band matrix.
00361 *
00362       ELSE IF( LSAMEN( 2, C2, 'PB' ) ) THEN
00363 *
00364 *        ZPBTRF
00365 *
00366          SRNAMT = 'ZPBTRF'
00367          INFOT = 1
00368          CALL ZPBTRF( '/', 0, 0, A, 1, INFO )
00369          CALL CHKXER( 'ZPBTRF', INFOT, NOUT, LERR, OK )
00370          INFOT = 2
00371          CALL ZPBTRF( 'U', -1, 0, A, 1, INFO )
00372          CALL CHKXER( 'ZPBTRF', INFOT, NOUT, LERR, OK )
00373          INFOT = 3
00374          CALL ZPBTRF( 'U', 1, -1, A, 1, INFO )
00375          CALL CHKXER( 'ZPBTRF', INFOT, NOUT, LERR, OK )
00376          INFOT = 5
00377          CALL ZPBTRF( 'U', 2, 1, A, 1, INFO )
00378          CALL CHKXER( 'ZPBTRF', INFOT, NOUT, LERR, OK )
00379 *
00380 *        ZPBTF2
00381 *
00382          SRNAMT = 'ZPBTF2'
00383          INFOT = 1
00384          CALL ZPBTF2( '/', 0, 0, A, 1, INFO )
00385          CALL CHKXER( 'ZPBTF2', INFOT, NOUT, LERR, OK )
00386          INFOT = 2
00387          CALL ZPBTF2( 'U', -1, 0, A, 1, INFO )
00388          CALL CHKXER( 'ZPBTF2', INFOT, NOUT, LERR, OK )
00389          INFOT = 3
00390          CALL ZPBTF2( 'U', 1, -1, A, 1, INFO )
00391          CALL CHKXER( 'ZPBTF2', INFOT, NOUT, LERR, OK )
00392          INFOT = 5
00393          CALL ZPBTF2( 'U', 2, 1, A, 1, INFO )
00394          CALL CHKXER( 'ZPBTF2', INFOT, NOUT, LERR, OK )
00395 *
00396 *        ZPBTRS
00397 *
00398          SRNAMT = 'ZPBTRS'
00399          INFOT = 1
00400          CALL ZPBTRS( '/', 0, 0, 0, A, 1, B, 1, INFO )
00401          CALL CHKXER( 'ZPBTRS', INFOT, NOUT, LERR, OK )
00402          INFOT = 2
00403          CALL ZPBTRS( 'U', -1, 0, 0, A, 1, B, 1, INFO )
00404          CALL CHKXER( 'ZPBTRS', INFOT, NOUT, LERR, OK )
00405          INFOT = 3
00406          CALL ZPBTRS( 'U', 1, -1, 0, A, 1, B, 1, INFO )
00407          CALL CHKXER( 'ZPBTRS', INFOT, NOUT, LERR, OK )
00408          INFOT = 4
00409          CALL ZPBTRS( 'U', 0, 0, -1, A, 1, B, 1, INFO )
00410          CALL CHKXER( 'ZPBTRS', INFOT, NOUT, LERR, OK )
00411          INFOT = 6
00412          CALL ZPBTRS( 'U', 2, 1, 1, A, 1, B, 1, INFO )
00413          CALL CHKXER( 'ZPBTRS', INFOT, NOUT, LERR, OK )
00414          INFOT = 8
00415          CALL ZPBTRS( 'U', 2, 0, 1, A, 1, B, 1, INFO )
00416          CALL CHKXER( 'ZPBTRS', INFOT, NOUT, LERR, OK )
00417 *
00418 *        ZPBRFS
00419 *
00420          SRNAMT = 'ZPBRFS'
00421          INFOT = 1
00422          CALL ZPBRFS( '/', 0, 0, 0, A, 1, AF, 1, B, 1, X, 1, R1, R2, W,
00423      $                R, INFO )
00424          CALL CHKXER( 'ZPBRFS', INFOT, NOUT, LERR, OK )
00425          INFOT = 2
00426          CALL ZPBRFS( 'U', -1, 0, 0, A, 1, AF, 1, B, 1, X, 1, R1, R2, W,
00427      $                R, INFO )
00428          CALL CHKXER( 'ZPBRFS', INFOT, NOUT, LERR, OK )
00429          INFOT = 3
00430          CALL ZPBRFS( 'U', 1, -1, 0, A, 1, AF, 1, B, 1, X, 1, R1, R2, W,
00431      $                R, INFO )
00432          CALL CHKXER( 'ZPBRFS', INFOT, NOUT, LERR, OK )
00433          INFOT = 4
00434          CALL ZPBRFS( 'U', 0, 0, -1, A, 1, AF, 1, B, 1, X, 1, R1, R2, W,
00435      $                R, INFO )
00436          CALL CHKXER( 'ZPBRFS', INFOT, NOUT, LERR, OK )
00437          INFOT = 6
00438          CALL ZPBRFS( 'U', 2, 1, 1, A, 1, AF, 2, B, 2, X, 2, R1, R2, W,
00439      $                R, INFO )
00440          CALL CHKXER( 'ZPBRFS', INFOT, NOUT, LERR, OK )
00441          INFOT = 8
00442          CALL ZPBRFS( 'U', 2, 1, 1, A, 2, AF, 1, B, 2, X, 2, R1, R2, W,
00443      $                R, INFO )
00444          CALL CHKXER( 'ZPBRFS', INFOT, NOUT, LERR, OK )
00445          INFOT = 10
00446          CALL ZPBRFS( 'U', 2, 0, 1, A, 1, AF, 1, B, 1, X, 2, R1, R2, W,
00447      $                R, INFO )
00448          CALL CHKXER( 'ZPBRFS', INFOT, NOUT, LERR, OK )
00449          INFOT = 12
00450          CALL ZPBRFS( 'U', 2, 0, 1, A, 1, AF, 1, B, 2, X, 1, R1, R2, W,
00451      $                R, INFO )
00452          CALL CHKXER( 'ZPBRFS', INFOT, NOUT, LERR, OK )
00453 *
00454 *        ZPBCON
00455 *
00456          SRNAMT = 'ZPBCON'
00457          INFOT = 1
00458          CALL ZPBCON( '/', 0, 0, A, 1, ANRM, RCOND, W, R, INFO )
00459          CALL CHKXER( 'ZPBCON', INFOT, NOUT, LERR, OK )
00460          INFOT = 2
00461          CALL ZPBCON( 'U', -1, 0, A, 1, ANRM, RCOND, W, R, INFO )
00462          CALL CHKXER( 'ZPBCON', INFOT, NOUT, LERR, OK )
00463          INFOT = 3
00464          CALL ZPBCON( 'U', 1, -1, A, 1, ANRM, RCOND, W, R, INFO )
00465          CALL CHKXER( 'ZPBCON', INFOT, NOUT, LERR, OK )
00466          INFOT = 5
00467          CALL ZPBCON( 'U', 2, 1, A, 1, ANRM, RCOND, W, R, INFO )
00468          CALL CHKXER( 'ZPBCON', INFOT, NOUT, LERR, OK )
00469          INFOT = 6
00470          CALL ZPBCON( 'U', 1, 0, A, 1, -ANRM, RCOND, W, R, INFO )
00471          CALL CHKXER( 'ZPBCON', INFOT, NOUT, LERR, OK )
00472 *
00473 *        ZPBEQU
00474 *
00475          SRNAMT = 'ZPBEQU'
00476          INFOT = 1
00477          CALL ZPBEQU( '/', 0, 0, A, 1, R1, RCOND, ANRM, INFO )
00478          CALL CHKXER( 'ZPBEQU', INFOT, NOUT, LERR, OK )
00479          INFOT = 2
00480          CALL ZPBEQU( 'U', -1, 0, A, 1, R1, RCOND, ANRM, INFO )
00481          CALL CHKXER( 'ZPBEQU', INFOT, NOUT, LERR, OK )
00482          INFOT = 3
00483          CALL ZPBEQU( 'U', 1, -1, A, 1, R1, RCOND, ANRM, INFO )
00484          CALL CHKXER( 'ZPBEQU', INFOT, NOUT, LERR, OK )
00485          INFOT = 5
00486          CALL ZPBEQU( 'U', 2, 1, A, 1, R1, RCOND, ANRM, INFO )
00487          CALL CHKXER( 'ZPBEQU', INFOT, NOUT, LERR, OK )
00488       END IF
00489 *
00490 *     Print a summary line.
00491 *
00492       CALL ALAESM( PATH, OK, NOUT )
00493 *
00494       RETURN
00495 *
00496 *     End of ZERRPO
00497 *
00498       END
 All Files Functions