source: LMDZ4/trunk/libf/phylmd/ini_histmthNMC.h @ 862

Last change on this file since 862 was 776, checked in by Laurent Fairhead, 17 years ago

Suite du merge entre la version et la HEAD: quelques modifications
de Yann sur le

LF

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 6.3 KB
RevLine 
[524]1!
2! $Header$
3!
4      IF (ok_mensuel) THEN
5c
[766]6c$OMP MASTER
7
[644]8       zstophy = dtime
[684]9       zstohf = ecrit_hf
10       zstomth = ecrit_mth
11       zout = ecrit_mth
[524]12c
13         idayref = day_ref
14         CALL ymds2ju(annee_ref, 1, idayref, 0.0, zjulian)
15c
[766]16cym         CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlon,zx_lon)
17cym         DO i = 1, iim
18cym            zx_lon(i,1) = rlon(i+1)
19cym            zx_lon(i,jjmp1) = rlon(i+1)
20cym         ENDDO
[524]21         DO ll=1,klev
22            znivsig(ll)=float(ll)
23         ENDDO
[766]24cym         CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlat,zx_lat)
25cym         CALL histbeg("histNMC.nc", iim,zx_lon(:,1), jjmp1,zx_lat(1,:),
26cym     .                 1,iim,1,jjmp1, itau_phy, zjulian, dtime, 
27cym     .                 nhori, nid_nmc)
28
29         CALL histbeg_phy("histNMC",itau_phy, zjulian, dtime, 
[524]30     .                 nhori, nid_nmc)
[644]31c
[524]32         CALL histvert(nid_nmc, "presnivs", "Vertical levels", "mb",
[644]33     .                 nlevSTD, rlevSTD/100., nvert)
34ccc
35ccc Champs 3D interpolles sur des niveaux de pression du NMC
36ccc
37      IF(type_run.EQ."ENSP".OR.type_run.EQ."CLIM") THEN
[524]38c
[644]39          CALL histdef(nid_nmc, "temp",
40     .                 "Temperature","K",
[776]41     .                iim,jj_nb,nhori, nlevSTD,1,nlevSTD, nvert, 32,
[644]42     .                "inst(X)", zout,zout)
[524]43c
[644]44         CALL histdef(nid_nmc, "phi",
45     .                "Geopotential", "m",
[776]46     .                iim,jj_nb,nhori, nlevSTD,1,nlevSTD, nvert, 32,
[644]47     .                "inst(X)", zout,zout)
[524]48c
[644]49          CALL histdef(nid_nmc, "q",
50     .                 "Specific humidity","kg/kg",
[776]51     .                iim,jj_nb,nhori, nlevSTD,1,nlevSTD, nvert, 32,
[644]52     .                "inst(X)", zout,zout)
[524]53c
[644]54         CALL histdef(nid_nmc, "rh",
55     .                 "Relative humidity", "%",
[776]56     .                iim,jj_nb,nhori, nlevSTD,1,nlevSTD, nvert, 32,
[644]57     .                "inst(X)", zout,zout)
[524]58c
[644]59          CALL histdef(nid_nmc, "u",
60     .                 "Zonal wind","m/s",
[776]61     .                iim,jj_nb,nhori, nlevSTD,1,nlevSTD, nvert, 32,
[644]62     .                "inst(X)", zout,zout)
[524]63c
[644]64          CALL histdef(nid_nmc, "v",
65     .                 "Meridional wind","m/s",
[776]66     .                iim,jj_nb,nhori, nlevSTD,1,nlevSTD, nvert, 32,
[644]67     .                "inst(X)", zout,zout)
[524]68c
[644]69      ELSE IF(type_run.EQ."AMIP".OR.type_run.EQ."CFMI") THEN
[524]70c
[644]71c ATTENTION : pour AMIP2 on interpole t,u,v,wphi,q,rh
72c             sur les niveaux du NMC et on somme & moyenne
73c             toutes les 6 heures par des routines undefSTD et
74c             moy_undefSTD pour eliminer les valeurs "undef"
75c             de la moyenne mensuelle
76c ======> le "inst(X)" ci-dessous est par consequence factice !
[524]77c
[644]78          CALL histdef(nid_nmc, "temp",
79     .                 "Temperature","K",
[776]80     .                iim,jj_nb,nhori, nlevSTD,1,nlevSTD, nvert, 32,
[644]81     .                "inst(X)", zout,zout)
[524]82c
[644]83         CALL histdef(nid_nmc, "phi",
84     .                "Geopotential ", "m",
[776]85     .                iim,jj_nb,nhori, nlevSTD,1,nlevSTD, nvert, 32,
[644]86     .                "inst(X)", zout,zout)
[524]87c
[644]88          CALL histdef(nid_nmc, "q",
89     .                 "Specific humidity","kg/kg",
[776]90     .                iim,jj_nb,nhori, nlevSTD,1,nlevSTD, nvert, 32,
[644]91     .                "inst(X)", zout,zout)
92c
93         CALL histdef(nid_nmc, "rh",
94     .                 "Relative humidity", "%",
[776]95     .                iim,jj_nb,nhori, nlevSTD,1,nlevSTD, nvert, 32,
[644]96     .                "inst(X)", zout,zout)
97c
98          CALL histdef(nid_nmc, "u",
99     .                 "Zonal wind","m/s",
[776]100     .                iim,jj_nb,nhori, nlevSTD,1,nlevSTD, nvert, 32,
[644]101     .                "inst(X)", zout,zout)
102c
103          CALL histdef(nid_nmc, "v",
104     .                 "Meridional wind","m/s",
[776]105     .                iim,jj_nb,nhori, nlevSTD,1,nlevSTD, nvert, 32,
[644]106     .                "inst(X)", zout,zout)
107c
108          CALL histdef(nid_nmc, "w",
109     .                 "Vertical motion","Pa/s",
[776]110     .                iim,jj_nb,nhori, nlevSTD,1,nlevSTD, nvert, 32,
[644]111     .                "inst(X)", zout,zout)
112c
113c ATTENTION : pour AMIP2 on interpole t,u,v,wphi,q,rh
114c             sur les niveaux du NMC et on somme & moyenne
115c             toutes les 6 heures par des routines undefSTD et
116c             moy_undefSTD pour eliminer les valeurs "undef"
117c             de la moyenne mensuelle
118c ======> le "inst(X)" ci-dessus est par consequence factice !
119c
120c
121          CALL histdef(nid_nmc, "psbg",
122     .         "Pressure sfce below ground","%",
[776]123     .         iim,jj_nb,nhori, nlevSTD,1,nlevSTD, nvert, 32,
[644]124     .         "inst(X)", zout,zout)
125c
126          CALL histdef(nid_nmc, "uv",
127     .         "uv ",
[776]128     .         "m2/s2",iim,jj_nb,nhori, nlevSTD,1,nlevSTD, nvert, 32,
[644]129     .         "inst(X)", zout,zout)
130c
131          CALL histdef(nid_nmc, "vq",
132     .         "vq ",
[776]133     .         "m/s * (kg/kg)",iim,jj_nb,nhori, 
[644]134     .          nlevSTD,1,nlevSTD, nvert, 32,
135     .         "inst(X)", zout,zout)
136c
137          CALL histdef(nid_nmc, "vT",
138     .         "vT ", 
[776]139     .         "mK/s",iim,jj_nb,nhori, 
[644]140     .          nlevSTD,1,nlevSTD, nvert, 32,
141     .         "inst(X)", zout,zout)
142c
143          CALL histdef(nid_nmc, "wq",
144     .         "wq ", 
[776]145     .         "(Pa/s)*(kg/kg)",iim,jj_nb,nhori,
[644]146     .          nlevSTD,1,nlevSTD, nvert, 32,
147     .         "inst(X)", zout,zout)
148c
149          CALL histdef(nid_nmc, "vphi",
150     .         "vphi ", 
[776]151     .         "m2/s",iim,jj_nb,nhori, 
[644]152     .          nlevSTD,1,nlevSTD, nvert, 32,
153     .         "inst(X)", zout,zout)
154c
155          CALL histdef(nid_nmc, "wT",
156     .         "wT ", 
[776]157     .         "K*Pa/s",iim,jj_nb,nhori,
[644]158     .          nlevSTD,1,nlevSTD, nvert, 32,
159     .         "inst(X)", zout,zout)
160c
161          CALL histdef(nid_nmc, "uxu",
162     .         "u2 ", 
[776]163     .         "m2/s2",iim,jj_nb,nhori,
[644]164     .          nlevSTD,1,nlevSTD, nvert, 32,
165     .         "inst(X)", zout,zout)
166c
167          CALL histdef(nid_nmc, "vxv",
168     .         "v2 ", 
[776]169     .         "m2/s2",iim,jj_nb,nhori,
[644]170     .          nlevSTD,1,nlevSTD, nvert, 32,
171     .         "inst(X)", zout,zout)
172c
173          CALL histdef(nid_nmc, "TxT",
174     .         "T2 ", 
[776]175     .         "K2",iim,jj_nb,nhori,
[644]176     .          nlevSTD,1,nlevSTD, nvert, 32,
177     .         "inst(X)", zout,zout)
178c
179      ENDIF !(type_run.EQ."AMIP")
[524]180
181         CALL histend(nid_nmc)
182c
[766]183c$OMP END MASTER
184
[524]185      ENDIF ! fin de test sur ok_mensuel
Note: See TracBrowser for help on using the repository browser.