/[MITgcm]/MITgcm/pkg/bulk_force/bulkf_diags.F
ViewVC logotype

Contents of /MITgcm/pkg/bulk_force/bulkf_diags.F

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


Revision 1.4 - (show annotations) (download)
Wed Dec 11 14:23:35 2002 UTC (21 years, 4 months ago) by cheisey
Branch: MAIN
CVS Tags: checkpoint48f_post, checkpoint47j_post, checkpoint48d_pre, checkpoint51j_post, branch-exfmods-tag, checkpoint47e_post, checkpoint47i_post, checkpoint48i_post, checkpoint47f_post, checkpoint48d_post, checkpoint47c_post, checkpoint50e_post, checkpoint50c_post, checkpoint47d_post, checkpoint51f_pre, checkpoint48e_post, checkpoint48h_post, checkpoint50c_pre, branchpoint-genmake2, checkpoint50d_pre, checkpoint47h_post, checkpoint48c_post, checkpoint50b_pre, checkpoint51e_post, checkpoint51b_post, checkpoint51c_post, checkpoint48, checkpoint49, checkpoint48g_post, checkpoint51, checkpoint50, checkpoint50d_post, checkpoint51b_pre, checkpoint47g_post, checkpoint51h_pre, checkpoint50g_post, checkpoint51g_post, checkpoint51f_post, checkpoint48b_post, checkpoint50b_post, checkpoint48a_post, checkpoint50f_post, checkpoint50a_post, checkpoint50f_pre, checkpoint47d_pre, checkpoint51d_post, checkpoint48c_pre, checkpoint50h_post, checkpoint51a_post, checkpoint50e_pre, checkpoint50i_post, checkpoint51i_pre
Branch point for: branch-genmake2, branch-exfmods-curt
Changes since 1.3: +3 -1 lines
Tidying up some recent bulk_forcing changes.

