2 c
$Id: ini_bilKP_ins.h 1907 2013-11-26 13:10:46Z lguez $
27 cIM cf. AM 081204 BEG region
37 cym if(zx_lat(1,j).ge.latmin_ins) jmax_ins=j
43 print*,'On stoke le
fichier bilKP instantanne sur ',
44 s zx_lon(imin_ins,1),zx_lon(imax_ins,1),
45 s zx_lat(1,jmin_ins),zx_lat(1,jmax_ins)
46 cIM cf. AM 081204 END region
51 cym CALL
histbeg("histbilKP_ins", iim,zx_lon(:,1), jjmp1,
59 cIM cf. AM 081204 BEG region
60 cym CALL
histbeg("histbilKP_ins", iim,zx_lon(:,1),
61 cym . jjmp1,zx_lat(1,:),
62 cym . imin_ins,imax_ins-imin_ins+1,
63 cym . jmin_ins,jmax_ins-jmin_ins+1,
65 cym . nhori, nid_bilKPins)
66 CALL
histbeg_phy("histbilKP_ins", itau_phy, zjulian, dtime,
67 . nhori, nid_bilKPins)
72 write(*,*)'
Journee ', itau_phy, zjulian
74 . "Vertical levels","mb",
79 CALL histdef(nid_bilKPins,"
ue",
80 . "Zonal energy transport","-",
81 . iim,jjphy_nb,nhori, klev,1,klev,
nvert, 32,
84 CALL histdef(nid_bilKPins,"
ve",
85 . "Merid energy transport","-",
86 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
89 CALL histdef(nid_bilKPins,"
uq",
90 . "Zonal humidity transport","-",
91 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
94 CALL histdef(nid_bilKPins,"
vq",
95 . "Merid humidity transport","-",
96 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
101 CALL histdef(nid_bilKPins, "temp",
102 . "Air temperature", "K",
103 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
104 . typeval, zsto,
zout)
106 CALL histdef(nid_bilKPins,"ovap",
107 . "Specific humidity","Kg/Kg",
108 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
109 . typeval, zsto,
zout)
111 CALL histdef(nid_bilKPins,"geop",
112 . "Geopotential
height", "m",
113 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
114 . typeval, zsto,
zout)
116 CALL histdef(nid_bilKPins,"vitu",
117 . "Zonal wind", "m/s",
118 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
119 . typeval, zsto,
zout)
121 CALL histdef(nid_bilKPins,"vitv",
122 . "Meridional wind", "m/s",
123 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
124 . typeval, zsto,
zout)
126 CALL histdef(nid_bilKPins, "vitw",
127 . "Vertical wind", "m/s",
128 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
129 . typeval, zsto,
zout)
131 CALL histdef(nid_bilKPins, "pres",
134 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
135 . typeval, zsto,
zout)
137 CALL histdef(nid_bilKPins, "
play",
138 . "Mean-Layer Air pressure",
140 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
141 . typeval, zsto,
zout)
143 CALL histdef(nid_bilKPins, "oliq",
144 . "Liquid water content",
146 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
147 . typeval, zsto,
zout)
149 CALL histdef(nid_bilKPins, "dtdyn",
150 . "Dynamics dT", "K/s",
151 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
152 . typeval, zsto,
zout)
154 CALL histdef(nid_bilKPins, "dqdyn",
155 . "Dynamics dQ", "Kg/Kg/s",
156 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
157 . typeval, zsto,
zout)
159 CALL histdef(nid_bilKPins, "dtcon",
160 . "Convection dT", "K/s",
161 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
162 . typeval, zsto,
zout)
164 CALL histdef(nid_bilKPins, "ducon",
165 . "Convection
du", "m/
s2",
166 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
167 . typeval, zsto,
zout)
169 CALL histdef(nid_bilKPins, "dvcon",
170 . "Convection
dv", "m/s2",
171 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
172 . typeval, zsto,
zout)
174 CALL histdef(nid_bilKPins,"dqcon",
175 . "Convection dQ","Kg/Kg/s",
176 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
177 . typeval, zsto,
zout)
179 CALL histdef(nid_bilKPins, "dtlsc",
180 . "Condensation dT", "K/s",
181 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
182 . typeval, zsto,
zout)
184 CALL histdef(nid_bilKPins,"dqlsc",
185 . "Condensation dQ","Kg/Kg/s",
186 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
187 . typeval, zsto,
zout)
189 CALL histdef(nid_bilKPins,"dtvdf",
190 . "Boundary-layer dT","K/s",
191 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
192 . typeval, zsto,
zout)
194 CALL histdef(nid_bilKPins, "dqvdf",
195 . "Boundary-layer dQ",
197 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
198 . typeval, zsto,
zout)
200 CALL histdef(nid_bilKPins,"dtajs",
201 . "Ajustement sec dT","K/s",
202 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
203 . typeval, zsto,
zout)
205 CALL histdef(nid_bilKPins,"dqajs",
206 . "Ajustement sec dQ",
208 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
209 . typeval, zsto,
zout)
211 CALL histdef(nid_bilKPins,"dteva",
212 . "Reevaporation dT","K/s",
213 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
214 . typeval, zsto,
zout)
216 CALL histdef(nid_bilKPins,"dqeva",
217 . "Reevaporation dQ",
219 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
220 . typeval, zsto,
zout)
223 CALL histdef(nid_bilKPins, "dtswr",
224 . "SW radiation dT", "K/s",
225 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
226 . typeval, zsto,
zout)
228 CALL histdef(nid_bilKPins, "dtsw0",
229 . "SW radiation dT", "K/s",
230 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
231 . typeval, zsto,
zout)
233 CALL histdef(nid_bilKPins, "dtlwr",
234 . "LW radiation dT", "K/s",
235 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
236 . typeval, zsto,
zout)
238 CALL histdef(nid_bilKPins, "dtlw0",
239 . "LW radiation dT", "K/s",
240 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
241 . typeval, zsto,
zout)
243 CALL histdef(nid_bilKPins,"duvdf",
244 . "Boundary-layer dU","m/s2",
245 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
246 . typeval, zsto,
zout)
248 CALL histdef(nid_bilKPins,"dvvdf",
249 . "Boundary-layer dV","m/s2",
250 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
251 . typeval, zsto,
zout)
255 CALL histdef(nid_bilKPins, "duoli",
256 . "Orography dU", "m/s2",
257 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
258 . typeval, zsto,
zout)
260 CALL histdef(nid_bilKPins, "dvoli",
261 . "Orography dV", "m/s2",
262 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
263 . typeval, zsto,
zout)
268 CALL histdef(nid_bilKPins, "duphy",
270 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
271 . typeval, zsto,
zout)
273 CALL histdef(nid_bilKPins, "dvphy",
275 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
276 . typeval, zsto,
zout)
278 CALL histdef(nid_bilKPins, "dtphy",
280 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
281 . typeval, zsto,
zout)
283 CALL histdef(nid_bilKPins, "dqphy",
285 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
286 . typeval, zsto,
zout)
288 CALL histdef(nid_bilKPins, "dqlphy",
290 . iim,jjphy_nb,nhori, klev,1,klev,nvert, 32,
291 . typeval, zsto,
zout)
300 IF(k.GE.2.AND.k.LE.12) bb2=clevSTD(k)
301 IF(k.GE.13.AND.k.LE.17) bb3=clevSTD(k)
303 IF(bb2.EQ."850") THEN
305 CALL histdef(nid_bilKPins, "
u"
307 . iim,jjphy_nb,nhori, 1,1,1, -99, 32,
308 . typeval, zsto,
zout)
310 CALL histdef(nid_bilKPins, "v"
312 . iim,jjphy_nb,nhori, 1,1,1, -99, 32,
313 . typeval, zsto,
zout)
315 ENDIF !(bb2.EQ."850")
321 CALL histend(nid_bilKPins)
326 ENDIF ! fin
de test sur ok_journe
!$Header!c include clesph0 h c COMMON clesph0 ok_orolf
!$Id La frequence de sortie REGDYN est ecrit_mth c iwmax il faut mettre la meme valeur pour c zout et zsto c dtime est passe par ailleurs a histbeg c c zsto
INTERFACE SUBROUTINE RRTM_ECRT_140GP klon
c c zjulian c cym CALL iim cym klev iim cym jjmp1 cym On stoke le fichier bilKP instantanne s jmax_ins print On stoke le fichier bilKP instantanne s s cym zjulian
c c zjulian c cym CALL iim cym klev iim cym jjmp1 cym On stoke le fichier bilKP instantanne s jmax_ins print On stoke le fichier bilKP instantanne s s cym dtime
!$Id zjulian!correction pour l heure initiale!jyg!jyg CALL ymds2ju(annee_ref, 1, day_ref, hour, zjulian)!jyg CALL histbeg_phy("histrac"
!$Header!c include clesph0 h c COMMON clesph0 ok_orodr
c c zjulian c cym CALL iim cym klev znivsig(ll)
c c zjulian c cym CALL iim cym klev cym cym nid_bilKPave CALL histbeg_phy("histbilKP_ave", itau_phy, zjulian, dtime,.nhori, nid_bilKPave) write(*
integer, dimension(3), save nvert
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL solaire REAL(kind=8) RCO2
real, dimension(:), allocatable, save s2
c c zjulian c cym CALL iim cym klev iim cym jjmp1 cym On stoke le fichier bilKP instantanne s imin_ins
c c zjulian c cym CALL iim cym klev cym cym nid_bilKPave CALL * Journee
real, dimension(:), allocatable, save vq
c c zjulian c cym CALL iim cym klev iim cym jjmp1 cym On stoke le fichier bilKP instantanne s jmax_ins print On stoke le fichier bilKP instantanne s s jjmp1
!$Header!integer nvarmx s s s fichier
c c $Id c c calculs statistiques distribution nuage ftion du regime dynamique c c Ce calcul doit etre fait a partir de valeurs mensuelles CALL nbregdyn DO k
real, dimension(:), allocatable, save ve
!$Id klon initialisation mois suivants day_rain itap ENDIF!Calcul fin de nday_rain calcul nday_rain itap DO i
c c zjulian c cym CALL iim cym klev iim cym jjmp1 cym On stoke le fichier bilKP instantanne s jmax_ins print On stoke le fichier bilKP instantanne s s cym cym nhori
!$Id itapm1 ENDIF!IM on interpole les champs sur les niveaux STD de pression!IM a chaque pas de temps de la physique c!positionnement de l argument logique a false c!pour ne pas recalculer deux fois la meme chose!c!a cet effet un appel a plevel_new a ete deplace c!a la fin de la serie d appels c!la boucle DO nlevSTD a ete internalisee c!dans d ou la creation de cette routine c c!CALL nlevSTD
c c zjulian c cym CALL iim cym klev iim cym jjmp1 cym On stoke le fichier bilKP instantanne s imax_ins
!$Id vert_prof_dissip LOGICAL lstardis INTEGER niterh integer vert_prof_dissip!vertical profile of horizontal dissipation!Allowed function of pressure
!$Id klon IF(pctsrf(i, is_ter).GT.0.) THEN paire_ter(i)
!$Id zjulian!correction pour l heure initiale!jyg!jyg CALL nid_tra CALL histvert(nid_tra,"presnivs","Vertical levels","Pa", klev, presnivs, nvert,"down") zsto
real, dimension(:), allocatable, save uq
c c zjulian c cym CALL iim cym klev iim cym jjmp1 cym On stoke le fichier bilKP instantanne s jmin_ins
!$Id Turb_fcg!implicit none!ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc!cette routine permet d obtenir hq et ainsi de!pouvoir calculer la convergence et le cisaillement dans la physiq!cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc INTEGER klev REAL j
c c zjulian c cym CALL iim cym klev iim cym jjmp1 cym On stoke le fichier bilKP instantanne s jmax_ins print On stoke le fichier bilKP instantanne s s cym cym
!$Id La frequence de sortie REGDYN est ecrit_mth c iwmax il faut mettre la meme valeur pour c zout et zsto c dtime est passe par ailleurs a histbeg c c zout
!$Id Turb_fcg_gcssold get_uvd hqturb_gcssold endif!large scale llm day day1 day day1 *dt_toga endif!time annee_ref dt_toga u_toga vq_toga w_prof vq_prof llm u(l)
c c zjulian c cym CALL gr_fi_ecrit(1, klon, iim, jjmp1, rlon, zx_lon) cym DO i
c c $Id c nbregdyn DO klon c rlat(i) c ENDIF!lon c ENDIF!lat ENDIF!pctsrf ENDDO!klon ENDDO!nbregdyn cIM 190504 ENDIF!ok_regdyn cIM somme de toutes les nhistoW BEG IF(debut) THEN DO nreg
c c zjulian c cym CALL iim cym klev iim cym jjmp1 cym On stoke le fichier bilKP instantanne sur
!$Id Turb_fcg!implicit none!ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc!cette routine permet d obtenir hq et ainsi de!pouvoir calculer la convergence et le cisaillement dans la physiq!cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc INTEGER klev REAL ll
real, dimension(:), allocatable, save ue
real, dimension(:,:), pointer, save dv
real, dimension(:,:), pointer, save du
c c zjulian c cym CALL iim cym zx_lon(i, 1)
c c zjulian c cym CALL iim cym klev * zx_lat
c c zjulian c cym CALL iim cym klev iim cym jjmp1 cym On stoke le fichier bilKP instantanne s jmax_ins print On stoke le fichier bilKP instantanne s s iim
!$Id Turb_fcg!implicit none!ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc!cette routine permet d obtenir hq et ainsi de!pouvoir calculer la convergence et le cisaillement dans la physiq!cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc INTEGER klev REAL in CHARACTER file_fordat COMMON com1_phys_gcss play
c c zjulian c cym CALL iim cym klev iim cym if(zx_lon(i, 1).lt.lonmin_ins) imin_ins
c c zjulian c cym CALL iim cym klev iim cym jjmp1 cym On stoke le fichier bilKP instantanne s jmax_ins print On stoke le fichier bilKP instantanne s s cym cym nid_bilKPins ENDIF c cIM BEG c cIM cf AM BEG region cym CALL histbeg("histbilKP_ins", iim, zx_lon(:, 1), cym.jjmp1, zx_lat(1,:), cym.imin_ins, imax_ins-imin_ins+1, cym.jmin_ins, jmax_ins-jmin_ins+1, cym.itau_phy, zjulian, dtime, cym.nhori, nid_bilKPins) CALL histbeg_phy("histbilKP_ins"
c c zjulian c cym CALL iim cym klev iim cym jjmp1 cym On stoke le fichier bilKP instantanne s jmax_ins print On stoke le fichier bilKP instantanne s s cym itau_phy
c c $Id c nbregdyn DO klon c rlon(i)
real, dimension(:), allocatable, save presnivs