code 35165; procedure BESS PQ0(X, P0, Q0); value X; real X, P0, Q0; if X < 8 then begin real B, COSX, SINX, J0X, Y0; B:= SQRT(X) * 1.2533 14137 31550; BESS Y01(X, Y0, J0X); J0X:= BESS J0(X); X:= X-.78539 81633 97448; COSX:= COS(X); SINX:= SIN(X); P0:= B * (Y0 * SINX + J0X * COSX); Q0:= B * (Y0 * COSX - J0X * SINX) end else begin real X2, AR, B0, B1, B2, Y; Y:= 8/X; X:= 2*Y*Y-1; X2:= X+X; B1:= B2:= 0; for AR:= -.10012 "-15, +.67481 "-15, -.506903 "-14, +.4326596 "-13, -.43045789 "-12, +.516826239 "-11, -.7864091377 "-10, +.163064646352 "- 8, -.5170594537606 "- 7, +.30751847875195 "- 5, -.536522046813212"- 3 do begin B0:= X2 * B1 - B2 + AR; B2:= B1; B1:= B0 end; P0:= X * B1 - B2 + .99946034934752; comment COMPUTATION OF Q0; B1:= B2:= 0; for AR:= -.60999 "-15, +.425523 "-14, -.3336328 "-13, +.30061451 "-12, -.320674742 "-11, +.4220121905 "-10, -.72719159369 "- 9, +.1797245724797 "- 7, -.74144984110606 "- 6, +.683851994261165"- 4 do begin B0:= X2 * B1 - B2 + AR; B2:= B1; B1:= B0 end; Q0:=(X * B1 - B2 -.015555854605337) * Y end BESS PQ0 eop