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