76 parameter( nmax = 3, liw = 12*nmax, lw = 20*nmax )
80 INTEGER I, INFO, J, M, N, NT
83 INTEGER I1( NMAX ), I2( NMAX ), I3( NMAX ), IW( LIW )
84 DOUBLE PRECISION D( NMAX ), E( NMAX ), R( LW ), RW( LW ),
86 COMPLEX*16 A( NMAX, NMAX ), C( NMAX, NMAX ),
87 $ Q( NMAX, NMAX ), TAU( NMAX ), W( LW ),
109 COMMON / infoc / infot, nout, ok, lerr
110 COMMON / srnamc / srnamt
118 WRITE( nout, fmt = * )
125 a( i, j ) = 1.d0 / dble( i+j )
140 IF( lsamen( 2, c2,
'ST' ) )
THEN
146 CALL zhetrd(
'/', 0, a, 1, d, e, tau, w, 1, info )
147 CALL chkxer(
'ZHETRD', infot, nout, lerr, ok )
149 CALL zhetrd(
'U', -1, a, 1, d, e, tau, w, 1, info )
150 CALL chkxer(
'ZHETRD', infot, nout, lerr, ok )
152 CALL zhetrd(
'U', 2, a, 1, d, e, tau, w, 1, info )
153 CALL chkxer(
'ZHETRD', infot, nout, lerr, ok )
155 CALL zhetrd(
'U', 0, a, 1, d, e, tau, w, 0, info )
156 CALL chkxer(
'ZHETRD', infot, nout, lerr, ok )
163 CALL zhetd2(
'/', 0, a, 1, d, e, tau, info )
164 CALL chkxer(
'ZHETD2', infot, nout, lerr, ok )
166 CALL zhetd2(
'U', -1, a, 1, d, e, tau, info )
167 CALL chkxer(
'ZHETD2', infot, nout, lerr, ok )
169 CALL zhetd2(
'U', 2, a, 1, d, e, tau, info )
170 CALL chkxer(
'ZHETD2', infot, nout, lerr, ok )
175 srnamt =
'ZHETRD_2STAGE'
179 CALL chkxer(
'ZHETRD_2STAGE', infot, nout, lerr, ok )
183 CALL chkxer(
'ZHETRD_2STAGE', infot, nout, lerr, ok )
187 CALL chkxer(
'ZHETRD_2STAGE', infot, nout, lerr, ok )
191 CALL chkxer(
'ZHETRD_2STAGE', infot, nout, lerr, ok )
195 CALL chkxer(
'ZHETRD_2STAGE', infot, nout, lerr, ok )
199 CALL chkxer(
'ZHETRD_2STAGE', infot, nout, lerr, ok )
203 CALL chkxer(
'ZHETRD_2STAGE', infot, nout, lerr, ok )
208 srnamt =
'ZHETRD_HE2HB'
210 CALL zhetrd_he2hb(
'/', 0, 0, a, 1, c, 1, tau, w, 1, info )
211 CALL chkxer(
'ZHETRD_HE2HB', infot, nout, lerr, ok )
213 CALL zhetrd_he2hb(
'U', -1, 0, a, 1, c, 1, tau, w, 1, info )
214 CALL chkxer(
'ZHETRD_HE2HB', infot, nout, lerr, ok )
216 CALL zhetrd_he2hb(
'U', 0, -1, a, 1, c, 1, tau, w, 1, info )
217 CALL chkxer(
'ZHETRD_HE2HB', infot, nout, lerr, ok )
219 CALL zhetrd_he2hb(
'U', 2, 0, a, 1, c, 1, tau, w, 1, info )
220 CALL chkxer(
'ZHETRD_HE2HB', infot, nout, lerr, ok )
222 CALL zhetrd_he2hb(
'U', 0, 2, a, 1, c, 1, tau, w, 1, info )
223 CALL chkxer(
'ZHETRD_HE2HB', infot, nout, lerr, ok )
225 CALL zhetrd_he2hb(
'U', 0, 0, a, 1, c, 1, tau, w, 0, info )
226 CALL chkxer(
'ZHETRD_HE2HB', infot, nout, lerr, ok )
231 srnamt =
'ZHETRD_HB2ST'
235 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
239 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
243 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
247 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
251 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
255 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
259 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
263 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
267 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
274 CALL zungtr(
'/', 0, a, 1, tau, w, 1, info )
275 CALL chkxer(
'ZUNGTR', infot, nout, lerr, ok )
277 CALL zungtr(
'U', -1, a, 1, tau, w, 1, info )
278 CALL chkxer(
'ZUNGTR', infot, nout, lerr, ok )
280 CALL zungtr(
'U', 2, a, 1, tau, w, 1, info )
281 CALL chkxer(
'ZUNGTR', infot, nout, lerr, ok )
283 CALL zungtr(
'U', 3, a, 3, tau, w, 1, info )
284 CALL chkxer(
'ZUNGTR', infot, nout, lerr, ok )
291 CALL zunmtr(
'/',
'U',
'N', 0, 0, a, 1, tau, c, 1, w, 1, info )
292 CALL chkxer(
'ZUNMTR', infot, nout, lerr, ok )
294 CALL zunmtr(
'L',
'/',
'N', 0, 0, a, 1, tau, c, 1, w, 1, info )
295 CALL chkxer(
'ZUNMTR', infot, nout, lerr, ok )
297 CALL zunmtr(
'L',
'U',
'/', 0, 0, a, 1, tau, c, 1, w, 1, info )
298 CALL chkxer(
'ZUNMTR', infot, nout, lerr, ok )
300 CALL zunmtr(
'L',
'U',
'N', -1, 0, a, 1, tau, c, 1, w, 1,
302 CALL chkxer(
'ZUNMTR', infot, nout, lerr, ok )
304 CALL zunmtr(
'L',
'U',
'N', 0, -1, a, 1, tau, c, 1, w, 1,
306 CALL chkxer(
'ZUNMTR', infot, nout, lerr, ok )
308 CALL zunmtr(
'L',
'U',
'N', 2, 0, a, 1, tau, c, 2, w, 1, info )
309 CALL chkxer(
'ZUNMTR', infot, nout, lerr, ok )
311 CALL zunmtr(
'R',
'U',
'N', 0, 2, a, 1, tau, c, 1, w, 1, info )
312 CALL chkxer(
'ZUNMTR', infot, nout, lerr, ok )
314 CALL zunmtr(
'L',
'U',
'N', 2, 0, a, 2, tau, c, 1, w, 1, info )
315 CALL chkxer(
'ZUNMTR', infot, nout, lerr, ok )
317 CALL zunmtr(
'L',
'U',
'N', 0, 2, a, 1, tau, c, 1, w, 1, info )
318 CALL chkxer(
'ZUNMTR', infot, nout, lerr, ok )
320 CALL zunmtr(
'R',
'U',
'N', 2, 0, a, 1, tau, c, 2, w, 1, info )
321 CALL chkxer(
'ZUNMTR', infot, nout, lerr, ok )
328 CALL zhptrd(
'/', 0, a, d, e, tau, info )
329 CALL chkxer(
'ZHPTRD', infot, nout, lerr, ok )
331 CALL zhptrd(
'U', -1, a, d, e, tau, info )
332 CALL chkxer(
'ZHPTRD', infot, nout, lerr, ok )
339 CALL zupgtr(
'/', 0, a, tau, z, 1, w, info )
340 CALL chkxer(
'ZUPGTR', infot, nout, lerr, ok )
342 CALL zupgtr(
'U', -1, a, tau, z, 1, w, info )
343 CALL chkxer(
'ZUPGTR', infot, nout, lerr, ok )
345 CALL zupgtr(
'U', 2, a, tau, z, 1, w, info )
346 CALL chkxer(
'ZUPGTR', infot, nout, lerr, ok )
353 CALL zupmtr(
'/',
'U',
'N', 0, 0, a, tau, c, 1, w, info )
354 CALL chkxer(
'ZUPMTR', infot, nout, lerr, ok )
356 CALL zupmtr(
'L',
'/',
'N', 0, 0, a, tau, c, 1, w, info )
357 CALL chkxer(
'ZUPMTR', infot, nout, lerr, ok )
359 CALL zupmtr(
'L',
'U',
'/', 0, 0, a, tau, c, 1, w, info )
360 CALL chkxer(
'ZUPMTR', infot, nout, lerr, ok )
362 CALL zupmtr(
'L',
'U',
'N', -1, 0, a, tau, c, 1, w, info )
363 CALL chkxer(
'ZUPMTR', infot, nout, lerr, ok )
365 CALL zupmtr(
'L',
'U',
'N', 0, -1, a, tau, c, 1, w, info )
366 CALL chkxer(
'ZUPMTR', infot, nout, lerr, ok )
368 CALL zupmtr(
'L',
'U',
'N', 2, 0, a, tau, c, 1, w, info )
369 CALL chkxer(
'ZUPMTR', infot, nout, lerr, ok )
376 CALL zpteqr(
'/', 0, d, e, z, 1, rw, info )
377 CALL chkxer(
'ZPTEQR', infot, nout, lerr, ok )
379 CALL zpteqr(
'N', -1, d, e, z, 1, rw, info )
380 CALL chkxer(
'ZPTEQR', infot, nout, lerr, ok )
382 CALL zpteqr(
'V', 2, d, e, z, 1, rw, info )
383 CALL chkxer(
'ZPTEQR', infot, nout, lerr, ok )
390 CALL zstein( -1, d, e, 0, x, i1, i2, z, 1, rw, iw, i3, info )
391 CALL chkxer(
'ZSTEIN', infot, nout, lerr, ok )
393 CALL zstein( 0, d, e, -1, x, i1, i2, z, 1, rw, iw, i3, info )
394 CALL chkxer(
'ZSTEIN', infot, nout, lerr, ok )
396 CALL zstein( 0, d, e, 1, x, i1, i2, z, 1, rw, iw, i3, info )
397 CALL chkxer(
'ZSTEIN', infot, nout, lerr, ok )
399 CALL zstein( 2, d, e, 0, x, i1, i2, z, 1, rw, iw, i3, info )
400 CALL chkxer(
'ZSTEIN', infot, nout, lerr, ok )
407 CALL zsteqr(
'/', 0, d, e, z, 1, rw, info )
408 CALL chkxer(
'ZSTEQR', infot, nout, lerr, ok )
410 CALL zsteqr(
'N', -1, d, e, z, 1, rw, info )
411 CALL chkxer(
'ZSTEQR', infot, nout, lerr, ok )
413 CALL zsteqr(
'V', 2, d, e, z, 1, rw, info )
414 CALL chkxer(
'ZSTEQR', infot, nout, lerr, ok )
421 CALL zstedc(
'/', 0, d, e, z, 1, w, 1, rw, 1, iw, 1, info )
422 CALL chkxer(
'ZSTEDC', infot, nout, lerr, ok )
424 CALL zstedc(
'N', -1, d, e, z, 1, w, 1, rw, 1, iw, 1, info )
425 CALL chkxer(
'ZSTEDC', infot, nout, lerr, ok )
427 CALL zstedc(
'V', 2, d, e, z, 1, w, 4, rw, 23, iw, 28, info )
428 CALL chkxer(
'ZSTEDC', infot, nout, lerr, ok )
430 CALL zstedc(
'N', 2, d, e, z, 1, w, 0, rw, 1, iw, 1, info )
431 CALL chkxer(
'ZSTEDC', infot, nout, lerr, ok )
433 CALL zstedc(
'V', 2, d, e, z, 2, w, 0, rw, 23, iw, 28, info )
434 CALL chkxer(
'ZSTEDC', infot, nout, lerr, ok )
436 CALL zstedc(
'N', 2, d, e, z, 1, w, 1, rw, 0, iw, 1, info )
437 CALL chkxer(
'ZSTEDC', infot, nout, lerr, ok )
439 CALL zstedc(
'I', 2, d, e, z, 2, w, 1, rw, 1, iw, 12, info )
440 CALL chkxer(
'ZSTEDC', infot, nout, lerr, ok )
442 CALL zstedc(
'V', 2, d, e, z, 2, w, 4, rw, 1, iw, 28, info )
443 CALL chkxer(
'ZSTEDC', infot, nout, lerr, ok )
445 CALL zstedc(
'N', 2, d, e, z, 1, w, 1, rw, 1, iw, 0, info )
446 CALL chkxer(
'ZSTEDC', infot, nout, lerr, ok )
448 CALL zstedc(
'I', 2, d, e, z, 2, w, 1, rw, 23, iw, 0, info )
449 CALL chkxer(
'ZSTEDC', infot, nout, lerr, ok )
451 CALL zstedc(
'V', 2, d, e, z, 2, w, 4, rw, 23, iw, 0, info )
452 CALL chkxer(
'ZSTEDC', infot, nout, lerr, ok )
459 CALL zheevd(
'/',
'U', 0, a, 1, x, w, 1, rw, 1, iw, 1, info )
460 CALL chkxer(
'ZHEEVD', infot, nout, lerr, ok )
462 CALL zheevd(
'N',
'/', 0, a, 1, x, w, 1, rw, 1, iw, 1, info )
463 CALL chkxer(
'ZHEEVD', infot, nout, lerr, ok )
465 CALL zheevd(
'N',
'U', -1, a, 1, x, w, 1, rw, 1, iw, 1, info )
466 CALL chkxer(
'ZHEEVD', infot, nout, lerr, ok )
468 CALL zheevd(
'N',
'U', 2, a, 1, x, w, 3, rw, 2, iw, 1, info )
469 CALL chkxer(
'ZHEEVD', infot, nout, lerr, ok )
471 CALL zheevd(
'N',
'U', 1, a, 1, x, w, 0, rw, 1, iw, 1, info )
472 CALL chkxer(
'ZHEEVD', infot, nout, lerr, ok )
474 CALL zheevd(
'N',
'U', 2, a, 2, x, w, 2, rw, 2, iw, 1, info )
475 CALL chkxer(
'ZHEEVD', infot, nout, lerr, ok )
477 CALL zheevd(
'V',
'U', 2, a, 2, x, w, 3, rw, 25, iw, 12, info )
478 CALL chkxer(
'ZHEEVD', infot, nout, lerr, ok )
480 CALL zheevd(
'N',
'U', 1, a, 1, x, w, 1, rw, 0, iw, 1, info )
481 CALL chkxer(
'ZHEEVD', infot, nout, lerr, ok )
483 CALL zheevd(
'N',
'U', 2, a, 2, x, w, 3, rw, 1, iw, 1, info )
484 CALL chkxer(
'ZHEEVD', infot, nout, lerr, ok )
486 CALL zheevd(
'V',
'U', 2, a, 2, x, w, 8, rw, 18, iw, 12, info )
487 CALL chkxer(
'ZHEEVD', infot, nout, lerr, ok )
489 CALL zheevd(
'N',
'U', 1, a, 1, x, w, 1, rw, 1, iw, 0, info )
490 CALL chkxer(
'ZHEEVD', infot, nout, lerr, ok )
492 CALL zheevd(
'V',
'U', 2, a, 2, x, w, 8, rw, 25, iw, 11, info )
493 CALL chkxer(
'ZHEEVD', infot, nout, lerr, ok )
498 srnamt =
'ZHEEVD_2STAGE'
501 $ rw, 1, iw, 1, info )
502 CALL chkxer(
'ZHEEVD_2STAGE', infot, nout, lerr, ok )
505 $ rw, 1, iw, 1, info )
506 CALL chkxer(
'ZHEEVD_2STAGE', infot, nout, lerr, ok )
509 $ rw, 1, iw, 1, info )
510 CALL chkxer(
'ZHEEVD_2STAGE', infot, nout, lerr, ok )
513 $ rw, 1, iw, 1, info )
514 CALL chkxer(
'ZHEEVD_2STAGE', infot, nout, lerr, ok )
517 $ rw, 2, iw, 1, info )
518 CALL chkxer(
'ZHEEVD_2STAGE', infot, nout, lerr, ok )
521 $ rw, 1, iw, 1, info )
522 CALL chkxer(
'ZHEEVD_2STAGE', infot, nout, lerr, ok )
525 $ rw, 2, iw, 1, info )
526 CALL chkxer(
'ZHEEVD_2STAGE', infot, nout, lerr, ok )
533 $ rw, 0, iw, 1, info )
534 CALL chkxer(
'ZHEEVD_2STAGE', infot, nout, lerr, ok )
537 $ rw, 1, iw, 1, info )
538 CALL chkxer(
'ZHEEVD_2STAGE', infot, nout, lerr, ok )
545 $ rw, 1, iw, 0, info )
546 CALL chkxer(
'ZHEEVD_2STAGE', infot, nout, lerr, ok )
557 CALL zheev(
'/',
'U', 0, a, 1, x, w, 1, rw, info )
558 CALL chkxer(
'ZHEEV ', infot, nout, lerr, ok )
560 CALL zheev(
'N',
'/', 0, a, 1, x, w, 1, rw, info )
561 CALL chkxer(
'ZHEEV ', infot, nout, lerr, ok )
563 CALL zheev(
'N',
'U', -1, a, 1, x, w, 1, rw, info )
564 CALL chkxer(
'ZHEEV ', infot, nout, lerr, ok )
566 CALL zheev(
'N',
'U', 2, a, 1, x, w, 3, rw, info )
567 CALL chkxer(
'ZHEEV ', infot, nout, lerr, ok )
569 CALL zheev(
'N',
'U', 2, a, 2, x, w, 2, rw, info )
570 CALL chkxer(
'ZHEEV ', infot, nout, lerr, ok )
575 srnamt =
'ZHEEV_2STAGE '
577 CALL zheev_2stage(
'/',
'U', 0, a, 1, x, w, 1, rw, info )
578 CALL chkxer(
'ZHEEV_2STAGE ', infot, nout, lerr, ok )
580 CALL zheev_2stage(
'V',
'U', 0, a, 1, x, w, 1, rw, info )
581 CALL chkxer(
'ZHEEV_2STAGE ', infot, nout, lerr, ok )
583 CALL zheev_2stage(
'N',
'/', 0, a, 1, x, w, 1, rw, info )
584 CALL chkxer(
'ZHEEV_2STAGE ', infot, nout, lerr, ok )
586 CALL zheev_2stage(
'N',
'U', -1, a, 1, x, w, 1, rw, info )
587 CALL chkxer(
'ZHEEV_2STAGE ', infot, nout, lerr, ok )
589 CALL zheev_2stage(
'N',
'U', 2, a, 1, x, w, 3, rw, info )
590 CALL chkxer(
'ZHEEV_2STAGE ', infot, nout, lerr, ok )
592 CALL zheev_2stage(
'N',
'U', 2, a, 2, x, w, 2, rw, info )
593 CALL chkxer(
'ZHEEV_2STAGE ', infot, nout, lerr, ok )
600 CALL zheevx(
'/',
'A',
'U', 0, a, 1, 0.0d0, 0.0d0, 0, 0, 0.0d0,
601 $ m, x, z, 1, w, 1, rw, iw, i3, info )
602 CALL chkxer(
'ZHEEVX', infot, nout, lerr, ok )
604 CALL zheevx(
'V',
'/',
'U', 0, a, 1, 0.0d0, 1.0d0, 1, 0, 0.0d0,
605 $ m, x, z, 1, w, 1, rw, iw, i3, info )
606 CALL chkxer(
'ZHEEVX', infot, nout, lerr, ok )
608 CALL zheevx(
'V',
'A',
'/', 0, a, 1, 0.0d0, 0.0d0, 0, 0, 0.0d0,
609 $ m, x, z, 1, w, 1, rw, iw, i3, info )
611 CALL zheevx(
'V',
'A',
'U', -1, a, 1, 0.0d0, 0.0d0, 0, 0,
612 $ 0.0d0, m, x, z, 1, w, 1, rw, iw, i3, info )
613 CALL chkxer(
'ZHEEVX', infot, nout, lerr, ok )
615 CALL zheevx(
'V',
'A',
'U', 2, a, 1, 0.0d0, 0.0d0, 0, 0, 0.0d0,
616 $ m, x, z, 2, w, 3, rw, iw, i3, info )
617 CALL chkxer(
'ZHEEVX', infot, nout, lerr, ok )
619 CALL zheevx(
'V',
'V',
'U', 1, a, 1, 0.0d0, 0.0d0, 0, 0, 0.0d0,
620 $ m, x, z, 1, w, 1, rw, iw, i3, info )
621 CALL chkxer(
'ZHEEVX', infot, nout, lerr, ok )
623 CALL zheevx(
'V',
'I',
'U', 1, a, 1, 0.0d0, 0.0d0, 0, 0, 0.0d0,
624 $ m, x, z, 1, w, 1, rw, iw, i3, info )
625 CALL chkxer(
'ZHEEVX', infot, nout, lerr, ok )
627 CALL zheevx(
'V',
'I',
'U', 2, a, 2, 0.0d0, 0.0d0, 2, 1, 0.0d0,
628 $ m, x, z, 2, w, 3, rw, iw, i3, info )
629 CALL chkxer(
'ZHEEVX', infot, nout, lerr, ok )
631 CALL zheevx(
'V',
'A',
'U', 2, a, 2, 0.0d0, 0.0d0, 0, 0, 0.0d0,
632 $ m, x, z, 1, w, 3, rw, iw, i3, info )
633 CALL chkxer(
'ZHEEVX', infot, nout, lerr, ok )
635 CALL zheevx(
'V',
'A',
'U', 2, a, 2, 0.0d0, 0.0d0, 0, 0, 0.0d0,
636 $ m, x, z, 2, w, 2, rw, iw, i1, info )
637 CALL chkxer(
'ZHEEVX', infot, nout, lerr, ok )
642 srnamt =
'ZHEEVX_2STAGE'
645 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
646 $ m, x, z, 1, w, 1, rw, iw, i3, info )
647 CALL chkxer(
'ZHEEVX_2STAGE', infot, nout, lerr, ok )
650 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
651 $ m, x, z, 1, w, 1, rw, iw, i3, info )
652 CALL chkxer(
'ZHEEVX_2STAGE', infot, nout, lerr, ok )
655 $ 0.0d0, 1.0d0, 1, 0, 0.0d0,
656 $ m, x, z, 1, w, 1, rw, iw, i3, info )
657 CALL chkxer(
'ZHEEVX_2STAGE', infot, nout, lerr, ok )
660 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
661 $ m, x, z, 1, w, 1, rw, iw, i3, info )
664 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
665 $ m, x, z, 1, w, 1, rw, iw, i3, info )
666 CALL chkxer(
'ZHEEVX_2STAGE', infot, nout, lerr, ok )
669 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
670 $ m, x, z, 2, w, 3, rw, iw, i3, info )
671 CALL chkxer(
'ZHEEVX_2STAGE', infot, nout, lerr, ok )
674 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
675 $ m, x, z, 1, w, 1, rw, iw, i3, info )
676 CALL chkxer(
'ZHEEVX_2STAGE', infot, nout, lerr, ok )
679 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
680 $ m, x, z, 1, w, 1, rw, iw, i3, info )
681 CALL chkxer(
'ZHEEVX_2STAGE', infot, nout, lerr, ok )
684 $ 0.0d0, 0.0d0, 2, 1, 0.0d0,
685 $ m, x, z, 2, w, 3, rw, iw, i3, info )
686 CALL chkxer(
'ZHEEVX_2STAGE', infot, nout, lerr, ok )
689 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
690 $ m, x, z, 0, w, 3, rw, iw, i3, info )
691 CALL chkxer(
'ZHEEVX_2STAGE', infot, nout, lerr, ok )
694 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
695 $ m, x, z, 2, w, 0, rw, iw, i1, info )
696 CALL chkxer(
'ZHEEVX_2STAGE', infot, nout, lerr, ok )
704 CALL zheevr(
'/',
'A',
'U', 0, a, 1, 0.0d0, 0.0d0, 1, 1, 0.0d0,
705 $ m, r, z, 1, iw, q, 2*n, rw, 24*n, iw( 2*n+1 ),
707 CALL chkxer(
'ZHEEVR', infot, nout, lerr, ok )
709 CALL zheevr(
'V',
'/',
'U', 0, a, 1, 0.0d0, 0.0d0, 1, 1, 0.0d0,
710 $ m, r, z, 1, iw, q, 2*n, rw, 24*n, iw( 2*n+1 ),
712 CALL chkxer(
'ZHEEVR', infot, nout, lerr, ok )
714 CALL zheevr(
'V',
'A',
'/', -1, a, 1, 0.0d0, 0.0d0, 1, 1,
715 $ 0.0d0, m, r, z, 1, iw, q, 2*n, rw, 24*n,
716 $ iw( 2*n+1 ), 10*n, info )
717 CALL chkxer(
'ZHEEVR', infot, nout, lerr, ok )
719 CALL zheevr(
'V',
'A',
'U', -1, a, 1, 0.0d0, 0.0d0, 1, 1,
720 $ 0.0d0, m, r, z, 1, iw, q, 2*n, rw, 24*n,
721 $ iw( 2*n+1 ), 10*n, info )
722 CALL chkxer(
'ZHEEVR', infot, nout, lerr, ok )
724 CALL zheevr(
'V',
'A',
'U', 2, a, 1, 0.0d0, 0.0d0, 1, 1, 0.0d0,
725 $ m, r, z, 1, iw, q, 2*n, rw, 24*n, iw( 2*n+1 ),
727 CALL chkxer(
'ZHEEVR', infot, nout, lerr, ok )
729 CALL zheevr(
'V',
'V',
'U', 1, a, 1, 0.0d0, 0.0d0, 1, 1, 0.0d0,
730 $ m, r, z, 1, iw, q, 2*n, rw, 24*n, iw( 2*n+1 ),
732 CALL chkxer(
'ZHEEVR', infot, nout, lerr, ok )
734 CALL zheevr(
'V',
'I',
'U', 1, a, 1, 0.0d0, 0.0d0, 0, 1, 0.0d0,
735 $ m, r, z, 1, iw, q, 2*n, rw, 24*n, iw( 2*n+1 ),
737 CALL chkxer(
'ZHEEVR', infot, nout, lerr, ok )
740 CALL zheevr(
'V',
'I',
'U', 2, a, 2, 0.0d0, 0.0d0, 2, 1, 0.0d0,
741 $ m, r, z, 1, iw, q, 2*n, rw, 24*n, iw( 2*n+1 ),
743 CALL chkxer(
'ZHEEVR', infot, nout, lerr, ok )
745 CALL zheevr(
'V',
'I',
'U', 1, a, 1, 0.0d0, 0.0d0, 1, 1, 0.0d0,
746 $ m, r, z, 0, iw, q, 2*n, rw, 24*n, iw( 2*n+1 ),
748 CALL chkxer(
'ZHEEVR', infot, nout, lerr, ok )
750 CALL zheevr(
'V',
'I',
'U', 1, a, 1, 0.0d0, 0.0d0, 1, 1, 0.0d0,
751 $ m, r, z, 1, iw, q, 2*n-1, rw, 24*n, iw( 2*n+1 ),
753 CALL chkxer(
'ZHEEVR', infot, nout, lerr, ok )
755 CALL zheevr(
'V',
'I',
'U', 1, a, 1, 0.0d0, 0.0d0, 1, 1, 0.0d0,
756 $ m, r, z, 1, iw, q, 2*n, rw, 24*n-1, iw( 2*n-1 ),
758 CALL chkxer(
'ZHEEVR', infot, nout, lerr, ok )
760 CALL zheevr(
'V',
'I',
'U', 1, a, 1, 0.0d0, 0.0d0, 1, 1, 0.0d0,
761 $ m, r, z, 1, iw, q, 2*n, rw, 24*n, iw, 10*n-1,
763 CALL chkxer(
'ZHEEVR', infot, nout, lerr, ok )
768 srnamt =
'ZHEEVR_2STAGE'
772 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
773 $ m, r, z, 1, iw, q, 2*n, rw, 24*n, iw( 2*n+1 ),
775 CALL chkxer(
'ZHEEVR_2STAGE', infot, nout, lerr, ok )
778 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
779 $ m, r, z, 1, iw, q, 2*n, rw, 24*n, iw( 2*n+1 ),
781 CALL chkxer(
'ZHEEVR_2STAGE', infot, nout, lerr, ok )
784 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
785 $ m, r, z, 1, iw, q, 2*n, rw, 24*n, iw( 2*n+1 ),
787 CALL chkxer(
'ZHEEVR_2STAGE', infot, nout, lerr, ok )
790 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
791 $ m, r, z, 1, iw, q, 2*n, rw, 24*n,
792 $ iw( 2*n+1 ), 10*n, info )
793 CALL chkxer(
'ZHEEVR_2STAGE', infot, nout, lerr, ok )
796 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
797 $ m, r, z, 1, iw, q, 2*n, rw, 24*n,
798 $ iw( 2*n+1 ), 10*n, info )
799 CALL chkxer(
'ZHEEVR_2STAGE', infot, nout, lerr, ok )
802 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
803 $ m, r, z, 1, iw, q, 2*n, rw, 24*n, iw( 2*n+1 ),
805 CALL chkxer(
'ZHEEVR_2STAGE', infot, nout, lerr, ok )
808 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
809 $ m, r, z, 1, iw, q, 2*n, rw, 24*n, iw( 2*n+1 ),
811 CALL chkxer(
'ZHEEVR_2STAGE', infot, nout, lerr, ok )
814 $ 0.0d0, 0.0d0, 0, 1, 0.0d0,
815 $ m, r, z, 1, iw, q, 2*n, rw, 24*n, iw( 2*n+1 ),
817 CALL chkxer(
'ZHEEVR_2STAGE', infot, nout, lerr, ok )
820 $ 0.0d0, 0.0d0, 2, 1, 0.0d0,
821 $ m, r, z, 1, iw, q, 2*n, rw, 24*n, iw( 2*n+1 ),
823 CALL chkxer(
'ZHEEVR_2STAGE', infot, nout, lerr, ok )
826 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
827 $ m, r, z, 0, iw, q, 2*n, rw, 24*n, iw( 2*n+1 ),
829 CALL chkxer(
'ZHEEVR_2STAGE', infot, nout, lerr, ok )
832 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
833 $ m, r, z, 1, iw, q, 2*n-1, rw, 24*n, iw( 2*n+1 ),
835 CALL chkxer(
'ZHEEVR_2STAGE', infot, nout, lerr, ok )
838 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
839 $ m, r, z, 1, iw, q, 26*n, rw, 24*n-1, iw( 2*n-1 ),
841 CALL chkxer(
'ZHEEVR_2STAGE', infot, nout, lerr, ok )
844 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
845 $ m, r, z, 1, iw, q, 26*n, rw, 24*n, iw, 10*n-1,
847 CALL chkxer(
'ZHEEVR_2STAGE', infot, nout, lerr, ok )
854 CALL zhpevd(
'/',
'U', 0, a, x, z, 1, w, 1, rw, 1, iw, 1,
856 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
858 CALL zhpevd(
'N',
'/', 0, a, x, z, 1, w, 1, rw, 1, iw, 1,
860 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
862 CALL zhpevd(
'N',
'U', -1, a, x, z, 1, w, 1, rw, 1, iw, 1,
864 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
866 CALL zhpevd(
'V',
'U', 2, a, x, z, 1, w, 4, rw, 25, iw, 12,
868 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
870 CALL zhpevd(
'N',
'U', 1, a, x, z, 1, w, 0, rw, 1, iw, 1,
872 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
874 CALL zhpevd(
'N',
'U', 2, a, x, z, 2, w, 1, rw, 2, iw, 1,
876 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
878 CALL zhpevd(
'V',
'U', 2, a, x, z, 2, w, 2, rw, 25, iw, 12,
880 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
882 CALL zhpevd(
'N',
'U', 1, a, x, z, 1, w, 1, rw, 0, iw, 1,
884 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
886 CALL zhpevd(
'N',
'U', 2, a, x, z, 2, w, 2, rw, 1, iw, 1,
888 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
890 CALL zhpevd(
'V',
'U', 2, a, x, z, 2, w, 4, rw, 18, iw, 12,
892 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
894 CALL zhpevd(
'N',
'U', 1, a, x, z, 1, w, 1, rw, 1, iw, 0,
896 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
898 CALL zhpevd(
'N',
'U', 2, a, x, z, 2, w, 2, rw, 2, iw, 0,
900 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
902 CALL zhpevd(
'V',
'U', 2, a, x, z, 2, w, 4, rw, 25, iw, 2,
904 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
911 CALL zhpev(
'/',
'U', 0, a, x, z, 1, w, rw, info )
912 CALL chkxer(
'ZHPEV ', infot, nout, lerr, ok )
914 CALL zhpev(
'N',
'/', 0, a, x, z, 1, w, rw, info )
915 CALL chkxer(
'ZHPEV ', infot, nout, lerr, ok )
917 CALL zhpev(
'N',
'U', -1, a, x, z, 1, w, rw, info )
918 CALL chkxer(
'ZHPEV ', infot, nout, lerr, ok )
920 CALL zhpev(
'V',
'U', 2, a, x, z, 1, w, rw, info )
921 CALL chkxer(
'ZHPEV ', infot, nout, lerr, ok )
928 CALL zhpevx(
'/',
'A',
'U', 0, a, 0.0d0, 0.0d0, 0, 0, 0.0d0, m,
929 $ x, z, 1, w, rw, iw, i3, info )
930 CALL chkxer(
'ZHPEVX', infot, nout, lerr, ok )
932 CALL zhpevx(
'V',
'/',
'U', 0, a, 0.0d0, 1.0d0, 1, 0, 0.0d0, m,
933 $ x, z, 1, w, rw, iw, i3, info )
934 CALL chkxer(
'ZHPEVX', infot, nout, lerr, ok )
936 CALL zhpevx(
'V',
'A',
'/', 0, a, 0.0d0, 0.0d0, 0, 0, 0.0d0, m,
937 $ x, z, 1, w, rw, iw, i3, info )
938 CALL chkxer(
'ZHPEVX', infot, nout, lerr, ok )
940 CALL zhpevx(
'V',
'A',
'U', -1, a, 0.0d0, 0.0d0, 0, 0, 0.0d0,
941 $ m, x, z, 1, w, rw, iw, i3, info )
942 CALL chkxer(
'ZHPEVX', infot, nout, lerr, ok )
944 CALL zhpevx(
'V',
'V',
'U', 1, a, 0.0d0, 0.0d0, 0, 0, 0.0d0, m,
945 $ x, z, 1, w, rw, iw, i3, info )
946 CALL chkxer(
'ZHPEVX', infot, nout, lerr, ok )
948 CALL zhpevx(
'V',
'I',
'U', 1, a, 0.0d0, 0.0d0, 0, 0, 0.0d0, m,
949 $ x, z, 1, w, rw, iw, i3, info )
950 CALL chkxer(
'ZHPEVX', infot, nout, lerr, ok )
952 CALL zhpevx(
'V',
'I',
'U', 2, a, 0.0d0, 0.0d0, 2, 1, 0.0d0, m,
953 $ x, z, 2, w, rw, iw, i3, info )
954 CALL chkxer(
'ZHPEVX', infot, nout, lerr, ok )
956 CALL zhpevx(
'V',
'A',
'U', 2, a, 0.0d0, 0.0d0, 0, 0, 0.0d0, m,
957 $ x, z, 1, w, rw, iw, i3, info )
958 CALL chkxer(
'ZHPEVX', infot, nout, lerr, ok )
963 ELSE IF( lsamen( 2, c2,
'HB' ) )
THEN
969 CALL zhbtrd(
'/',
'U', 0, 0, a, 1, d, e, z, 1, w, info )
970 CALL chkxer(
'ZHBTRD', infot, nout, lerr, ok )
972 CALL zhbtrd(
'N',
'/', 0, 0, a, 1, d, e, z, 1, w, info )
973 CALL chkxer(
'ZHBTRD', infot, nout, lerr, ok )
975 CALL zhbtrd(
'N',
'U', -1, 0, a, 1, d, e, z, 1, w, info )
976 CALL chkxer(
'ZHBTRD', infot, nout, lerr, ok )
978 CALL zhbtrd(
'N',
'U', 0, -1, a, 1, d, e, z, 1, w, info )
979 CALL chkxer(
'ZHBTRD', infot, nout, lerr, ok )
981 CALL zhbtrd(
'N',
'U', 1, 1, a, 1, d, e, z, 1, w, info )
982 CALL chkxer(
'ZHBTRD', infot, nout, lerr, ok )
984 CALL zhbtrd(
'V',
'U', 2, 0, a, 1, d, e, z, 1, w, info )
985 CALL chkxer(
'ZHBTRD', infot, nout, lerr, ok )
990 srnamt =
'ZHETRD_HB2ST'
994 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
998 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
1001 $ c, 1, w, 1, info )
1002 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
1005 $ c, 1, w, 1, info )
1006 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
1009 $ c, 1, w, 1, info )
1010 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
1013 $ c, 1, w, 1, info )
1014 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
1017 $ c, 1, w, 1, info )
1018 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
1021 $ c, 0, w, 1, info )
1022 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
1025 $ c, 1, w, 0, info )
1026 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
1033 CALL zhbevd(
'/',
'U', 0, 0, a, 1, x, z, 1, w, 1, rw, 1, iw, 1,
1035 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1037 CALL zhbevd(
'N',
'/', 0, 0, a, 1, x, z, 1, w, 1, rw, 1, iw, 1,
1039 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1041 CALL zhbevd(
'N',
'U', -1, 0, a, 1, x, z, 1, w, 1, rw, 1, iw,
1043 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1045 CALL zhbevd(
'N',
'U', 0, -1, a, 1, x, z, 1, w, 1, rw, 1, iw,
1047 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1049 CALL zhbevd(
'N',
'U', 2, 1, a, 1, x, z, 1, w, 2, rw, 2, iw, 1,
1051 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1053 CALL zhbevd(
'V',
'U', 2, 1, a, 2, x, z, 1, w, 8, rw, 25, iw,
1055 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1057 CALL zhbevd(
'N',
'U', 1, 0, a, 1, x, z, 1, w, 0, rw, 1, iw, 1,
1059 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1061 CALL zhbevd(
'N',
'U', 2, 1, a, 2, x, z, 2, w, 1, rw, 2, iw, 1,
1063 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1065 CALL zhbevd(
'V',
'U', 2, 1, a, 2, x, z, 2, w, 2, rw, 25, iw,
1067 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1069 CALL zhbevd(
'N',
'U', 1, 0, a, 1, x, z, 1, w, 1, rw, 0, iw, 1,
1071 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1073 CALL zhbevd(
'N',
'U', 2, 1, a, 2, x, z, 2, w, 2, rw, 1, iw, 1,
1075 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1077 CALL zhbevd(
'V',
'U', 2, 1, a, 2, x, z, 2, w, 8, rw, 2, iw,
1079 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1081 CALL zhbevd(
'N',
'U', 1, 0, a, 1, x, z, 1, w, 1, rw, 1, iw, 0,
1083 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1085 CALL zhbevd(
'N',
'U', 2, 1, a, 2, x, z, 2, w, 2, rw, 2, iw, 0,
1087 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1089 CALL zhbevd(
'V',
'U', 2, 1, a, 2, x, z, 2, w, 8, rw, 25, iw,
1091 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1096 srnamt =
'ZHBEVD_2STAGE'
1099 $ w, 1, rw, 1, iw, 1, info )
1100 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1103 $ w, 1, rw, 1, iw, 1, info )
1104 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1107 $ w, 1, rw, 1, iw, 1, info )
1108 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1111 $ w, 1, rw, 1, iw, 1, info )
1112 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1115 $ w, 1, rw, 1, iw, 1, info )
1116 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1119 $ w, 2, rw, 2, iw, 1, info )
1120 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1123 $ w, 8, rw, 25, iw, 12, info )
1124 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1127 $ w, 0, rw, 1, iw, 1, info )
1128 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1131 $ w, 1, rw, 2, iw, 1, info )
1132 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1139 $ w, 1, rw, 0, iw, 1, info )
1140 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1143 $ w, 25, rw, 1, iw, 1, info )
1144 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1151 $ w, 1, rw, 1, iw, 0, info )
1152 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1155 $ w, 25, rw, 2, iw, 0, info )
1156 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1167 CALL zhbev(
'/',
'U', 0, 0, a, 1, x, z, 1, w, rw, info )
1168 CALL chkxer(
'ZHBEV ', infot, nout, lerr, ok )
1170 CALL zhbev(
'N',
'/', 0, 0, a, 1, x, z, 1, w, rw, info )
1171 CALL chkxer(
'ZHBEV ', infot, nout, lerr, ok )
1173 CALL zhbev(
'N',
'U', -1, 0, a, 1, x, z, 1, w, rw, info )
1174 CALL chkxer(
'ZHBEV ', infot, nout, lerr, ok )
1176 CALL zhbev(
'N',
'U', 0, -1, a, 1, x, z, 1, w, rw, info )
1177 CALL chkxer(
'ZHBEV ', infot, nout, lerr, ok )
1179 CALL zhbev(
'N',
'U', 2, 1, a, 1, x, z, 1, w, rw, info )
1180 CALL chkxer(
'ZHBEV ', infot, nout, lerr, ok )
1182 CALL zhbev(
'V',
'U', 2, 0, a, 1, x, z, 1, w, rw, info )
1183 CALL chkxer(
'ZHBEV ', infot, nout, lerr, ok )
1188 srnamt =
'ZHBEV_2STAGE '
1191 $ z, 1, w, 0, rw, info )
1192 CALL chkxer(
'ZHBEV_2STAGE ', infot, nout, lerr, ok )
1195 $ z, 1, w, 0, rw, info )
1196 CALL chkxer(
'ZHBEV_2STAGE ', infot, nout, lerr, ok )
1199 $ z, 1, w, 0, rw, info )
1200 CALL chkxer(
'ZHBEV_2STAGE ', infot, nout, lerr, ok )
1203 $ z, 1, w, 0, rw, info )
1204 CALL chkxer(
'ZHBEV_2STAGE ', infot, nout, lerr, ok )
1207 $ z, 1, w, 0, rw, info )
1208 CALL chkxer(
'ZHBEV_2STAGE ', infot, nout, lerr, ok )
1211 $ z, 1, w, 0, rw, info )
1212 CALL chkxer(
'ZHBEV_2STAGE ', infot, nout, lerr, ok )
1215 $ z, 0, w, 0, rw, info )
1216 CALL chkxer(
'ZHBEV_2STAGE ', infot, nout, lerr, ok )
1219 $ z, 1, w, 0, rw, info )
1220 CALL chkxer(
'ZHBEV_2STAGE ', infot, nout, lerr, ok )
1227 CALL zhbevx(
'/',
'A',
'U', 0, 0, a, 1, q, 1, 0.0d0, 0.0d0, 0,
1228 $ 0, 0.0d0, m, x, z, 1, w, rw, iw, i3, info )
1229 CALL chkxer(
'ZHBEVX', infot, nout, lerr, ok )
1231 CALL zhbevx(
'V',
'/',
'U', 0, 0, a, 1, q, 1, 0.0d0, 1.0d0, 1,
1232 $ 0, 0.0d0, m, x, z, 1, w, rw, iw, i3, info )
1233 CALL chkxer(
'ZHBEVX', infot, nout, lerr, ok )
1235 CALL zhbevx(
'V',
'A',
'/', 0, 0, a, 1, q, 1, 0.0d0, 0.0d0, 0,
1236 $ 0, 0.0d0, m, x, z, 1, w, rw, iw, i3, info )
1238 CALL zhbevx(
'V',
'A',
'U', -1, 0, a, 1, q, 1, 0.0d0, 0.0d0, 0,
1239 $ 0, 0.0d0, m, x, z, 1, w, rw, iw, i3, info )
1240 CALL chkxer(
'ZHBEVX', infot, nout, lerr, ok )
1242 CALL zhbevx(
'V',
'A',
'U', 0, -1, a, 1, q, 1, 0.0d0, 0.0d0, 0,
1243 $ 0, 0.0d0, m, x, z, 1, w, rw, iw, i3, info )
1244 CALL chkxer(
'ZHBEVX', infot, nout, lerr, ok )
1246 CALL zhbevx(
'V',
'A',
'U', 2, 1, a, 1, q, 2, 0.0d0, 0.0d0, 0,
1247 $ 0, 0.0d0, m, x, z, 2, w, rw, iw, i3, info )
1248 CALL chkxer(
'ZHBEVX', infot, nout, lerr, ok )
1250 CALL zhbevx(
'V',
'A',
'U', 2, 0, a, 1, q, 1, 0.0d0, 0.0d0, 0,
1251 $ 0, 0.0d0, m, x, z, 2, w, rw, iw, i3, info )
1252 CALL chkxer(
'ZHBEVX', infot, nout, lerr, ok )
1254 CALL zhbevx(
'V',
'V',
'U', 1, 0, a, 1, q, 1, 0.0d0, 0.0d0, 0,
1255 $ 0, 0.0d0, m, x, z, 1, w, rw, iw, i3, info )
1256 CALL chkxer(
'ZHBEVX', infot, nout, lerr, ok )
1258 CALL zhbevx(
'V',
'I',
'U', 1, 0, a, 1, q, 1, 0.0d0, 0.0d0, 0,
1259 $ 0, 0.0d0, m, x, z, 1, w, rw, iw, i3, info )
1260 CALL chkxer(
'ZHBEVX', infot, nout, lerr, ok )
1262 CALL zhbevx(
'V',
'I',
'U', 1, 0, a, 1, q, 1, 0.0d0, 0.0d0, 1,
1263 $ 2, 0.0d0, m, x, z, 1, w, rw, iw, i3, info )
1264 CALL chkxer(
'ZHBEVX', infot, nout, lerr, ok )
1266 CALL zhbevx(
'V',
'A',
'U', 2, 0, a, 1, q, 2, 0.0d0, 0.0d0, 0,
1267 $ 0, 0.0d0, m, x, z, 1, w, rw, iw, i3, info )
1268 CALL chkxer(
'ZHBEVX', infot, nout, lerr, ok )
1273 srnamt =
'ZHBEVX_2STAGE'
1276 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
1277 $ m, x, z, 1, w, 0, rw, iw, i3, info )
1280 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
1281 $ m, x, z, 1, w, 0, rw, iw, i3, info )
1282 CALL chkxer(
'ZHBEVX_2STAGE', infot, nout, lerr, ok )
1285 $ 0.0d0, 1.0d0, 1, 0, 0.0d0,
1286 $ m, x, z, 1, w, 0, rw, iw, i3, info )
1287 CALL chkxer(
'ZHBEVX_2STAGE', infot, nout, lerr, ok )
1290 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
1291 $ m, x, z, 1, w, 0, rw, iw, i3, info )
1294 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
1295 $ m, x, z, 1, w, 0, rw, iw, i3, info )
1296 CALL chkxer(
'ZHBEVX_2STAGE', infot, nout, lerr, ok )
1299 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
1300 $ m, x, z, 1, w, 0, rw, iw, i3, info )
1301 CALL chkxer(
'ZHBEVX_2STAGE', infot, nout, lerr, ok )
1304 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
1305 $ m, x, z, 2, w, 0, rw, iw, i3, info )
1306 CALL chkxer(
'ZHBEVX_2STAGE', infot, nout, lerr, ok )
1314 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
1315 $ m, x, z, 1, w, 0, rw, iw, i3, info )
1316 CALL chkxer(
'ZHBEVX_2STAGE', infot, nout, lerr, ok )
1319 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
1320 $ m, x, z, 1, w, 0, rw, iw, i3, info )
1321 CALL chkxer(
'ZHBEVX_2STAGE', infot, nout, lerr, ok )
1324 $ 0.0d0, 0.0d0, 1, 2, 0.0d0,
1325 $ m, x, z, 1, w, 0, rw, iw, i3, info )
1326 CALL chkxer(
'ZHBEVX_2STAGE', infot, nout, lerr, ok )
1329 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
1330 $ m, x, z, 0, w, 0, rw, iw, i3, info )
1331 CALL chkxer(
'ZHBEVX_2STAGE', infot, nout, lerr, ok )
1334 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
1335 $ m, x, z, 1, w, 0, rw, iw, i3, info )
1336 CALL chkxer(
'ZHBEVX_2STAGE', infot, nout, lerr, ok )
1343 WRITE( nout, fmt = 9999 )path, nt
1345 WRITE( nout, fmt = 9998 )path
1348 9999
FORMAT( 1x, a3,
' routines passed the tests of the error exits',
1349 $
' (', i3,
' tests done)' )
1350 9998
FORMAT(
' *** ', a3,
' routines failed the tests of the error ',
subroutine chkxer(srnamt, infot, nout, lerr, ok)
subroutine zhbev_2stage(jobz, uplo, n, kd, ab, ldab, w, z, ldz, work, lwork, rwork, info)
ZHBEV_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER m...
subroutine zhbev(jobz, uplo, n, kd, ab, ldab, w, z, ldz, work, rwork, info)
ZHBEV computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrices
subroutine zhbevd_2stage(jobz, uplo, n, kd, ab, ldab, w, z, ldz, work, lwork, rwork, lrwork, iwork, liwork, info)
ZHBEVD_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER ...
subroutine zhbevd(jobz, uplo, n, kd, ab, ldab, w, z, ldz, work, lwork, rwork, lrwork, iwork, liwork, info)
ZHBEVD computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrice...
subroutine zhbevx_2stage(jobz, range, uplo, n, kd, ab, ldab, q, ldq, vl, vu, il, iu, abstol, m, w, z, ldz, work, lwork, rwork, iwork, ifail, info)
ZHBEVX_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER ...
subroutine zhbevx(jobz, range, uplo, n, kd, ab, ldab, q, ldq, vl, vu, il, iu, abstol, m, w, z, ldz, work, rwork, iwork, ifail, info)
ZHBEVX computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrice...
subroutine zhbtrd(vect, uplo, n, kd, ab, ldab, d, e, q, ldq, work, info)
ZHBTRD
subroutine zheev_2stage(jobz, uplo, n, a, lda, w, work, lwork, rwork, info)
ZHEEV_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for HE matr...
subroutine zheev(jobz, uplo, n, a, lda, w, work, lwork, rwork, info)
ZHEEV computes the eigenvalues and, optionally, the left and/or right eigenvectors for HE matrices
subroutine zheevd_2stage(jobz, uplo, n, a, lda, w, work, lwork, rwork, lrwork, iwork, liwork, info)
ZHEEVD_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for HE mat...
subroutine zheevd(jobz, uplo, n, a, lda, w, work, lwork, rwork, lrwork, iwork, liwork, info)
ZHEEVD computes the eigenvalues and, optionally, the left and/or right eigenvectors for HE matrices
subroutine zheevr_2stage(jobz, range, uplo, n, a, lda, vl, vu, il, iu, abstol, m, w, z, ldz, isuppz, work, lwork, rwork, lrwork, iwork, liwork, info)
ZHEEVR_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for HE mat...
subroutine zheevr(jobz, range, uplo, n, a, lda, vl, vu, il, iu, abstol, m, w, z, ldz, isuppz, work, lwork, rwork, lrwork, iwork, liwork, info)
ZHEEVR computes the eigenvalues and, optionally, the left and/or right eigenvectors for HE matrices
subroutine zheevx_2stage(jobz, range, uplo, n, a, lda, vl, vu, il, iu, abstol, m, w, z, ldz, work, lwork, rwork, iwork, ifail, info)
ZHEEVX_2STAGE computes the eigenvalues and, optionally, the left and/or right eigenvectors for HE mat...
subroutine zheevx(jobz, range, uplo, n, a, lda, vl, vu, il, iu, abstol, m, w, z, ldz, work, lwork, rwork, iwork, ifail, info)
ZHEEVX computes the eigenvalues and, optionally, the left and/or right eigenvectors for HE matrices
subroutine zhetd2(uplo, n, a, lda, d, e, tau, info)
ZHETD2 reduces a Hermitian matrix to real symmetric tridiagonal form by an unitary similarity transfo...
subroutine zhetrd_2stage(vect, uplo, n, a, lda, d, e, tau, hous2, lhous2, work, lwork, info)
ZHETRD_2STAGE
subroutine zhetrd_hb2st(stage1, vect, uplo, n, kd, ab, ldab, d, e, hous, lhous, work, lwork, info)
ZHETRD_HB2ST reduces a complex Hermitian band matrix A to real symmetric tridiagonal form T
subroutine zhetrd_he2hb(uplo, n, kd, a, lda, ab, ldab, tau, work, lwork, info)
ZHETRD_HE2HB
subroutine zhetrd(uplo, n, a, lda, d, e, tau, work, lwork, info)
ZHETRD
subroutine zhpev(jobz, uplo, n, ap, w, z, ldz, work, rwork, info)
ZHPEV computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrices
subroutine zhpevd(jobz, uplo, n, ap, w, z, ldz, work, lwork, rwork, lrwork, iwork, liwork, info)
ZHPEVD computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrice...
subroutine zhpevx(jobz, range, uplo, n, ap, vl, vu, il, iu, abstol, m, w, z, ldz, work, rwork, iwork, ifail, info)
ZHPEVX computes the eigenvalues and, optionally, the left and/or right eigenvectors for OTHER matrice...
subroutine zhptrd(uplo, n, ap, d, e, tau, info)
ZHPTRD
subroutine zpteqr(compz, n, d, e, z, ldz, work, info)
ZPTEQR
subroutine zstedc(compz, n, d, e, z, ldz, work, lwork, rwork, lrwork, iwork, liwork, info)
ZSTEDC
subroutine zstein(n, d, e, m, w, iblock, isplit, z, ldz, work, iwork, ifail, info)
ZSTEIN
subroutine zsteqr(compz, n, d, e, z, ldz, work, info)
ZSTEQR
subroutine zungtr(uplo, n, a, lda, tau, work, lwork, info)
ZUNGTR
subroutine zunmtr(side, uplo, trans, m, n, a, lda, tau, c, ldc, work, lwork, info)
ZUNMTR
subroutine zupgtr(uplo, n, ap, tau, q, ldq, work, info)
ZUPGTR
subroutine zupmtr(side, uplo, trans, m, n, ap, tau, c, ldc, work, info)
ZUPMTR
subroutine zerrst(path, nunit)
ZERRST