/[MITgcm]/MITgcm_contrib/darwin2/pkg/darwin/darwin_diags.F
ViewVC logotype

Diff of /MITgcm_contrib/darwin2/pkg/darwin/darwin_diags.F

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

revision 1.6 by jahn, Thu Sep 20 14:13:29 2012 UTC revision 1.10 by benw, Tue May 19 14:30:15 2015 UTC
# Line 32  C     myThid -  Number of this instance Line 32  C     myThid -  Number of this instance
32        INTEGER myThid        INTEGER myThid
33  CEndOfInterface  CEndOfInterface
34    
35    #ifdef ALLOW_DARWIN
36    #ifdef ALLOW_TIMEAVE
37    
38  C     == Local variables ==  C     == Local variables ==
39        LOGICAL  DIFFERENT_MULTIPLE        LOGICAL  DIFFERENT_MULTIPLE
# Line 50  C     Functions Line 52  C     Functions
52    
53        _RL Nfixtot, PPtot, Denittot        _RL Nfixtot, PPtot, Denittot
54    
 #ifdef ALLOW_DARWIN  
   
55        IF ( writeBinaryPrec .EQ. precFloat64 ) THEN        IF ( writeBinaryPrec .EQ. precFloat64 ) THEN
56          pf(1:1) = 'D'          pf(1:1) = 'D'
57        ELSE        ELSE
58          pf(1:1) = 'R'          pf(1:1) = 'R'
59        ENDIF        ENDIF
60    
 #ifdef ALLOW_TIMEAVE  
   
