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

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

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


Revision 1.9 - (hide annotations) (download)
Tue May 9 19:09:29 2006 UTC (18 years ago) by jmc
Branch: MAIN
CVS Tags: HEAD
Changes since 1.8: +1 -1 lines
FILE REMOVED
rename bulkf_diags.F -> bulkf_output.F

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

  ViewVC Help
Powered by ViewVC 1.1.22