#! /bin/sh # # Last change: Mihai Dima 2001 # if [ $# -lt 4 ] then echo " " echo " ***** TEXT1CEXT1C ***** " echo " " echo "The programs transforms a TEXT file with one column" echo " in an EXTRA file with one column" echo " =”yyyymmdd” " echo " =1 for monthly values" echo " =2 for annual values" echo " " echo " Syntax: text1cext1c " echo " " exit 0 else echo " " echo " ***** TEXT1CEXT1C ***** " echo " " echo "file1="$1 echo "file2="$2 echo "Start year="$3 echo "Parameter="$4 cp $1 fort.1 fi cat > text1cext1c.f << EOF PROGRAM PTEXTEXT IMPLICIT REAL (A-H,O-Z) NCHAN=1 READ(*,*)IPARAM OPEN(1,FORM='FORMATTED',STATUS='UNKNOWN') OPEN(2,FORM='UNFORMATTED',ACCESS='SEQUENTIAL',STATUS='UNKNOWN') CALL TEXTEXT(IPARAM) STOP END C***************************************************************** SUBROUTINE TEXTEXT(IPARAM) IMPLICIT REAL (A-H,O-Z) C PARAMETER (UNDEF=0.9E+10,UNDEFE=.9*UNDEF) REAL X READ(*,*)NAN C READ(*,*)N IF (IPARAM.EQ.1) THEN N = 0 NREC=0 C NAN=19590000 REWIND 1 1 READ(1,*,END=2) X C PRINT *,X N = N+1 C PRINT *, N,' ',X WRITE(2) NAN+(N-1)*100,159,9999,1 WRITE(2) X NREC=NREC+1 IF (N.EQ.12) THEN N=0 NAN=NAN+10000 ENDIF GOTO 1 ENDIF C IF (IPARAM.EQ.2) THEN N=0 NREC=0 C NAN=18700000 C NAN=18560000 REWIND 1 5 READ(1,*,END=2) X C PRINT *, N,' ',X WRITE(2) NAN+10000,159,9999,1 WRITE(2) X NREC=NREC+1 NAN=NAN+10000 GOTO 5 ENDIF 2 PRINT *,' NUMBER OF RECORDS: ', NREC PRINT *,' REGULAR END ' STOP C END EOF f77 text1cext1c.f -o text1cext1c.x text1cext1c.x $1 $2 << M $4 $3 M cp fort.2 $2 rm fort.1 fort.2 rm text1cext1c.x text1cext1c.f exit