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