source: trunk/LMDZ.VENUS/libf/phyvenus/ini_histmth.h @ 3556

Last change on this file since 3556 was 3451, checked in by emillour, 3 months ago

Venus PCM:
Add "Age of Air" scheme from Maureen Cohen.
Activated with flag "ok_aoa=y" and requires that there is also
an "aoa" tracer in traceur.def
MC

File size: 12.4 KB
RevLine 
[3]1!
2! $Header: /home/cvsroot/LMDZ4/libf/phylmd/ini_histmth.h,v 1.4 2005/03/09 12:30:16 fairhead Exp $
3!
4      IF (ok_mensuel) THEN
[892]5
[3]6         zsto = dtime
7         zout = dtime * ecrit_mth
[892]8
[3]9         idayref = day_ref
[97]10         CALL ymds2ju(annee_ref, 1, idayref, zero, zjulian)
[892]11
12         call histbeg_phy("histmth.nc",itau_phy,
[902]13     .                    zjulian,dtime,nhori,nid_mth)
[892]14
15!$OMP MASTER
16         CALL histvert(nid_mth, "presnivs", "Vertical levels", "Pa",
[97]17     .                 klev, presnivs, nvert)
[3]18
19c-------------------------------------------------------
20      IF(lev_histmth.GE.1) THEN
21c
22ccccccccccccc 2D fields, basics
23c
24         CALL histdef(nid_mth, "phis", "Surface geop. height", "-",
[1530]25     .                nbp_lon,jj_nb,nhori, 1,1,1, nvert, 32, 
[3]26     .                "once",  zsto,zout)
27c
28         CALL histdef(nid_mth, "aire", "Grid area", "-",
[1530]29     .                nbp_lon,jj_nb,nhori, 1,1,1, nvert, 32, 
[3]30     .                "once",  zsto,zout)
31c
32         CALL histdef(nid_mth, "tsol", "Surface Temperature", "K",
[1530]33     .                nbp_lon,jj_nb,nhori, 1,1,1, nvert, 32, 
[3]34     .                "ave(X)", zsto,zout)
35c
36         CALL histdef(nid_mth, "psol", "Surface Pressure", "Pa",
[1530]37     .                nbp_lon,jj_nb,nhori, 1,1,1, nvert, 32, 
[3]38     .                "ave(X)", zsto,zout)
39c
40c        CALL histdef(nid_mth, "ue", "Zonal energy transport", "-",
[1530]41c    .                nbp_lon,jj_nb,nhori, 1,1,1, nvert, 32, 
[3]42c    .                "ave(X)", zsto,zout)
43c
44c        CALL histdef(nid_mth, "ve", "Merid energy transport", "-",
[1530]45c    .                nbp_lon,jj_nb,nhori, 1,1,1, nvert, 32, 
[3]46c    .                "ave(X)", zsto,zout)
47c
[902]48c        CALL histdef(nid_mth, "cdragh", "Drag coef on T", "-",
[1530]49c    .                nbp_lon,jj_nb,nhori, 1,1,1, nvert, 32, 
[902]50c    .                "ave(X)", zsto,zout)
[3]51c
[902]52c        CALL histdef(nid_mth, "cdragm", "Drag coef on U", "-",
[1530]53c    .                nbp_lon,jj_nb,nhori, 1,1,1, nvert, 32, 
[902]54c    .                "ave(X)", zsto,zout)
[3]55c
56      ENDIF !lev_histmth.GE.1
57c
58c-------------------------------------------------------
59      IF(lev_histmth.GE.2) THEN
60c
61ccccccccccccc 3D fields, basics
62c
63         CALL histdef(nid_mth, "temp", "Air temperature", "K",
[1530]64     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]65     .                "ave(X)", zsto,zout)
66c
67         CALL histdef(nid_mth, "pres", "Air pressure", "Pa",
[1530]68     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]69     .                "ave(X)", zsto,zout)
70c
71         CALL histdef(nid_mth, "geop", "Geopotential height", "m",
[1530]72     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]73     .                "ave(X)", zsto,zout)
74c
75         CALL histdef(nid_mth, "vitu", "Zonal wind", "m/s",
[1530]76     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]77     .                "ave(X)", zsto,zout)
78c
79         CALL histdef(nid_mth, "vitv", "Meridional wind", "m/s",
[1530]80     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]81     .                "ave(X)", zsto,zout)
82c
83         CALL histdef(nid_mth, "vitw", "Vertical wind", "Pa/s",
[1530]84     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]85     .                "ave(X)", zsto,zout)
86c
87         CALL histdef(nid_mth, "dudyn", "Dynamics dU", "m/s2",
[1530]88     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]89     .                "ave(X)", zsto,zout)
90c
91         CALL histdef(nid_mth, "duvdf", "Boundary-layer dU", "m/s2",
[1530]92     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]93     .                "ave(X)", zsto,zout)
94c
95c        CALL histdef(nid_mth, "mang", "Angular momentum", "kg m2/s",
[1530]96c    .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]97c    .                "ave(X)", zsto,zout)
98c
[902]99c        CALL histdef(nid_mth, "Kz", "vertical diffusion coef", "m2/s",
[1530]100c    .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[902]101c    .                "ave(X)", zsto,zout)
[3]102c
[1452]103         CALL histdef(nid_mth, "mmean", "Mean molecular mass", "g/mol",
[1530]104     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[1452]105     .                "ave(X)", zsto,zout)
106
[1518]107c        CALL histdef(nid_mth, "rho", "Air density [mass/Vol]", "kg/m3",
[1530]108c    .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[1518]109c    .                "ave(X)", zsto,zout)
[1452]110
[3451]111       IF ((iflag_trac.eq.1) .and. ok_aoa) THEN
112         CALL histdef(nid_mth, "age", "Age of air", "s",
113     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
114     .                "ave(X)", zsto,zout)
115       ENDIF
[1452]116
117c plusieurs traceurs  !!!outputs in [vmr]
118       IF (iflag_trac.eq.1) THEN
[3]119            DO iq=1,nqmax
120             IF (iq.LE.99) THEN
121          WRITE(str2,'(i2.2)') iq
[1452]122          CALL histdef(nid_mth, tname(iq), ttext(iq), "mol/mol",
[1530]123     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]124     .                "ave(X)", zsto,zout)
125             ELSE
126          PRINT*, "Trop de traceurs"
127          CALL abort
128             ENDIF
129            ENDDO
[1452]130       ENDIF
131
132       IF (callthermos .and. ok_chem) THEN
133          CALL histdef(nid_mth, "d_qmoldifCO2", "Dif molec" , "kg/kg",
[1530]134     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[1452]135     .                "ave(X)", zsto,zout)
136          CALL histdef(nid_mth, "d_qmoldifO3p", "Dif molec" , "kg/kg",
[1530]137     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[1452]138     .                "ave(X)", zsto,zout)
139          CALL histdef(nid_mth, "d_qmoldifN2", "Dif molec" , "kg/kg",
[1530]140     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[1452]141     .                "ave(X)", zsto,zout)
142       ENDIF
[3]143c
144         CALL histdef(nid_mth, "tops", "Solar rad. at TOA", "W/m2",
[1530]145     .                nbp_lon,jj_nb,nhori, 1,1,1, nvert, 32, 
[902]146     .                "ave(X)", zsto,zout)
[3]147c
148      ENDIF !lev_histmth.GE.2
149c
150c-------------------------------------------------------
151      IF(lev_histmth.GE.3) THEN
152c
153cccccccccccccccccc  Radiative transfer
154c
155c 2D
156c
157         CALL histdef(nid_mth, "topl", "IR rad. at TOA", "W/m2",
[1530]158     .                nbp_lon,jj_nb,nhori, 1,1,1, nvert, 32, 
[902]159     .                "ave(X)", zsto,zout)
[3]160c
161         CALL histdef(nid_mth, "sols", "Solar rad. at surf.", "W/m2",
[1530]162     .                nbp_lon,jj_nb,nhori, 1,1,1, nvert, 32, 
[902]163     .                "ave(X)", zsto,zout)
[3]164c
165         CALL histdef(nid_mth, "soll", "IR rad. at surface", "W/m2",
[1530]166     .                nbp_lon,jj_nb,nhori, 1,1,1, nvert, 32, 
[902]167     .                "ave(X)", zsto,zout)
[3]168c
169c 3D
170c
171         CALL histdef(nid_mth, "SWnet", "Net SW flux","W/m2",
[1530]172     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert,
[902]173     .                32, "ave(X)", zsto,zout)
[3]174c
175         CALL histdef(nid_mth, "LWnet", "Net LW flux","W/m2",
[1530]176     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert,
[902]177     .                32, "ave(X)", zsto,zout)
[3]178c
[1301]179c        CALL histdef(nid_mth, "fluxvdf", "PBL net flux","W/m2",
[1530]180c    .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert,
[1301]181c    .                32, "ave(X)", zsto,zout)
[3]182c
[1301]183c        CALL histdef(nid_mth, "fluxdyn", "Dyn. net flux","W/m2",
[1530]184c    .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert,
[1301]185c    .                32, "ave(X)", zsto,zout)
[3]186c
[1301]187c        CALL histdef(nid_mth, "fluxajs", "Dry adj. net flux","W/m2",
[1530]188c    .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert,
[1301]189c    .                32, "ave(X)", zsto,zout)
[3]190c
191c        CALL histdef(nid_mth, "fluxec", "Cin. net flux","W/m2",
[1530]192c    .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert,
[3]193c    .                32, "ave(X)", zsto,zout)
194c
195      ENDIF !lev_histmth.GE.3
196c
197c-------------------------------------------------------
198      IF(lev_histmth.GE.4) THEN
199c
200         CALL histdef(nid_mth, "dtdyn", "Dynamics dT", "K/s",
[1530]201     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]202     .                "ave(X)", zsto,zout)
203c
204c        CALL histdef(nid_mth, "dtphy", "Physics dT", "K/s",
[1530]205c    .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]206c    .                "ave(X)", zsto,zout)
207c
208         CALL histdef(nid_mth, "dtvdf", "Boundary-layer dT", "K/s",
[1530]209     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]210     .                "ave(X)", zsto,zout)
211c
212         CALL histdef(nid_mth, "dtajs", "Dry adjust. dT", "K/s",
[1530]213     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]214     .                "ave(X)", zsto,zout)
215c
216         CALL histdef(nid_mth, "dtswr", "SW radiation dT", "K/s",
[1530]217     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]218     .                "ave(X)", zsto,zout)
219c
[1452]220         CALL histdef(nid_mth,"dtswrNLTE", "SWNLTE radiation dT", 
[1530]221     .                "K/s",nbp_lon,jj_nb,nhori,klev,1,klev,nvert,32,
[1452]222     .                "ave(X)", zsto,zout)
223c
224         CALL histdef(nid_mth,"dtswrDCrisp","SWDCrisp radiation dT",
[1530]225     .                "K/s",nbp_lon,jj_nb,nhori,klev,1,klev,nvert,32,
[1452]226     .                "ave(X)", zsto,zout)
227c
228         CALL histdef(nid_mth, "dtlwr", "LW radiation dT", "K/s",
[1530]229     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]230     .                "ave(X)", zsto,zout)
231c
[1667]232c        CALL histdef(nid_mth,"dtlwrNLTE", "LWNLTE radiation dT",
233c    .                "K/s",nbp_lon,jj_nb,nhori,klev,1,klev,nvert,32,
234c    .                "ave(X)", zsto,zout)
[1452]235c
[1667]236c        CALL histdef(nid_mth,"dtlwrLTE","LW_LTE radiation dT",
237c    .                "K/s",nbp_lon,jj_nb,nhori,klev,1,klev,nvert,32,
238c    .                "ave(X)", zsto,zout)
[1452]239c
[1667]240c        CALL histdef(nid_mth, "dteuv", "UV radiation dT", "K/s",
241c    .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
242c    .                "ave(X)", zsto,zout)
243c        CALL histdef(nid_mth, "dtcond", "Therm conduction", "K/s",
244c    .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
245c    .                "ave(X)", zsto,zout)
246c        CALL histdef(nid_mth, "dumolvis", "molec viscosity (u)"
247c    .                ,"m/s2",nbp_lon,jj_nb,nhori,klev,1,klev,nvert,32,
248c    .                "ave(X)", zsto,zout)
249c        CALL histdef(nid_mth, "dvmolvis", "molec viscosity (v)", 
250c    .                "m/s2",nbp_lon,jj_nb,nhori,klev,1,klev,nvert,32,
251c    .                "ave(X)", zsto,zout)
[1452]252
253c
[3]254c        CALL histdef(nid_mth, "dtec", "Cinetic dissip dT", "K/s",
[1530]255c    .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]256c    .                "ave(X)", zsto,zout)
257c
258         CALL histdef(nid_mth, "duajs", "Dry convection dU", "m/s2",
[1530]259     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]260     .                "ave(X)", zsto,zout)
261c
262         CALL histdef(nid_mth, "dugwo", "GW oro dU", "m/s2",
[1530]263     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]264     .                "ave(X)", zsto,zout)
265c
266         CALL histdef(nid_mth, "dugwno", "GW non-oro dU", "m/s2",
[1530]267     .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]268     .                "ave(X)", zsto,zout)
[1452]269
270c         CALL histdef(nid_mth, "co2_vmr", "volume mixture ratio co2", 
[1530]271c     .         "cm-3",nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[1452]272c     .                "ave(X)", zsto,zout)
273
274c         CALL histdef(nid_mth, "o_vmr", "volume mixture ratio o",
[1530]275c     .                "cm-3",nbp_lon,jj_nb,nhori,klev,1,klev,nvert,32,
[1452]276c     .                "ave(X)", zsto,zout)
277c         CALL histdef(nid_mth, "co_vmr", "volume mixture ratio co", 
[1530]278c     .         "cm-3",nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[1452]279c     .                "ave(X)", zsto,zout)
280
281c         CALL histdef(nid_mth, "n2_vmr", "volume mixture ratio n2",
[1530]282c     .                "cm-3",nbp_lon,jj_nb,nhori,klev,1,klev,nvert,32,
[1452]283c     .                "ave(X)", zsto,zout)
[3]284c
285c        CALL histdef(nid_mth, "dvvdf", "Boundary-layer dV", "m/s2",
[1530]286c    .                nbp_lon,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]287c    .                "ave(X)", zsto,zout)
288c
289      ENDIF !lev_histmth.GE.4
290c
291c-------------------------------------------------------
292      IF(lev_histmth.GE.5) THEN
293c
294c        call histdef(nid_mth, "taux", 
295c    $         "Zonal wind stress", "Pa", 
[1530]296c    $         nbp_lon,jj_nb,nhori, 1,1,1, nvert, 32,
[3]297c    $         "ave(X)", zsto,zout)
298c
299c        call histdef(nid_mth, "tauy", 
300c    $         "Meridional xind stress", "Pa", 
[1530]301c    $         nbp_lon,jj_nb,nhori, 1,1,1, nvert, 32,
[3]302c    $         "ave(X)", zsto,zout)
303c
304c        CALL histdef(nid_mth, "cdrm", "Momentum drag coef.", "-",
[1530]305c    .                nbp_lon,jj_nb,nhori, 1,1,1, nvert, 32, 
[3]306c    .                "ave(X)", zsto,zout)
307c
308c        CALL histdef(nid_mth, "cdrh", "Heat drag coef.", "-",
[1530]309c    .                nbp_lon,jj_nb,nhori, 1,1,1, nvert, 32, 
[3]310c    .                "ave(X)", zsto,zout)
311c
312      ENDIF !lev_histmth.GE.5
313c-------------------------------------------------------
[892]314
[3]315         CALL histend(nid_mth)
[892]316!$OMP END MASTER
317
[3]318      ENDIF ! fin de test sur ok_mensuel
[1452]319
Note: See TracBrowser for help on using the repository browser.