/[MITgcm]/MITgcm/pkg/aim_v23/aim_diagnostics.F
ViewVC logotype

Contents of /MITgcm/pkg/aim_v23/aim_diagnostics.F

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


Revision 1.21 - (show annotations) (download)
Thu Oct 5 15:20:23 2006 UTC (17 years, 8 months ago) by dfer
Branch: MAIN
CVS Tags: checkpoint59, checkpoint58y_post, checkpoint58t_post, checkpoint60, checkpoint61, checkpoint62, checkpoint58w_post, checkpoint58q_post, checkpoint58r_post, checkpoint59q, checkpoint59p, checkpoint59r, checkpoint59e, checkpoint59d, checkpoint59g, checkpoint59f, checkpoint59a, checkpoint59c, checkpoint59b, checkpoint59m, checkpoint59l, checkpoint59o, checkpoint59n, checkpoint59i, checkpoint59h, checkpoint59k, checkpoint59j, checkpoint58v_post, checkpoint61f, checkpoint58x_post, checkpoint61n, checkpoint61q, checkpoint61z, checkpoint61e, checkpoint58u_post, checkpoint58s_post, checkpoint61g, checkpoint61d, checkpoint61b, checkpoint61c, checkpoint61a, checkpoint61o, checkpoint61l, checkpoint61m, checkpoint61j, checkpoint61k, checkpoint61h, checkpoint61i, checkpoint61v, checkpoint61w, checkpoint61t, checkpoint61u, checkpoint61r, checkpoint61s, checkpoint61p, checkpoint61x, checkpoint61y
Changes since 1.20: +4 -5 lines
fix bug in aim snap-shots when done with MNC (iter and T lagging by one timestep)
+ change name of ouput file from "aim-state" to "aim-phys"

