LAPACK  3.4.1
LAPACK: Linear Algebra PACKage
zerrst.f
Go to the documentation of this file.
00001 *> \brief \b ZERRST
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 ZERRST( 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 *> ZERRST tests the error exits for ZHETRD, ZUNGTR, CUNMTR, ZHPTRD,
00025 *> ZUNGTR, ZUPMTR, ZSTEQR, CSTEIN, ZPTEQR, ZHBTRD,
00026 *> ZHEEV, CHEEVX, CHEEVD, ZHBEV, CHBEVX, CHBEVD,
00027 *> ZHPEV, CHPEVX, CHPEVD, and ZSTEDC.
00028 *> \endverbatim
00029 *
00030 *  Arguments:
00031 *  ==========
00032 *
00033 *> \param[in] PATH
00034 *> \verbatim
00035 *>          PATH is CHARACTER*3
00036 *>          The LAPACK path name for the routines to be tested.
00037 *> \endverbatim
00038 *>
00039 *> \param[in] NUNIT
00040 *> \verbatim
00041 *>          NUNIT is INTEGER
00042 *>          The unit number for output.
00043 *> \endverbatim
00044 *
00045 *  Authors:
00046 *  ========
00047 *
00048 *> \author Univ. of Tennessee 
00049 *> \author Univ. of California Berkeley 
00050 *> \author Univ. of Colorado Denver 
00051 *> \author NAG Ltd. 
00052 *
00053 *> \date November 2011
00054 *
00055 *> \ingroup complex16_eig
00056 *
00057 *  =====================================================================
00058       SUBROUTINE ZERRST( PATH, NUNIT )
00059 *
00060 *  -- LAPACK test routine (version 3.4.0) --
00061 *  -- LAPACK is a software package provided by Univ. of Tennessee,    --
00062 *  -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
00063 *     November 2011
00064 *
00065 *     .. Scalar Arguments ..
00066       CHARACTER*3        PATH
00067       INTEGER            NUNIT
00068 *     ..
00069 *
00070 *  =====================================================================
00071 *
00072 *     .. Parameters ..
00073       INTEGER            NMAX, LIW, LW
00074       PARAMETER          ( NMAX = 3, LIW = 12*NMAX, LW = 20*NMAX )
00075 *     ..
00076 *     .. Local Scalars ..
00077       CHARACTER*2        C2
00078       INTEGER            I, INFO, J, M, N, NT
00079 *     ..
00080 *     .. Local Arrays ..
00081       INTEGER            I1( NMAX ), I2( NMAX ), I3( NMAX ), IW( LIW )
00082       DOUBLE PRECISION   D( NMAX ), E( NMAX ), R( LW ), RW( LW ),
00083      $                   X( NMAX )
00084       COMPLEX*16         A( NMAX, NMAX ), C( NMAX, NMAX ),
00085      $                   Q( NMAX, NMAX ), TAU( NMAX ), W( LW ),
00086      $                   Z( NMAX, NMAX )
00087 *     ..
00088 *     .. External Functions ..
00089       LOGICAL            LSAMEN
00090       EXTERNAL           LSAMEN
00091 *     ..
00092 *     .. External Subroutines ..
00093       EXTERNAL           CHKXER, ZHBEV, ZHBEVD, ZHBEVX, ZHBTRD, ZHEEV,
00094      $                   ZHEEVD, ZHEEVR, ZHEEVX, ZHETRD, ZHPEV, ZHPEVD,
00095      $                   ZHPEVX, ZHPTRD, ZPTEQR, ZSTEDC, ZSTEIN, ZSTEQR,
00096      $                   ZUNGTR, ZUNMTR, ZUPGTR, ZUPMTR
00097 *     ..
00098 *     .. Scalars in Common ..
00099       LOGICAL            LERR, OK
00100       CHARACTER*32       SRNAMT
00101       INTEGER            INFOT, NOUT
00102 *     ..
00103 *     .. Common blocks ..
00104       COMMON             / INFOC / INFOT, NOUT, OK, LERR
00105       COMMON             / SRNAMC / SRNAMT
00106 *     ..
00107 *     .. Intrinsic Functions ..
00108       INTRINSIC          DBLE
00109 *     ..
00110 *     .. Executable Statements ..
00111 *
00112       NOUT = NUNIT
00113       WRITE( NOUT, FMT = * )
00114       C2 = PATH( 2: 3 )
00115 *
00116 *     Set the variables to innocuous values.
00117 *
00118       DO 20 J = 1, NMAX
00119          DO 10 I = 1, NMAX
00120             A( I, J ) = 1.D0 / DBLE( I+J )
00121    10    CONTINUE
00122    20 CONTINUE
00123       DO 30 J = 1, NMAX
00124          D( J ) = DBLE( J )
00125          E( J ) = 0.0D0
00126          I1( J ) = J
00127          I2( J ) = J
00128          TAU( J ) = 1.D0
00129    30 CONTINUE
00130       OK = .TRUE.
00131       NT = 0
00132 *
00133 *     Test error exits for the ST path.
00134 *
00135       IF( LSAMEN( 2, C2, 'ST' ) ) THEN
00136 *
00137 *        ZHETRD
00138 *
00139          SRNAMT = 'ZHETRD'
00140          INFOT = 1
00141          CALL ZHETRD( '/', 0, A, 1, D, E, TAU, W, 1, INFO )
00142          CALL CHKXER( 'ZHETRD', INFOT, NOUT, LERR, OK )
00143          INFOT = 2
00144          CALL ZHETRD( 'U', -1, A, 1, D, E, TAU, W, 1, INFO )
00145          CALL CHKXER( 'ZHETRD', INFOT, NOUT, LERR, OK )
00146          INFOT = 4
00147          CALL ZHETRD( 'U', 2, A, 1, D, E, TAU, W, 1, INFO )
00148          CALL CHKXER( 'ZHETRD', INFOT, NOUT, LERR, OK )
00149          INFOT = 9
00150          CALL ZHETRD( 'U', 0, A, 1, D, E, TAU, W, 0, INFO )
00151          CALL CHKXER( 'ZHETRD', INFOT, NOUT, LERR, OK )
00152          NT = NT + 4
00153 *
00154 *        ZUNGTR
00155 *
00156          SRNAMT = 'ZUNGTR'
00157          INFOT = 1
00158          CALL ZUNGTR( '/', 0, A, 1, TAU, W, 1, INFO )
00159          CALL CHKXER( 'ZUNGTR', INFOT, NOUT, LERR, OK )
00160          INFOT = 2
00161          CALL ZUNGTR( 'U', -1, A, 1, TAU, W, 1, INFO )
00162          CALL CHKXER( 'ZUNGTR', INFOT, NOUT, LERR, OK )
00163          INFOT = 4
00164          CALL ZUNGTR( 'U', 2, A, 1, TAU, W, 1, INFO )
00165          CALL CHKXER( 'ZUNGTR', INFOT, NOUT, LERR, OK )
00166          INFOT = 7
00167          CALL ZUNGTR( 'U', 3, A, 3, TAU, W, 1, INFO )
00168          CALL CHKXER( 'ZUNGTR', INFOT, NOUT, LERR, OK )
00169          NT = NT + 4
00170 *
00171 *        ZUNMTR
00172 *
00173          SRNAMT = 'ZUNMTR'
00174          INFOT = 1
00175          CALL ZUNMTR( '/', 'U', 'N', 0, 0, A, 1, TAU, C, 1, W, 1, INFO )
00176          CALL CHKXER( 'ZUNMTR', INFOT, NOUT, LERR, OK )
00177          INFOT = 2
00178          CALL ZUNMTR( 'L', '/', 'N', 0, 0, A, 1, TAU, C, 1, W, 1, INFO )
00179          CALL CHKXER( 'ZUNMTR', INFOT, NOUT, LERR, OK )
00180          INFOT = 3
00181          CALL ZUNMTR( 'L', 'U', '/', 0, 0, A, 1, TAU, C, 1, W, 1, INFO )
00182          CALL CHKXER( 'ZUNMTR', INFOT, NOUT, LERR, OK )
00183          INFOT = 4
00184          CALL ZUNMTR( 'L', 'U', 'N', -1, 0, A, 1, TAU, C, 1, W, 1,
00185      $                INFO )
00186          CALL CHKXER( 'ZUNMTR', INFOT, NOUT, LERR, OK )
00187          INFOT = 5
00188          CALL ZUNMTR( 'L', 'U', 'N', 0, -1, A, 1, TAU, C, 1, W, 1,
00189      $                INFO )
00190          CALL CHKXER( 'ZUNMTR', INFOT, NOUT, LERR, OK )
00191          INFOT = 7
00192          CALL ZUNMTR( 'L', 'U', 'N', 2, 0, A, 1, TAU, C, 2, W, 1, INFO )
00193          CALL CHKXER( 'ZUNMTR', INFOT, NOUT, LERR, OK )
00194          INFOT = 7
00195          CALL ZUNMTR( 'R', 'U', 'N', 0, 2, A, 1, TAU, C, 1, W, 1, INFO )
00196          CALL CHKXER( 'ZUNMTR', INFOT, NOUT, LERR, OK )
00197          INFOT = 10
00198          CALL ZUNMTR( 'L', 'U', 'N', 2, 0, A, 2, TAU, C, 1, W, 1, INFO )
00199          CALL CHKXER( 'ZUNMTR', INFOT, NOUT, LERR, OK )
00200          INFOT = 12
00201          CALL ZUNMTR( 'L', 'U', 'N', 0, 2, A, 1, TAU, C, 1, W, 1, INFO )
00202          CALL CHKXER( 'ZUNMTR', INFOT, NOUT, LERR, OK )
00203          INFOT = 12
00204          CALL ZUNMTR( 'R', 'U', 'N', 2, 0, A, 1, TAU, C, 2, W, 1, INFO )
00205          CALL CHKXER( 'ZUNMTR', INFOT, NOUT, LERR, OK )
00206          NT = NT + 10
00207 *
00208 *        ZHPTRD
00209 *
00210          SRNAMT = 'ZHPTRD'
00211          INFOT = 1
00212          CALL ZHPTRD( '/', 0, A, D, E, TAU, INFO )
00213          CALL CHKXER( 'ZHPTRD', INFOT, NOUT, LERR, OK )
00214          INFOT = 2
00215          CALL ZHPTRD( 'U', -1, A, D, E, TAU, INFO )
00216          CALL CHKXER( 'ZHPTRD', INFOT, NOUT, LERR, OK )
00217          NT = NT + 2
00218 *
00219 *        ZUPGTR
00220 *
00221          SRNAMT = 'ZUPGTR'
00222          INFOT = 1
00223          CALL ZUPGTR( '/', 0, A, TAU, Z, 1, W, INFO )
00224          CALL CHKXER( 'ZUPGTR', INFOT, NOUT, LERR, OK )
00225          INFOT = 2
00226          CALL ZUPGTR( 'U', -1, A, TAU, Z, 1, W, INFO )
00227          CALL CHKXER( 'ZUPGTR', INFOT, NOUT, LERR, OK )
00228          INFOT = 6
00229          CALL ZUPGTR( 'U', 2, A, TAU, Z, 1, W, INFO )
00230          CALL CHKXER( 'ZUPGTR', INFOT, NOUT, LERR, OK )
00231          NT = NT + 3
00232 *
00233 *        ZUPMTR
00234 *
00235          SRNAMT = 'ZUPMTR'
00236          INFOT = 1
00237          CALL ZUPMTR( '/', 'U', 'N', 0, 0, A, TAU, C, 1, W, INFO )
00238          CALL CHKXER( 'ZUPMTR', INFOT, NOUT, LERR, OK )
00239          INFOT = 2
00240          CALL ZUPMTR( 'L', '/', 'N', 0, 0, A, TAU, C, 1, W, INFO )
00241          CALL CHKXER( 'ZUPMTR', INFOT, NOUT, LERR, OK )
00242          INFOT = 3
00243          CALL ZUPMTR( 'L', 'U', '/', 0, 0, A, TAU, C, 1, W, INFO )
00244          CALL CHKXER( 'ZUPMTR', INFOT, NOUT, LERR, OK )
00245          INFOT = 4
00246          CALL ZUPMTR( 'L', 'U', 'N', -1, 0, A, TAU, C, 1, W, INFO )
00247          CALL CHKXER( 'ZUPMTR', INFOT, NOUT, LERR, OK )
00248          INFOT = 5
00249          CALL ZUPMTR( 'L', 'U', 'N', 0, -1, A, TAU, C, 1, W, INFO )
00250          CALL CHKXER( 'ZUPMTR', INFOT, NOUT, LERR, OK )
00251          INFOT = 9
00252          CALL ZUPMTR( 'L', 'U', 'N', 2, 0, A, TAU, C, 1, W, INFO )
00253          CALL CHKXER( 'ZUPMTR', INFOT, NOUT, LERR, OK )
00254          NT = NT + 6
00255 *
00256 *        ZPTEQR
00257 *
00258          SRNAMT = 'ZPTEQR'
00259          INFOT = 1
00260          CALL ZPTEQR( '/', 0, D, E, Z, 1, RW, INFO )
00261          CALL CHKXER( 'ZPTEQR', INFOT, NOUT, LERR, OK )
00262          INFOT = 2
00263          CALL ZPTEQR( 'N', -1, D, E, Z, 1, RW, INFO )
00264          CALL CHKXER( 'ZPTEQR', INFOT, NOUT, LERR, OK )
00265          INFOT = 6
00266          CALL ZPTEQR( 'V', 2, D, E, Z, 1, RW, INFO )
00267          CALL CHKXER( 'ZPTEQR', INFOT, NOUT, LERR, OK )
00268          NT = NT + 3
00269 *
00270 *        ZSTEIN
00271 *
00272          SRNAMT = 'ZSTEIN'
00273          INFOT = 1
00274          CALL ZSTEIN( -1, D, E, 0, X, I1, I2, Z, 1, RW, IW, I3, INFO )
00275          CALL CHKXER( 'ZSTEIN', INFOT, NOUT, LERR, OK )
00276          INFOT = 4
00277          CALL ZSTEIN( 0, D, E, -1, X, I1, I2, Z, 1, RW, IW, I3, INFO )
00278          CALL CHKXER( 'ZSTEIN', INFOT, NOUT, LERR, OK )
00279          INFOT = 4
00280          CALL ZSTEIN( 0, D, E, 1, X, I1, I2, Z, 1, RW, IW, I3, INFO )
00281          CALL CHKXER( 'ZSTEIN', INFOT, NOUT, LERR, OK )
00282          INFOT = 9
00283          CALL ZSTEIN( 2, D, E, 0, X, I1, I2, Z, 1, RW, IW, I3, INFO )
00284          CALL CHKXER( 'ZSTEIN', INFOT, NOUT, LERR, OK )
00285          NT = NT + 4
00286 *
00287 *        ZSTEQR
00288 *
00289          SRNAMT = 'ZSTEQR'
00290          INFOT = 1
00291          CALL ZSTEQR( '/', 0, D, E, Z, 1, RW, INFO )
00292          CALL CHKXER( 'ZSTEQR', INFOT, NOUT, LERR, OK )
00293          INFOT = 2
00294          CALL ZSTEQR( 'N', -1, D, E, Z, 1, RW, INFO )
00295          CALL CHKXER( 'ZSTEQR', INFOT, NOUT, LERR, OK )
00296          INFOT = 6
00297          CALL ZSTEQR( 'V', 2, D, E, Z, 1, RW, INFO )
00298          CALL CHKXER( 'ZSTEQR', INFOT, NOUT, LERR, OK )
00299          NT = NT + 3
00300 *
00301 *        ZSTEDC
00302 *
00303          SRNAMT = 'ZSTEDC'
00304          INFOT = 1
00305          CALL ZSTEDC( '/', 0, D, E, Z, 1, W, 1, RW, 1, IW, 1, INFO )
00306          CALL CHKXER( 'ZSTEDC', INFOT, NOUT, LERR, OK )
00307          INFOT = 2
00308          CALL ZSTEDC( 'N', -1, D, E, Z, 1, W, 1, RW, 1, IW, 1, INFO )
00309          CALL CHKXER( 'ZSTEDC', INFOT, NOUT, LERR, OK )
00310          INFOT = 6
00311          CALL ZSTEDC( 'V', 2, D, E, Z, 1, W, 4, RW, 23, IW, 28, INFO )
00312          CALL CHKXER( 'ZSTEDC', INFOT, NOUT, LERR, OK )
00313          INFOT = 8
00314          CALL ZSTEDC( 'N', 2, D, E, Z, 1, W, 0, RW, 1, IW, 1, INFO )
00315          CALL CHKXER( 'ZSTEDC', INFOT, NOUT, LERR, OK )
00316          INFOT = 8
00317          CALL ZSTEDC( 'V', 2, D, E, Z, 2, W, 0, RW, 23, IW, 28, INFO )
00318          CALL CHKXER( 'ZSTEDC', INFOT, NOUT, LERR, OK )
00319          INFOT = 10
00320          CALL ZSTEDC( 'N', 2, D, E, Z, 1, W, 1, RW, 0, IW, 1, INFO )
00321          CALL CHKXER( 'ZSTEDC', INFOT, NOUT, LERR, OK )
00322          INFOT = 10
00323          CALL ZSTEDC( 'I', 2, D, E, Z, 2, W, 1, RW, 1, IW, 12, INFO )
00324          CALL CHKXER( 'ZSTEDC', INFOT, NOUT, LERR, OK )
00325          INFOT = 10
00326          CALL ZSTEDC( 'V', 2, D, E, Z, 2, W, 4, RW, 1, IW, 28, INFO )
00327          CALL CHKXER( 'ZSTEDC', INFOT, NOUT, LERR, OK )
00328          INFOT = 12
00329          CALL ZSTEDC( 'N', 2, D, E, Z, 1, W, 1, RW, 1, IW, 0, INFO )
00330          CALL CHKXER( 'ZSTEDC', INFOT, NOUT, LERR, OK )
00331          INFOT = 12
00332          CALL ZSTEDC( 'I', 2, D, E, Z, 2, W, 1, RW, 23, IW, 0, INFO )
00333          CALL CHKXER( 'ZSTEDC', INFOT, NOUT, LERR, OK )
00334          INFOT = 12
00335          CALL ZSTEDC( 'V', 2, D, E, Z, 2, W, 4, RW, 23, IW, 0, INFO )
00336          CALL CHKXER( 'ZSTEDC', INFOT, NOUT, LERR, OK )
00337          NT = NT + 11
00338 *
00339 *        ZHEEVD
00340 *
00341          SRNAMT = 'ZHEEVD'
00342          INFOT = 1
00343          CALL ZHEEVD( '/', 'U', 0, A, 1, X, W, 1, RW, 1, IW, 1, INFO )
00344          CALL CHKXER( 'ZHEEVD', INFOT, NOUT, LERR, OK )
00345          INFOT = 2
00346          CALL ZHEEVD( 'N', '/', 0, A, 1, X, W, 1, RW, 1, IW, 1, INFO )
00347          CALL CHKXER( 'ZHEEVD', INFOT, NOUT, LERR, OK )
00348          INFOT = 3
00349          CALL ZHEEVD( 'N', 'U', -1, A, 1, X, W, 1, RW, 1, IW, 1, INFO )
00350          CALL CHKXER( 'ZHEEVD', INFOT, NOUT, LERR, OK )
00351          INFOT = 5
00352          CALL ZHEEVD( 'N', 'U', 2, A, 1, X, W, 3, RW, 2, IW, 1, INFO )
00353          CALL CHKXER( 'ZHEEVD', INFOT, NOUT, LERR, OK )
00354          INFOT = 8
00355          CALL ZHEEVD( 'N', 'U', 1, A, 1, X, W, 0, RW, 1, IW, 1, INFO )
00356          CALL CHKXER( 'ZHEEVD', INFOT, NOUT, LERR, OK )
00357          INFOT = 8
00358          CALL ZHEEVD( 'N', 'U', 2, A, 2, X, W, 2, RW, 2, IW, 1, INFO )
00359          CALL CHKXER( 'ZHEEVD', INFOT, NOUT, LERR, OK )
00360          INFOT = 8
00361          CALL ZHEEVD( 'V', 'U', 2, A, 2, X, W, 3, RW, 25, IW, 12, INFO )
00362          CALL CHKXER( 'ZHEEVD', INFOT, NOUT, LERR, OK )
00363          INFOT = 10
00364          CALL ZHEEVD( 'N', 'U', 1, A, 1, X, W, 1, RW, 0, IW, 1, INFO )
00365          CALL CHKXER( 'ZHEEVD', INFOT, NOUT, LERR, OK )
00366          INFOT = 10
00367          CALL ZHEEVD( 'N', 'U', 2, A, 2, X, W, 3, RW, 1, IW, 1, INFO )
00368          CALL CHKXER( 'ZHEEVD', INFOT, NOUT, LERR, OK )
00369          INFOT = 10
00370          CALL ZHEEVD( 'V', 'U', 2, A, 2, X, W, 8, RW, 18, IW, 12, INFO )
00371          CALL CHKXER( 'ZHEEVD', INFOT, NOUT, LERR, OK )
00372          INFOT = 12
00373          CALL ZHEEVD( 'N', 'U', 1, A, 1, X, W, 1, RW, 1, IW, 0, INFO )
00374          CALL CHKXER( 'ZHEEVD', INFOT, NOUT, LERR, OK )
00375          INFOT = 12
00376          CALL ZHEEVD( 'V', 'U', 2, A, 2, X, W, 8, RW, 25, IW, 11, INFO )
00377          CALL CHKXER( 'ZHEEVD', INFOT, NOUT, LERR, OK )
00378          NT = NT + 12
00379 *
00380 *        ZHEEV
00381 *
00382          SRNAMT = 'ZHEEV '
00383          INFOT = 1
00384          CALL ZHEEV( '/', 'U', 0, A, 1, X, W, 1, RW, INFO )
00385          CALL CHKXER( 'ZHEEV ', INFOT, NOUT, LERR, OK )
00386          INFOT = 2
00387          CALL ZHEEV( 'N', '/', 0, A, 1, X, W, 1, RW, INFO )
00388          CALL CHKXER( 'ZHEEV ', INFOT, NOUT, LERR, OK )
00389          INFOT = 3
00390          CALL ZHEEV( 'N', 'U', -1, A, 1, X, W, 1, RW, INFO )
00391          CALL CHKXER( 'ZHEEV ', INFOT, NOUT, LERR, OK )
00392          INFOT = 5
00393          CALL ZHEEV( 'N', 'U', 2, A, 1, X, W, 3, RW, INFO )
00394          CALL CHKXER( 'ZHEEV ', INFOT, NOUT, LERR, OK )
00395          INFOT = 8
00396          CALL ZHEEV( 'N', 'U', 2, A, 2, X, W, 2, RW, INFO )
00397          CALL CHKXER( 'ZHEEV ', INFOT, NOUT, LERR, OK )
00398          NT = NT + 5
00399 *
00400 *        ZHEEVX
00401 *
00402          SRNAMT = 'ZHEEVX'
00403          INFOT = 1
00404          CALL ZHEEVX( '/', 'A', 'U', 0, A, 1, 0.0D0, 0.0D0, 0, 0, 0.0D0,
00405      $                M, X, Z, 1, W, 1, RW, IW, I3, INFO )
00406          CALL CHKXER( 'ZHEEVX', INFOT, NOUT, LERR, OK )
00407          INFOT = 2
00408          CALL ZHEEVX( 'V', '/', 'U', 0, A, 1, 0.0D0, 1.0D0, 1, 0, 0.0D0,
00409      $                M, X, Z, 1, W, 1, RW, IW, I3, INFO )
00410          CALL CHKXER( 'ZHEEVX', INFOT, NOUT, LERR, OK )
00411          INFOT = 3
00412          CALL ZHEEVX( 'V', 'A', '/', 0, A, 1, 0.0D0, 0.0D0, 0, 0, 0.0D0,
00413      $                M, X, Z, 1, W, 1, RW, IW, I3, INFO )
00414          INFOT = 4
00415          CALL ZHEEVX( 'V', 'A', 'U', -1, A, 1, 0.0D0, 0.0D0, 0, 0,
00416      $                0.0D0, M, X, Z, 1, W, 1, RW, IW, I3, INFO )
00417          CALL CHKXER( 'ZHEEVX', INFOT, NOUT, LERR, OK )
00418          INFOT = 6
00419          CALL ZHEEVX( 'V', 'A', 'U', 2, A, 1, 0.0D0, 0.0D0, 0, 0, 0.0D0,
00420      $                M, X, Z, 2, W, 3, RW, IW, I3, INFO )
00421          CALL CHKXER( 'ZHEEVX', INFOT, NOUT, LERR, OK )
00422          INFOT = 8
00423          CALL ZHEEVX( 'V', 'V', 'U', 1, A, 1, 0.0D0, 0.0D0, 0, 0, 0.0D0,
00424      $                M, X, Z, 1, W, 1, RW, IW, I3, INFO )
00425          CALL CHKXER( 'ZHEEVX', INFOT, NOUT, LERR, OK )
00426          INFOT = 9
00427          CALL ZHEEVX( 'V', 'I', 'U', 1, A, 1, 0.0D0, 0.0D0, 0, 0, 0.0D0,
00428      $                M, X, Z, 1, W, 1, RW, IW, I3, INFO )
00429          CALL CHKXER( 'ZHEEVX', INFOT, NOUT, LERR, OK )
00430          INFOT = 10
00431          CALL ZHEEVX( 'V', 'I', 'U', 2, A, 2, 0.0D0, 0.0D0, 2, 1, 0.0D0,
00432      $                M, X, Z, 2, W, 3, RW, IW, I3, INFO )
00433          CALL CHKXER( 'ZHEEVX', INFOT, NOUT, LERR, OK )
00434          INFOT = 15
00435          CALL ZHEEVX( 'V', 'A', 'U', 2, A, 2, 0.0D0, 0.0D0, 0, 0, 0.0D0,
00436      $                M, X, Z, 1, W, 3, RW, IW, I3, INFO )
00437          CALL CHKXER( 'ZHEEVX', INFOT, NOUT, LERR, OK )
00438          INFOT = 17
00439          CALL ZHEEVX( 'V', 'A', 'U', 2, A, 2, 0.0D0, 0.0D0, 0, 0, 0.0D0,
00440      $                M, X, Z, 2, W, 2, RW, IW, I1, INFO )
00441          CALL CHKXER( 'ZHEEVX', INFOT, NOUT, LERR, OK )
00442          NT = NT + 10
00443 *
00444 *        ZHEEVR
00445 *
00446          SRNAMT = 'ZHEEVR'
00447          N = 1
00448          INFOT = 1
00449          CALL ZHEEVR( '/', 'A', 'U', 0, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
00450      $                M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
00451      $                10*N, INFO )
00452          CALL CHKXER( 'ZHEEVR', INFOT, NOUT, LERR, OK )
00453          INFOT = 2
00454          CALL ZHEEVR( 'V', '/', 'U', 0, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
00455      $                M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
00456      $                10*N, INFO )
00457          CALL CHKXER( 'ZHEEVR', INFOT, NOUT, LERR, OK )
00458          INFOT = 3
00459          CALL ZHEEVR( 'V', 'A', '/', -1, A, 1, 0.0D0, 0.0D0, 1, 1,
00460      $                0.0D0, M, R, Z, 1, IW, Q, 2*N, RW, 24*N,
00461      $                IW( 2*N+1 ), 10*N, INFO )
00462          CALL CHKXER( 'ZHEEVR', INFOT, NOUT, LERR, OK )
00463          INFOT = 4
00464          CALL ZHEEVR( 'V', 'A', 'U', -1, A, 1, 0.0D0, 0.0D0, 1, 1,
00465      $                0.0D0, M, R, Z, 1, IW, Q, 2*N, RW, 24*N,
00466      $                IW( 2*N+1 ), 10*N, INFO )
00467          CALL CHKXER( 'ZHEEVR', INFOT, NOUT, LERR, OK )
00468          INFOT = 6
00469          CALL ZHEEVR( 'V', 'A', 'U', 2, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
00470      $                M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
00471      $                10*N, INFO )
00472          CALL CHKXER( 'ZHEEVR', INFOT, NOUT, LERR, OK )
00473          INFOT = 8
00474          CALL ZHEEVR( 'V', 'V', 'U', 1, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
00475      $                M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
00476      $                10*N, INFO )
00477          CALL CHKXER( 'ZHEEVR', INFOT, NOUT, LERR, OK )
00478          INFOT = 9
00479          CALL ZHEEVR( 'V', 'I', 'U', 1, A, 1, 0.0D0, 0.0D0, 0, 1, 0.0D0,
00480      $                M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
00481      $                10*N, INFO )
00482          CALL CHKXER( 'ZHEEVR', INFOT, NOUT, LERR, OK )
00483          INFOT = 10
00484 *
00485          CALL ZHEEVR( 'V', 'I', 'U', 2, A, 2, 0.0D0, 0.0D0, 2, 1, 0.0D0,
00486      $                M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
00487      $                10*N, INFO )
00488          CALL CHKXER( 'ZHEEVR', INFOT, NOUT, LERR, OK )
00489          INFOT = 15
00490          CALL ZHEEVR( 'V', 'I', 'U', 1, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
00491      $                M, R, Z, 0, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
00492      $                10*N, INFO )
00493          CALL CHKXER( 'ZHEEVR', INFOT, NOUT, LERR, OK )
00494          INFOT = 18
00495          CALL ZHEEVR( 'V', 'I', 'U', 1, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
00496      $                M, R, Z, 1, IW, Q, 2*N-1, RW, 24*N, IW( 2*N+1 ),
00497      $                10*N, INFO )
00498          CALL CHKXER( 'ZHEEVR', INFOT, NOUT, LERR, OK )
00499          INFOT = 20
00500          CALL ZHEEVR( 'V', 'I', 'U', 1, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
00501      $                M, R, Z, 1, IW, Q, 2*N, RW, 24*N-1, IW( 2*N-1 ),
00502      $                10*N, INFO )
00503          CALL CHKXER( 'ZHEEVR', INFOT, NOUT, LERR, OK )
00504          INFOT = 22
00505          CALL ZHEEVR( 'V', 'I', 'U', 1, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
00506      $                M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW, 10*N-1,
00507      $                INFO )
00508          CALL CHKXER( 'ZHEEVR', INFOT, NOUT, LERR, OK )
00509          NT = NT + 12
00510 *
00511 *        ZHPEVD
00512 *
00513          SRNAMT = 'ZHPEVD'
00514          INFOT = 1
00515          CALL ZHPEVD( '/', 'U', 0, A, X, Z, 1, W, 1, RW, 1, IW, 1,
00516      $                INFO )
00517          CALL CHKXER( 'ZHPEVD', INFOT, NOUT, LERR, OK )
00518          INFOT = 2
00519          CALL ZHPEVD( 'N', '/', 0, A, X, Z, 1, W, 1, RW, 1, IW, 1,
00520      $                INFO )
00521          CALL CHKXER( 'ZHPEVD', INFOT, NOUT, LERR, OK )
00522          INFOT = 3
00523          CALL ZHPEVD( 'N', 'U', -1, A, X, Z, 1, W, 1, RW, 1, IW, 1,
00524      $                INFO )
00525          CALL CHKXER( 'ZHPEVD', INFOT, NOUT, LERR, OK )
00526          INFOT = 7
00527          CALL ZHPEVD( 'V', 'U', 2, A, X, Z, 1, W, 4, RW, 25, IW, 12,
00528      $                INFO )
00529          CALL CHKXER( 'ZHPEVD', INFOT, NOUT, LERR, OK )
00530          INFOT = 9
00531          CALL ZHPEVD( 'N', 'U', 1, A, X, Z, 1, W, 0, RW, 1, IW, 1,
00532      $                INFO )
00533          CALL CHKXER( 'ZHPEVD', INFOT, NOUT, LERR, OK )
00534          INFOT = 9
00535          CALL ZHPEVD( 'N', 'U', 2, A, X, Z, 2, W, 1, RW, 2, IW, 1,
00536      $                INFO )
00537          CALL CHKXER( 'ZHPEVD', INFOT, NOUT, LERR, OK )
00538          INFOT = 9
00539          CALL ZHPEVD( 'V', 'U', 2, A, X, Z, 2, W, 2, RW, 25, IW, 12,
00540      $                INFO )
00541          CALL CHKXER( 'ZHPEVD', INFOT, NOUT, LERR, OK )
00542          INFOT = 11
00543          CALL ZHPEVD( 'N', 'U', 1, A, X, Z, 1, W, 1, RW, 0, IW, 1,
00544      $                INFO )
00545          CALL CHKXER( 'ZHPEVD', INFOT, NOUT, LERR, OK )
00546          INFOT = 11
00547          CALL ZHPEVD( 'N', 'U', 2, A, X, Z, 2, W, 2, RW, 1, IW, 1,
00548      $                INFO )
00549          CALL CHKXER( 'ZHPEVD', INFOT, NOUT, LERR, OK )
00550          INFOT = 11
00551          CALL ZHPEVD( 'V', 'U', 2, A, X, Z, 2, W, 4, RW, 18, IW, 12,
00552      $                INFO )
00553          CALL CHKXER( 'ZHPEVD', INFOT, NOUT, LERR, OK )
00554          INFOT = 13
00555          CALL ZHPEVD( 'N', 'U', 1, A, X, Z, 1, W, 1, RW, 1, IW, 0,
00556      $                INFO )
00557          CALL CHKXER( 'ZHPEVD', INFOT, NOUT, LERR, OK )
00558          INFOT = 13
00559          CALL ZHPEVD( 'N', 'U', 2, A, X, Z, 2, W, 2, RW, 2, IW, 0,
00560      $                INFO )
00561          CALL CHKXER( 'ZHPEVD', INFOT, NOUT, LERR, OK )
00562          INFOT = 13
00563          CALL ZHPEVD( 'V', 'U', 2, A, X, Z, 2, W, 4, RW, 25, IW, 2,
00564      $                INFO )
00565          CALL CHKXER( 'ZHPEVD', INFOT, NOUT, LERR, OK )
00566          NT = NT + 13
00567 *
00568 *        ZHPEV
00569 *
00570          SRNAMT = 'ZHPEV '
00571          INFOT = 1
00572          CALL ZHPEV( '/', 'U', 0, A, X, Z, 1, W, RW, INFO )
00573          CALL CHKXER( 'ZHPEV ', INFOT, NOUT, LERR, OK )
00574          INFOT = 2
00575          CALL ZHPEV( 'N', '/', 0, A, X, Z, 1, W, RW, INFO )
00576          CALL CHKXER( 'ZHPEV ', INFOT, NOUT, LERR, OK )
00577          INFOT = 3
00578          CALL ZHPEV( 'N', 'U', -1, A, X, Z, 1, W, RW, INFO )
00579          CALL CHKXER( 'ZHPEV ', INFOT, NOUT, LERR, OK )
00580          INFOT = 7
00581          CALL ZHPEV( 'V', 'U', 2, A, X, Z, 1, W, RW, INFO )
00582          CALL CHKXER( 'ZHPEV ', INFOT, NOUT, LERR, OK )
00583          NT = NT + 4
00584 *
00585 *        ZHPEVX
00586 *
00587          SRNAMT = 'ZHPEVX'
00588          INFOT = 1
00589          CALL ZHPEVX( '/', 'A', 'U', 0, A, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
00590      $                X, Z, 1, W, RW, IW, I3, INFO )
00591          CALL CHKXER( 'ZHPEVX', INFOT, NOUT, LERR, OK )
00592          INFOT = 2
00593          CALL ZHPEVX( 'V', '/', 'U', 0, A, 0.0D0, 1.0D0, 1, 0, 0.0D0, M,
00594      $                X, Z, 1, W, RW, IW, I3, INFO )
00595          CALL CHKXER( 'ZHPEVX', INFOT, NOUT, LERR, OK )
00596          INFOT = 3
00597          CALL ZHPEVX( 'V', 'A', '/', 0, A, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
00598      $                X, Z, 1, W, RW, IW, I3, INFO )
00599          CALL CHKXER( 'ZHPEVX', INFOT, NOUT, LERR, OK )
00600          INFOT = 4
00601          CALL ZHPEVX( 'V', 'A', 'U', -1, A, 0.0D0, 0.0D0, 0, 0, 0.0D0,
00602      $                M, X, Z, 1, W, RW, IW, I3, INFO )
00603          CALL CHKXER( 'ZHPEVX', INFOT, NOUT, LERR, OK )
00604          INFOT = 7
00605          CALL ZHPEVX( 'V', 'V', 'U', 1, A, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
00606      $                X, Z, 1, W, RW, IW, I3, INFO )
00607          CALL CHKXER( 'ZHPEVX', INFOT, NOUT, LERR, OK )
00608          INFOT = 8
00609          CALL ZHPEVX( 'V', 'I', 'U', 1, A, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
00610      $                X, Z, 1, W, RW, IW, I3, INFO )
00611          CALL CHKXER( 'ZHPEVX', INFOT, NOUT, LERR, OK )
00612          INFOT = 9
00613          CALL ZHPEVX( 'V', 'I', 'U', 2, A, 0.0D0, 0.0D0, 2, 1, 0.0D0, M,
00614      $                X, Z, 2, W, RW, IW, I3, INFO )
00615          CALL CHKXER( 'ZHPEVX', INFOT, NOUT, LERR, OK )
00616          INFOT = 14
00617          CALL ZHPEVX( 'V', 'A', 'U', 2, A, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
00618      $                X, Z, 1, W, RW, IW, I3, INFO )
00619          CALL CHKXER( 'ZHPEVX', INFOT, NOUT, LERR, OK )
00620          NT = NT + 8
00621 *
00622 *     Test error exits for the HB path.
00623 *
00624       ELSE IF( LSAMEN( 2, C2, 'HB' ) ) THEN
00625 *
00626 *        ZHBTRD
00627 *
00628          SRNAMT = 'ZHBTRD'
00629          INFOT = 1
00630          CALL ZHBTRD( '/', 'U', 0, 0, A, 1, D, E, Z, 1, W, INFO )
00631          CALL CHKXER( 'ZHBTRD', INFOT, NOUT, LERR, OK )
00632          INFOT = 2
00633          CALL ZHBTRD( 'N', '/', 0, 0, A, 1, D, E, Z, 1, W, INFO )
00634          CALL CHKXER( 'ZHBTRD', INFOT, NOUT, LERR, OK )
00635          INFOT = 3
00636          CALL ZHBTRD( 'N', 'U', -1, 0, A, 1, D, E, Z, 1, W, INFO )
00637          CALL CHKXER( 'ZHBTRD', INFOT, NOUT, LERR, OK )
00638          INFOT = 4
00639          CALL ZHBTRD( 'N', 'U', 0, -1, A, 1, D, E, Z, 1, W, INFO )
00640          CALL CHKXER( 'ZHBTRD', INFOT, NOUT, LERR, OK )
00641          INFOT = 6
00642          CALL ZHBTRD( 'N', 'U', 1, 1, A, 1, D, E, Z, 1, W, INFO )
00643          CALL CHKXER( 'ZHBTRD', INFOT, NOUT, LERR, OK )
00644          INFOT = 10
00645          CALL ZHBTRD( 'V', 'U', 2, 0, A, 1, D, E, Z, 1, W, INFO )
00646          CALL CHKXER( 'ZHBTRD', INFOT, NOUT, LERR, OK )
00647          NT = NT + 6
00648 *
00649 *        ZHBEVD
00650 *
00651          SRNAMT = 'ZHBEVD'
00652          INFOT = 1
00653          CALL ZHBEVD( '/', 'U', 0, 0, A, 1, X, Z, 1, W, 1, RW, 1, IW, 1,
00654      $                INFO )
00655          CALL CHKXER( 'ZHBEVD', INFOT, NOUT, LERR, OK )
00656          INFOT = 2
00657          CALL ZHBEVD( 'N', '/', 0, 0, A, 1, X, Z, 1, W, 1, RW, 1, IW, 1,
00658      $                INFO )
00659          CALL CHKXER( 'ZHBEVD', INFOT, NOUT, LERR, OK )
00660          INFOT = 3
00661          CALL ZHBEVD( 'N', 'U', -1, 0, A, 1, X, Z, 1, W, 1, RW, 1, IW,
00662      $                1, INFO )
00663          CALL CHKXER( 'ZHBEVD', INFOT, NOUT, LERR, OK )
00664          INFOT = 4
00665          CALL ZHBEVD( 'N', 'U', 0, -1, A, 1, X, Z, 1, W, 1, RW, 1, IW,
00666      $                1, INFO )
00667          CALL CHKXER( 'ZHBEVD', INFOT, NOUT, LERR, OK )
00668          INFOT = 6
00669          CALL ZHBEVD( 'N', 'U', 2, 1, A, 1, X, Z, 1, W, 2, RW, 2, IW, 1,
00670      $                INFO )
00671          CALL CHKXER( 'ZHBEVD', INFOT, NOUT, LERR, OK )
00672          INFOT = 9
00673          CALL ZHBEVD( 'V', 'U', 2, 1, A, 2, X, Z, 1, W, 8, RW, 25, IW,
00674      $                12, INFO )
00675          CALL CHKXER( 'ZHBEVD', INFOT, NOUT, LERR, OK )
00676          INFOT = 11
00677          CALL ZHBEVD( 'N', 'U', 1, 0, A, 1, X, Z, 1, W, 0, RW, 1, IW, 1,
00678      $                INFO )
00679          CALL CHKXER( 'ZHBEVD', INFOT, NOUT, LERR, OK )
00680          INFOT = 11
00681          CALL ZHBEVD( 'N', 'U', 2, 1, A, 2, X, Z, 2, W, 1, RW, 2, IW, 1,
00682      $                INFO )
00683          CALL CHKXER( 'ZHBEVD', INFOT, NOUT, LERR, OK )
00684          INFOT = 11
00685          CALL ZHBEVD( 'V', 'U', 2, 1, A, 2, X, Z, 2, W, 2, RW, 25, IW,
00686      $                12, INFO )
00687          CALL CHKXER( 'ZHBEVD', INFOT, NOUT, LERR, OK )
00688          INFOT = 13
00689          CALL ZHBEVD( 'N', 'U', 1, 0, A, 1, X, Z, 1, W, 1, RW, 0, IW, 1,
00690      $                INFO )
00691          CALL CHKXER( 'ZHBEVD', INFOT, NOUT, LERR, OK )
00692          INFOT = 13
00693          CALL ZHBEVD( 'N', 'U', 2, 1, A, 2, X, Z, 2, W, 2, RW, 1, IW, 1,
00694      $                INFO )
00695          CALL CHKXER( 'ZHBEVD', INFOT, NOUT, LERR, OK )
00696          INFOT = 13
00697          CALL ZHBEVD( 'V', 'U', 2, 1, A, 2, X, Z, 2, W, 8, RW, 2, IW,
00698      $                12, INFO )
00699          CALL CHKXER( 'ZHBEVD', INFOT, NOUT, LERR, OK )
00700          INFOT = 15
00701          CALL ZHBEVD( 'N', 'U', 1, 0, A, 1, X, Z, 1, W, 1, RW, 1, IW, 0,
00702      $                INFO )
00703          CALL CHKXER( 'ZHBEVD', INFOT, NOUT, LERR, OK )
00704          INFOT = 15
00705          CALL ZHBEVD( 'N', 'U', 2, 1, A, 2, X, Z, 2, W, 2, RW, 2, IW, 0,
00706      $                INFO )
00707          CALL CHKXER( 'ZHBEVD', INFOT, NOUT, LERR, OK )
00708          INFOT = 15
00709          CALL ZHBEVD( 'V', 'U', 2, 1, A, 2, X, Z, 2, W, 8, RW, 25, IW,
00710      $                2, INFO )
00711          CALL CHKXER( 'ZHBEVD', INFOT, NOUT, LERR, OK )
00712          NT = NT + 15
00713 *
00714 *        ZHBEV
00715 *
00716          SRNAMT = 'ZHBEV '
00717          INFOT = 1
00718          CALL ZHBEV( '/', 'U', 0, 0, A, 1, X, Z, 1, W, RW, INFO )
00719          CALL CHKXER( 'ZHBEV ', INFOT, NOUT, LERR, OK )
00720          INFOT = 2
00721          CALL ZHBEV( 'N', '/', 0, 0, A, 1, X, Z, 1, W, RW, INFO )
00722          CALL CHKXER( 'ZHBEV ', INFOT, NOUT, LERR, OK )
00723          INFOT = 3
00724          CALL ZHBEV( 'N', 'U', -1, 0, A, 1, X, Z, 1, W, RW, INFO )
00725          CALL CHKXER( 'ZHBEV ', INFOT, NOUT, LERR, OK )
00726          INFOT = 4
00727          CALL ZHBEV( 'N', 'U', 0, -1, A, 1, X, Z, 1, W, RW, INFO )
00728          CALL CHKXER( 'ZHBEV ', INFOT, NOUT, LERR, OK )
00729          INFOT = 6
00730          CALL ZHBEV( 'N', 'U', 2, 1, A, 1, X, Z, 1, W, RW, INFO )
00731          CALL CHKXER( 'ZHBEV ', INFOT, NOUT, LERR, OK )
00732          INFOT = 9
00733          CALL ZHBEV( 'V', 'U', 2, 0, A, 1, X, Z, 1, W, RW, INFO )
00734          CALL CHKXER( 'ZHBEV ', INFOT, NOUT, LERR, OK )
00735          NT = NT + 6
00736 *
00737 *        ZHBEVX
00738 *
00739          SRNAMT = 'ZHBEVX'
00740          INFOT = 1
00741          CALL ZHBEVX( '/', 'A', 'U', 0, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
00742      $                0, 0.0D0, M, X, Z, 1, W, RW, IW, I3, INFO )
00743          CALL CHKXER( 'ZHBEVX', INFOT, NOUT, LERR, OK )
00744          INFOT = 2
00745          CALL ZHBEVX( 'V', '/', 'U', 0, 0, A, 1, Q, 1, 0.0D0, 1.0D0, 1,
00746      $                0, 0.0D0, M, X, Z, 1, W, RW, IW, I3, INFO )
00747          CALL CHKXER( 'ZHBEVX', INFOT, NOUT, LERR, OK )
00748          INFOT = 3
00749          CALL ZHBEVX( 'V', 'A', '/', 0, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
00750      $                0, 0.0D0, M, X, Z, 1, W, RW, IW, I3, INFO )
00751          INFOT = 4
00752          CALL ZHBEVX( 'V', 'A', 'U', -1, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
00753      $                0, 0.0D0, M, X, Z, 1, W, RW, IW, I3, INFO )
00754          CALL CHKXER( 'ZHBEVX', INFOT, NOUT, LERR, OK )
00755          INFOT = 5
00756          CALL ZHBEVX( 'V', 'A', 'U', 0, -1, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
00757      $                0, 0.0D0, M, X, Z, 1, W, RW, IW, I3, INFO )
00758          CALL CHKXER( 'ZHBEVX', INFOT, NOUT, LERR, OK )
00759          INFOT = 7
00760          CALL ZHBEVX( 'V', 'A', 'U', 2, 1, A, 1, Q, 2, 0.0D0, 0.0D0, 0,
00761      $                0, 0.0D0, M, X, Z, 2, W, RW, IW, I3, INFO )
00762          CALL CHKXER( 'ZHBEVX', INFOT, NOUT, LERR, OK )
00763          INFOT = 9
00764          CALL ZHBEVX( 'V', 'A', 'U', 2, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
00765      $                0, 0.0D0, M, X, Z, 2, W, RW, IW, I3, INFO )
00766          CALL CHKXER( 'ZHBEVX', INFOT, NOUT, LERR, OK )
00767          INFOT = 11
00768          CALL ZHBEVX( 'V', 'V', 'U', 1, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
00769      $                0, 0.0D0, M, X, Z, 1, W, RW, IW, I3, INFO )
00770          CALL CHKXER( 'ZHBEVX', INFOT, NOUT, LERR, OK )
00771          INFOT = 12
00772          CALL ZHBEVX( 'V', 'I', 'U', 1, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
00773      $                0, 0.0D0, M, X, Z, 1, W, RW, IW, I3, INFO )
00774          CALL CHKXER( 'ZHBEVX', INFOT, NOUT, LERR, OK )
00775          INFOT = 13
00776          CALL ZHBEVX( 'V', 'I', 'U', 1, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 1,
00777      $                2, 0.0D0, M, X, Z, 1, W, RW, IW, I3, INFO )
00778          CALL CHKXER( 'ZHBEVX', INFOT, NOUT, LERR, OK )
00779          INFOT = 18
00780          CALL ZHBEVX( 'V', 'A', 'U', 2, 0, A, 1, Q, 2, 0.0D0, 0.0D0, 0,
00781      $                0, 0.0D0, M, X, Z, 1, W, RW, IW, I3, INFO )
00782          CALL CHKXER( 'ZHBEVX', INFOT, NOUT, LERR, OK )
00783          NT = NT + 11
00784       END IF
00785 *
00786 *     Print a summary line.
00787 *
00788       IF( OK ) THEN
00789          WRITE( NOUT, FMT = 9999 )PATH, NT
00790       ELSE
00791          WRITE( NOUT, FMT = 9998 )PATH
00792       END IF
00793 *
00794  9999 FORMAT( 1X, A3, ' routines passed the tests of the error exits',
00795      $      ' (', I3, ' tests done)' )
00796  9998 FORMAT( ' *** ', A3, ' routines failed the tests of the error ',
00797      $      'exits ***' )
00798 *
00799       RETURN
00800 *
00801 *     End of ZERRST
00802 *
00803       END
 All Files Functions