code 31427; procedure GSS LAG WGHTS(N, ALFA, X, W); value N, ALFA; integer N; real ALFA; array X, W; begin integer I, J; real H0, S, R0, R1, R2, XI; array A, B[0:N]; A[0]:= 1 + ALFA; A[1]:= 3 + ALFA; B[1]:= SQRT(A[0]); for I:= 2 step 1 until N - 1 do begin A[I]:= I + I + ALFA + 1; B[I]:= SQRT(I*(I + ALFA)) end; ALL LAG ZER(N, ALFA, X); H0:= GAMMA(1 + ALFA); for I:= 1 step 1 until N do begin XI:= X[I]; R0:= 1; R1:= (XI - A[0])/B[1]; S:= 1 + R1*R1; for J:= 2 step 1 until N - 1 do begin R2:= ((XI - A[J - 1])*R1 - B[J - 1]*R0)/B[J]; R0:= R1; R1:= R2; S:= S + R2*R2 end; W[I]:= H0/S end end GSS LAG WGHTS; eop