#! /bin/sh # # Last change: Mihai Dima 2001 # if [ $# -lt 3 ] then echo " " echo " ***** ANOMAL ***** " echo " " echo " The program calculates anomalies (file3) " echo "from monthly data (file1) and long term means (file2)" echo " " echo " Syntax: anomal " echo " " exit 0 else echo " " echo " ***** ANOMAL ***** " echo " " echo "file1="$1 echo "file2="$2 echo "file3="$3 cp $1 fort.1 cp $2 fort.2 fi cat > anomal.f <-FILE EMPTY' GOTO 9910 101 WRITE(6,6010) ' DIMENSION TOO LARGE >',IE77 GOTO 9910 102 WRITE(6,6010) 'NUMBER OF MONTH WRONG', ID, MM GOTO 9910 200 WRITE(6,6010) ' FILE EMPTY' GOTO 9910 201 WRITE(6,6010) ' DIMENSION TOO LARGE >',IE77 GOTO 9910 202 WRITE(6,6010) 'NUMBER OF MONTH WRONG', ID, MM GOTO 9910 300 WRITE(6,6010) '/ INCOMPATBILE (ID(2))',IE2,ID(2) GOTO 9910 301 WRITE(6,6010) '/ INCOMPATBILE (ID(3))',IE3,ID(3) GOTO 9910 302 WRITE(6,6010) '/ INCOMPATBILE (ID(4))',IE4,ID(4) GOTO 9910 9910 CONTINUE C C* CAUSE AN ABORT. C PRINT *,'*ANOMAL*: FATAL END ' CALL MINONE(ONE,XNEGO) Z=SQRT(XNEGO) STOP C C* NORMAL TERMINATION. C 9920 PRINT *,'*ANOMAL*: O.K.' STOP 6010 FORMAT(' *ANOMAL* :',1X,A,4I10,/,1X,4I10) END SUBROUTINE MINONE(XIN,XOUT) XOUT=-XIN RETURN END EOF f77 anomal.f -o anomal.x anomal.x $1 $2 $3 cp fort.3 $3 rm fort.1 fort.2 fort.3 rm anomal.x anomal.f exit