/[MITgcm]/MITgcm/pkg/diagnostics/diagstats_output.F
ViewVC logotype

Diff of /MITgcm/pkg/diagnostics/diagstats_output.F

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

revision 1.7 by molod, Mon Jul 11 16:16:29 2005 UTC revision 1.8 by jmc, Tue Feb 5 15:13:01 2008 UTC
# Line 43  CEOP Line 43  CEOP
43    
44  C     !LOCAL VARIABLES:  C     !LOCAL VARIABLES:
45        INTEGER j, m, ndId, iSp, iSm        INTEGER j, m, ndId, iSp, iSm
46        CHARACTER*8 parms1        CHARACTER*10 gcode
       CHARACTER*3 mate_index  
47        INTEGER mate        INTEGER mate
48        _RL statGlob(0:nStats,0:nLev,0:nRegions)        _RL statGlob(0:nStats,0:nLev,0:nRegions)
49        _RL tmp_Glob(0:nStats,0:nLev)        _RL tmp_Glob(0:nStats,0:nLev)
# Line 63  C---+----1----+----2----+----3----+----4 Line 62  C---+----1----+----2----+----3----+----4
62    
63        DO m = 1,diagSt_nbFlds(listId)        DO m = 1,diagSt_nbFlds(listId)
64         ndId = jSdiag(m,listId)         ndId = jSdiag(m,listId)
65         parms1 = gdiag(ndId)(1:8)         gcode = gdiag(ndId)(1:10)
66         IF ( iSdiag(m,listId).NE.0 .AND. parms1(5:5).NE.'D' ) THEN         IF ( iSdiag(m,listId).NE.0 .AND. gcode(5:5).NE.'D' ) THEN
67  C--    Start processing 1 Fld :  C--    Start processing 1 Fld :
68    
69           IF ( parms1(5:5).EQ.'C' ) THEN           IF ( gcode(5:5).EQ.'C' ) THEN
70  C          Check for Mate of a Counter Diagnostic  C          Check for Mate of a Counter Diagnostic
71  C          --------------------------------------  C          --------------------------------------
72             mate_index = parms1(6:8)             mate = hdiag(ndId)
            READ (mate_index,'(I3)') mate  
73           ELSE           ELSE
74             mate = 0             mate = 0
75           ENDIF           ENDIF
# Line 88  C          ----------------------------- Line 86  C          -----------------------------
86  C-          Check for empty Diag (= not filled or using empty mask)  C-          Check for empty Diag (= not filled or using empty mask)
87              IF ( tmp_Glob(0,0).EQ.0. ) THEN              IF ( tmp_Glob(0,0).EQ.0. ) THEN
88               _BEGIN_MASTER( myThid )               _BEGIN_MASTER( myThid )
89               WRITE(msgBuf,'(A,I10,A,I3)')               WRITE(msgBuf,'(A,I10,A,I4)')
90       &        '- WARNING - from DIAGSTATS_OUTPUT at iter=', myIter,       &        '- WARNING - from DIAGSTATS_OUTPUT at iter=', myIter,
91       &        ' , region:', j       &        ' , region:', j
92               CALL PRINT_MESSAGE( msgBuf, errorMessageUnit,               CALL PRINT_MESSAGE( msgBuf, errorMessageUnit,
93       &                           SQUEEZE_RIGHT, myThid)       &                           SQUEEZE_RIGHT, myThid)
94               WRITE(msgBuf,'(A,I4,3A,I3,2A)')               WRITE(msgBuf,'(A,I6,3A,I4,2A)')
95       &       '- WARNING - diagSt.#',ndId, ' : ',diagSt_Flds(m,listId),       &       '- WARNING - diagSt.#',ndId, ' : ',diagSt_Flds(m,listId),
96       &       ' (#',m,' ) in outp.Stream: ',diagSt_Fname(listId)       &       ' (#',m,' ) in outp.Stream: ',diagSt_Fname(listId)
97               CALL PRINT_MESSAGE( msgBuf, errorMessageUnit,               CALL PRINT_MESSAGE( msgBuf, errorMessageUnit,
# Line 111  C-          Check for empty Diag (= not Line 109  C-          Check for empty Diag (= not
109    
110              IF ( debugLevel .GE. debLevA ) THEN              IF ( debugLevel .GE. debLevA ) THEN
111               _BEGIN_MASTER( myThid )               _BEGIN_MASTER( myThid )
112                WRITE(ioUnit,'(A,I3,3A,I3,A,1PE10.3,2A)')                WRITE(ioUnit,'(A,I6,3A,I4,A,1PE10.3,2A)')
113       &         ' Compute Stats, Diag. # ',ndId, '  ', cdiag(ndId),       &         ' Compute Stats, Diag. # ',ndId, '  ', cdiag(ndId),
114       &         '  vol(',j,' ):', statGlob(0,0,j),'  Parms: ',gdiag(ndId)       &         '  vol(',j,' ):', statGlob(0,0,j),'  Parms: ',gdiag(ndId)
115               IF ( mate.GT.0 ) THEN               IF ( mate.GT.0 ) THEN
116                WRITE(ioUnit,'(A,I3,3A,I3,2(A,1PE10.3))')                WRITE(ioUnit,'(A,I6,3A,I4,2(A,1PE10.3))')
117       &         '    use Counter Mate  # ', mate,'  ',cdiag(mate),       &         '    use Counter Mate  # ', mate,'  ',cdiag(mate),
118       &         '  vol(',j,' ):',tmp_Glob(0,0), ' integral',tmp_Glob(1,0)       &         '  vol(',j,' ):',tmp_Glob(0,0), ' integral',tmp_Glob(1,0)
119               ENDIF               ENDIF
# Line 132  C--      Write to ASCII file: Line 130  C--      Write to ASCII file:
130    
131  #ifdef ALLOW_MNC  #ifdef ALLOW_MNC
132           IF (diagSt_mnc) THEN           IF (diagSt_mnc) THEN
133             CALL DIAGSTATS_MNC_OUT(             CALL DIAGSTATS_MNC_OUT(
134       &          statGlob, nLev, ndId,       &          statGlob, nLev, ndId,
135       &          m, listId, myTime, myIter, myThid )       &          m, listId, myTime, myIter, myThid )
136           ENDIF           ENDIF

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

  ViewVC Help
Powered by ViewVC 1.1.22