/[MITgcm]/MITgcm/pkg/aim/aim_write_diags.F
ViewVC logotype

Contents of /MITgcm/pkg/aim/aim_write_diags.F

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


Revision 1.5 - (show annotations) (download)
Tue May 29 14:01:37 2001 UTC (23 years, 1 month ago) by adcroft
Branch: MAIN
CVS Tags: checkpoint46n_post, icebear2, checkpoint40pre1, checkpoint44h_pre, release1_p12, release1_p10, release1_p11, release1_p16, release1_p15, ecco_c44_e17, ecco_c44_e16, checkpoint46j_post, checkpoint46i_post, ecco_c44_e21, ecco_c44_e26, ecco_c44_e27, ecco_c44_e24, icebear5, icebear4, checkpoint44f_pre, icebear3, checkpoint46f_post, release1_p13_pre, checkpoint46d_pre, checkpoint46e_post, release1-branch_tutorials, release1_p14, checkpoint44g_post, checkpoint46h_pre, checkpoint44h_post, release1_p12_pre, checkpoint44e_post, checkpoint46k_post, checkpoint46e_pre, ecco-branch-mod4, checkpoint43a-release1mods, checkpoint45d_post, checkpoint46l_pre, checkpoint46j_pre, checkpoint45b_post, checkpoint46b_pre, checkpoint46l_post, chkpt44a_pre, release1-branch-end, release1_final_v1, ecco_c44_e19, checkpoint46, ecco_c44_e20, checkpoint44, release1_p13, ecco_c44_e18, checkpoint44f_post, checkpoint40pre2, checkpoint40pre5, checkpoint40pre6, checkpoint40pre8, release1_p17, release1_b1, checkpoint44b_post, chkpt44c_post, chkpt44d_post, checkpoint42, release1_p9, release1_p8, checkpoint43, checkpoint46g_pre, release1_p2, release1_p3, release1_p4, release1_p6, checkpoint46a_post, chkpt44a_post, checkpoint44b_pre, release1_p1, checkpoint46m_post, checkpoint40pre4, checkpoint46a_pre, ecco-branch-mod1, checkpoint40pre3, checkpoint45c_post, release1_p5, checkpoint44e_pre, chkpt44c_pre, checkpoint40pre9, release1_p7, ecco_ice2, ecco_ice1, checkpoint46b_post, checkpoint46d_post, ecco-branch-mod2, checkpoint46g_post, checkpoint45a_post, checkpoint46c_pre, ecco-branch-mod3, ecco-branch-mod5, ecco_c44_e22, release1_beta1, ecco_c44_e23, release1-branch_branchpoint, checkpoint47, checkpoint40pre7, checkpoint46c_post, checkpoint40, checkpoint45, checkpoint46h_post, release1_chkpt44d_post, ecco_c44_e25, checkpoint41
Branch point for: c24_e25_ice, ecco-branch, release1_coupled, icebear, release1_final, release1-branch, release1, release1_50yr
Changes since 1.4: +10 -2 lines
Merge from branch pre38:
 o essential mods for cubed sphere
 o debugged atmosphere, dynamcis + physics (aim)
 o new packages (mom_vecinv, mom_fluxform, ...)

