source: trunk/LMDZ.TITAN/libf/phytitan/ini_histmth.h @ 1056

Last change on this file since 1056 was 1056, checked in by slebonnois, 11 years ago

SL: Titan runs ! see DOC/chantiers/commit_importants.log

File size: 14.7 KB
RevLine 
[3]1      IF (ok_mensuel) THEN
[1056]2
[3]3         zsto = dtime
[1056]4         zout = dtime * REAL(ecrit_mth)
[3]5c zsto1: pour des flux radiatifs calcules tous les radpas appels physiq
[1056]6         zsto1= dtime * REAL(radpas)
7
[3]8         idayref = day_ref
[97]9         CALL ymds2ju(annee_ref, 1, idayref, zero, zjulian)
[1056]10
11         CALL histbeg_phy("histmth.nc", itau_phy, zjulian, dtime,
[3]12     .                 nhori, nid_mth)
[1056]13
14!$OMP MASTER
15         CALL histvert(nid_mth, "presnivs", "Vertical levels", "Pa",
[97]16     .                 klev, presnivs, nvert)
[3]17
18c-------------------------------------------------------
19      IF(lev_histmth.GE.1) THEN
[1056]20
[3]21ccccccccccccc 2D fields, invariables
[1056]22
[3]23         CALL histdef(nid_mth, "phis", "Surface geop. height", "-",
[1056]24     .                iim,jj_nb,nhori, 1,1,1, nvert, 32, 
[3]25     .                "once",  zsto,zout)
[1056]26
[3]27         CALL histdef(nid_mth, "aire", "Grid area", "-",
[1056]28     .                iim,jj_nb,nhori, 1,1,1, nvert, 32, 
[3]29     .                "once",  zsto,zout)
[1056]30
[3]31ccccccc axe Ls
32         CALL histdef(nid_mth, "ls", "Solar longitude", "degrees",
[1056]33     .                iim,jj_nb,nhori, 1,1,1, nvert, 32, 
[3]34     .                "ave(X)", zsto,zout)
[1056]35
[3]36ccccccccccccc 2D fields, variables
[1056]37
[3]38         CALL histdef(nid_mth, "tsol", "Surface Temperature", "K",
[1056]39     .                iim,jj_nb,nhori, 1,1,1, nvert, 32, 
[3]40     .                "ave(X)", zsto,zout)
[1056]41
[3]42         CALL histdef(nid_mth, "psol", "Surface Pressure", "Pa",
[1056]43     .                iim,jj_nb,nhori, 1,1,1, nvert, 32, 
[3]44     .                "ave(X)", zsto,zout)
[1056]45
[106]46c        CALL histdef(nid_mth, "ue", "Zonal energy transport", "-",
[1056]47c    .                iim,jj_nb,nhori, 1,1,1, nvert, 32, 
[106]48c    .                "ave(X)", zsto,zout)
[1056]49
[106]50c        CALL histdef(nid_mth, "ve", "Merid energy transport", "-",
[1056]51c    .                iim,jj_nb,nhori, 1,1,1, nvert, 32, 
[106]52c    .                "ave(X)", zsto,zout)
[1056]53
[3]54      ENDIF !lev_histmth.GE.1
[1056]55
[3]56c-------------------------------------------------------
57      IF(lev_histmth.GE.2) THEN
[1056]58
[3]59ccccccccccccc 3D fields, basics
[1056]60
[3]61         CALL histdef(nid_mth, "temp", "Air temperature", "K",
[1056]62     .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]63     .                "ave(X)", zsto,zout)
[1056]64
[3]65         CALL histdef(nid_mth, "pres", "Air pressure", "Pa",
[1056]66     .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]67     .                "ave(X)", zsto,zout)
[1056]68
[3]69         CALL histdef(nid_mth, "geop", "Geopotential height", "m",
[1056]70     .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]71     .                "ave(X)", zsto,zout)
[1056]72
[3]73         CALL histdef(nid_mth, "vitu", "Zonal wind", "m/s",
[1056]74     .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]75     .                "ave(X)", zsto,zout)
[1056]76
[3]77         CALL histdef(nid_mth, "vitv", "Meridional wind", "m/s",
[1056]78     .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]79     .                "ave(X)", zsto,zout)
[1056]80
[3]81         CALL histdef(nid_mth, "vitw", "Vertical wind", "Pa/s",
[1056]82     .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]83     .                "ave(X)", zsto,zout)
[1056]84
[106]85c        CALL histdef(nid_mth, "Kz", "vertical diffusion coef", "m2/s",
[1056]86c    .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[106]87c    .                "ave(X)", zsto,zout)
[1056]88
[3]89         CALL histdef(nid_mth, "tops", "Solar rad. at TOA", "W/m2",
[1056]90     .                iim,jj_nb,nhori, 1,1,1, nvert, 32, 
[3]91     .                "ave(X)", zsto1,zout)
[1056]92
93         CALL histdef(nid_mth, "duvdf", "Boundary-layer dU", "m/s2",
94     .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
95     .                "ave(X)", zsto,zout)
96
97         CALL histdef(nid_mth, "dudyn", "Dynamics dU", "m/s2",
98     .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
99     .                "ave(X)", zsto,zout)
100
[175]101cccccccccccccccccc  Tracers
[1056]102
[3]103         if (iflag_trac.eq.1) THEN
[175]104          if (microfi.ge.1) then
105c           DO iq=1,nmicro
106c             CALL histdef(nid_mth, tname(iq), ttext(iq), "n/m2",
[1056]107c     .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[175]108c     .                "ave(X)", zsto,zout)
109c           ENDDO
110             CALL histdef(nid_mth, "qaer","nb tot aer" , "n/m2",
[1056]111     .                    iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[175]112     .                    "ave(X)", zsto,zout)
[306]113
[474]114            if (clouds.eq.1) then
[175]115             CALL histdef(nid_mth, "qnoy","nb tot noy" , "n/m2",
[1056]116     .                    iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[175]117     .                    "ave(X)", zsto,zout)
118             CALL histdef(nid_mth, "qgl1","V tot gl1" , "m3/m2",
[1056]119     .                    iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[175]120     .                    "ave(X)", zsto,zout)
121             CALL histdef(nid_mth, "qgl2","V tot gl2" , "m3/m2",
[1056]122     .                    iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[175]123     .                    "ave(X)", zsto,zout)
124             CALL histdef(nid_mth, "qgl3","V tot gl3" , "m3/m2",
[1056]125     .                    iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[175]126     .                    "ave(X)", zsto,zout)
127c--------------
128c ----- SATURATION ESP NUAGES
129               CALL histdef(nid_mth,"ch4sat", "saturation CH4", "--",
[1056]130     .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[175]131     .                "ave(X)", zsto,zout)
132               CALL histdef(nid_mth,"c2h6sat", "saturation C2H6", "--",
[1056]133     .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[175]134     .                "ave(X)", zsto,zout)
135               CALL histdef(nid_mth,"c2h2sat", "saturation C2H2", "--",
[1056]136     .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[175]137     .                "ave(X)", zsto,zout)
138c --------------
139c ----- RESERVOIR DE SURFACE
140               CALL histdef(nid_mth, "reserv", "Reservoir surface","m",
[1056]141     .                iim,jj_nb,nhori, 1,1,1, nvert, 32,
[175]142     .                "ave(X)", zsto,zout)
143c --------------
[474]144c ----- ECHANGE GAZ SURF/ATM (evaporation)
145               CALL histdef(nid_mth, "evapch4", "Evaporation CH4","m",
[1056]146     .                iim,jj_nb,nhori, 1,1,1, nvert, 32,
[175]147     .                "ave(X)", zsto,zout)
[474]148c --------------
149c ----- PRECIPITATIONS (precipitations moyennes)
150               CALL histdef(nid_mth,"prech4","Precip CH4","um/s",
[1056]151     .                iim,jj_nb,nhori, 1,1,1, nvert, 32,
[474]152     .                "ave(X)", zsto,zout)
[175]153               CALL histdef(nid_mth,"prec2h6","Precip C2H6",
[1056]154     .                "um/s",iim,jj_nb,nhori, 1,1,1, nvert, 32,
[175]155     .                "ave(X)", zsto,zout)
156               CALL histdef(nid_mth,"prec2h2","Precip C2H2",
[1056]157     .                "um/s",iim,jj_nb,nhori, 1,1,1, nvert, 32,
[175]158     .                "ave(X)", zsto,zout)
159               CALL histdef(nid_mth,"prenoy","Precip NOY",
[1056]160     .                "um/s",iim,jj_nb,nhori, 1,1,1, nvert, 32,
[175]161     .                "ave(X)", zsto,zout)
162               CALL histdef(nid_mth,"preaer","Precip AER",
[1056]163     .                "um/s",iim,jj_nb,nhori, 1,1,1, nvert, 32,
[175]164     .                "ave(X)", zsto,zout)
165c --------------
166c ----- FLUX GLACE
167               CALL histdef(nid_mth,"flxgl1", "flux gl CH4",
[1056]168     .              "kg/m2/s",iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[175]169     .              "ave(X)", zsto,zout)
170               CALL histdef(nid_mth,"flxgl2", "flux gl C2H6",
[1056]171     .              "kg/m2/s",iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[175]172     .              "ave(X)", zsto,zout)
173               CALL histdef(nid_mth,"flxgl3", "flux gl C2H2",
[1056]174     .              "kg/m2/s",iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[175]175     .              "ave(X)", zsto,zout)
176c --------------
[474]177c ----- Source/puits GLACE
178               CALL histdef(nid_mth,"solch4", "dQ gl CH4",
[1056]179     .              "m3/m3",iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[474]180     .              "ave(X)", zsto,zout)
181               CALL histdef(nid_mth,"solc2h6", "dQ gl C2H6",
[1056]182     .              "m3/m3",iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[474]183     .              "ave(X)", zsto,zout)
184               CALL histdef(nid_mth,"solc2h2", "dQ gl C2H2",
[1056]185     .              "m3/m3",iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[474]186     .              "ave(X)", zsto,zout)
187c --------------
[175]188c ----- RAYON DES GOUTTES
189               CALL histdef(nid_mth,"rcldbar", "rayon moyen goutte",
[1056]190     .                "m",iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[175]191     .                "ave(X)", zsto,zout)
[474]192            endif
[175]193          endif
194c --------------
195c ----- TRACEURS CHIMIQUES
196          if (nmicro.lt.nqmax) then
[3]197           DO iq=nmicro+1,nqmax
198         CALL histdef(nid_mth, tname(iq), ttext(iq), "ppm",
[1056]199     .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]200     .                "ave(X)", zsto,zout)
201           ENDDO
202c Condensation:
203c          DO iq=nmicro+1,nqmax
204c        CALL histdef(nid_mth, "c_"//tname(iq), "c_"//ttext(iq),
[1056]205c    .        "ppm/s",iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]206c    .                "ave(X)", zsto,zout)
207c          ENDDO
[175]208          endif
[3]209         endif
[1056]210
[3]211      ENDIF !lev_histmth.GE.2
[1056]212
[3]213c-------------------------------------------------------
214      IF(lev_histmth.GE.3) THEN
[1056]215
[3]216cccccccccccccccccc  Radiative transfer
[1056]217
[3]218c 2D
[1056]219
[3]220         CALL histdef(nid_mth, "topl", "IR rad. at TOA", "W/m2",
[1056]221     .                iim,jj_nb,nhori, 1,1,1, nvert, 32, 
[3]222     .                "ave(X)", zsto1,zout)
[1056]223
[3]224         CALL histdef(nid_mth, "sols", "Solar rad. at surf.", "W/m2",
[1056]225     .                iim,jj_nb,nhori, 1,1,1, nvert, 32, 
[3]226     .                "ave(X)", zsto1,zout)
[1056]227
[3]228         CALL histdef(nid_mth, "soll", "IR rad. at surface", "W/m2",
[1056]229     .                iim,jj_nb,nhori, 1,1,1, nvert, 32, 
[3]230     .                "ave(X)", zsto1,zout)
[1056]231
[3]232c 3D
[1056]233
[3]234         CALL histdef(nid_mth, "SWnet", "Net SW flux","W/m2",
[1056]235     .                iim,jj_nb,nhori, klev,1,klev,nvert,
[3]236     .                32, "ave(X)", zsto1,zout)
[1056]237
[3]238         CALL histdef(nid_mth, "LWnet", "Net LW flux","W/m2",
[1056]239     .                iim,jj_nb,nhori, klev,1,klev,nvert,
[3]240     .                32, "ave(X)", zsto1,zout)
[1056]241
[175]242c --------------
243c ----- OPACITE BRUME
[106]244         DO k=7,NSPECV,10
[1056]245           write(str2,'(i2.2)') k
246         CALL histdef(nid_mth,"thv"//str2,"Haze Opa Vis",
247     .                "--",iim,jj_nb,nhori,klev,1,klev,nvert,32,
[97]248     .                "ave(X)",zsto1,zout)
249         ENDDO
[1056]250
[175]251         DO k=8,NSPECI,10
[1056]252           write(str2,'(i2.2)') k
253         CALL histdef(nid_mth,"thi"//str2,"Haze Opa IR",
254     .                "--",iim,jj_nb,nhori,klev,1,klev,nvert,32,
[97]255     .                "ave(X)",zsto1,zout)
256         ENDDO
[1056]257
[175]258c --------------
259c ----- EXTINCTION BRUME
[106]260         DO k=7,NSPECV,10
[1056]261           write(str2,'(i2.2)') k
262         CALL histdef(nid_mth,"khv"//str2,"Haze ext Vis ",
263     .                "m-1",iim,jj_nb,nhori,klev,1,klev,nvert,32,
[106]264     .                "ave(X)",zsto1,zout)
265         ENDDO
[1056]266
[175]267         DO k=8,NSPECI,10
[1056]268           write(str2,'(i2.2)') k
269         CALL histdef(nid_mth,"khi"//str2,"Haze ext IR ",
270     .                "m-1",iim,jj_nb,nhori,klev,1,klev,nvert,32,
[106]271     .                "ave(X)",zsto1,zout)
272         ENDDO
[1056]273
[175]274c --------------
275c ----- OPACITE GAZ
276         DO k=7,NSPECV,10
[1056]277           write(str2,'(i2.2)') k
278         CALL histdef(nid_mth,"tgv"//str2,"Gas Opa Vis",
279     .                "--",iim,jj_nb,nhori,klev,1,klev,nvert,32,
[106]280     .                "ave(X)",zsto1,zout)
281         ENDDO
[1056]282
[106]283         DO k=8,NSPECI,10
[1056]284           write(str2,'(i2.2)') k
285         CALL histdef(nid_mth,"tgi"//str2,"Haze Opa IR",
286     .                "--",iim,jj_nb,nhori,klev,1,klev,nvert,32,
[106]287     .                "ave(X)",zsto1,zout)
288         ENDDO
[1056]289
[175]290c --------------
291c ----- EXTINCTION GAZ
292         DO k=7,NSPECV,10
[1056]293           write(str2,'(i2.2)') k
294         CALL histdef(nid_mth,"kgv"//str2,"Gas ext Vis ",
295     .                "m-1",iim,jj_nb,nhori,klev,1,klev,nvert,32,
[106]296     .                "ave(X)",zsto1,zout)
297         ENDDO
[1056]298
[106]299         DO k=8,NSPECI,10
[1056]300           write(str2,'(i2.2)') k
301         CALL histdef(nid_mth,"kgi"//str2,"Gas ext IR ",
302     .                "m-1",iim,jj_nb,nhori,klev,1,klev,nvert,32,
[106]303     .                "ave(X)",zsto1,zout)
304         ENDDO
[1056]305
[175]306c --------------
307c ----- OPACITE NUAGES
308         if (clouds.eq.1) then
309           CALL histdef(nid_mth,"tcld","Cld Opa proxy",
[1056]310     .                "--",iim,jj_nb,nhori,klev,1,klev,nvert,32,
[175]311     .                "ave(X)",zsto,zout)
[1056]312
[175]313c --------------
314c ----- EXTINCTION NUAGES
315           CALL histdef(nid_mth,"kcld","Cld Ext proxy",
[1056]316     .                "m-1",iim,jj_nb,nhori,klev,1,klev,nvert,32,
[175]317     .                "ave(X)",zsto,zout)
318         endif
[1056]319
[175]320c --------------
321c ----- OCCURENCE NUAGES
322           do k=1,12
[1056]323             write(str2,'(i2.2)') k
324             CALL histdef(nid_mth,"occcld"//str2,"occ cld",
325     .       "--",iim,jj_nb,nhori,klev,1,klev,nvert,32,
[175]326     .       "ave(X)",zsto,zout)
327           enddo
[1056]328
[3]329      ENDIF !lev_histmth.GE.3
[1056]330
[3]331c-------------------------------------------------------
332      IF(lev_histmth.GE.4) THEN
[1056]333
[3]334         CALL histdef(nid_mth, "dtdyn", "Dynamics dT", "K/s",
[1056]335     .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]336     .                "ave(X)", zsto,zout)
[1056]337
[3]338         CALL histdef(nid_mth, "dtphy", "Physics dT", "K/s",
[1056]339     .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]340     .                "ave(X)", zsto,zout)
[1056]341
[3]342         CALL histdef(nid_mth, "dtvdf", "Boundary-layer dT", "K/s",
[1056]343     .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]344     .                "ave(X)", zsto,zout)
[1056]345
[3]346         CALL histdef(nid_mth, "dtajs", "Dry adjust. dT", "K/s",
[1056]347     .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]348     .                "ave(X)", zsto,zout)
[1056]349
[3]350         CALL histdef(nid_mth, "dtswr", "SW radiation dT", "K/s",
[1056]351     .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]352     .                "ave(X)", zsto,zout)
[1056]353
[3]354         CALL histdef(nid_mth, "dtlwr", "LW radiation dT", "K/s",
[1056]355     .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]356     .                "ave(X)", zsto,zout)
[1056]357
[3]358c        CALL histdef(nid_mth, "dtec", "Cinetic dissip dT", "K/s",
[1056]359c    .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]360c    .                "ave(X)", zsto,zout)
[1056]361
[3]362c        CALL histdef(nid_mth, "dvvdf", "Boundary-layer dV", "m/s2",
[1056]363c    .                iim,jj_nb,nhori, klev,1,klev,nvert, 32,
[3]364c    .                "ave(X)", zsto,zout)
[1056]365
[3]366      ENDIF !lev_histmth.GE.4
[1056]367
[3]368c-------------------------------------------------------
369      IF(lev_histmth.GE.5) THEN
[1056]370
371
[3]372c        call histdef(nid_mth, "taux", 
373c    $         "Zonal wind stress", "Pa", 
[1056]374c    $         iim,jj_nb,nhori, 1,1,1, nvert, 32,
[3]375c    $         "ave(X)", zsto,zout)
[1056]376
[3]377c        call histdef(nid_mth, "tauy", 
378c    $         "Meridional xind stress", "Pa", 
[1056]379c    $         iim,jj_nb,nhori, 1,1,1, nvert, 32,
[3]380c    $         "ave(X)", zsto,zout)
[1056]381
[3]382c        CALL histdef(nid_mth, "cdrm", "Momentum drag coef.", "-",
[1056]383c    .                iim,jj_nb,nhori, 1,1,1, nvert, 32, 
[3]384c    .                "ave(X)", zsto,zout)
[1056]385
[3]386c        CALL histdef(nid_mth, "cdrh", "Heat drag coef.", "-",
[1056]387c    .                iim,jj_nb,nhori, 1,1,1, nvert, 32, 
[3]388c    .                "ave(X)", zsto,zout)
[1056]389
[3]390      ENDIF !lev_histmth.GE.5
391c-------------------------------------------------------
[1056]392
[3]393         CALL histend(nid_mth)
[1056]394
[3]395      ENDIF ! fin de test sur ok_journe
Note: See TracBrowser for help on using the repository browser.