89 CHARACTER*( * ) name, opts
90 INTEGER ispec, n1, n2, n3, n4
189 INTEGER i, ic, iz, nb, nbmin, nx
192 INTRINSIC char, ichar, int, min, real
200 GO TO ( 100, 100, 100, 400, 500, 600, 700, 800, 900, 1000,
214 ic = ichar( subnam( 1:1 ) )
216 IF( iz.EQ.90 .OR. iz.EQ.122 )
THEN
220 IF( ic.GE.97 .AND. ic.LE.122 )
THEN
221 subnam( 1:1 ) = char( ic-32 )
223 ic = ichar( subnam( i:i ) )
224 IF( ic.GE.97 .AND. ic.LE.122 )
225 $ subnam( i:i ) = char( ic-32 )
229 ELSE IF( iz.EQ.233 .OR. iz.EQ.169 )
THEN
233 IF( ( ic.GE.129 .AND. ic.LE.137 ) .OR.
234 $ ( ic.GE.145 .AND. ic.LE.153 ) .OR.
235 $ ( ic.GE.162 .AND. ic.LE.169 ) )
THEN
236 subnam( 1:1 ) = char( ic+64 )
238 ic = ichar( subnam( i:i ) )
239 IF( ( ic.GE.129 .AND. ic.LE.137 ) .OR.
240 $ ( ic.GE.145 .AND. ic.LE.153 ) .OR.
241 $ ( ic.GE.162 .AND. ic.LE.169 ) )
242 $ subnam( i:i ) = char( ic+64 )
246 ELSE IF( iz.EQ.218 .OR. iz.EQ.250 )
THEN
250 IF( ic.GE.225 .AND. ic.LE.250 )
THEN
251 subnam( 1:1 ) = char( ic-32 )
253 ic = ichar( subnam( i:i ) )
254 IF( ic.GE.225 .AND. ic.LE.250 )
255 $ subnam( i:i ) = char( ic-32 )
261 sname = c1.EQ.
'S' .OR. c1.EQ.
'D'
262 cname = c1.EQ.
'C' .OR. c1.EQ.
'Z'
263 IF( .NOT.( cname .OR. sname ) )
269 GO TO ( 110, 200, 300 ) ispec
281 IF( c2.EQ.
'GE' )
THEN
282 IF( c3.EQ.
'TRF' )
THEN
288 ELSE IF( c3.EQ.
'QRF' .OR. c3.EQ.
'RQF' .OR. c3.EQ.
'LQF' .OR.
295 ELSE IF( c3.EQ.
'HRD' )
THEN
301 ELSE IF( c3.EQ.
'BRD' )
THEN
307 ELSE IF( c3.EQ.
'TRI' )
THEN
314 ELSE IF( c2.EQ.
'PO' )
THEN
315 IF( c3.EQ.
'TRF' )
THEN
322 ELSE IF( c2.EQ.
'SY' )
THEN
323 IF( c3.EQ.
'TRF' )
THEN
329 ELSE IF( sname .AND. c3.EQ.
'TRD' )
THEN
331 ELSE IF( sname .AND. c3.EQ.
'GST' )
THEN
334 ELSE IF( cname .AND. c2.EQ.
'HE' )
THEN
335 IF( c3.EQ.
'TRF' )
THEN
337 ELSE IF( c3.EQ.
'TRD' )
THEN
339 ELSE IF( c3.EQ.
'GST' )
THEN
342 ELSE IF( sname .AND. c2.EQ.
'OR' )
THEN
343 IF( c3( 1:1 ).EQ.
'G' )
THEN
344 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR.
345 $ c4.EQ.
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR.
349 ELSE IF( c3( 1:1 ).EQ.
'M' )
THEN
350 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR.
351 $ c4.EQ.
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR.
356 ELSE IF( cname .AND. c2.EQ.
'UN' )
THEN
357 IF( c3( 1:1 ).EQ.
'G' )
THEN
358 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR.
359 $ c4.EQ.
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR.
363 ELSE IF( c3( 1:1 ).EQ.
'M' )
THEN
364 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR.
365 $ c4.EQ.
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR.
370 ELSE IF( c2.EQ.
'GB' )
THEN
371 IF( c3.EQ.
'TRF' )
THEN
386 ELSE IF( c2.EQ.
'PB' )
THEN
387 IF( c3.EQ.
'TRF' )
THEN
402 ELSE IF( c2.EQ.
'TR' )
THEN
403 IF( c3.EQ.
'TRI' )
THEN
410 ELSE IF( c2.EQ.
'LA' )
THEN
411 IF( c3.EQ.
'UUM' )
THEN
418 ELSE IF( sname .AND. c2.EQ.
'ST' )
THEN
419 IF( c3.EQ.
'EBZ' )
THEN
431 IF( c2.EQ.
'GE' )
THEN
432 IF( c3.EQ.
'QRF' .OR. c3.EQ.
'RQF' .OR. c3.EQ.
'LQF' .OR.
439 ELSE IF( c3.EQ.
'HRD' )
THEN
445 ELSE IF( c3.EQ.
'BRD' )
THEN
451 ELSE IF( c3.EQ.
'TRI' )
THEN
458 ELSE IF( c2.EQ.
'SY' )
THEN
459 IF( c3.EQ.
'TRF' )
THEN
465 ELSE IF( sname .AND. c3.EQ.
'TRD' )
THEN
468 ELSE IF( cname .AND. c2.EQ.
'HE' )
THEN
469 IF( c3.EQ.
'TRD' )
THEN
472 ELSE IF( sname .AND. c2.EQ.
'OR' )
THEN
473 IF( c3( 1:1 ).EQ.
'G' )
THEN
474 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR.
475 $ c4.EQ.
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR.
479 ELSE IF( c3( 1:1 ).EQ.
'M' )
THEN
480 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR.
481 $ c4.EQ.
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR.
486 ELSE IF( cname .AND. c2.EQ.
'UN' )
THEN
487 IF( c3( 1:1 ).EQ.
'G' )
THEN
488 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR.
489 $ c4.EQ.
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR.
493 ELSE IF( c3( 1:1 ).EQ.
'M' )
THEN
494 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR.
495 $ c4.EQ.
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR.
509 IF( c2.EQ.
'GE' )
THEN
510 IF( c3.EQ.
'QRF' .OR. c3.EQ.
'RQF' .OR. c3.EQ.
'LQF' .OR.
517 ELSE IF( c3.EQ.
'HRD' )
THEN
523 ELSE IF( c3.EQ.
'BRD' )
THEN
530 ELSE IF( c2.EQ.
'SY' )
THEN
531 IF( sname .AND. c3.EQ.
'TRD' )
THEN
534 ELSE IF( cname .AND. c2.EQ.
'HE' )
THEN
535 IF( c3.EQ.
'TRD' )
THEN
538 ELSE IF( sname .AND. c2.EQ.
'OR' )
THEN
539 IF( c3( 1:1 ).EQ.
'G' )
THEN
540 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR.
541 $ c4.EQ.
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR.
546 ELSE IF( cname .AND. c2.EQ.
'UN' )
THEN
547 IF( c3( 1:1 ).EQ.
'G' )
THEN
548 IF( c4.EQ.
'QR' .OR. c4.EQ.
'RQ' .OR. c4.EQ.
'LQ' .OR.
549 $ c4.EQ.
'QL' .OR. c4.EQ.
'HR' .OR. c4.EQ.
'TR' .OR.
576 ilaenv = int(
REAL( MIN( N1, N2 ) )*1.6e0 )
integer function ieeeck(ISPEC, ZERO, ONE)
integer function ilaenv(ISPEC, NAME, OPTS, N1, N2, N3, N4)