1 C $Header: /u/u0/gcmpack/MITgcm/pkg/bulk_force/bulkf_diags.F,v 1.3 2002/12/05 16:15:58 cheisey Exp $
2 C $Name: $
3 cswdblk modified for bulk formula -- Dec 01
4
5 #include "CPP_OPTIONS.h"
6
7 CStartOfInterface
8 SUBROUTINE BULKF_DIAGS( myTime, myIter, myThid )
9 C /==========================================================\
10 C | SUBROUTINE BULKF_DIAGS |
11 C | o Do BULKF diagnostic output |
12 C |==========================================================|
13 C \==========================================================/
14 IMPLICIT NONE
15
16 C === Global variables ===
17 #include "SIZE.h"
18 #include "EEPARAMS.h"
19 #include "PARAMS.h"
20 cswdblk --- add --
21 #ifdef ALLOW_BULK_FORCE
22 #include "BULKF.h"
23 #include "BULKF_DIAG.h"
24 #endif
25 cswdblk -- end add ---
26 C == Routine arguments ==
27 C myTime - Current time of simulation ( s )
28 C myIter - Iteration number
29 C myThid - Number of this instance
30 _RL myTime
31 INTEGER myIter
32 INTEGER myThid
33
34 CEndOfInterface
35
36
37 C == Local variables ==
38 LOGICAL DIFFERENT_MULTIPLE
39 EXTERNAL DIFFERENT_MULTIPLE
40 INTEGER bi, bj
41 CHARACTER*(MAX_LEN_MBUF) suff
42
43 INTEGER I,J
44
45 #ifdef ALLOW_BULK_FORCE
46
47
48 #ifdef ALLOW_TIMEAVE
49
50
51 C Dump files and restart average computation if needed
52 IF ( DIFFERENT_MULTIPLE(taveFreq,myTime,myTime-deltaTClock)
53 & ) THEN
54
55
56
57 C Normalize by integrated time
58 DO bj = myByLo(myThid), myByHi(myThid)
59 DO bi = myBxLo(myThid), myBxHi(myThid)
60 CALL TIMEAVE_NORMALIZ(BULK_Qnet_AVE,BULKF_timeave, 1 ,
61 & bi,bj,myThid)
62 CALL TIMEAVE_NORMALIZ(BULK_EmPmR_AVE,BULKF_timeave, 1 ,
63 & bi,bj,myThid)
64 CALL TIMEAVE_NORMALIZ(BULK_fu_AVE,BULKF_timeave, 1 ,
65 & bi,bj,myThid)
66 CALL TIMEAVE_NORMALIZ(BULK_fv_AVE,BULKF_timeave, 1 ,
67 & bi,bj,myThid)
68 CALL TIMEAVE_NORMALIZ(BULK_latent_AVE,BULKF_timeave, 1 ,
69 & bi,bj,myThid)
70 CALL TIMEAVE_NORMALIZ(BULK_sensible_AVE,BULKF_timeave, 1 ,
71 & bi,bj,myThid)
72 CALL TIMEAVE_NORMALIZ(BULK_evap_AVE,BULKF_timeave, 1 ,
73 & bi,bj,myThid)
74 CALL TIMEAVE_NORMALIZ(BULK_flwup_AVE,BULKF_timeave, 1 ,
75 & bi,bj,myThid)
76 CALL TIMEAVE_NORMALIZ(BULK_flwupnet_AVE,BULKF_timeave, 1 ,
77 & bi,bj,myThid)
78 CALL TIMEAVE_NORMALIZ(BULK_solar_AVE,BULKF_timeave, 1 ,
79 & bi,bj,myThid)
80 CALL TIMEAVE_NORMALIZ(BULK_ssq_AVE,BULKF_timeave, 1 ,
81 & bi,bj,myThid)
82
83 ENDDO
84 ENDDO
85
86
87 _BEGIN_MASTER(myThid)
88 WRITE(suff,'(I10.10)') myIter
89
90 CALL WRITE_FLD_XY_RL('BULK_Qnet.',suff,BULK_Qnet_AVE,
91 & myIter,myThid)
92 CALL WRITE_FLD_XY_RL('BULK_EmPmR.',suff,
93 & BULK_EmPmR_AVE,myIter,myThid)
94 CALL WRITE_FLD_XY_RL('BULK_fu.',suff,
95 & BULK_fu_AVE,myIter,myThid)
96 CALL WRITE_FLD_XY_RL('BULK_fv.',suff,
97 & BULK_fv_AVE,myIter,myThid)
98 CALL WRITE_FLD_XY_RL('BULK_latent.',suff,
99 & BULK_latent_AVE,myIter,myThid)
100 CALL WRITE_FLD_XY_RL('BULK_sensible.',suff,
101 & BULK_sensible_AVE,myIter,myThid)
102 CALL WRITE_FLD_XY_RL('BULK_evap.',suff,
103 & BULK_evap_AVE,myIter,myThid)
104 CALL WRITE_FLD_XY_RL('BULK_flwup.',suff,
105 & BULK_flwup_AVE,myIter,myThid)
106 CALL WRITE_FLD_XY_RL('BULK_flwupnet.',suff,
107 & BULK_flwupnet_AVE,myIter,myThid)
108 CALL WRITE_FLD_XY_RL('BULK_solar.',suff,
109 & BULK_solar_AVE,myIter,myThid)
110 CALL WRITE_FLD_XY_RL('BULK_ssq.',suff,
111 & BULK_ssq_AVE,myIter,myThid)
112 _END_MASTER(myThid)
113
114
115 C Reset averages to zero
116 DO bj = myByLo(myThid), myByHi(myThid)
117 DO bi = myBxLo(myThid), myBxHi(myThid)
118 CALL TIMEAVE_RESET(BULK_Qnet_AVE,1,bi,bj,myThid)
119 CALL TIMEAVE_RESET(BULK_EmPmR_AVE,1,bi,bj,myThid)
120 CALL TIMEAVE_RESET(BULK_fu_AVE,1,bi,bj,myThid)
121 CALL TIMEAVE_RESET(BULK_fv_AVE,1,bi,bj,myThid)
122 CALL TIMEAVE_RESET(BULK_latent_AVE,1,bi,bj,myThid)
123 CALL TIMEAVE_RESET(BULK_sensible_AVE,1,bi,bj,myThid)
124 CALL TIMEAVE_RESET(BULK_evap_AVE,1,bi,bj,myThid)
125 CALL TIMEAVE_RESET(BULK_flwup_AVE,1,bi,bj,myThid)
126 CALL TIMEAVE_RESET(BULK_flwupnet_AVE,1,bi,bj,myThid)
127 CALL TIMEAVE_RESET(BULK_solar_AVE,1,bi,bj,myThid)
128 CALL TIMEAVE_RESET(BULK_ssq_AVE,1,bi,bj,myThid)
129 BULKF_TimeAve(1,bi,bj)=0.
130 ENDDO
131 ENDDO
132
133
134
135 ENDIF
136
137 #endif /* ALLOW_TIMEAVE */
138
139 #endif /* ALLOW_BULKF */
140
141 RETURN
142 END

  ViewVC Help
Powered by ViewVC 1.1.22