source: trunk/libf/phytitan/ini_histmth.h @ 105

Last change on this file since 105 was 97, checked in by slebonnois, 14 years ago

Serie de modifs SL pour homogeneisation des phytitan et phyvenus
Ca touche aussi aux liens phy/dyn (surtout a propos de clesphy0),
a verifier avec les autres, donc...

File size: 8.5 KB
Line 
1      IF (ok_mensuel) THEN
2c
3         zsto = dtime
4         zout = dtime * FLOAT(ecrit_mth)
5c zsto1: pour des flux radiatifs calcules tous les radpas appels physiq
6         zsto1= dtime * FLOAT(radpas)
7c
8         idayref = day_ref
9         CALL ymds2ju(annee_ref, 1, idayref, zero, zjulian)
10c
11         CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlond,zx_lon)
12         DO i = 1, iim
13            zx_lon(i,1) = rlond(i+1)
14            zx_lon(i,jjmp1) = rlond(i+1)
15         ENDDO
16         CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlatd,zx_lat)
17         CALL histbeg("histmth", iim,zx_lon(:,1), jjmp1,zx_lat(1,:),
18     .                 1,iim,1,jjmp1, itau_phy, zjulian, zsto, 
19     .                 nhori, nid_mth)
20         write(*,*)'Journee ', itau_phy, zjulian
21         CALL histvert(nid_mth, "presnivs", "Vertical levels", "mb",
22     .                 klev, presnivs, nvert)
23
24c-------------------------------------------------------
25      IF(lev_histmth.GE.1) THEN
26c
27ccccccccccccc 2D fields, invariables
28c
29         CALL histdef(nid_mth, "phis", "Surface geop. height", "-",
30     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
31     .                "once",  zsto,zout)
32c
33         CALL histdef(nid_mth, "aire", "Grid area", "-",
34     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
35     .                "once",  zsto,zout)
36c
37ccccccc axe Ls
38         CALL histdef(nid_mth, "ls", "Solar longitude", "degrees",
39     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
40     .                "ave(X)", zsto,zout)
41c
42ccccccccccccc 2D fields, variables
43c
44         CALL histdef(nid_mth, "tsol", "Surface Temperature", "K",
45     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
46     .                "ave(X)", zsto,zout)
47c
48         CALL histdef(nid_mth, "psol", "Surface Pressure", "Pa",
49     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
50     .                "ave(X)", zsto,zout)
51c
52         CALL histdef(nid_mth, "ue", "Zonal energy transport", "-",
53     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
54     .                "ave(X)", zsto,zout)
55c
56         CALL histdef(nid_mth, "ve", "Merid energy transport", "-",
57     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
58     .                "ave(X)", zsto,zout)
59c
60      ENDIF !lev_histmth.GE.1
61c
62c-------------------------------------------------------
63      IF(lev_histmth.GE.2) THEN
64c
65ccccccccccccc 3D fields, basics
66c
67         CALL histdef(nid_mth, "temp", "Air temperature", "K",
68     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
69     .                "ave(X)", zsto,zout)
70c
71         CALL histdef(nid_mth, "pres", "Air pressure", "Pa",
72     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
73     .                "ave(X)", zsto,zout)
74c
75         CALL histdef(nid_mth, "geop", "Geopotential height", "m",
76     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
77     .                "ave(X)", zsto,zout)
78c
79         CALL histdef(nid_mth, "vitu", "Zonal wind", "m/s",
80     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
81     .                "ave(X)", zsto,zout)
82c
83         CALL histdef(nid_mth, "vitv", "Meridional wind", "m/s",
84     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
85     .                "ave(X)", zsto,zout)
86c
87         CALL histdef(nid_mth, "vitw", "Vertical wind", "Pa/s",
88     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
89     .                "ave(X)", zsto,zout)
90c
91         CALL histdef(nid_mth, "tops", "Solar rad. at TOA", "W/m2",
92     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
93     .                "ave(X)", zsto1,zout)
94c
95         if (iflag_trac.eq.1) THEN
96c         if (microfi.eq.1) then
97c          DO iq=1,nmicro
98c        CALL histdef(nid_mth, tname(iq), ttext(iq), "n/m2",
99c    .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
100c    .                "ave(X)", zsto,zout)
101c          ENDDO
102c         endif
103          if (nmicro.lt.nqmax) then
104           DO iq=nmicro+1,nqmax
105         CALL histdef(nid_mth, tname(iq), ttext(iq), "ppm",
106     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
107     .                "ave(X)", zsto,zout)
108           ENDDO
109c Condensation:
110c          DO iq=nmicro+1,nqmax
111c        CALL histdef(nid_mth, "c_"//tname(iq), "c_"//ttext(iq),
112c    .        "ppm/s",iim,jjmp1,nhori, klev,1,klev,nvert, 32,
113c    .                "ave(X)", zsto,zout)
114c          ENDDO
115          endif
116         endif
117c
118      ENDIF !lev_histmth.GE.2
119c
120c-------------------------------------------------------
121      IF(lev_histmth.GE.3) THEN
122c
123cccccccccccccccccc  Radiative transfer
124c
125c 2D
126c
127         CALL histdef(nid_mth, "topl", "IR rad. at TOA", "W/m2",
128     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
129     .                "ave(X)", zsto1,zout)
130c
131         CALL histdef(nid_mth, "sols", "Solar rad. at surf.", "W/m2",
132     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
133     .                "ave(X)", zsto1,zout)
134c
135         CALL histdef(nid_mth, "soll", "IR rad. at surface", "W/m2",
136     .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
137     .                "ave(X)", zsto1,zout)
138c
139c 3D
140c
141         CALL histdef(nid_mth, "SWnet", "Net SW flux","W/m2",
142     .                iim,jjmp1,nhori, klev,1,klev,nvert,
143     .                32, "ave(X)", zsto1,zout)
144c
145         CALL histdef(nid_mth, "LWnet", "Net LW flux","W/m2",
146     .                iim,jjmp1,nhori, klev,1,klev,nvert,
147     .                32, "ave(X)", zsto1,zout)
148c
149         DO k=3,nspecv,5
150           write(str1,'(i2.2)') k
151         CALL histdef(nid_mth,"thv"//str1,"Haze Opa Vis",
152     .                "--",iim,jjmp1,nhori,klev,1,klev,nvert,32,
153     .                "ave(X)",zsto1,zout)
154         ENDDO
155c
156         DO k=3,nspecv,5
157           write(str1,'(i2.2)') k
158         CALL histdef(nid_mth,"khv"//str1,"Haze ext Vis ",
159     .                "m-1",iim,jjmp1,nhori,klev,1,klev,nvert,32,
160     .                "ave(X)",zsto1,zout)
161         ENDDO
162c
163      ENDIF !lev_histmth.GE.3
164c
165c-------------------------------------------------------
166      IF(lev_histmth.GE.4) THEN
167c
168         CALL histdef(nid_mth, "dtdyn", "Dynamics dT", "K/s",
169     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
170     .                "ave(X)", zsto,zout)
171c
172         CALL histdef(nid_mth, "dtphy", "Physics dT", "K/s",
173     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
174     .                "ave(X)", zsto,zout)
175c
176         CALL histdef(nid_mth, "dtvdf", "Boundary-layer dT", "K/s",
177     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
178     .                "ave(X)", zsto,zout)
179c
180         CALL histdef(nid_mth, "dtajs", "Dry adjust. dT", "K/s",
181     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
182     .                "ave(X)", zsto,zout)
183c
184         CALL histdef(nid_mth, "dtswr", "SW radiation dT", "K/s",
185     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
186     .                "ave(X)", zsto,zout)
187c
188         CALL histdef(nid_mth, "dtlwr", "LW radiation dT", "K/s",
189     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
190     .                "ave(X)", zsto,zout)
191c
192c        CALL histdef(nid_mth, "dtec", "Cinetic dissip dT", "K/s",
193c    .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
194c    .                "ave(X)", zsto,zout)
195c
196         CALL histdef(nid_mth, "duvdf", "Boundary-layer dU", "m/s2",
197     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
198     .                "ave(X)", zsto,zout)
199c
200         CALL histdef(nid_mth, "dudyn", "Dynamics dU", "m/s2",
201     .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
202     .                "ave(X)", zsto,zout)
203c
204c        CALL histdef(nid_mth, "dvvdf", "Boundary-layer dV", "m/s2",
205c    .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
206c    .                "ave(X)", zsto,zout)
207c
208      ENDIF !lev_histmth.GE.4
209c
210c-------------------------------------------------------
211      IF(lev_histmth.GE.5) THEN
212c
213c
214c        call histdef(nid_mth, "taux", 
215c    $         "Zonal wind stress", "Pa", 
216c    $         iim,jjmp1,nhori, 1,1,1, -99, 32,
217c    $         "ave(X)", zsto,zout)
218c
219c        call histdef(nid_mth, "tauy", 
220c    $         "Meridional xind stress", "Pa", 
221c    $         iim,jjmp1,nhori, 1,1,1, -99, 32,
222c    $         "ave(X)", zsto,zout)
223c
224c        CALL histdef(nid_mth, "cdrm", "Momentum drag coef.", "-",
225c    .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
226c    .                "ave(X)", zsto,zout)
227c
228c        CALL histdef(nid_mth, "cdrh", "Heat drag coef.", "-",
229c    .                iim,jjmp1,nhori, 1,1,1, -99, 32, 
230c    .                "ave(X)", zsto,zout)
231c
232      ENDIF !lev_histmth.GE.5
233c-------------------------------------------------------
234c
235         CALL histend(nid_mth)
236c
237         ndex2d = 0
238         ndex3d = 0
239c
240      ENDIF ! fin de test sur ok_journe
Note: See TracBrowser for help on using the repository browser.