--- MITgcm/eesupp/src/dfile.F 1998/05/21 18:30:08 1.1 +++ MITgcm/eesupp/src/dfile.F 1998/06/29 14:04:32 1.6 @@ -1,4 +1,4 @@ -C $Header: /home/ubuntu/mnt/e9_copy/MITgcm/eesupp/src/Attic/dfile.F,v 1.1 1998/05/21 18:30:08 cnh Exp $ +C $Header: /home/ubuntu/mnt/e9_copy/MITgcm/eesupp/src/Attic/dfile.F,v 1.6 1998/06/29 14:04:32 cnh Exp $ #include "CPP_EEOPTIONS.h" @@ -218,15 +218,15 @@ IF ( aMode .EQ. accessModeRW ) THEN OPEN(UNIT=mUnit,NAME=fNamMeta(i2Lo:i2Hi),STATUS='UNKNOWN',ERR=899) CLOSE(mUnit,ERR=899) + OPEN(UNIT=mUnit,NAME=fNamMeta(i2Lo:i2Hi),STATUS='UNKNOWN',ERR=899) + metaDataStatus(fileHandle,myThid) = metaDataNotWritten + nameOfMFile(fileHandle,myThid) = fNamMeta(i2Lo:i2Hi) ENDIF - OPEN(UNIT=mUnit,NAME=fNamMeta(i2Lo:i2Hi),STATUS='UNKNOWN',ERR=899) - metaDataStatus(fileHandle,myThid) = metaDataNotWritten - nameOfMFile(fileHandle,myThid) = fNamMeta(i2Lo:i2Hi) ENDIF C-- Open data file nameOfDFile(fileHandle,myThid) = fNam(i1Lo:i1Hi) - OPEN(UNIT=dUnit,NAME=fNam(i1Lo:i1Hi),STATUS='UNKNOWN',ERR=799, + OPEN(UNIT=dUnit,NAME=fNam(i1Lo:i1Hi),STATUS='UNKNOWN', !ERR=799, & FORM='UNFORMATTED',ACCESS='SEQUENTIAL') @@ -345,8 +345,9 @@ 899 CONTINUE WRITE(msgBuf,'(A)') ' S/R DFILE_READ_R4 ' CALL PRINT_ERROR( msgBuf , 1) - WRITE(msgBuf,'(A,I4,A,A)') ' Thread ', myThid, ' read error for ', - & fNam(iLo:iHi) + WRITE(msgBuf,'(A,I4,A)') ' Thread ', myThid, ' error reading file' + CALL PRINT_ERROR( msgBuf , 1) + WRITE(msgBuf,'(A,A,A)') ' "', fNam(iLo:iHi),'"' CALL PRINT_ERROR( msgBuf , 1) IF ( eMode .EQ. errorModeSTOP ) THEN STOP 'ABNORMAL END: S/R DFILE_READ_R4' @@ -427,8 +428,9 @@ 899 CONTINUE WRITE(msgBuf,'(A)') ' S/R DFILE_READ_R8 ' CALL PRINT_ERROR( msgBuf , 1) - WRITE(msgBuf,'(A,I4,A,A)') ' Thread ', myThid, ' read error for ', - & fNam(iLo:iHi) + WRITE(msgBuf,'(A,I4,A)') ' Thread ', myThid, ' error reading file' + CALL PRINT_ERROR( msgBuf , 1) + WRITE(msgBuf,'(A,A,A)') ' "', fNam(iLo:iHi),'"' CALL PRINT_ERROR( msgBuf , 1) IF ( eMode .EQ. errorModeSTOP ) THEN STOP 'ABNORMAL END: S/R DFILE_READ_R8' @@ -545,8 +547,8 @@ C msgBuf - Textual printing message buffer C eMode - Error mode for this file handle INTEGER ioUnit - CHARACTER(MAX_LEN_MBUF) msgBuf - CHARACTER(MAX_LEN_FNAM) fNam + CHARACTER*(MAX_LEN_MBUF) msgBuf + CHARACTER*(MAX_LEN_FNAM) fNam INTEGER eMode INTEGER I @@ -568,25 +570,32 @@ WRITE(msgBuf,'(A)') '// START OF META DATA' CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) - WRITE(msgBuf,'(A,A)') ' id = ','/* Identifier */' + WRITE(msgBuf,'(A,A)') ' id =[ ','/* Identifier */' CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) - CALL PRINT_LIST_I( fileId, 1, INDEX_NONE, ioUnit ) - WRITE(msgBuf,'(A)') ' ; ' + CALL PRINT_LIST_I( fileId, 1, INDEX_NONE, .FALSE., .TRUE., ioUnit ) + WRITE(msgBuf,'(A)') ' ]; ' CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) - WRITE(msgBuf,'(A,A)') ' nDims = ','/* Number of dimensions */' + WRITE(msgBuf,'(A,A)') ' nDims =[ ','/* Number of dimensions */' CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) - CALL PRINT_LIST_I( nDims, 1, INDEX_NONE, ioUnit ) - WRITE(msgBuf,'(A)') ' ; ' + CALL PRINT_LIST_I( nDims, 1, INDEX_NONE, .FALSE., .TRUE., ioUnit ) + WRITE(msgBuf,'(A)') ' ]; ' CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) - WRITE(msgBuf,'(A,A)') ' dimList = ', + WRITE(msgBuf,'(A,A)') ' dimList =[ ', & '/* Global1, local min1, local max1, ... */' CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) DO I=1,nDims - CALL PRINT_LIST_I( dimList((I-1)*3+1), 3, INDEX_NONE, ioUnit ) + CALL PRINT_LIST_I( dimList((I-1)*3+1), 3, INDEX_NONE, I.NE.nDims, .FALSE., ioUnit ) ENDDO - WRITE(msgBuf,'(A)') ' ; ' + WRITE(msgBuf,'(A)') ' ]; ' + CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) + + WRITE(msgBuf,'(A,A)') ' format =[ ','/* Field format */' + CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) + WRITE(msgBuf,'(16X,A)') '''float32''' + CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) + WRITE(msgBuf,'(A)') ' ]; ' CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) WRITE(msgBuf,'(A)') '// END OF META DATA' @@ -667,8 +676,8 @@ C msgBuf - Textual printing message buffer C eMode - Error mode for this file handle INTEGER ioUnit - CHARACTER(MAX_LEN_MBUF) msgBuf - CHARACTER(MAX_LEN_FNAM) fNam + CHARACTER*(MAX_LEN_MBUF) msgBuf + CHARACTER*(MAX_LEN_FNAM) fNam INTEGER eMode INTEGER I @@ -690,25 +699,34 @@ WRITE(msgBuf,'(A)') '// START OF META DATA' CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) - WRITE(msgBuf,'(A,A)') ' id = ','/* Identifier */' + WRITE(msgBuf,'(A,A)') ' id =[ ','/* Identifier */' CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) - CALL PRINT_LIST_I( fileId, 1, INDEX_NONE, ioUnit ) - WRITE(msgBuf,'(A)') ' ; ' + CALL PRINT_LIST_I( fileId, 1, INDEX_NONE, .FALSE., .TRUE., ioUnit ) + WRITE(msgBuf,'(A)') ' ]; ' CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) - WRITE(msgBuf,'(A,A)') ' nDims = ','/* Number of dimensions */' + WRITE(msgBuf,'(A,A)') ' nDims =[ ','/* Number of dimensions */' CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) - CALL PRINT_LIST_I( nDims, 1, INDEX_NONE, ioUnit ) - WRITE(msgBuf,'(A)') ' ; ' + CALL PRINT_LIST_I( nDims, 1, INDEX_NONE, .FALSE., .TRUE., ioUnit ) + WRITE(msgBuf,'(A)') ' ]; ' CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) - WRITE(msgBuf,'(A,A)') ' dimList = ', + WRITE(msgBuf,'(A,A)') ' dimList =[ ', & '/* Global1, local min1, local max1, ... */' CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) DO I=1,nDims - CALL PRINT_LIST_I( dimList((I-1)*3+1), 3, INDEX_NONE, ioUnit ) + CALL PRINT_LIST_I( dimList((I-1)*3+1), 3, INDEX_NONE, I.NE.nDims, .FALSE., ioUnit ) ENDDO + WRITE(msgBuf,'(A)') ' ]; ' + CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) + + WRITE(msgBuf,'(A,A)') ' format =[ ','/* Field format */' + CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) + WRITE(msgBuf,'(16X,A)') '''float64''' CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) + WRITE(msgBuf,'(A)') ' ]; ' + CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) + WRITE(msgBuf,'(A)') '// END OF META DATA' CALL PRINT_MESSAGE( msgBuf, ioUnit, SQUEEZE_RIGHT , 1) metaDataStatus(fileHandle,myThid) = metaDataWritten