LAPACK  3.4.1
LAPACK: Linear Algebra PACKage
zerrvxx.f
Go to the documentation of this file.
00001 *> \brief \b ZERRVXX
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 ZERRVX( 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 *> ZERRVX tests the error exits for the COMPLEX*16 driver routines
00025 *> for solving linear systems of equations.
00026 *> \endverbatim
00027 *
00028 *  Arguments:
00029 *  ==========
00030 *
00031 *> \param[in] PATH
00032 *> \verbatim
00033 *>          PATH is CHARACTER*3
00034 *>          The LAPACK path name for the routines to be tested.
00035 *> \endverbatim
00036 *>
00037 *> \param[in] NUNIT
00038 *> \verbatim
00039 *>          NUNIT is INTEGER
00040 *>          The unit number for output.
00041 *> \endverbatim
00042 *
00043 *  Authors:
00044 *  ========
00045 *
00046 *> \author Univ. of Tennessee 
00047 *> \author Univ. of California Berkeley 
00048 *> \author Univ. of Colorado Denver 
00049 *> \author NAG Ltd. 
00050 *
00051 *> \date November 2011
00052 *
00053 *> \ingroup complex16_lin
00054 *
00055 *  =====================================================================
00056       SUBROUTINE ZERRVX( PATH, NUNIT )
00057 *
00058 *  -- LAPACK test routine (version 3.4.0) --
00059 *  -- LAPACK is a software package provided by Univ. of Tennessee,    --
00060 *  -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
00061 *     November 2011
00062 *
00063 *     .. Scalar Arguments ..
00064       CHARACTER*3        PATH
00065       INTEGER            NUNIT
00066 *     ..
00067 *
00068 *  =====================================================================
00069 *
00070 *     .. Parameters ..
00071       INTEGER            NMAX
00072       PARAMETER          ( NMAX = 4 )
00073 *     ..
00074 *     .. Local Scalars ..
00075       CHARACTER          EQ
00076       CHARACTER*2        C2
00077       INTEGER            I, INFO, J, N_ERR_BNDS, NPARAMS
00078       DOUBLE PRECISION   RCOND, RPVGRW, BERR
00079 *     ..
00080 *     .. Local Arrays ..
00081       INTEGER            IP( NMAX )
00082       DOUBLE PRECISION   C( NMAX ), R( NMAX ), R1( NMAX ), R2( NMAX ),
00083      $                   RF( NMAX ), RW( NMAX ), ERR_BNDS_N( NMAX, 3 ),
00084      $                   ERR_BNDS_C( NMAX, 3 ), PARAMS( 1 )
00085       COMPLEX*16         A( NMAX, NMAX ), AF( NMAX, NMAX ), B( NMAX ),
00086      $                   W( 2*NMAX ), X( NMAX )
00087 *     ..
00088 *     .. External Functions ..
00089       LOGICAL            LSAMEN
00090       EXTERNAL           LSAMEN
00091 *     ..
00092 *     .. External Subroutines ..
00093       EXTERNAL           CHKXER, ZGBSV, ZGBSVX, ZGESV, ZGESVX, ZGTSV,
00094      $                   ZGTSVX, ZHESV, ZHESVX, ZHPSV, ZHPSVX, ZPBSV,
00095      $                   ZPBSVX, ZPOSV, ZPOSVX, ZPPSV, ZPPSVX, ZPTSV,
00096      $                   ZPTSVX, ZSPSV, ZSPSVX, ZSYSV, ZSYSVX, ZGESVXX,
00097      $                   ZSYSVXX, ZPOSVXX, ZHESVXX, ZGBSVXX
00098 *     ..
00099 *     .. Scalars in Common ..
00100       LOGICAL            LERR, OK
00101       CHARACTER*32       SRNAMT
00102       INTEGER            INFOT, NOUT
00103 *     ..
00104 *     .. Common blocks ..
00105       COMMON             / INFOC / INFOT, NOUT, OK, LERR
00106       COMMON             / SRNAMC / SRNAMT
00107 *     ..
00108 *     .. Intrinsic Functions ..
00109       INTRINSIC          DBLE, DCMPLX
00110 *     ..
00111 *     .. Executable Statements ..
00112 *
00113       NOUT = NUNIT
00114       WRITE( NOUT, FMT = * )
00115       C2 = PATH( 2: 3 )
00116 *
00117 *     Set the variables to innocuous values.
00118 *
00119       DO 20 J = 1, NMAX
00120          DO 10 I = 1, NMAX
00121             A( I, J ) = DCMPLX( 1.D0 / DBLE( I+J ),
00122      $                  -1.D0 / DBLE( I+J ) )
00123             AF( I, J ) = DCMPLX( 1.D0 / DBLE( I+J ),
00124      $                   -1.D0 / DBLE( I+J ) )
00125    10    CONTINUE
00126          B( J ) = 0.D0
00127          R1( J ) = 0.D0
00128          R2( J ) = 0.D0
00129          W( J ) = 0.D0
00130          X( J ) = 0.D0
00131          C( J ) = 0.D0
00132          R( J ) = 0.D0
00133          IP( J ) = J
00134    20 CONTINUE
00135       EQ = ' '
00136       OK = .TRUE.
00137 *
00138       IF( LSAMEN( 2, C2, 'GE' ) ) THEN
00139 *
00140 *        ZGESV
00141 *
00142          SRNAMT = 'ZGESV '
00143          INFOT = 1
00144          CALL ZGESV( -1, 0, A, 1, IP, B, 1, INFO )
00145          CALL CHKXER( 'ZGESV ', INFOT, NOUT, LERR, OK )
00146          INFOT = 2
00147          CALL ZGESV( 0, -1, A, 1, IP, B, 1, INFO )
00148          CALL CHKXER( 'ZGESV ', INFOT, NOUT, LERR, OK )
00149          INFOT = 4
00150          CALL ZGESV( 2, 1, A, 1, IP, B, 2, INFO )
00151          CALL CHKXER( 'ZGESV ', INFOT, NOUT, LERR, OK )
00152          INFOT = 7
00153          CALL ZGESV( 2, 1, A, 2, IP, B, 1, INFO )
00154          CALL CHKXER( 'ZGESV ', INFOT, NOUT, LERR, OK )
00155 *
00156 *        ZGESVX
00157 *
00158          SRNAMT = 'ZGESVX'
00159          INFOT = 1
00160          CALL ZGESVX( '/', 'N', 0, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00161      $                X, 1, RCOND, R1, R2, W, RW, INFO )
00162          CALL CHKXER( 'ZGESVX', INFOT, NOUT, LERR, OK )
00163          INFOT = 2
00164          CALL ZGESVX( 'N', '/', 0, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00165      $                X, 1, RCOND, R1, R2, W, RW, INFO )
00166          CALL CHKXER( 'ZGESVX', INFOT, NOUT, LERR, OK )
00167          INFOT = 3
00168          CALL ZGESVX( 'N', 'N', -1, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00169      $                X, 1, RCOND, R1, R2, W, RW, INFO )
00170          CALL CHKXER( 'ZGESVX', INFOT, NOUT, LERR, OK )
00171          INFOT = 4
00172          CALL ZGESVX( 'N', 'N', 0, -1, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00173      $                X, 1, RCOND, R1, R2, W, RW, INFO )
00174          CALL CHKXER( 'ZGESVX', INFOT, NOUT, LERR, OK )
00175          INFOT = 6
00176          CALL ZGESVX( 'N', 'N', 2, 1, A, 1, AF, 2, IP, EQ, R, C, B, 2,
00177      $                X, 2, RCOND, R1, R2, W, RW, INFO )
00178          CALL CHKXER( 'ZGESVX', INFOT, NOUT, LERR, OK )
00179          INFOT = 8
00180          CALL ZGESVX( 'N', 'N', 2, 1, A, 2, AF, 1, IP, EQ, R, C, B, 2,
00181      $                X, 2, RCOND, R1, R2, W, RW, INFO )
00182          CALL CHKXER( 'ZGESVX', INFOT, NOUT, LERR, OK )
00183          INFOT = 10
00184          EQ = '/'
00185          CALL ZGESVX( 'F', 'N', 0, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00186      $                X, 1, RCOND, R1, R2, W, RW, INFO )
00187          CALL CHKXER( 'ZGESVX', INFOT, NOUT, LERR, OK )
00188          INFOT = 11
00189          EQ = 'R'
00190          CALL ZGESVX( 'F', 'N', 1, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00191      $                X, 1, RCOND, R1, R2, W, RW, INFO )
00192          CALL CHKXER( 'ZGESVX', INFOT, NOUT, LERR, OK )
00193          INFOT = 12
00194          EQ = 'C'
00195          CALL ZGESVX( 'F', 'N', 1, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00196      $                X, 1, RCOND, R1, R2, W, RW, INFO )
00197          CALL CHKXER( 'ZGESVX', INFOT, NOUT, LERR, OK )
00198          INFOT = 14
00199          CALL ZGESVX( 'N', 'N', 2, 1, A, 2, AF, 2, IP, EQ, R, C, B, 1,
00200      $                X, 2, RCOND, R1, R2, W, RW, INFO )
00201          CALL CHKXER( 'ZGESVX', INFOT, NOUT, LERR, OK )
00202          INFOT = 16
00203          CALL ZGESVX( 'N', 'N', 2, 1, A, 2, AF, 2, IP, EQ, R, C, B, 2,
00204      $                X, 1, RCOND, R1, R2, W, RW, INFO )
00205          CALL CHKXER( 'ZGESVX', INFOT, NOUT, LERR, OK )
00206 *
00207 *        ZGESVXX
00208 *
00209          N_ERR_BNDS = 3
00210          NPARAMS = 1
00211          SRNAMT = 'ZGESVXX'
00212          INFOT = 1
00213          CALL ZGESVXX( '/', 'N', 0, 0, A, 1, AF, 1, IP, EQ, R, C, B,
00214      $                1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00215      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00216      $                INFO )
00217          CALL CHKXER( 'ZGESVXX', INFOT, NOUT, LERR, OK )
00218          INFOT = 2
00219          CALL ZGESVXX( 'N', '/', 0, 0, A, 1, AF, 1, IP, EQ, R, C, B,
00220      $                1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00221      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00222      $                INFO )
00223          CALL CHKXER( 'ZGESVXX', INFOT, NOUT, LERR, OK )
00224          INFOT = 3
00225          CALL ZGESVXX( 'N', 'N', -1, 0, A, 1, AF, 1, IP, EQ, R, C, B,
00226      $                1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00227      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00228      $                INFO )
00229          CALL CHKXER( 'ZGESVXX', INFOT, NOUT, LERR, OK )
00230          INFOT = 4
00231          CALL ZGESVXX( 'N', 'N', 0, -1, A, 1, AF, 1, IP, EQ, R, C, B,
00232      $                1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00233      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00234      $                INFO )
00235          CALL CHKXER( 'ZGESVXX', INFOT, NOUT, LERR, OK )
00236          INFOT = 6
00237          CALL ZGESVXX( 'N', 'N', 2, 1, A, 1, AF, 2, IP, EQ, R, C, B,
00238      $                2, X, 2, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00239      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00240      $                INFO )
00241          CALL CHKXER( 'ZGESVXX', INFOT, NOUT, LERR, OK )
00242          INFOT = 8
00243          CALL ZGESVXX( 'N', 'N', 2, 1, A, 2, AF, 1, IP, EQ, R, C, B,
00244      $                2, X, 2, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00245      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00246      $                INFO )
00247          CALL CHKXER( 'ZGESVXX', INFOT, NOUT, LERR, OK )
00248          INFOT = 10
00249          EQ = '/'
00250          CALL ZGESVXX( 'F', 'N', 0, 0, A, 1, AF, 1, IP, EQ, R, C, B,
00251      $                1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00252      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00253      $                INFO )
00254          CALL CHKXER( 'ZGESVXX', INFOT, NOUT, LERR, OK )
00255          INFOT = 11
00256          EQ = 'R'
00257          CALL ZGESVXX( 'F', 'N', 1, 0, A, 1, AF, 1, IP, EQ, R, C, B,
00258      $                1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00259      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00260      $                INFO )
00261          CALL CHKXER( 'ZGESVXX', INFOT, NOUT, LERR, OK )
00262          INFOT = 12
00263          EQ = 'C'
00264          CALL ZGESVXX( 'F', 'N', 1, 0, A, 1, AF, 1, IP, EQ, R, C, B,
00265      $                1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00266      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00267      $                INFO )
00268          CALL CHKXER( 'ZGESVXX', INFOT, NOUT, LERR, OK )
00269          INFOT = 14
00270          CALL ZGESVXX( 'N', 'N', 2, 1, A, 2, AF, 2, IP, EQ, R, C, B,
00271      $                1, X, 2, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00272      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00273      $                INFO )
00274          CALL CHKXER( 'ZGESVXX', INFOT, NOUT, LERR, OK )
00275          INFOT = 16
00276          CALL ZGESVXX( 'N', 'N', 2, 1, A, 2, AF, 2, IP, EQ, R, C, B,
00277      $                2, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00278      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00279      $                INFO )
00280          CALL CHKXER( 'ZGESVXX', INFOT, NOUT, LERR, OK )
00281 *
00282       ELSE IF( LSAMEN( 2, C2, 'GB' ) ) THEN
00283 *
00284 *        ZGBSV
00285 *
00286          SRNAMT = 'ZGBSV '
00287          INFOT = 1
00288          CALL ZGBSV( -1, 0, 0, 0, A, 1, IP, B, 1, INFO )
00289          CALL CHKXER( 'ZGBSV ', INFOT, NOUT, LERR, OK )
00290          INFOT = 2
00291          CALL ZGBSV( 1, -1, 0, 0, A, 1, IP, B, 1, INFO )
00292          CALL CHKXER( 'ZGBSV ', INFOT, NOUT, LERR, OK )
00293          INFOT = 3
00294          CALL ZGBSV( 1, 0, -1, 0, A, 1, IP, B, 1, INFO )
00295          CALL CHKXER( 'ZGBSV ', INFOT, NOUT, LERR, OK )
00296          INFOT = 4
00297          CALL ZGBSV( 0, 0, 0, -1, A, 1, IP, B, 1, INFO )
00298          CALL CHKXER( 'ZGBSV ', INFOT, NOUT, LERR, OK )
00299          INFOT = 6
00300          CALL ZGBSV( 1, 1, 1, 0, A, 3, IP, B, 1, INFO )
00301          CALL CHKXER( 'ZGBSV ', INFOT, NOUT, LERR, OK )
00302          INFOT = 9
00303          CALL ZGBSV( 2, 0, 0, 0, A, 1, IP, B, 1, INFO )
00304          CALL CHKXER( 'ZGBSV ', INFOT, NOUT, LERR, OK )
00305 *
00306 *        ZGBSVX
00307 *
00308          SRNAMT = 'ZGBSVX'
00309          INFOT = 1
00310          CALL ZGBSVX( '/', 'N', 0, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C,
00311      $                B, 1, X, 1, RCOND, R1, R2, W, RW, INFO )
00312          CALL CHKXER( 'ZGBSVX', INFOT, NOUT, LERR, OK )
00313          INFOT = 2
00314          CALL ZGBSVX( 'N', '/', 0, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C,
00315      $                B, 1, X, 1, RCOND, R1, R2, W, RW, INFO )
00316          CALL CHKXER( 'ZGBSVX', INFOT, NOUT, LERR, OK )
00317          INFOT = 3
00318          CALL ZGBSVX( 'N', 'N', -1, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C,
00319      $                B, 1, X, 1, RCOND, R1, R2, W, RW, INFO )
00320          CALL CHKXER( 'ZGBSVX', INFOT, NOUT, LERR, OK )
00321          INFOT = 4
00322          CALL ZGBSVX( 'N', 'N', 1, -1, 0, 0, A, 1, AF, 1, IP, EQ, R, C,
00323      $                B, 1, X, 1, RCOND, R1, R2, W, RW, INFO )
00324          CALL CHKXER( 'ZGBSVX', INFOT, NOUT, LERR, OK )
00325          INFOT = 5
00326          CALL ZGBSVX( 'N', 'N', 1, 0, -1, 0, A, 1, AF, 1, IP, EQ, R, C,
00327      $                B, 1, X, 1, RCOND, R1, R2, W, RW, INFO )
00328          CALL CHKXER( 'ZGBSVX', INFOT, NOUT, LERR, OK )
00329          INFOT = 6
00330          CALL ZGBSVX( 'N', 'N', 0, 0, 0, -1, A, 1, AF, 1, IP, EQ, R, C,
00331      $                B, 1, X, 1, RCOND, R1, R2, W, RW, INFO )
00332          CALL CHKXER( 'ZGBSVX', INFOT, NOUT, LERR, OK )
00333          INFOT = 8
00334          CALL ZGBSVX( 'N', 'N', 1, 1, 1, 0, A, 2, AF, 4, IP, EQ, R, C,
00335      $                B, 1, X, 1, RCOND, R1, R2, W, RW, INFO )
00336          CALL CHKXER( 'ZGBSVX', INFOT, NOUT, LERR, OK )
00337          INFOT = 10
00338          CALL ZGBSVX( 'N', 'N', 1, 1, 1, 0, A, 3, AF, 3, IP, EQ, R, C,
00339      $                B, 1, X, 1, RCOND, R1, R2, W, RW, INFO )
00340          CALL CHKXER( 'ZGBSVX', INFOT, NOUT, LERR, OK )
00341          INFOT = 12
00342          EQ = '/'
00343          CALL ZGBSVX( 'F', 'N', 0, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C,
00344      $                B, 1, X, 1, RCOND, R1, R2, W, RW, INFO )
00345          CALL CHKXER( 'ZGBSVX', INFOT, NOUT, LERR, OK )
00346          INFOT = 13
00347          EQ = 'R'
00348          CALL ZGBSVX( 'F', 'N', 1, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C,
00349      $                B, 1, X, 1, RCOND, R1, R2, W, RW, INFO )
00350          CALL CHKXER( 'ZGBSVX', INFOT, NOUT, LERR, OK )
00351          INFOT = 14
00352          EQ = 'C'
00353          CALL ZGBSVX( 'F', 'N', 1, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C,
00354      $                B, 1, X, 1, RCOND, R1, R2, W, RW, INFO )
00355          CALL CHKXER( 'ZGBSVX', INFOT, NOUT, LERR, OK )
00356          INFOT = 16
00357          CALL ZGBSVX( 'N', 'N', 2, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C,
00358      $                B, 1, X, 2, RCOND, R1, R2, W, RW, INFO )
00359          CALL CHKXER( 'ZGBSVX', INFOT, NOUT, LERR, OK )
00360          INFOT = 18
00361          CALL ZGBSVX( 'N', 'N', 2, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C,
00362      $                B, 2, X, 1, RCOND, R1, R2, W, RW, INFO )
00363          CALL CHKXER( 'ZGBSVX', INFOT, NOUT, LERR, OK )
00364 *
00365 *        ZGBSVXX
00366 *
00367          N_ERR_BNDS = 3
00368          NPARAMS = 1
00369          SRNAMT = 'ZGBSVXX'
00370          INFOT = 1
00371          CALL ZGBSVXX( '/', 'N', 0, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C,
00372      $                B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00373      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00374      $                INFO )
00375          CALL CHKXER( 'ZGBSVXX', INFOT, NOUT, LERR, OK )
00376          INFOT = 2
00377          CALL ZGBSVXX( 'N', '/', 0, 1, 1, 0, A, 1, AF, 1, IP, EQ, R, C,
00378      $                B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00379      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00380      $                INFO )
00381          CALL CHKXER( 'ZGBSVXX', INFOT, NOUT, LERR, OK )
00382          INFOT = 3
00383          CALL ZGBSVXX( 'N', 'N', -1, 1, 1, 0, A, 1, AF, 1, IP, EQ, R, C,
00384      $                B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00385      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00386      $                INFO )
00387          CALL CHKXER( 'ZGBSVXX', INFOT, NOUT, LERR, OK )
00388          INFOT = 4
00389          CALL ZGBSVXX( 'N', 'N', 2, -1, 1, 0, A, 1, AF, 1, IP, EQ,
00390      $                R, C, B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00391      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00392      $                INFO )
00393          CALL CHKXER( 'ZGBSVXX', INFOT, NOUT, LERR, OK )
00394          INFOT = 5
00395          CALL ZGBSVXX( 'N', 'N', 2, 1, -1, 0, A, 1, AF, 1, IP, EQ,
00396      $                R, C, B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00397      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00398      $                INFO )
00399          CALL CHKXER( 'ZGBSVXX', INFOT, NOUT, LERR, OK )
00400          INFOT = 6
00401          CALL ZGBSVXX( 'N', 'N', 0, 1, 1, -1, A, 1, AF, 1, IP, EQ, R, C,
00402      $                B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00403      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00404      $                INFO )
00405          CALL CHKXER( 'ZGBSVXX', INFOT, NOUT, LERR, OK )
00406          INFOT = 8
00407          CALL ZGBSVXX( 'N', 'N', 2, 1, 1, 1, A, 2, AF, 2, IP, EQ, R, C,
00408      $                B, 2, X, 2, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00409      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00410      $                INFO )
00411          CALL CHKXER( 'ZGBSVXX', INFOT, NOUT, LERR, OK )
00412          INFOT = 10
00413          CALL ZGBSVXX( 'N', 'N', 2, 1, 1, 1, A, 3, AF, 3, IP, EQ, R, C,
00414      $                B, 2, X, 2, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00415      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00416      $                INFO )
00417          CALL CHKXER( 'ZGBSVXX', INFOT, NOUT, LERR, OK )
00418          INFOT = 12
00419          EQ = '/'
00420          CALL ZGBSVXX( 'F', 'N', 0, 1, 1, 0, A, 3, AF, 4, IP, EQ, R, C,
00421      $                B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00422      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00423      $                INFO )
00424          CALL CHKXER( 'ZGBSVXX', INFOT, NOUT, LERR, OK )
00425          INFOT = 13
00426          EQ = 'R'
00427          CALL ZGBSVXX( 'F', 'N', 1, 1, 1, 0, A, 3, AF, 4, IP, EQ, R, C,
00428      $                B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00429      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00430      $                INFO )
00431          CALL CHKXER( 'ZGBSVXX', INFOT, NOUT, LERR, OK )
00432          INFOT = 14
00433          EQ = 'C'
00434          CALL ZGBSVXX( 'F', 'N', 1, 1, 1, 0, A, 3, AF, 4, IP, EQ, R, C,
00435      $                B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00436      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00437      $                INFO )
00438          CALL CHKXER( 'ZGBSVXX', INFOT, NOUT, LERR, OK )
00439          INFOT = 15
00440          CALL ZGBSVXX( 'N', 'N', 2, 1, 1, 1, A, 3, AF, 4, IP, EQ, R, C,
00441      $                B, 1, X, 2, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00442      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00443      $                INFO )
00444          CALL CHKXER( 'ZGBSVXX', INFOT, NOUT, LERR, OK )
00445          INFOT = 16
00446          CALL ZGBSVXX( 'N', 'N', 2, 1, 1, 1, A, 3, AF, 4, IP, EQ, R, C,
00447      $                B, 2, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00448      $                ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, RW,
00449      $                INFO )
00450          CALL CHKXER( 'ZGBSVXX', INFOT, NOUT, LERR, OK )
00451 *
00452       ELSE IF( LSAMEN( 2, C2, 'GT' ) ) THEN
00453 *
00454 *        ZGTSV
00455 *
00456          SRNAMT = 'ZGTSV '
00457          INFOT = 1
00458          CALL ZGTSV( -1, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ), B, 1,
00459      $               INFO )
00460          CALL CHKXER( 'ZGTSV ', INFOT, NOUT, LERR, OK )
00461          INFOT = 2
00462          CALL ZGTSV( 0, -1, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ), B, 1,
00463      $               INFO )
00464          CALL CHKXER( 'ZGTSV ', INFOT, NOUT, LERR, OK )
00465          INFOT = 7
00466          CALL ZGTSV( 2, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ), B, 1, INFO )
00467          CALL CHKXER( 'ZGTSV ', INFOT, NOUT, LERR, OK )
00468 *
00469 *        ZGTSVX
00470 *
00471          SRNAMT = 'ZGTSVX'
00472          INFOT = 1
00473          CALL ZGTSVX( '/', 'N', 0, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ),
00474      $                AF( 1, 1 ), AF( 1, 2 ), AF( 1, 3 ), AF( 1, 4 ),
00475      $                IP, B, 1, X, 1, RCOND, R1, R2, W, RW, INFO )
00476          CALL CHKXER( 'ZGTSVX', INFOT, NOUT, LERR, OK )
00477          INFOT = 2
00478          CALL ZGTSVX( 'N', '/', 0, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ),
00479      $                AF( 1, 1 ), AF( 1, 2 ), AF( 1, 3 ), AF( 1, 4 ),
00480      $                IP, B, 1, X, 1, RCOND, R1, R2, W, RW, INFO )
00481          CALL CHKXER( 'ZGTSVX', INFOT, NOUT, LERR, OK )
00482          INFOT = 3
00483          CALL ZGTSVX( 'N', 'N', -1, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ),
00484      $                AF( 1, 1 ), AF( 1, 2 ), AF( 1, 3 ), AF( 1, 4 ),
00485      $                IP, B, 1, X, 1, RCOND, R1, R2, W, RW, INFO )
00486          CALL CHKXER( 'ZGTSVX', INFOT, NOUT, LERR, OK )
00487          INFOT = 4
00488          CALL ZGTSVX( 'N', 'N', 0, -1, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ),
00489      $                AF( 1, 1 ), AF( 1, 2 ), AF( 1, 3 ), AF( 1, 4 ),
00490      $                IP, B, 1, X, 1, RCOND, R1, R2, W, RW, INFO )
00491          CALL CHKXER( 'ZGTSVX', INFOT, NOUT, LERR, OK )
00492          INFOT = 14
00493          CALL ZGTSVX( 'N', 'N', 2, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ),
00494      $                AF( 1, 1 ), AF( 1, 2 ), AF( 1, 3 ), AF( 1, 4 ),
00495      $                IP, B, 1, X, 2, RCOND, R1, R2, W, RW, INFO )
00496          CALL CHKXER( 'ZGTSVX', INFOT, NOUT, LERR, OK )
00497          INFOT = 16
00498          CALL ZGTSVX( 'N', 'N', 2, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ),
00499      $                AF( 1, 1 ), AF( 1, 2 ), AF( 1, 3 ), AF( 1, 4 ),
00500      $                IP, B, 2, X, 1, RCOND, R1, R2, W, RW, INFO )
00501          CALL CHKXER( 'ZGTSVX', INFOT, NOUT, LERR, OK )
00502 *
00503       ELSE IF( LSAMEN( 2, C2, 'PO' ) ) THEN
00504 *
00505 *        ZPOSV
00506 *
00507          SRNAMT = 'ZPOSV '
00508          INFOT = 1
00509          CALL ZPOSV( '/', 0, 0, A, 1, B, 1, INFO )
00510          CALL CHKXER( 'ZPOSV ', INFOT, NOUT, LERR, OK )
00511          INFOT = 2
00512          CALL ZPOSV( 'U', -1, 0, A, 1, B, 1, INFO )
00513          CALL CHKXER( 'ZPOSV ', INFOT, NOUT, LERR, OK )
00514          INFOT = 3
00515          CALL ZPOSV( 'U', 0, -1, A, 1, B, 1, INFO )
00516          CALL CHKXER( 'ZPOSV ', INFOT, NOUT, LERR, OK )
00517          INFOT = 5
00518          CALL ZPOSV( 'U', 2, 0, A, 1, B, 2, INFO )
00519          CALL CHKXER( 'ZPOSV ', INFOT, NOUT, LERR, OK )
00520          INFOT = 7
00521          CALL ZPOSV( 'U', 2, 0, A, 2, B, 1, INFO )
00522          CALL CHKXER( 'ZPOSV ', INFOT, NOUT, LERR, OK )
00523 *
00524 *        ZPOSVX
00525 *
00526          SRNAMT = 'ZPOSVX'
00527          INFOT = 1
00528          CALL ZPOSVX( '/', 'U', 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00529      $                RCOND, R1, R2, W, RW, INFO )
00530          CALL CHKXER( 'ZPOSVX', INFOT, NOUT, LERR, OK )
00531          INFOT = 2
00532          CALL ZPOSVX( 'N', '/', 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00533      $                RCOND, R1, R2, W, RW, INFO )
00534          CALL CHKXER( 'ZPOSVX', INFOT, NOUT, LERR, OK )
00535          INFOT = 3
00536          CALL ZPOSVX( 'N', 'U', -1, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00537      $                RCOND, R1, R2, W, RW, INFO )
00538          CALL CHKXER( 'ZPOSVX', INFOT, NOUT, LERR, OK )
00539          INFOT = 4
00540          CALL ZPOSVX( 'N', 'U', 0, -1, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00541      $                RCOND, R1, R2, W, RW, INFO )
00542          CALL CHKXER( 'ZPOSVX', INFOT, NOUT, LERR, OK )
00543          INFOT = 6
00544          CALL ZPOSVX( 'N', 'U', 2, 0, A, 1, AF, 2, EQ, C, B, 2, X, 2,
00545      $                RCOND, R1, R2, W, RW, INFO )
00546          CALL CHKXER( 'ZPOSVX', INFOT, NOUT, LERR, OK )
00547          INFOT = 8
00548          CALL ZPOSVX( 'N', 'U', 2, 0, A, 2, AF, 1, EQ, C, B, 2, X, 2,
00549      $                RCOND, R1, R2, W, RW, INFO )
00550          CALL CHKXER( 'ZPOSVX', INFOT, NOUT, LERR, OK )
00551          INFOT = 9
00552          EQ = '/'
00553          CALL ZPOSVX( 'F', 'U', 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00554      $                RCOND, R1, R2, W, RW, INFO )
00555          CALL CHKXER( 'ZPOSVX', INFOT, NOUT, LERR, OK )
00556          INFOT = 10
00557          EQ = 'Y'
00558          CALL ZPOSVX( 'F', 'U', 1, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00559      $                RCOND, R1, R2, W, RW, INFO )
00560          CALL CHKXER( 'ZPOSVX', INFOT, NOUT, LERR, OK )
00561          INFOT = 12
00562          CALL ZPOSVX( 'N', 'U', 2, 0, A, 2, AF, 2, EQ, C, B, 1, X, 2,
00563      $                RCOND, R1, R2, W, RW, INFO )
00564          CALL CHKXER( 'ZPOSVX', INFOT, NOUT, LERR, OK )
00565          INFOT = 14
00566          CALL ZPOSVX( 'N', 'U', 2, 0, A, 2, AF, 2, EQ, C, B, 2, X, 1,
00567      $                RCOND, R1, R2, W, RW, INFO )
00568          CALL CHKXER( 'ZPOSVX', INFOT, NOUT, LERR, OK )
00569 *
00570 *        ZPOSVXX
00571 *
00572          N_ERR_BNDS = 3
00573          NPARAMS = 1
00574          SRNAMT = 'ZPOSVXX'
00575          INFOT = 1
00576          CALL ZPOSVXX( '/', 'U', 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00577      $                RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00578      $                ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
00579          CALL CHKXER( 'ZPOSVXX', INFOT, NOUT, LERR, OK )
00580          INFOT = 2
00581          CALL ZPOSVXX( 'N', '/', 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00582      $                RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00583      $                ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
00584          CALL CHKXER( 'ZPOSVXX', INFOT, NOUT, LERR, OK )
00585          INFOT = 3
00586          CALL ZPOSVXX( 'N', 'U', -1, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00587      $                RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00588      $                ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
00589          CALL CHKXER( 'ZPOSVXX', INFOT, NOUT, LERR, OK )
00590          INFOT = 4
00591          CALL ZPOSVXX( 'N', 'U', 0, -1, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00592      $                RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00593      $                ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
00594          CALL CHKXER( 'ZPOSVXX', INFOT, NOUT, LERR, OK )
00595          INFOT = 6
00596          CALL ZPOSVXX( 'N', 'U', 2, 0, A, 1, AF, 2, EQ, C, B, 2, X, 2,
00597      $                RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00598      $                ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
00599          CALL CHKXER( 'ZPOSVXX', INFOT, NOUT, LERR, OK )
00600          INFOT = 8
00601          CALL ZPOSVXX( 'N', 'U', 2, 0, A, 2, AF, 1, EQ, C, B, 2, X, 2,
00602      $                RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00603      $                ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
00604          CALL CHKXER( 'ZPOSVXX', INFOT, NOUT, LERR, OK )
00605          INFOT = 9
00606          EQ = '/'
00607          CALL ZPOSVXX( 'F', 'U', 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00608      $                RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00609      $                ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
00610          CALL CHKXER( 'ZPOSVXX', INFOT, NOUT, LERR, OK )
00611          INFOT = 10
00612          EQ = 'Y'
00613          CALL ZPOSVXX( 'F', 'U', 1, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00614      $                RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00615      $                ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
00616          CALL CHKXER( 'ZPOSVXX', INFOT, NOUT, LERR, OK )
00617          INFOT = 12
00618          CALL ZPOSVXX( 'N', 'U', 2, 0, A, 2, AF, 2, EQ, C, B, 1, X, 2,
00619      $                RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00620      $                ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
00621          CALL CHKXER( 'ZPOSVXX', INFOT, NOUT, LERR, OK )
00622          INFOT = 14
00623          CALL ZPOSVXX( 'N', 'U', 2, 0, A, 2, AF, 2, EQ, C, B, 2, X, 1,
00624      $                RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00625      $                ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
00626          CALL CHKXER( 'ZPOSVXX', INFOT, NOUT, LERR, OK )
00627 *
00628       ELSE IF( LSAMEN( 2, C2, 'PP' ) ) THEN
00629 *
00630 *        ZPPSV
00631 *
00632          SRNAMT = 'ZPPSV '
00633          INFOT = 1
00634          CALL ZPPSV( '/', 0, 0, A, B, 1, INFO )
00635          CALL CHKXER( 'ZPPSV ', INFOT, NOUT, LERR, OK )
00636          INFOT = 2
00637          CALL ZPPSV( 'U', -1, 0, A, B, 1, INFO )
00638          CALL CHKXER( 'ZPPSV ', INFOT, NOUT, LERR, OK )
00639          INFOT = 3
00640          CALL ZPPSV( 'U', 0, -1, A, B, 1, INFO )
00641          CALL CHKXER( 'ZPPSV ', INFOT, NOUT, LERR, OK )
00642          INFOT = 6
00643          CALL ZPPSV( 'U', 2, 0, A, B, 1, INFO )
00644          CALL CHKXER( 'ZPPSV ', INFOT, NOUT, LERR, OK )
00645 *
00646 *        ZPPSVX
00647 *
00648          SRNAMT = 'ZPPSVX'
00649          INFOT = 1
00650          CALL ZPPSVX( '/', 'U', 0, 0, A, AF, EQ, C, B, 1, X, 1, RCOND,
00651      $                R1, R2, W, RW, INFO )
00652          CALL CHKXER( 'ZPPSVX', INFOT, NOUT, LERR, OK )
00653          INFOT = 2
00654          CALL ZPPSVX( 'N', '/', 0, 0, A, AF, EQ, C, B, 1, X, 1, RCOND,
00655      $                R1, R2, W, RW, INFO )
00656          CALL CHKXER( 'ZPPSVX', INFOT, NOUT, LERR, OK )
00657          INFOT = 3
00658          CALL ZPPSVX( 'N', 'U', -1, 0, A, AF, EQ, C, B, 1, X, 1, RCOND,
00659      $                R1, R2, W, RW, INFO )
00660          CALL CHKXER( 'ZPPSVX', INFOT, NOUT, LERR, OK )
00661          INFOT = 4
00662          CALL ZPPSVX( 'N', 'U', 0, -1, A, AF, EQ, C, B, 1, X, 1, RCOND,
00663      $                R1, R2, W, RW, INFO )
00664          CALL CHKXER( 'ZPPSVX', INFOT, NOUT, LERR, OK )
00665          INFOT = 7
00666          EQ = '/'
00667          CALL ZPPSVX( 'F', 'U', 0, 0, A, AF, EQ, C, B, 1, X, 1, RCOND,
00668      $                R1, R2, W, RW, INFO )
00669          CALL CHKXER( 'ZPPSVX', INFOT, NOUT, LERR, OK )
00670          INFOT = 8
00671          EQ = 'Y'
00672          CALL ZPPSVX( 'F', 'U', 1, 0, A, AF, EQ, C, B, 1, X, 1, RCOND,
00673      $                R1, R2, W, RW, INFO )
00674          CALL CHKXER( 'ZPPSVX', INFOT, NOUT, LERR, OK )
00675          INFOT = 10
00676          CALL ZPPSVX( 'N', 'U', 2, 0, A, AF, EQ, C, B, 1, X, 2, RCOND,
00677      $                R1, R2, W, RW, INFO )
00678          CALL CHKXER( 'ZPPSVX', INFOT, NOUT, LERR, OK )
00679          INFOT = 12
00680          CALL ZPPSVX( 'N', 'U', 2, 0, A, AF, EQ, C, B, 2, X, 1, RCOND,
00681      $                R1, R2, W, RW, INFO )
00682          CALL CHKXER( 'ZPPSVX', INFOT, NOUT, LERR, OK )
00683 *
00684       ELSE IF( LSAMEN( 2, C2, 'PB' ) ) THEN
00685 *
00686 *        ZPBSV
00687 *
00688          SRNAMT = 'ZPBSV '
00689          INFOT = 1
00690          CALL ZPBSV( '/', 0, 0, 0, A, 1, B, 1, INFO )
00691          CALL CHKXER( 'ZPBSV ', INFOT, NOUT, LERR, OK )
00692          INFOT = 2
00693          CALL ZPBSV( 'U', -1, 0, 0, A, 1, B, 1, INFO )
00694          CALL CHKXER( 'ZPBSV ', INFOT, NOUT, LERR, OK )
00695          INFOT = 3
00696          CALL ZPBSV( 'U', 1, -1, 0, A, 1, B, 1, INFO )
00697          CALL CHKXER( 'ZPBSV ', INFOT, NOUT, LERR, OK )
00698          INFOT = 4
00699          CALL ZPBSV( 'U', 0, 0, -1, A, 1, B, 1, INFO )
00700          CALL CHKXER( 'ZPBSV ', INFOT, NOUT, LERR, OK )
00701          INFOT = 6
00702          CALL ZPBSV( 'U', 1, 1, 0, A, 1, B, 2, INFO )
00703          CALL CHKXER( 'ZPBSV ', INFOT, NOUT, LERR, OK )
00704          INFOT = 8
00705          CALL ZPBSV( 'U', 2, 0, 0, A, 1, B, 1, INFO )
00706          CALL CHKXER( 'ZPBSV ', INFOT, NOUT, LERR, OK )
00707 *
00708 *        ZPBSVX
00709 *
00710          SRNAMT = 'ZPBSVX'
00711          INFOT = 1
00712          CALL ZPBSVX( '/', 'U', 0, 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00713      $                RCOND, R1, R2, W, RW, INFO )
00714          CALL CHKXER( 'ZPBSVX', INFOT, NOUT, LERR, OK )
00715          INFOT = 2
00716          CALL ZPBSVX( 'N', '/', 0, 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00717      $                RCOND, R1, R2, W, RW, INFO )
00718          CALL CHKXER( 'ZPBSVX', INFOT, NOUT, LERR, OK )
00719          INFOT = 3
00720          CALL ZPBSVX( 'N', 'U', -1, 0, 0, A, 1, AF, 1, EQ, C, B, 1, X,
00721      $                1, RCOND, R1, R2, W, RW, INFO )
00722          CALL CHKXER( 'ZPBSVX', INFOT, NOUT, LERR, OK )
00723          INFOT = 4
00724          CALL ZPBSVX( 'N', 'U', 1, -1, 0, A, 1, AF, 1, EQ, C, B, 1, X,
00725      $                1, RCOND, R1, R2, W, RW, INFO )
00726          CALL CHKXER( 'ZPBSVX', INFOT, NOUT, LERR, OK )
00727          INFOT = 5
00728          CALL ZPBSVX( 'N', 'U', 0, 0, -1, A, 1, AF, 1, EQ, C, B, 1, X,
00729      $                1, RCOND, R1, R2, W, RW, INFO )
00730          CALL CHKXER( 'ZPBSVX', INFOT, NOUT, LERR, OK )
00731          INFOT = 7
00732          CALL ZPBSVX( 'N', 'U', 1, 1, 0, A, 1, AF, 2, EQ, C, B, 2, X, 2,
00733      $                RCOND, R1, R2, W, RW, INFO )
00734          CALL CHKXER( 'ZPBSVX', INFOT, NOUT, LERR, OK )
00735          INFOT = 9
00736          CALL ZPBSVX( 'N', 'U', 1, 1, 0, A, 2, AF, 1, EQ, C, B, 2, X, 2,
00737      $                RCOND, R1, R2, W, RW, INFO )
00738          CALL CHKXER( 'ZPBSVX', INFOT, NOUT, LERR, OK )
00739          INFOT = 10
00740          EQ = '/'
00741          CALL ZPBSVX( 'F', 'U', 0, 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00742      $                RCOND, R1, R2, W, RW, INFO )
00743          CALL CHKXER( 'ZPBSVX', INFOT, NOUT, LERR, OK )
00744          INFOT = 11
00745          EQ = 'Y'
00746          CALL ZPBSVX( 'F', 'U', 1, 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00747      $                RCOND, R1, R2, W, RW, INFO )
00748          CALL CHKXER( 'ZPBSVX', INFOT, NOUT, LERR, OK )
00749          INFOT = 13
00750          CALL ZPBSVX( 'N', 'U', 2, 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 2,
00751      $                RCOND, R1, R2, W, RW, INFO )
00752          CALL CHKXER( 'ZPBSVX', INFOT, NOUT, LERR, OK )
00753          INFOT = 15
00754          CALL ZPBSVX( 'N', 'U', 2, 0, 0, A, 1, AF, 1, EQ, C, B, 2, X, 1,
00755      $                RCOND, R1, R2, W, RW, INFO )
00756          CALL CHKXER( 'ZPBSVX', INFOT, NOUT, LERR, OK )
00757 *
00758       ELSE IF( LSAMEN( 2, C2, 'PT' ) ) THEN
00759 *
00760 *        ZPTSV
00761 *
00762          SRNAMT = 'ZPTSV '
00763          INFOT = 1
00764          CALL ZPTSV( -1, 0, R, A( 1, 1 ), B, 1, INFO )
00765          CALL CHKXER( 'ZPTSV ', INFOT, NOUT, LERR, OK )
00766          INFOT = 2
00767          CALL ZPTSV( 0, -1, R, A( 1, 1 ), B, 1, INFO )
00768          CALL CHKXER( 'ZPTSV ', INFOT, NOUT, LERR, OK )
00769          INFOT = 6
00770          CALL ZPTSV( 2, 0, R, A( 1, 1 ), B, 1, INFO )
00771          CALL CHKXER( 'ZPTSV ', INFOT, NOUT, LERR, OK )
00772 *
00773 *        ZPTSVX
00774 *
00775          SRNAMT = 'ZPTSVX'
00776          INFOT = 1
00777          CALL ZPTSVX( '/', 0, 0, R, A( 1, 1 ), RF, AF( 1, 1 ), B, 1, X,
00778      $                1, RCOND, R1, R2, W, RW, INFO )
00779          CALL CHKXER( 'ZPTSVX', INFOT, NOUT, LERR, OK )
00780          INFOT = 2
00781          CALL ZPTSVX( 'N', -1, 0, R, A( 1, 1 ), RF, AF( 1, 1 ), B, 1, X,
00782      $                1, RCOND, R1, R2, W, RW, INFO )
00783          CALL CHKXER( 'ZPTSVX', INFOT, NOUT, LERR, OK )
00784          INFOT = 3
00785          CALL ZPTSVX( 'N', 0, -1, R, A( 1, 1 ), RF, AF( 1, 1 ), B, 1, X,
00786      $                1, RCOND, R1, R2, W, RW, INFO )
00787          CALL CHKXER( 'ZPTSVX', INFOT, NOUT, LERR, OK )
00788          INFOT = 9
00789          CALL ZPTSVX( 'N', 2, 0, R, A( 1, 1 ), RF, AF( 1, 1 ), B, 1, X,
00790      $                2, RCOND, R1, R2, W, RW, INFO )
00791          CALL CHKXER( 'ZPTSVX', INFOT, NOUT, LERR, OK )
00792          INFOT = 11
00793          CALL ZPTSVX( 'N', 2, 0, R, A( 1, 1 ), RF, AF( 1, 1 ), B, 2, X,
00794      $                1, RCOND, R1, R2, W, RW, INFO )
00795          CALL CHKXER( 'ZPTSVX', INFOT, NOUT, LERR, OK )
00796 *
00797       ELSE IF( LSAMEN( 2, C2, 'HE' ) ) THEN
00798 *
00799 *        ZHESV
00800 *
00801          SRNAMT = 'ZHESV '
00802          INFOT = 1
00803          CALL ZHESV( '/', 0, 0, A, 1, IP, B, 1, W, 1, INFO )
00804          CALL CHKXER( 'ZHESV ', INFOT, NOUT, LERR, OK )
00805          INFOT = 2
00806          CALL ZHESV( 'U', -1, 0, A, 1, IP, B, 1, W, 1, INFO )
00807          CALL CHKXER( 'ZHESV ', INFOT, NOUT, LERR, OK )
00808          INFOT = 3
00809          CALL ZHESV( 'U', 0, -1, A, 1, IP, B, 1, W, 1, INFO )
00810          CALL CHKXER( 'ZHESV ', INFOT, NOUT, LERR, OK )
00811          INFOT = 5
00812          CALL ZHESV( 'U', 2, 0, A, 1, IP, B, 2, W, 1, INFO )
00813          CALL CHKXER( 'ZHESV ', INFOT, NOUT, LERR, OK )
00814          INFOT = 8
00815          CALL ZHESV( 'U', 2, 0, A, 2, IP, B, 1, W, 1, INFO )
00816          CALL CHKXER( 'ZHESV ', INFOT, NOUT, LERR, OK )
00817 *
00818 *        ZHESVX
00819 *
00820          SRNAMT = 'ZHESVX'
00821          INFOT = 1
00822          CALL ZHESVX( '/', 'U', 0, 0, A, 1, AF, 1, IP, B, 1, X, 1,
00823      $                RCOND, R1, R2, W, 1, RW, INFO )
00824          CALL CHKXER( 'ZHESVX', INFOT, NOUT, LERR, OK )
00825          INFOT = 2
00826          CALL ZHESVX( 'N', '/', 0, 0, A, 1, AF, 1, IP, B, 1, X, 1,
00827      $                RCOND, R1, R2, W, 1, RW, INFO )
00828          CALL CHKXER( 'ZHESVX', INFOT, NOUT, LERR, OK )
00829          INFOT = 3
00830          CALL ZHESVX( 'N', 'U', -1, 0, A, 1, AF, 1, IP, B, 1, X, 1,
00831      $                RCOND, R1, R2, W, 1, RW, INFO )
00832          CALL CHKXER( 'ZHESVX', INFOT, NOUT, LERR, OK )
00833          INFOT = 4
00834          CALL ZHESVX( 'N', 'U', 0, -1, A, 1, AF, 1, IP, B, 1, X, 1,
00835      $                RCOND, R1, R2, W, 1, RW, INFO )
00836          CALL CHKXER( 'ZHESVX', INFOT, NOUT, LERR, OK )
00837          INFOT = 6
00838          CALL ZHESVX( 'N', 'U', 2, 0, A, 1, AF, 2, IP, B, 2, X, 2,
00839      $                RCOND, R1, R2, W, 4, RW, INFO )
00840          CALL CHKXER( 'ZHESVX', INFOT, NOUT, LERR, OK )
00841          INFOT = 8
00842          CALL ZHESVX( 'N', 'U', 2, 0, A, 2, AF, 1, IP, B, 2, X, 2,
00843      $                RCOND, R1, R2, W, 4, RW, INFO )
00844          CALL CHKXER( 'ZHESVX', INFOT, NOUT, LERR, OK )
00845          INFOT = 11
00846          CALL ZHESVX( 'N', 'U', 2, 0, A, 2, AF, 2, IP, B, 1, X, 2,
00847      $                RCOND, R1, R2, W, 4, RW, INFO )
00848          CALL CHKXER( 'ZHESVX', INFOT, NOUT, LERR, OK )
00849          INFOT = 13
00850          CALL ZHESVX( 'N', 'U', 2, 0, A, 2, AF, 2, IP, B, 2, X, 1,
00851      $                RCOND, R1, R2, W, 4, RW, INFO )
00852          CALL CHKXER( 'ZHESVX', INFOT, NOUT, LERR, OK )
00853          INFOT = 18
00854          CALL ZHESVX( 'N', 'U', 2, 0, A, 2, AF, 2, IP, B, 2, X, 2,
00855      $                RCOND, R1, R2, W, 3, RW, INFO )
00856          CALL CHKXER( 'ZHESVX', INFOT, NOUT, LERR, OK )
00857 *
00858 *        ZHESVXX
00859 *
00860          N_ERR_BNDS = 3
00861          NPARAMS = 1
00862          SRNAMT = 'ZHESVXX'
00863          INFOT = 1
00864          CALL ZHESVXX( '/', 'U', 0, 0, A, 1, AF, 1, IP, EQ, C, B, 1, X,
00865      $                1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00866      $                ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
00867          CALL CHKXER( 'ZHESVXX', INFOT, NOUT, LERR, OK )
00868          INFOT = 2
00869          CALL ZHESVXX( 'N', '/', 0, 0, A, 1, AF, 1, IP, EQ, C, B, 1, X,
00870      $                1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00871      $                ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
00872          CALL CHKXER( 'ZHESVXX', INFOT, NOUT, LERR, OK )
00873          INFOT = 3
00874          CALL ZHESVXX( 'N', 'U', -1, 0, A, 1, AF, 1, IP, EQ, C, B, 1, X,
00875      $                1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00876      $                ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
00877          CALL CHKXER( 'ZHESVXX', INFOT, NOUT, LERR, OK )
00878          INFOT = 4
00879          CALL ZHESVXX( 'N', 'U', 0, -1, A, 1, AF, 1, IP, EQ, C, B, 1, X,
00880      $                1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00881      $                ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
00882          CALL CHKXER( 'ZHESVXX', INFOT, NOUT, LERR, OK )
00883          INFOT = 6
00884          CALL ZHESVXX( 'N', 'U', 2, 0, A, 1, AF, 2, IP, EQ, C, B, 2, X,
00885      $                2, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00886      $                ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
00887          CALL CHKXER( 'ZHESVXX', INFOT, NOUT, LERR, OK )
00888          INFOT = 8
00889          CALL ZHESVXX( 'N', 'U', 2, 0, A, 2, AF, 1, IP, EQ, C, B, 2, X,
00890      $                2, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00891      $                ERR_BNDS_C,  NPARAMS, PARAMS, W, RW, INFO )
00892          CALL CHKXER( 'ZHESVXX', INFOT, NOUT, LERR, OK )
00893          INFOT = 9
00894          EQ = '/'
00895          CALL ZHESVXX( 'F', 'U', 0, 0, A, 1, AF, 1, IP, EQ, C, B, 1, X,
00896      $                1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00897      $                ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
00898          CALL CHKXER( 'ZHESVXX', INFOT, NOUT, LERR, OK )
00899          INFOT = 10
00900          EQ = 'Y'
00901          CALL ZHESVXX( 'F', 'U', 1, 0, A, 1, AF, 1, IP, EQ, C, B, 1, X,
00902      $                1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00903      $                ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
00904          CALL CHKXER( 'ZHESVXX', INFOT, NOUT, LERR, OK )
00905          INFOT = 12
00906          CALL ZHESVXX( 'N', 'U', 2, 0, A, 2, AF, 2, IP, EQ, C, B, 1, X,
00907      $                2, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00908      $                ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
00909          CALL CHKXER( 'ZHESVXX', INFOT, NOUT, LERR, OK )
00910          INFOT = 14
00911          CALL ZHESVXX( 'N', 'U', 2, 0, A, 2, AF, 2, IP, EQ, C, B, 2, X,
00912      $                1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00913      $                ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
00914          CALL CHKXER( 'ZHESVXX', INFOT, NOUT, LERR, OK )
00915 *
00916       ELSE IF( LSAMEN( 2, C2, 'HP' ) ) THEN
00917 *
00918 *        ZHPSV
00919 *
00920          SRNAMT = 'ZHPSV '
00921          INFOT = 1
00922          CALL ZHPSV( '/', 0, 0, A, IP, B, 1, INFO )
00923          CALL CHKXER( 'ZHPSV ', INFOT, NOUT, LERR, OK )
00924          INFOT = 2
00925          CALL ZHPSV( 'U', -1, 0, A, IP, B, 1, INFO )
00926          CALL CHKXER( 'ZHPSV ', INFOT, NOUT, LERR, OK )
00927          INFOT = 3
00928          CALL ZHPSV( 'U', 0, -1, A, IP, B, 1, INFO )
00929          CALL CHKXER( 'ZHPSV ', INFOT, NOUT, LERR, OK )
00930          INFOT = 7
00931          CALL ZHPSV( 'U', 2, 0, A, IP, B, 1, INFO )
00932          CALL CHKXER( 'ZHPSV ', INFOT, NOUT, LERR, OK )
00933 *
00934 *        ZHPSVX
00935 *
00936          SRNAMT = 'ZHPSVX'
00937          INFOT = 1
00938          CALL ZHPSVX( '/', 'U', 0, 0, A, AF, IP, B, 1, X, 1, RCOND, R1,
00939      $                R2, W, RW, INFO )
00940          CALL CHKXER( 'ZHPSVX', INFOT, NOUT, LERR, OK )
00941          INFOT = 2
00942          CALL ZHPSVX( 'N', '/', 0, 0, A, AF, IP, B, 1, X, 1, RCOND, R1,
00943      $                R2, W, RW, INFO )
00944          CALL CHKXER( 'ZHPSVX', INFOT, NOUT, LERR, OK )
00945          INFOT = 3
00946          CALL ZHPSVX( 'N', 'U', -1, 0, A, AF, IP, B, 1, X, 1, RCOND, R1,
00947      $                R2, W, RW, INFO )
00948          CALL CHKXER( 'ZHPSVX', INFOT, NOUT, LERR, OK )
00949          INFOT = 4
00950          CALL ZHPSVX( 'N', 'U', 0, -1, A, AF, IP, B, 1, X, 1, RCOND, R1,
00951      $                R2, W, RW, INFO )
00952          CALL CHKXER( 'ZHPSVX', INFOT, NOUT, LERR, OK )
00953          INFOT = 9
00954          CALL ZHPSVX( 'N', 'U', 2, 0, A, AF, IP, B, 1, X, 2, RCOND, R1,
00955      $                R2, W, RW, INFO )
00956          CALL CHKXER( 'ZHPSVX', INFOT, NOUT, LERR, OK )
00957          INFOT = 11
00958          CALL ZHPSVX( 'N', 'U', 2, 0, A, AF, IP, B, 2, X, 1, RCOND, R1,
00959      $                R2, W, RW, INFO )
00960          CALL CHKXER( 'ZHPSVX', INFOT, NOUT, LERR, OK )
00961 *
00962       ELSE IF( LSAMEN( 2, C2, 'SY' ) ) THEN
00963 *
00964 *        ZSYSV
00965 *
00966          SRNAMT = 'ZSYSV '
00967          INFOT = 1
00968          CALL ZSYSV( '/', 0, 0, A, 1, IP, B, 1, W, 1, INFO )
00969          CALL CHKXER( 'ZSYSV ', INFOT, NOUT, LERR, OK )
00970          INFOT = 2
00971          CALL ZSYSV( 'U', -1, 0, A, 1, IP, B, 1, W, 1, INFO )
00972          CALL CHKXER( 'ZSYSV ', INFOT, NOUT, LERR, OK )
00973          INFOT = 3
00974          CALL ZSYSV( 'U', 0, -1, A, 1, IP, B, 1, W, 1, INFO )
00975          CALL CHKXER( 'ZSYSV ', INFOT, NOUT, LERR, OK )
00976          INFOT = 8
00977          CALL ZSYSV( 'U', 2, 0, A, 2, IP, B, 1, W, 1, INFO )
00978          CALL CHKXER( 'ZSYSV ', INFOT, NOUT, LERR, OK )
00979 *
00980 *        ZSYSVX
00981 *
00982          SRNAMT = 'ZSYSVX'
00983          INFOT = 1
00984          CALL ZSYSVX( '/', 'U', 0, 0, A, 1, AF, 1, IP, B, 1, X, 1,
00985      $                RCOND, R1, R2, W, 1, RW, INFO )
00986          CALL CHKXER( 'ZSYSVX', INFOT, NOUT, LERR, OK )
00987          INFOT = 2
00988          CALL ZSYSVX( 'N', '/', 0, 0, A, 1, AF, 1, IP, B, 1, X, 1,
00989      $                RCOND, R1, R2, W, 1, RW, INFO )
00990          CALL CHKXER( 'ZSYSVX', INFOT, NOUT, LERR, OK )
00991          INFOT = 3
00992          CALL ZSYSVX( 'N', 'U', -1, 0, A, 1, AF, 1, IP, B, 1, X, 1,
00993      $                RCOND, R1, R2, W, 1, RW, INFO )
00994          CALL CHKXER( 'ZSYSVX', INFOT, NOUT, LERR, OK )
00995          INFOT = 4
00996          CALL ZSYSVX( 'N', 'U', 0, -1, A, 1, AF, 1, IP, B, 1, X, 1,
00997      $                RCOND, R1, R2, W, 1, RW, INFO )
00998          CALL CHKXER( 'ZSYSVX', INFOT, NOUT, LERR, OK )
00999          INFOT = 6
01000          CALL ZSYSVX( 'N', 'U', 2, 0, A, 1, AF, 2, IP, B, 2, X, 2,
01001      $                RCOND, R1, R2, W, 4, RW, INFO )
01002          CALL CHKXER( 'ZSYSVX', INFOT, NOUT, LERR, OK )
01003          INFOT = 8
01004          CALL ZSYSVX( 'N', 'U', 2, 0, A, 2, AF, 1, IP, B, 2, X, 2,
01005      $                RCOND, R1, R2, W, 4, RW, INFO )
01006          CALL CHKXER( 'ZSYSVX', INFOT, NOUT, LERR, OK )
01007          INFOT = 11
01008          CALL ZSYSVX( 'N', 'U', 2, 0, A, 2, AF, 2, IP, B, 1, X, 2,
01009      $                RCOND, R1, R2, W, 4, RW, INFO )
01010          CALL CHKXER( 'ZSYSVX', INFOT, NOUT, LERR, OK )
01011          INFOT = 13
01012          CALL ZSYSVX( 'N', 'U', 2, 0, A, 2, AF, 2, IP, B, 2, X, 1,
01013      $                RCOND, R1, R2, W, 4, RW, INFO )
01014          CALL CHKXER( 'ZSYSVX', INFOT, NOUT, LERR, OK )
01015          INFOT = 18
01016          CALL ZSYSVX( 'N', 'U', 2, 0, A, 2, AF, 2, IP, B, 2, X, 2,
01017      $                RCOND, R1, R2, W, 3, RW, INFO )
01018          CALL CHKXER( 'ZSYSVX', INFOT, NOUT, LERR, OK )
01019 *
01020 *        ZSYSVXX
01021 *
01022          N_ERR_BNDS = 3
01023          NPARAMS = 1
01024          SRNAMT = 'ZSYSVXX'
01025          INFOT = 1
01026          EQ = 'N'
01027          CALL ZSYSVXX( '/', 'U', 0, 0, A, 1, AF, 1, IP, EQ, R, B, 1, X,
01028      $        1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
01029      $        ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
01030          CALL CHKXER( 'ZSYSVXX', INFOT, NOUT, LERR, OK )
01031          INFOT = 2
01032          CALL ZSYSVXX( 'N', '/', 0, 0, A, 1, AF, 1, IP, EQ, R, B, 1, X,
01033      $        1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
01034      $        ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
01035          CALL CHKXER( 'ZSYSVXX', INFOT, NOUT, LERR, OK )
01036          INFOT = 3
01037          CALL ZSYSVXX( 'N', 'U', -1, 0, A, 1, AF, 1, IP, EQ, R, B, 1, X,
01038      $        1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
01039      $        ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
01040          CALL CHKXER( 'ZSYSVXX', INFOT, NOUT, LERR, OK )
01041          INFOT = 4
01042          EQ = '/'
01043          CALL ZSYSVXX( 'N', 'U', 0, -1, A, 1, AF, 1, IP, EQ, R, B, 1, X,
01044      $        1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
01045      $        ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
01046          CALL CHKXER( 'ZSYSVXX', INFOT, NOUT, LERR, OK )
01047          EQ = 'Y'
01048          INFOT = 6
01049          CALL ZSYSVXX( 'N', 'U', 2, 0, A, 1, AF, 2, IP, EQ, R, B, 2, X,
01050      $        2, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
01051      $        ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
01052          CALL CHKXER( 'ZSYSVXX', INFOT, NOUT, LERR, OK )
01053          INFOT = 8
01054          CALL ZSYSVXX( 'N', 'U', 2, 0, A, 2, AF, 1, IP, EQ, R, B, 2, X,
01055      $        2, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
01056      $        ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
01057          CALL CHKXER( 'ZSYSVXX', INFOT, NOUT, LERR, OK )
01058          INFOT = 12
01059          EQ = 'N'
01060          CALL ZSYSVXX( 'N', 'U', 2, 0, A, 2, AF, 2, IP, EQ, R, B, 1, X,
01061      $        2, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
01062      $        ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
01063          CALL CHKXER( 'ZSYSVXX', INFOT, NOUT, LERR, OK )
01064          INFOT = 14
01065          CALL ZSYSVXX( 'N', 'U', 2, 0, A, 2, AF, 2, IP, EQ, R, B, 2, X,
01066      $        1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
01067      $        ERR_BNDS_C, NPARAMS, PARAMS, W, RW, INFO )
01068          CALL CHKXER( 'ZSYSVXX', INFOT, NOUT, LERR, OK )
01069 *
01070       ELSE IF( LSAMEN( 2, C2, 'SP' ) ) THEN
01071 *
01072 *        ZSPSV
01073 *
01074          SRNAMT = 'ZSPSV '
01075          INFOT = 1
01076          CALL ZSPSV( '/', 0, 0, A, IP, B, 1, INFO )
01077          CALL CHKXER( 'ZSPSV ', INFOT, NOUT, LERR, OK )
01078          INFOT = 2
01079          CALL ZSPSV( 'U', -1, 0, A, IP, B, 1, INFO )
01080          CALL CHKXER( 'ZSPSV ', INFOT, NOUT, LERR, OK )
01081          INFOT = 3
01082          CALL ZSPSV( 'U', 0, -1, A, IP, B, 1, INFO )
01083          CALL CHKXER( 'ZSPSV ', INFOT, NOUT, LERR, OK )
01084          INFOT = 7
01085          CALL ZSPSV( 'U', 2, 0, A, IP, B, 1, INFO )
01086          CALL CHKXER( 'ZSPSV ', INFOT, NOUT, LERR, OK )
01087 *
01088 *        ZSPSVX
01089 *
01090          SRNAMT = 'ZSPSVX'
01091          INFOT = 1
01092          CALL ZSPSVX( '/', 'U', 0, 0, A, AF, IP, B, 1, X, 1, RCOND, R1,
01093      $                R2, W, RW, INFO )
01094          CALL CHKXER( 'ZSPSVX', INFOT, NOUT, LERR, OK )
01095          INFOT = 2
01096          CALL ZSPSVX( 'N', '/', 0, 0, A, AF, IP, B, 1, X, 1, RCOND, R1,
01097      $                R2, W, RW, INFO )
01098          CALL CHKXER( 'ZSPSVX', INFOT, NOUT, LERR, OK )
01099          INFOT = 3
01100          CALL ZSPSVX( 'N', 'U', -1, 0, A, AF, IP, B, 1, X, 1, RCOND, R1,
01101      $                R2, W, RW, INFO )
01102          CALL CHKXER( 'ZSPSVX', INFOT, NOUT, LERR, OK )
01103          INFOT = 4
01104          CALL ZSPSVX( 'N', 'U', 0, -1, A, AF, IP, B, 1, X, 1, RCOND, R1,
01105      $                R2, W, RW, INFO )
01106          CALL CHKXER( 'ZSPSVX', INFOT, NOUT, LERR, OK )
01107          INFOT = 9
01108          CALL ZSPSVX( 'N', 'U', 2, 0, A, AF, IP, B, 1, X, 2, RCOND, R1,
01109      $                R2, W, RW, INFO )
01110          CALL CHKXER( 'ZSPSVX', INFOT, NOUT, LERR, OK )
01111          INFOT = 11
01112          CALL ZSPSVX( 'N', 'U', 2, 0, A, AF, IP, B, 2, X, 1, RCOND, R1,
01113      $                R2, W, RW, INFO )
01114          CALL CHKXER( 'ZSPSVX', INFOT, NOUT, LERR, OK )
01115       END IF
01116 *
01117 *     Print a summary line.
01118 *
01119       IF( OK ) THEN
01120          WRITE( NOUT, FMT = 9999 )PATH
01121       ELSE
01122          WRITE( NOUT, FMT = 9998 )PATH
01123       END IF
01124 *
01125  9999 FORMAT( 1X, A3, ' drivers passed the tests of the error exits' )
01126  9998 FORMAT( ' *** ', A3, ' drivers failed the tests of the error ',
01127      $      'exits ***' )
01128 *
01129       RETURN
01130 *
01131 *     End of ZERRVX
01132 *
01133       END
 All Files Functions