code 35166; procedure BESS PQ1(X, P1, Q1); value X; real X, P1, Q1; if X < 8 then begin real B, COSX, SINX, J1X, Y1; BESS Y01(X, J1X, Y1); J1X:= BESS J1(X); X:= X-.78539 81633 97448; COSX:= COS(X); SINX:= SIN(X); P1:= B * (J1X * SINX - Y1 * COSX); Q1:= B * (J1X * COSX + Y1 * SINX) end else begin real X2, AR, B0, B1, B2, Y; Y:= 8 / X; X:= 2 * Y * Y - 1; X2 := X + X; comment COMPUTATION OF P1; B1:= B2:= 0; for AR:= +.10668"-15, -.72212 "-15, +.545267 "-14, -.4684224 "-13, +.46991955 "-12, -.570486364 "-11, +.881689866 "-10, -.187189074911 "- 8, +.6177633960644 "- 7, -.39872843004889 "- 5, +.89898983308594 "- 3 do begin B0:= B1 * X2 - B2 + AR; B2:= B1; B1:= B0 end; P1:= X * B1 - B2 + 1.0009030408600137; comment COMPUTATION OF Q1; B1:= B2:= 0; for AR:= -.10269 "-15, +.65083 "-15, -.456125 "-14, +.3596777 "-13, -.32643157 "-12, +.351521879 "-11, -.4686363688 "-10, +.82291933277 "- 9, -.2095978138408 "- 7, +.91386152579555 "- 6, -.96277235491571 "- 4 do begin B0:= X2 * B1 - B2 + AR; B2:= B1; B1:= B0 end; Q1:=(X * B1 - B2 + .46777787069535" -1) * Y end BESS PQ1; eop