/[MITgcm]/MITgcm/eesupp/src/print.F
ViewVC logotype

Diff of /MITgcm/eesupp/src/print.F

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

revision 1.7 by cnh, Mon Jun 8 21:43:00 1998 UTC revision 1.9 by adcroft, Mon Jun 22 16:24:51 1998 UTC
# Line 105  C Line 105  C
105        END        END
106    
107  CStartofinterface  CStartofinterface
108        SUBROUTINE PRINT_LIST_I( fld, lFld, index_type, ioUnit )        SUBROUTINE PRINT_LIST_I( fld, lFld, index_type, markEnd, compact, ioUnit )
109  C     /==========================================================\  C     /==========================================================\
110  C     | o SUBROUTINE PRINT_LIST_I                                |  C     | o SUBROUTINE PRINT_LIST_I                                |
111  C     |==========================================================|  C     |==========================================================|
# Line 127  C                  INDEX_K    => /* K = Line 127  C                  INDEX_K    => /* K =
127  C                  INDEX_I    => /* I = nnn */  C                  INDEX_I    => /* I = nnn */
128  C                  INDEX_J    => /* J = nnn */  C                  INDEX_J    => /* J = nnn */
129  C                  INDEX_NONE =>  C                  INDEX_NONE =>
130    C     compact -  Flag to control use of repeat symbol for same valued
131    C                fields.
132    C     markEnd -  Flag to control whether there is a separator after the
133    C                last element
134  C     ioUnit -  Unit number for IO.  C     ioUnit -  Unit number for IO.
135        INTEGER lFld        INTEGER lFld
136        INTEGER index_type        INTEGER index_type
137        INTEGER fld(lFld)        INTEGER fld(lFld)
138          LOGICAL markEnd
139          LOGICAL compact
140        INTEGER ioUnit        INTEGER ioUnit
141  CEndifinterface  CEndifinterface
142    
# Line 170  C     K    - Loop counter Line 176  C     K    - Loop counter
176        xOld = fld(1)        xOld = fld(1)
177        DO K=2,lFld        DO K=2,lFld
178         xNew = fld(K  )         xNew = fld(K  )
179         IF ( xNew .NE. xOld ) THEN         IF ( .NOT. compact .OR. xNew .NE. xOld ) THEN
180          nDup = iHi-iLo+1          nDup = iHi-iLo+1
181          IF ( nDup .EQ. 1 ) THEN          IF ( nDup .EQ. 1 ) THEN
182           WRITE(msgBuf,'(A,I5,A)') '              ',xOld,punc           WRITE(msgBuf,'(A,I5,A)') '              ',xOld,punc
# Line 191  C     K    - Loop counter Line 197  C     K    - Loop counter
197         ENDIF         ENDIF
198        ENDDO        ENDDO
199        punc = ' '        punc = ' '
200          IF ( markEnd ) punc = ','
201        nDup = iHi-iLo+1        nDup = iHi-iLo+1
202        IF    ( nDup .EQ. 1 ) THEN        IF    ( nDup .EQ. 1 ) THEN
203         WRITE(msgBuf,'(A,I5,A)') '              ',xOld,punc         WRITE(msgBuf,'(A,I5,A)') '              ',xOld,punc
# Line 208  C     K    - Loop counter Line 215  C     K    - Loop counter
215        END        END
216    
217  CStartofinterface  CStartofinterface
218        SUBROUTINE PRINT_LIST_L( fld, lFld, index_type, ioUnit )        SUBROUTINE PRINT_LIST_L( fld, lFld, index_type, markEnd, compact, ioUnit )
219  C     /==========================================================\  C     /==========================================================\
220  C     | o SUBROUTINE PRINT_LIST_L                                |  C     | o SUBROUTINE PRINT_LIST_L                                |
221  C     |==========================================================|  C     |==========================================================|
# Line 230  C                  INDEX_K    => /* K = Line 237  C                  INDEX_K    => /* K =
237  C                  INDEX_I    => /* I = nnn */  C                  INDEX_I    => /* I = nnn */
238  C                  INDEX_J    => /* J = nnn */  C                  INDEX_J    => /* J = nnn */
239  C                  INDEX_NONE =>  C                  INDEX_NONE =>
240    C     compact -  Flag to control use of repeat symbol for same valued
241    C                fields.
242    C     markEnd -  Flag to control whether there is a separator after the
243    C                last element
244  C     ioUnit -  Unit number for IO.  C     ioUnit -  Unit number for IO.
245        INTEGER lFld        INTEGER lFld
246        INTEGER index_type        INTEGER index_type
247        LOGICAL fld(lFld)        LOGICAL fld(lFld)
248          LOGICAL markEnd
249          LOGICAL compact
250        INTEGER ioUnit        INTEGER ioUnit
251  CEndifinterface  CEndifinterface
252    
# Line 273  C     K    - Loop counter Line 286  C     K    - Loop counter
286        xOld = fld(1)        xOld = fld(1)
287        DO K=2,lFld        DO K=2,lFld
288         xNew = fld(K  )         xNew = fld(K  )
289         IF ( xNew .NE. xOld ) THEN         IF ( .NOT. compact .OR. xNew .NE. xOld ) THEN
290          nDup = iHi-iLo+1          nDup = iHi-iLo+1
291          IF ( nDup .EQ. 1 ) THEN          IF ( nDup .EQ. 1 ) THEN
292           WRITE(msgBuf,'(A,L5,A)') '              ',xOld,punc           WRITE(msgBuf,'(A,L5,A)') '              ',xOld,punc
# Line 294  C     K    - Loop counter Line 307  C     K    - Loop counter
307         ENDIF         ENDIF
308        ENDDO        ENDDO
309        punc = ' '        punc = ' '
310          IF ( markEnd ) punc = ','
311        nDup = iHi-iLo+1        nDup = iHi-iLo+1
312        IF    ( nDup .EQ. 1 ) THEN        IF    ( nDup .EQ. 1 ) THEN
313         WRITE(msgBuf,'(A,L5,A)') '              ',xOld,punc         WRITE(msgBuf,'(A,L5,A)') '              ',xOld,punc
# Line 311  C     K    - Loop counter Line 325  C     K    - Loop counter
325        END        END
326    
327  CStartofinterface  CStartofinterface
328        SUBROUTINE PRINT_LIST_R8( fld, lFld, index_type, ioUnit )        SUBROUTINE PRINT_LIST_R8( fld, lFld, index_type, markEnd, compact, ioUnit )
329  C     /==========================================================\  C     /==========================================================\
330  C     | o SUBROUTINE PRINT_LIST_R8                               |  C     | o SUBROUTINE PRINT_LIST_R8                               |
331  C     |==========================================================|  C     |==========================================================|
# Line 333  C                  INDEX_K    => /* K = Line 347  C                  INDEX_K    => /* K =
347  C                  INDEX_I    => /* I = nnn */  C                  INDEX_I    => /* I = nnn */
348  C                  INDEX_J    => /* J = nnn */  C                  INDEX_J    => /* J = nnn */
349  C                  INDEX_NONE =>  C                  INDEX_NONE =>
350    C     compact -  Flag to control use of repeat symbol for same valued
351    C                fields.
352    C     markEnd -  Flag to control whether there is a separator after the
353    C                last element
354  C     ioUnit -  Unit number for IO.  C     ioUnit -  Unit number for IO.
355        INTEGER lFld        INTEGER lFld
356        INTEGER index_type        INTEGER index_type
357        Real*8  fld(lFld)        Real*8  fld(lFld)
358          LOGICAL markEnd
359          LOGICAL compact
360        INTEGER ioUnit        INTEGER ioUnit
361  CEndifinterface  CEndifinterface
362    
# Line 376  C     K    - Loop counter Line 396  C     K    - Loop counter
396        xOld = fld(1)        xOld = fld(1)
397        DO K=2,lFld        DO K=2,lFld
398         xNew = fld(K  )         xNew = fld(K  )
399         IF ( xNew .NE. xOld ) THEN         IF ( .NOT. compact .OR. xNew .NE. xOld ) THEN
400          nDup = iHi-iLo+1          nDup = iHi-iLo+1
401          IF ( nDup .EQ. 1 ) THEN          IF ( nDup .EQ. 1 ) THEN
402           WRITE(msgBuf,'(A,1PE23.15,A)') '              ',xOld,punc           WRITE(msgBuf,'(A,1PE23.15,A)') '              ',xOld,punc
# Line 397  C     K    - Loop counter Line 417  C     K    - Loop counter
417         ENDIF         ENDIF
418        ENDDO        ENDDO
419        punc = ' '        punc = ' '
420          IF ( markEnd ) punc = ','
421        nDup = iHi-iLo+1        nDup = iHi-iLo+1
422        IF    ( nDup .EQ. 1 ) THEN        IF    ( nDup .EQ. 1 ) THEN
423         WRITE(msgBuf,'(A,1PE23.15,A)') '              ',xOld,punc         WRITE(msgBuf,'(A,1PE23.15,A)') '              ',xOld,punc
# Line 414  C     K    - Loop counter Line 435  C     K    - Loop counter
435        END        END
436    
437  CStartOfInterface  CStartOfInterface
438        SUBROUTINE PRINT_MAPR4 ( fld, fldTitle, plotMode,        SUBROUTINE PRINT_MAPRS ( fld, fldTitle, plotMode,
439       I        iLo,   iHi,   jLo,   jHi,  kLo,  kHi, nBx, nBy,       I        iLo,   iHi,   jLo,   jHi,  kLo,  kHi, nBx, nBy,
440       I       iMin,  iMax,  iStr,       I       iMin,  iMax,  iStr,
441       I       jMin,  jMax,  jStr,       I       jMin,  jMax,  jStr,
# Line 469  C     kStr Line 490  C     kStr
490        INTEGER jLo, jHi        INTEGER jLo, jHi
491        INTEGER kLo, kHi        INTEGER kLo, kHi
492        INTEGER nBx, nBy        INTEGER nBx, nBy
493        Real*4 fld(iLo:iHi,jLo:jHi,kLo:kHi,nBx,nBy)        _RS fld(iLo:iHi,jLo:jHi,kLo:kHi,nBx,nBy)
494        INTEGER iMin, iMax, iStr        INTEGER iMin, iMax, iStr
495        INTEGER jMin, jMax, jStr        INTEGER jMin, jMax, jStr
496        INTEGER kMin, kMax, kStr        INTEGER kMin, kMax, kStr
# Line 808  C--   Write delimiter Line 829  C--   Write delimiter
829        END        END
830    
831  CStartOfInterface  CStartOfInterface
832        SUBROUTINE PRINT_MAPR8 ( fld, fldTitle, plotMode,        SUBROUTINE PRINT_MAPRL ( fld, fldTitle, plotMode,
833       I        iLo,   iHi,   jLo,   jHi,  kLo,  kHi, nBx, nBy,       I        iLo,   iHi,   jLo,   jHi,  kLo,  kHi, nBx, nBy,
834       I       iMin,  iMax,  iStr,       I       iMin,  iMax,  iStr,
835       I       jMin,  jMax,  jStr,       I       jMin,  jMax,  jStr,
# Line 816  CStartOfInterface Line 837  CStartOfInterface
837       I      bxMin, bxMax,  bxStr,       I      bxMin, bxMax,  bxStr,
838       I      byMin, byMax,  byStr )       I      byMin, byMax,  byStr )
839  C     /==========================================================\  C     /==========================================================\
840  C     | SUBROUTINE PRINT_MAPR8                                   |  C     | SUBROUTINE PRINT_MAPRL                                   |
841  C     | o Does textual mapping printing of a field.              |  C     | o Does textual mapping printing of a field.              |
842  C     |==========================================================|  C     |==========================================================|
843  C     | This routine does the actual formatting of the data      |  C     | This routine does the actual formatting of the data      |
# Line 863  C     kStr Line 884  C     kStr
884        INTEGER jLo, jHi        INTEGER jLo, jHi
885        INTEGER kLo, kHi        INTEGER kLo, kHi
886        INTEGER nBx, nBy        INTEGER nBx, nBy
887        Real*8 fld(iLo:iHi,jLo:jHi,kLo:kHi,nBx,nBy)        _RL fld(iLo:iHi,jLo:jHi,kLo:kHi,nBx,nBy)
888        INTEGER iMin, iMax, iStr        INTEGER iMin, iMax, iStr
889        INTEGER jMin, jMax, jStr        INTEGER jMin, jMax, jStr
890        INTEGER kMin, kMax, kStr        INTEGER kMin, kMax, kStr

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.9

  ViewVC Help
Powered by ViewVC 1.1.22