61  #ifdef ALLOW_QUOTA  #ifdef ALLOW_QUOTA
62        iPhy = ibiomass        iPhy = ibiomass
63  #endif  #endif
# Line 67  C     Functions Line 65  C     Functions
65  C     Dump files and restart average computation if needed  C     Dump files and restart average computation if needed
66        IF ( DIFFERENT_MULTIPLE(taveFreq,myTime,deltaTClock).        IF ( DIFFERENT_MULTIPLE(taveFreq,myTime,deltaTClock).
67       &                               and.myIter.ne.nIter0 ) THEN       &                               and.myIter.ne.nIter0 ) THEN
68            
69  C      Normalize by integrated time  C      Normalize by integrated time
70         DO bj = myByLo(myThid), myByHi(myThid)         DO bj = myByLo(myThid), myByHi(myThid)
71          DO bi = myBxLo(myThid), myBxHi(myThid)          DO bi = myBxLo(myThid), myBxHi(myThid)
72           CALL TIMEAVE_NORMALIZ(PARave, DAR_timeave, nR ,           CALL TIMEAVE_NORMALIZE(PARave, DAR_timeave, nR ,
73       &                 bi,bj,myThid)       &                 bi,bj,myThid)
74           CALL TIMEAVE_NORMALIZ(PPave, DAR_timeave, nR ,           CALL TIMEAVE_NORMALIZE(PPave, DAR_timeave, nR ,
75       &                 bi,bj,myThid)       &                 bi,bj,myThid)
76  #ifdef QUOTA_DIAG_LIMIT  #ifdef QUOTA_DIAG_LIMIT
77           do np=1,npmax           do np=1,npmax
78             CALL TIMEAVE_NORMALIZ(Nlimave(1-Olx,1-Oly,1,1,1,np),  ! Carbon
79       &                          DAR_timeave, nR ,bi,bj,myThid)             CALL TIMEAVE_NORMALIZE(AP_C_ave(1-Olx,1-Oly,1,1,1,np),
80             CALL TIMEAVE_NORMALIZ(Flimave(1-Olx,1-Oly,1,1,1,np),       &                           DAR_timeave, nR ,bi,bj,myThid)
81       &                          DAR_timeave, nR ,bi,bj,myThid)             CALL TIMEAVE_NORMALIZE(HP_C_ave(1-Olx,1-Oly,1,1,1,np),
82             CALL TIMEAVE_NORMALIZ(Ilimave(1-Olx,1-Oly,1,1,1,np),       &                           DAR_timeave, nR ,bi,bj,myThid)
83       &                          DAR_timeave, nR ,bi,bj,myThid)  ! Nitrogen
84               CALL TIMEAVE_NORMALIZE(AP_N_ave(1-Olx,1-Oly,1,1,1,np),
85         &                           DAR_timeave, nR ,bi,bj,myThid)
86               CALL TIMEAVE_NORMALIZE(HP_N_ave(1-Olx,1-Oly,1,1,1,np),
87         &                           DAR_timeave, nR ,bi,bj,myThid)
88               CALL TIMEAVE_NORMALIZE(Nlimave(1-Olx,1-Oly,1,1,1,np),
89         &                           DAR_timeave, nR ,bi,bj,myThid)
90    ! Phosphorus
91    #ifdef PQUOTA
92               CALL TIMEAVE_NORMALIZE(AP_P_ave(1-Olx,1-Oly,1,1,1,np),
93         &                           DAR_timeave, nR ,bi,bj,myThid)
94               CALL TIMEAVE_NORMALIZE(HP_P_ave(1-Olx,1-Oly,1,1,1,np),
95         &                           DAR_timeave, nR ,bi,bj,myThid)
96               CALL TIMEAVE_NORMALIZE(Plimave(1-Olx,1-Oly,1,1,1,np),
97         &                           DAR_timeave, nR ,bi,bj,myThid)
98    #endif
99    ! Iron
100    #ifdef FQUOTA
101               CALL TIMEAVE_NORMALIZE(AP_F_ave(1-Olx,1-Oly,1,1,1,np),
102         &                           DAR_timeave, nR ,bi,bj,myThid)
103               CALL TIMEAVE_NORMALIZE(HP_F_ave(1-Olx,1-Oly,1,1,1,np),
104         &                           DAR_timeave, nR ,bi,bj,myThid)
105               CALL TIMEAVE_NORMALIZE(Flimave(1-Olx,1-Oly,1,1,1,np),
106         &                           DAR_timeave, nR ,bi,bj,myThid)
107    #endif
108    ! Light
109               CALL TIMEAVE_NORMALIZE(Ilimave(1-Olx,1-Oly,1,1,1,np),
110         &                           DAR_timeave, nR ,bi,bj,myThid)
111           enddo           enddo
112           CALL TIMEAVE_NORMALIZ(Tlimave,DAR_timeave, nR ,  ! Temperature
113             CALL TIMEAVE_NORMALIZE(Tlimave,DAR_timeave, nR ,
114       &                                           bi,bj,myThid)       &                                           bi,bj,myThid)
115  #endif  #endif
116  #ifndef ALLOW_QUOTA  #ifndef ALLOW_QUOTA
117           CALL TIMEAVE_NORMALIZ(Chlave, DAR_timeave, nR ,           CALL TIMEAVE_NORMALIZE(Chlave, DAR_timeave, nR ,
118       &                 bi,bj,myThid)       &                 bi,bj,myThid)
119  #endif  #endif
120           CALL TIMEAVE_NORMALIZ(Nfixave, DAR_timeave, nR ,           CALL TIMEAVE_NORMALIZE(Nfixave, DAR_timeave, nR ,
121       &                 bi,bj,myThid)       &                 bi,bj,myThid)
122           CALL TIMEAVE_NORMALIZ(Denitave, DAR_timeave, nR ,           CALL TIMEAVE_NORMALIZE(Denitave, DAR_timeave, nR ,
123       &                 bi,bj,myThid)       &                 bi,bj,myThid)
124    
125    #ifdef DAR_DIAG_PARW
126             do ii = 1,tlam
127              CALL TIMEAVE_NORMALIZE(PARwave(1-Olx,1-Oly,1,1,1,ii),
128         &                          DAR_timeave,nR,bi,bj,myThid)
129             enddo
130             do np = 1,npmax
131              CALL TIMEAVE_NORMALIZE(chl2cave(1-Olx,1-Oly,1,1,1,np),
132         &                          DAR_timeave,nR,bi,bj,myThid)
133             enddo
134    #endif
135  #ifdef DAR_DIAG_ACDOM  #ifdef DAR_DIAG_ACDOM
136           CALL TIMEAVE_NORMALIZ(aCDOMave, DAR_timeave, nR ,           CALL TIMEAVE_NORMALIZE(aCDOMave, DAR_timeave, nR ,
137       &                 bi,bj,myThid)       &                 bi,bj,myThid)
138  #endif  #endif
139  #ifdef DAR_DIAG_IRR  #ifdef DAR_DIAG_IRR
140           do ii = 1,tlam           do ii = 1,tlam
141            CALL TIMEAVE_NORMALIZ(Edave(1-Olx,1-Oly,1,1,1,ii),            CALL TIMEAVE_NORMALIZE(Edave(1-Olx,1-Oly,1,1,1,ii),
142       &                          DAR_timeave,nR,bi,bj,myThid)       &                          DAR_timeave,nR,bi,bj,myThid)
143            CALL TIMEAVE_NORMALIZ(Esave(1-Olx,1-Oly,1,1,1,ii),            CALL TIMEAVE_NORMALIZE(Esave(1-Olx,1-Oly,1,1,1,ii),
144       &                          DAR_timeave,nR,bi,bj,myThid)       &                          DAR_timeave,nR,bi,bj,myThid)
145            CALL TIMEAVE_NORMALIZ(Euave(1-Olx,1-Oly,1,1,1,ii),            CALL TIMEAVE_NORMALIZE(Euave(1-Olx,1-Oly,1,1,1,ii),
146       &                          DAR_timeave,nR,bi,bj,myThid)       &                          DAR_timeave,nR,bi,bj,myThid)
147            CALL TIMEAVE_NORMALIZ(Estave(1-Olx,1-Oly,1,1,1,ii),            CALL TIMEAVE_NORMALIZE(Estave(1-Olx,1-Oly,1,1,1,ii),
148       &                          DAR_timeave,nR,bi,bj,myThid)       &                          DAR_timeave,nR,bi,bj,myThid)
149            CALL TIMEAVE_NORMALIZ(Eutave(1-Olx,1-Oly,1,1,1,ii),            CALL TIMEAVE_NORMALIZE(Eutave(1-Olx,1-Oly,1,1,1,ii),
150       &                          DAR_timeave,nR,bi,bj,myThid)       &                          DAR_timeave,nR,bi,bj,myThid)
151           enddo           enddo
152  #endif  #endif
153  #ifdef DAR_DIAG_IRR_AMPS  #ifdef DAR_DIAG_IRR_AMPS
154           do ii = 1,tlam           do ii = 1,tlam
155            CALL TIMEAVE_NORMALIZ(amp1ave(1-Olx,1-Oly,1,1,1,ii),            CALL TIMEAVE_NORMALIZE(amp1ave(1-Olx,1-Oly,1,1,1,ii),
156       &                          DAR_timeave,nR,bi,bj,myThid)       &                          DAR_timeave,nR,bi,bj,myThid)
157            CALL TIMEAVE_NORMALIZ(amp2ave(1-Olx,1-Oly,1,1,1,ii),            CALL TIMEAVE_NORMALIZE(amp2ave(1-Olx,1-Oly,1,1,1,ii),
158       &                          DAR_timeave,nR,bi,bj,myThid)       &                          DAR_timeave,nR,bi,bj,myThid)
159           enddo           enddo
160  #endif  #endif
161  #ifdef DAR_DIAG_ABSORP  #ifdef DAR_DIAG_ABSORP
162           do ii = 1,tlam           do ii = 1,tlam
163            CALL TIMEAVE_NORMALIZ(aave(1-Olx,1-Oly,1,1,1,ii),            CALL TIMEAVE_NORMALIZE(aave(1-Olx,1-Oly,1,1,1,ii),
164       &                          DAR_timeave,nR,bi,bj,myThid)       &                          DAR_timeave,nR,bi,bj,myThid)
165           enddo           enddo
166  #endif  #endif
167  #ifdef DAR_DIAG_SCATTER  #ifdef DAR_DIAG_SCATTER
168           do ii = 1,tlam           do ii = 1,tlam
169            CALL TIMEAVE_NORMALIZ(btave(1-Olx,1-Oly,1,1,1,ii),            CALL TIMEAVE_NORMALIZE(btave(1-Olx,1-Oly,1,1,1,ii),
170       &                          DAR_timeave,nR,bi,bj,myThid)       &                          DAR_timeave,nR,bi,bj,myThid)
171            CALL TIMEAVE_NORMALIZ(bbave(1-Olx,1-Oly,1,1,1,ii),            CALL TIMEAVE_NORMALIZE(bbave(1-Olx,1-Oly,1,1,1,ii),
172       &                          DAR_timeave,nR,bi,bj,myThid)       &                          DAR_timeave,nR,bi,bj,myThid)
173           enddo           enddo
174  #endif  #endif
175  #ifdef DAR_DIAG_PART_SCATTER  #ifdef DAR_DIAG_PART_SCATTER
176           do ii = 1,tlam           do ii = 1,tlam
177            CALL TIMEAVE_NORMALIZ(apartave(1-Olx,1-Oly,1,1,1,ii),            CALL TIMEAVE_NORMALIZE(apartave(1-Olx,1-Oly,1,1,1,ii),
178       &                          DAR_timeave,nR,bi,bj,myThid)       &                          DAR_timeave,nR,bi,bj,myThid)
179            CALL TIMEAVE_NORMALIZ(btpartave(1-Olx,1-Oly,1,1,1,ii),            CALL TIMEAVE_NORMALIZE(btpartave(1-Olx,1-Oly,1,1,1,ii),
180       &                          DAR_timeave,nR,bi,bj,myThid)       &                          DAR_timeave,nR,bi,bj,myThid)
181            CALL TIMEAVE_NORMALIZ(bbpartave(1-Olx,1-Oly,1,1,1,ii),            CALL TIMEAVE_NORMALIZE(bbpartave(1-Olx,1-Oly,1,1,1,ii),
182       &                          DAR_timeave,nR,bi,bj,myThid)       &                          DAR_timeave,nR,bi,bj,myThid)
183           enddo           enddo
184  #endif  #endif
185  #ifdef DAR_RADTRANS  #ifdef DAR_RADTRANS
186           CALL TIMEAVE_NORMALIZ(rmudave(1-Olx,1-Oly,1,1),           CALL TIMEAVE_NORMALIZE(rmudave(1-Olx,1-Oly,1,1),
187       &                         DAR_timeave,1,bi,bj,myThid)       &                         DAR_timeave,1,bi,bj,myThid)
188  #endif  #endif
189    #ifdef DAR_DIAG_EK
190             do np = 1,npmax
191              CALL TIMEAVE_NORMALIZE(Ekave(1-Olx,1-Oly,1,1,1,np),
192         &                          DAR_timeave,nR,bi,bj,myThid)
193              CALL TIMEAVE_NORMALIZE(EkoverEave(1-Olx,1-Oly,1,1,1,np),
194         &                          DAR_timeave,nR,bi,bj,myThid)
195              CALL TIMEAVE_NORMALIZE(acclimave(1-Olx,1-Oly,1,1,1,np),
196         &                          DAR_timeave,nR,bi,bj,myThid)
197              do ii = 1,tlam
198                CALL TIMEAVE_NORMALIZE(Ek_nlave(1-Olx,1-Oly,1,1,1,np,ii),
199         &                          DAR_timeave,nR,bi,bj,myThid)
200                CALL TIMEAVE_NORMALIZE(
201         &                       EkoverE_nlave(1-Olx,1-Oly,1,1,1,np,ii),
202         &                          DAR_timeave,nR,bi,bj,myThid)
203              enddo
204             enddo
205    #endif
206    
207  c ANNA_TAVE  c ANNA_TAVE
208  #ifdef WAVES_DIAG_PCHL  #ifdef WAVES_DIAG_PCHL
209           do np=1,npmax           do np=1,npmax
210             CALL TIMEAVE_NORMALIZ(Pchlave(1-Olx,1-Oly,1,1,1,np),             CALL TIMEAVE_NORMALIZE(Pchlave(1-Olx,1-Oly,1,1,1,np),
211       &                          DAR_timeave, nR ,       &                          DAR_timeave, nR ,
212       &                 bi,bj,myThid)       &                 bi,bj,myThid)
213  c           CALL TIMEAVE_NORMALIZ(Pchlave(1-Olx,1-Oly,1,1,1,np),  c           CALL TIMEAVE_NORMALIZE(Pchlave(1-Olx,1-Oly,1,1,1,np),
214  c     &                          DAR_timeave, nR ,  c     &                          DAR_timeave, nR ,
215  c     &                 bi,bj,myThid)  c     &                 bi,bj,myThid)
216           enddo           enddo
# Line 166  c ANNA end TAVE Line 219  c ANNA end TAVE
219    
220  #ifdef DAR_DIAG_RSTAR  #ifdef DAR_DIAG_RSTAR
221           do np=1,npmax           do np=1,npmax
222             CALL TIMEAVE_NORMALIZ(Rstarave(1-Olx,1-Oly,1,1,1,np),             CALL TIMEAVE_NORMALIZE(Rstarave(1-Olx,1-Oly,1,1,1,np),
223       &                          DAR_timeave, nR ,       &                          DAR_timeave, nR ,
224       &                 bi,bj,myThid)       &                 bi,bj,myThid)
225             CALL TIMEAVE_NORMALIZ(RNstarave(1-Olx,1-Oly,1,1,1,np),             CALL TIMEAVE_NORMALIZE(RNstarave(1-Olx,1-Oly,1,1,1,np),
226       &                          DAR_timeave, nR ,       &                          DAR_timeave, nR ,
227       &                 bi,bj,myThid)       &                 bi,bj,myThid)
228           enddo           enddo
229  #endif  #endif
230  #ifdef DAR_DIAG_DIVER  #ifdef DAR_DIAG_DIVER
231            CALL TIMEAVE_NORMALIZ(Diver1ave(1-Olx,1-Oly,1,1,1),            CALL TIMEAVE_NORMALIZE(Diver1ave(1-Olx,1-Oly,1,1,1),
232       &                          DAR_timeave, nR ,       &                          DAR_timeave, nR ,
233       &                 bi,bj,myThid)       &                 bi,bj,myThid)
234            CALL TIMEAVE_NORMALIZ(Diver2ave(1-Olx,1-Oly,1,1,1),            CALL TIMEAVE_NORMALIZE(Diver2ave(1-Olx,1-Oly,1,1,1),
235       &                          DAR_timeave, nR ,       &                          DAR_timeave, nR ,
236       &                 bi,bj,myThid)       &                 bi,bj,myThid)
237            CALL TIMEAVE_NORMALIZ(Diver3ave(1-Olx,1-Oly,1,1,1),            CALL TIMEAVE_NORMALIZE(Diver3ave(1-Olx,1-Oly,1,1,1),
238       &                          DAR_timeave, nR ,       &                          DAR_timeave, nR ,
239       &                 bi,bj,myThid)       &                 bi,bj,myThid)
240            CALL TIMEAVE_NORMALIZ(Diver4ave(1-Olx,1-Oly,1,1,1),            CALL TIMEAVE_NORMALIZE(Diver4ave(1-Olx,1-Oly,1,1,1),
241       &                          DAR_timeave, nR ,       &                          DAR_timeave, nR ,
242       &                 bi,bj,myThid)       &                 bi,bj,myThid)
243  #endif  #endif
244  c  c
245  #ifdef DAR_DIAG_GROW  #ifdef DAR_DIAG_GROW
246           do np=1,npmax           do np=1,npmax
247             CALL TIMEAVE_NORMALIZ(Growave(1-Olx,1-Oly,1,1,1,np),             CALL TIMEAVE_NORMALIZE(Growave(1-Olx,1-Oly,1,1,1,np),
248       &                          DAR_timeave, nR ,       &                          DAR_timeave, nR ,
249       &                 bi,bj,myThid)       &                 bi,bj,myThid)
250             CALL TIMEAVE_NORMALIZ(Growsqave(1-Olx,1-Oly,1,1,1,np),             CALL TIMEAVE_NORMALIZE(Growsqave(1-Olx,1-Oly,1,1,1,np),
251       &                          DAR_timeave, nR ,       &                          DAR_timeave, nR ,
252       &                 bi,bj,myThid)       &                 bi,bj,myThid)
253           enddo           enddo
# Line 203  c Line 256  c
256  c  c
257  #ifdef DAR_DIAG_NFIXP  #ifdef DAR_DIAG_NFIXP
258           do np=1,npmax           do np=1,npmax
259             CALL TIMEAVE_NORMALIZ(NfixPave(1-Olx,1-Oly,1,1,1,np),             CALL TIMEAVE_NORMALIZE(NfixPave(1-Olx,1-Oly,1,1,1,np),
260       &                          DAR_timeave, nR ,       &                          DAR_timeave, nR ,
261       &                 bi,bj,myThid)       &                 bi,bj,myThid)
262           enddo           enddo
# Line 225  c Line 278  c
278       &             Denitave, nR, Denittot, myThid )       &             Denitave, nR, Denittot, myThid )
279         Denittot=Denittot*14. _d 0 *1. _d -3* 31536000. _d 0         Denittot=Denittot*14. _d 0 *1. _d -3* 31536000. _d 0
280       &                      *1 _d -12       &                      *1 _d -12
281           _BEGIN_MASTER( myThid )
282         write(dar_ratetot_unit,*) myIter, PPtot, Nfixtot, Denittot         write(dar_ratetot_unit,*) myIter, PPtot, Nfixtot, Denittot
283           _END_MASTER( myThid )
284  #endif  #endif
285    
286          
287         IF ( PTRACERS_timeave_mdsio )  THEN         IF ( PTRACERS_timeave_mdsio )  THEN
288           WRITE(suff,'(I10.10)') myIter           WRITE(suff,'(I10.10)') myIter
289           CALL WRITE_FLD_XYZ_RL('DAR_PARtave.',suff,PARave,                   CALL WRITE_FLD_XYZ_RL('DAR_PARtave.',suff,PARave,
290       &        myIter,myThid)       &        myIter,myThid)
291           CALL WRITE_FLD_XYZ_RL('DAR_PPtave.',suff,PPave,           CALL WRITE_FLD_XYZ_RL('DAR_PPtave.',suff,PPave,
292       &        myIter,myThid)       &        myIter,myThid)
# Line 243  c Line 298  c
298       &        myIter,myThid)       &        myIter,myThid)
299           CALL WRITE_FLD_XYZ_RL('DAR_Denittave.',suff,Denitave,           CALL WRITE_FLD_XYZ_RL('DAR_Denittave.',suff,Denitave,
300       &        myIter,myThid)       &        myIter,myThid)
301    #ifdef DAR_DIAG_PARW
302             do ii = 1,tlam
303               WRITE(suff,'(A8,I2.2,A1,I10.10)') 'PARwave',
304         &           ii,'.',myIter
305               CALL WRITE_FLD_XYZ_RL(suff,' ',
306         &           PARwave(1-Olx,1-Oly,1,1,1,ii),
307         &           myIter,myThid)
308             enddo
309             do np = 1,npmax
310               WRITE(suff,'(A8,I2.2,A1,I10.10)') 'chl2cave',
311         &           np,'.',myIter
312               CALL WRITE_FLD_XYZ_RL(suff,' ',
313         &           chl2cave(1-Olx,1-Oly,1,1,1,np),
314         &           myIter,myThid)
315             enddo
316    #endif
317  #ifdef DAR_DIAG_ACDOM  #ifdef DAR_DIAG_ACDOM
318           CALL WRITE_FLD_XYZ_RL('DAR_aCDOMtave',suff,aCDOMave,           CALL WRITE_FLD_XYZ_RL('DAR_aCDOMtave',suff,aCDOMave,
319       &        myIter,myThid)       &        myIter,myThid)
# Line 339  c Line 410  c
410       &         rmudave(1-Olx,1-Oly,1,1),       &         rmudave(1-Olx,1-Oly,1,1),
411       &         myIter,myThid)       &         myIter,myThid)
412  #endif  #endif
413    #ifdef DAR_DIAG_EK
414             do np = 1,npmax
415               WRITE(suff,'(A8,I2.2,A1,I10.10)') 'Ekave',
416         &           np,'.',myIter
417               CALL WRITE_FLD_XYZ_RL(suff,' ',
418         &           Ekave(1-Olx,1-Oly,1,1,1,np),
419         &           myIter,myThid)
420               WRITE(suff,'(A8,I2.2,A1,I10.10)') 'EkoverEave',
421         &           np,'.',myIter
422               CALL WRITE_FLD_XYZ_RL(suff,' ',
423         &           EkoverEave(1-Olx,1-Oly,1,1,1,np),
424         &           myIter,myThid)
425               WRITE(suff,'(A8,I2.2,A1,I10.10)') 'acclimave',
426         &           np,'.',myIter
427               CALL WRITE_FLD_XYZ_RL(suff,' ',
428         &           acclimave(1-Olx,1-Oly,1,1,1,np),
429         &           myIter,myThid)
430               do ii = 1,tlam
431                 WRITE(suff,'(A8,I2.2,A1,I2.2,A1,I10.10)') 'Ek_nl_ave',
432         &             np,'_',ii,'.',myIter
433                 CALL WRITE_FLD_XYZ_RL(suff,' ',
434         &             Ek_nlave(1-Olx,1-Oly,1,1,1,np,ii),
435         &             myIter,myThid)
436                 WRITE(suff,'(A8,I2.2,A1,I2.2,A1,I10.10)') 'EkoverE_nl_ave',
437         &             np,'_',ii,'.',myIter
438                 CALL WRITE_FLD_XYZ_RL(suff,' ',
439         &             EkoverE_nlave(1-Olx,1-Oly,1,1,1,np,ii),
440         &             myIter,myThid)
441               enddo
442             enddo
443    #endif
444    
445  c ANNA_TAVE  c ANNA_TAVE
446  #ifdef WAVES_DIAG_PCHL  #ifdef WAVES_DIAG_PCHL
# Line 421  c Line 523  c
523       &        pf,'dar_tave',0,0,'dar_PP_ave',PPave,myThid)       &        pf,'dar_tave',0,0,'dar_PP_ave',PPave,myThid)
524  #ifdef QUOTA_DIAG_LIMIT  #ifdef QUOTA_DIAG_LIMIT
525           do np=1,npmax           do np=1,npmax
526              WRITE(name,'(a,i3.3)') 'dar_Nlim_',np  ! Carbon
527              CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,             WRITE(name,'(a,i3.3)') 'dar_AP_C_',np
528       &           Nlimave(1-OLx,1-OLy,1,1,1,np),myThid)             CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
529              WRITE(name,'(a,i3.3)') 'dar_Flim_',np       &          AP_C_ave(1-OLx,1-OLy,1,1,1,np),myThid)
530              CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,             WRITE(name,'(a,i3.3)') 'dar_HP_C_',np
531       &           Flimave(1-OLx,1-OLy,1,1,1,np),myThid)             CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
532              WRITE(name,'(a,i3.3)') 'dar_Ilim_',np       &          HP_C_ave(1-OLx,1-OLy,1,1,1,np),myThid)
533              CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,  ! Nitrogen
534       &           Ilimave(1-OLx,1-OLy,1,1,1,np),myThid)             WRITE(name,'(a,i3.3)') 'dar_Nlim_',np
535               CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
536         &          Nlimave(1-OLx,1-OLy,1,1,1,np),myThid)
537               WRITE(name,'(a,i3.3)') 'dar_AP_N_',np
538               CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
539         &          AP_N_ave(1-OLx,1-OLy,1,1,1,np),myThid)
540               WRITE(name,'(a,i3.3)') 'dar_HP_N_',np
541               CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
542         &          HP_N_ave(1-OLx,1-OLy,1,1,1,np),myThid)
543    ! Phosphorus
544    #ifdef PQUOTA
545               WRITE(name,'(a,i3.3)') 'dar_Plim_',np
546               CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
547         &          Plimave(1-OLx,1-OLy,1,1,1,np),myThid)
548               WRITE(name,'(a,i3.3)') 'dar_AP_P_',np
549               CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
550         &          AP_P_ave(1-OLx,1-OLy,1,1,1,np),myThid)
551               WRITE(name,'(a,i3.3)') 'dar_HP_P_',np
552               CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
553         &          HP_P_ave(1-OLx,1-OLy,1,1,1,np),myThid)
554    #endif
555    ! Iron
556    #ifdef FQUOTA
557               WRITE(name,'(a,i3.3)') 'dar_Flim_',np
558               CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
559         &          Flimave(1-OLx,1-OLy,1,1,1,np),myThid)
560               WRITE(name,'(a,i3.3)') 'dar_AP_F_',np
561               CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
562         &          AP_F_ave(1-OLx,1-OLy,1,1,1,np),myThid)
563               WRITE(name,'(a,i3.3)') 'dar_HP_F_',np
564               CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
565         &          HP_F_ave(1-OLx,1-OLy,1,1,1,np),myThid)
566    #endif
567    ! Light
568              WRITE(name,'(a,i3.3)') 'dar_Ilim_',np
569              CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
570         &         Ilimave(1-OLx,1-OLy,1,1,1,np),myThid)
571           enddo           enddo
572    ! Temperature
573           CALL MNC_CW_RL_W(           CALL MNC_CW_RL_W(
574       &        pf,'dar_tave',0,0,'dar_Tlim_ave',Tlimave,myThid)       &        pf,'dar_tave',0,0,'dar_Tlim_ave',Tlimave,myThid)
575  #endif  #endif
# Line 442  c Line 581  c
581       &        pf,'dar_tave',0,0,'dar_Nfix_ave',Nfixave,myThid)       &        pf,'dar_tave',0,0,'dar_Nfix_ave',Nfixave,myThid)
582           CALL MNC_CW_RL_W(           CALL MNC_CW_RL_W(
583       &        pf,'dar_tave',0,0,'dar_Denit_ave',Denitave,myThid)       &        pf,'dar_tave',0,0,'dar_Denit_ave',Denitave,myThid)
584    #ifdef DAR_DIAG_PARW
585             do ii = 1,tlam
586                DO jj = 1,MAX_LEN_FNAM
587                  name(jj:jj) = ' '
588                ENDDO
589                WRITE(name,'(a,i2.2)') 'dar_PARw',ii
590                CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
591         &           PARwave(1-OLx,1-OLy,1,1,1,ii),myThid)
592            enddo
593             do np = 1,npmax
594                DO jj = 1,MAX_LEN_FNAM
595                  name(jj:jj) = ' '
596                ENDDO
597                WRITE(name,'(a,i2.2)') 'dar_chl2c',np
598                CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
599         &           chl2cave(1-OLx,1-OLy,1,1,1,np),myThid)
600            enddo
601    #endif
602  #ifdef DAR_DIAG_ACDOM  #ifdef DAR_DIAG_ACDOM
603           CALL MNC_CW_RL_W(           CALL MNC_CW_RL_W(
604       &        pf,'dar_tave',0,0,'dar_aCDOM_ave',aCDOMave,myThid)       &        pf,'dar_tave',0,0,'dar_aCDOM_ave',aCDOMave,myThid)
# Line 528  c Line 685  c
685           CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,           CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
686       &        rmudave(1-OLx,1-OLy,1,1),myThid)       &        rmudave(1-OLx,1-OLy,1,1),myThid)
687  #endif  #endif
688    #ifdef DAR_DIAG_EK
689             do np = 1,npmax
690                DO jj = 1,MAX_LEN_FNAM
691                  name(jj:jj) = ' '
692                ENDDO
693                WRITE(name,'(a,i2.2)') 'dar_Ek',np
694                CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
695         &           Ekave(1-OLx,1-OLy,1,1,1,np),myThid)
696                WRITE(name,'(a,i2.2)') 'dar_EkoverE',np
697                CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
698         &           EkoverEave(1-OLx,1-OLy,1,1,1,np),myThid)
699                WRITE(name,'(a,i2.2)') 'dar_acclim',np
700                CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
701         &           acclimave(1-OLx,1-OLy,1,1,1,np),myThid)
702                do ii = 1,tlam
703                  WRITE(name,'(a,i2.2,a,i2.2)') 'dar_Ek_nl',np,'_',ii
704                  CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
705         &             Ek_nlave(1-OLx,1-OLy,1,1,1,np,ii),myThid)
706                  WRITE(name,'(a,i2.2,a,i2.2)') 'dar_EkoverE_nl',np,'_',ii
707                  CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
708         &             EkoverE_nlave(1-OLx,1-OLy,1,1,1,np,ii),myThid)
709                enddo
710            enddo
711    #endif
712  c ANNA_TAVE  c ANNA_TAVE
713  #ifdef WAVES_DIAG_PCHL  #ifdef WAVES_DIAG_PCHL
714           do np=1,npmax           do np=1,npmax
# Line 621  C      Reset averages to zero Line 802  C      Reset averages to zero
802           CALL TIMEAVE_RESET(PARave,Nr,bi,bj,myThid)           CALL TIMEAVE_RESET(PARave,Nr,bi,bj,myThid)
803           CALL TIMEAVE_RESET(PPave,Nr,bi,bj,myThid)           CALL TIMEAVE_RESET(PPave,Nr,bi,bj,myThid)
804  #ifdef QUOTA_DIAG_LIMIT  #ifdef QUOTA_DIAG_LIMIT
805           CALL TIMEAVE_RESET(Nlimave,Nr,bi,bj,myThid)  ! Carbon
806           CALL TIMEAVE_RESET(Flimave,Nr,bi,bj,myThid)           CALL TIMEAVE_RESET(AP_C_ave,Nr,bi,bj,myThid)
807             CALL TIMEAVE_RESET(HP_C_ave,Nr,bi,bj,myThid)
808    ! Nitrogen
809             CALL TIMEAVE_RESET(AP_N_ave,Nr,bi,bj,myThid)
810             CALL TIMEAVE_RESET(HP_N_ave,Nr,bi,bj,myThid)
811             CALL TIMEAVE_RESET(Nlimave ,Nr,bi,bj,myThid)
812    ! Phosphorus
813    #ifdef PQUOTA
814             CALL TIMEAVE_RESET(AP_P_ave,Nr,bi,bj,myThid)
815             CALL TIMEAVE_RESET(HP_P_ave,Nr,bi,bj,myThid)
816             CALL TIMEAVE_RESET(Plimave ,Nr,bi,bj,myThid)
817    #endif
818    ! Iron
819    #ifdef FQUOTA
820             CALL TIMEAVE_RESET(AP_F_ave,Nr,bi,bj,myThid)
821             CALL TIMEAVE_RESET(HP_F_ave,Nr,bi,bj,myThid)
822             CALL TIMEAVE_RESET(Flimave ,Nr,bi,bj,myThid)
823    #endif
824           CALL TIMEAVE_RESET(Ilimave,Nr,bi,bj,myThid)           CALL TIMEAVE_RESET(Ilimave,Nr,bi,bj,myThid)
825           CALL TIMEAVE_RESET(Tlimave,Nr,bi,bj,myThid)           CALL TIMEAVE_RESET(Tlimave,Nr,bi,bj,myThid)
826  #endif  #endif
# Line 631  C      Reset averages to zero Line 829  C      Reset averages to zero
829  #endif  #endif
830           CALL TIMEAVE_RESET(Nfixave,Nr,bi,bj,myThid)           CALL TIMEAVE_RESET(Nfixave,Nr,bi,bj,myThid)
831           CALL TIMEAVE_RESET(Denitave,Nr,bi,bj,myThid)           CALL TIMEAVE_RESET(Denitave,Nr,bi,bj,myThid)
832    #ifdef DAR_DIAG_PARW
833             do ii = 1,tlam
834               CALL TIMEAVE_RESET(PARwave(1-OLx,1-OLy,1,1,1,ii),
835         &                                    Nr,bi,bj,myThid)
836             enddo
837             do np = 1,npmax
838               CALL TIMEAVE_RESET(chl2cave(1-OLx,1-OLy,1,1,1,np),
839         &                                    Nr,bi,bj,myThid)
840             enddo
841    #endif
842  #ifdef DAR_DIAG_ACDOM  #ifdef DAR_DIAG_ACDOM
843           CALL TIMEAVE_RESET(aCDOMave,Nr,bi,bj,myThid)           CALL TIMEAVE_RESET(aCDOMave,Nr,bi,bj,myThid)
844  #endif  #endif
# Line 684  C      Reset averages to zero Line 892  C      Reset averages to zero
892           CALL TIMEAVE_RESET(rmudave(1-OLx,1-OLy,1,1),           CALL TIMEAVE_RESET(rmudave(1-OLx,1-OLy,1,1),
893       &                                  1,bi,bj,myThid)       &                                  1,bi,bj,myThid)
894  #endif  #endif
895  c ANNA_TAVE  #ifdef DAR_DIAG_EK
896             do np = 1,npmax
897               CALL TIMEAVE_RESET(Ekave(1-OLx,1-OLy,1,1,1,np),
898         &                                    Nr,bi,bj,myThid)
899               CALL TIMEAVE_RESET(EkoverEave(1-OLx,1-OLy,1,1,1,np),
900         &                                    Nr,bi,bj,myThid)
901               CALL TIMEAVE_RESET(acclimave(1-OLx,1-OLy,1,1,1,np),
902         &                                    Nr,bi,bj,myThid)
903               do ii = 1,tlam
904                 CALL TIMEAVE_RESET(Ek_nlave(1-OLx,1-OLy,1,1,1,np,ii),
905         &                                    Nr,bi,bj,myThid)
906                 CALL TIMEAVE_RESET(EkoverE_nlave(1-OLx,1-OLy,1,1,1,np,ii),
907         &                                    Nr,bi,bj,myThid)
908               enddo
909             enddo
910    #endif
911    c ANNA_TAVE
912  #ifdef WAVES_DIAG_PCHL  #ifdef WAVES_DIAG_PCHL
913           do np=1,npmax           do np=1,npmax
914             CALL TIMEAVE_RESET(Pchlave(1-OLx,1-OLy,1,1,1,np),             CALL TIMEAVE_RESET(Pchlave(1-OLx,1-OLy,1,1,1,np),
# Line 728  c Line 952  c
952           enddo           enddo
953  #endif  #endif
954  #endif  #endif
955           do k=1,Nr           DAR_TimeAve(bi,bj)=0.d0
            DAR_TimeAve(bi,bj,k)=0.d0  
          enddo  
956          ENDDO          ENDDO
957         ENDDO         ENDDO
958            
959        ENDIF        ENDIF
960    
961  #endif /* ALLOW_TIMEAVE */  #endif /* ALLOW_TIMEAVE */
         
962  #endif /* ALLOW_DARWIN */  #endif /* ALLOW_DARWIN */
963          
964        RETURN        RETURN
965        END        END

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

  ViewVC Help
Powered by ViewVC 1.1.22