code 35175; real procedure NONEXP BESS I0(X); value X; real X; if X= 0 then NONEXP BESS I0:=1 else if ABS(X) <= 15.0 then begin NONEXP BESS I0:= EXP(-ABS(X))*BESS I0(X) end else begin real SQRTX, AR, BR, BR1, BR2, Z, Z2, NUMERATOR, DENOMINATOR; X:=ABS(X); SQRTX:= SQRT(X); BR1:= BR2:= 0; Z:= 30/X-1; Z2:= Z+Z; for AR:= .24392 60769 778, -.11559 19781 04435 "3, +.78403 42490 05088 "4, -.14346 46313 13583 "6 do begin BR:= Z2*BR1-BR2+AR; BR2:= BR1; BR1:= BR end; NUMERATOR:= Z*BR1-BR2+.34651 98333 57379 "6; BR1:= BR2:= 0; for AR:= 1, -.32519 73333 69824 "3, +.20312 84361 00794 "5, -.36184 77792 19653 "6 do begin BR:= Z2*BR1 - BR2 + AR; BR2:= BR1; BR1:= BR end; DENOMINATOR:= Z*BR1 - BR2 +.86566 52748 32055 "6; NONEXP BESS I0:= (NUMERATOR/DENOMINATOR)/SQRTX; end; eop