1 C $Header: /u/gcmpack/MITgcm/pkg/aim_v23/aim_diagnostics.F,v 1.20 2006/08/04 23:17:11 jmc Exp $
2 C $Name: $
3
4 #include "AIM_OPTIONS.h"
5
6 CStartOfInterFace
7 SUBROUTINE AIM_DIAGNOSTICS( bi,bj, myTime, myIter, myThid )
8 C *==========================================================*
9 C | SUBROUTINE AIM_DIAGNOSTICS
10 C | o Calculate AIM diagnostics
11 C *==========================================================*
12 IMPLICIT NONE
13
14 C === Global variables ===
15 C-- size for MITgcm & Physics package :
16 #include "AIM_SIZE.h"
17
18 #include "EEPARAMS.h"
19 #include "PARAMS.h"
20 #include "GRID.h"
21
22 #include "AIM_PARAMS.h"
23 c #include "AIM2DYN.h"
24 #include "AIM_DIAGS.h"
25 #include "com_physvar.h"
26 #include "com_forcing.h"
27
28 LOGICAL DIFFERENT_MULTIPLE
29 EXTERNAL DIFFERENT_MULTIPLE
30
31 C == Routine arguments ==
32 C bi,bj - Tile index
33 C myTime - Current time of simulation ( s )
34 C myIter - Current iteration number in simulation
35 C myThid - Number of this instance of the routine
36 INTEGER bi, bj, myIter, myThid
37 _RL myTime
38 CEndOfInterface
39
40 #ifdef ALLOW_AIM
41
42 C == Local variables ==
43 INTEGER I,J,K, I2,Katm
44 _RL DDTT
45 CHARACTER*(80) suff
46 #ifdef ALLOW_DIAGNOSTICS
47 LOGICAL DIAGNOSTICS_IS_ON
48 EXTERNAL DIAGNOSTICS_IS_ON
49 _RL tmpVar(NGP)
50 #endif
51 CHARACTER*(1) pf
52
53 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
54
55 IF ( writeBinaryPrec .EQ. precFloat64 ) THEN
56 pf(1:1) = 'D'
57 ELSE
58 pf(1:1) = 'R'
59 ENDIF
60
61 C-- mean surf. temp. change:
62 DO J=1,NGP
63 dTsurf(J,1,myThid) = fMask1(J,1,myThid)*dTsurf(J,1,myThid)
64 & + fMask1(J,2,myThid)*dTsurf(J,2,myThid)
65 & + fMask1(J,3,myThid)*dTsurf(J,3,myThid)
66 dTsurf(J,1,myThid) = ABS(dTsurf(J,1,myThid))
67 ENDDO
68
69 IF ( DIFFERENT_MULTIPLE(aim_tendFreq,
70 & myTime+deltaTClock,deltaTClock)
71 & ) THEN
72 C--- Write Tendencies to files :
73
74 IF ( aim_snapshot_mdsio ) THEN
75 C- using MDSIO based S/R
76 WRITE(suff,'(A1,I10.10)') '.', myIter+1
77
78 CALL AIM_WRITE_PHYS( 'aim_dT_RSW', suff, Nr, TT_RSW,
79 & 0, bi, bj, 1, myIter, myThid )
80 CALL AIM_WRITE_PHYS( 'aim_dT_RLW', suff, Nr, TT_RLW,
81 & 0, bi, bj, 1, myIter, myThid )
82 CALL AIM_WRITE_PHYS( 'aim_dT_CNV', suff, Nr, TT_CNV,
83 & 0, bi, bj, 1, myIter, myThid )
84 CALL AIM_WRITE_PHYS( 'aim_dT_PBL', suff, Nr, TT_PBL,
85 & 0, bi, bj, 1, myIter, myThid )
86 CALL AIM_WRITE_PHYS( 'aim_dT_LSC', suff, Nr, TT_LSC,
87 & 0, bi, bj, 1, myIter, myThid )
88 CALL AIM_WRITE_PHYS( 'aim_dQ_CNV', suff, Nr, QT_CNV,
89 & 0, bi, bj, 1, myIter, myThid )
90 CALL AIM_WRITE_PHYS( 'aim_dQ_PBL', suff, Nr, QT_PBL,
91 & 0, bi, bj, 1, myIter, myThid )
92 CALL AIM_WRITE_PHYS( 'aim_dQ_LSC', suff, Nr, QT_LSC,
93 & 0, bi, bj, 1, myIter, myThid )
94 #ifdef ALLOW_CLR_SKY_DIAG
95 C- write clear-sky tendencies to files :
96 IF ( aim_clrSkyDiag ) THEN
97 CALL AIM_WRITE_PHYS( 'aim_dT_clskySW', suff, Nr, TT_SWclr,
98 & 0, bi, bj, 1, myIter, myThid )
99 CALL AIM_WRITE_PHYS( 'aim_dT_clskyLW', suff, Nr, TT_LWclr,
100 & 0, bi, bj, 1, myIter, myThid )
101 ENDIF
102 #endif /* ALLOW_CLR_SKY_DIAG */
103
104 C- end if aim_snapshot_mdsio
105 ENDIF
106
107 #ifdef ALLOW_MNC
108 c IF ( useMNC .AND. aim_snapshot_mnc ) THEN
109 C- using MNC S/R
110 IF ( .FALSE. ) THEN
111 C jmc: temporary turn off this part until this get fixed:
112 C > MNC_CW_RL_W ERROR: vtype 'aim_dT_RSW' is not defined
113
114 IF ( bi.EQ.1 .AND. bj.EQ.1 ) THEN
115 WRITE(suff,'(a)') 'aim_tend'
116 CALL MNC_CW_SET_UDIM(suff, -1, myThid)
117 CALL MNC_CW_RL_W_S('D',suff,0,0,'T',myTime,myThid)
118 CALL MNC_CW_SET_UDIM(suff, 0, myThid)
119 CALL MNC_CW_I_W_S('I',suff,0,0,'iter',myIter,myThid)
120 ENDIF
121
122 CALL MNC_CW_RL_W(pf,suff,bi,bj,'aim_dT_RSW',TT_RSW,myThid)
123 CALL MNC_CW_RL_W(pf,suff,bi,bj,'aim_dT_RLW',TT_RLW,myThid)
124 CALL MNC_CW_RL_W(pf,suff,bi,bj,'aim_dT_CNV',TT_CNV,myThid)
125 CALL MNC_CW_RL_W(pf,suff,bi,bj,'aim_dT_PBL',TT_PBL,myThid)
126 CALL MNC_CW_RL_W(pf,suff,bi,bj,'aim_dT_LSC',TT_LSC,myThid)
127 CALL MNC_CW_RL_W(pf,suff,bi,bj,'aim_dQ_CNV',QT_CNV,myThid)
128 CALL MNC_CW_RL_W(pf,suff,bi,bj,'aim_dQ_PBL',QT_PBL,myThid)
129 CALL MNC_CW_RL_W(pf,suff,bi,bj,'aim_dQ_LSC',QT_LSC,myThid)
130
131 C- end if aim_snapshot_mnc
132 ENDIF
133 #endif /* ALLOW_MNC */
134
135 C--- end writing tendencies
136 ENDIF
137
138 IF ( DIFFERENT_MULTIPLE( aim_diagFreq,
139 & myTime+deltaTClock, deltaTClock )
140 & ) THEN
141 C--- Write Physics Fields
142
143 IF ( aim_snapshot_mdsio ) THEN
144 C- using MDSIO based S/R
145
146 WRITE(suff,'(A1,I10.10)') '.', myIter+1
147
148 C-- Write Relative Humidity :
149 CALL AIM_WRITE_PHYS( 'aim_RelHum', suff, Nr, RH,
150 & 0, bi, bj, 1, myIter, myThid )
151
152 C-- Write AIM Physics diagnostics (2D, all in 1 file) :
153 CALL AIM_WRITE_PHYS( 'aimPhyDiag', suff, 4, DRAG,
154 & 1, bi, bj, 1, myIter, myThid )
155 CALL AIM_WRITE_PHYS( 'aimPhyDiag', suff, 1, SPEED0,
156 & 1, bi, bj, 2, myIter, myThid )
157 CALL AIM_WRITE_PHYS( 'aimPhyDiag', suff, 1, TSR,
158 & 1, bi, bj, 3, myIter, myThid )
159 CALL AIM_WRITE_PHYS( 'aimPhyDiag', suff, 1, OLR,
160 & 1, bi, bj, 4, myIter, myThid )
161 CALL AIM_WRITE_PHYS( 'aimPhyDiag', suff, 4, SSR,
162 & 1, bi, bj, 5, myIter, myThid )
163 CALL AIM_WRITE_PHYS( 'aimPhyDiag', suff, 4, SLR,
164 & 1, bi, bj, 6, myIter, myThid )
165 CALL AIM_WRITE_PHYS( 'aimPhyDiag', suff, 4, SHF,
166 & 1, bi, bj, 7, myIter, myThid )
167 CALL AIM_WRITE_PHYS( 'aimPhyDiag', suff, 4, EVAP,
168 & 1, bi, bj, 8, myIter, myThid )
169 CALL AIM_WRITE_PHYS( 'aimPhyDiag', suff, 1, PRECNV,
170 & 1, bi, bj, 9, myIter, myThid )
171 CALL AIM_WRITE_PHYS( 'aimPhyDiag', suff, 1, PRECLS,
172 & 1, bi, bj,10, myIter, myThid )
173 CALL AIM_WRITE_PHYS( 'aimPhyDiag', suff, 1, CLOUDC,
174 & 1, bi, bj,11, myIter, myThid )
175 CALL AIM_WRITE_PHYS( 'aimPhyDiag', suff, 1, CLTOP,
176 & 1, bi, bj,12, myIter, myThid )
177 CALL AIM_WRITE_PHYS( 'aimPhyDiag', suff, 1, CBMF,
178 & 1, bi, bj,13, myIter, myThid )
179 CALL AIM_WRITE_PHYS( 'aimPhyDiag', suff, 1, T0,
180 & 1, bi, bj,14, myIter, myThid )
181 CALL AIM_WRITE_PHYS( 'aimPhyDiag', suff, 1, Q0,
182 & 1, bi, bj,15, myIter, myThid )
183 CALL AIM_WRITE_PHYS( 'aimPhyDiag', suff, 1, EnPrec,
184 & 1, bi, bj,16, myIter, myThid )
185 CALL AIM_WRITE_PHYS( 'aimPhyDiag', suff, 4, alb1,
186 & 1, bi, bj,17, myIter, myThid )
187 CALL AIM_WRITE_PHYS( 'aimPhyDiag', suff, 3, dTsurf,
188 & 1, bi, bj,18, myIter, myThid )
189 #ifdef ALLOW_CLR_SKY_DIAG
190 C-- write clear-sky radiative fluxes to files :
191 IF ( aim_clrSkyDiag ) THEN
192 CALL AIM_WRITE_PHYS('aimPhyDiag', suff, 1, TSWclr,
193 & 1, bi, bj,19, myIter, myThid )
194 CALL AIM_WRITE_PHYS('aimPhyDiag', suff, 1, OLWclr,
195 & 1, bi, bj,20, myIter, myThid )
196 CALL AIM_WRITE_PHYS('aimPhyDiag', suff, 1, SSWclr,
197 & 1, bi, bj,21, myIter, myThid )
198 CALL AIM_WRITE_PHYS('aimPhyDiag', suff, 1, SLWclr,
199 & 1, bi, bj,22, myIter, myThid )
200 ENDIF
201 #endif /* ALLOW_CLR_SKY_DIAG */
202
203 C- end if aim_snapshot_mdsio
204 ENDIF
205
206 #ifdef ALLOW_MNC
207 IF ( useMNC .AND. aim_snapshot_mnc ) THEN
208 C- using MNC S/R
209
210 IF ( bi.EQ.1 .AND. bj.EQ.1 ) THEN
211 WRITE(suff,'(a)') 'aim_phys'
212 CALL MNC_CW_SET_UDIM(suff, -1, myThid)
213 CALL MNC_CW_RL_W_S('D',suff,0,0,'T',myTime+deltaTClock,myThid)
214 CALL MNC_CW_SET_UDIM(suff, 0, myThid)
215 CALL MNC_CW_I_W_S('I',suff,0,0,'iter',myIter+1,myThid)
216 ENDIF
217
218 CALL MNC_CW_RL_W(pf,suff,bi,bj,
219 & 'aim_DRAG0',DRAG(1,0,myThid),myThid)
220 CALL MNC_CW_RL_W(pf,suff,bi,bj,
221 & 'aim_SPEED0',SPEED0(1,myThid),myThid)
222 CALL MNC_CW_RL_W(pf,suff,bi,bj,
223 & 'aim_TSR',TSR(1,myThid),myThid)
224 CALL MNC_CW_RL_W(pf,suff,bi,bj,
225 & 'aim_OLR',OLR(1,myThid),myThid)
226 CALL MNC_CW_RL_W(pf,suff,bi,bj,
227 & 'aim_SSR0',SSR(1,0,myThid),myThid)
228 CALL MNC_CW_RL_W(pf,suff,bi,bj,
229 & 'aim_SLR0',SLR(1,0,myThid),myThid)
230 CALL MNC_CW_RL_W(pf,suff,bi,bj,
231 & 'aim_SHF0',SHF(1,0,myThid),myThid)
232 CALL MNC_CW_RL_W(pf,suff,bi,bj,
233 & 'aim_EVAP0',EVAP(1,0,myThid),myThid)
234 CALL MNC_CW_RL_W(pf,suff,bi,bj,
235 & 'aim_PRECNV',PRECNV(1,myThid),myThid)
236 CALL MNC_CW_RL_W(pf,suff,bi,bj,
237 & 'aim_PRECLS',PRECLS(1,myThid),myThid)
238 CALL MNC_CW_RL_W(pf,suff,bi,bj,
239 & 'aim_CLOUDC',CLOUDC(1,myThid),myThid)
240 CALL MNC_CW_RL_W(pf,suff,bi,bj,
241 & 'aim_CLTOP',CLTOP(1,myThid),myThid)
242 CALL MNC_CW_RL_W(pf,suff,bi,bj,
243 & 'aim_CBMF',CBMF(1,myThid),myThid)
244 CALL MNC_CW_RL_W(pf,suff,bi,bj,
245 & 'aim_T0',T0(1,myThid),myThid)
246 CALL MNC_CW_RL_W(pf,suff,bi,bj,
247 & 'aim_Q0',Q0(1,myThid),myThid)
248 CALL MNC_CW_RL_W(pf,suff,bi,bj,
249 & 'aim_EnPrec',EnPrec(1,myThid),myThid)
250 CALL MNC_CW_RL_W(pf,suff,bi,bj,
251 & 'aim_alb10',alb1(1,0,myThid),myThid)
252 CALL MNC_CW_RL_W(pf,suff,bi,bj,
253 & 'aim_dTsurf1',dTsurf(1,1,myThid),myThid)
254 #ifdef ALLOW_CLR_SKY_DIAG
255 C-- write clear-sky radiative fluxes to files :
256 IF ( aim_clrSkyDiag ) THEN
257 CALL MNC_CW_RL_W(pf,suff,bi,bj,
258 & 'aim_TSWclr',TSWclr(1,myThid),myThid)
259 CALL MNC_CW_RL_W(pf,suff,bi,bj,
260 & 'aim_OLWclr',OLWclr(1,myThid),myThid)
261 CALL MNC_CW_RL_W(pf,suff,bi,bj,
262 & 'aim_SSWclr',SSWclr(1,myThid),myThid)
263 CALL MNC_CW_RL_W(pf,suff,bi,bj,
264 & 'aim_SLWclr',SLWclr(1,myThid),myThid)
265 ENDIF
266 #endif /* ALLOW_CLR_SKY_DIAG */
267
268 C end if aim_snapshot_mnc
269 ENDIF
270 #endif /* ALLOW_MNC */
271
272 C-- end writing Physics Fields
273 ENDIF
274
275 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
276
277 C-- cloud-top pressure: multiplied by cloud fraction before averaging:
278 DO J=1,NGP
279 CLTOP(J,myThid)=CLTOP(J,mythid)*CLOUDC(J,myThid)
280 ENDDO
281
282 #ifdef ALLOW_AIM_TAVE
283
284 IF (aim_taveFreq.GT.0.) THEN
285
286 DDTT = deltaTclock
287
288 DO J=1,sNy
289 DO I=1,sNx
290 I2 = I+(J-1)*sNx
291 TSRtave(i,j,bi,bj) = TSRtave(i,j,bi,bj)
292 & + TSR(I2,myThid)*DDTT
293 OLRtave(i,j,bi,bj) = OLRtave(i,j,bi,bj)
294 & + OLR(I2,myThid)*DDTT
295 SSRtave(i,j,bi,bj) = SSRtave(i,j,bi,bj)
296 & + SSR(I2,0,myThid)*DDTT
297 SLRtave(i,j,bi,bj) = SLRtave(i,j,bi,bj)
298 & + SLR(I2,0,myThid)*DDTT
299 SHFtave(i,j,bi,bj) = SHFtave(i,j,bi,bj)
300 & + SHF(I2,0,myThid)*DDTT
301 EVAPtave(i,j,bi,bj) = EVAPtave(i,j,bi,bj)
302 & + EVAP(I2,0,myThid)*DDTT
303 PRECNVtave(i,j,bi,bj) = PRECNVtave(i,j,bi,bj)
304 & + PRECNV(I2,myThid)*DDTT
305 PRECLStave(i,j,bi,bj) = PRECLStave(i,j,bi,bj)
306 & + PRECLS(I2,myThid)*DDTT
307 CLOUDCtave(i,j,bi,bj) = CLOUDCtave(i,j,bi,bj)
308 & + CLOUDC(I2,myThid)*DDTT
309 CLTOPtave(i,j,bi,bj) = CLTOPtave(i,j,bi,bj)
310 & + CLTOP(I2,myThid)*DDTT
311 CBMFtave(i,j,bi,bj) = CBMFtave(i,j,bi,bj)
312 & + CBMF(I2,myThid)*DDTT
313 DRAGtave(i,j,bi,bj) = DRAGtave(i,j,bi,bj)
314 & + DRAG(I2,0,myThid)*DDTT
315 aimV0tave(i,j,bi,bj) = aimV0tave(i,j,bi,bj)
316 & + SPEED0(I2,myThid)*DDTT
317 aimT0tave(i,j,bi,bj) = aimT0tave(i,j,bi,bj)
318 & + T0(I2,myThid)*DDTT
319 aimQ0tave(i,j,bi,bj) = aimQ0tave(i,j,bi,bj)
320 & + Q0(I2,myThid)*DDTT
321 EnFxPrtave(i,j,bi,bj) = EnFxPrtave(i,j,bi,bj)
322 & + EnPrec(I2,myThid)
323 & *(PRECNV(I2,myThid)+
324 & PRECLS(I2,myThid))*DDTT
325 albedotave(i,j,bi,bj) = albedotave(i,j,bi,bj)
326 & + alb1(I2,0,myThid)*DDTT
327 dTsurftave(i,j,bi,bj) = dTsurftave(i,j,bi,bj)
328 & + dTsurf(I2,1,myThid)*DDTT
329 ENDDO
330 ENDDO
331
332 C- Relative Humidity :
333 DO k=1,Nr
334 Katm = _KD2KA( k )
335 DO j=1,sNy
336 DO i=1,sNx
337 I2 = i+(j-1)*sNx
338 aimRHtave(i,j,k,bi,bj) = aimRHtave(i,j,k,bi,bj)
339 & + RH(I2,Katm,myThid)*DDTT
340 ENDDO
341 ENDDO
342 ENDDO
343
344 C- Keep record of how much time has been integrated over
345 DO K=1,Nr
346 aim_timeAve(k,bi,bj)=aim_timeAve(k,bi,bj)+DDTT
347 ENDDO
348
349 ENDIF
350
351 #endif /* ALLOW_AIM_TAVE */
352
353 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
354
355 #ifdef ALLOW_DIAGNOSTICS
356 IF (useDiagnostics) THEN
357 CALL DIAGNOSTICS_FILL( TT_RSW(1,1,myThid),
358 & 'RADSW ',-1, Nr, 3,bi,bj, myThid )
359 CALL DIAGNOSTICS_FILL( TT_RLW(1,1,myThid),
360 & 'RADLW ',-1, Nr, 3,bi,bj, myThid )
361 CALL DIAGNOSTICS_FILL( TT_CNV(1,1,myThid),
362 & 'DTCONV ',-1, Nr, 3,bi,bj, myThid )
363 CALL DIAGNOSTICS_FILL( TT_PBL(1,1,myThid),
364 & 'TURBT ',-1, Nr, 3,bi,bj, myThid )
365 CALL DIAGNOSTICS_FILL( TT_LSC(1,1,myThid),
366 & 'DTLS ',-1, Nr, 3,bi,bj, myThid )
367 CALL DIAGNOSTICS_FILL( QT_CNV(1,1,myThid),
368 & 'DQCONV ',-1, Nr, 3,bi,bj, myThid )
369 CALL DIAGNOSTICS_FILL( QT_PBL(1,1,myThid),
370 & 'TURBQ ',-1, Nr, 3,bi,bj, myThid )
371 CALL DIAGNOSTICS_FILL( QT_LSC(1,1,myThid),
372 & 'DQLS ',-1, Nr, 3,bi,bj, myThid )
373 CALL DIAGNOSTICS_FILL( RH(1,1,myThid),
374 & 'RELHUM ',-1, Nr, 3,bi,bj, myThid )
375 CALL DIAGNOSTICS_FILL( TSR(1,myThid),
376 & 'TSR ', 1, 1 , 3,bi,bj, myThid )
377 CALL DIAGNOSTICS_FILL( OLR(1,myThid),
378 & 'OLR ', 1, 1 , 3,bi,bj, myThid )
379 CALL DIAGNOSTICS_FILL( SSR(1,0,myThid),
380 & 'RADSWG ', 1, 1 , 3,bi,bj, myThid )
381 CALL DIAGNOSTICS_FILL( SLR(1,0,myThid),
382 & 'RADLWG ', 1, 1 , 3,bi,bj, myThid )
383 CALL DIAGNOSTICS_FILL( SHF(1,0,myThid),
384 & 'HFLUX ', 1, 1 , 3,bi,bj, myThid )
385 CALL DIAGNOSTICS_FILL( EVAP(1,0,myThid),
386 & 'EVAP ', 1, 1 , 3,bi,bj, myThid )
387 CALL DIAGNOSTICS_FILL( PRECNV(1,myThid),
388 & 'PRECON ', 1, 1 , 3,bi,bj, myThid )
389 CALL DIAGNOSTICS_FILL( PRECLS(1,myThid),
390 & 'PRECLS ', 1, 1 , 3,bi,bj, myThid )
391 CALL DIAGNOSTICS_FILL( CLOUDC(1,myThid),
392 & 'CLDFRC ', 1, 1 , 3,bi,bj, myThid )
393 CALL DIAGNOSTICS_FILL( CLTOP(1,myThid),
394 & 'CLDPRS ', 1, 1 , 3,bi,bj, myThid )
395 c CALL DIAGNOSTICS_FILL( CLOUDC(1,myThid),
396 c & 'CTPCNT ', 1, 1 , 3,bi,bj, myThid )
397 CALL DIAGNOSTICS_FILL( CBMF(1,myThid),
398 & 'CLDMAS ', 1, 1 , 3,bi,bj, myThid )
399 CALL DIAGNOSTICS_FILL( DRAG(1,0,myThid),
400 & 'DRAG ', 1, 1 , 3,bi,bj, myThid )
401 CALL DIAGNOSTICS_FILL( SPEED0(1,myThid),
402 & 'WINDS ', 1, 1 , 3,bi,bj, myThid )
403 CALL DIAGNOSTICS_FILL( T0(1,myThid),
404 & 'TS ', 1, 1 , 3,bi,bj, myThid )
405 CALL DIAGNOSTICS_FILL( Q0(1,myThid),
406 & 'QS ', 1, 1 , 3,bi,bj, myThid )
407 IF ( DIAGNOSTICS_IS_ON('ENPREC ',myThid) ) THEN
408 DO J=1,NGP
409 tmpVar(J) = EnPrec(J,myThid)
410 & *(PRECNV(J,myThid)+PRECLS(J,myThid))
411 ENDDO
412 CALL DIAGNOSTICS_FILL( tmpVar,
413 & 'ENPREC ', 1, 1 , 3,bi,bj, myThid )
414 ENDIF
415 CALL DIAGNOSTICS_FILL( alb1(1,0,myThid),
416 & 'ALBVISDF', 1, 1 , 3,bi,bj, myThid )
417 CALL DIAGNOSTICS_FILL( dTsurf(1,1,myThid),
418 & 'DTSIMPL ', 1, 1 , 3,bi,bj, myThid )
419 #ifdef ALLOW_CLR_SKY_DIAG
420 IF ( aim_clrSkyDiag ) THEN
421 CALL DIAGNOSTICS_FILL( TT_SWclr(1,1,myThid),
422 & 'SWCLR ',-1, Nr, 3,bi,bj, myThid )
423 CALL DIAGNOSTICS_FILL( TT_LWclr(1,1,myThid),
424 & 'LWCLR ',-1, Nr, 3,bi,bj, myThid )
425 CALL DIAGNOSTICS_FILL( TSWclr(1,myThid),
426 & 'TSRCLR ', 1, 1 , 3,bi,bj, myThid )
427 CALL DIAGNOSTICS_FILL( OLWclr(1,myThid),
428 & 'OLRCLR ', 1, 1 , 3,bi,bj, myThid )
429 CALL DIAGNOSTICS_FILL( SSWclr(1,myThid),
430 & 'SWGCLR ', 1, 1 , 3,bi,bj, myThid )
431 CALL DIAGNOSTICS_FILL( SLWclr(1,myThid),
432 & 'LWGCLR ', 1, 1 , 3,bi,bj, myThid )
433 ENDIF
434 #endif /* ALLOW_CLR_SKY_DIAG */
435
436 ENDIF
437 #endif /* ALLOW_DIAGNOSTICS */
438
439 #endif /* ALLOW_AIM */
440
441 RETURN
442 END

  ViewVC Help
Powered by ViewVC 1.1.22