1 C $Header: /u/gcmpack/models/MITgcmUV/pkg/aim/aim_write_diags.F,v 1.4.2.2 2001/04/18 19:01:51 jmc Exp $
2 C $Name: $
3
4 #include "AIM_OPTIONS.h"
5
6 CStartOfInterFace
7 SUBROUTINE AIM_WRITE_DIAGS( myTime, myIter, myThid )
8 C /==========================================================\
9 C | SUBROUTINE AIM_WRITE_DIAGS |
10 C | o Write out AIM diagnostic output |
11 C \==========================================================/
12 IMPLICIT NONE
13
14 C === Global variables ===
15 #include "SIZE.h"
16 #include "EEPARAMS.h"
17 #include "PARAMS.h"
18 #include "AIM_DIAGS.h"
19 LOGICAL DIFFERENT_MULTIPLE
20 EXTERNAL DIFFERENT_MULTIPLE
21
22 C Common (shared with RD_WR_FLD routines in read_write_fld.F)
23 COMMON /RD_WR_FLD/ globalFile
24 LOGICAL globalFile
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 the routine
30 _RL myTime
31 INTEGER myIter
32 INTEGER myThid
33 CEndOfInterface
34
35 #ifdef ALLOW_AIM
36
37 C == Local variables ==
38 INTEGER bi, bj, K
39 CHARACTER*(MAX_LEN_MBUF) fn
40 LOGICAL gf
41 c_jmc gf = .TRUE.
42 gf = globalFile
43
44 #ifdef ALLOW_TIMEAVE
45
46 C Dump files and restart average computation if needed
47 IF ( myIter.NE.nIter0 .AND.
48 & DIFFERENT_MULTIPLE(taveFreq,myTime,
49 & myTime-deltaTClock)
50 & ) THEN
51
52 C Normalize by integrated time
53 DO bj = myByLo(myThid), myByHi(myThid)
54 DO bi = myBxLo(myThid), myBxHi(myThid)
55 CALL TIMEAVE_NORMALIZ(USTRtave,AIM_timeave,1,bi,bj,myThid)
56 CALL TIMEAVE_NORMALIZ(VSTRtave,AIM_timeave,1,bi,bj,myThid)
57 CALL TIMEAVE_NORMALIZ(TSRtave,AIM_timeave,1,bi,bj,myThid)
58 CALL TIMEAVE_NORMALIZ(OLRtave,AIM_timeave,1,bi,bj,myThid)
59 CALL TIMEAVE_NORMALIZ(SSRtave,AIM_timeave,1,bi,bj,myThid)
60 CALL TIMEAVE_NORMALIZ(SLRtave,AIM_timeave,1,bi,bj,myThid)
61 CALL TIMEAVE_NORMALIZ(SHFtave,AIM_timeave,1,bi,bj,myThid)
62 CALL TIMEAVE_NORMALIZ(EVAPtave,AIM_timeave,1,bi,bj,myThid)
63 CALL TIMEAVE_NORMALIZ(PRECNVtave,AIM_timeave,1,bi,bj,myThid)
64 CALL TIMEAVE_NORMALIZ(PRECLStave,AIM_timeave,1,bi,bj,myThid)
65 CALL TIMEAVE_NORMALIZ(CLOUDCtave,AIM_timeave,1,bi,bj,myThid)
66 ENDDO
67 ENDDO
68
69
70 _BARRIER
71 _BEGIN_MASTER( myThid )
72 WRITE(fn,'(A,I10.10)') 'aimphyvars.',myIter
73 CALL MDSWRITEFIELD(fn,precFloat32,gf,
74 & 'RL',1,USTRtave, 1,myIter,myThid)
75 CALL MDSWRITEFIELD(fn,precFloat32,gf,
76 & 'RL',1,VSTRtave, 2,myIter,myThid)
77 CALL MDSWRITEFIELD(fn,precFloat32,gf,
78 & 'RL',1,TSRtave , 3,myIter,myThid)
79 CALL MDSWRITEFIELD(fn,precFloat32,gf,
80 & 'RL',1,OLRtave , 4,myIter,myThid)
81 CALL MDSWRITEFIELD(fn,precFloat32,gf,
82 & 'RL',1,SSRtave , 5,myIter,myThid)
83 CALL MDSWRITEFIELD(fn,precFloat32,gf,
84 & 'RL',1,SLRtave , 6,myIter,myThid)
85 CALL MDSWRITEFIELD(fn,precFloat32,gf,
86 & 'RL',1,SHFtave , 7,myIter,myThid)
87 CALL MDSWRITEFIELD(fn,precFloat32,gf,
88 & 'RL',1,EVAPtave, 8,myIter,myThid)
89 CALL MDSWRITEFIELD(fn,precFloat32,gf,
90 & 'RL',1,PRECNVtave, 9,myIter,myThid)
91 CALL MDSWRITEFIELD(fn,precFloat32,gf,
92 & 'RL',1,PRECLStave,10,myIter,myThid)
93 CALL MDSWRITEFIELD(fn,precFloat32,gf,
94 & 'RL',1,CLOUDCtave,11,myIter,myThid)
95 _END_MASTER( myThid )
96 _BARRIER
97
98 C Reset averages to zero
99 DO bj = myByLo(myThid), myByHi(myThid)
100 DO bi = myBxLo(myThid), myBxHi(myThid)
101 CALL TIMEAVE_RESET(USTRtave, 1, bi, bj, myThid)
102 CALL TIMEAVE_RESET(VSTRtave, 1, bi, bj, myThid)
103 CALL TIMEAVE_RESET(TSRtave, 1, bi, bj, myThid)
104 CALL TIMEAVE_RESET(OLRtave, 1, bi, bj, myThid)
105 CALL TIMEAVE_RESET(SSRtave, 1, bi, bj, myThid)
106 CALL TIMEAVE_RESET(SLRtave, 1, bi, bj, myThid)
107 CALL TIMEAVE_RESET(SHFtave, 1, bi, bj, myThid)
108 CALL TIMEAVE_RESET(EVAPtave, 1, bi, bj, myThid)
109 CALL TIMEAVE_RESET(PRECNVtave,1, bi, bj, myThid)
110 CALL TIMEAVE_RESET(PRECLStave,1, bi, bj, myThid)
111 CALL TIMEAVE_RESET(CLOUDCtave,1, bi, bj, myThid)
112 DO k=1,Nr
113 AIM_TimeAve(k,bi,bj)=0.
114 ENDDO
115 ENDDO
116 ENDDO
117
118 ENDIF
119
120 #endif /* ALLOW_TIMEAVE */
121
122 #endif /* ALLOW_AIM */
123
124 RETURN
125 END

  ViewVC Help
Powered by ViewVC 1.1.22