76 parameter( nmax = 3, liw = 12*nmax, lw = 20*nmax )
80 INTEGER I, INFO, J, M, N, NSPLIT, NT
83 INTEGER I1( NMAX ), I2( NMAX ), I3( NMAX ), IW( LIW )
84 DOUBLE PRECISION A( NMAX, NMAX ), C( NMAX, NMAX ), D( NMAX ),
85 $ E( NMAX ), Q( NMAX, NMAX ), R( NMAX ),
86 $ TAU( NMAX ), W( LW ), X( NMAX ),
110 COMMON / infoc / infot, nout, ok, lerr
111 COMMON / srnamc / srnamt
119 WRITE( nout, fmt = * )
126 a( i, j ) = 1.d0 / dble( i+j )
141 IF( lsamen( 2, c2,
'ST' ) )
THEN
147 CALL dsytrd(
'/', 0, a, 1, d, e, tau, w, 1, info )
148 CALL chkxer(
'DSYTRD', infot, nout, lerr, ok )
150 CALL dsytrd(
'U', -1, a, 1, d, e, tau, w, 1, info )
151 CALL chkxer(
'DSYTRD', infot, nout, lerr, ok )
153 CALL dsytrd(
'U', 2, a, 1, d, e, tau, w, 1, info )
154 CALL chkxer(
'DSYTRD', infot, nout, lerr, ok )
156 CALL dsytrd(
'U', 0, a, 1, d, e, tau, w, 0, info )
157 CALL chkxer(
'DSYTRD', infot, nout, lerr, ok )
164 CALL dsytd2(
'/', 0, a, 1, d, e, tau, info )
165 CALL chkxer(
'DSYTD2', infot, nout, lerr, ok )
167 CALL dsytd2(
'U', -1, a, 1, d, e, tau, info )
168 CALL chkxer(
'DSYTD2', infot, nout, lerr, ok )
170 CALL dsytd2(
'U', 2, a, 1, d, e, tau, info )
171 CALL chkxer(
'DSYTD2', infot, nout, lerr, ok )
176 srnamt =
'DSYTRD_2STAGE'
180 CALL chkxer(
'DSYTRD_2STAGE', infot, nout, lerr, ok )
184 CALL chkxer(
'DSYTRD_2STAGE', infot, nout, lerr, ok )
188 CALL chkxer(
'DSYTRD_2STAGE', infot, nout, lerr, ok )
192 CALL chkxer(
'DSYTRD_2STAGE', infot, nout, lerr, ok )
196 CALL chkxer(
'DSYTRD_2STAGE', infot, nout, lerr, ok )
200 CALL chkxer(
'DSYTRD_2STAGE', infot, nout, lerr, ok )
204 CALL chkxer(
'DSYTRD_2STAGE', infot, nout, lerr, ok )
209 srnamt =
'DSYTRD_SY2SB'
211 CALL dsytrd_sy2sb(
'/', 0, 0, a, 1, c, 1, tau, w, 1, info )
212 CALL chkxer(
'DSYTRD_SY2SB', infot, nout, lerr, ok )
214 CALL dsytrd_sy2sb(
'U', -1, 0, a, 1, c, 1, tau, w, 1, info )
215 CALL chkxer(
'DSYTRD_SY2SB', infot, nout, lerr, ok )
217 CALL dsytrd_sy2sb(
'U', 0, -1, a, 1, c, 1, tau, w, 1, info )
218 CALL chkxer(
'DSYTRD_SY2SB', infot, nout, lerr, ok )
220 CALL dsytrd_sy2sb(
'U', 2, 0, a, 1, c, 1, tau, w, 1, info )
221 CALL chkxer(
'DSYTRD_SY2SB', infot, nout, lerr, ok )
223 CALL dsytrd_sy2sb(
'U', 0, 2, a, 1, c, 1, tau, w, 1, info )
224 CALL chkxer(
'DSYTRD_SY2SB', infot, nout, lerr, ok )
226 CALL dsytrd_sy2sb(
'U', 0, 0, a, 1, c, 1, tau, w, 0, info )
227 CALL chkxer(
'DSYTRD_SY2SB', infot, nout, lerr, ok )
232 srnamt =
'DSYTRD_SB2ST'
236 CALL chkxer(
'DSYTRD_SB2ST', infot, nout, lerr, ok )
240 CALL chkxer(
'DSYTRD_SB2ST', infot, nout, lerr, ok )
244 CALL chkxer(
'DSYTRD_SB2ST', infot, nout, lerr, ok )
248 CALL chkxer(
'DSYTRD_SB2ST', infot, nout, lerr, ok )
252 CALL chkxer(
'DSYTRD_SB2ST', infot, nout, lerr, ok )
256 CALL chkxer(
'DSYTRD_SB2ST', infot, nout, lerr, ok )
260 CALL chkxer(
'DSYTRD_SB2ST', infot, nout, lerr, ok )
264 CALL chkxer(
'DSYTRD_SB2ST', infot, nout, lerr, ok )
268 CALL chkxer(
'DSYTRD_SB2ST', infot, nout, lerr, ok )
275 CALL dorgtr(
'/', 0, a, 1, tau, w, 1, info )
276 CALL chkxer(
'DORGTR', infot, nout, lerr, ok )
278 CALL dorgtr(
'U', -1, a, 1, tau, w, 1, info )
279 CALL chkxer(
'DORGTR', infot, nout, lerr, ok )
281 CALL dorgtr(
'U', 2, a, 1, tau, w, 1, info )
282 CALL chkxer(
'DORGTR', infot, nout, lerr, ok )
284 CALL dorgtr(
'U', 3, a, 3, tau, w, 1, info )
285 CALL chkxer(
'DORGTR', infot, nout, lerr, ok )
292 CALL dormtr(
'/',
'U',
'N', 0, 0, a, 1, tau, c, 1, w, 1, info )
293 CALL chkxer(
'DORMTR', infot, nout, lerr, ok )
295 CALL dormtr(
'L',
'/',
'N', 0, 0, a, 1, tau, c, 1, w, 1, info )
296 CALL chkxer(
'DORMTR', infot, nout, lerr, ok )
298 CALL dormtr(
'L',
'U',
'/', 0, 0, a, 1, tau, c, 1, w, 1, info )
299 CALL chkxer(
'DORMTR', infot, nout, lerr, ok )
301 CALL dormtr(
'L',
'U',
'N', -1, 0, a, 1, tau, c, 1, w, 1,
303 CALL chkxer(
'DORMTR', infot, nout, lerr, ok )
305 CALL dormtr(
'L',
'U',
'N', 0, -1, a, 1, tau, c, 1, w, 1,
307 CALL chkxer(
'DORMTR', infot, nout, lerr, ok )
309 CALL dormtr(
'L',
'U',
'N', 2, 0, a, 1, tau, c, 2, w, 1, info )
310 CALL chkxer(
'DORMTR', infot, nout, lerr, ok )
312 CALL dormtr(
'R',
'U',
'N', 0, 2, a, 1, tau, c, 1, w, 1, info )
313 CALL chkxer(
'DORMTR', infot, nout, lerr, ok )
315 CALL dormtr(
'L',
'U',
'N', 2, 0, a, 2, tau, c, 1, w, 1, info )
316 CALL chkxer(
'DORMTR', infot, nout, lerr, ok )
318 CALL dormtr(
'L',
'U',
'N', 0, 2, a, 1, tau, c, 1, w, 1, info )
319 CALL chkxer(
'DORMTR', infot, nout, lerr, ok )
321 CALL dormtr(
'R',
'U',
'N', 2, 0, a, 1, tau, c, 2, w, 1, info )
322 CALL chkxer(
'DORMTR', infot, nout, lerr, ok )
329 CALL dsptrd(
'/', 0, a, d, e, tau, info )
330 CALL chkxer(
'DSPTRD', infot, nout, lerr, ok )
332 CALL dsptrd(
'U', -1, a, d, e, tau, info )
333 CALL chkxer(
'DSPTRD', infot, nout, lerr, ok )
340 CALL dopgtr(
'/', 0, a, tau, z, 1, w, info )
341 CALL chkxer(
'DOPGTR', infot, nout, lerr, ok )
343 CALL dopgtr(
'U', -1, a, tau, z, 1, w, info )
344 CALL chkxer(
'DOPGTR', infot, nout, lerr, ok )
346 CALL dopgtr(
'U', 2, a, tau, z, 1, w, info )
347 CALL chkxer(
'DOPGTR', infot, nout, lerr, ok )
354 CALL dopmtr(
'/',
'U',
'N', 0, 0, a, tau, c, 1, w, info )
355 CALL chkxer(
'DOPMTR', infot, nout, lerr, ok )
357 CALL dopmtr(
'L',
'/',
'N', 0, 0, a, tau, c, 1, w, info )
358 CALL chkxer(
'DOPMTR', infot, nout, lerr, ok )
360 CALL dopmtr(
'L',
'U',
'/', 0, 0, a, tau, c, 1, w, info )
361 CALL chkxer(
'DOPMTR', infot, nout, lerr, ok )
363 CALL dopmtr(
'L',
'U',
'N', -1, 0, a, tau, c, 1, w, info )
364 CALL chkxer(
'DOPMTR', infot, nout, lerr, ok )
366 CALL dopmtr(
'L',
'U',
'N', 0, -1, a, tau, c, 1, w, info )
367 CALL chkxer(
'DOPMTR', infot, nout, lerr, ok )
369 CALL dopmtr(
'L',
'U',
'N', 2, 0, a, tau, c, 1, w, info )
370 CALL chkxer(
'DOPMTR', infot, nout, lerr, ok )
377 CALL dpteqr(
'/', 0, d, e, z, 1, w, info )
378 CALL chkxer(
'DPTEQR', infot, nout, lerr, ok )
380 CALL dpteqr(
'N', -1, d, e, z, 1, w, info )
381 CALL chkxer(
'DPTEQR', infot, nout, lerr, ok )
383 CALL dpteqr(
'V', 2, d, e, z, 1, w, info )
384 CALL chkxer(
'DPTEQR', infot, nout, lerr, ok )
391 CALL dstebz(
'/',
'E', 0, 0.0d0, 1.0d0, 1, 0, 0.0d0, d, e, m,
392 $ nsplit, x, i1, i2, w, iw, info )
393 CALL chkxer(
'DSTEBZ', infot, nout, lerr, ok )
395 CALL dstebz(
'A',
'/', 0, 0.0d0, 0.0d0, 0, 0, 0.0d0, d, e, m,
396 $ nsplit, x, i1, i2, w, iw, info )
397 CALL chkxer(
'DSTEBZ', infot, nout, lerr, ok )
399 CALL dstebz(
'A',
'E', -1, 0.0d0, 0.0d0, 0, 0, 0.0d0, d, e, m,
400 $ nsplit, x, i1, i2, w, iw, info )
401 CALL chkxer(
'DSTEBZ', infot, nout, lerr, ok )
403 CALL dstebz(
'V',
'E', 0, 0.0d0, 0.0d0, 0, 0, 0.0d0, d, e, m,
404 $ nsplit, x, i1, i2, w, iw, info )
405 CALL chkxer(
'DSTEBZ', infot, nout, lerr, ok )
407 CALL dstebz(
'I',
'E', 0, 0.0d0, 0.0d0, 0, 0, 0.0d0, d, e, m,
408 $ nsplit, x, i1, i2, w, iw, info )
409 CALL chkxer(
'DSTEBZ', infot, nout, lerr, ok )
411 CALL dstebz(
'I',
'E', 1, 0.0d0, 0.0d0, 2, 1, 0.0d0, d, e, m,
412 $ nsplit, x, i1, i2, w, iw, info )
413 CALL chkxer(
'DSTEBZ', infot, nout, lerr, ok )
415 CALL dstebz(
'I',
'E', 1, 0.0d0, 0.0d0, 1, 0, 0.0d0, d, e, m,
416 $ nsplit, x, i1, i2, w, iw, info )
417 CALL chkxer(
'DSTEBZ', infot, nout, lerr, ok )
419 CALL dstebz(
'I',
'E', 1, 0.0d0, 0.0d0, 1, 2, 0.0d0, d, e, m,
420 $ nsplit, x, i1, i2, w, iw, info )
421 CALL chkxer(
'DSTEBZ', infot, nout, lerr, ok )
428 CALL dstein( -1, d, e, 0, x, i1, i2, z, 1, w, iw, i3, info )
429 CALL chkxer(
'DSTEIN', infot, nout, lerr, ok )
431 CALL dstein( 0, d, e, -1, x, i1, i2, z, 1, w, iw, i3, info )
432 CALL chkxer(
'DSTEIN', infot, nout, lerr, ok )
434 CALL dstein( 0, d, e, 1, x, i1, i2, z, 1, w, iw, i3, info )
435 CALL chkxer(
'DSTEIN', infot, nout, lerr, ok )
437 CALL dstein( 2, d, e, 0, x, i1, i2, z, 1, w, iw, i3, info )
438 CALL chkxer(
'DSTEIN', infot, nout, lerr, ok )
445 CALL dsteqr(
'/', 0, d, e, z, 1, w, info )
446 CALL chkxer(
'DSTEQR', infot, nout, lerr, ok )
448 CALL dsteqr(
'N', -1, d, e, z, 1, w, info )
449 CALL chkxer(
'DSTEQR', infot, nout, lerr, ok )
451 CALL dsteqr(
'V', 2, d, e, z, 1, w, info )
452 CALL chkxer(
'DSTEQR', infot, nout, lerr, ok )
459 CALL dsterf( -1, d, e, info )
460 CALL chkxer(
'DSTERF', infot, nout, lerr, ok )
467 CALL dstedc(
'/', 0, d, e, z, 1, w, 1, iw, 1, info )
468 CALL chkxer(
'DSTEDC', infot, nout, lerr, ok )
470 CALL dstedc(
'N', -1, d, e, z, 1, w, 1, iw, 1, info )
471 CALL chkxer(
'DSTEDC', infot, nout, lerr, ok )
473 CALL dstedc(
'V', 2, d, e, z, 1, w, 23, iw, 28, info )
474 CALL chkxer(
'DSTEDC', infot, nout, lerr, ok )
476 CALL dstedc(
'N', 1, d, e, z, 1, w, 0, iw, 1, info )
477 CALL chkxer(
'DSTEDC', infot, nout, lerr, ok )
479 CALL dstedc(
'I', 2, d, e, z, 2, w, 0, iw, 12, info )
480 CALL chkxer(
'DSTEDC', infot, nout, lerr, ok )
482 CALL dstedc(
'V', 2, d, e, z, 2, w, 0, iw, 28, info )
483 CALL chkxer(
'DSTEDC', infot, nout, lerr, ok )
485 CALL dstedc(
'N', 1, d, e, z, 1, w, 1, iw, 0, info )
486 CALL chkxer(
'DSTEDC', infot, nout, lerr, ok )
488 CALL dstedc(
'I', 2, d, e, z, 2, w, 19, iw, 0, info )
489 CALL chkxer(
'DSTEDC', infot, nout, lerr, ok )
491 CALL dstedc(
'V', 2, d, e, z, 2, w, 23, iw, 0, info )
492 CALL chkxer(
'DSTEDC', infot, nout, lerr, ok )
499 CALL dstevd(
'/', 0, d, e, z, 1, w, 1, iw, 1, info )
500 CALL chkxer(
'DSTEVD', infot, nout, lerr, ok )
502 CALL dstevd(
'N', -1, d, e, z, 1, w, 1, iw, 1, info )
503 CALL chkxer(
'DSTEVD', infot, nout, lerr, ok )
505 CALL dstevd(
'V', 2, d, e, z, 1, w, 19, iw, 12, info )
506 CALL chkxer(
'DSTEVD', infot, nout, lerr, ok )
508 CALL dstevd(
'N', 1, d, e, z, 1, w, 0, iw, 1, info )
509 CALL chkxer(
'DSTEVD', infot, nout, lerr, ok )
511 CALL dstevd(
'V', 2, d, e, z, 2, w, 12, iw, 12, info )
512 CALL chkxer(
'DSTEVD', infot, nout, lerr, ok )
514 CALL dstevd(
'N', 0, d, e, z, 1, w, 1, iw, 0, info )
515 CALL chkxer(
'DSTEVD', infot, nout, lerr, ok )
517 CALL dstevd(
'V', 2, d, e, z, 2, w, 19, iw, 11, info )
518 CALL chkxer(
'DSTEVD', infot, nout, lerr, ok )
525 CALL dstev(
'/', 0, d, e, z, 1, w, info )
526 CALL chkxer(
'DSTEV ', infot, nout, lerr, ok )
528 CALL dstev(
'N', -1, d, e, z, 1, w, info )
529 CALL chkxer(
'DSTEV ', infot, nout, lerr, ok )
531 CALL dstev(
'V', 2, d, e, z, 1, w, info )
532 CALL chkxer(
'DSTEV ', infot, nout, lerr, ok )
539 CALL dstevx(
'/',
'A', 0, d, e, 0.0d0, 0.0d0, 0, 0, 0.0d0, m,
540 $ x, z, 1, w, iw, i3, info )
541 CALL chkxer(
'DSTEVX', infot, nout, lerr, ok )
543 CALL dstevx(
'N',
'/', 0, d, e, 0.0d0, 1.0d0, 1, 0, 0.0d0, m,
544 $ x, z, 1, w, iw, i3, info )
545 CALL chkxer(
'DSTEVX', infot, nout, lerr, ok )
547 CALL dstevx(
'N',
'A', -1, d, e, 0.0d0, 0.0d0, 0, 0, 0.0d0, m,
548 $ x, z, 1, w, iw, i3, info )
549 CALL chkxer(
'DSTEVX', infot, nout, lerr, ok )
551 CALL dstevx(
'N',
'V', 1, d, e, 0.0d0, 0.0d0, 0, 0, 0.0d0, m,
552 $ x, z, 1, w, iw, i3, info )
553 CALL chkxer(
'DSTEVX', infot, nout, lerr, ok )
555 CALL dstevx(
'N',
'I', 1, d, e, 0.0d0, 0.0d0, 0, 0, 0.0d0, m,
556 $ x, z, 1, w, iw, i3, info )
557 CALL chkxer(
'DSTEVX', infot, nout, lerr, ok )
559 CALL dstevx(
'N',
'I', 1, d, e, 0.0d0, 0.0d0, 2, 1, 0.0d0, m,
560 $ x, z, 1, w, iw, i3, info )
561 CALL chkxer(
'DSTEVX', infot, nout, lerr, ok )
563 CALL dstevx(
'N',
'I', 2, d, e, 0.0d0, 0.0d0, 2, 1, 0.0d0, m,
564 $ x, z, 1, w, iw, i3, info )
565 CALL chkxer(
'DSTEVX', infot, nout, lerr, ok )
567 CALL dstevx(
'N',
'I', 1, d, e, 0.0d0, 0.0d0, 1, 2, 0.0d0, m,
568 $ x, z, 1, w, iw, i3, info )
569 CALL chkxer(
'DSTEVX', infot, nout, lerr, ok )
571 CALL dstevx(
'V',
'A', 2, d, e, 0.0d0, 0.0d0, 0, 0, 0.0d0, m,
572 $ x, z, 1, w, iw, i3, info )
573 CALL chkxer(
'DSTEVX', infot, nout, lerr, ok )
581 CALL dstevr(
'/',
'A', 0, d, e, 0.0d0, 0.0d0, 1, 1, 0.0d0, m,
582 $ r, z, 1, iw, x, 20*n, iw( 2*n+1 ), 10*n, info )
583 CALL chkxer(
'DSTEVR', infot, nout, lerr, ok )
585 CALL dstevr(
'V',
'/', 0, d, e, 0.0d0, 0.0d0, 1, 1, 0.0d0, m,
586 $ r, z, 1, iw, x, 20*n, iw( 2*n+1 ), 10*n, info )
587 CALL chkxer(
'DSTEVR', infot, nout, lerr, ok )
589 CALL dstevr(
'V',
'A', -1, d, e, 0.0d0, 0.0d0, 1, 1, 0.0d0, m,
590 $ r, z, 1, iw, x, 20*n, iw( 2*n+1 ), 10*n, info )
591 CALL chkxer(
'DSTEVR', infot, nout, lerr, ok )
593 CALL dstevr(
'V',
'V', 1, d, e, 0.0d0, 0.0d0, 1, 1, 0.0d0, m,
594 $ r, z, 1, iw, x, 20*n, iw( 2*n+1 ), 10*n, info )
595 CALL chkxer(
'DSTEVR', infot, nout, lerr, ok )
597 CALL dstevr(
'V',
'I', 1, d, e, 0.0d0, 0.0d0, 0, 1, 0.0d0, m,
598 $ w, z, 1, iw, x, 20*n, iw( 2*n+1 ), 10*n, info )
599 CALL chkxer(
'DSTEVR', infot, nout, lerr, ok )
602 CALL dstevr(
'V',
'I', 2, d, e, 0.0d0, 0.0d0, 2, 1, 0.0d0, m,
603 $ w, z, 1, iw, x, 20*n, iw( 2*n+1 ), 10*n, info )
604 CALL chkxer(
'DSTEVR', infot, nout, lerr, ok )
607 CALL dstevr(
'V',
'I', 1, d, e, 0.0d0, 0.0d0, 1, 1, 0.0d0, m,
608 $ w, z, 0, iw, x, 20*n, iw( 2*n+1 ), 10*n, info )
609 CALL chkxer(
'DSTEVR', infot, nout, lerr, ok )
611 CALL dstevr(
'V',
'I', 1, d, e, 0.0d0, 0.0d0, 1, 1, 0.0d0, m,
612 $ w, z, 1, iw, x, 20*n-1, iw( 2*n+1 ), 10*n, info )
613 CALL chkxer(
'DSTEVR', infot, nout, lerr, ok )
615 CALL dstevr(
'V',
'I', 1, d, e, 0.0d0, 0.0d0, 1, 1, 0.0d0, m,
616 $ w, z, 1, iw, x, 20*n, iw( 2*n+1 ), 10*n-1, info )
617 CALL chkxer(
'DSTEVR', infot, nout, lerr, ok )
624 CALL dsyevd(
'/',
'U', 0, a, 1, x, w, 1, iw, 1, info )
625 CALL chkxer(
'DSYEVD', infot, nout, lerr, ok )
627 CALL dsyevd(
'N',
'/', 0, a, 1, x, w, 1, iw, 1, info )
628 CALL chkxer(
'DSYEVD', infot, nout, lerr, ok )
630 CALL dsyevd(
'N',
'U', -1, a, 1, x, w, 1, iw, 1, info )
631 CALL chkxer(
'DSYEVD', infot, nout, lerr, ok )
633 CALL dsyevd(
'N',
'U', 2, a, 1, x, w, 3, iw, 1, info )
634 CALL chkxer(
'DSYEVD', infot, nout, lerr, ok )
636 CALL dsyevd(
'N',
'U', 1, a, 1, x, w, 0, iw, 1, info )
637 CALL chkxer(
'DSYEVD', infot, nout, lerr, ok )
639 CALL dsyevd(
'N',
'U', 2, a, 2, x, w, 4, iw, 1, info )
640 CALL chkxer(
'DSYEVD', infot, nout, lerr, ok )
642 CALL dsyevd(
'V',
'U', 2, a, 2, x, w, 20, iw, 12, info )
643 CALL chkxer(
'DSYEVD', infot, nout, lerr, ok )
645 CALL dsyevd(
'N',
'U', 1, a, 1, x, w, 1, iw, 0, info )
646 CALL chkxer(
'DSYEVD', infot, nout, lerr, ok )
648 CALL dsyevd(
'N',
'U', 2, a, 2, x, w, 5, iw, 0, info )
649 CALL chkxer(
'DSYEVD', infot, nout, lerr, ok )
651 CALL dsyevd(
'V',
'U', 2, a, 2, x, w, 27, iw, 11, info )
652 CALL chkxer(
'DSYEVD', infot, nout, lerr, ok )
657 srnamt =
'DSYEVD_2STAGE'
659 CALL dsyevd_2stage(
'/',
'U', 0, a, 1, x, w, 1, iw, 1, info )
660 CALL chkxer(
'DSYEVD_2STAGE', infot, nout, lerr, ok )
662 CALL dsyevd_2stage(
'V',
'U', 0, a, 1, x, w, 1, iw, 1, info )
663 CALL chkxer(
'DSYEVD_2STAGE', infot, nout, lerr, ok )
665 CALL dsyevd_2stage(
'N',
'/', 0, a, 1, x, w, 1, iw, 1, info )
666 CALL chkxer(
'DSYEVD_2STAGE', infot, nout, lerr, ok )
668 CALL dsyevd_2stage(
'N',
'U', -1, a, 1, x, w, 1, iw, 1, info )
669 CALL chkxer(
'DSYEVD_2STAGE', infot, nout, lerr, ok )
671 CALL dsyevd_2stage(
'N',
'U', 2, a, 1, x, w, 3, iw, 1, info )
672 CALL chkxer(
'DSYEVD_2STAGE', infot, nout, lerr, ok )
674 CALL dsyevd_2stage(
'N',
'U', 1, a, 1, x, w, 0, iw, 1, info )
675 CALL chkxer(
'DSYEVD_2STAGE', infot, nout, lerr, ok )
677 CALL dsyevd_2stage(
'N',
'U', 2, a, 2, x, w, 4, iw, 1, info )
678 CALL chkxer(
'DSYEVD_2STAGE', infot, nout, lerr, ok )
683 CALL dsyevd_2stage(
'N',
'U', 1, a, 1, x, w, 1, iw, 0, info )
684 CALL chkxer(
'DSYEVD_2STAGE', infot, nout, lerr, ok )
686 CALL dsyevd_2stage(
'N',
'U', 2, a, 2, x, w, 25, iw, 0, info )
687 CALL chkxer(
'DSYEVD_2STAGE', infot, nout, lerr, ok )
698 CALL dsyevr(
'/',
'A',
'U', 0, a, 1, 0.0d0, 0.0d0, 1, 1, 0.0d0,
699 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
700 CALL chkxer(
'DSYEVR', infot, nout, lerr, ok )
702 CALL dsyevr(
'V',
'/',
'U', 0, a, 1, 0.0d0, 0.0d0, 1, 1, 0.0d0,
703 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
704 CALL chkxer(
'DSYEVR', infot, nout, lerr, ok )
706 CALL dsyevr(
'V',
'A',
'/', -1, a, 1, 0.0d0, 0.0d0, 1, 1,
707 $ 0.0d0, m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n,
709 CALL chkxer(
'DSYEVR', infot, nout, lerr, ok )
711 CALL dsyevr(
'V',
'A',
'U', -1, a, 1, 0.0d0, 0.0d0, 1, 1,
712 $ 0.0d0, m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n,
714 CALL chkxer(
'DSYEVR', infot, nout, lerr, ok )
716 CALL dsyevr(
'V',
'A',
'U', 2, a, 1, 0.0d0, 0.0d0, 1, 1, 0.0d0,
717 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
718 CALL chkxer(
'DSYEVR', infot, nout, lerr, ok )
720 CALL dsyevr(
'V',
'V',
'U', 1, a, 1, 0.0d0, 0.0d0, 1, 1, 0.0d0,
721 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
722 CALL chkxer(
'DSYEVR', infot, nout, lerr, ok )
724 CALL dsyevr(
'V',
'I',
'U', 1, a, 1, 0.0d0, 0.0d0, 0, 1, 0.0d0,
725 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
726 CALL chkxer(
'DSYEVR', infot, nout, lerr, ok )
729 CALL dsyevr(
'V',
'I',
'U', 2, a, 2, 0.0d0, 0.0d0, 2, 1, 0.0d0,
730 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
731 CALL chkxer(
'DSYEVR', infot, nout, lerr, ok )
733 CALL dsyevr(
'V',
'I',
'U', 1, a, 1, 0.0d0, 0.0d0, 1, 1, 0.0d0,
734 $ m, r, z, 0, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
735 CALL chkxer(
'DSYEVR', infot, nout, lerr, ok )
737 CALL dsyevr(
'V',
'I',
'U', 1, a, 1, 0.0d0, 0.0d0, 1, 1, 0.0d0,
738 $ m, r, z, 1, iw, q, 26*n-1, iw( 2*n+1 ), 10*n,
740 CALL chkxer(
'DSYEVR', infot, nout, lerr, ok )
742 CALL dsyevr(
'V',
'I',
'U', 1, a, 1, 0.0d0, 0.0d0, 1, 1, 0.0d0,
743 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n-1,
745 CALL chkxer(
'DSYEVR', infot, nout, lerr, ok )
750 srnamt =
'DSYEVR_2STAGE'
754 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
755 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
756 CALL chkxer(
'DSYEVR_2STAGE', infot, nout, lerr, ok )
759 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
760 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
761 CALL chkxer(
'DSYEVR_2STAGE', infot, nout, lerr, ok )
764 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
765 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
766 CALL chkxer(
'DSYEVR_2STAGE', infot, nout, lerr, ok )
769 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
770 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
771 CALL chkxer(
'DSYEVR_2STAGE', infot, nout, lerr, ok )
774 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
775 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
776 CALL chkxer(
'DSYEVR_2STAGE', infot, nout, lerr, ok )
779 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
780 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
781 CALL chkxer(
'DSYEVR_2STAGE', infot, nout, lerr, ok )
784 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
785 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
786 CALL chkxer(
'DSYEVR_2STAGE', infot, nout, lerr, ok )
789 $ 0.0d0, 0.0d0, 0, 1, 0.0d0,
790 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
791 CALL chkxer(
'DSYEVR_2STAGE', infot, nout, lerr, ok )
794 $ 0.0d0, 0.0d0, 2, 1, 0.0d0,
795 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
796 CALL chkxer(
'DSYEVR_2STAGE', infot, nout, lerr, ok )
799 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
800 $ m, r, z, 0, iw, q, 26*n, iw( 2*n+1 ), 10*n, info )
801 CALL chkxer(
'DSYEVR_2STAGE', infot, nout, lerr, ok )
804 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
805 $ m, r, z, 1, iw, q, 0, iw( 2*n+1 ), 10*n,
807 CALL chkxer(
'DSYEVR_2STAGE', infot, nout, lerr, ok )
810 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
811 $ m, r, z, 1, iw, q, 26*n, iw( 2*n+1 ), 0,
813 CALL chkxer(
'DSYEVR_2STAGE', infot, nout, lerr, ok )
820 CALL dsyev(
'/',
'U', 0, a, 1, x, w, 1, info )
821 CALL chkxer(
'DSYEV ', infot, nout, lerr, ok )
823 CALL dsyev(
'N',
'/', 0, a, 1, x, w, 1, info )
824 CALL chkxer(
'DSYEV ', infot, nout, lerr, ok )
826 CALL dsyev(
'N',
'U', -1, a, 1, x, w, 1, info )
827 CALL chkxer(
'DSYEV ', infot, nout, lerr, ok )
829 CALL dsyev(
'N',
'U', 2, a, 1, x, w, 3, info )
830 CALL chkxer(
'DSYEV ', infot, nout, lerr, ok )
832 CALL dsyev(
'N',
'U', 1, a, 1, x, w, 1, info )
833 CALL chkxer(
'DSYEV ', infot, nout, lerr, ok )
838 srnamt =
'DSYEV_2STAGE '
841 CALL chkxer(
'DSYEV_2STAGE ', infot, nout, lerr, ok )
844 CALL chkxer(
'DSYEV_2STAGE ', infot, nout, lerr, ok )
847 CALL chkxer(
'DSYEV_2STAGE ', infot, nout, lerr, ok )
850 CALL chkxer(
'DSYEV_2STAGE ', infot, nout, lerr, ok )
853 CALL chkxer(
'DSYEV_2STAGE ', infot, nout, lerr, ok )
856 CALL chkxer(
'DSYEV_2STAGE ', infot, nout, lerr, ok )
863 CALL dsyevx(
'/',
'A',
'U', 0, a, 1, 0.0d0, 0.0d0, 0, 0, 0.0d0,
864 $ m, x, z, 1, w, 1, iw, i3, info )
865 CALL chkxer(
'DSYEVX', infot, nout, lerr, ok )
867 CALL dsyevx(
'N',
'/',
'U', 0, a, 1, 0.0d0, 1.0d0, 1, 0, 0.0d0,
868 $ m, x, z, 1, w, 1, iw, i3, info )
869 CALL chkxer(
'DSYEVX', infot, nout, lerr, ok )
871 CALL dsyevx(
'N',
'A',
'/', 0, a, 1, 0.0d0, 0.0d0, 0, 0, 0.0d0,
872 $ m, x, z, 1, w, 1, iw, i3, info )
874 CALL dsyevx(
'N',
'A',
'U', -1, a, 1, 0.0d0, 0.0d0, 0, 0,
875 $ 0.0d0, m, x, z, 1, w, 1, iw, i3, info )
876 CALL chkxer(
'DSYEVX', infot, nout, lerr, ok )
878 CALL dsyevx(
'N',
'A',
'U', 2, a, 1, 0.0d0, 0.0d0, 0, 0, 0.0d0,
879 $ m, x, z, 1, w, 16, iw, i3, info )
880 CALL chkxer(
'DSYEVX', infot, nout, lerr, ok )
882 CALL dsyevx(
'N',
'V',
'U', 1, a, 1, 0.0d0, 0.0d0, 0, 0, 0.0d0,
883 $ m, x, z, 1, w, 8, iw, i3, info )
884 CALL chkxer(
'DSYEVX', infot, nout, lerr, ok )
886 CALL dsyevx(
'N',
'I',
'U', 1, a, 1, 0.0d0, 0.0d0, 0, 0, 0.0d0,
887 $ m, x, z, 1, w, 8, iw, i3, info )
888 CALL chkxer(
'DSYEVX', infot, nout, lerr, ok )
890 CALL dsyevx(
'N',
'I',
'U', 1, a, 1, 0.0d0, 0.0d0, 2, 1, 0.0d0,
891 $ m, x, z, 1, w, 8, iw, i3, info )
892 CALL chkxer(
'DSYEVX', infot, nout, lerr, ok )
894 CALL dsyevx(
'N',
'I',
'U', 2, a, 2, 0.0d0, 0.0d0, 2, 1, 0.0d0,
895 $ m, x, z, 1, w, 16, iw, i3, info )
896 CALL chkxer(
'DSYEVX', infot, nout, lerr, ok )
898 CALL dsyevx(
'N',
'I',
'U', 1, a, 1, 0.0d0, 0.0d0, 1, 2, 0.0d0,
899 $ m, x, z, 1, w, 8, iw, i3, info )
900 CALL chkxer(
'DSYEVX', infot, nout, lerr, ok )
902 CALL dsyevx(
'V',
'A',
'U', 2, a, 2, 0.0d0, 0.0d0, 0, 0, 0.0d0,
903 $ m, x, z, 1, w, 16, iw, i3, info )
904 CALL chkxer(
'DSYEVX', infot, nout, lerr, ok )
906 CALL dsyevx(
'V',
'A',
'U', 1, a, 1, 0.0d0, 0.0d0, 0, 0, 0.0d0,
907 $ m, x, z, 1, w, 0, iw, i3, info )
908 CALL chkxer(
'DSYEVX', infot, nout, lerr, ok )
913 srnamt =
'DSYEVX_2STAGE'
916 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
917 $ m, x, z, 1, w, 1, iw, i3, info )
918 CALL chkxer(
'DSYEVX_2STAGE', infot, nout, lerr, ok )
921 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
922 $ m, x, z, 1, w, 1, iw, i3, info )
923 CALL chkxer(
'DSYEVX_2STAGE', infot, nout, lerr, ok )
926 $ 0.0d0, 1.0d0, 1, 0, 0.0d0,
927 $ m, x, z, 1, w, 1, iw, i3, info )
928 CALL chkxer(
'DSYEVX_2STAGE', infot, nout, lerr, ok )
931 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
932 $ m, x, z, 1, w, 1, iw, i3, info )
935 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
936 $ m, x, z, 1, w, 1, iw, i3, info )
937 CALL chkxer(
'DSYEVX_2STAGE', infot, nout, lerr, ok )
940 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
941 $ m, x, z, 1, w, 16, iw, i3, info )
942 CALL chkxer(
'DSYEVX_2STAGE', infot, nout, lerr, ok )
945 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
946 $ m, x, z, 1, w, 8, iw, i3, info )
947 CALL chkxer(
'DSYEVX_2STAGE', infot, nout, lerr, ok )
950 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
951 $ m, x, z, 1, w, 8, iw, i3, info )
952 CALL chkxer(
'DSYEVX_2STAGE', infot, nout, lerr, ok )
955 $ 0.0d0, 0.0d0, 2, 1, 0.0d0,
956 $ m, x, z, 1, w, 8, iw, i3, info )
957 CALL chkxer(
'DSYEVX_2STAGE', infot, nout, lerr, ok )
960 $ 0.0d0, 0.0d0, 2, 1, 0.0d0,
961 $ m, x, z, 1, w, 16, iw, i3, info )
962 CALL chkxer(
'DSYEVX_2STAGE', infot, nout, lerr, ok )
965 $ 0.0d0, 0.0d0, 1, 2, 0.0d0,
966 $ m, x, z, 1, w, 8, iw, i3, info )
967 CALL chkxer(
'DSYEVX_2STAGE', infot, nout, lerr, ok )
970 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
971 $ m, x, z, 0, w, 16, iw, i3, info )
972 CALL chkxer(
'DSYEVX_2STAGE', infot, nout, lerr, ok )
975 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
976 $ m, x, z, 1, w, 0, iw, i3, info )
977 CALL chkxer(
'DSYEVX_2STAGE', infot, nout, lerr, ok )
984 CALL dspevd(
'/',
'U', 0, a, x, z, 1, w, 1, iw, 1, info )
985 CALL chkxer(
'DSPEVD', infot, nout, lerr, ok )
987 CALL dspevd(
'N',
'/', 0, a, x, z, 1, w, 1, iw, 1, info )
988 CALL chkxer(
'DSPEVD', infot, nout, lerr, ok )
990 CALL dspevd(
'N',
'U', -1, a, x, z, 1, w, 1, iw, 1, info )
991 CALL chkxer(
'DSPEVD', infot, nout, lerr, ok )
993 CALL dspevd(
'V',
'U', 2, a, x, z, 1, w, 23, iw, 12, info )
994 CALL chkxer(
'DSPEVD', infot, nout, lerr, ok )
996 CALL dspevd(
'N',
'U', 1, a, x, z, 1, w, 0, iw, 1, info )
997 CALL chkxer(
'DSPEVD', infot, nout, lerr, ok )
999 CALL dspevd(
'N',
'U', 2, a, x, z, 1, w, 3, iw, 1, info )
1000 CALL chkxer(
'DSPEVD', infot, nout, lerr, ok )
1002 CALL dspevd(
'V',
'U', 2, a, x, z, 2, w, 16, iw, 12, info )
1003 CALL chkxer(
'DSPEVD', infot, nout, lerr, ok )
1005 CALL dspevd(
'N',
'U', 1, a, x, z, 1, w, 1, iw, 0, info )
1006 CALL chkxer(
'DSPEVD', infot, nout, lerr, ok )
1008 CALL dspevd(
'N',
'U', 2, a, x, z, 1, w, 4, iw, 0, info )
1009 CALL chkxer(
'DSPEVD', infot, nout, lerr, ok )
1011 CALL dspevd(
'V',
'U', 2, a, x, z, 2, w, 23, iw, 11, info )
1012 CALL chkxer(
'DSPEVD', infot, nout, lerr, ok )
1019 CALL dspev(
'/',
'U', 0, a, w, z, 1, x, info )
1020 CALL chkxer(
'DSPEV ', infot, nout, lerr, ok )
1022 CALL dspev(
'N',
'/', 0, a, w, z, 1, x, info )
1023 CALL chkxer(
'DSPEV ', infot, nout, lerr, ok )
1025 CALL dspev(
'N',
'U', -1, a, w, z, 1, x, info )
1026 CALL chkxer(
'DSPEV ', infot, nout, lerr, ok )
1028 CALL dspev(
'V',
'U', 2, a, w, z, 1, x, info )
1029 CALL chkxer(
'DSPEV ', infot, nout, lerr, ok )
1036 CALL dspevx(
'/',
'A',
'U', 0, a, 0.0d0, 0.0d0, 0, 0, 0.0d0, m,
1037 $ x, z, 1, w, iw, i3, info )
1038 CALL chkxer(
'DSPEVX', infot, nout, lerr, ok )
1040 CALL dspevx(
'N',
'/',
'U', 0, a, 0.0d0, 0.0d0, 0, 0, 0.0d0, m,
1041 $ x, z, 1, w, iw, i3, info )
1042 CALL chkxer(
'DSPEVX', infot, nout, lerr, ok )
1044 CALL dspevx(
'N',
'A',
'/', 0, a, 0.0d0, 0.0d0, 0, 0, 0.0d0, m,
1045 $ x, z, 1, w, iw, i3, info )
1047 CALL dspevx(
'N',
'A',
'U', -1, a, 0.0d0, 0.0d0, 0, 0, 0.0d0,
1048 $ m, x, z, 1, w, iw, i3, info )
1049 CALL chkxer(
'DSPEVX', infot, nout, lerr, ok )
1051 CALL dspevx(
'N',
'V',
'U', 1, a, 0.0d0, 0.0d0, 0, 0, 0.0d0, m,
1052 $ x, z, 1, w, iw, i3, info )
1053 CALL chkxer(
'DSPEVX', infot, nout, lerr, ok )
1055 CALL dspevx(
'N',
'I',
'U', 1, a, 0.0d0, 0.0d0, 0, 0, 0.0d0, m,
1056 $ x, z, 1, w, iw, i3, info )
1057 CALL chkxer(
'DSPEVX', infot, nout, lerr, ok )
1059 CALL dspevx(
'N',
'I',
'U', 1, a, 0.0d0, 0.0d0, 2, 1, 0.0d0, m,
1060 $ x, z, 1, w, iw, i3, info )
1061 CALL chkxer(
'DSPEVX', infot, nout, lerr, ok )
1063 CALL dspevx(
'N',
'I',
'U', 2, a, 0.0d0, 0.0d0, 2, 1, 0.0d0, m,
1064 $ x, z, 1, w, iw, i3, info )
1065 CALL chkxer(
'DSPEVX', infot, nout, lerr, ok )
1067 CALL dspevx(
'N',
'I',
'U', 1, a, 0.0d0, 0.0d0, 1, 2, 0.0d0, m,
1068 $ x, z, 1, w, iw, i3, info )
1069 CALL chkxer(
'DSPEVX', infot, nout, lerr, ok )
1071 CALL dspevx(
'V',
'A',
'U', 2, a, 0.0d0, 0.0d0, 0, 0, 0.0d0, m,
1072 $ x, z, 1, w, iw, i3, info )
1073 CALL chkxer(
'DSPEVX', infot, nout, lerr, ok )
1078 ELSE IF( lsamen( 2, c2,
'SB' ) )
THEN
1084 CALL dsbtrd(
'/',
'U', 0, 0, a, 1, d, e, z, 1, w, info )
1085 CALL chkxer(
'DSBTRD', infot, nout, lerr, ok )
1087 CALL dsbtrd(
'N',
'/', 0, 0, a, 1, d, e, z, 1, w, info )
1088 CALL chkxer(
'DSBTRD', infot, nout, lerr, ok )
1090 CALL dsbtrd(
'N',
'U', -1, 0, a, 1, d, e, z, 1, w, info )
1091 CALL chkxer(
'DSBTRD', infot, nout, lerr, ok )
1093 CALL dsbtrd(
'N',
'U', 0, -1, a, 1, d, e, z, 1, w, info )
1094 CALL chkxer(
'DSBTRD', infot, nout, lerr, ok )
1096 CALL dsbtrd(
'N',
'U', 1, 1, a, 1, d, e, z, 1, w, info )
1097 CALL chkxer(
'DSBTRD', infot, nout, lerr, ok )
1099 CALL dsbtrd(
'V',
'U', 2, 0, a, 1, d, e, z, 1, w, info )
1100 CALL chkxer(
'DSBTRD', infot, nout, lerr, ok )
1105 srnamt =
'DSYTRD_SB2ST'
1108 $ c, 1, w, 1, info )
1109 CALL chkxer(
'DSYTRD_SB2ST', infot, nout, lerr, ok )
1112 $ c, 1, w, 1, info )
1113 CALL chkxer(
'DSYTRD_SB2ST', infot, nout, lerr, ok )
1116 $ c, 1, w, 1, info )
1117 CALL chkxer(
'DSYTRD_SB2ST', infot, nout, lerr, ok )
1120 $ c, 1, w, 1, info )
1121 CALL chkxer(
'DSYTRD_SB2ST', infot, nout, lerr, ok )
1124 $ c, 1, w, 1, info )
1125 CALL chkxer(
'DSYTRD_SB2ST', infot, nout, lerr, ok )
1128 $ c, 1, w, 1, info )
1129 CALL chkxer(
'DSYTRD_SB2ST', infot, nout, lerr, ok )
1132 $ c, 1, w, 1, info )
1133 CALL chkxer(
'DSYTRD_SB2ST', infot, nout, lerr, ok )
1136 $ c, 0, w, 1, info )
1137 CALL chkxer(
'DSYTRD_SB2ST', infot, nout, lerr, ok )
1140 $ c, 1, w, 0, info )
1141 CALL chkxer(
'DSYTRD_SB2ST', infot, nout, lerr, ok )
1148 CALL dsbevd(
'/',
'U', 0, 0, a, 1, x, z, 1, w, 1, iw, 1, info )
1149 CALL chkxer(
'DSBEVD', infot, nout, lerr, ok )
1151 CALL dsbevd(
'N',
'/', 0, 0, a, 1, x, z, 1, w, 1, iw, 1, info )
1152 CALL chkxer(
'DSBEVD', infot, nout, lerr, ok )
1154 CALL dsbevd(
'N',
'U', -1, 0, a, 1, x, z, 1, w, 1, iw, 1,
1156 CALL chkxer(
'DSBEVD', infot, nout, lerr, ok )
1158 CALL dsbevd(
'N',
'U', 0, -1, a, 1, x, z, 1, w, 1, iw, 1,
1160 CALL chkxer(
'DSBEVD', infot, nout, lerr, ok )
1162 CALL dsbevd(
'N',
'U', 2, 1, a, 1, x, z, 1, w, 4, iw, 1, info )
1163 CALL chkxer(
'DSBEVD', infot, nout, lerr, ok )
1165 CALL dsbevd(
'V',
'U', 2, 1, a, 2, x, z, 1, w, 25, iw, 12,
1167 CALL chkxer(
'DSBEVD', infot, nout, lerr, ok )
1169 CALL dsbevd(
'N',
'U', 1, 0, a, 1, x, z, 1, w, 0, iw, 1, info )
1170 CALL chkxer(
'DSBEVD', infot, nout, lerr, ok )
1172 CALL dsbevd(
'N',
'U', 2, 0, a, 1, x, z, 1, w, 3, iw, 1, info )
1173 CALL chkxer(
'DSBEVD', infot, nout, lerr, ok )
1175 CALL dsbevd(
'V',
'U', 2, 0, a, 1, x, z, 2, w, 18, iw, 12,
1177 CALL chkxer(
'DSBEVD', infot, nout, lerr, ok )
1179 CALL dsbevd(
'N',
'U', 1, 0, a, 1, x, z, 1, w, 1, iw, 0, info )
1180 CALL chkxer(
'DSBEVD', infot, nout, lerr, ok )
1182 CALL dsbevd(
'V',
'U', 2, 0, a, 1, x, z, 2, w, 25, iw, 11,
1184 CALL chkxer(
'DSBEVD', infot, nout, lerr, ok )
1189 srnamt =
'DSBEVD_2STAGE'
1191 CALL dsbevd_2stage(
'/',
'U', 0, 0, a, 1, x, z, 1, w,
1193 CALL chkxer(
'DSBEVD_2STAGE', infot, nout, lerr, ok )
1195 CALL dsbevd_2stage(
'V',
'U', 0, 0, a, 1, x, z, 1, w,
1197 CALL chkxer(
'DSBEVD_2STAGE', infot, nout, lerr, ok )
1199 CALL dsbevd_2stage(
'N',
'/', 0, 0, a, 1, x, z, 1, w,
1201 CALL chkxer(
'DSBEVD_2STAGE', infot, nout, lerr, ok )
1203 CALL dsbevd_2stage(
'N',
'U', -1, 0, a, 1, x, z, 1, w,
1205 CALL chkxer(
'DSBEVD_2STAGE', infot, nout, lerr, ok )
1207 CALL dsbevd_2stage(
'N',
'U', 0, -1, a, 1, x, z, 1, w,
1209 CALL chkxer(
'DSBEVD_2STAGE', infot, nout, lerr, ok )
1211 CALL dsbevd_2stage(
'N',
'U', 2, 1, a, 1, x, z, 1, w,
1213 CALL chkxer(
'DSBEVD_2STAGE', infot, nout, lerr, ok )
1219 CALL dsbevd_2stage(
'N',
'U', 1, 0, a, 1, x, z, 1, w,
1221 CALL chkxer(
'DSBEVD_2STAGE', infot, nout, lerr, ok )
1223 CALL dsbevd_2stage(
'N',
'U', 2, 0, a, 1, x, z, 1, w,
1225 CALL chkxer(
'DSBEVD_2STAGE', infot, nout, lerr, ok )
1231 CALL dsbevd_2stage(
'N',
'U', 1, 0, a, 1, x, z, 1, w,
1233 CALL chkxer(
'DSBEVD_2STAGE', infot, nout, lerr, ok )
1245 CALL dsbev(
'/',
'U', 0, 0, a, 1, x, z, 1, w, info )
1246 CALL chkxer(
'DSBEV ', infot, nout, lerr, ok )
1248 CALL dsbev(
'N',
'/', 0, 0, a, 1, x, z, 1, w, info )
1249 CALL chkxer(
'DSBEV ', infot, nout, lerr, ok )
1251 CALL dsbev(
'N',
'U', -1, 0, a, 1, x, z, 1, w, info )
1252 CALL chkxer(
'DSBEV ', infot, nout, lerr, ok )
1254 CALL dsbev(
'N',
'U', 0, -1, a, 1, x, z, 1, w, info )
1255 CALL chkxer(
'DSBEV ', infot, nout, lerr, ok )
1257 CALL dsbev(
'N',
'U', 2, 1, a, 1, x, z, 1, w, info )
1258 CALL chkxer(
'DSBEV ', infot, nout, lerr, ok )
1260 CALL dsbev(
'V',
'U', 2, 0, a, 1, x, z, 1, w, info )
1261 CALL chkxer(
'DSBEV ', infot, nout, lerr, ok )
1266 srnamt =
'DSBEV_2STAGE '
1268 CALL dsbev_2stage(
'/',
'U', 0, 0, a, 1, x, z, 1, w, 0, info )
1269 CALL chkxer(
'DSBEV_2STAGE ', infot, nout, lerr, ok )
1271 CALL dsbev_2stage(
'V',
'U', 0, 0, a, 1, x, z, 1, w, 0, info )
1272 CALL chkxer(
'DSBEV_2STAGE ', infot, nout, lerr, ok )
1274 CALL dsbev_2stage(
'N',
'/', 0, 0, a, 1, x, z, 1, w, 0, info )
1275 CALL chkxer(
'DSBEV_2STAGE ', infot, nout, lerr, ok )
1277 CALL dsbev_2stage(
'N',
'U', -1, 0, a, 1, x, z, 1, w, 0, info )
1278 CALL chkxer(
'DSBEV_2STAGE ', infot, nout, lerr, ok )
1280 CALL dsbev_2stage(
'N',
'U', 0, -1, a, 1, x, z, 1, w, 0, info )
1281 CALL chkxer(
'DSBEV_2STAGE ', infot, nout, lerr, ok )
1283 CALL dsbev_2stage(
'N',
'U', 2, 1, a, 1, x, z, 1, w, 0, info )
1284 CALL chkxer(
'DSBEV_2STAGE ', infot, nout, lerr, ok )
1286 CALL dsbev_2stage(
'N',
'U', 2, 0, a, 1, x, z, 0, w, 0, info )
1287 CALL chkxer(
'DSBEV_2STAGE ', infot, nout, lerr, ok )
1289 CALL dsbev_2stage(
'N',
'U', 0, 0, a, 1, x, z, 1, w, 0, info )
1290 CALL chkxer(
'DSBEV_2STAGE ', infot, nout, lerr, ok )
1297 CALL dsbevx(
'/',
'A',
'U', 0, 0, a, 1, q, 1, 0.0d0, 0.0d0, 0,
1298 $ 0, 0.0d0, m, x, z, 1, w, iw, i3, info )
1299 CALL chkxer(
'DSBEVX', infot, nout, lerr, ok )
1301 CALL dsbevx(
'N',
'/',
'U', 0, 0, a, 1, q, 1, 0.0d0, 0.0d0, 0,
1302 $ 0, 0.0d0, m, x, z, 1, w, iw, i3, info )
1303 CALL chkxer(
'DSBEVX', infot, nout, lerr, ok )
1305 CALL dsbevx(
'N',
'A',
'/', 0, 0, a, 1, q, 1, 0.0d0, 0.0d0, 0,
1306 $ 0, 0.0d0, m, x, z, 1, w, iw, i3, info )
1307 CALL chkxer(
'DSBEVX', infot, nout, lerr, ok )
1309 CALL dsbevx(
'N',
'A',
'U', -1, 0, a, 1, q, 1, 0.0d0, 0.0d0, 0,
1310 $ 0, 0.0d0, m, x, z, 1, w, iw, i3, info )
1311 CALL chkxer(
'DSBEVX', infot, nout, lerr, ok )
1313 CALL dsbevx(
'N',
'A',
'U', 0, -1, a, 1, q, 1, 0.0d0, 0.0d0, 0,
1314 $ 0, 0.0d0, m, x, z, 1, w, iw, i3, info )
1315 CALL chkxer(
'DSBEVX', infot, nout, lerr, ok )
1317 CALL dsbevx(
'N',
'A',
'U', 2, 1, a, 1, q, 1, 0.0d0, 0.0d0, 0,
1318 $ 0, 0.0d0, m, x, z, 1, w, iw, i3, info )
1319 CALL chkxer(
'DSBEVX', infot, nout, lerr, ok )
1321 CALL dsbevx(
'V',
'A',
'U', 2, 0, a, 1, q, 1, 0.0d0, 0.0d0, 0,
1322 $ 0, 0.0d0, m, x, z, 2, w, iw, i3, info )
1323 CALL chkxer(
'DSBEVX', infot, nout, lerr, ok )
1325 CALL dsbevx(
'N',
'V',
'U', 1, 0, a, 1, q, 1, 0.0d0, 0.0d0, 0,
1326 $ 0, 0.0d0, m, x, z, 1, w, iw, i3, info )
1327 CALL chkxer(
'DSBEVX', infot, nout, lerr, ok )
1329 CALL dsbevx(
'N',
'I',
'U', 1, 0, a, 1, q, 1, 0.0d0, 0.0d0, 0,
1330 $ 0, 0.0d0, m, x, z, 1, w, iw, i3, info )
1331 CALL chkxer(
'DSBEVX', infot, nout, lerr, ok )
1333 CALL dsbevx(
'N',
'I',
'U', 1, 0, a, 1, q, 1, 0.0d0, 0.0d0, 2,
1334 $ 1, 0.0d0, m, x, z, 1, w, iw, i3, info )
1335 CALL chkxer(
'DSBEVX', infot, nout, lerr, ok )
1337 CALL dsbevx(
'N',
'I',
'U', 2, 0, a, 1, q, 1, 0.0d0, 0.0d0, 2,
1338 $ 1, 0.0d0, m, x, z, 1, w, iw, i3, info )
1339 CALL chkxer(
'DSBEVX', infot, nout, lerr, ok )
1341 CALL dsbevx(
'N',
'I',
'U', 1, 0, a, 1, q, 1, 0.0d0, 0.0d0, 1,
1342 $ 2, 0.0d0, m, x, z, 1, w, iw, i3, info )
1343 CALL chkxer(
'DSBEVX', infot, nout, lerr, ok )
1345 CALL dsbevx(
'V',
'A',
'U', 2, 0, a, 1, q, 2, 0.0d0, 0.0d0, 0,
1346 $ 0, 0.0d0, m, x, z, 1, w, iw, i3, info )
1347 CALL chkxer(
'DSBEVX', infot, nout, lerr, ok )
1352 srnamt =
'DSBEVX_2STAGE'
1354 CALL dsbevx_2stage(
'/',
'A',
'U', 0, 0, a, 1, q, 1, 0.0d0,
1355 $ 0.0d0, 0, 0, 0.0d0, m, x, z, 1, w, 0, iw, i3, info )
1356 CALL chkxer(
'DSBEVX_2STAGE', infot, nout, lerr, ok )
1358 CALL dsbevx_2stage(
'V',
'A',
'U', 0, 0, a, 1, q, 1, 0.0d0,
1359 $ 0.0d0, 0, 0, 0.0d0, m, x, z, 1, w, 0, iw, i3, info )
1360 CALL chkxer(
'DSBEVX_2STAGE', infot, nout, lerr, ok )
1362 CALL dsbevx_2stage(
'N',
'/',
'U', 0, 0, a, 1, q, 1, 0.0d0,
1363 $ 0.0d0, 0, 0, 0.0d0, m, x, z, 1, w, 0, iw, i3, info )
1364 CALL chkxer(
'DSBEVX_2STAGE', infot, nout, lerr, ok )
1366 CALL dsbevx_2stage(
'N',
'A',
'/', 0, 0, a, 1, q, 1, 0.0d0,
1367 $ 0.0d0, 0, 0, 0.0d0, m, x, z, 1, w, 0, iw, i3, info )
1368 CALL chkxer(
'DSBEVX_2STAGE', infot, nout, lerr, ok )
1370 CALL dsbevx_2stage(
'N',
'A',
'U', -1, 0, a, 1, q, 1, 0.0d0,
1371 $ 0.0d0, 0, 0, 0.0d0, m, x, z, 1, w, 0, iw, i3, info )
1372 CALL chkxer(
'DSBEVX_2STAGE', infot, nout, lerr, ok )
1374 CALL dsbevx_2stage(
'N',
'A',
'U', 0, -1, a, 1, q, 1, 0.0d0,
1375 $ 0.0d0, 0, 0, 0.0d0, m, x, z, 1, w, 0, iw, i3, info )
1376 CALL chkxer(
'DSBEVX_2STAGE', infot, nout, lerr, ok )
1378 CALL dsbevx_2stage(
'N',
'A',
'U', 2, 1, a, 1, q, 1, 0.0d0,
1379 $ 0.0d0, 0, 0, 0.0d0, m, x, z, 1, w, 0, iw, i3, info )
1380 CALL chkxer(
'DSBEVX_2STAGE', infot, nout, lerr, ok )
1386 CALL dsbevx_2stage(
'N',
'V',
'U', 1, 0, a, 1, q, 1, 0.0d0,
1387 $ 0.0d0, 0, 0, 0.0d0, m, x, z, 1, w, 0, iw, i3, info )
1388 CALL chkxer(
'DSBEVX_2STAGE', infot, nout, lerr, ok )
1390 CALL dsbevx_2stage(
'N',
'I',
'U', 1, 0, a, 1, q, 1, 0.0d0,
1391 $ 0.0d0, 0, 0, 0.0d0, m, x, z, 1, w, 0, iw, i3, info )
1392 CALL chkxer(
'DSBEVX_2STAGE', infot, nout, lerr, ok )
1394 CALL dsbevx_2stage(
'N',
'I',
'U', 1, 0, a, 1, q, 1, 0.0d0,
1395 $ 0.0d0, 2, 1, 0.0d0, m, x, z, 1, w, 0, iw, i3, info )
1396 CALL chkxer(
'DSBEVX_2STAGE', infot, nout, lerr, ok )
1398 CALL dsbevx_2stage(
'N',
'I',
'U', 2, 0, a, 1, q, 1, 0.0d0,
1399 $ 0.0d0, 2, 1, 0.0d0, m, x, z, 1, w, 0, iw, i3, info )
1400 CALL chkxer(
'DSBEVX_2STAGE', infot, nout, lerr, ok )
1402 CALL dsbevx_2stage(
'N',
'I',
'U', 1, 0, a, 1, q, 1, 0.0d0,
1403 $ 0.0d0, 1, 2, 0.0d0, m, x, z, 1, w, 0, iw, i3, info )
1404 CALL chkxer(
'DSBEVX_2STAGE', infot, nout, lerr, ok )
1410 CALL dsbevx_2stage(
'N',
'A',
'U', 0, 0, a, 1, q, 1, 0.0d0,
1411 $ 0.0d0, 0, 0, 0.0d0, m, x, z, 1, w, 0, iw, i3, info )
1412 CALL chkxer(
'DSBEVX_2STAGE', infot, nout, lerr, ok )
1420 WRITE( nout, fmt = 9999 )path, nt
1422 WRITE( nout, fmt = 9998 )path
1425 9999
FORMAT( 1x, a3,
' routines passed the tests of the error exits',
1426 $
' (', i3,
' tests done)' )
1427 9998
FORMAT(
' *** ', a3,
' routines failed the tests of the error ',
subroutine chkxer(srnamt, infot, nout, lerr, ok)
subroutine derrst(path, nunit)
DERRST
subroutine dsbev_2stage(jobz, uplo, n, kd, ab, ldab, w, z, ldz, work, lwork, info)
DSBEV_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER m...
subroutine dsbev(jobz, uplo, n, kd, ab, ldab, w, z, ldz, work, info)
DSBEV computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrices
subroutine dsbevd_2stage(jobz, uplo, n, kd, ab, ldab, w, z, ldz, work, lwork, iwork, liwork, info)
DSBEVD_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER ...
subroutine dsbevd(jobz, uplo, n, kd, ab, ldab, w, z, ldz, work, lwork, iwork, liwork, info)
DSBEVD computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrice...
subroutine dsbevx_2stage(jobz, range, uplo, n, kd, ab, ldab, q, ldq, vl, vu, il, iu, abstol, m, w, z, ldz, work, lwork, iwork, ifail, info)
DSBEVX_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER ...
subroutine dsbevx(jobz, range, uplo, n, kd, ab, ldab, q, ldq, vl, vu, il, iu, abstol, m, w, z, ldz, work, iwork, ifail, info)
DSBEVX computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrice...
subroutine dsbtrd(vect, uplo, n, kd, ab, ldab, d, e, q, ldq, work, info)
DSBTRD
subroutine dsyev_2stage(jobz, uplo, n, a, lda, w, work, lwork, info)
DSYEV_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for SY matr...
subroutine dsyev(jobz, uplo, n, a, lda, w, work, lwork, info)
DSYEV computes the eigenvalues and, optionally, the left and/or right eigenvectors for SY matrices
subroutine dsyevd_2stage(jobz, uplo, n, a, lda, w, work, lwork, iwork, liwork, info)
DSYEVD_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for SY mat...
subroutine dsyevd(jobz, uplo, n, a, lda, w, work, lwork, iwork, liwork, info)
DSYEVD computes the eigenvalues and, optionally, the left and/or right eigenvectors for SY matrices
subroutine dsyevr_2stage(jobz, range, uplo, n, a, lda, vl, vu, il, iu, abstol, m, w, z, ldz, isuppz, work, lwork, iwork, liwork, info)
DSYEVR_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for SY mat...
subroutine dsyevr(jobz, range, uplo, n, a, lda, vl, vu, il, iu, abstol, m, w, z, ldz, isuppz, work, lwork, iwork, liwork, info)
DSYEVR computes the eigenvalues and, optionally, the left and/or right eigenvectors for SY matrices
subroutine dsyevx_2stage(jobz, range, uplo, n, a, lda, vl, vu, il, iu, abstol, m, w, z, ldz, work, lwork, iwork, ifail, info)
DSYEVX_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for SY mat...
subroutine dsyevx(jobz, range, uplo, n, a, lda, vl, vu, il, iu, abstol, m, w, z, ldz, work, lwork, iwork, ifail, info)
DSYEVX computes the eigenvalues and, optionally, the left and/or right eigenvectors for SY matrices
subroutine dsytd2(uplo, n, a, lda, d, e, tau, info)
DSYTD2 reduces a symmetric matrix to real symmetric tridiagonal form by an orthogonal similarity tran...
subroutine dsytrd_2stage(vect, uplo, n, a, lda, d, e, tau, hous2, lhous2, work, lwork, info)
DSYTRD_2STAGE
subroutine dsytrd_sb2st(stage1, vect, uplo, n, kd, ab, ldab, d, e, hous, lhous, work, lwork, info)
DSYTRD_SB2ST reduces a real symmetric band matrix A to real symmetric tridiagonal form T
subroutine dsytrd_sy2sb(uplo, n, kd, a, lda, ab, ldab, tau, work, lwork, info)
DSYTRD_SY2SB
subroutine dsytrd(uplo, n, a, lda, d, e, tau, work, lwork, info)
DSYTRD
subroutine dspev(jobz, uplo, n, ap, w, z, ldz, work, info)
DSPEV computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrices
subroutine dspevd(jobz, uplo, n, ap, w, z, ldz, work, lwork, iwork, liwork, info)
DSPEVD computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrice...
subroutine dspevx(jobz, range, uplo, n, ap, vl, vu, il, iu, abstol, m, w, z, ldz, work, iwork, ifail, info)
DSPEVX computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrice...
subroutine dsptrd(uplo, n, ap, d, e, tau, info)
DSPTRD
subroutine dpteqr(compz, n, d, e, z, ldz, work, info)
DPTEQR
subroutine dstebz(range, order, n, vl, vu, il, iu, abstol, d, e, m, nsplit, w, iblock, isplit, work, iwork, info)
DSTEBZ
subroutine dstedc(compz, n, d, e, z, ldz, work, lwork, iwork, liwork, info)
DSTEDC
subroutine dstein(n, d, e, m, w, iblock, isplit, z, ldz, work, iwork, ifail, info)
DSTEIN
subroutine dsteqr(compz, n, d, e, z, ldz, work, info)
DSTEQR
subroutine dsterf(n, d, e, info)
DSTERF
subroutine dstev(jobz, n, d, e, z, ldz, work, info)
DSTEV computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrices
subroutine dstevd(jobz, n, d, e, z, ldz, work, lwork, iwork, liwork, info)
DSTEVD computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrice...
subroutine dstevr(jobz, range, n, d, e, vl, vu, il, iu, abstol, m, w, z, ldz, isuppz, work, lwork, iwork, liwork, info)
DSTEVR computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrice...
subroutine dstevx(jobz, range, n, d, e, vl, vu, il, iu, abstol, m, w, z, ldz, work, iwork, ifail, info)
DSTEVX computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrice...
subroutine dorgtr(uplo, n, a, lda, tau, work, lwork, info)
DORGTR
subroutine dormtr(side, uplo, trans, m, n, a, lda, tau, c, ldc, work, lwork, info)
DORMTR
subroutine dopgtr(uplo, n, ap, tau, q, ldq, work, info)
DOPGTR
subroutine dopmtr(side, uplo, trans, m, n, ap, tau, c, ldc, work, info)
DOPMTR