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