| 1 | C -+-+-+-+-+\ e H A E N Y T . F T \ f-+-+-+-+-+\r |
| 2 | C\r |
| 3 | C MUST BE MAPPED INTO THE SAME LEVEL AND OVERLAY WITH HAENYA.FT\r |
| 4 | C\r |
| 5 | C THIS ROUTINE IS CALLED FROM HAENYX.\r |
| 6 | C IT RETURNS THE FILTERED TABLE POSITION ( CH2 )\r |
| 7 | C \r |
| 8 | C * OR 24-APR-84 HA\r |
| 9 | C * UP 28-MAY-84 HA INSERTS THREE POINT FILTER\r |
| 10 | C\r |
| 11 | C NYAFIL: 0 ORIGINAL VALUE OF TABLE POSITION\r |
| 12 | C 1 11 POINT FILTER\r |
| 13 | C 2 LINEAR APPROXIMATION\r |
| 14 | C 3 3 POINT FILTER\r |
| 15 | C\r |
| 16 | REAL FUNCTION NYTASM (ID)\r |
| 17 | C\r |
| 18 | C INPUT PARAMETER IS\r |
| 19 | INTEGER ID @ HOLDS THE INDEX TO THE DATA POINTS\r |
| 20 | C\r |
| 21 | INCLUDE HAECNY.FI\r |
| 22 | REAL XYSAM\r |
| 23 | LOGICAL BETW\r |
| 24 | EXTERNAL XYSAM,BETW\r |
| 25 | C\r |
| 26 | \f INTEGER T1,J,I\r |
| 27 | REAL C(6) @ 11 POINT FILTER CONSTANTS\r |
| 28 | DATA C /.1038,.1956,.1608,.0488,.021,-.03/\r |
| 29 | C\r |
| 30 | C\r |
| 31 | IF (NYAFIL.GT.0.AND.NYAFIL.LE.3) GOTO 9\r |
| 32 | NYTASM=XYSAM(ID,2) @ NO FILTERING, RETURN ORIGINAL VALUE\r |
| 33 | RETURN\r |
| 34 | C\r |
| 35 | C\r |
| 36 | 9 GOTO (10,20,30),NYAFIL\r |
| 37 | C\r |
| 38 | 10 CONTINUE\r |
| 39 | C 11 POINT FILTER\r |
| 40 | T1=MAX0(ID,6)\r |
| 41 | NYTASM=0\r |
| 42 | DO 11 J=0,5\r |
| 43 | 11 NYTASM=C(J+1)*(XYSAM(T1-J,2)+XYSAM(T1+J,2))+NYTASM @ 11 POINT FILTER OF TURN TABLE SIGNAL\r |
| 44 | RETURN\r |
| 45 | C\r |
| 46 | C LINEAR APPROXIMATION\r |
| 47 | C\r |
| 48 | 20 CONTINUE @ LINEAR APROXIMATION\r |
| 49 | DO 21 I=1,8\r |
| 50 | IF (SMOTAB(1,I).LT.0) GOTO 23\r |
| 51 | IF (BETW(SMOTAB(1,I),ID,SMOTAB(2,I))) GOTO 22\r |
| 52 | IF (ID.LT.SMOTAB(1,I)) GOTO 22\r |
| 53 | IF (BETW(SMOTAB(2,I),ID,SMOTAB(1,MIN0(I+1,8)))) GOTO 23\r |
| 54 | 21 CONTINUE\r |
| 55 | I=9 @ SAVE A JUMP OVER 23\r |
| 56 | 23 I=MAX0(1,I-1) @ TAKE THE LAST VALUES\r |
| 57 | 22 CONTINUE\r |
| 58 | NYTASM=SMOTBL(1,I)*ID+SMOTBL(2,I) @ STEIGUNG*ID+Y-ACHSENABSCHNITT\r |
| 59 | RETURN\r |
| 60 | C\r |
| 61 | C 3 POINT FILTER\r |
| 62 | C\r |
| 63 | 30 T1=MAX0(ID,2)\r |
| 64 | NYTASM=XYSAM(T1,2)*.5+(XYSAM(T1-1,2)+XYSAM(T1+1,2))*.25\r |
| 65 | RETURN\r |
| 66 | END\r |
| 67 | \1a\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 |