home *** CD-ROM | disk | FTP | other *** search
/ World of Shareware - Software Farm 2 / wosw_2.zip / wosw_2 / PASCAL / NRPAS13.ZIP / BESSI1.PAS < prev    next >
Pascal/Delphi Source File  |  1991-04-29  |  610b  |  18 lines

  1. FUNCTION bessi1(x: real): real;
  2. VAR
  3.    ax: real;  y,ans: double;
  4. BEGIN
  5.    IF (abs(x) < 3.75) THEN BEGIN
  6.       y := sqr(x/3.75);
  7.       ans := x*(0.5+y*(0.87890594+y*(0.51498869+y*(0.15084934
  8.          +y*(0.2658733e-1+y*(0.301532e-2+y*0.32411e-3)))))) END
  9.    ELSE BEGIN
  10.       ax := abs(x); y := 3.75/ax;
  11.       ans := 0.2282967e-1+y*(-0.2895312e-1+y*(0.1787654e-1-y*0.420059e-2));
  12.       ans := 0.39894228+y*(-0.3988024e-1+y*(-0.362018e-2
  13.          +y*(0.163801e-2+y*(-0.1031555e-1+y*ans))));
  14.       ans := (exp(ax)/sqrt(ax))*ans;
  15.       IF (x<0.0) THEN ans := -ans  END;
  16.    bessi1 := sngl(ans)
  17. END;
  18.