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
155 CALL zhetrd(
'U', 0, a, 1, d, e, tau, w, 0, info )
156 CALL chkxer(
'ZHETRD', infot, nout, lerr, ok )
161 srnamt =
'ZHETRD_2STAGE'
165 CALL chkxer(
'ZHETRD_2STAGE', infot, nout, lerr, ok )
169 CALL chkxer(
'ZHETRD_2STAGE', infot, nout, lerr, ok )
173 CALL chkxer(
'ZHETRD_2STAGE', infot, nout, lerr, ok )
177 CALL chkxer(
'ZHETRD_2STAGE', infot, nout, lerr, ok )
181 CALL chkxer(
'ZHETRD_2STAGE', infot, nout, lerr, ok )
185 CALL chkxer(
'ZHETRD_2STAGE', infot, nout, lerr, ok )
189 CALL chkxer(
'ZHETRD_2STAGE', infot, nout, lerr, ok )
194 srnamt =
'ZHETRD_HE2HB'
196 CALL zhetrd_he2hb(
'/', 0, 0, a, 1, c, 1, tau, w, 1, info )
199 CALL ZHETRD_HE2HB( 'u
', -1, 0, A, 1, C, 1, TAU, W, 1, INFO )
202 CALL zhetrd_he2hb(
'U', 0, -1, a, 1, c, 1, tau, w, 1, info )
203 CALL chkxer(
'ZHETRD_HE2HB', infot, nout, lerr, ok )
205 CALL zhetrd_he2hb(
'U', 2, 0, a, 1, c, 1, tau, w, 1, info )
206 CALL chkxer(
'ZHETRD_HE2HB', infot, nout, lerr, ok )
208 CALL zhetrd_he2hb(
'U', 0, 2, a, 1, c, 1, tau, w, 1, info )
209 CALL chkxer(
'ZHETRD_HE2HB', infot, nout, lerr, ok )
211 CALL zhetrd_he2hb(
'U', 0, 0, a, 1, c, 1, tau, w, 0, info )
212 CALL chkxer(
'ZHETRD_HE2HB', infot, nout, lerr, ok )
217 srnamt =
'ZHETRD_HB2ST'
221 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
225 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
229 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
233 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
237 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
241 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
245 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
249 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
253 CALL chkxer(
'ZHETRD_HB2ST', infot, nout, lerr, ok )
260 CALL zungtr(
'/', 0, a, 1, tau, w, 1, info )
261 CALL chkxer(
'ZUNGTR', infot, nout, lerr, ok )
263 CALL zungtr(
'U', -1, a, 1, tau, w, 1, info )
264 CALL chkxer(
'ZUNGTR', infot, nout, lerr, ok )
266 CALL zungtr(
'U', 2, a, 1, tau, w, 1, info )
267 CALL chkxer(
'ZUNGTR', infot, nout, lerr, ok )
269 CALL zungtr(
'U', 3, a, 3, tau, w, 1, info )
270 CALL chkxer(
'ZUNGTR', infot, nout, lerr, ok )
277 CALL zunmtr(
'/',
'U',
'N', 0, 0, a, 1, tau, c, 1, w, 1, info )
278 CALL chkxer(
'ZUNMTR', infot, nout, lerr, ok )
280 CALL zunmtr(
'L',
'/',
'N', 0, 0, a, 1, tau, c, 1, w, 1, info )
281 CALL chkxer(
'ZUNMTR', infot, nout, lerr, ok )
283 CALL zunmtr(
'L',
'U',
'/', 0, 0, a, 1, tau, c, 1, w, 1, info )
284 CALL chkxer(
'ZUNMTR', infot, nout, lerr, ok )
286 CALL zunmtr(
'L',
'U',
'N', -1, 0, a, 1, tau, c, 1, w, 1,
288 CALL chkxer(
'ZUNMTR', infot, nout, lerr, ok )
290 CALL zunmtr(
'L',
'U',
'N', 0, -1, a, 1, tau, c, 1, w, 1,
292 CALL chkxer(
'ZUNMTR', infot, nout, lerr, ok )
294 CALL zunmtr(
'L',
'U',
'N', 2, 0, a, 1, tau, c, 2, w, 1, info )
295 CALL chkxer(
'ZUNMTR', infot, nout, lerr, ok )
297 CALL zunmtr( 'r
', 'u
', 'n
', 0, 2, A, 1, TAU, C, 1, W, 1, INFO )
298 CALL CHKXER( 'zunmtr', INFOT, NOUT, LERR, OK )
300 CALL ZUNMTR( 'l
', 'u
', 'n
', 2, 0, A, 2, TAU, C, 1, W, 1, INFO )
301 CALL CHKXER( 'zunmtr', INFOT, NOUT, LERR, OK )
303 CALL ZUNMTR( 'l
', 'u
', 'n
', 0, 2, A, 1, TAU, C, 1, W, 1, INFO )
304 CALL CHKXER( 'zunmtr', INFOT, NOUT, LERR, OK )
306 CALL ZUNMTR( 'r
', 'u
', 'n', 2, 0, a, 1, tau, c, 2, w, 1, info )
307 CALL chkxer(
'ZUNMTR', infot, nout, lerr, ok )
314 CALL zhptrd(
'/', 0, a, d, e, tau, info )
315 CALL chkxer(
'ZHPTRD', infot, nout, lerr, ok )
317 CALL zhptrd(
'U', -1, a, d, e, tau, info )
318 CALL chkxer(
'ZHPTRD', infot, nout, lerr
325 CALL zupgtr(
'/', 0, a, tau, z, 1, w, info )
326 CALL chkxer(
'ZUPGTR', infot, nout, lerr, ok )
328 CALL zupgtr( 'u
', -1, A, TAU, Z, 1, W, INFO )
329 CALL CHKXER( 'zupgtr', INFOT, NOUT, LERR, OK )
331 CALL ZUPGTR( 'u
', 2, A, TAU, Z, 1, W, INFO )
332 CALL CHKXER( 'zupgtr', INFOT, NOUT, LERR, OK )
339 CALL ZUPMTR( '/
', 'u
', 'n
', 0, 0, A, TAU, C, 1, W, INFO )
340 CALL CHKXER( 'zupmtr', INFOT, NOUT, LERR, OK )
342 CALL ZUPMTR( 'l
', '/',
'N', 0, 0, a, tau, c, 1, w, info )
343 CALL chkxer(
'ZUPMTR', infot, nout, lerr, ok )
345 CALL zupmtr( 'l
', 'u
', '/
', 0, 0, A, TAU, C, 1, W, INFO )
346 CALL CHKXER( 'zupmtr', INFOT, NOUT, LERR, OK )
348 CALL ZUPMTR( 'l
', 'u
', 'n
', -1, 0, A, TAU, C, 1, W, INFO )
349 CALL CHKXER( 'zupmtr', INFOT, NOUT, LERR, OK )
351 CALL ZUPMTR( 'l
', 'u
', 'n
', 0, -1, A, TAU, C, 1, W, INFO )
352 CALL CHKXER( 'zupmtr', INFOT, NOUT, LERR, OK )
354 CALL ZUPMTR( 'l
', 'u
', 'n
', 2, 0, A, TAU, C, 1, W, INFO )
355 CALL CHKXER( 'zupmtr', INFOT, NOUT, LERR, OK )
362 CALL ZPTEQR( '/
', 0, D, E, Z, 1, RW, INFO )
363 CALL CHKXER( 'zpteqr', INFOT, NOUT, LERR, OK )
365 CALL ZPTEQR( 'n
', -1, D, E, Z, 1, RW, INFO )
366 CALL CHKXER( 'zpteqr', INFOT, NOUT, LERR, OK )
368 CALL ZPTEQR( 'v
', 2, D, E, Z, 1, RW, INFO )
369 CALL CHKXER( 'zpteqr', INFOT, NOUT, LERR, OK )
376 CALL ZSTEIN( -1, D, E, 0, X, I1, I2, Z, 1, RW, IW, I3, INFO )
377 CALL CHKXER( 'zstein', INFOT, NOUT, LERR, OK )
379 CALL ZSTEIN( 0, D, E, -1, X, I1, I2, Z, 1, RW, IW, I3, INFO )
380 CALL CHKXER( 'zstein', INFOT, NOUT, LERR, OK )
382 CALL ZSTEIN( 0, D, E, 1, X, I1, I2, Z, 1, RW, IW, I3, INFO )
383 CALL CHKXER( 'zstein', INFOT, NOUT, LERR, OK )
385 CALL ZSTEIN( 2, D, E, 0, X, I1, I2, Z, 1, RW, IW, I3, INFO )
386 CALL CHKXER( 'zstein', INFOT, NOUT, LERR, OK )
393 CALL ZSTEQR( '/
', 0, D, E, Z, 1, RW, INFO )
394 CALL CHKXER( 'zsteqr', INFOT, NOUT, LERR, OK )
396 CALL ZSTEQR( 'n
', -1, D, E, Z, 1, RW, INFO )
397 CALL CHKXER( 'zsteqr', INFOT, NOUT, LERR, OK )
399 CALL ZSTEQR( 'v
', 2, D, E, Z, 1, RW, INFO )
400 CALL CHKXER( 'zsteqr', INFOT, NOUT, LERR, OK )
407 CALL ZSTEDC( '/
', 0, D, E, Z, 1, W, 1, RW, 1, IW, 1, INFO )
408 CALL CHKXER( 'zstedc', INFOT, NOUT, LERR, OK )
410 CALL ZSTEDC( 'n
', -1, D, E, Z, 1, W, 1, RW, 1, IW, 1, INFO )
411 CALL CHKXER( 'zstedc', INFOT, NOUT, LERR, OK )
413 CALL ZSTEDC( 'v
', 2, D, E, Z, 1, W, 4, RW, 23, IW, 28, INFO )
414 CALL CHKXER( 'zstedc', INFOT, NOUT, LERR, OK )
416 CALL ZSTEDC( 'n
', 2, D, E, Z, 1, W, 0, RW, 1, IW, 1, INFO )
417 CALL CHKXER( 'zstedc', INFOT, NOUT, LERR, OK )
419 CALL ZSTEDC( 'v
', 2, D, E, Z, 2, W, 0, RW, 23, IW, 28, INFO )
420 CALL CHKXER( 'zstedc', INFOT, NOUT, LERR, OK )
422 CALL ZSTEDC( 'n
', 2, D, E, Z, 1, W, 1, RW, 0, IW, 1, INFO )
423 CALL CHKXER( 'zstedc', INFOT, NOUT, LERR, OK )
425 CALL ZSTEDC( 'i
', 2, D, E, Z, 2, W, 1, RW, 1, IW, 12, INFO )
426 CALL CHKXER( 'zstedc', INFOT, NOUT, LERR, OK )
428 CALL ZSTEDC( 'v
', 2, D, E, Z, 2, W, 4, RW, 1, IW, 28, INFO )
429 CALL CHKXER( 'zstedc', INFOT, NOUT, LERR, OK )
431 CALL ZSTEDC( 'n
', 2, D, E, Z, 1, W, 1, RW, 1, IW, 0, INFO )
432 CALL CHKXER( 'zstedc', INFOT, NOUT, LERR, OK )
434 CALL ZSTEDC( 'i
', 2, D, E, Z, 2, W, 1, RW, 23, IW, 0, INFO )
435 CALL CHKXER( 'zstedc', INFOT, NOUT, LERR, OK )
437 CALL ZSTEDC( 'v
', 2, D, E, Z, 2, W, 4, RW, 23, IW, 0, INFO )
438 CALL CHKXER( 'zstedc', INFOT, NOUT, LERR, OK )
445 CALL ZHEEVD( '/
', 'u
', 0, A, 1, X, W, 1, RW, 1, IW, 1, INFO )
446 CALL CHKXER( 'zheevd', INFOT, NOUT, LERR, OK )
448 CALL ZHEEVD( 'n
', '/
', 0, A, 1, X, W, 1, RW, 1, IW, 1, INFO )
449 CALL CHKXER( 'zheevd', INFOT, NOUT, LERR, OK )
451 CALL ZHEEVD( 'n
', 'u
', -1, A, 1, X, W, 1, RW, 1, IW, 1, INFO )
452 CALL CHKXER( 'zheevd', INFOT, NOUT, LERR, OK )
454 CALL ZHEEVD( 'n
', 'u
', 2, A, 1, X, W, 3, RW, 2, IW, 1, INFO )
455 CALL CHKXER( 'zheevd', INFOT, NOUT, LERR, OK )
457 CALL ZHEEVD( 'n
', 'u
', 1, A, 1, X, W, 0, RW, 1, IW, 1, INFO )
458 CALL CHKXER( 'zheevd', INFOT, NOUT, LERR, OK )
460 CALL ZHEEVD( 'n
', 'u
', 2, A, 2, X, W, 2, RW, 2, IW, 1, INFO )
461 CALL CHKXER( 'zheevd', INFOT, NOUT, LERR, OK )
463 CALL ZHEEVD( 'v
', 'u
', 2, A, 2, X, W, 3, RW, 25, IW, 12, INFO )
464 CALL CHKXER( 'zheevd', INFOT, NOUT, LERR, OK )
466 CALL ZHEEVD( 'n
', 'u
', 1, A, 1, X, W, 1, RW, 0, IW, 1, INFO )
467 CALL CHKXER( 'zheevd', INFOT, NOUT, LERR, OK )
469 CALL ZHEEVD( 'n
', 'u
', 2, A, 2, X, W, 3, RW, 1, IW, 1, INFO )
470 CALL CHKXER( 'zheevd', INFOT, NOUT, LERR, OK )
472 CALL ZHEEVD( 'v
', 'u
', 2, A, 2, X, W, 8, RW, 18, IW, 12, INFO )
473 CALL CHKXER( 'zheevd', INFOT, NOUT, LERR, OK )
475 CALL ZHEEVD( 'n
', 'u
', 1, A, 1, X, W, 1, RW, 1, IW, 0, INFO )
476 CALL CHKXER( 'zheevd', INFOT, NOUT, LERR, OK )
478 CALL ZHEEVD( 'v
', 'u
', 2, A, 2, X, W, 8, RW, 25, IW, 11, INFO )
479 CALL CHKXER( 'zheevd', INFOT, NOUT, LERR, OK )
486 CALL ZHEEVD_2STAGE( '/
', 'u
', 0, A, 1, X, W, 1,
487 $ RW, 1, IW, 1, INFO )
490 CALL ZHEEVD_2STAGE( 'v
', 'u
', 0, A, 1, X, W, 1,
491 $ RW, 1, IW, 1, INFO )
494 CALL ZHEEVD_2STAGE( 'n
', '/
', 0, A, 1, X, W, 1,
495 $ RW, 1, IW, 1, INFO )
498 CALL ZHEEVD_2STAGE( 'n
', 'u
', -1, A, 1, X, W, 1,
499 $ RW, 1, IW, 1, INFO )
502 CALL ZHEEVD_2STAGE( 'n
', 'u
', 2, A, 1, X, W, 3,
503 $ RW, 2, IW, 1, INFO )
506 CALL ZHEEVD_2STAGE( 'n
', 'u
', 1, A, 1, X, W, 0,
507 $ RW, 1, IW, 1, INFO )
510 CALL ZHEEVD_2STAGE( 'n
', 'u
', 2, A, 2, X, W, 2,
511 $ RW, 2, IW, 1, INFO )
518 CALL ZHEEVD_2STAGE( 'n
', 'u
', 1, A, 1, X, W, 1,
519 $ RW, 0, IW, 1, INFO )
522 CALL ZHEEVD_2STAGE( 'n
', 'u
', 2, A, 2, X, W, 25,
523 $ RW, 1, IW, 1, INFO )
530 CALL ZHEEVD_2STAGE( 'n
', 'u
', 1, A, 1, X, W, 1,
531 $ RW, 1, IW, 0, INFO )
543 CALL ZHEEV( '/
', 'u
', 0, A, 1, X, W, 1, RW, INFO )
544 CALL CHKXER( 'zheev ', INFOT, NOUT, LERR, OK )
546 CALL ZHEEV( 'n
', '/
', 0, A, 1, X, W, 1, RW, INFO )
547 CALL CHKXER( 'zheev ', INFOT, NOUT, LERR, OK )
549 CALL ZHEEV( 'n
', 'u
', -1, A, 1, X, W, 1, RW, INFO )
550 CALL CHKXER( 'zheev ', INFOT, NOUT, LERR, OK )
552 CALL ZHEEV( 'n
', 'u
', 2, A, 1, X, W, 3, RW, INFO )
553 CALL CHKXER( 'zheev ', INFOT, NOUT, LERR, OK )
555 CALL ZHEEV( 'n
', 'u
', 2, A, 2, X, W, 2, RW, INFO )
556 CALL CHKXER( 'zheev ', INFOT, NOUT, LERR, OK )
563 CALL ZHEEV_2STAGE( '/
', 'u
', 0, A, 1, X, W, 1, RW, INFO )
566 CALL ZHEEV_2STAGE( 'v
', 'u
', 0, A, 1, X, W, 1, RW, INFO )
569 CALL ZHEEV_2STAGE( 'n
', '/
', 0, A, 1, X, W, 1, RW, INFO )
572 CALL ZHEEV_2STAGE( 'n
', 'u
', -1, A, 1, X, W, 1, RW, INFO )
575 CALL ZHEEV_2STAGE( 'n
', 'u
', 2, A, 1, X, W, 3, RW, INFO )
578 CALL ZHEEV_2STAGE( 'n
', 'u
', 2, A, 2, X, W, 2, RW, INFO )
586 CALL ZHEEVX( '/
', 'a
', 'u
', 0, A, 1, 0.0D0, 0.0D0, 0, 0, 0.0D0,
587 $ M, X, Z, 1, W, 1, RW, IW, I3, INFO )
588 CALL CHKXER( 'zheevx', INFOT, NOUT, LERR, OK )
590 CALL ZHEEVX( 'v
', '/
', 'u
', 0, A, 1, 0.0D0, 1.0D0, 1, 0, 0.0D0,
591 $ M, X, Z, 1, W, 1, RW, IW, I3, INFO )
592 CALL CHKXER( 'zheevx', INFOT, NOUT, LERR, OK )
594 CALL ZHEEVX( 'v
', 'a
', '/
', 0, A, 1, 0.0D0, 0.0D0, 0, 0, 0.0D0,
595 $ M, X, Z, 1, W, 1, RW, IW, I3, INFO )
597 CALL ZHEEVX( 'v
', 'a
', 'u
', -1, A, 1, 0.0D0, 0.0D0, 0, 0,
598 $ 0.0D0, M, X, Z, 1, W, 1, RW, IW, I3, INFO )
599 CALL CHKXER( 'zheevx', INFOT, NOUT, LERR, OK )
601 CALL ZHEEVX( 'v
', 'a
', 'u
', 2, A, 1, 0.0D0, 0.0D0, 0, 0, 0.0D0,
602 $ M, X, Z, 2, W, 3, RW, IW, I3, INFO )
603 CALL CHKXER( 'zheevx', INFOT, NOUT, LERR, OK )
605 CALL ZHEEVX( 'v
', 'v
', 'u
', 1, A, 1, 0.0D0, 0.0D0, 0, 0, 0.0D0,
606 $ M, X, Z, 1, W, 1, RW, IW, I3, INFO )
607 CALL CHKXER( 'zheevx', INFOT, NOUT, LERR, OK )
609 CALL ZHEEVX( 'v
', 'i
', 'u
', 1, A, 1, 0.0D0, 0.0D0, 0, 0, 0.0D0,
610 $ M, X, Z, 1, W, 1, RW, IW, I3, INFO )
611 CALL CHKXER( 'zheevx', INFOT, NOUT, LERR, OK )
613 CALL ZHEEVX( 'v
', 'i
', 'u
', 2, A, 2, 0.0D0, 0.0D0, 2, 1, 0.0D0,
614 $ M, X, Z, 2, W, 3, RW, IW, I3, INFO )
615 CALL CHKXER( 'zheevx', INFOT, NOUT, LERR, OK )
617 CALL ZHEEVX( 'v
', 'a
', 'u
', 2, A, 2, 0.0D0, 0.0D0, 0, 0, 0.0D0,
618 $ M, X, Z, 1, W, 3, RW, IW, I3, INFO )
619 CALL CHKXER( 'zheevx', INFOT, NOUT, LERR, OK )
621 CALL ZHEEVX( 'v
', 'a
', 'u
', 2, A, 2, 0.0D0, 0.0D0, 0, 0, 0.0D0,
622 $ M, X, Z, 2, W, 2, RW, IW, I1, INFO )
623 CALL CHKXER( 'zheevx', INFOT, NOUT, LERR, OK )
630 CALL ZHEEVX_2STAGE( '/
', 'a
', 'u
', 0, A, 1,
631 $ 0.0D0, 0.0D0, 0, 0, 0.0D0,
632 $ M, X, Z, 1, W, 1, RW, IW, I3, INFO )
635 CALL ZHEEVX_2STAGE( 'v
', 'a
', 'u
', 0, A, 1,
636 $ 0.0D0, 0.0D0, 0, 0, 0.0D0,
637 $ M, X, Z, 1, W, 1, RW, IW, I3, INFO )
640 CALL ZHEEVX_2STAGE( 'n
', '/
', 'u
', 0, A, 1,
641 $ 0.0D0, 1.0D0, 1, 0, 0.0D0,
642 $ M, X, Z, 1, W, 1, RW, IW, I3, INFO )
645 CALL ZHEEVX_2STAGE( 'n
', 'a
', '/
', 0, A, 1,
646 $ 0.0D0, 0.0D0, 0, 0, 0.0D0,
647 $ M, X, Z, 1, W, 1, RW, IW, I3, INFO )
649 CALL ZHEEVX_2STAGE( 'n
', 'a
', 'u', -1, a, 1,
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, 0.0d0, 0, 0, 0.0d0,
656 $ m, x, z, 2, w, 3, rw, iw, i3, info )
659 CALL ZHEEVX_2STAGE( 'n
', 'v
', 'u
', 1, A, 1,
660 $ 0.0D0, 0.0D0, 0, 0, 0.0D0,
661 $ M, X, Z, 1, W, 1, RW, IW, I3, INFO )
664 CALL ZHEEVX_2STAGE( 'n
', 'i
', 'u
', 1, A, 1,
665 $ 0.0D0, 0.0D0, 0, 0, 0.0D0,
666 $ M, X, Z, 1, W, 1, RW, IW, I3, INFO )
670 $ 0.0d0, 0.0d0, 2, 1, 0.0d0,
671 $ m, x, z, 2, w, 3, rw, iw, i3, info )
672 CALL chkxer(
'ZHEEVX_2STAGE', infot, nout, lerr, ok )
675 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
676 $ m, x, z, 0, w, 3, rw, iw, i3, info )
677 CALL chkxer(
'ZHEEVX_2STAGE', infot, nout, lerr, ok )
680 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
681 $ m, x, z, 2, w, 0, rw, iw, i1, info )
682 CALL chkxer(
'ZHEEVX_2STAGE', infot, nout, lerr, ok )
690 CALL zheevr(
'/',
'A',
'U', 0, a, 1, 0.0d0, 0.0d0, 1, 1, 0.0d0,
691 $ m, r, z, 1, iw, q, 2*n, rw, 24*n, iw( 2*n+1 ),
693 CALL chkxer(
'ZHEEVR', infot, nout, lerr, ok )
695 CALL zheevr(
'V',
'/',
'U', 0, a, 1, 0.0d0, 0.0d0, 1, 1, 0.0d0,
696 $ m, r, z, 1, iw, q, 2*n, rw, 24*n, iw( 2*n+1 ),
698 CALL chkxer(
'ZHEEVR', infot, nout, lerr, ok )
700 CALL zheevr(
'V',
'A',
'/', -1, a, 1, 0.0d0, 0.0d0, 1, 1,
701 $ 0.0d0, m, r, z, 1, iw, q, 2*n, rw, 24*n,
702 $ iw( 2*n+1 ), 10*n, info )
703 CALL chkxer(
'ZHEEVR', infot, nout, lerr, ok
705 CALL zheevr( 'v
', 'a
', 'u
', -1, A, 1, 0.0D0, 0.0D0, 1, 1,
706 $ 0.0D0, M, R, Z, 1, IW, Q, 2*N, RW, 24*N,
707 $ IW( 2*N+1 ), 10*N, INFO )
708 CALL CHKXER( 'zheevr', INFOT, NOUT, LERR, OK )
710 CALL ZHEEVR( 'v
', 'a
', 'u
', 2, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
711 $ M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
713 CALL CHKXER( 'zheevr', INFOT, NOUT, LERR, OK )
715 CALL ZHEEVR( 'v
', 'v
', 'u
', 1, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
716 $ M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
718 CALL CHKXER( 'zheevr', INFOT, NOUT, LERR, OK )
720 CALL ZHEEVR( 'v
', 'i
', 'u
', 1, A, 1, 0.0D0, 0.0D0, 0, 1, 0.0D0,
721 $ M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
723 CALL CHKXER( 'zheevr', INFOT, NOUT, LERR, OK )
726 CALL ZHEEVR( 'v
', 'i
', 'u
', 2, A, 2, 0.0D0, 0.0D0, 2, 1, 0.0D0,
727 $ M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
729 CALL CHKXER( 'zheevr', INFOT, NOUT, LERR, OK )
731 CALL ZHEEVR( 'v
', 'i
', 'u
', 1, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
732 $ M, R, Z, 0, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
734 CALL CHKXER( 'zheevr', INFOT, NOUT, LERR, OK )
736 CALL ZHEEVR( 'v
', 'i
', 'u
', 1, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
737 $ M, R, Z, 1, IW, Q, 2*N-1, RW, 24*N, IW( 2*N+1 ),
739 CALL CHKXER( 'zheevr', INFOT, NOUT, LERR, OK )
741 CALL ZHEEVR( 'v
', 'i
', 'u
', 1, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
742 $ M, R, Z, 1, IW, Q, 2*N, RW, 24*N-1, IW( 2*N-1 ),
744 CALL CHKXER( 'zheevr', INFOT, NOUT, LERR, OK )
746 CALL ZHEEVR( 'v
', 'i
', 'u
', 1, A, 1, 0.0D0, 0.0D0, 1, 1, 0.0D0,
747 $ M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW, 10*N-1,
749 CALL CHKXER( 'zheevr', INFOT, NOUT, LERR, OK )
757 CALL ZHEEVR_2STAGE( '/
', 'a
', 'u
', 0, A, 1,
758 $ 0.0D0, 0.0D0, 1, 1, 0.0D0,
759 $ M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
763 CALL ZHEEVR_2STAGE( 'v
', 'a
', 'u
', 0, A, 1,
764 $ 0.0D0, 0.0D0, 1, 1, 0.0D0,
765 $ M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
769 CALL ZHEEVR_2STAGE( 'n
', '/
', 'u
', 0, A, 1,
770 $ 0.0D0, 0.0D0, 1, 1, 0.0D0,
771 $ M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
775 CALL ZHEEVR_2STAGE( 'n
', 'a
', '/
', -1, A, 1,
776 $ 0.0D0, 0.0D0, 1, 1, 0.0D0,
777 $ M, R, Z, 1, IW, Q, 2*N, RW, 24*N,
778 $ IW( 2*N+1 ), 10*N, INFO )
781 CALL ZHEEVR_2STAGE( 'n
', 'a
', 'u
', -1, A, 1,
782 $ 0.0D0, 0.0D0, 1, 1, 0.0D0,
783 $ M, R, Z, 1, IW, Q, 2*N, RW, 24*N,
784 $ IW( 2*N+1 ), 10*N, INFO )
787 CALL ZHEEVR_2STAGE( 'n
', 'a
', 'u
', 2, A, 1,
788 $ 0.0D0, 0.0D0, 1, 1, 0.0D0,
789 $ M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
793 CALL ZHEEVR_2STAGE( 'n
', 'v
', 'u
', 1, A, 1,
794 $ 0.0D0, 0.0D0, 1, 1, 0.0D0,
795 $ M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
799 CALL ZHEEVR_2STAGE( 'n
', 'i
', 'u
', 1, A, 1,
800 $ 0.0D0, 0.0D0, 0, 1, 0.0D0,
801 $ M, R, Z, 1, IW, Q, 2*N, RW, 24*N, IW( 2*N+1 ),
805 CALL ZHEEVR_2STAGE( 'n
', 'i
', 'u', 2, a, 2,
806 $ 0.0d0, 0.0d0, 2, 1, 0.0d0,
807 $ m, r, z, 1, iw, q, 2*n, rw, 24*n, iw( 2*n+1 ),
809 CALL chkxer(
'ZHEEVR_2STAGE', infot, nout, lerr, ok )
812 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
813 $ m, r, z, 0, iw, q, 2*n, rw, 24*n, iw( 2*n+1 ),
815 CALL chkxer(
'ZHEEVR_2STAGE', infot, nout, lerr, ok )
818 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
819 $ m, r, z, 1, iw, q, 2*n-1, rw, 24*n, iw( 2*n+1 ),
821 CALL chkxer(
'ZHEEVR_2STAGE', infot, nout, lerr, ok )
824 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
825 $ m, r, z, 1, iw, q, 26*n, rw, 24*n-1, iw( 2*n-1 ),
827 CALL chkxer(
'ZHEEVR_2STAGE', infot, nout, lerr, ok )
830 $ 0.0d0, 0.0d0, 1, 1, 0.0d0,
831 $ m, r, z, 1, iw, q, 26*n, rw, 24*n, iw, 10*n-1,
833 CALL chkxer(
'ZHEEVR_2STAGE', infot, nout, lerr, ok )
840 CALL zhpevd(
'/',
'U', 0, a, x, z, 1, w, 1, rw, 1, iw, 1,
842 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
844 CALL zhpevd(
'N',
'/', 0, a, x, z, 1, w, 1, rw, 1, iw, 1,
846 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
848 CALL zhpevd(
'N',
'U', -1, a, x, z, 1, w, 1, rw, 1, iw, 1,
850 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
852 CALL zhpevd(
'V',
'U', 2, a, x, z, 1, w, 4, rw, 25, iw, 12,
854 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
856 CALL zhpevd(
'N',
'U', 1, a, x, z, 1, w, 0, rw, 1, iw, 1,
858 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
860 CALL zhpevd(
'N',
'U', 2, a, x, z, 2, w, 1, rw, 2, iw, 1,
862 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
864 CALL zhpevd(
'V',
'U', 2, a, x, z, 2, w, 2, rw, 25, iw, 12,
866 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
868 CALL zhpevd(
'N',
'U', 1, a, x, z, 1, w, 1, rw, 0, iw, 1,
870 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
872 CALL zhpevd(
'N',
'U', 2, a, x, z, 2, w, 2, rw, 1, iw, 1,
874 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
876 CALL zhpevd(
'V',
'U', 2, a, x, z, 2, w, 4, rw, 18, iw, 12,
878 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
880 CALL zhpevd(
'N',
'U', 1, a, x, z, 1, w, 1, rw, 1, iw, 0,
882 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
884 CALL zhpevd(
'N',
'U', 2, a, x, z, 2, w, 2, rw, 2, iw, 0,
886 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
888 CALL zhpevd(
'V',
'U', 2, a, x, z, 2, w, 4, rw, 25, iw, 2,
890 CALL chkxer(
'ZHPEVD', infot, nout, lerr, ok )
897 CALL zhpev(
'/',
'U', 0, a, x, z, 1, w, rw, info )
898 CALL chkxer(
'ZHPEV ', infot, nout, lerr, ok )
900 CALL zhpev(
'N',
'/', 0, a, x, z, 1, w, rw, info )
901 CALL chkxer(
'ZHPEV ', infot, nout, lerr, ok )
903 CALL zhpev(
'N',
'U', -1, a, x, z, 1, w, rw, info )
904 CALL chkxer(
'ZHPEV ', infot, nout, lerr, ok )
906 CALL zhpev(
'V',
'U', 2, a, x, z, 1, w, rw, info )
907 CALL chkxer(
'ZHPEV ', infot, nout, lerr, ok )
914 CALL ZHPEVX( '/
', 'a
', 'u
', 0, A, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
915 $ X, Z, 1, W, RW, IW, I3, INFO )
916 CALL CHKXER( 'zhpevx', INFOT, NOUT, LERR, OK )
918 CALL ZHPEVX( 'v
', '/
', 'u
', 0, A, 0.0D0, 1.0D0, 1, 0, 0.0D0, M,
919 $ X, Z, 1, W, RW, IW, I3, INFO )
920 CALL CHKXER( 'zhpevx', INFOT, NOUT, LERR, OK )
922 CALL ZHPEVX( 'v
', 'a
', '/
', 0, A, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
923 $ X, Z, 1, W, RW, IW, I3, INFO )
924 CALL CHKXER( 'zhpevx', INFOT, NOUT, LERR, OK )
926 CALL ZHPEVX( 'v
', 'a
', 'u
', -1, A, 0.0D0, 0.0D0, 0, 0, 0.0D0,
927 $ M, X, Z, 1, W, RW, IW, I3, INFO )
928 CALL CHKXER( 'zhpevx', INFOT, NOUT, LERR, OK )
930 CALL ZHPEVX( 'v
', 'v
', 'u
', 1, A, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
931 $ X, Z, 1, W, RW, IW, I3, INFO )
932 CALL CHKXER( 'zhpevx', INFOT, NOUT, LERR, OK )
934 CALL ZHPEVX( 'v
', 'i
', 'u
', 1, A, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
935 $ X, Z, 1, W, RW, IW, I3, INFO )
936 CALL CHKXER( 'zhpevx', INFOT, NOUT, LERR, OK )
938 CALL ZHPEVX( 'v
', 'i
', 'u
', 2, A, 0.0D0, 0.0D0, 2, 1, 0.0D0, M,
939 $ X, Z, 2, W, RW, IW, I3, INFO )
940 CALL CHKXER( 'zhpevx', INFOT, NOUT, LERR, OK )
942 CALL ZHPEVX( 'v
', 'a
', 'u
', 2, A, 0.0D0, 0.0D0, 0, 0, 0.0D0, M,
943 $ X, Z, 1, W, RW, IW, I3, INFO )
944 CALL CHKXER( 'zhpevx', INFOT, NOUT, LERR, OK )
949 ELSE IF( LSAMEN( 2, C2, 'hb
' ) ) THEN
955 CALL ZHBTRD( '/
', 'u
', 0, 0, A, 1, D, E, Z, 1, W, INFO )
956 CALL CHKXER( 'zhbtrd', INFOT, NOUT, LERR, OK )
958 CALL ZHBTRD( 'n
', '/
', 0, 0, A, 1, D, E, Z, 1, W, INFO )
959 CALL CHKXER( 'zhbtrd', INFOT, NOUT, LERR, OK )
961 CALL ZHBTRD( 'n
', 'u
', -1, 0, A, 1, D, E, Z, 1, W, INFO )
962 CALL CHKXER( 'zhbtrd', INFOT, NOUT, LERR, OK )
964 CALL ZHBTRD( 'n
', 'u
', 0, -1, A, 1, D, E, Z, 1, W, INFO )
965 CALL CHKXER( 'zhbtrd', INFOT, NOUT, LERR, OK )
967 CALL ZHBTRD( 'n
', 'u
', 1, 1, A, 1, D, E, Z, 1, W, INFO )
968 CALL CHKXER( 'zhbtrd', INFOT, NOUT, LERR, OK )
970 CALL ZHBTRD( 'v
', 'u
', 2, 0, A, 1, D, E, Z, 1, W, INFO )
971 CALL CHKXER( 'zhbtrd', INFOT, NOUT, LERR, OK )
978 CALL ZHETRD_HB2ST( '/
', 'n
', 'u
', 0, 0, A, 1, D, E,
982 CALL ZHETRD_HB2ST( 'n
', '/
', 'u
', 0, 0, A, 1, D, E,
986 CALL ZHETRD_HB2ST( 'n
', 'h
', 'u
', 0, 0, A, 1, D, E,
990 CALL ZHETRD_HB2ST( 'n
', 'n
', '/
', 0, 0, A, 1, D, E,
994 CALL ZHETRD_HB2ST( 'n
', 'n
', 'u
', -1, 0, A, 1, D, E,
998 CALL ZHETRD_HB2ST( 'n
', 'n
', 'u
', 0, -1, A, 1, D, E,
1002 CALL ZHETRD_HB2ST( 'n
', 'n
', 'u
', 0, 1, A, 1, D, E,
1003 $ C, 1, W, 1, INFO )
1006 CALL ZHETRD_HB2ST( 'n
', 'n
', 'u
', 0, 0, A, 1, D, E,
1007 $ C, 0, W, 1, INFO )
1010 CALL ZHETRD_HB2ST( 'n
', 'n
', 'u
', 0, 0, A, 1, D, E,
1011 $ C, 1, W, 0, INFO )
1019 CALL ZHBEVD( '/
', 'u
', 0, 0, A, 1, X, Z, 1, W, 1, RW, 1, IW, 1,
1021 CALL CHKXER( 'zhbevd', INFOT, NOUT, LERR, OK )
1023 CALL ZHBEVD( 'n
', '/
', 0, 0, A, 1, X, Z, 1, W, 1, RW, 1, IW, 1,
1025 CALL CHKXER( 'zhbevd', INFOT, NOUT, LERR, OK )
1027 CALL ZHBEVD( 'n
', 'u
', -1, 0, A, 1, X, Z, 1, W, 1, RW, 1, IW,
1029 CALL CHKXER( 'zhbevd', INFOT, NOUT, LERR, OK )
1031 CALL ZHBEVD( 'n
', 'u
', 0, -1, A, 1, X, Z, 1, W, 1, RW, 1, IW,
1033 CALL CHKXER( 'zhbevd', INFOT, NOUT, LERR, OK )
1035 CALL ZHBEVD( 'n
', 'u
', 2, 1, A, 1, X, Z, 1, W, 2, RW, 2, IW, 1,
1037 CALL CHKXER( 'zhbevd', INFOT, NOUT, LERR, OK )
1039 CALL ZHBEVD( 'v
', 'u
', 2, 1, A, 2, X, Z, 1, W, 8, RW, 25, IW,
1041 CALL CHKXER( 'zhbevd', INFOT, NOUT, LERR, OK )
1043 CALL ZHBEVD( 'n
', 'u
', 1, 0, A, 1, X, Z, 1, W, 0, RW, 1, IW, 1,
1045 CALL CHKXER( 'zhbevd', INFOT, NOUT, LERR, OK )
1047 CALL ZHBEVD( 'n
', 'u
', 2, 1, A, 2, X, Z, 2, W, 1, RW, 2, IW, 1,
1049 CALL CHKXER( 'zhbevd', INFOT, NOUT, LERR, OK )
1051 CALL ZHBEVD( 'v
', 'u', 2, 1, a, 2, x, z, 2, w, 2, rw, 25, iw,
1053 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1055 CALL zhbevd(
'N',
'U', 1, 0, a, 1, x, z, 1, w, 1, rw, 0, iw, 1,
1057 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1059 CALL zhbevd(
'N',
'U', 2, 1, a, 2, x, z, 2, w, 2, rw, 1, iw, 1,
1061 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1063 CALL zhbevd(
'V',
'U', 2, 1, a, 2, x, z, 2, w, 8, rw
1065 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1067 CALL zhbevd(
'N',
'U', 1, 0, a, 1, x, z, 1, w, 1, rw, 1, iw, 0,
1069 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1071 CALL zhbevd(
'N',
'U', 2, 1, a, 2, x, z, 2, w, 2, rw, 2, iw, 0,
1073 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1075 CALL zhbevd(
'V',
'U', 2, 1, a, 2, x, z, 2, w, 8, rw, 25, iw,
1077 CALL chkxer(
'ZHBEVD', infot, nout, lerr, ok )
1082 srnamt =
'ZHBEVD_2STAGE'
1085 $ w, 1, rw, 1, iw, 1, info )
1086 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1089 $ w, 1, rw, 1, iw, 1, info )
1090 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1093 $ w, 1, rw, 1, iw, 1, info )
1094 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1097 $ w, 1, rw, 1, iw, 1, info )
1098 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1101 $ w, 1, rw, 1, iw, 1, info )
1102 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1105 $ w, 2, rw, 2, iw, 1, info )
1106 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1109 $ w, 8, rw, 25, iw, 12, info )
1110 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1113 $ w, 0, rw, 1, iw, 1, info )
1114 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1117 $ w, 1, rw, 2, iw, 1, info )
1118 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1125 $ w, 1, rw, 0, iw, 1, info )
1126 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1129 $ w, 25, rw, 1, iw, 1, info )
1130 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1137 $ w, 1, rw, 1, iw, 0, info )
1138 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1141 $ w, 25, rw, 2, iw, 0, info )
1142 CALL chkxer(
'ZHBEVD_2STAGE', infot, nout, lerr, ok )
1153 CALL zhbev(
'/',
'U', 0, 0, a, 1, x, z, 1, w, rw, info )
1154 CALL chkxer(
'ZHBEV ', infot, nout, lerr, ok )
1156 CALL zhbev(
'N',
'/', 0, 0, a, 1, x, z, 1, w, rw, info )
1157 CALL chkxer(
'ZHBEV ', infot, nout, lerr, ok )
1159 CALL zhbev(
'N',
'U', -1, 0, a, 1, x, z, 1, w, rw, info )
1160 CALL chkxer(
'ZHBEV ', infot, nout, lerr, ok )
1162 CALL zhbev(
'N',
'U', 0, -1, a, 1, x, z, 1, w, rw, info )
1163 CALL chkxer(
'ZHBEV ', infot, nout, lerr, ok )
1165 CALL zhbev(
'N',
'U', 2, 1, a, 1, x, z, 1, w, rw, info )
1166 CALL chkxer(
'ZHBEV ', infot, nout, lerr, ok )
1168 CALL zhbev( 'v
', 'u
', 2, 0, A, 1, X, Z, 1, W, RW, INFO )
1169 CALL CHKXER( 'zhbev ', INFOT, NOUT, LERR, OK )
1176 CALL ZHBEV_2STAGE( '/
', 'u
', 0, 0, A, 1, X,
1177 $ Z, 1, W, 0, RW, INFO )
1180 CALL ZHBEV_2STAGE( 'v
', 'u
', 0, 0, A, 1, X,
1181 $ Z, 1, W, 0, RW, INFO )
1184 CALL ZHBEV_2STAGE( 'n
', '/
', 0, 0, A, 1, X,
1185 $ Z, 1, W, 0, RW, INFO )
1188 CALL ZHBEV_2STAGE( 'n
', 'u
', -1, 0, A, 1, X,
1189 $ Z, 1, W, 0, RW, INFO )
1192 CALL ZHBEV_2STAGE( 'n
', 'u
', 0, -1, A, 1, X,
1193 $ Z, 1, W, 0, RW, INFO )
1196 CALL ZHBEV_2STAGE( 'n
', 'u
', 2, 1, A, 1, X,
1197 $ Z, 1, W, 0, RW, INFO )
1200 CALL ZHBEV_2STAGE( 'n
', 'u
', 2, 0, A, 1, X,
1201 $ Z, 0, W, 0, RW, INFO )
1204 CALL ZHBEV_2STAGE( 'n
', 'u
', 2, 0, A, 1, X,
1205 $ Z, 1, W, 0, RW, INFO )
1213 CALL ZHBEVX( '/
', 'a
', 'u
', 0, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
1214 $ 0, 0.0D0, M, X, Z, 1, W, RW, IW, I3, INFO )
1215 CALL CHKXER( 'zhbevx', INFOT, NOUT, LERR, OK )
1217 CALL ZHBEVX( 'v
', '/
', 'u
', 0, 0, A, 1, Q, 1, 0.0D0, 1.0D0, 1,
1218 $ 0, 0.0D0, M, X, Z, 1, W, RW, IW, I3, INFO )
1219 CALL CHKXER( 'zhbevx', INFOT, NOUT, LERR, OK )
1221 CALL ZHBEVX( 'v
', 'a
', '/
', 0, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
1222 $ 0, 0.0D0, M, X, Z, 1, W, RW, IW, I3, INFO )
1224 CALL ZHBEVX( 'v
', 'a
', 'u
', -1, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
1225 $ 0, 0.0D0, M, X, Z, 1, W, RW, IW, I3, INFO )
1226 CALL CHKXER( 'zhbevx', INFOT, NOUT, LERR, OK )
1228 CALL ZHBEVX( 'v
', 'a
', 'u
', 0, -1, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
1229 $ 0, 0.0D0, M, X, Z, 1, W, RW, IW, I3, INFO )
1230 CALL CHKXER( 'zhbevx', INFOT, NOUT, LERR, OK )
1232 CALL ZHBEVX( 'v
', 'a
', 'u
', 2, 1, A, 1, Q, 2, 0.0D0, 0.0D0, 0,
1233 $ 0, 0.0D0, M, X, Z, 2, W, RW, IW, I3, INFO )
1234 CALL CHKXER( 'zhbevx', INFOT, NOUT, LERR, OK )
1236 CALL ZHBEVX( 'v
', 'a
', 'u
', 2, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
1237 $ 0, 0.0D0, M, X, Z, 2, W, RW, IW, I3, INFO )
1238 CALL CHKXER( 'zhbevx', INFOT, NOUT, LERR, OK )
1240 CALL ZHBEVX( 'v
', 'v
', 'u
', 1, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
1241 $ 0, 0.0D0, M, X, Z, 1, W, RW, IW, I3, INFO )
1242 CALL CHKXER( 'zhbevx', INFOT, NOUT, LERR, OK )
1244 CALL ZHBEVX( 'v
', 'i
', 'u
', 1, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 0,
1245 $ 0, 0.0D0, M, X, Z, 1, W, RW, IW, I3, INFO )
1246 CALL CHKXER( 'zhbevx', INFOT, NOUT, LERR, OK )
1248 CALL ZHBEVX( 'v
', 'i
', 'u
', 1, 0, A, 1, Q, 1, 0.0D0, 0.0D0, 1,
1249 $ 2, 0.0D0, M, X, Z, 1, W, RW, IW, I3, INFO )
1250 CALL CHKXER( 'zhbevx', INFOT, NOUT, LERR, OK )
1252 CALL ZHBEVX( 'v
', 'a
', 'u
', 2, 0, A, 1, Q, 2, 0.0D0, 0.0D0, 0,
1253 $ 0, 0.0D0, M, X, Z, 1, W, RW, IW, I3, INFO )
1254 CALL CHKXER( 'zhbevx', INFOT, NOUT, LERR, OK )
1261 CALL ZHBEVX_2STAGE( '/
', 'a
', 'u', 0, 0, a, 1, q, 1,
1262 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
1263 $ m, x, z, 1, w, 0, rw, iw, i3, info )
1266 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
1267 $ m, x, z, 1, w, 0, rw, iw, i3, info )
1268 CALL chkxer(
'ZHBEVX_2STAGE', infot, nout, lerr, ok )
1271 $ 0.0d0, 1.0d0, 1, 0, 0.0d0,
1272 $ m, x, z, 1, w, 0, rw, iw, i3, info )
1273 CALL chkxer(
'ZHBEVX_2STAGE', infot, nout, lerr, ok )
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, 0.0d0, 0, 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, 2, w, 0, rw, iw, i3, info )
1292 CALL chkxer(
'ZHBEVX_2STAGE', infot, nout, lerr, ok )
1300 $ 0.0d0, 0.0d0, 0, 0, 0.0d0,
1302 CALL chkxer(
'ZHBEVX_2STAGE', infot, nout, lerr, ok )
1305 $ 0.0D0, 0.0D0, 0, 0, 0.0D0,
1306 $ M, X, Z, 1, W, 0, RW, IW, I3, INFO )
1309 CALL ZHBEVX_2STAGE( 'n
', 'i
', 'u
', 1, 0, A, 1, Q, 1,
1310 $ 0.0D0, 0.0D0, 1, 2, 0.0D0,
1311 $ M, X, Z, 1, W, 0, RW, IW, I3, INFO )
1314 CALL ZHBEVX_2STAGE( 'n
', 'a
', 'u
', 2, 0, A, 1, Q, 2,
1315 $ 0.0D0, 0.0D0, 0, 0, 0.0D0,
1316 $ M, X, Z, 0, W, 0, RW, IW, I3, INFO )
1319 CALL ZHBEVX_2STAGE( 'n
', 'a
', 'u
', 2, 0, A, 1, Q, 2,
1320 $ 0.0D0, 0.0D0, 0, 0, 0.0D0,
1321 $ M, X, Z, 1, W, 0, RW, IW, I3, INFO )
1329 WRITE( NOUT, FMT = 9999 )PATH, NT
1331 WRITE( NOUT, FMT = 9998 )PATH
1334 9999 FORMAT( 1X, A3, ' routines passed
the tests of
the error exits
',
1335 $ ' (
', I3, ' tests done)
' )
1336 9998 FORMAT( ' ***
', A3, ' routines failed
the tests of
the error
',