/[MITgcm]/MITgcm/pkg/atm2d/month_end_diags.F
ViewVC logotype

Contents of /MITgcm/pkg/atm2d/month_end_diags.F

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


Revision 1.2 - (show annotations) (download)
Mon Oct 8 23:48:28 2007 UTC (16 years, 7 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint64y, checkpoint64x, checkpoint64z, checkpoint64q, checkpoint64p, checkpoint64s, checkpoint64r, checkpoint64u, checkpoint64t, checkpoint64w, checkpoint64v, checkpoint64i, checkpoint64h, checkpoint64k, checkpoint64j, checkpoint64m, checkpoint64l, checkpoint64o, checkpoint64n, checkpoint64a, checkpoint64c, checkpoint64b, checkpoint64e, checkpoint64d, checkpoint64g, checkpoint64f, checkpoint63p, checkpoint63q, checkpoint63r, checkpoint63s, checkpoint63l, checkpoint63m, checkpoint63n, checkpoint63o, checkpoint63h, checkpoint63i, checkpoint63j, checkpoint63k, checkpoint63d, checkpoint63e, checkpoint63f, checkpoint63g, checkpoint63a, checkpoint63b, checkpoint63c, checkpoint64, checkpoint65, checkpoint60, checkpoint61, checkpoint62, checkpoint63, checkpoint66g, checkpoint66f, checkpoint66e, checkpoint66d, checkpoint66c, checkpoint66b, checkpoint66a, checkpoint66o, checkpoint66n, checkpoint66m, checkpoint66l, checkpoint66k, checkpoint66j, checkpoint66i, checkpoint66h, checkpoint65z, checkpoint65x, checkpoint65y, checkpoint65r, checkpoint65s, checkpoint65p, checkpoint65q, checkpoint65v, checkpoint65w, checkpoint65t, checkpoint65u, checkpoint65j, checkpoint65k, checkpoint65h, checkpoint65i, checkpoint65n, checkpoint65o, checkpoint65l, checkpoint65m, checkpoint65b, checkpoint65c, checkpoint65a, checkpoint65f, checkpoint65g, checkpoint65d, checkpoint65e, checkpoint59q, checkpoint59p, checkpoint59r, checkpoint59m, checkpoint59l, checkpoint59o, checkpoint59n, checkpoint59i, checkpoint59k, checkpoint59j, checkpoint62c, checkpoint62b, checkpoint62a, checkpoint62g, checkpoint62f, checkpoint62e, checkpoint62d, checkpoint62k, checkpoint62j, checkpoint62i, checkpoint62h, checkpoint62o, checkpoint62n, checkpoint62m, checkpoint62l, checkpoint62s, checkpoint62r, checkpoint62q, checkpoint62p, checkpoint62w, checkpoint62v, checkpoint62u, checkpoint62t, checkpoint62z, checkpoint62y, checkpoint62x, checkpoint61f, checkpoint61g, checkpoint61d, checkpoint61e, checkpoint61b, checkpoint61c, checkpoint61a, checkpoint61n, checkpoint61o, checkpoint61l, checkpoint61m, checkpoint61j, checkpoint61k, checkpoint61h, checkpoint61i, checkpoint61v, checkpoint61w, checkpoint61t, checkpoint61u, checkpoint61r, checkpoint61s, checkpoint61p, checkpoint61q, checkpoint61z, checkpoint61x, checkpoint61y, HEAD
Changes since 1.1: +15 -12 lines
add missing cvs $Header:$ or $Name:$

1 C $Header: $
2 C $Name: $
3
4 #include "ctrparam.h"
5 #include "ATM2D_OPTIONS.h"
6
7 C !INTERFACE:
8 SUBROUTINE MONTH_END_DIAGS( monid, myTime, myIter, myThid )
9 C *==========================================================*
10 C | Prints out rolling month-end quantities, and sums these |
11 c | into the tave monthly diagnostic variables. |
12 C *==========================================================*
13 IMPLICIT NONE
14
15 C === Global Atmosphere Variables ===
16 #include "ATMSIZE.h"
17 #include "SIZE.h"
18 #include "EEPARAMS.h"
19 #include "ATM2D_VARS.h"
20
21 C !INPUT/OUTPUT PARAMETERS:
22 C === Routine arguments ===
23 C monid - current month of the year
24 C myTime - current simulation time (ocean model time)
25 C myIter - iteration number (ocean model)
26 C myThid - Thread no. that called this routine.
27 INTEGER monid
28 _RL myTime
29 INTEGER myIter
30 INTEGER myThid
31
32 C LOCAL VARIABLES:
33 CHARACTER*(MAX_LEN_MBUF) suff
34 INTEGER ndmonth(12)
35 DATA ndmonth/31,28,31,30,31,30,31,31,30,31,30,31/
36 INTEGER i,j
37 _RS norm_factor
38
39 norm_factor = ndmonth(monid)*86400.0
40
41 DO j=1,sNy
42 DO i=1,sNx
43
44 qnet_atm_ta(i,j,monid)= qnet_atm_ta(i,j,monid) +
45 & qnet_atm(i,j)
46 evap_atm_ta(i,j,monid)= evap_atm_ta(i,j,monid) +
47 & evap_atm(i,j)
48 precip_atm_ta(i,j,monid)= precip_atm_ta(i,j,monid) +
49 & precip_atm(i,j)
50 runoff_atm_ta(i,j,monid)= runoff_atm_ta(i,j,monid) +
51 & runoff_atm(i,j)
52 sum_qrel_ta(i,j,monid)= sum_qrel_ta(i,j,monid) +
53 & sum_qrel(i,j)
54 sum_frel_ta(i,j,monid)= sum_frel_ta(i,j,monid) +
55 & sum_frel(i,j)
56 sum_iceMask_ta(i,j,monid)= sum_iceMask_ta(i,j,monid) +
57 & sum_iceMask(i,j)
58 sum_iceHeight_ta(i,j,monid)= sum_iceHeight_ta(i,j,monid) +
59 & sum_iceHeight(i,j)
60 sum_iceTime_ta(i,j,monid)= sum_iceTime_ta(i,j,monid) +
61 & sum_iceTime(i,j)
62 sum_oceMxLT_ta(i,j,monid)= sum_oceMxLT_ta(i,j,monid) +
63 & sum_oceMxLT(i,j)
64 sum_oceMxLS_ta(i,j,monid)= sum_oceMxLS_ta(i,j,monid) +
65 & sum_oceMxLS(i,j)
66
67 qnet_atm(i,j)=qnet_atm(i,j)/ norm_factor
68 evap_atm(i,j)=evap_atm(i,j)/ norm_factor
69 precip_atm(i,j)= precip_atm(i,j)/ norm_factor
70 runoff_atm(i,j)= runoff_atm(i,j)/ norm_factor
71 sum_qrel(i,j)= sum_qrel(i,j)/ norm_factor
72 sum_frel(i,j)= sum_frel(i,j)/ norm_factor
73 sum_iceMask(i,j)= sum_iceMask(i,j)/ norm_factor
74 sum_iceHeight(i,j)= sum_iceHeight(i,j)/ norm_factor
75 sum_iceTime(i,j)= sum_iceTime(i,j)/ norm_factor
76 sum_oceMxLT(i,j)= sum_oceMxLT(i,j)/ norm_factor
77 sum_oceMxLS(i,j)= sum_oceMxLS(i,j)/ norm_factor
78
79 ENDDO
80 ENDDO
81
82 WRITE(suff,'(I2.2)') monid
83 CALL WRITE_FLD_XY_RL('mQnetAtmtave.', suff, qnet_atm,
84 & myIter, myThid)
85 CALL WRITE_FLD_XY_RL('mEvapAtmtave.', suff, evap_atm,
86 & myIter, myThid)
87 CALL WRITE_FLD_XY_RL('mPrecipAtmtave.', suff, precip_atm,
88 & myIter, myThid)
89 CALL WRITE_FLD_XY_RL('mRunoffAtmtave.', suff, runoff_atm,
90 & myIter, myThid)
91 CALL WRITE_FLD_XY_RL('mQrelfluxtave.', suff, sum_qrel,
92 & myIter, myThid)
93 CALL WRITE_FLD_XY_RL('mFrelfluxtave.', suff, sum_frel,
94 & myIter, myThid)
95 CALL WRITE_FLD_XY_RL('mIceMasktave.', suff, sum_iceMask,
96 & myIter, myThid)
97 CALL WRITE_FLD_XY_RL('mIceHeighttave.', suff, sum_iceHeight,
98 & myIter, myThid)
99 CALL WRITE_FLD_XY_RL('mIceTimetave.', suff, sum_iceTime,
100 & myIter, myThid)
101 CALL WRITE_FLD_XY_RL('mOceMxLTtave.', suff, sum_oceMxLT,
102 & myIter, myThid)
103 CALL WRITE_FLD_XY_RL('mOceMxLStave.', suff, sum_oceMxLS,
104 & myIter, myThid)
105
106 DO j=1,sNy
107 DO i=1,sNx
108
109 qnet_atm(i,j)= 0. _d 0
110 evap_atm(i,j)= 0. _d 0
111 precip_atm(i,j)= 0. _d 0
112 runoff_atm(i,j)= 0. _d 0
113 sum_qrel(i,j)= 0. _d 0
114 sum_frel(i,j)= 0. _d 0
115 sum_iceMask(i,j)= 0. _d 0
116 sum_iceHeight(i,j)= 0. _d 0
117 sum_iceTime(i,j)= 0. _d 0
118 sum_oceMxLT(i,j)= 0. _d 0
119 sum_oceMxLS(i,j)= 0. _d 0
120
121 ENDDO
122 ENDDO
123
124 RETURN
125 END
126

  ViewVC Help
Powered by ViewVC 1.1.22