79 parameter ( nmax = 3, liw = 12*nmax, lw = 20*nmax )
83 INTEGER i, info, j, m, n, nsplit, nt
86 INTEGER i1( nmax ), i2( nmax ), i3( nmax ), iw( liw )
87 REAL a( nmax, nmax ), c( nmax, nmax ), d( nmax ),
88 $ e( nmax ), q( nmax, nmax ), r( nmax ),
89 $ tau( nmax ), w( lw ), x( nmax ),
113 COMMON / infoc / infot, nout, ok, lerr
114 COMMON / srnamc / srnamt
122 WRITE( nout, fmt = * )
129 a( i, j ) = 1. /
REAL( i+j )
144 IF(
lsamen( 2, c2,
'ST' ) )
THEN
150 CALL ssytrd(
'/', 0, a, 1, d, e, tau, w, 1, info )
151 CALL chkxer(
'SSYTRD', infot, nout, lerr, ok )
153 CALL ssytrd(
'U', -1, a, 1, d, e, tau, w, 1, info )
154 CALL chkxer(
'SSYTRD', infot, nout, lerr, ok )
156 CALL ssytrd(
'U', 2, a, 1, d, e, tau, w, 1, info )
157 CALL chkxer(
'SSYTRD', infot, nout, lerr, ok )
159 CALL ssytrd(
'U', 0, a, 1, d, e, tau, w, 0, info )
160 CALL chkxer(
'SSYTRD', infot, nout, lerr, ok )
165 srnamt =
'SSYTRD_2STAGE'
169 CALL chkxer(
'SSYTRD_2STAGE', infot, nout, lerr, ok )
173 CALL chkxer(
'SSYTRD_2STAGE', infot, nout, lerr, ok )
177 CALL chkxer(
'SSYTRD_2STAGE', infot, nout, lerr, ok )
181 CALL chkxer(
'SSYTRD_2STAGE', infot, nout, lerr, ok )
185 CALL chkxer(
'SSYTRD_2STAGE', infot, nout, lerr, ok )
189 CALL chkxer(
'SSYTRD_2STAGE', infot, nout, lerr, ok )
193 CALL chkxer(
'SSYTRD_2STAGE', infot, nout, lerr, ok )
198 srnamt =
'SSYTRD_SY2SB'
200 CALL ssytrd_sy2sb(
'/', 0, 0, a, 1, c, 1, tau, w, 1, info )
201 CALL chkxer(
'SSYTRD_SY2SB', infot, nout, lerr, ok )
203 CALL ssytrd_sy2sb(
'U', -1, 0, a, 1, c, 1, tau, w, 1, info )
204 CALL chkxer(
'SSYTRD_SY2SB', infot, nout, lerr, ok )
206 CALL ssytrd_sy2sb(
'U', 0, -1, a, 1, c, 1, tau, w, 1, info )
207 CALL chkxer(
'SSYTRD_SY2SB', infot, nout, lerr, ok )
209 CALL ssytrd_sy2sb(
'U', 2, 0, a, 1, c, 1, tau, w, 1, info )
210 CALL chkxer(
'SSYTRD_SY2SB', infot, nout, lerr, ok )
212 CALL ssytrd_sy2sb(
'U', 0, 2, a, 1, c, 1, tau, w, 1, info )
213 CALL chkxer(
'SSYTRD_SY2SB', infot, nout, lerr, ok )
215 CALL ssytrd_sy2sb(
'U', 0, 0, a, 1, c, 1, tau, w, 0, info )
216 CALL chkxer(
'SSYTRD_SY2SB', infot, nout, lerr, ok )
221 srnamt =
'SSYTRD_SB2ST'
223 CALL ssytrd_sb2st(
'/',
'N',
'U', 0, 0, a, 1, d, e,
225 CALL chkxer(
'SSYTRD_SB2ST', infot, nout, lerr, ok )
227 CALL ssytrd_sb2st(
'Y',
'/',
'U', 0, 0, a, 1, d, e,
229 CALL chkxer(
'SSYTRD_SB2ST', infot, nout, lerr, ok )
231 CALL ssytrd_sb2st(
'Y',
'H',
'U', 0, 0, a, 1, d, e,
233 CALL chkxer(
'SSYTRD_SB2ST', infot, nout, lerr, ok )
235 CALL ssytrd_sb2st(
'Y',
'N',
'/', 0, 0, a, 1, d, e,
237 CALL chkxer(
'SSYTRD_SB2ST', infot, nout, lerr, ok )
239 CALL ssytrd_sb2st(
'Y',
'N',
'U', -1, 0, a, 1, d, e,
241 CALL chkxer(
'SSYTRD_SB2ST', infot, nout, lerr, ok )
243 CALL ssytrd_sb2st(
'Y',
'N',
'U', 0, -1, a, 1, d, e,
245 CALL chkxer(
'SSYTRD_SB2ST', infot, nout, lerr, ok )
247 CALL ssytrd_sb2st(
'Y',
'N',
'U', 0, 1, a, 1, d, e,
249 CALL chkxer(
'SSYTRD_SB2ST', infot, nout, lerr, ok )
251 CALL ssytrd_sb2st(
'Y',
'N',
'U', 0, 0, a, 1, d, e,
253 CALL chkxer(
'SSYTRD_SB2ST', infot, nout, lerr, ok )
255 CALL ssytrd_sb2st(
'Y',
'N',
'U', 0, 0, a, 1, d, e,
257 CALL chkxer(
'SSYTRD_SB2ST', infot, nout, lerr, ok )
264 CALL sorgtr(
'/', 0, a, 1, tau, w, 1, info )
265 CALL chkxer(
'SORGTR', infot, nout, lerr, ok )
267 CALL sorgtr(
'U', -1, a, 1, tau, w, 1, info )
268 CALL chkxer(
'SORGTR', infot, nout, lerr, ok )
270 CALL sorgtr(
'U', 2, a, 1, tau, w, 1, info )
271 CALL chkxer(
'SORGTR', infot, nout, lerr, ok )
273 CALL sorgtr(
'U', 3, a, 3, tau, w, 1, info )
274 CALL chkxer(
'SORGTR', infot, nout, lerr, ok )
281 CALL sormtr(
'/',
'U',
'N', 0, 0, a, 1, tau, c, 1, w, 1, info )
282 CALL chkxer(
'SORMTR', infot, nout, lerr, ok )
284 CALL sormtr(
'L',
'/',
'N', 0, 0, a, 1, tau, c, 1, w, 1, info )
285 CALL chkxer(
'SORMTR', infot, nout, lerr, ok )
287 CALL sormtr(
'L',
'U',
'/', 0, 0, a, 1, tau, c, 1, w, 1, info )
288 CALL chkxer(
'SORMTR', infot, nout, lerr, ok )
290 CALL sormtr(
'L',
'U',
'N', -1, 0, a, 1, tau, c, 1, w, 1,
292 CALL chkxer(
'SORMTR', infot, nout, lerr, ok )
294 CALL sormtr(
'L',
'U',
'N', 0, -1, a, 1, tau, c, 1, w, 1,
296 CALL chkxer(
'SORMTR', infot, nout, lerr, ok )
298 CALL sormtr(
'L',
'U',
'N', 2, 0, a, 1, tau, c, 2, w, 1, info )
299 CALL chkxer(
'SORMTR', infot, nout, lerr, ok )
301 CALL sormtr(
'R',
'U',
'N', 0, 2, a, 1, tau, c, 1, w, 1, info )
302 CALL chkxer(
'SORMTR', infot, nout, lerr, ok )
304 CALL sormtr(
'L',
'U',
'N', 2, 0, a, 2, tau, c, 1, w, 1, info )
305 CALL chkxer(
'SORMTR', infot, nout, lerr, ok )
307 CALL sormtr(
'L',
'U',
'N', 0, 2, a, 1, tau, c, 1, w, 1, info )
308 CALL chkxer(
'SORMTR', infot, nout, lerr, ok )
310 CALL sormtr(
'R',
'U',
'N', 2, 0, a, 1, tau, c, 2, w, 1, info )
311 CALL chkxer(
'SORMTR', infot, nout, lerr, ok )
318 CALL ssptrd(
'/', 0, a, d, e, tau, info )
319 CALL chkxer(
'SSPTRD', infot, nout, lerr, ok )
321 CALL ssptrd(
'U', -1, a, d, e, tau, info )
322 CALL chkxer(
'SSPTRD', infot, nout, lerr, ok )
329 CALL sopgtr(
'/', 0, a, tau, z, 1, w, info )
330 CALL chkxer(
'SOPGTR', infot, nout, lerr, ok )
332 CALL sopgtr(
'U', -1, a, tau, z, 1, w, info )
333 CALL chkxer(
'SOPGTR', infot, nout, lerr, ok )
335 CALL sopgtr(
'U', 2, a, tau, z, 1, w, info )
336 CALL chkxer(
'SOPGTR', infot, nout, lerr, ok )
343 CALL sopmtr(
'/',
'U',
'N', 0, 0, a, tau, c, 1, w, info )
344 CALL chkxer(
'SOPMTR', infot, nout, lerr, ok )
346 CALL sopmtr(
'L',
'/',
'N', 0, 0, a, tau, c, 1, w, info )
347 CALL chkxer(
'SOPMTR', infot, nout, lerr, ok )
349 CALL sopmtr(
'L',
'U',
'/', 0, 0, a, tau, c, 1, w, info )
350 CALL chkxer(
'SOPMTR', infot, nout, lerr, ok )
352 CALL sopmtr(
'L',
'U',
'N', -1, 0, a, tau, c, 1, w, info )
353 CALL chkxer(
'SOPMTR', infot, nout, lerr, ok )
355 CALL sopmtr(
'L',
'U',
'N', 0, -1, a, tau, c, 1, w, info )
356 CALL chkxer(
'SOPMTR', infot, nout, lerr, ok )
358 CALL sopmtr(
'L',
'U',
'N', 2, 0, a, tau, c, 1, w, info )
359 CALL chkxer(
'SOPMTR', infot, nout, lerr, ok )
366 CALL spteqr(
'/', 0, d, e, z, 1, w, info )
367 CALL chkxer(
'SPTEQR', infot, nout, lerr, ok )
369 CALL spteqr(
'N', -1, d, e, z, 1, w, info )
370 CALL chkxer(
'SPTEQR', infot, nout, lerr, ok )
372 CALL spteqr(
'V', 2, d, e, z, 1, w, info )
373 CALL chkxer(
'SPTEQR', infot, nout, lerr, ok )
380 CALL sstebz(
'/',
'E', 0, 0.0, 1.0, 1, 0, 0.0, d, e, m, nsplit,
381 $ x, i1, i2, w, iw, info )
382 CALL chkxer(
'SSTEBZ', infot, nout, lerr, ok )
384 CALL sstebz(
'A',
'/', 0, 0.0, 0.0, 0, 0, 0.0, d, e, m, nsplit,
385 $ x, i1, i2, w, iw, info )
386 CALL chkxer(
'SSTEBZ', infot, nout, lerr, ok )
388 CALL sstebz(
'A',
'E', -1, 0.0, 0.0, 0, 0, 0.0, d, e, m,
389 $ nsplit, x, i1, i2, w, iw, info )
390 CALL chkxer(
'SSTEBZ', infot, nout, lerr, ok )
392 CALL sstebz(
'V',
'E', 0, 0.0, 0.0, 0, 0, 0.0, d, e, m, nsplit,
393 $ x, i1, i2, w, iw, info )
394 CALL chkxer(
'SSTEBZ', infot, nout, lerr, ok )
396 CALL sstebz(
'I',
'E', 0, 0.0, 0.0, 0, 0, 0.0, d, e, m, nsplit,
397 $ x, i1, i2, w, iw, info )
398 CALL chkxer(
'SSTEBZ', infot, nout, lerr, ok )
400 CALL sstebz(
'I',
'E', 1, 0.0, 0.0, 2, 1, 0.0, d, e, m, nsplit,
401 $ x, i1, i2, w, iw, info )
402 CALL chkxer(
'SSTEBZ', infot, nout, lerr, ok )
404 CALL sstebz(
'I',
'E', 1, 0.0, 0.0, 1, 0, 0.0, d, e, m, nsplit,
405 $ x, i1, i2, w, iw, info )
406 CALL chkxer(
'SSTEBZ', infot, nout, lerr, ok )
408 CALL sstebz(
'I',
'E', 1, 0.0, 0.0, 1, 2, 0.0, d, e, m, nsplit,
409 $ x, i1, i2, w, iw, info )
410 CALL chkxer(
'SSTEBZ', infot, nout, lerr, ok )
417 CALL sstein( -1, d, e, 0, x, i1, i2, z, 1, w, iw, i3, info )
418 CALL chkxer(
'SSTEIN', infot, nout, lerr, ok )
420 CALL sstein( 0, d, e, -1, x, i1, i2, z, 1, w, iw, i3, info )
421 CALL chkxer(
'SSTEIN', infot, nout, lerr, ok )
423 CALL sstein( 0, d, e, 1, x, i1, i2, z, 1, w, iw, i3, info )
424 CALL chkxer(
'SSTEIN', infot, nout, lerr, ok )
426 CALL sstein( 2, d, e, 0, x, i1, i2, z, 1, w, iw, i3, info )
427 CALL chkxer(
'SSTEIN', infot, nout, lerr, ok )
434 CALL ssteqr(
'/', 0, d, e, z, 1, w, info )
435 CALL chkxer(
'SSTEQR', infot, nout, lerr, ok )
437 CALL ssteqr(
'N', -1, d, e, z, 1, w, info )
438 CALL chkxer(
'SSTEQR', infot, nout, lerr, ok )
440 CALL ssteqr(
'V', 2, d, e, z, 1, w, info )
441 CALL chkxer(
'SSTEQR', infot, nout, lerr, ok )
448 CALL ssterf( -1, d, e, info )
449 CALL chkxer(
'SSTERF', infot, nout, lerr, ok )
456 CALL sstedc(
'/', 0, d, e, z, 1, w, 1, iw, 1, info )
457 CALL chkxer(
'SSTEDC', infot, nout, lerr, ok )
459 CALL sstedc(
'N', -1, d, e, z, 1, w, 1, iw, 1, info )
460 CALL chkxer(
'SSTEDC', infot, nout, lerr, ok )
462 CALL sstedc(
'V', 2, d, e, z, 1, w, 23, iw, 28, info )
463 CALL chkxer(
'SSTEDC', infot, nout, lerr, ok )
465 CALL sstedc(
'N', 1, d, e, z, 1, w, 0, iw, 1, info )
466 CALL chkxer(
'SSTEDC', infot, nout, lerr, ok )
468 CALL sstedc(
'I', 2, d, e, z, 2, w, 0, iw, 12, info )
469 CALL chkxer(
'SSTEDC', infot, nout, lerr, ok )
471 CALL sstedc(
'V', 2, d, e, z, 2, w, 0, iw, 28, info )
472 CALL chkxer(
'SSTEDC', infot, nout, lerr, ok )
474 CALL sstedc(
'N', 1, d, e, z, 1, w, 1, iw, 0, info )
475 CALL chkxer(
'SSTEDC', infot, nout, lerr, ok )
477 CALL sstedc(
'I', 2, d, e, z, 2, w, 19, iw, 0, info )
478 CALL chkxer(
'SSTEDC', infot, nout, lerr, ok )
480 CALL sstedc(
'V', 2, d, e, z, 2, w, 23, iw, 0, info )
481 CALL chkxer(
'SSTEDC', infot, nout, lerr, ok )
488 CALL sstevd(
'/', 0, d, e, z, 1, w, 1, iw, 1, info )
489 CALL chkxer(
'SSTEVD', infot, nout, lerr, ok )
491 CALL sstevd(
'N', -1, d, e, z, 1, w, 1, iw, 1, info )
492 CALL chkxer(
'SSTEVD', infot, nout, lerr, ok )
494 CALL sstevd(
'V', 2, d, e, z, 1, w, 19, iw, 12, info )
495 CALL chkxer(
'SSTEVD', infot, nout, lerr, ok )
497 CALL sstevd(
'N', 1, d, e, z, 1, w, 0, iw, 1, info )
498 CALL chkxer(
'SSTEVD', infot, nout, lerr, ok )
500 CALL sstevd(
'V', 2, d, e, z, 2, w, 12, iw, 12, info )
501 CALL chkxer(
'SSTEVD', infot, nout, lerr, ok )
503 CALL sstevd(
'N', 0, d, e, z, 1, w, 1, iw, 0, info )
504 CALL chkxer(
'SSTEVD', infot, nout, lerr, ok )
506 CALL sstevd(
'V', 2, d, e, z, 2, w, 19, iw, 11, info )
507 CALL chkxer(
'SSTEVD', infot, nout, lerr, ok )
514 CALL sstev(
'/', 0, d, e, z, 1, w, info )
515 CALL chkxer(
'SSTEV ', infot, nout, lerr, ok )
517 CALL sstev(
'N', -1, d, e, z, 1, w, info )
518 CALL chkxer(
'SSTEV ', infot, nout, lerr, ok )
520 CALL sstev(
'V', 2, d, e, z, 1, w, info )
521 CALL chkxer(
'SSTEV ', infot, nout, lerr, ok )
528 CALL sstevx(
'/',
'A', 0, d, e, 0.0, 0.0, 0, 0, 0.0, m, x, z,
529 $ 1, w, iw, i3, info )
530 CALL chkxer(
'SSTEVX', infot, nout, lerr, ok )
532 CALL sstevx(
'N',
'/', 0, d, e, 0.0, 1.0, 1, 0, 0.0, m, x, z,
533 $ 1, w, iw, i3, info )
534 CALL chkxer(
'SSTEVX', infot, nout, lerr, ok )
536 CALL sstevx(
'N',
'A', -1, d, e, 0.0, 0.0, 0, 0, 0.0, m, x, z,
537 $ 1, w, iw, i3, info )
538 CALL chkxer(
'SSTEVX', infot, nout, lerr, ok )
540 CALL sstevx(
'N',
'V', 1, d, e, 0.0, 0.0, 0, 0, 0.0, m, x, z,
541 $ 1, w, iw, i3, info )
542 CALL chkxer(
'SSTEVX', infot, nout, lerr, ok )
544 CALL sstevx(
'N',
'I', 1, d, e, 0.0, 0.0, 0, 0, 0.0, m, x, z,
545 $ 1, w, iw, i3, info )
546 CALL chkxer(
'SSTEVX', infot, nout, lerr, ok )
548 CALL sstevx(
'N',
'I', 1, d, e, 0.0, 0.0, 2, 1, 0.0, m, x, z,
549 $ 1, w, iw, i3, info )
550 CALL chkxer(
'SSTEVX', infot, nout, lerr, ok )
552 CALL sstevx(
'N',
'I', 2, d, e, 0.0, 0.0, 2, 1, 0.0, m, x, z,
553 $ 1, w, iw, i3, info )
554 CALL chkxer(
'SSTEVX', infot, nout, lerr, ok )
556 CALL sstevx(
'N',
'I', 1, d, e, 0.0, 0.0, 1, 2, 0.0, m, x, z,
557 $ 1, w, iw, i3, info )
558 CALL chkxer(
'SSTEVX', infot, nout, lerr, ok )
560 CALL sstevx(
'V',
'A', 2, d, e, 0.0, 0.0, 0, 0, 0.0, m, x, z,
561 $ 1, w, iw, i3, info )
562 CALL chkxer(
'SSTEVX', infot, nout, lerr, ok )
570 CALL sstevr(
'/',
'A', 0, d, e, 0.0, 0.0, 1, 1, 0.0, m, r, z,
571 $ 1, iw, x, 20*n, iw( 2*n+1 ), 10*n, info )
572 CALL chkxer(
'SSTEVR', infot, nout, lerr, ok )
574 CALL sstevr(
'V',
'/', 0, d, e, 0.0, 0.0, 1, 1, 0.0, m, r, z,
575 $ 1, iw, x, 20*n, iw( 2*n+1 ), 10*n, info )
576 CALL chkxer(
'SSTEVR', infot, nout, lerr, ok )
578 CALL sstevr(
'V',
'A', -1, d, e, 0.0, 0.0, 1, 1, 0.0, m, r, z,
579 $ 1, iw, x, 20*n, iw( 2*n+1 ), 10*n, info )
580 CALL chkxer(
'SSTEVR', infot, nout, lerr, ok )
582 CALL sstevr(
'V',
'V', 1, d, e, 0.0, 0.0, 1, 1, 0.0, m, r, z,
583 $ 1, iw, x, 20*n, iw( 2*n+1 ), 10*n, info )
584 CALL chkxer(
'SSTEVR', infot, nout, lerr, ok )
586 CALL sstevr(
'V',
'I', 1, d, e, 0.0, 0.0, 0, 1, 0.0, m, w, z,
587 $ 1, iw, x, 20*n, iw( 2*n+1 ), 10*n, info )
588 CALL chkxer(
'SSTEVR', infot, nout, lerr, ok )
591 CALL sstevr(
'V',
'I', 2, d, e, 0.0, 0.0, 2, 1, 0.0, m, w, z,
592 $ 1, iw, x, 20*n, iw( 2*n+1 ), 10*n, info )
593 CALL chkxer(
'SSTEVR', infot, nout, lerr, ok )
596 CALL sstevr(
'V',
'I', 1, d, e, 0.0, 0.0, 1, 1, 0.0, m, w, z,
597 $ 0, iw, x, 20*n, iw( 2*n+1 ), 10*n, info )
598 CALL chkxer(
'SSTEVR', infot, nout, lerr, ok )
600 CALL sstevr(
'V',
'I', 1, d, e, 0.0, 0.0, 1, 1, 0.0, m, w, z,
601 $ 1, iw, x, 20*n-1, iw( 2*n+1 ), 10*n, info )
602 CALL chkxer(
'SSTEVR', infot, nout, lerr, ok )
604 CALL sstevr(
'V',
'I', 1, d, e, 0.0, 0.0, 1, 1, 0.0, m, w, z,
605 $ 1, iw, x, 20*n, iw( 2*n+1 ), 10*n-1, info )
606 CALL chkxer(
'SSTEVR', infot, nout, lerr, ok )
613 CALL ssyevd(
'/',
'U', 0, a, 1, x, w, 1, iw, 1, info )
614 CALL chkxer(
'SSYEVD', infot, nout, lerr, ok )
616 CALL ssyevd(
'N',
'/', 0, a, 1, x, w, 1, iw, 1, info )
617 CALL chkxer(
'SSYEVD', infot, nout, lerr, ok )
619 CALL ssyevd(
'N',
'U', -1, a, 1, x, w, 1, iw, 1, info )
620 CALL chkxer(
'SSYEVD', infot, nout, lerr, ok )
622 CALL ssyevd(
'N',
'U', 2, a, 1, x, w, 3, iw, 1, info )
623 CALL chkxer(
'SSYEVD', infot, nout, lerr, ok )
625 CALL ssyevd(
'N',
'U', 1, a, 1, x, w, 0, iw, 1, info )
626 CALL chkxer(
'SSYEVD', infot, nout, lerr, ok )
628 CALL ssyevd(
'N',
'U', 2, a, 2, x, w, 4, iw, 1, info )
629 CALL chkxer(
'SSYEVD', infot, nout, lerr, ok )
631 CALL ssyevd(
'V',
'U', 2, a, 2, x, w, 20, iw, 12, info )
632 CALL chkxer(
'SSYEVD', infot, nout, lerr, ok )
634 CALL ssyevd(
'N',
'U', 1, a, 1, x, w, 1, iw, 0, info )
635 CALL chkxer(
'SSYEVD', infot, nout, lerr, ok )
637 CALL ssyevd(
'N',
'U', 2, a, 2, x, w, 5, iw, 0, info )
638 CALL chkxer(
'SSYEVD', infot, nout, lerr, ok )
640 CALL ssyevd(
'V',
'U', 2, a, 2, x, w, 27, iw, 11, info )
641 CALL chkxer(
'SSYEVD', infot, nout, lerr, ok )
646 srnamt =
'SSYEVD_2STAGE'
648 CALL ssyevd_2stage(
'/',
'U', 0, a, 1, x, w, 1, iw, 1, info )
649 CALL chkxer(
'SSYEVD_2STAGE', infot, nout, lerr, ok )
651 CALL ssyevd_2stage(
'V',
'U', 0, a, 1, x, w, 1, iw, 1, info )
652 CALL chkxer(
'SSYEVD_2STAGE', infot, nout, lerr, ok )
654 CALL ssyevd_2stage(
'N',
'/', 0, a, 1, x, w, 1, iw, 1, info )
655 CALL chkxer(
'SSYEVD_2STAGE', infot, nout, lerr, ok )
657 CALL ssyevd_2stage(
'N',
'U', -1, a, 1, x, w, 1, iw, 1, info )
658 CALL chkxer(
'SSYEVD_2STAGE', infot, nout, lerr, ok )
660 CALL ssyevd_2stage(
'N',
'U', 2, a, 1, x, w, 3, iw, 1, info )
661 CALL chkxer(
'SSYEVD_2STAGE', infot, nout, lerr, ok )
663 CALL ssyevd_2stage(
'N',
'U', 1, a, 1, x, w, 0, iw, 1, info )
664 CALL chkxer(
'SSYEVD_2STAGE', infot, nout, lerr, ok )
666 CALL ssyevd_2stage(
'N',
'U', 2, a, 2, x, w, 4, iw, 1, info )
667 CALL chkxer(
'SSYEVD_2STAGE', infot, nout, lerr, ok )
672 CALL ssyevd_2stage(
'N',
'U', 1, a, 1, x, w, 1, iw, 0, info )
673 CALL chkxer(
'SSYEVD_2STAGE', infot, nout, lerr, ok )
675 CALL ssyevd_2stage(
'N',
'U', 2, a, 2, x, w, 25, iw, 0, info )
676 CALL chkxer(
'SSYEVD_2STAGE', infot, nout, lerr, ok )
687 CALL ssyevr(
'/',
'A',
'U', 0, a, 1, 0.0, 0.0, 1, 1, 0.0, m, r,
688 $ z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
689 CALL chkxer(
'SSYEVR', infot, nout, lerr, ok )
691 CALL ssyevr(
'V',
'/',
'U', 0, a, 1, 0.0, 0.0, 1, 1, 0.0, m, r,
692 $ z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
693 CALL chkxer(
'SSYEVR', infot, nout, lerr, ok )
695 CALL ssyevr(
'V',
'A',
'/', -1, a, 1, 0.0, 0.0, 1, 1, 0.0, m,
696 $ r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
697 CALL chkxer(
'SSYEVR', infot, nout, lerr, ok )
699 CALL ssyevr(
'V',
'A',
'U', -1, a, 1, 0.0, 0.0, 1, 1, 0.0, m,
700 $ r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
701 CALL chkxer(
'SSYEVR', infot, nout, lerr, ok )
703 CALL ssyevr(
'V',
'A',
'U', 2, a, 1, 0.0, 0.0, 1, 1, 0.0, m, r,
704 $ z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
705 CALL chkxer(
'SSYEVR', infot, nout, lerr, ok )
707 CALL ssyevr(
'V',
'V',
'U', 1, a, 1, 0.0e0, 0.0e0, 1, 1, 0.0,
708 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
709 CALL chkxer(
'SSYEVR', infot, nout, lerr, ok )
711 CALL ssyevr(
'V',
'I',
'U', 1, a, 1, 0.0e0, 0.0e0, 0, 1, 0.0,
712 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
713 CALL chkxer(
'SSYEVR', infot, nout, lerr, ok )
716 CALL ssyevr(
'V',
'I',
'U', 2, a, 2, 0.0e0, 0.0e0, 2, 1, 0.0,
717 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
718 CALL chkxer(
'SSYEVR', infot, nout, lerr, ok )
720 CALL ssyevr(
'V',
'I',
'U', 1, a, 1, 0.0e0, 0.0e0, 1, 1, 0.0,
721 $ m, r, z, 0, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
722 CALL chkxer(
'SSYEVR', infot, nout, lerr, ok )
724 CALL ssyevr(
'V',
'I',
'U', 1, a, 1, 0.0e0, 0.0e0, 1, 1, 0.0,
725 $ m, r, z, 1, iw, q, 26*n-1, iw( 2*n+1 ), 10*n,
727 CALL chkxer(
'SSYEVR', infot, nout, lerr, ok )
729 CALL ssyevr(
'V',
'I',
'U', 1, a, 1, 0.0e0, 0.0e0, 1, 1, 0.0,
730 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n-1,
732 CALL chkxer(
'SSYEVR', infot, nout, lerr, ok )
737 srnamt =
'SSYEVR_2STAGE'
741 $ 0.0e0, 0.0e0, 1, 1, 0.0e0,
742 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
743 CALL chkxer(
'SSYEVR_2STAGE', infot, nout, lerr, ok )
746 $ 0.0e0, 0.0e0, 1, 1, 0.0e0,
747 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
748 CALL chkxer(
'SSYEVR_2STAGE', infot, nout, lerr, ok )
751 $ 0.0e0, 0.0e0, 1, 1, 0.0e0,
752 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
753 CALL chkxer(
'SSYEVR_2STAGE', infot, nout, lerr, ok )
756 $ 0.0e0, 0.0e0, 1, 1, 0.0e0,
757 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
758 CALL chkxer(
'SSYEVR_2STAGE', infot, nout, lerr, ok )
761 $ 0.0e0, 0.0e0, 1, 1, 0.0e0,
762 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
763 CALL chkxer(
'SSYEVR_2STAGE', infot, nout, lerr, ok )
766 $ 0.0e0, 0.0e0, 1, 1, 0.0e0,
767 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
768 CALL chkxer(
'SSYEVR_2STAGE', infot, nout, lerr, ok )
771 $ 0.0e0, 0.0e0, 1, 1, 0.0e0,
772 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
773 CALL chkxer(
'SSYEVR_2STAGE', infot, nout, lerr, ok )
776 $ 0.0e0, 0.0e0, 0, 1, 0.0e0,
777 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
778 CALL chkxer(
'SSYEVR_2STAGE', infot, nout, lerr, ok )
781 $ 0.0e0, 0.0e0, 2, 1, 0.0e0,
782 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
783 CALL chkxer(
'SSYEVR_2STAGE', infot, nout, lerr, ok )
786 $ 0.0e0, 0.0e0, 1, 1, 0.0e0,
787 $ m, r, z, 0, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
788 CALL chkxer(
'SSYEVR_2STAGE', infot, nout, lerr, ok )
791 $ 0.0e0, 0.0e0, 1, 1, 0.0e0,
792 $ m, r, z, 1, iw, q, 0, iw( 2*n+1 ), 10*n,
794 CALL chkxer(
'SSYEVR_2STAGE', infot, nout, lerr, ok )
797 $ 0.0e0, 0.0e0, 1, 1, 0.0e0,
798 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 0,
800 CALL chkxer(
'SSYEVR_2STAGE', infot, nout, lerr, ok )
807 CALL ssyev(
'/',
'U', 0, a, 1, x, w, 1, info )
808 CALL chkxer(
'SSYEV ', infot, nout, lerr, ok )
810 CALL ssyev(
'N',
'/', 0, a, 1, x, w, 1, info )
811 CALL chkxer(
'SSYEV ', infot, nout, lerr, ok )
813 CALL ssyev(
'N',
'U', -1, a, 1, x, w, 1, info )
814 CALL chkxer(
'SSYEV ', infot, nout, lerr, ok )
816 CALL ssyev(
'N',
'U', 2, a, 1, x, w, 3, info )
817 CALL chkxer(
'SSYEV ', infot, nout, lerr, ok )
819 CALL ssyev(
'N',
'U', 1, a, 1, x, w, 1, info )
820 CALL chkxer(
'SSYEV ', infot, nout, lerr, ok )
825 srnamt =
'SSYEV_2STAGE '
828 CALL chkxer(
'SSYEV_2STAGE ', infot, nout, lerr, ok )
831 CALL chkxer(
'SSYEV_2STAGE ', infot, nout, lerr, ok )
834 CALL chkxer(
'SSYEV_2STAGE ', infot, nout, lerr, ok )
837 CALL chkxer(
'SSYEV_2STAGE ', infot, nout, lerr, ok )
840 CALL chkxer(
'SSYEV_2STAGE ', infot, nout, lerr, ok )
843 CALL chkxer(
'SSYEV_2STAGE ', infot, nout, lerr, ok )
850 CALL ssyevx(
'/',
'A',
'U', 0, a, 1, 0.0, 0.0, 0, 0, 0.0, m, x,
851 $ z, 1, w, 1, iw, i3, info )
852 CALL chkxer(
'SSYEVX', infot, nout, lerr, ok )
854 CALL ssyevx(
'N',
'/',
'U', 0, a, 1, 0.0, 1.0, 1, 0, 0.0, m, x,
855 $ z, 1, w, 1, iw, i3, info )
856 CALL chkxer(
'SSYEVX', infot, nout, lerr, ok )
858 CALL ssyevx(
'N',
'A',
'/', 0, a, 1, 0.0, 0.0, 0, 0, 0.0, m, x,
859 $ z, 1, w, 1, iw, i3, info )
861 CALL ssyevx(
'N',
'A',
'U', -1, a, 1, 0.0, 0.0, 0, 0, 0.0, m,
862 $ x, z, 1, w, 1, iw, i3, info )
863 CALL chkxer(
'SSYEVX', infot, nout, lerr, ok )
865 CALL ssyevx(
'N',
'A',
'U', 2, a, 1, 0.0, 0.0, 0, 0, 0.0, m, x,
866 $ z, 1, w, 16, iw, i3, info )
867 CALL chkxer(
'SSYEVX', infot, nout, lerr, ok )
869 CALL ssyevx(
'N',
'V',
'U', 1, a, 1, 0.0, 0.0, 0, 0, 0.0, m, x,
870 $ z, 1, w, 8, iw, i3, info )
871 CALL chkxer(
'SSYEVX', infot, nout, lerr, ok )
873 CALL ssyevx(
'N',
'I',
'U', 1, a, 1, 0.0, 0.0, 0, 0, 0.0, m, x,
874 $ z, 1, w, 8, iw, i3, info )
875 CALL chkxer(
'SSYEVX', infot, nout, lerr, ok )
877 CALL ssyevx(
'N',
'I',
'U', 1, a, 1, 0.0, 0.0, 2, 1, 0.0, m, x,
878 $ z, 1, w, 8, iw, i3, info )
879 CALL chkxer(
'SSYEVX', infot, nout, lerr, ok )
881 CALL ssyevx(
'N',
'I',
'U', 2, a, 2, 0.0, 0.0, 2, 1, 0.0, m, x,
882 $ z, 1, w, 16, iw, i3, info )
883 CALL chkxer(
'SSYEVX', infot, nout, lerr, ok )
885 CALL ssyevx(
'N',
'I',
'U', 1, a, 1, 0.0, 0.0, 1, 2, 0.0, m, x,
886 $ z, 1, w, 8, iw, i3, info )
887 CALL chkxer(
'SSYEVX', infot, nout, lerr, ok )
889 CALL ssyevx(
'V',
'A',
'U', 2, a, 2, 0.0, 0.0, 0, 0, 0.0, m, x,
890 $ z, 1, w, 16, iw, i3, info )
891 CALL chkxer(
'SSYEVX', infot, nout, lerr, ok )
893 CALL ssyevx(
'V',
'A',
'U', 1, a, 1, 0.0, 0.0, 0, 0, 0.0, m, x,
894 $ z, 1, w, 0, iw, i3, info )
895 CALL chkxer(
'SSYEVX', infot, nout, lerr, ok )
900 srnamt =
'SSYEVX_2STAGE'
903 $ 0.0e0, 0.0e0, 0, 0, 0.0e0,
904 $ m, x, z, 1, w, 1, iw, i3, info )
905 CALL chkxer(
'SSYEVX_2STAGE', infot, nout, lerr, ok )
908 $ 0.0e0, 0.0e0, 0, 0, 0.0e0,
909 $ m, x, z, 1, w, 1, iw, i3, info )
910 CALL chkxer(
'SSYEVX_2STAGE', infot, nout, lerr, ok )
913 $ 0.0e0, 1.0e0, 1, 0, 0.0e0,
914 $ m, x, z, 1, w, 1, iw, i3, info )
915 CALL chkxer(
'SSYEVX_2STAGE', infot, nout, lerr, ok )
918 $ 0.0e0, 0.0e0, 0, 0, 0.0e0,
919 $ m, x, z, 1, w, 1, iw, i3, info )
922 $ 0.0e0, 0.0e0, 0, 0, 0.0e0,
923 $ m, x, z, 1, w, 1, iw, i3, info )
924 CALL chkxer(
'SSYEVX_2STAGE', infot, nout, lerr, ok )
927 $ 0.0e0, 0.0e0, 0, 0, 0.0e0,
928 $ m, x, z, 1, w, 16, iw, i3, info )
929 CALL chkxer(
'SSYEVX_2STAGE', infot, nout, lerr, ok )
932 $ 0.0e0, 0.0e0, 0, 0, 0.0e0,
933 $ m, x, z, 1, w, 8, iw, i3, info )
934 CALL chkxer(
'SSYEVX_2STAGE', infot, nout, lerr, ok )
937 $ 0.0e0, 0.0e0, 0, 0, 0.0e0,
938 $ m, x, z, 1, w, 8, iw, i3, info )
939 CALL chkxer(
'SSYEVX_2STAGE', infot, nout, lerr, ok )
942 $ 0.0e0, 0.0e0, 2, 1, 0.0e0,
943 $ m, x, z, 1, w, 8, iw, i3, info )
944 CALL chkxer(
'SSYEVX_2STAGE', infot, nout, lerr, ok )
947 $ 0.0e0, 0.0e0, 2, 1, 0.0e0,
948 $ m, x, z, 1, w, 16, iw, i3, info )
949 CALL chkxer(
'SSYEVX_2STAGE', infot, nout, lerr, ok )
952 $ 0.0e0, 0.0e0, 1, 2, 0.0e0,
953 $ m, x, z, 1, w, 8, iw, i3, info )
954 CALL chkxer(
'SSYEVX_2STAGE', infot, nout, lerr, ok )
957 $ 0.0e0, 0.0e0, 0, 0, 0.0e0,
958 $ m, x, z, 0, w, 16, iw, i3, info )
959 CALL chkxer(
'SSYEVX_2STAGE', infot, nout, lerr, ok )
962 $ 0.0e0, 0.0e0, 0, 0, 0.0e0,
963 $ m, x, z, 1, w, 0, iw, i3, info )
964 CALL chkxer(
'SSYEVX_2STAGE', infot, nout, lerr, ok )
971 CALL sspevd(
'/',
'U', 0, a, x, z, 1, w, 1, iw, 1, info )
972 CALL chkxer(
'SSPEVD', infot, nout, lerr, ok )
974 CALL sspevd(
'N',
'/', 0, a, x, z, 1, w, 1, iw, 1, info )
975 CALL chkxer(
'SSPEVD', infot, nout, lerr, ok )
977 CALL sspevd(
'N',
'U', -1, a, x, z, 1, w, 1, iw, 1, info )
978 CALL chkxer(
'SSPEVD', infot, nout, lerr, ok )
980 CALL sspevd(
'V',
'U', 2, a, x, z, 1, w, 23, iw, 12, info )
981 CALL chkxer(
'SSPEVD', infot, nout, lerr, ok )
983 CALL sspevd(
'N',
'U', 1, a, x, z, 1, w, 0, iw, 1, info )
984 CALL chkxer(
'SSPEVD', infot, nout, lerr, ok )
986 CALL sspevd(
'N',
'U', 2, a, x, z, 1, w, 3, iw, 1, info )
987 CALL chkxer(
'SSPEVD', infot, nout, lerr, ok )
989 CALL sspevd(
'V',
'U', 2, a, x, z, 2, w, 16, iw, 12, info )
990 CALL chkxer(
'SSPEVD', infot, nout, lerr, ok )
992 CALL sspevd(
'N',
'U', 1, a, x, z, 1, w, 1, iw, 0, info )
993 CALL chkxer(
'SSPEVD', infot, nout, lerr, ok )
995 CALL sspevd(
'N',
'U', 2, a, x, z, 1, w, 4, iw, 0, info )
996 CALL chkxer(
'SSPEVD', infot, nout, lerr, ok )
998 CALL sspevd(
'V',
'U', 2, a, x, z, 2, w, 23, iw, 11, info )
999 CALL chkxer(
'SSPEVD', infot, nout, lerr, ok )
1006 CALL sspev(
'/',
'U', 0, a, w, z, 1, x, info )
1007 CALL chkxer(
'SSPEV ', infot, nout, lerr, ok )
1009 CALL sspev(
'N',
'/', 0, a, w, z, 1, x, info )
1010 CALL chkxer(
'SSPEV ', infot, nout, lerr, ok )
1012 CALL sspev(
'N',
'U', -1, a, w, z, 1, x, info )
1013 CALL chkxer(
'SSPEV ', infot, nout, lerr, ok )
1015 CALL sspev(
'V',
'U', 2, a, w, z, 1, x, info )
1016 CALL chkxer(
'SSPEV ', infot, nout, lerr, ok )
1023 CALL sspevx(
'/',
'A',
'U', 0, a, 0.0, 0.0, 0, 0, 0.0, m, x, z,
1024 $ 1, w, iw, i3, info )
1025 CALL chkxer(
'SSPEVX', infot, nout, lerr, ok )
1027 CALL sspevx(
'N',
'/',
'U', 0, a, 0.0, 0.0, 0, 0, 0.0, m, x, z,
1028 $ 1, w, iw, i3, info )
1029 CALL chkxer(
'SSPEVX', infot, nout, lerr, ok )
1031 CALL sspevx(
'N',
'A',
'/', 0, a, 0.0, 0.0, 0, 0, 0.0, m, x, z,
1032 $ 1, w, iw, i3, info )
1034 CALL sspevx(
'N',
'A',
'U', -1, a, 0.0, 0.0, 0, 0, 0.0, m, x,
1035 $ z, 1, w, iw, i3, info )
1036 CALL chkxer(
'SSPEVX', infot, nout, lerr, ok )
1038 CALL sspevx(
'N',
'V',
'U', 1, a, 0.0, 0.0, 0, 0, 0.0, m, x, z,
1039 $ 1, w, iw, i3, info )
1040 CALL chkxer(
'SSPEVX', infot, nout, lerr, ok )
1042 CALL sspevx(
'N',
'I',
'U', 1, a, 0.0, 0.0, 0, 0, 0.0, m, x, z,
1043 $ 1, w, iw, i3, info )
1044 CALL chkxer(
'SSPEVX', infot, nout, lerr, ok )
1046 CALL sspevx(
'N',
'I',
'U', 1, a, 0.0, 0.0, 2, 1, 0.0, m, x, z,
1047 $ 1, w, iw, i3, info )
1048 CALL chkxer(
'SSPEVX', infot, nout, lerr, ok )
1050 CALL sspevx(
'N',
'I',
'U', 2, a, 0.0, 0.0, 2, 1, 0.0, m, x, z,
1051 $ 1, w, iw, i3, info )
1052 CALL chkxer(
'SSPEVX', infot, nout, lerr, ok )
1054 CALL sspevx(
'N',
'I',
'U', 1, a, 0.0, 0.0, 1, 2, 0.0, m, x, z,
1055 $ 1, w, iw, i3, info )
1056 CALL chkxer(
'SSPEVX', infot, nout, lerr, ok )
1058 CALL sspevx(
'V',
'A',
'U', 2, a, 0.0, 0.0, 0, 0, 0.0, m, x, z,
1059 $ 1, w, iw, i3, info )
1060 CALL chkxer(
'SSPEVX', infot, nout, lerr, ok )
1065 ELSE IF(
lsamen( 2, c2,
'SB' ) )
THEN
1071 CALL ssbtrd(
'/',
'U', 0, 0, a, 1, d, e, z, 1, w, info )
1072 CALL chkxer(
'SSBTRD', infot, nout, lerr, ok )
1074 CALL ssbtrd(
'N',
'/', 0, 0, a, 1, d, e, z, 1, w, info )
1075 CALL chkxer(
'SSBTRD', infot, nout, lerr, ok )
1077 CALL ssbtrd(
'N',
'U', -1, 0, a, 1, d, e, z, 1, w, info )
1078 CALL chkxer(
'SSBTRD', infot, nout, lerr, ok )
1080 CALL ssbtrd(
'N',
'U', 0, -1, a, 1, d, e, z, 1, w, info )
1081 CALL chkxer(
'SSBTRD', infot, nout, lerr, ok )
1083 CALL ssbtrd(
'N',
'U', 1, 1, a, 1, d, e, z, 1, w, info )
1084 CALL chkxer(
'SSBTRD', infot, nout, lerr, ok )
1086 CALL ssbtrd(
'V',
'U', 2, 0, a, 1, d, e, z, 1, w, info )
1087 CALL chkxer(
'SSBTRD', infot, nout, lerr, ok )
1092 srnamt =
'SSYTRD_SB2ST'
1094 CALL ssytrd_sb2st(
'/',
'N',
'U', 0, 0, a, 1, d, e,
1095 $ c, 1, w, 1, info )
1096 CALL chkxer(
'SSYTRD_SB2ST', infot, nout, lerr, ok )
1098 CALL ssytrd_sb2st(
'N',
'/',
'U', 0, 0, a, 1, d, e,
1099 $ c, 1, w, 1, info )
1100 CALL chkxer(
'SSYTRD_SB2ST', infot, nout, lerr, ok )
1102 CALL ssytrd_sb2st(
'N',
'H',
'U', 0, 0, a, 1, d, e,
1103 $ c, 1, w, 1, info )
1104 CALL chkxer(
'SSYTRD_SB2ST', infot, nout, lerr, ok )
1106 CALL ssytrd_sb2st(
'N',
'N',
'/', 0, 0, a, 1, d, e,
1107 $ c, 1, w, 1, info )
1108 CALL chkxer(
'SSYTRD_SB2ST', infot, nout, lerr, ok )
1110 CALL ssytrd_sb2st(
'N',
'N',
'U', -1, 0, a, 1, d, e,
1111 $ c, 1, w, 1, info )
1112 CALL chkxer(
'SSYTRD_SB2ST', infot, nout, lerr, ok )
1114 CALL ssytrd_sb2st(
'N',
'N',
'U', 0, -1, a, 1, d, e,
1115 $ c, 1, w, 1, info )
1116 CALL chkxer(
'SSYTRD_SB2ST', infot, nout, lerr, ok )
1118 CALL ssytrd_sb2st(
'N',
'N',
'U', 0, 1, a, 1, d, e,
1119 $ c, 1, w, 1, info )
1120 CALL chkxer(
'SSYTRD_SB2ST', infot, nout, lerr, ok )
1122 CALL ssytrd_sb2st(
'N',
'N',
'U', 0, 0, a, 1, d, e,
1123 $ c, 0, w, 1, info )
1124 CALL chkxer(
'SSYTRD_SB2ST', infot, nout, lerr, ok )
1126 CALL ssytrd_sb2st(
'N',
'N',
'U', 0, 0, a, 1, d, e,
1127 $ c, 1, w, 0, info )
1128 CALL chkxer(
'SSYTRD_SB2ST', infot, nout, lerr, ok )
1135 CALL ssbevd(
'/',
'U', 0, 0, a, 1, x, z, 1, w, 1, iw, 1, info )
1136 CALL chkxer(
'SSBEVD', infot, nout, lerr, ok )
1138 CALL ssbevd(
'N',
'/', 0, 0, a, 1, x, z, 1, w, 1, iw, 1, info )
1139 CALL chkxer(
'SSBEVD', infot, nout, lerr, ok )
1141 CALL ssbevd(
'N',
'U', -1, 0, a, 1, x, z, 1, w, 1, iw, 1,
1143 CALL chkxer(
'SSBEVD', infot, nout, lerr, ok )
1145 CALL ssbevd(
'N',
'U', 0, -1, a, 1, x, z, 1, w, 1, iw, 1,
1147 CALL chkxer(
'SSBEVD', infot, nout, lerr, ok )
1149 CALL ssbevd(
'N',
'U', 2, 1, a, 1, x, z, 1, w, 4, iw, 1, info )
1150 CALL chkxer(
'SSBEVD', infot, nout, lerr, ok )
1152 CALL ssbevd(
'V',
'U', 2, 1, a, 2, x, z, 1, w, 25, iw, 12,
1154 CALL chkxer(
'SSBEVD', infot, nout, lerr, ok )
1156 CALL ssbevd(
'N',
'U', 1, 0, a, 1, x, z, 1, w, 0, iw, 1, info )
1157 CALL chkxer(
'SSBEVD', infot, nout, lerr, ok )
1159 CALL ssbevd(
'N',
'U', 2, 0, a, 1, x, z, 1, w, 3, iw, 1, info )
1160 CALL chkxer(
'SSBEVD', infot, nout, lerr, ok )
1162 CALL ssbevd(
'V',
'U', 2, 0, a, 1, x, z, 2, w, 18, iw, 12,
1164 CALL chkxer(
'SSBEVD', infot, nout, lerr, ok )
1166 CALL ssbevd(
'N',
'U', 1, 0, a, 1, x, z, 1, w, 1, iw, 0, info )
1167 CALL chkxer(
'SSBEVD', infot, nout, lerr, ok )
1169 CALL ssbevd(
'V',
'U', 2, 0, a, 1, x, z, 2, w, 25, iw, 11,
1171 CALL chkxer(
'SSBEVD', infot, nout, lerr, ok )
1176 srnamt =
'SSBEVD_2STAGE'
1178 CALL ssbevd_2stage(
'/',
'U', 0, 0, a, 1, x, z, 1, w,
1180 CALL chkxer(
'SSBEVD_2STAGE', infot, nout, lerr, ok )
1182 CALL ssbevd_2stage(
'V',
'U', 0, 0, a, 1, x, z, 1, w,
1184 CALL chkxer(
'SSBEVD_2STAGE', infot, nout, lerr, ok )
1186 CALL ssbevd_2stage(
'N',
'/', 0, 0, a, 1, x, z, 1, w,
1188 CALL chkxer(
'SSBEVD_2STAGE', infot, nout, lerr, ok )
1190 CALL ssbevd_2stage(
'N',
'U', -1, 0, a, 1, x, z, 1, w,
1192 CALL chkxer(
'SSBEVD_2STAGE', infot, nout, lerr, ok )
1194 CALL ssbevd_2stage(
'N',
'U', 0, -1, a, 1, x, z, 1, w,
1196 CALL chkxer(
'SSBEVD_2STAGE', infot, nout, lerr, ok )
1198 CALL ssbevd_2stage(
'N',
'U', 2, 1, a, 1, x, z, 1, w,
1200 CALL chkxer(
'SSBEVD_2STAGE', infot, nout, lerr, ok )
1206 CALL ssbevd_2stage(
'N',
'U', 1, 0, a, 1, x, z, 1, w,
1208 CALL chkxer(
'SSBEVD_2STAGE', infot, nout, lerr, ok )
1210 CALL ssbevd_2stage(
'N',
'U', 2, 0, a, 1, x, z, 1, w,
1212 CALL chkxer(
'SSBEVD_2STAGE', infot, nout, lerr, ok )
1218 CALL ssbevd_2stage(
'N',
'U', 1, 0, a, 1, x, z, 1, w,
1220 CALL chkxer(
'SSBEVD_2STAGE', infot, nout, lerr, ok )
1232 CALL ssbev(
'/',
'U', 0, 0, a, 1, x, z, 1, w, info )
1233 CALL chkxer(
'SSBEV ', infot, nout, lerr, ok )
1235 CALL ssbev(
'N',
'/', 0, 0, a, 1, x, z, 1, w, info )
1236 CALL chkxer(
'SSBEV ', infot, nout, lerr, ok )
1238 CALL ssbev(
'N',
'U', -1, 0, a, 1, x, z, 1, w, info )
1239 CALL chkxer(
'SSBEV ', infot, nout, lerr, ok )
1241 CALL ssbev(
'N',
'U', 0, -1, a, 1, x, z, 1, w, info )
1242 CALL chkxer(
'SSBEV ', infot, nout, lerr, ok )
1244 CALL ssbev(
'N',
'U', 2, 1, a, 1, x, z, 1, w, info )
1245 CALL chkxer(
'SSBEV ', infot, nout, lerr, ok )
1247 CALL ssbev(
'V',
'U', 2, 0, a, 1, x, z, 1, w, info )
1248 CALL chkxer(
'SSBEV ', infot, nout, lerr, ok )
1253 srnamt =
'SSBEV_2STAGE '
1255 CALL ssbev_2stage(
'/',
'U', 0, 0, a, 1, x, z, 1, w, 0, info )
1256 CALL chkxer(
'SSBEV_2STAGE ', infot, nout, lerr, ok )
1258 CALL ssbev_2stage(
'V',
'U', 0, 0, a, 1, x, z, 1, w, 0, info )
1259 CALL chkxer(
'SSBEV_2STAGE ', infot, nout, lerr, ok )
1261 CALL ssbev_2stage(
'N',
'/', 0, 0, a, 1, x, z, 1, w, 0, info )
1262 CALL chkxer(
'SSBEV_2STAGE ', infot, nout, lerr, ok )
1264 CALL ssbev_2stage(
'N',
'U', -1, 0, a, 1, x, z, 1, w, 0, info )
1265 CALL chkxer(
'SSBEV_2STAGE ', infot, nout, lerr, ok )
1267 CALL ssbev_2stage(
'N',
'U', 0, -1, a, 1, x, z, 1, w, 0, info )
1268 CALL chkxer(
'SSBEV_2STAGE ', infot, nout, lerr, ok )
1270 CALL ssbev_2stage(
'N',
'U', 2, 1, a, 1, x, z, 1, w, 0, info )
1271 CALL chkxer(
'SSBEV_2STAGE ', infot, nout, lerr, ok )
1273 CALL ssbev_2stage(
'N',
'U', 2, 0, a, 1, x, z, 0, w, 0, info )
1274 CALL chkxer(
'SSBEV_2STAGE ', infot, nout, lerr, ok )
1276 CALL ssbev_2stage(
'N',
'U', 0, 0, a, 1, x, z, 1, w, 0, info )
1277 CALL chkxer(
'SSBEV_2STAGE ', infot, nout, lerr, ok )
1284 CALL ssbevx(
'/',
'A',
'U', 0, 0, a, 1, q, 1, 0.0, 0.0, 0, 0,
1285 $ 0.0, m, x, z, 1, w, iw, i3, info )
1286 CALL chkxer(
'SSBEVX', infot, nout, lerr, ok )
1288 CALL ssbevx(
'N',
'/',
'U', 0, 0, a, 1, q, 1, 0.0, 0.0, 0, 0,
1289 $ 0.0, m, x, z, 1, w, iw, i3, info )
1290 CALL chkxer(
'SSBEVX', infot, nout, lerr, ok )
1292 CALL ssbevx(
'N',
'A',
'/', 0, 0, a, 1, q, 1, 0.0, 0.0, 0, 0,
1293 $ 0.0, m, x, z, 1, w, iw, i3, info )
1294 CALL chkxer(
'SSBEVX', infot, nout, lerr, ok )
1296 CALL ssbevx(
'N',
'A',
'U', -1, 0, a, 1, q, 1, 0.0, 0.0, 0, 0,
1297 $ 0.0, m, x, z, 1, w, iw, i3, info )
1298 CALL chkxer(
'SSBEVX', infot, nout, lerr, ok )
1300 CALL ssbevx(
'N',
'A',
'U', 0, -1, a, 1, q, 1, 0.0, 0.0, 0, 0,
1301 $ 0.0, m, x, z, 1, w, iw, i3, info )
1302 CALL chkxer(
'SSBEVX', infot, nout, lerr, ok )
1304 CALL ssbevx(
'N',
'A',
'U', 2, 1, a, 1, q, 1, 0.0, 0.0, 0, 0,
1305 $ 0.0, m, x, z, 1, w, iw, i3, info )
1306 CALL chkxer(
'SSBEVX', infot, nout, lerr, ok )
1308 CALL ssbevx(
'V',
'A',
'U', 2, 0, a, 1, q, 1, 0.0, 0.0, 0, 0,
1309 $ 0.0, m, x, z, 2, w, iw, i3, info )
1310 CALL chkxer(
'SSBEVX', infot, nout, lerr, ok )
1312 CALL ssbevx(
'N',
'V',
'U', 1, 0, a, 1, q, 1, 0.0, 0.0, 0, 0,
1313 $ 0.0, m, x, z, 1, w, iw, i3, info )
1314 CALL chkxer(
'SSBEVX', infot, nout, lerr, ok )
1316 CALL ssbevx(
'N',
'I',
'U', 1, 0, a, 1, q, 1, 0.0, 0.0, 0, 0,
1317 $ 0.0, m, x, z, 1, w, iw, i3, info )
1318 CALL chkxer(
'SSBEVX', infot, nout, lerr, ok )
1320 CALL ssbevx(
'N',
'I',
'U', 1, 0, a, 1, q, 1, 0.0, 0.0, 2, 1,
1321 $ 0.0, m, x, z, 1, w, iw, i3, info )
1322 CALL chkxer(
'SSBEVX', infot, nout, lerr, ok )
1324 CALL ssbevx(
'N',
'I',
'U', 2, 0, a, 1, q, 1, 0.0, 0.0, 2, 1,
1325 $ 0.0, m, x, z, 1, w, iw, i3, info )
1326 CALL chkxer(
'SSBEVX', infot, nout, lerr, ok )
1328 CALL ssbevx(
'N',
'I',
'U', 1, 0, a, 1, q, 1, 0.0, 0.0, 1, 2,
1329 $ 0.0, m, x, z, 1, w, iw, i3, info )
1330 CALL chkxer(
'SSBEVX', infot, nout, lerr, ok )
1332 CALL ssbevx(
'V',
'A',
'U', 2, 0, a, 1, q, 2, 0.0, 0.0, 0, 0,
1333 $ 0.0, m, x, z, 1, w, iw, i3, info )
1334 CALL chkxer(
'SSBEVX', infot, nout, lerr, ok )
1339 srnamt =
'SSBEVX_2STAGE'
1341 CALL ssbevx_2stage(
'/',
'A',
'U', 0, 0, a, 1, q, 1, 0.0e0,
1342 $ 0.0e0, 0, 0, 0.0e0, m, x, z, 1, w, 0, iw, i3, info )
1343 CALL chkxer(
'SSBEVX_2STAGE', infot, nout, lerr, ok )
1345 CALL ssbevx_2stage(
'V',
'A',
'U', 0, 0, a, 1, q, 1, 0.0e0,
1346 $ 0.0e0, 0, 0, 0.0e0, m, x, z, 1, w, 0, iw, i3, info )
1347 CALL chkxer(
'SSBEVX_2STAGE', infot, nout, lerr, ok )
1349 CALL ssbevx_2stage(
'N',
'/',
'U', 0, 0, a, 1, q, 1, 0.0e0,
1350 $ 0.0e0, 0, 0, 0.0e0, m, x, z, 1, w, 0, iw, i3, info )
1351 CALL chkxer(
'SSBEVX_2STAGE', infot, nout, lerr, ok )
1353 CALL ssbevx_2stage(
'N',
'A',
'/', 0, 0, a, 1, q, 1, 0.0e0,
1354 $ 0.0e0, 0, 0, 0.0e0, m, x, z, 1, w, 0, iw, i3, info )
1355 CALL chkxer(
'SSBEVX_2STAGE', infot, nout, lerr, ok )
1357 CALL ssbevx_2stage(
'N',
'A',
'U', -1, 0, a, 1, q, 1, 0.0e0,
1358 $ 0.0e0, 0, 0, 0.0e0, m, x, z, 1, w, 0, iw, i3, info )
1359 CALL chkxer(
'SSBEVX_2STAGE', infot, nout, lerr, ok )
1361 CALL ssbevx_2stage(
'N',
'A',
'U', 0, -1, a, 1, q, 1, 0.0e0,
1362 $ 0.0e0, 0, 0, 0.0e0, m, x, z, 1, w, 0, iw, i3, info )
1363 CALL chkxer(
'SSBEVX_2STAGE', infot, nout, lerr, ok )
1365 CALL ssbevx_2stage(
'N',
'A',
'U', 2, 1, a, 1, q, 1, 0.0e0,
1366 $ 0.0e0, 0, 0, 0.0e0, m, x, z, 1, w, 0, iw, i3, info )
1367 CALL chkxer(
'SSBEVX_2STAGE', infot, nout, lerr, ok )
1373 CALL ssbevx_2stage(
'N',
'V',
'U', 1, 0, a, 1, q, 1, 0.0e0,
1374 $ 0.0e0, 0, 0, 0.0e0, m, x, z, 1, w, 0, iw, i3, info )
1375 CALL chkxer(
'SSBEVX_2STAGE', infot, nout, lerr, ok )
1377 CALL ssbevx_2stage(
'N',
'I',
'U', 1, 0, a, 1, q, 1, 0.0e0,
1378 $ 0.0e0, 0, 0, 0.0e0, m, x, z, 1, w, 0, iw, i3, info )
1379 CALL chkxer(
'SSBEVX_2STAGE', infot, nout, lerr, ok )
1381 CALL ssbevx_2stage(
'N',
'I',
'U', 1, 0, a, 1, q, 1, 0.0e0,
1382 $ 0.0e0, 2, 1, 0.0e0, m, x, z, 1, w, 0, iw, i3, info )
1383 CALL chkxer(
'SSBEVX_2STAGE', infot, nout, lerr, ok )
1385 CALL ssbevx_2stage(
'N',
'I',
'U', 2, 0, a, 1, q, 1, 0.0e0,
1386 $ 0.0e0, 2, 1, 0.0e0, m, x, z, 1, w, 0, iw, i3, info )
1387 CALL chkxer(
'SSBEVX_2STAGE', infot, nout, lerr, ok )
1389 CALL ssbevx_2stage(
'N',
'I',
'U', 1, 0, a, 1, q, 1, 0.0e0,
1390 $ 0.0e0, 1, 2, 0.0e0, m, x, z, 1, w, 0, iw, i3, info )
1391 CALL chkxer(
'SSBEVX_2STAGE', infot, nout, lerr, ok )
1397 CALL ssbevx_2stage(
'N',
'A',
'U', 0, 0, a, 1, q, 1, 0.0e0,
1398 $ 0.0e0, 0, 0, 0.0e0, m, x, z, 1, w, 0, iw, i3, info )
1399 CALL chkxer(
'SSBEVX_2STAGE', infot, nout, lerr, ok )
1407 WRITE( nout, fmt = 9999 )path, nt
1409 WRITE( nout, fmt = 9998 )path
1412 9999
FORMAT( 1x, a3,
' routines passed the tests of the error exits',
1413 $
' (', i3,
' tests done)' )
1414 9998
FORMAT(
' *** ', a3,
' routines failed the tests of the error ',
subroutine ssyevd_2stage(JOBZ, UPLO, N, A, LDA, W, WORK, LWORK, IWORK, LIWORK, INFO)
SSYEVD_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for SY ma...
subroutine sormtr(SIDE, UPLO, TRANS, M, N, A, LDA, TAU, C, LDC, WORK, LWORK, INFO)
SORMTR
subroutine ssyevr(JOBZ, RANGE, UPLO, N, A, LDA, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, ISUPPZ, WORK, LWORK, IWORK, LIWORK, INFO)
SSYEVR computes the eigenvalues and, optionally, the left and/or right eigenvectors for SY matrices ...
subroutine sspevd(JOBZ, UPLO, N, AP, W, Z, LDZ, WORK, LWORK, IWORK, LIWORK, INFO)
SSPEVD computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matric...
subroutine sspev(JOBZ, UPLO, N, AP, W, Z, LDZ, WORK, INFO)
SSPEV computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrice...
subroutine ssyev_2stage(JOBZ, UPLO, N, A, LDA, W, WORK, LWORK, INFO)
SSYEV_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for SY mat...
subroutine ssptrd(UPLO, N, AP, D, E, TAU, INFO)
SSPTRD
subroutine ssteqr(COMPZ, N, D, E, Z, LDZ, WORK, INFO)
SSTEQR
subroutine sstevr(JOBZ, RANGE, N, D, E, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, ISUPPZ, WORK, LWORK, IWORK, LIWORK, INFO)
SSTEVR computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matric...
subroutine ssyevx(JOBZ, RANGE, UPLO, N, A, LDA, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, WORK, LWORK, IWORK, IFAIL, INFO)
SSYEVX computes the eigenvalues and, optionally, the left and/or right eigenvectors for SY matrices ...
subroutine ssbevd(JOBZ, UPLO, N, KD, AB, LDAB, W, Z, LDZ, WORK, LWORK, IWORK, LIWORK, INFO)
SSBEVD computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matric...
subroutine sstevx(JOBZ, RANGE, N, D, E, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, WORK, IWORK, IFAIL, INFO)
SSTEVX computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matric...
subroutine sopgtr(UPLO, N, AP, TAU, Q, LDQ, WORK, INFO)
SOPGTR
subroutine ssyevr_2stage(JOBZ, RANGE, UPLO, N, A, LDA, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, ISUPPZ, WORK, LWORK, IWORK, LIWORK, INFO)
SSYEVR_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for SY ma...
subroutine sstev(JOBZ, N, D, E, Z, LDZ, WORK, INFO)
SSTEV computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrice...
subroutine sopmtr(SIDE, UPLO, TRANS, M, N, AP, TAU, C, LDC, WORK, INFO)
SOPMTR
subroutine ssytrd(UPLO, N, A, LDA, D, E, TAU, WORK, LWORK, INFO)
SSYTRD
subroutine chkxer(SRNAMT, INFOT, NOUT, LERR, OK)
logical function lsamen(N, CA, CB)
LSAMEN
subroutine ssytrd_sy2sb(UPLO, N, KD, A, LDA, AB, LDAB, TAU, WORK, LWORK, INFO)
SSYTRD_SY2SB
subroutine sstein(N, D, E, M, W, IBLOCK, ISPLIT, Z, LDZ, WORK, IWORK, IFAIL, INFO)
SSTEIN
subroutine sspevx(JOBZ, RANGE, UPLO, N, AP, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, WORK, IWORK, IFAIL, INFO)
SSPEVX computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matric...
subroutine spteqr(COMPZ, N, D, E, Z, LDZ, WORK, INFO)
SPTEQR
subroutine ssyevx_2stage(JOBZ, RANGE, UPLO, N, A, LDA, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, WORK, LWORK, IWORK, IFAIL, INFO)
SSYEVX_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for SY ma...
subroutine ssyevd(JOBZ, UPLO, N, A, LDA, W, WORK, LWORK, IWORK, LIWORK, INFO)
SSYEVD computes the eigenvalues and, optionally, the left and/or right eigenvectors for SY matrices ...
subroutine ssbtrd(VECT, UPLO, N, KD, AB, LDAB, D, E, Q, LDQ, WORK, INFO)
SSBTRD
subroutine sstebz(RANGE, ORDER, N, VL, VU, IL, IU, ABSTOL, D, E, M, NSPLIT, W, IBLOCK, ISPLIT, WORK, IWORK, INFO)
SSTEBZ
subroutine ssytrd_2stage(VECT, UPLO, N, A, LDA, D, E, TAU, HOUS2, LHOUS2, WORK, LWORK, INFO)
SSYTRD_2STAGE
subroutine sstedc(COMPZ, N, D, E, Z, LDZ, WORK, LWORK, IWORK, LIWORK, INFO)
SSTEDC
subroutine ssbevx(JOBZ, RANGE, UPLO, N, KD, AB, LDAB, Q, LDQ, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, WORK, IWORK, IFAIL, INFO)
SSBEVX computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matric...
subroutine ssterf(N, D, E, INFO)
SSTERF
subroutine ssyev(JOBZ, UPLO, N, A, LDA, W, WORK, LWORK, INFO)
SSYEV computes the eigenvalues and, optionally, the left and/or right eigenvectors for SY matrices ...
subroutine sstevd(JOBZ, N, D, E, Z, LDZ, WORK, LWORK, IWORK, LIWORK, INFO)
SSTEVD computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matric...
subroutine sorgtr(UPLO, N, A, LDA, TAU, WORK, LWORK, INFO)
SORGTR
subroutine ssbevd_2stage(JOBZ, UPLO, N, KD, AB, LDAB, W, Z, LDZ, WORK, LWORK, IWORK, LIWORK, INFO)
SSBEVD_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER...
subroutine ssbevx_2stage(JOBZ, RANGE, UPLO, N, KD, AB, LDAB, Q, LDQ, VL, VU, IL, IU, ABSTOL, M, W, Z, LDZ, WORK, LWORK, IWORK, IFAIL, INFO)
SSBEVX_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER...
subroutine ssbev(JOBZ, UPLO, N, KD, AB, LDAB, W, Z, LDZ, WORK, INFO)
SSBEV computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrice...
subroutine ssbev_2stage(JOBZ, UPLO, N, KD, AB, LDAB, W, Z, LDZ, WORK, LWORK, INFO)
SSBEV_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER ...