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

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

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


Revision 1.10 - (show annotations) (download)
Tue May 19 14:30:15 2015 UTC (10 years, 2 months ago) by benw
Branch: MAIN
CVS Tags: ctrb_darwin2_ckpt65w_20160512, ctrb_darwin2_ckpt66g_20170424, ctrb_darwin2_ckpt66k_20171025, ctrb_darwin2_ckpt66n_20180118, ctrb_darwin2_ckpt65v_20160409, ctrb_darwin2_ckpt65s_20160114, ctrb_darwin2_ckpt66d_20170214, ctrb_darwin2_ckpt65m_20150615, ctrb_darwin2_ckpt65q_20151118, ctrb_darwin2_ckpt65o_20150914, ctrb_darwin2_ckpt65p_20151023, ctrb_darwin2_ckpt65z_20160929, ctrb_darwin2_ckpt65n_20150729, ctrb_darwin2_ckpt66h_20170602, ctrb_darwin2_ckpt65x_20160612, ctrb_darwin2_ckpt66f_20170407, ctrb_darwin2_ckpt66a_20161020, ctrb_darwin2_ckpt66b_20161219, ctrb_darwin2_ckpt66j_20170815, ctrb_darwin2_ckpt65y_20160801, ctrb_darwin2_ckpt66c_20170121, ctrb_darwin2_ckpt65t_20160221, ctrb_darwin2_ckpt66o_20180209, ctrb_darwin2_ckpt66e_20170314, ctrb_darwin2_ckpt65u_20160315, ctrb_darwin2_ckpt65r_20151221, ctrb_darwin2_ckpt66i_20170718, ctrb_darwin2_ckpt66l_20171025, ctrb_darwin2_ckpt66m_20171213, HEAD
Changes since 1.9: +97 -15 lines
Ben Ward - some superficial structural changes allowing runs with no pfts
         - more significant structural and parameter changes to follow later

1 C $Header: /u/gcmpack/MITgcm_contrib/darwin2/pkg/darwin/darwin_diags.F,v 1.9 2013/12/27 17:29:00 jahn Exp $
2 C $Name: $
3
4 #include "DARWIN_OPTIONS.h"
5
6 CStartOfInterface
7 SUBROUTINE DARWIN_DIAGS( myTime, myIter, myThid )
8 C /==========================================================\
9 C | SUBROUTINE DARWIN_DIAGS |
10 C | o Do DARWIN diagnostic output |
11 C |==========================================================|
12 C \==========================================================/
13 IMPLICIT NONE
14
15 C === Global variables ===
16 #include "SIZE.h"
17 #include "EEPARAMS.h"
18 #include "PARAMS.h"
19 #include "PTRACERS_SIZE.h"
20 #include "PTRACERS_PARAMS.h"
21 #include "DARWIN_SIZE.h"
22 #include "SPECTRAL_SIZE.h"
23 #include "SPECTRAL.h"
24 #include "DARWIN_IO.h"
25
26 C == Routine arguments ==
27 C myTime - Current time of simulation ( s )
28 C myIter - Iteration number
29 C myThid - Number of this instance of INI_FORCING
30 _RL myTime
31 INTEGER myIter
32 INTEGER myThid
33 CEndOfInterface
34
35 #ifdef ALLOW_DARWIN
36 #ifdef ALLOW_TIMEAVE
37
38 C == Local variables ==
39 LOGICAL DIFFERENT_MULTIPLE
40 EXTERNAL DIFFERENT_MULTIPLE
41 INTEGER bi, bj, k
42 INTEGER np
43 INTEGER ii,jj,ilnb
44 #ifdef ALLOW_QUOTA
45 INTEGER iPhy
46 #endif
47 CHARACTER*(MAX_LEN_MBUF) suff
48 CHARACTER*(1) pf
49 CHARACTER*(MAX_LEN_FNAM) name
50 C Functions
51 INTEGER ILNBLNK
52
53 _RL Nfixtot, PPtot, Denittot
54
55 IF ( writeBinaryPrec .EQ. precFloat64 ) THEN
56 pf(1:1) = 'D'
57 ELSE
58 pf(1:1) = 'R'
59 ENDIF
60
61 #ifdef ALLOW_QUOTA
62 iPhy = ibiomass
63 #endif
64
65 C Dump files and restart average computation if needed
66 IF ( DIFFERENT_MULTIPLE(taveFreq,myTime,deltaTClock).
67 & and.myIter.ne.nIter0 ) THEN
68
69 C Normalize by integrated time
70 DO bj = myByLo(myThid), myByHi(myThid)
71 DO bi = myBxLo(myThid), myBxHi(myThid)
72 CALL TIMEAVE_NORMALIZE(PARave, DAR_timeave, nR ,
73 & bi,bj,myThid)
74 CALL TIMEAVE_NORMALIZE(PPave, DAR_timeave, nR ,
75 & bi,bj,myThid)
76 #ifdef QUOTA_DIAG_LIMIT
77 do np=1,npmax
78 ! Carbon
79 CALL TIMEAVE_NORMALIZE(AP_C_ave(1-Olx,1-Oly,1,1,1,np),
80 & DAR_timeave, nR ,bi,bj,myThid)
81 CALL TIMEAVE_NORMALIZE(HP_C_ave(1-Olx,1-Oly,1,1,1,np),
82 & DAR_timeave, nR ,bi,bj,myThid)
83 ! 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
112 ! Temperature
113 CALL TIMEAVE_NORMALIZE(Tlimave,DAR_timeave, nR ,
114 & bi,bj,myThid)
115 #endif
116 #ifndef ALLOW_QUOTA
117 CALL TIMEAVE_NORMALIZE(Chlave, DAR_timeave, nR ,
118 & bi,bj,myThid)
119 #endif
120 CALL TIMEAVE_NORMALIZE(Nfixave, DAR_timeave, nR ,
121 & bi,bj,myThid)
122 CALL TIMEAVE_NORMALIZE(Denitave, DAR_timeave, nR ,
123 & 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
136 CALL TIMEAVE_NORMALIZE(aCDOMave, DAR_timeave, nR ,
137 & bi,bj,myThid)
138 #endif
139 #ifdef DAR_DIAG_IRR
140 do ii = 1,tlam
141 CALL TIMEAVE_NORMALIZE(Edave(1-Olx,1-Oly,1,1,1,ii),
142 & DAR_timeave,nR,bi,bj,myThid)
143 CALL TIMEAVE_NORMALIZE(Esave(1-Olx,1-Oly,1,1,1,ii),
144 & DAR_timeave,nR,bi,bj,myThid)
145 CALL TIMEAVE_NORMALIZE(Euave(1-Olx,1-Oly,1,1,1,ii),
146 & DAR_timeave,nR,bi,bj,myThid)
147 CALL TIMEAVE_NORMALIZE(Estave(1-Olx,1-Oly,1,1,1,ii),
148 & DAR_timeave,nR,bi,bj,myThid)
149 CALL TIMEAVE_NORMALIZE(Eutave(1-Olx,1-Oly,1,1,1,ii),
150 & DAR_timeave,nR,bi,bj,myThid)
151 enddo
152 #endif
153 #ifdef DAR_DIAG_IRR_AMPS
154 do ii = 1,tlam
155 CALL TIMEAVE_NORMALIZE(amp1ave(1-Olx,1-Oly,1,1,1,ii),
156 & DAR_timeave,nR,bi,bj,myThid)
157 CALL TIMEAVE_NORMALIZE(amp2ave(1-Olx,1-Oly,1,1,1,ii),
158 & DAR_timeave,nR,bi,bj,myThid)
159 enddo
160 #endif
161 #ifdef DAR_DIAG_ABSORP
162 do ii = 1,tlam
163 CALL TIMEAVE_NORMALIZE(aave(1-Olx,1-Oly,1,1,1,ii),
164 & DAR_timeave,nR,bi,bj,myThid)
165 enddo
166 #endif
167 #ifdef DAR_DIAG_SCATTER
168 do ii = 1,tlam
169 CALL TIMEAVE_NORMALIZE(btave(1-Olx,1-Oly,1,1,1,ii),
170 & DAR_timeave,nR,bi,bj,myThid)
171 CALL TIMEAVE_NORMALIZE(bbave(1-Olx,1-Oly,1,1,1,ii),
172 & DAR_timeave,nR,bi,bj,myThid)
173 enddo
174 #endif
175 #ifdef DAR_DIAG_PART_SCATTER
176 do ii = 1,tlam
177 CALL TIMEAVE_NORMALIZE(apartave(1-Olx,1-Oly,1,1,1,ii),
178 & DAR_timeave,nR,bi,bj,myThid)
179 CALL TIMEAVE_NORMALIZE(btpartave(1-Olx,1-Oly,1,1,1,ii),
180 & DAR_timeave,nR,bi,bj,myThid)
181 CALL TIMEAVE_NORMALIZE(bbpartave(1-Olx,1-Oly,1,1,1,ii),
182 & DAR_timeave,nR,bi,bj,myThid)
183 enddo
184 #endif
185 #ifdef DAR_RADTRANS
186 CALL TIMEAVE_NORMALIZE(rmudave(1-Olx,1-Oly,1,1),
187 & DAR_timeave,1,bi,bj,myThid)
188 #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
208 #ifdef WAVES_DIAG_PCHL
209 do np=1,npmax
210 CALL TIMEAVE_NORMALIZE(Pchlave(1-Olx,1-Oly,1,1,1,np),
211 & DAR_timeave, nR ,
212 & bi,bj,myThid)
213 c CALL TIMEAVE_NORMALIZE(Pchlave(1-Olx,1-Oly,1,1,1,np),
214 c & DAR_timeave, nR ,
215 c & bi,bj,myThid)
216 enddo
217 #endif
218 c ANNA end TAVE
219
220 #ifdef DAR_DIAG_RSTAR
221 do np=1,npmax
222 CALL TIMEAVE_NORMALIZE(Rstarave(1-Olx,1-Oly,1,1,1,np),
223 & DAR_timeave, nR ,
224 & bi,bj,myThid)
225 CALL TIMEAVE_NORMALIZE(RNstarave(1-Olx,1-Oly,1,1,1,np),
226 & DAR_timeave, nR ,
227 & bi,bj,myThid)
228 enddo
229 #endif
230 #ifdef DAR_DIAG_DIVER
231 CALL TIMEAVE_NORMALIZE(Diver1ave(1-Olx,1-Oly,1,1,1),
232 & DAR_timeave, nR ,
233 & bi,bj,myThid)
234 CALL TIMEAVE_NORMALIZE(Diver2ave(1-Olx,1-Oly,1,1,1),
235 & DAR_timeave, nR ,
236 & bi,bj,myThid)
237 CALL TIMEAVE_NORMALIZE(Diver3ave(1-Olx,1-Oly,1,1,1),
238 & DAR_timeave, nR ,
239 & bi,bj,myThid)
240 CALL TIMEAVE_NORMALIZE(Diver4ave(1-Olx,1-Oly,1,1,1),
241 & DAR_timeave, nR ,
242 & bi,bj,myThid)
243 #endif
244 c
245 #ifdef DAR_DIAG_GROW
246 do np=1,npmax
247 CALL TIMEAVE_NORMALIZE(Growave(1-Olx,1-Oly,1,1,1,np),
248 & DAR_timeave, nR ,
249 & bi,bj,myThid)
250 CALL TIMEAVE_NORMALIZE(Growsqave(1-Olx,1-Oly,1,1,1,np),
251 & DAR_timeave, nR ,
252 & bi,bj,myThid)
253 enddo
254 #endif
255 #ifdef ALLOW_DIAZ
256 c
257 #ifdef DAR_DIAG_NFIXP
258 do np=1,npmax
259 CALL TIMEAVE_NORMALIZE(NfixPave(1-Olx,1-Oly,1,1,1,np),
260 & DAR_timeave, nR ,
261 & bi,bj,myThid)
262 enddo
263 #endif
264 #endif
265 ENDDO
266 ENDDO
267
268 #ifdef CALC_RATE_TOTALS
269 call tracer_sumvol(
270 & PPave, nR, PPtot, myThid )
271 PPtot=PPtot*120. _d 0 * 12. _d 0* 1. _d -3* 31536000. _d 0
272 & *1. _d -15
273 call tracer_sumvol(
274 & Nfixave, nR, Nfixtot, myThid )
275 Nfixtot=Nfixtot*14. _d 0 *1. _d -3* 31536000. _d 0
276 & *1 _d -12
277 call tracer_sumvol(
278 & Denitave, nR, Denittot, myThid )
279 Denittot=Denittot*14. _d 0 *1. _d -3* 31536000. _d 0
280 & *1 _d -12
281 _BEGIN_MASTER( myThid )
282 write(dar_ratetot_unit,*) myIter, PPtot, Nfixtot, Denittot
283 _END_MASTER( myThid )
284 #endif
285
286
287 IF ( PTRACERS_timeave_mdsio ) THEN
288 WRITE(suff,'(I10.10)') myIter
289 CALL WRITE_FLD_XYZ_RL('DAR_PARtave.',suff,PARave,
290 & myIter,myThid)
291 CALL WRITE_FLD_XYZ_RL('DAR_PPtave.',suff,PPave,
292 & myIter,myThid)
293 #ifndef ALLOW_QUOTA
294 CALL WRITE_FLD_XYZ_RL('DAR_Chltave.',suff,Chlave,
295 & myIter,myThid)
296 #endif
297 CALL WRITE_FLD_XYZ_RL('DAR_Nfixtave.',suff,Nfixave,
298 & myIter,myThid)
299 CALL WRITE_FLD_XYZ_RL('DAR_Denittave.',suff,Denitave,
300 & 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
318 CALL WRITE_FLD_XYZ_RL('DAR_aCDOMtave',suff,aCDOMave,
319 & myIter,myThid)
320 #endif
321 #ifdef DAR_DIAG_IRR
322 do ii = 1,tlam
323 WRITE(suff,'(A5,I2.2,A1,I10.10)') 'Edave',
324 & ii,'.',myIter
325 CALL WRITE_FLD_XYZ_RL(suff,' ',
326 & Edave(1-Olx,1-Oly,1,1,1,ii),
327 & myIter,myThid)
328 WRITE(suff,'(A5,I2.2,A1,I10.10)') 'Esave',
329 & ii,'.',myIter
330 CALL WRITE_FLD_XYZ_RL(suff,' ',
331 & Esave(1-Olx,1-Oly,1,1,1,ii),
332 & myIter,myThid)
333 WRITE(suff,'(A5,I2.2,A1,I10.10)') 'Euave',
334 & ii,'.',myIter
335 CALL WRITE_FLD_XYZ_RL(suff,' ',
336 & Euave(1-Olx,1-Oly,1,1,1,ii),
337 & myIter,myThid)
338 WRITE(suff,'(A8,I2.2,A1,I10.10)') 'Estopave',
339 & ii,'.',myIter
340 CALL WRITE_FLD_XYZ_RL(suff,' ',
341 & Estave(1-Olx,1-Oly,1,1,1,ii),
342 & myIter,myThid)
343 WRITE(suff,'(A8,I2.2,A1,I10.10)') 'Eutopave',
344 & ii,'.',myIter
345 CALL WRITE_FLD_XYZ_RL(suff,' ',
346 & Eutave(1-Olx,1-Oly,1,1,1,ii),
347 & myIter,myThid)
348 enddo
349 #endif
350 #ifdef DAR_DIAG_IRR_AMPS
351 do ii = 1,tlam
352 WRITE(suff,'(A5,I2.2,A1,I10.10)') 'amp1ave',
353 & ii,'.',myIter
354 CALL WRITE_FLD_XYZ_RL(suff,' ',
355 & amp1ave(1-Olx,1-Oly,1,1,1,ii),
356 & myIter,myThid)
357 WRITE(suff,'(A5,I2.2,A1,I10.10)') 'amp2ave',
358 & ii,'.',myIter
359 CALL WRITE_FLD_XYZ_RL(suff,' ',
360 & amp2ave(1-Olx,1-Oly,1,1,1,ii),
361 & myIter,myThid)
362 enddo
363 #endif
364 #ifdef DAR_DIAG_ABSORP
365 do ii = 1,tlam
366 WRITE(suff,'(A4,I2.2,A1,I10.10)') 'aave',
367 & ii,'.',myIter
368 CALL WRITE_FLD_XYZ_RL(suff,' ',
369 & aave(1-Olx,1-Oly,1,1,1,ii),
370 & myIter,myThid)
371 enddo
372 #endif
373 #ifdef DAR_DIAG_SCATTER
374 do ii = 1,tlam
375 WRITE(suff,'(A5,I2.2,A1,I10.10)') 'btave',
376 & ii,'.',myIter
377 CALL WRITE_FLD_XYZ_RL(suff,' ',
378 & btave(1-Olx,1-Oly,1,1,1,ii),
379 & myIter,myThid)
380 WRITE(suff,'(A5,I2.2,A1,I10.10)') 'bbave',
381 & ii,'.',myIter
382 CALL WRITE_FLD_XYZ_RL(suff,' ',
383 & bbave(1-Olx,1-Oly,1,1,1,ii),
384 & myIter,myThid)
385 enddo
386 #endif
387 #ifdef DAR_DIAG_PART_SCATTER
388 do ii = 1,tlam
389 WRITE(suff,'(A8,I2.2,A1,I10.10)') 'apartave',
390 & ii,'.',myIter
391 CALL WRITE_FLD_XYZ_RL(suff,' ',
392 & apartave(1-Olx,1-Oly,1,1,1,ii),
393 & myIter,myThid)
394 WRITE(suff,'(A9,I2.2,A1,I10.10)') 'btpartave',
395 & ii,'.',myIter
396 CALL WRITE_FLD_XYZ_RL(suff,' ',
397 & btpartave(1-Olx,1-Oly,1,1,1,ii),
398 & myIter,myThid)
399 WRITE(suff,'(A9,I2.2,A1,I10.10)') 'bbpartave',
400 & ii,'.',myIter
401 CALL WRITE_FLD_XYZ_RL(suff,' ',
402 & bbpartave(1-Olx,1-Oly,1,1,1,ii),
403 & myIter,myThid)
404 enddo
405 #endif
406 #ifdef DAR_RADTRANS
407 WRITE(suff,'(A7,A1,I10.10)') 'rmudave',
408 & '.',myIter
409 CALL WRITE_FLD_XY_RL(suff,' ',
410 & rmudave(1-Olx,1-Oly,1,1),
411 & myIter,myThid)
412 #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
446 #ifdef WAVES_DIAG_PCHL
447 do np=1,npmax
448 WRITE(suff,'(A7,I2.2,A1,I10.10)') 'Pchlave',
449 & np,'.',myIter
450 CALL WRITE_FLD_XYZ_RL(suff,' ',
451 & Pchlave(1-Olx,1-Oly,1,1,1,np),
452 & myIter,myThid)
453 enddo
454 #endif
455 c ANNA end TAVE
456 #ifdef DAR_DIAG_RSTAR
457 do np=1,npmax
458 WRITE(suff,'(A7,I2.2,A1,I10.10)') 'Rstarave',
459 & np,'.',myIter
460 CALL WRITE_FLD_XYZ_RL(suff,' ',
461 & Rstarave(1-Olx,1-Oly,1,1,1,np),
462 & myIter,myThid)
463 enddo
464 do np=1,npmax
465 WRITE(suff,'(A7,I2.2,A1,I10.10)') 'RNstarave',
466 & np,'.',myIter
467 CALL WRITE_FLD_XYZ_RL(suff,' ',
468 & RNstarave(1-Olx,1-Oly,1,1,1,np),
469 & myIter,myThid)
470 enddo
471 #endif
472 #ifdef DAR_DIAG_DIVER
473 WRITE(suff,'(I10.10)') myIter
474 CALL WRITE_FLD_XYZ_RL('DAR_Diver1tave.',suff,Diver1ave,
475 & myIter,myThid)
476 CALL WRITE_FLD_XYZ_RL('DAR_Diver2tave.',suff,Diver2ave,
477 & myIter,myThid)
478 CALL WRITE_FLD_XYZ_RL('DAR_Diver3tave.',suff,Diver3ave,
479 & myIter,myThid)
480 CALL WRITE_FLD_XYZ_RL('DAR_Diver4tave.',suff,Diver4ave,
481 & myIter,myThid)
482 #endif
483 c
484 #ifdef DAR_DIAG_GROW
485 do np=1,npmax
486 WRITE(suff,'(A7,I2.2,A1,I10.10)') 'Growave',
487 & np,'.',myIter
488 CALL WRITE_FLD_XYZ_RL(suff,' ',
489 & Growave(1-Olx,1-Oly,1,1,1,np),
490 & myIter,myThid)
491 enddo
492 do np=1,npmax
493 WRITE(suff,'(A7,I2.2,A1,I10.10)') 'Growsqave',
494 & np,'.',myIter
495 CALL WRITE_FLD_XYZ_RL(suff,' ',
496 & Growsqave(1-Olx,1-Oly,1,1,1,np),
497 & myIter,myThid)
498 enddo
499 #endif
500 c
501 #ifdef ALLOW_DIAZ
502 #ifdef DAR_DIAG_NFIXP
503 do np=1,npmax
504 WRITE(suff,'(A7,I2.2,A1,I10.10)') 'NfixPave',
505 & np,'.',myIter
506 CALL WRITE_FLD_XYZ_RL(suff,' ',
507 & NfixPave(1-Olx,1-Oly,1,1,1,np),
508 & myIter,myThid)
509 enddo
510 #endif
511 #endif
512 ENDIF
513
514 #ifdef ALLOW_MNC
515 IF ( PTRACERS_timeave_mnc ) THEN
516 CALL MNC_CW_SET_UDIM('dar_tave', -1, myThid)
517 CALL MNC_CW_RL_W_S('D','dar_tave',0,0,'T',myTime,myThid)
518 CALL MNC_CW_SET_UDIM('dar_tave', 0, myThid)
519 CALL MNC_CW_I_W_S('I','dar_tave',0,0,'iter',myIter,myThid)
520 CALL MNC_CW_RL_W(
521 & pf,'dar_tave',0,0,'dar_PAR_ave',PARave,myThid)
522 CALL MNC_CW_RL_W(
523 & pf,'dar_tave',0,0,'dar_PP_ave',PPave,myThid)
524 #ifdef QUOTA_DIAG_LIMIT
525 do np=1,npmax
526 ! Carbon
527 WRITE(name,'(a,i3.3)') 'dar_AP_C_',np
528 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
529 & AP_C_ave(1-OLx,1-OLy,1,1,1,np),myThid)
530 WRITE(name,'(a,i3.3)') 'dar_HP_C_',np
531 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
532 & HP_C_ave(1-OLx,1-OLy,1,1,1,np),myThid)
533 ! Nitrogen
534 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
572 ! Temperature
573 CALL MNC_CW_RL_W(
574 & pf,'dar_tave',0,0,'dar_Tlim_ave',Tlimave,myThid)
575 #endif
576 #ifndef ALLOW_QUOTA
577 CALL MNC_CW_RL_W(
578 & pf,'dar_tave',0,0,'dar_Chl_ave',Chlave,myThid)
579 #endif
580 CALL MNC_CW_RL_W(
581 & pf,'dar_tave',0,0,'dar_Nfix_ave',Nfixave,myThid)
582 CALL MNC_CW_RL_W(
583 & 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
603 CALL MNC_CW_RL_W(
604 & pf,'dar_tave',0,0,'dar_aCDOM_ave',aCDOMave,myThid)
605 #endif
606 #ifdef DAR_DIAG_IRR
607 do ii = 1,tlam
608 DO jj = 1,MAX_LEN_FNAM
609 name(jj:jj) = ' '
610 ENDDO
611 WRITE(name,'(a,i2.2)') 'dar_Ed',ii
612 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
613 & Edave(1-OLx,1-OLy,1,1,1,ii),myThid)
614 WRITE(name,'(a,i2.2)') 'dar_Es',ii
615 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
616 & Esave(1-OLx,1-OLy,1,1,1,ii),myThid)
617 WRITE(name,'(a,i2.2)') 'dar_Eu',ii
618 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
619 & Euave(1-OLx,1-OLy,1,1,1,ii),myThid)
620 WRITE(name,'(a,i2.2)') 'dar_Estop',ii
621 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
622 & Estave(1-OLx,1-OLy,1,1,1,ii),myThid)
623 WRITE(name,'(a,i2.2)') 'dar_Eutop',ii
624 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
625 & Eutave(1-OLx,1-OLy,1,1,1,ii),myThid)
626 enddo
627 #endif
628 #ifdef DAR_DIAG_IRR_AMPS
629 do ii = 1,tlam
630 DO jj = 1,MAX_LEN_FNAM
631 name(jj:jj) = ' '
632 ENDDO
633 WRITE(name,'(a,i2.2)') 'dar_amp1_',ii
634 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
635 & amp1ave(1-OLx,1-OLy,1,1,1,ii),myThid)
636 WRITE(name,'(a,i2.2)') 'dar_amp2_',ii
637 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
638 & amp2ave(1-OLx,1-OLy,1,1,1,ii),myThid)
639 enddo
640 #endif
641 #ifdef DAR_DIAG_ABSORP
642 do ii = 1,tlam
643 DO jj = 1,MAX_LEN_FNAM
644 name(jj:jj) = ' '
645 ENDDO
646 WRITE(name,'(a,i2.2)') 'dar_a',ii
647 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
648 & aave(1-OLx,1-OLy,1,1,1,ii),myThid)
649 enddo
650 #endif
651 #ifdef DAR_DIAG_SCATTER
652 do ii = 1,tlam
653 DO jj = 1,MAX_LEN_FNAM
654 name(jj:jj) = ' '
655 ENDDO
656 WRITE(name,'(a,i2.2)') 'dar_bt',ii
657 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
658 & btave(1-OLx,1-OLy,1,1,1,ii),myThid)
659 WRITE(name,'(a,i2.2)') 'dar_bb',ii
660 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
661 & bbave(1-OLx,1-OLy,1,1,1,ii),myThid)
662 enddo
663 #endif
664 #ifdef DAR_DIAG_PART_SCATTER
665 do ii = 1,tlam
666 DO jj = 1,MAX_LEN_FNAM
667 name(jj:jj) = ' '
668 ENDDO
669 WRITE(name,'(a,i2.2)') 'dar_apart',ii
670 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
671 & apartave(1-OLx,1-OLy,1,1,1,ii),myThid)
672 WRITE(name,'(a,i2.2)') 'dar_btpart',ii
673 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
674 & btpartave(1-OLx,1-OLy,1,1,1,ii),myThid)
675 WRITE(name,'(a,i2.2)') 'dar_bbpart',ii
676 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
677 & bbpartave(1-OLx,1-OLy,1,1,1,ii),myThid)
678 enddo
679 #endif
680 #ifdef DAR_RADTRANS
681 DO jj = 1,MAX_LEN_FNAM
682 name(jj:jj) = ' '
683 ENDDO
684 WRITE(name,'(a)') 'dar_rmud'
685 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
686 & rmudave(1-OLx,1-OLy,1,1),myThid)
687 #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
713 #ifdef WAVES_DIAG_PCHL
714 do np=1,npmax
715 ii=iPhy+np-1
716 DO jj = 1,MAX_LEN_FNAM
717 name(jj:jj) = ' '
718 ENDDO
719 ilnb = ILNBLNK(PTRACERS_names(ii))
720 WRITE(name,'(a,a)') 'dar_Pchl_',PTRACERS_names(ii)(1:ilnb)
721 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
722 & Pchlave(1-OLx,1-OLy,1,1,1,np),myThid)
723 enddo
724 #endif
725 c ANNA end TAVE
726 #ifdef DAR_DIAG_RSTAR
727 do np=1,npmax
728 ii=iPhy+np-1
729 DO jj = 1,MAX_LEN_FNAM
730 name(jj:jj) = ' '
731 ENDDO
732 ilnb = ILNBLNK(PTRACERS_names(ii))
733 WRITE(name,'(a,a)') 'dar_Rstar_',PTRACERS_names(ii)(1:ilnb)
734 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
735 & Rstarave(1-OLx,1-OLy,1,1,1,np),myThid)
736 enddo
737 do np=1,npmax
738 ii=iPhy+np-1
739 DO jj = 1,MAX_LEN_FNAM
740 name(jj:jj) = ' '
741 ENDDO
742 ilnb = ILNBLNK(PTRACERS_names(ii))
743 WRITE(name,'(a,a)') 'dar_RNstar_',PTRACERS_names(ii)(1:ilnb)
744 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
745 & RNstarave(1-OLx,1-OLy,1,1,1,np),myThid)
746 enddo
747 #endif
748 #ifdef DAR_DIAG_DIVER
749 CALL MNC_CW_RL_W(
750 & pf,'dar_tave',0,0,'dar_Diver1_ave',Diver1ave,myThid)
751 CALL MNC_CW_RL_W(
752 & pf,'dar_tave',0,0,'dar_Diver2_ave',Diver2ave,myThid)
753 CALL MNC_CW_RL_W(
754 & pf,'dar_tave',0,0,'dar_Diver3_ave',Diver3ave,myThid)
755 CALL MNC_CW_RL_W(
756 & pf,'dar_tave',0,0,'dar_Diver4_ave',Diver4ave,myThid)
757 #endif
758 c
759 #ifdef DAR_DIAG_GROW
760 do np=1,npmax
761 ii=iPhy+np-1
762 DO jj = 1,MAX_LEN_FNAM
763 name(jj:jj) = ' '
764 ENDDO
765 ilnb = ILNBLNK(PTRACERS_names(ii))
766 WRITE(name,'(a,a)') 'dar_Grow_',PTRACERS_names(ii)(1:ilnb)
767 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
768 & Growave(1-OLx,1-OLy,1,1,1,np),myThid)
769 enddo
770 do np=1,npmax
771 ii=iPhy+np-1
772 DO jj = 1,MAX_LEN_FNAM
773 name(jj:jj) = ' '
774 ENDDO
775 ilnb = ILNBLNK(PTRACERS_names(ii))
776 WRITE(name,'(a,a)') 'dar_Growsq_',PTRACERS_names(ii)(1:ilnb)
777 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
778 & Growsqave(1-OLx,1-OLy,1,1,1,np),myThid)
779 enddo
780 #endif
781 c
782 #ifdef ALLOW_DIAZ
783 #ifdef DAR_DIAG_NFIXP
784 do np=1,npmax
785 ii=iPhy+np-1
786 DO jj = 1,MAX_LEN_FNAM
787 name(jj:jj) = ' '
788 ENDDO
789 ilnb = ILNBLNK(PTRACERS_names(ii))
790 WRITE(name,'(a,a)') 'dar_NfixP_',PTRACERS_names(ii)(1:ilnb)
791 CALL MNC_CW_RL_W(pf,'dar_tave',0,0,name,
792 & NfixPave(1-OLx,1-OLy,1,1,1,np),myThid)
793 enddo
794 #endif
795 #endif
796 ENDIF
797 #endif
798
799 C Reset averages to zero
800 DO bj = myByLo(myThid), myByHi(myThid)
801 DO bi = myBxLo(myThid), myBxHi(myThid)
802 CALL TIMEAVE_RESET(PARave,Nr,bi,bj,myThid)
803 CALL TIMEAVE_RESET(PPave,Nr,bi,bj,myThid)
804 #ifdef QUOTA_DIAG_LIMIT
805 ! Carbon
806 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)
825 CALL TIMEAVE_RESET(Tlimave,Nr,bi,bj,myThid)
826 #endif
827 #ifndef ALLOW_QUOTA
828 CALL TIMEAVE_RESET(Chlave,Nr,bi,bj,myThid)
829 #endif
830 CALL TIMEAVE_RESET(Nfixave,Nr,bi,bj,myThid)
831 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
843 CALL TIMEAVE_RESET(aCDOMave,Nr,bi,bj,myThid)
844 #endif
845 #ifdef DAR_DIAG_IRR
846 do ii = 1,tlam
847 CALL TIMEAVE_RESET(Edave(1-OLx,1-OLy,1,1,1,ii),
848 & Nr,bi,bj,myThid)
849 CALL TIMEAVE_RESET(Esave(1-OLx,1-OLy,1,1,1,ii),
850 & Nr,bi,bj,myThid)
851 CALL TIMEAVE_RESET(Euave(1-OLx,1-OLy,1,1,1,ii),
852 & Nr,bi,bj,myThid)
853 CALL TIMEAVE_RESET(Estave(1-OLx,1-OLy,1,1,1,ii),
854 & Nr,bi,bj,myThid)
855 CALL TIMEAVE_RESET(Eutave(1-OLx,1-OLy,1,1,1,ii),
856 & Nr,bi,bj,myThid)
857 enddo
858 #endif
859 #ifdef DAR_DIAG_IRR_AMPS
860 do ii = 1,tlam
861 CALL TIMEAVE_RESET(amp1ave(1-OLx,1-OLy,1,1,1,ii),
862 & Nr,bi,bj,myThid)
863 CALL TIMEAVE_RESET(amp2ave(1-OLx,1-OLy,1,1,1,ii),
864 & Nr,bi,bj,myThid)
865 enddo
866 #endif
867 #ifdef DAR_DIAG_ABSORP
868 do ii = 1,tlam
869 CALL TIMEAVE_RESET(aave(1-OLx,1-OLy,1,1,1,ii),
870 & Nr,bi,bj,myThid)
871 enddo
872 #endif
873 #ifdef DAR_DIAG_SCATTER
874 do ii = 1,tlam
875 CALL TIMEAVE_RESET(btave(1-OLx,1-OLy,1,1,1,ii),
876 & Nr,bi,bj,myThid)
877 CALL TIMEAVE_RESET(bbave(1-OLx,1-OLy,1,1,1,ii),
878 & Nr,bi,bj,myThid)
879 enddo
880 #endif
881 #ifdef DAR_DIAG_PART_SCATTER
882 do ii = 1,tlam
883 CALL TIMEAVE_RESET(apartave(1-OLx,1-OLy,1,1,1,ii),
884 & Nr,bi,bj,myThid)
885 CALL TIMEAVE_RESET(btpartave(1-OLx,1-OLy,1,1,1,ii),
886 & Nr,bi,bj,myThid)
887 CALL TIMEAVE_RESET(bbpartave(1-OLx,1-OLy,1,1,1,ii),
888 & Nr,bi,bj,myThid)
889 enddo
890 #endif
891 #ifdef DAR_RADTRANS
892 CALL TIMEAVE_RESET(rmudave(1-OLx,1-OLy,1,1),
893 & 1,bi,bj,myThid)
894 #endif
895 #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
913 do np=1,npmax
914 CALL TIMEAVE_RESET(Pchlave(1-OLx,1-OLy,1,1,1,np),
915 & Nr,bi,bj,myThid)
916 enddo
917 #endif
918 c ANNA and TAVE
919 #ifdef DAR_DIAG_RSTAR
920 do np=1,npmax
921 CALL TIMEAVE_RESET(Rstarave(1-OLx,1-OLy,1,1,1,np),
922 & Nr,bi,bj,myThid)
923 enddo
924 do np=1,npmax
925 CALL TIMEAVE_RESET(RNstarave(1-OLx,1-OLy,1,1,1,np),
926 & Nr,bi,bj,myThid)
927 enddo
928 #endif
929 #ifdef DAR_DIAG_DIVER
930 CALL TIMEAVE_RESET(Diver1ave,Nr,bi,bj,myThid)
931 CALL TIMEAVE_RESET(Diver2ave,Nr,bi,bj,myThid)
932 CALL TIMEAVE_RESET(Diver3ave,Nr,bi,bj,myThid)
933 CALL TIMEAVE_RESET(Diver4ave,Nr,bi,bj,myThid)
934 #endif
935 c
936 #ifdef DAR_DIAG_GROW
937 do np=1,npmax
938 CALL TIMEAVE_RESET(Growave(1-OLx,1-OLy,1,1,1,np),
939 & Nr,bi,bj,myThid)
940 enddo
941 do np=1,npmax
942 CALL TIMEAVE_RESET(Growsqave(1-OLx,1-OLy,1,1,1,np),
943 & Nr,bi,bj,myThid)
944 enddo
945 #endif
946 c
947 #ifdef ALLOW_DIAZ
948 #ifdef DAR_DIAG_NFIXP
949 do np=1,npmax
950 CALL TIMEAVE_RESET(NfixPave(1-OLx,1-OLy,1,1,1,np),
951 & Nr,bi,bj,myThid)
952 enddo
953 #endif
954 #endif
955 DAR_TimeAve(bi,bj)=0.d0
956 ENDDO
957 ENDDO
958
959 ENDIF
960
961 #endif /* ALLOW_TIMEAVE */
962 #endif /* ALLOW_DARWIN */
963
964 RETURN
965 END

  ViewVC Help
Powered by ViewVC 1.1.22