| 1 | C -+-+-+-+-+ \ e H A E M K H . F T -+-+-+-+-+\r |
| 2 | C\r |
| 3 | C HERE WE GENERATE THE HASH TABLE USED BY ESAM\r |
| 4 | C *OR 7-OCT-82\r |
| 5 | C\r |
| 6 | C\r |
| 7 | SUBROUTINE MKHASH\r |
| 8 | INCLUDE HAEBUF.FI\r |
| 9 | INCLUDE HAEHAS.FI\r |
| 10 | INCLUDE HAETTY.FI\r |
| 11 | C\r |
| 12 | INTEGER T,R,I,J,ALLCHS\r |
| 13 | C\r |
| 14 | INTEGER NCOND\r |
| 15 | EXTERNAL NCOND\r |
| 16 | \fC\r |
| 17 | ALLCHS=CHNLS+STRIGS @ TOTAL NUMBER OF CHANNELS TO SAMPLE\r |
| 18 | IF (PCKMAX*ALLCHS.GT.16*7) GOTO 50 @ TEST TO PREVENT SUBSCRIPT ERROR IN HASH TABLE\r |
| 19 | T=0\r |
| 20 | DO 20 R=1,PCKMAX\r |
| 21 | DO 20 I=1,ALLCHS\r |
| 22 | T=NCOND(MOD(R,PACK(I)),T,T+1)\r |
| 23 | 20 HASH(I,R)=NCOND(MOD(R,PACK(I)),0,T)\r |
| 24 | C\r |
| 25 | DO 40 I=1,ALLCHS\r |
| 26 | DO 40 J=1,PCKMAX @ WE USE DECREMENTING COUNTER\r |
| 27 | R=PCKMAX+1-J @ SO WE COMPUTE THIS \r |
| 28 | T=NCOND(HASH(I,R),HASH(I,R),T)\r |
| 29 | 40 HASH(I,R)=T\r |
| 30 | HSHSIG=HASH(ALLCHS,PCKMAX) @ DATA WORDS FOR PCKMAX SAMPLES OF ALL CHANNELS\r |
| 31 | C\r |
| 32 | HSHDON=.TRUE.\r |
| 33 | RETURN\r |
| 34 | C\r |
| 35 | 50 WRITE (TTO,1)\r |
| 36 | HSHDON=.FALSE.\r |
| 37 | RETURN\r |
| 38 | 1 FORMAT (' PRODUKT AUS KANALANZAHL (A/D+STRIG) UND ',\r |
| 39 | * 'MESSRATENVERHAELTNIS ZU GROSS')\r |
| 40 | END\r |
| 41 | \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 |