]>
Commit | Line | Data |
---|---|---|
fe4da5cc | 1 | * |
2 | * $Id$ | |
3 | * | |
4 | * $Log$ | |
5 | * Revision 1.1.1.2 1996/10/30 08:27:34 cernlib | |
6 | * Version 7.04 | |
7 | * | |
8 | * Revision 1.1.1.1 1996/04/12 15:29:01 plothow | |
9 | * Version 7.01 | |
10 | * | |
11 | * | |
12 | #include "pdf/pilot.h" | |
13 | SUBROUTINE AFRATIN(XA,YA,N,X,Y,DY) | |
14 | PARAMETER (NMAX=10,TINY=1.E-25) | |
15 | DIMENSION XA(NMAX),YA(NMAX),C(NMAX),D(NMAX) | |
16 | Y=0. | |
17 | IF(N.GT.NMAX) RETURN | |
18 | NS=1 | |
19 | HH=ABS(X-XA(1)) | |
20 | DO 11 I=1,N | |
21 | H=ABS(X-XA(I)) | |
22 | IF (H.EQ.0.)THEN | |
23 | Y=YA(I) | |
24 | DY=0.0 | |
25 | RETURN | |
26 | ELSE IF (H.LT.HH) THEN | |
27 | NS=I | |
28 | HH=H | |
29 | ENDIF | |
30 | C(I)=YA(I) | |
31 | D(I)=YA(I)+TINY | |
32 | 11 CONTINUE | |
33 | Y=YA(NS) | |
34 | NS=NS-1 | |
35 | DO 13 M=1,N-1 | |
36 | DO 12 I=1,N-M | |
37 | W=C(I+1)-D(I) | |
38 | H=XA(I+M)-X | |
39 | T=(XA(I)-X)*D(I)/H | |
40 | DD=T-C(I+1) | |
41 | C IF(DD.EQ.0.)PAUSE | |
42 | DD=W/DD | |
43 | D(I)=C(I+1)*DD | |
44 | C(I)=T*DD | |
45 | 12 CONTINUE | |
46 | IF (2*NS.LT.N-M)THEN | |
47 | DY=C(NS+1) | |
48 | ELSE | |
49 | DY=D(NS) | |
50 | NS=NS-1 | |
51 | ENDIF | |
52 | Y=Y+DY | |
53 | 13 CONTINUE | |
54 | RETURN | |
55 | END |