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

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

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

revision 1.16 by jmc, Tue Feb 5 15:31:19 2008 UTC revision 1.19 by jmc, Wed Aug 14 00:57:33 2013 UTC
# Line 52  c     INTEGER newIter Line 52  c     INTEGER newIter
52        LOGICAL dBugFlag        LOGICAL dBugFlag
53        INTEGER dBugUnit        INTEGER dBugUnit
54  #ifdef ALLOW_FIZHI  #ifdef ALLOW_FIZHI
55        LOGICAL alarm2, alarm2next        LOGICAL  ALARM2NEXT
56          EXTERNAL ALARM2NEXT
57        CHARACTER *9 tagname        CHARACTER *9 tagname
58  #endif  #endif
59    
# Line 61  c     INTEGER newIter Line 62  c     INTEGER newIter
62    
63  C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|  C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
64    
65        dBugFlag = debugLevel.GT.debLevB .AND. myThid.EQ.1        dBugFlag = debugLevel.GE.debLevE .AND. myThid.EQ.1
66        dBugUnit = errorMessageUnit        dBugUnit = errorMessageUnit
67    
68    C--   Track diagnostics pkg activation status:
69          IF ( myIter.EQ.nIter0 ) THEN
70            _BEGIN_MASTER(myThid)
71    c       IF ( diag_pkgStatus.NE.10 ) STOP
72            diag_pkgStatus = ready2fillDiags
73            _END_MASTER(myThid)
74    c     ELSEIF
75    c       IF ( diag_pkgStatus.NE.ready2fillDiags ) STOP
76          ENDIF
77    
78  c     newIter = 1 + myIter  c     newIter = 1 + myIter
79        DO n = 1,nlists        DO n = 1,nlists
80    
# Line 73  C--    Select diagnostics list that uses Line 84  C--    Select diagnostics list that uses
84          freqSec = freq(n)          freqSec = freq(n)
85          phiSec = phase(n)          phiSec = phase(n)
86          time4SnapShot = DIFF_PHASE_MULTIPLE( phiSec, freqSec,          time4SnapShot = DIFF_PHASE_MULTIPLE( phiSec, freqSec,
87       &                                       myTime, deltaTclock )       &                                       myTime, deltaTClock )
88  #ifdef ALLOW_FIZHI  #ifdef ALLOW_FIZHI
89          IF ( useFIZHI ) THEN          IF ( useFIZHI ) THEN
90           WRITE(tagname,'(A,I2.2)')'diagtag',n           WRITE(tagname,'(A,I2.2)')'diagtag',n
91           time4SnapShot = alarm2next(tagname,deltaT)           time4SnapShot = ALARM2NEXT(tagname,deltaT)
92          ENDIF          ENDIF
93  #endif  #endif
94    #ifdef ALLOW_CAL
95            IF ( useCAL ) THEN
96              CALL CAL_TIME2DUMP( phiSec, freqSec, deltaTClock,
97         U                        time4SnapShot,
98         I                        myTime, myIter, myThid )
99            ENDIF
100    #endif /* ALLOW_CAL */
101    
102          DO bj=myByLo(myThid), myByHi(myThid)          DO bj=myByLo(myThid), myByHi(myThid)
103           DO bi=myBxLo(myThid), myBxHi(myThid)           DO bi=myBxLo(myThid), myBxHi(myThid)
# Line 108  C--    list with instantaneous output: e Line 126  C--    list with instantaneous output: e
126    
127         IF ( averageCycle(n).GT.1 ) THEN         IF ( averageCycle(n).GT.1 ) THEN
128  C--    Select diagnostics list that uses periodic averaging  C--    Select diagnostics list that uses periodic averaging
129          xInterval = myTime + deltaTclock*0.5 _d 0 - averagePhase(n)          xInterval = myTime + deltaTClock*0.5 _d 0 - averagePhase(n)
130          xInterval = xInterval / averageFreq(n)          xInterval = xInterval / averageFreq(n)
131          IF ( xInterval.GE.0. ) THEN          IF ( xInterval.GE.0. ) THEN
132            nInterval = INT(xInterval)            nInterval = INT(xInterval)
# Line 150  C---+----1----+----2----+----3----+----4 Line 168  C---+----1----+----2----+----3----+----4
168         IF ( diagSt_freq(n).LT.0. ) THEN         IF ( diagSt_freq(n).LT.0. ) THEN
169  C--    Select diagnostics list that uses instantaneous output  C--    Select diagnostics list that uses instantaneous output
170    
171          dBugFlag = debugLevel.GT.debLevB          dBugFlag = debugLevel.GE.debLevE
172    
173          freqSec = diagSt_freq(n)          freqSec = diagSt_freq(n)
174          phiSec = diagSt_phase(n)          phiSec = diagSt_phase(n)
175          time4SnapShot = DIFF_PHASE_MULTIPLE( phiSec, freqSec,          time4SnapShot = DIFF_PHASE_MULTIPLE( phiSec, freqSec,
176       &                                       myTime, deltaTclock )       &                                       myTime, deltaTClock )
177    
178  #ifdef ALLOW_FIZHI  #ifdef ALLOW_FIZHI
179          IF ( useFIZHI ) THEN          IF ( useFIZHI ) THEN
180           WRITE(tagname,'(A,I2.2)')'diagStg',n           WRITE(tagname,'(A,I2.2)')'diagStg',n
181           time4SnapShot = alarm2next(tagname,deltaT)           time4SnapShot = ALARM2NEXT(tagname,deltaT)
182          ENDIF          ENDIF
183  #endif  #endif
184    #ifdef ALLOW_CAL
185            IF ( useCAL ) THEN
186              CALL CAL_TIME2DUMP( phiSec, freqSec, deltaTClock,
187         U                        time4SnapShot,
188         I                        myTime, myIter, myThid )
189            ENDIF
190    #endif /* ALLOW_CAL */
191    
192          DO bj=myByLo(myThid), myByHi(myThid)          DO bj=myByLo(myThid), myByHi(myThid)
193           DO bi=myBxLo(myThid), myBxHi(myThid)           DO bi=myBxLo(myThid), myBxHi(myThid)

Legend:
Removed from v.1.16  
changed lines
  Added in v.1.19

  ViewVC Help
Powered by ViewVC 1.1.22