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

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

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


Revision 1.5 - (hide 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 adcroft 1.5 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 adcroft 1.3 C $Name: $
3 adcroft 1.2
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 adcroft 1.5 C Common (shared with RD_WR_FLD routines in read_write_fld.F)
23     COMMON /RD_WR_FLD/ globalFile
24     LOGICAL globalFile
25    
26 adcroft 1.2 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 adcroft 1.5 c_jmc gf = .TRUE.
42     gf = globalFile
43 adcroft 1.2
44 jmc 1.4 #ifdef ALLOW_TIMEAVE
45 adcroft 1.2
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 jmc 1.4 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 adcroft 1.2 ENDDO
67     ENDDO
68    
69    
70     _BARRIER
71     _BEGIN_MASTER( myThid )
72     WRITE(fn,'(A,I10.10)') 'aimphyvars.',myIter
73 adcroft 1.3 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 adcroft 1.2 _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 jmc 1.4 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 adcroft 1.5 DO k=1,Nr
113     AIM_TimeAve(k,bi,bj)=0.
114     ENDDO
115 adcroft 1.2 ENDDO
116     ENDDO
117    
118     ENDIF
119    
120 jmc 1.4 #endif /* ALLOW_TIMEAVE */
121 adcroft 1.2
122     #endif /* ALLOW_AIM */
123    
124     RETURN
125     END

  ViewVC Help
Powered by ViewVC 1.1.22