/[MITgcm]/MITgcm/model/src/read_write.F
ViewVC logotype

Diff of /MITgcm/model/src/read_write.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.10 by cnh, Tue Jun 30 17:21:11 1998 UTC revision 1.11 by cnh, Sat Aug 22 17:51:09 1998 UTC
# Line 524  C     myIter - Timestep number Line 524  C     myIter - Timestep number
524  C     myThid - Thread number calling this routine  C     myThid - Thread number calling this routine
525        CHARACTER*(*) pref        CHARACTER*(*) pref
526        CHARACTER*(*) suff        CHARACTER*(*) suff
527        _RL fld(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nZ,nSx,nSy)        _RL fld(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
528        INTEGER myIter        INTEGER myIter
529        INTEGER myThid        INTEGER myThid
530    
# Line 590  C--   Open file Line 590  C--   Open file
590  C--   Set local and global data extents  C--   Set local and global data extents
591        nXP=sNx*nSx        nXP=sNx*nSx
592        nYP=sNy*nSy        nYP=sNy*nSy
593        lFilled = sNx*nSx*nPx * sNy*nSy*nPy * nZ        lFilled = sNx*nSx*nPx * sNy*nSy*nPy * Nr
594        dimList(1) = nXP*nPx        dimList(1) = nXP*nPx
595        dimList(2) = myXGlobalLo        dimList(2) = myXGlobalLo
596        dimList(3) = myXGlobalLo+nXP-1        dimList(3) = myXGlobalLo+nXP-1
597        dimList(4) = nYP*nPy        dimList(4) = nYP*nPy
598        dimList(5) = myYGlobalLo        dimList(5) = myYGlobalLo
599        dimList(6) = myYGlobalLo+nYP-1        dimList(6) = myYGlobalLo+nYP-1
600        dimList(7) = nZ        dimList(7) = Nr
601        dimList(8) = 1        dimList(8) = 1
602        dimList(9) = nZ        dimList(9) = Nr
603    
604  C--   Read data  C--   Read data
605        IF   ( readBinaryPrec .EQ. precFloat32 ) THEN        IF   ( readBinaryPrec .EQ. precFloat32 ) THEN
# Line 615  C     Also regrid it to i,j,k indexing. Line 615  C     Also regrid it to i,j,k indexing.
615        IF   ( readBinaryPrec .EQ. precFloat32 ) THEN        IF   ( readBinaryPrec .EQ. precFloat32 ) THEN
616         DO bj=1,nSy         DO bj=1,nSy
617          DO bi=1,nSx          DO bi=1,nSx
618           DO K=1,nZ           DO K=1,Nr
619            DO j=1,sNy            DO j=1,sNy
620             DO i=1,sNx             DO i=1,sNx
621              iP = (bi-1)*sNx+i              iP = (bi-1)*sNx+i
# Line 633  C     Also regrid it to i,j,k indexing. Line 633  C     Also regrid it to i,j,k indexing.
633        ELSE        ELSE
634         DO bj=1,nSy         DO bj=1,nSy
635          DO bi=1,nSx          DO bi=1,nSx
636           DO K=1,nZ           DO K=1,Nr
637            DO j=1,sNy            DO j=1,sNy
638             DO i=1,sNx             DO i=1,sNx
639              iP = (bi-1)*sNx+i              iP = (bi-1)*sNx+i
# Line 701  C     myIter - Timestep number Line 701  C     myIter - Timestep number
701  C     myThid - Thread number calling this routine  C     myThid - Thread number calling this routine
702        CHARACTER*(*) pref        CHARACTER*(*) pref
703        CHARACTER*(*) suff        CHARACTER*(*) suff
704        _RS fld(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nZ,nSx,nSy)        _RS fld(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
705        INTEGER myIter        INTEGER myIter
706        INTEGER myThid        INTEGER myThid
707    
# Line 767  C--   Open file Line 767  C--   Open file
767  C--   Set local and global data extents  C--   Set local and global data extents
768        nXP=sNx*nSx        nXP=sNx*nSx
769        nYP=sNy*nSy        nYP=sNy*nSy
770        lFilled = sNx*nSx*nPx * sNy*nSy*nPy * nZ        lFilled = sNx*nSx*nPx * sNy*nSy*nPy * Nr
771        dimList(1) = nXP*nPx        dimList(1) = nXP*nPx
772        dimList(2) = myXGlobalLo        dimList(2) = myXGlobalLo
773        dimList(3) = myXGlobalLo+nXP-1        dimList(3) = myXGlobalLo+nXP-1
774        dimList(4) = nYP*nPy        dimList(4) = nYP*nPy
775        dimList(5) = myYGlobalLo        dimList(5) = myYGlobalLo
776        dimList(6) = myYGlobalLo+nYP-1        dimList(6) = myYGlobalLo+nYP-1
777        dimList(7) = nZ        dimList(7) = Nr
778        dimList(8) = 1        dimList(8) = 1
779        dimList(9) = nZ        dimList(9) = Nr
780    
781  C--   Read data  C--   Read data
782        IF   ( readBinaryPrec .EQ. precFloat32 ) THEN        IF   ( readBinaryPrec .EQ. precFloat32 ) THEN
# Line 792  C     Also regrid it to i,j,k indexing. Line 792  C     Also regrid it to i,j,k indexing.
792        IF   ( readBinaryPrec .EQ. precFloat32 ) THEN        IF   ( readBinaryPrec .EQ. precFloat32 ) THEN
793         DO bj=1,nSy         DO bj=1,nSy
794          DO bi=1,nSx          DO bi=1,nSx
795           DO K=1,nZ           DO K=1,Nr
796            DO j=1,sNy            DO j=1,sNy
797             DO i=1,sNx             DO i=1,sNx
798              iP = (bi-1)*sNx+i              iP = (bi-1)*sNx+i
# Line 810  C     Also regrid it to i,j,k indexing. Line 810  C     Also regrid it to i,j,k indexing.
810        ELSE        ELSE
811         DO bj=1,nSy         DO bj=1,nSy
812          DO bi=1,nSx          DO bi=1,nSx
813           DO K=1,nZ           DO K=1,Nr
814            DO j=1,sNy            DO j=1,sNy
815             DO i=1,sNx             DO i=1,sNx
816              iP = (bi-1)*sNx+i              iP = (bi-1)*sNx+i
# Line 1160  C     myIter - Timestep number Line 1160  C     myIter - Timestep number
1160  C     myThid - Thread number calling this routine  C     myThid - Thread number calling this routine
1161        CHARACTER*(*) pref        CHARACTER*(*) pref
1162        CHARACTER*(*) suff        CHARACTER*(*) suff
1163        _RL fld(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nz,nSx,nSy)        _RL fld(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
1164        INTEGER myThid        INTEGER myThid
1165        INTEGER myIter        INTEGER myIter
1166    
# Line 1217  C--   Copy data to IO buffer. Line 1217  C--   Copy data to IO buffer.
1217  C     Also regrid it to i,j,k indexing.  C     Also regrid it to i,j,k indexing.
1218        nXP=sNx*nSx        nXP=sNx*nSx
1219        nYP=sNy*nSy        nYP=sNy*nSy
1220        lFilled = sNx*nSx * sNy*nSy * Nz        lFilled = sNx*nSx * sNy*nSy * Nr
1221        IF   ( writeBinaryPrec .EQ. precFloat32 ) THEN        IF   ( writeBinaryPrec .EQ. precFloat32 ) THEN
1222         DO bj=1,nSy         DO bj=1,nSy
1223          DO bi=1,nSx          DO bi=1,nSx
1224           DO k=1,Nz           DO k=1,Nr
1225            DO j=1,sNy            DO j=1,sNy
1226             DO i=1,sNx             DO i=1,sNx
1227              iP = (bi-1)*sNx+i              iP = (bi-1)*sNx+i
# Line 1237  C     Also regrid it to i,j,k indexing. Line 1237  C     Also regrid it to i,j,k indexing.
1237        ELSE        ELSE
1238         DO bj=1,nSy         DO bj=1,nSy
1239          DO bi=1,nSx          DO bi=1,nSx
1240           DO k=1,Nz           DO k=1,Nr
1241            DO j=1,sNy            DO j=1,sNy
1242             DO i=1,sNx             DO i=1,sNx
1243              iP = (bi-1)*sNx+i              iP = (bi-1)*sNx+i
# Line 1259  C--   Set local and global data extents Line 1259  C--   Set local and global data extents
1259        dimList(4) = nYP*nPy        dimList(4) = nYP*nPy
1260        dimList(5) = myYGlobalLo        dimList(5) = myYGlobalLo
1261        dimList(6) = myYGlobalLo+nYP-1        dimList(6) = myYGlobalLo+nYP-1
1262        dimList(7) = nZ        dimList(7) = Nr
1263        dimList(8) = 1        dimList(8) = 1
1264        dimList(9) = nZ        dimList(9) = Nr
1265    
1266  C--   Write data  C--   Write data
1267        IF   ( writeBinaryPrec .EQ. precFloat32 ) THEN        IF   ( writeBinaryPrec .EQ. precFloat32 ) THEN

Legend:
Removed from v.1.10  
changed lines
  Added in v.1.11

  ViewVC Help
Powered by ViewVC 1.1.22