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 |
|
|
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 |
|
|
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) |
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) |
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) |