ERRORS --------- GOANAL.F: In program `MAIN__': GOANAL.F:24: TYPE *,'KEY-IN YEAR & MONTH : YYMM' ^ Unsupported VXT statement at (^) GOANAL.F:25: ACCEPT '(A4)',YM 1 2 Unrecognized statement name at (1) and invalid form for assignment or statement-function definition at (2) GOANAL.F:27: TYPE *,'KEY-IN NUMBER OF STATION : NS' ^ Unsupported VXT statement at (^) GOANAL.F:28: ACCEPT *,NS 1 2 Unrecognized statement name at (1) and invalid form for assignment or statement-function definition at (2) GOANAL.F:41: TYPE *,'OPENING FILE : ',FILN ^ Unsupported VXT statement at (^) GOANAL.F:48: TYPE *,'WRONG FILE READ, SHOULD BE READING ',JYM, ^ Unsupported VXT statement at (^) GOANAL.F:88: warning: NSI(L,I) = IINT( SIGMA(L,I)/AVEHS(L)*100. ) ^ Reference to unimplemented intrinsic `IINT' at (^) (assumed EXTERNAL) -------------------------------------------------------------------------------------------- C PROGRAM : GOANAL.FTN C FUNCTION : GONO ERROR ANALYSIS (MONTHLY). C WRITTEN BY : N.H. YEONG (DEC 87) DIMENSION ID(31),IT(31),HS(31,4),DEL(31,3),MINUS(4,3), * IPLUS(4,3),AVEDEL(4,3),SIGMA(4,3),NSI(4,3), * AVEHS(4),NUM(4) CHARACTER*2 STN(4) CHARACTER*3 MTH(12) CHARACTER*4 YM CHARACTER*6 FILN CHARACTER*13 OILRIG(4),MODE(3) DATA OILRIG /'TAPIS A','LUCONIA','SAMARANG','SOUTH FURIOUS'/ DATA STN /'TA','LU','SA','SF'/ DATA MODE /'ANALYSIS','24HR FORECAST','48HR FORECAST'/ DATA MTH /'JAN','FEB','MAR','APR','MAY','JUN', * 'JUL','AUG','SEP','OCT','NOV','DEC'/ TYPE *,'KEY-IN YEAR & MONTH : YYMM' ACCEPT '(A4)',YM TYPE *,'KEY-IN NUMBER OF STATION : NS' ACCEPT *,NS DO 20 I = 1,3 DO 20 L = 1,NS IPLUS(L,I) = 0 MINUS(L,I) = 0 20 CONTINUE DO 10 L = 1,NS N = 0 SUMHS = 0. FILN = STN(L)//YM OPEN(1,FILE=FILN) TYPE *,'OPENING FILE : ',FILN READ(1,12) IHEAD 12 FORMAT(I4) C CHECK IF IT IS THE RIGHT FILE. JYM = CTOI(YM,K) IF( IHEAD.EQ.JYM ) GOTO 15 TYPE *,'WRONG FILE READ, SHOULD BE READING ',JYM, * ' BUT READ ',IHEAD GOTO 100 15 N = N+1 READ(1,16,END=99) ID(N),IT(N),HS(N,1),HS(N,2),HS(N,3),HS(N,4) 16 FORMAT(2I2,4F3.1) IF( HS(N,1).EQ.99.9 ) N = N-1 GOTO 15 99 N = N-1 NUM(L) = N IF (N.GE.5) THEN DO 30 I = 1,N SUMHS = SUMHS + HS(I,1) 30 CONTINUE AVEHS(L) = SUMHS/N DO 40 I = 1,3 SUM = 0. DO 50 J = 1,N K = I+1 DEL(J,I) = HS(J,1) - HS(J,K) SUM = SUM + DEL(J,I) IF( DEL(J,I) ) 52,50,54 54 MINUS(L,I) = MINUS(L,I) + 1 GOTO 50 52 IPLUS(L,I) = IPLUS(L,I) + 1 50 CONTINUE AVEDEL(L,I) = SUM/N SUMDEL = 0. DO 60 J =1,N VAR = ( DEL(J,I) - AVEDEL(L,I) ) ** 2 SUMDEL = SUMDEL + VAR 60 CONTINUE SIGMA(L,I) = SQRT( SUMDEL/(N-1) ) NSI(L,I) = IINT( SIGMA(L,I)/AVEHS(L)*100. ) 40 CONTINUE ELSE AVEHS(L) = 654321. DO 45 I = 1,3 AVEDEL(L,I) = 654321. SIGMA(L,I) = 654321. NSI(L,I) = 654321 IPLUS(L,I) = 654321 MINUS(L,I) = 654321 45 CONTINUE ENDIF 10 CONTINUE IY = IHEAD/100 IM = MOD(IHEAD,100) WRITE(6,22) MTH(IM),IY 22 FORMAT(/////,20X,'SUMMARY TABLE FOR ',A3,' 19',I2,2X,'(GONO)') WRITE(6,23) 23 FORMAT(20X,34('=')) DO 70 I = 1,3 WRITE(6,24) MODE(I) 24 FORMAT(//,20X,'H (M) ',A13) IF (I.EQ.1) THEN WRITE(6,27) 27 FORMAT(20X,14('-'),/) ELSE WRITE(6,28) 28 FORMAT(20X,19('-'),/) ENDIF WRITE(6,25) 25 FORMAT(20X,'LOCATION',8X,'NUMBER',3X,'AV.OBS',3X,'AV.ERROR', * 3X,'SIGMA',4X,'SI(%)',3X,'PLUS',3X,'MINUS') WRITE(6,29) 29 FORMAT(20X,8('-'),8X,6('-'),3X,6('-'),3X,8('-'), * 3X,5('-'),4X,5('-'),3X,4('-'),3X,5('-'),/) DO 80 L = 1,NS WRITE(6,26) OILRIG(L),NUM(L),AVEHS(L),AVEDEL(L,I), * SIGMA(L,I),NSI(L,I),IPLUS(L,I),MINUS(L,I) 26 FORMAT(20X,A13,4X,I3,6X,F4.2,5X,F5.2,5X,F5.2,4X,I4,4X,I3, * 5X,I3,/) 80 CONTINUE 70 CONTINUE CLOSE(1) 100 STOP END INTEGER FUNCTION IINT(A) IF( A.LT.0.) GOTO 10 IINT = INT( A+.5) GOTO 20 10 IINT = -INT( ABS(A)+.5) 20 RETURN END