161 INTEGER FUNCTION ilaenv( ISPEC, NAME, OPTS, N1, N2, N3, N4 )
168 CHARACTER*( * ) name, opts
169 INTEGER ispec, n1, n2, n3, n4
175 INTEGER i, ic, iz, nb, nbmin, nx
176 LOGICAL cname, sname, twostage
177 CHARACTER c1*1, c2*2, c4*2, c3*3, subnam*16
180 INTRINSIC char, ichar, int, min, real
188 GO TO ( 10, 10, 10, 80, 90, 100, 110, 120,
189 $ 130, 140, 150, 160, 160, 160, 160, 160, 160)ispec
202 ic = ichar( subnam( 1: 1 ) )
204 IF( iz.EQ.90 .OR. iz.EQ.122 )
THEN
208 IF( ic.GE.97 .AND. ic.LE.122 )
THEN
209 subnam( 1: 1 ) = char( ic-32 )
211 ic = ichar( subnam( i: i ) )
212 IF( ic.GE.97 .AND. ic.LE.122 )
213 $ subnam( i: i ) = char( ic-32 )
217 ELSE IF( iz.EQ.233 .OR. iz.EQ.169 )
THEN
221 IF( ( ic.GE.129 .AND. ic.LE.137 ) .OR.
222 $ ( ic.GE.145 .AND. ic.LE.153 ) .OR.
223 $ ( ic.GE.162 .AND. ic.LE.169 ) )
THEN
224 subnam( 1: 1 ) = char( ic+64 )
226 ic = ichar( subnam( i: i ) )
227 IF( ( ic.GE.129 .AND. ic.LE.137 ) .OR.
228 $ ( ic.GE.145 .AND. ic.LE.153 ) .OR.
229 $ ( ic.GE.162 .AND. ic.LE.169 ) )subnam( i:
230 $ i ) = char( ic+64 )
234 ELSE IF( iz.EQ.218 .OR. iz.EQ.250 )
THEN
238 IF( ic.GE.225 .AND. ic.LE.250 )
THEN
239 subnam( 1: 1 ) = char( ic-32 )
241 ic = ichar( subnam( i: i ) )
242 IF( ic.GE.225 .AND. ic.LE.250 )
243 $ subnam( i: i ) = char( ic-32 )
249 sname = c1.EQ.
'S' .OR. c1.EQ.
'D'
250 cname = c1.EQ.
'C' .OR. c1.EQ.
'Z'
251 IF( .NOT.( cname .OR. sname ) )
256 twostage = len( subnam ).GE.11
257 $ .AND. subnam( 11: 11 ).EQ.
'2'
259 GO TO ( 50, 60, 70 )ispec
271 IF( subnam(2:6).EQ.
'LAORH' )
THEN
280 ELSE IF( c2.EQ.
'GE' )
THEN
281 IF( c3.EQ.
'TRF' )
THEN
287 ELSE IF( c3.EQ.
'QRF' .OR. c3.EQ.
'RQF' .OR. c3.EQ.
'LQF' .OR.
294 ELSE IF( c3.EQ.
'QR ')
THEN
298 IF ((n1*n2.LE.131072).OR.(n1.LE.8192))
THEN
304 IF ((n1*n2.LE.131072).OR.(n1.LE.8192))
THEN
317 ELSE IF( c3.EQ.
'LQ ')
THEN
321 IF ((n1*n2.LE.131072).OR.(n1.LE.8192))
THEN
327 IF ((n1*n2.LE.131072).OR.(n1.LE.8192))
THEN
340 ELSE IF( c3.EQ.
'HRD' )
THEN
346 ELSE IF( c3.EQ.
'BRD' )
THEN
352 ELSE IF( c3.EQ.
'TRI' )
THEN
358 ELSE IF( subnam( 4: 7 ).EQ.
'QP3RK' )
THEN
365 ELSE IF( c2.EQ.
'PO' )
THEN
366 IF( c3.EQ.
'TRF' )
THEN
373 ELSE IF( c2.EQ.
'SY' )
THEN
374 IF( c3.EQ.
'TRF' )
THEN
388 ELSE IF( sname .AND. c3.EQ.
'TRD' )
THEN
390 ELSE IF( sname .AND. c3.EQ.
'GST' )
THEN
393 ELSE IF( cname .AND. c2.EQ.
'HE' )
THEN
394 IF( c3.EQ.
'TRF' )
THEN
400 ELSE IF( c3.EQ.
'TRD' )
THEN
402 ELSE IF( c3.EQ.
'GST' )
THEN
405 ELSE IF( sname .AND. c2.EQ.
'OR' )
THEN
406 IF( c3( 1: 1 ).EQ.
'G' )
THEN
407 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
408 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
412 ELSE IF( c3( 1: 1 ).EQ.
'M' )
THEN
413 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
414 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
419 ELSE IF( cname .AND. c2.EQ.
'UN' )
THEN
420 IF( c3( 1: 1 ).EQ.
'G' )
THEN
421 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
422 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
426 ELSE IF( c3( 1: 1 ).EQ.
'M' )
THEN
427 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
428 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
433 ELSE IF( c2.EQ.
'GB' )
THEN
434 IF( c3.EQ.
'TRF' )
THEN
449 ELSE IF( c2.EQ.
'PB' )
THEN
450 IF( c3.EQ.
'TRF' )
THEN
465 ELSE IF( c2.EQ.
'TR' )
THEN
466 IF( c3.EQ.
'TRI' )
THEN
472 ELSE IF ( c3.EQ.
'EVC' )
THEN
478 ELSE IF( c3.EQ.
'SYL' )
THEN
481 nb = min( max( 48, int( ( min( n1, n2 ) * 16 ) / 100) ),
484 nb = min( max( 24, int( ( min( n1, n2 ) * 8 ) / 100) ),
488 ELSE IF( c2.EQ.
'LA' )
THEN
489 IF( c3.EQ.
'UUM' )
THEN
495 ELSE IF( c3.EQ.
'TRS' )
THEN
502 ELSE IF( sname .AND. c2.EQ.
'ST' )
THEN
503 IF( c3.EQ.
'EBZ' )
THEN
506 ELSE IF( c2.EQ.
'GG' )
THEN
508 IF( c3.EQ.
'HD3' )
THEN
524 IF( c2.EQ.
'GE' )
THEN
525 IF( c3.EQ.
'QRF' .OR. c3.EQ.
'RQF' .OR. c3.EQ.
'LQF' .OR. c3.EQ.
532 ELSE IF( c3.EQ.
'HRD' )
THEN
538 ELSE IF( c3.EQ.
'BRD' )
THEN
544 ELSE IF( c3.EQ.
'TRI' )
THEN
550 ELSE IF( subnam( 4: 7 ).EQ.
'QP3RK' )
THEN
558 ELSE IF( c2.EQ.
'SY' )
THEN
559 IF( c3.EQ.
'TRF' )
THEN
565 ELSE IF( sname .AND. c3.EQ.
'TRD' )
THEN
568 ELSE IF( cname .AND. c2.EQ.
'HE' )
THEN
569 IF( c3.EQ.
'TRD' )
THEN
572 ELSE IF( sname .AND. c2.EQ.
'OR' )
THEN
573 IF( c3( 1: 1 ).EQ.
'G' )
THEN
574 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
575 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
579 ELSE IF( c3( 1: 1 ).EQ.
'M' )
THEN
580 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
581 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
586 ELSE IF( cname .AND. c2.EQ.
'UN' )
THEN
587 IF( c3( 1: 1 ).EQ.
'G' )
THEN
588 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
589 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
593 ELSE IF( c3( 1: 1 ).EQ.
'M' )
THEN
594 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
595 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
600 ELSE IF( c2.EQ.
'GG' )
THEN
602 IF( c3.EQ.
'HD3' )
THEN
614 IF( c2.EQ.
'GE' )
THEN
615 IF( c3.EQ.
'QRF' .OR. c3.EQ.
'RQF' .OR. c3.EQ.
'LQF' .OR. c3.EQ.
622 ELSE IF( c3.EQ.
'HRD' )
THEN
628 ELSE IF( c3.EQ.
'BRD' )
THEN
634 ELSE IF( subnam( 4: 7 ).EQ.
'QP3RK' )
THEN
641 ELSE IF( c2.EQ.
'SY' )
THEN
642 IF( sname .AND. c3.EQ.
'TRD' )
THEN
645 ELSE IF( cname .AND. c2.EQ.
'HE' )
THEN
646 IF( c3.EQ.
'TRD' )
THEN
649 ELSE IF( sname .AND. c2.EQ.
'OR' )
THEN
650 IF( c3( 1: 1 ).EQ.
'G' )
THEN
651 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
652 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
657 ELSE IF( cname .AND. c2.EQ.
'UN' )
THEN
658 IF( c3( 1: 1 ).EQ.
'G' )
THEN
659 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
660 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
665 ELSE IF( c2.EQ.
'GG' )
THEN
667 IF( c3.EQ.
'HD3' )
THEN
692 ilaenv = int( real( min( n1, n2 ) )*1.6e0 )
integer function ieeeck(ispec, zero, one)
IEEECK
integer function ilaenv(ispec, name, opts, n1, n2, n3, n4)
ILAENV
integer function iparam2stage(ispec, name, opts, ni, nbi, ibi, nxi)
IPARAM2STAGE
integer function iparmq(ispec, name, opts, n, ilo, ihi, lwork)
IPARMQ