163 INTEGER FUNCTION ilaenv( ISPEC, NAME, OPTS, N1, N2, N3, N4 )
171 CHARACTER*( * ) NAME, OPTS
172 INTEGER ISPEC, N1, N2, N3, N4
178 INTEGER I, IC, IZ, NB, NBMIN, NX
180 CHARACTER C1*1, C2*2, C4*2, C3*3, SUBNAM*6
183 INTRINSIC char, ichar, int, min, real
186 INTEGER IEEECK, IPARMQ
187 EXTERNAL ieeeck, iparmq
191 GO TO ( 10, 10, 10, 80, 90, 100, 110, 120,
192 $ 130, 140, 150, 160, 160, 160, 160, 160 )ispec
205 ic = ichar( subnam( 1: 1 ) )
207 IF( iz.EQ.90 .OR. iz.EQ.122 )
THEN
211 IF( ic.GE.97 .AND. ic.LE.122 )
THEN
212 subnam( 1: 1 ) = char( ic-32 )
214 ic = ichar( subnam( i: i ) )
215 IF( ic.GE.97 .AND. ic.LE.122 )
216 $ subnam( i: i ) = char( ic-32 )
220 ELSE IF( iz.EQ.233 .OR. iz.EQ.169 )
THEN
224 IF( ( ic.GE.129 .AND. ic.LE.137 ) .OR.
225 $ ( ic.GE.145 .AND. ic.LE.153 ) .OR.
226 $ ( ic.GE.162 .AND. ic.LE.169 ) )
THEN
227 subnam( 1: 1 ) = char( ic+64 )
229 ic = ichar( subnam( i: i ) )
230 IF( ( ic.GE.129 .AND. ic.LE.137 ) .OR.
231 $ ( ic.GE.145 .AND. ic.LE.153 ) .OR.
232 $ ( ic.GE.162 .AND. ic.LE.169 ) )subnam( i:
233 $ i ) = char( ic+64 )
237 ELSE IF( iz.EQ.218 .OR. iz.EQ.250 )
THEN
241 IF( ic.GE.225 .AND. ic.LE.250 )
THEN
242 subnam( 1: 1 ) = char( ic-32 )
244 ic = ichar( subnam( i: i ) )
245 IF( ic.GE.225 .AND. ic.LE.250 )
246 $ subnam( i: i ) = char( ic-32 )
252 sname = c1.EQ.
'S' .OR. c1.EQ.
'D'
253 cname = c1.EQ.
'C' .OR. c1.EQ.
'Z'
254 IF( .NOT.( cname .OR. sname ) )
260 GO TO ( 50, 60, 70 )ispec
272 IF( c2.EQ.
'GE' )
THEN
273 IF( c3.EQ.
'TRF' )
THEN
279 ELSE IF( c3.EQ.
'QRF' .OR. c3.EQ.
'RQF' .OR. c3.EQ.
'LQF' .OR.
286 ELSE IF( c3.EQ.
'HRD' )
THEN
292 ELSE IF( c3.EQ.
'BRD' )
THEN
298 ELSE IF( c3.EQ.
'TRI' )
THEN
305 ELSE IF( c2.EQ.
'PO' )
THEN
306 IF( c3.EQ.
'TRF' )
THEN
313 ELSE IF( c2.EQ.
'SY' )
THEN
314 IF( c3.EQ.
'TRF' )
THEN
320 ELSE IF( sname .AND. c3.EQ.
'TRD' )
THEN
322 ELSE IF( sname .AND. c3.EQ.
'GST' )
THEN
325 ELSE IF( cname .AND. c2.EQ.
'HE' )
THEN
326 IF( c3.EQ.
'TRF' )
THEN
328 ELSE IF( c3.EQ.
'TRD' )
THEN
330 ELSE IF( c3.EQ.
'GST' )
THEN
333 ELSE IF( sname .AND. c2.EQ.
'OR' )
THEN
334 IF( c3( 1: 1 ).EQ.
'G' )
THEN
335 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
336 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
340 ELSE IF( c3( 1: 1 ).EQ.
'M' )
THEN
341 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
342 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
347 ELSE IF( cname .AND. c2.EQ.
'UN' )
THEN
348 IF( c3( 1: 1 ).EQ.
'G' )
THEN
349 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
350 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
354 ELSE IF( c3( 1: 1 ).EQ.
'M' )
THEN
355 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
356 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
361 ELSE IF( c2.EQ.
'GB' )
THEN
362 IF( c3.EQ.
'TRF' )
THEN
377 ELSE IF( c2.EQ.
'PB' )
THEN
378 IF( c3.EQ.
'TRF' )
THEN
393 ELSE IF( c2.EQ.
'TR' )
THEN
394 IF( c3.EQ.
'TRI' )
THEN
400 ELSE IF ( c3.EQ.
'EVC' )
THEN
407 ELSE IF( c2.EQ.
'LA' )
THEN
408 IF( c3.EQ.
'UUM' )
THEN
415 ELSE IF( sname .AND. c2.EQ.
'ST' )
THEN
416 IF( c3.EQ.
'EBZ' )
THEN
419 ELSE IF( c2.EQ.
'GG' )
THEN
421 IF( c3.EQ.
'HD3' )
THEN
437 IF( c2.EQ.
'GE' )
THEN
438 IF( c3.EQ.
'QRF' .OR. c3.EQ.
'RQF' .OR. c3.EQ.
'LQF' .OR. c3.EQ.
445 ELSE IF( c3.EQ.
'HRD' )
THEN
451 ELSE IF( c3.EQ.
'BRD' )
THEN
457 ELSE IF( c3.EQ.
'TRI' )
THEN
464 ELSE IF( c2.EQ.
'SY' )
THEN
465 IF( c3.EQ.
'TRF' )
THEN
471 ELSE IF( sname .AND. c3.EQ.
'TRD' )
THEN
474 ELSE IF( cname .AND. c2.EQ.
'HE' )
THEN
475 IF( c3.EQ.
'TRD' )
THEN
478 ELSE IF( sname .AND. c2.EQ.
'OR' )
THEN
479 IF( c3( 1: 1 ).EQ.
'G' )
THEN
480 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
481 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
485 ELSE IF( c3( 1: 1 ).EQ.
'M' )
THEN
486 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
487 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
492 ELSE IF( cname .AND. c2.EQ.
'UN' )
THEN
493 IF( c3( 1: 1 ).EQ.
'G' )
THEN
494 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
495 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
499 ELSE IF( c3( 1: 1 ).EQ.
'M' )
THEN
500 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
501 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
506 ELSE IF( c2.EQ.
'GG' )
THEN
508 IF( c3.EQ.
'HD3' )
THEN
520 IF( c2.EQ.
'GE' )
THEN
521 IF( c3.EQ.
'QRF' .OR. c3.EQ.
'RQF' .OR. c3.EQ.
'LQF' .OR. c3.EQ.
528 ELSE IF( c3.EQ.
'HRD' )
THEN
534 ELSE IF( c3.EQ.
'BRD' )
THEN
541 ELSE IF( c2.EQ.
'SY' )
THEN
542 IF( sname .AND. c3.EQ.
'TRD' )
THEN
545 ELSE IF( cname .AND. c2.EQ.
'HE' )
THEN
546 IF( c3.EQ.
'TRD' )
THEN
549 ELSE IF( sname .AND. c2.EQ.
'OR' )
THEN
550 IF( c3( 1: 1 ).EQ.
'G' )
THEN
551 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
552 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
557 ELSE IF( cname .AND. c2.EQ.
'UN' )
THEN
558 IF( c3( 1: 1 ).EQ.
'G' )
THEN
559 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR. c4.EQ.
560 $
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR. c4.EQ.
'BR' )
565 ELSE IF( c2.EQ.
'GG' )
THEN
567 IF( c3.EQ.
'HD3' )
THEN
592 ilaenv = int(
REAL( MIN( N1, N2 ) )*1.6e0 )
625 ilaenv = ieeeck( 1, 0.0, 1.0 )
636 ilaenv = ieeeck( 0, 0.0, 1.0 )
644 ilaenv = iparmq( ispec, name, opts, n1, n2, n3, n4 )
integer function ilaenv(ISPEC, NAME, OPTS, N1, N2, N3, N4)