Changeset 644 for LMDZ4/trunk/libf/phylmd/ini_histhf.h
- Timestamp:
- May 25, 2005, 3:10:09 PM (20 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ4/trunk/libf/phylmd/ini_histhf.h
r590 r644 5 5 IF (ok_hf) THEN 6 6 c 7 zout = dtime * REAL(NINT(86400./dtime*ecrit_hf))8 zsto = zout9 zsto1 = dtime10 PRINT*, 'La frequence de sortie instant. est de ', ecrit_hf7 zstohf = dtime * FLOAT(ecrit_hf) 8 zstophy = dtime 9 zstoday = dtime * FLOAT(ecrit_day) 10 zout = dtime * FLOAT(ecrit_hf) 11 11 c 12 12 idayref = day_ref … … 21 21 22 22 CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlat,zx_lat) 23 24 cccIM CALL histbeg("histhf", iim,zx_lon, jjmp1,zx_lat,25 23 CALL histbeg("histhf", iim,zx_lon(:,1), jjmp1,zx_lat(1,:), 26 24 . 1,iim,1,jjmp1, itau_phy, zjulian, dtime, … … 28 26 29 27 CALL histvert(nid_hf, "presnivs", "Vertical levels", "mb", 30 . klev, presnivs, nvert) 31 c 32 28 . klev, presnivs/100., nvert) 29 c 30 31 IF(type_run.EQ."CLIM".OR.type_run.EQ."ENSP") THEN 32 c 33 33 IF(lev_histhf.GE.1) THEN 34 34 c 35 c CALL histdef(nid_hf, "phis", "Surface geop. height", "-",36 c . iim,jjmp1,nhori, 1,1,1, -99, 32,37 c . "once", zsto,zout)38 c39 c CALL histdef(nid_hf, "aire", "Grid area", "-",40 c . iim,jjmp1,nhori, 1,1,1, -99, 32,41 c . "once", zsto,zout)42 c43 35 CALL histdef(nid_hf, "aireTER","Grid area CONT","-", 44 36 . iim,jjmp1,nhori, 1,1,1, -99, 32, 45 . "once", zsto ,zout)37 . "once", zstohf,zout) 46 38 c 47 39 CALL histdef(nid_hf, "contfracATM","% sfce ter+lic ","-", 48 40 . iim,jjmp1,nhori, 1,1,1, -99, 32, 49 . "once", zsto ,zout)41 . "once", zstohf,zout) 50 42 c 51 43 CALL histdef(nid_hf, "contfracOR","% sfce terre OR", "-", 52 44 . iim,jjmp1,nhori, 1,1,1, -99, 32, 53 . "once", zsto ,zout)45 . "once", zstohf,zout) 54 46 c 55 47 c Champs 2D: … … 57 49 CALL histdef(nid_hf, "t2m", "Temperature 2m", "K", 58 50 . iim,jjmp1,nhori, 1,1,1, -99, 32, 59 . "inst(X)", zsto ,zout)51 . "inst(X)", zstohf,zout) 60 52 c 61 53 CALL histdef(nid_hf, "q2m", "Specific humidity", "kg/kg", 62 54 . iim,jjmp1,nhori, 1,1,1, -99, 32, 63 . "inst(X)", zsto ,zout)55 . "inst(X)", zstohf,zout) 64 56 c 65 57 CALL histdef(nid_hf, "psol", "Surface Pressure", "Pa", 66 58 . iim,jjmp1,nhori, 1,1,1, -99, 32, 67 . "inst(X)", zsto,zout) 68 c 69 print*,'ATTENTION METTRE AVE(X) POUR LES PRECIPS' 70 71 CALL histdef(nid_hf, "rain", "Precipitation", "kg/m^2s", 59 . "inst(X)", zstohf,zout) 60 c 61 CALL histdef(nid_hf, "precip", "Precipitation", "kg/(s*m2)", 72 62 . iim,jjmp1,nhori, 1,1,1, -99, 32, 73 . "ave(X)", zsto 1,zout)63 . "ave(X)", zstophy,zout) 74 64 c 75 65 cIM ENSEMBLES BEG 76 c77 66 CALL histdef(nid_hf, "tsol", "Surface Temperature", "K", 78 67 . iim,jjmp1,nhori, 1,1,1, -99, 32, 79 . "inst(X)", zsto ,zout)68 . "inst(X)", zstohf,zout) 80 69 c 81 70 CALL histdef(nid_hf, "slp", "Sea Level Pressure", "Pa", 82 71 . iim,jjmp1,nhori, 1,1,1, -99, 32, 83 . "inst(X)", zsto,zout) 84 c 72 . "inst(X)", zstohf,zout) 85 73 c 86 74 CALL histdef(nid_hf, "u10m", "Vent zonal 10m", "m/s", 87 75 . iim,jjmp1,nhori, 1,1,1, -99, 32, 88 . "inst(X)", zsto ,zout)76 . "inst(X)", zstohf,zout) 89 77 c 90 78 CALL histdef(nid_hf, "v10m", "Vent meridien 10m", "m/s", 91 79 . iim,jjmp1,nhori, 1,1,1, -99, 32, 92 . "inst(X)", zsto ,zout)80 . "inst(X)", zstohf,zout) 93 81 c 94 82 CALL histdef(nid_hf, "wind10m","10-m wind speed","m/s", 95 83 . iim,jjmp1,nhori, 1,1,1, -99, 32, 96 . "inst(X)", zsto,zout) 97 c 98 DO k=1, nlevENS 99 IF(clev(k).EQ."500") THEN 100 CALL histdef(nid_hf, "phi"//clev(k), 101 . "Geopotential"//clev(k)//"mb", "m2/s2", 102 . iim,jjmp1,nhori, 1,1,1, -99, 32, 103 . "inst(X)", zsto,zout) 104 ENDIF !clev(k).EQ."500" 105 ENDDO !k=1, nlevENS 84 . "inst(X)", zstohf,zout) 85 c 86 DO k=1, nlevSTD 87 c 88 c bb=clevSTD(k) 89 c 90 IF(k.GE.2.AND.k.LE.12) bb2=clevSTD(k) 91 IF(k.GE.13.AND.k.LE.17) bb3=clevSTD(k) 92 c 93 c IF(k.GE.2) THEN 94 c aa=clevSTD(k) 95 c bb=aa(1:lnblnk1(aa)) 96 c ENDIF 97 c 98 IF(bb2.EQ."500") THEN 99 CALL histdef(nid_hf, "phi"//bb2, 100 . "Geopotential "//bb2//"mb", "m", 101 . iim,jjmp1,nhori, 1,1,1, -99, 32, 102 . "inst(X)", zstohf,zout) 103 ENDIF !bb2.EQ."500" 104 ENDDO !k=1, nlevSTD 106 105 c 107 106 ENDIF !lev_histhf.GE.1 … … 109 108 IF(lev_histhf.GE.2) THEN 110 109 c 111 CALL histdef(nid_hf, "cldt", "Total cloudiness", "-", 112 . iim,jjmp1,nhori, 1,1,1, -99, 32, 113 . "ave(X)", zsto1,zout) 114 c 115 c -- LOOP 110 CALL histdef(nid_hf, "cldt", "Total cloudiness", "%", 111 . iim,jjmp1,nhori, 1,1,1, -99, 32, 112 . "ave(X)", zstophy,zout) 113 c 114 CALL histdef(nid_hf, "SWnetOR", 115 . "Sfce net SW radiation OR", "W/m2", 116 . iim,jjmp1,nhori, 1,1,1, -99, 32, 117 . "ave(X)", zstophy,zout) 118 c 116 119 CALL histdef(nid_hf, "SWdownOR", 117 . "Sfce incident SW down radiation OR", "W/m^2", 118 . iim,jjmp1,nhori, 1,1,1, -99, 32, 119 . "ave(X)", zsto1,zout) 120 c 121 CALL histdef(nid_hf, "SWnetOR", 122 . "Sfce incident SW net radiation OR", "W/m^2", 123 . iim,jjmp1,nhori, 1,1,1, -99, 32, 124 . "ave(X)", zsto1,zout) 125 c -- LOOP 120 . "Sfce incident SW radiation OR", "W/m2", 121 . iim,jjmp1,nhori, 1,1,1, -99, 32, 122 . "ave(X)", zstophy,zout) 126 123 c 127 124 CALL histdef(nid_hf, "LWdownOR", 128 . "Sfce incident LW radiation OR", "W/m ^2",129 . iim,jjmp1,nhori, 1,1,1, -99, 32, 130 . "ave(X)", zsto 1,zout)125 . "Sfce incident LW radiation OR", "W/m2", 126 . iim,jjmp1,nhori, 1,1,1, -99, 32, 127 . "ave(X)", zstophy,zout) 131 128 ENDIF !lev_histhf.GE.2 132 129 c … … 135 132 IF(lev_histhf.GE.3) THEN 136 133 c 137 DO k=1, nlevENS 138 c 139 CALL histdef(nid_hf, "t"//clev(k), 140 . "Temperature"//clev(k)//"mb","K", 141 . iim,jjmp1,nhori, 1,1,1, -99, 32, 142 . "inst(X)", zsto,zout) 143 c 144 IF(clev(k).NE."500") THEN 145 CALL histdef(nid_hf, "phi"//clev(k), 146 . "Geopotential"//clev(k)//"mb", "m2/s2", 147 . iim,jjmp1,nhori, 1,1,1, -99, 32, 148 . "inst(X)", zsto,zout) 134 DO k=1, nlevSTD 135 c 136 c bb=clevSTD(k) 137 c 138 c IF(k.GE.2) THEN 139 IF(k.GE.2.AND.k.LE.12) bb2=clevSTD(k) 140 IF(k.GE.13.AND.k.LE.17) bb3=clevSTD(k) 141 c aa=clevSTD(k) 142 c bb=aa(1:lnblnk1(aa)) 143 c ENDIF 144 c 145 IF(bb2.EQ."850".or.bb2.EQ."700".OR. 146 $ bb2.EQ."500".or.bb2.EQ."200") THEN 147 c 148 CALL histdef(nid_hf, "t"//bb2, 149 . "Temperature "//bb2//"mb","K", 150 . iim,jjmp1,nhori, 1,1,1, -99, 32, 151 . "inst(X)", zstohf,zout) 152 c 153 IF(bb2.NE."500") THEN 154 CALL histdef(nid_hf, "phi"//bb2, 155 . "Geopotential "//bb2//"mb", "m", 156 . iim,jjmp1,nhori, 1,1,1, -99, 32, 157 . "inst(X)", zstohf,zout) 149 158 ENDIF 150 159 c 151 CALL histdef(nid_hf, "q"//clev(k), 152 . "Specific humidity"//clev(k)//"mb","kg/kg", 153 . iim,jjmp1,nhori, 1,1,1, -99, 32, 154 . "inst(X)", zsto,zout) 155 c 156 IF(1.EQ.0) THEN 157 CALL histdef(nid_hf, "rh"//clev(k), 158 . "Relative humidity"//clev(k)//"mb", "%", 159 . iim,jjmp1,nhori, 1,1,1, -99, 32, 160 . "inst(X)", zsto,zout) 161 ENDIF 162 c 163 CALL histdef(nid_hf, "u"//clev(k), 164 . "Zonal wind"//clev(k)//"mb","m/s", 165 . iim,jjmp1,nhori, 1,1,1, -99, 32, 166 . "inst(X)", zsto,zout) 167 c 168 CALL histdef(nid_hf, "v"//clev(k), 169 . "Meridional wind"//clev(k)//"mb","m/s", 170 . iim,jjmp1,nhori, 1,1,1, -99, 32, 171 . "inst(X)", zsto,zout) 172 c 173 ENDDO !nlevENS 174 IF(1.EQ.0) THEN 175 CALL histdef(nid_hf, "cdrm", " Momentum drag coef.", "-", 176 . iim,jjmp1,nhori, 1,1,1, -99, 32, 177 . "inst(X)", zsto,zout) 178 c 179 CALL histdef(nid_hf, "cdrh", "Heat drag coef.", "-", 180 . iim,jjmp1,nhori, 1,1,1, -99, 32, 181 . "inst(X)", zsto,zout) 182 ENDIF !(1.EQ.0) THEN 160 CALL histdef(nid_hf, "q"//bb2, 161 . "Specific humidity "//bb2//"mb","kg/kg", 162 . iim,jjmp1,nhori, 1,1,1, -99, 32, 163 . "inst(X)", zstohf,zout) 164 c 165 CALL histdef(nid_hf, "u"//bb2, 166 . "Zonal wind "//bb2//"mb","m/s", 167 . iim,jjmp1,nhori, 1,1,1, -99, 32, 168 . "inst(X)", zstohf,zout) 169 c 170 CALL histdef(nid_hf, "v"//bb2, 171 . "Meridional wind "//bb2//"mb","m/s", 172 . iim,jjmp1,nhori, 1,1,1, -99, 32, 173 . "inst(X)", zstohf,zout) 174 c 175 ENDIF !IF(bb2.EQ."850".or.bb2.EQ."700".OR. 176 c 177 ENDDO !nlevSTD 183 178 c 184 179 ENDIF !lev_histhf.GE.3 185 180 c 186 181 IF(lev_histhf.GE.4) THEN 182 c 183 cIM sorties hf 3D 184 c 185 #undef histhf3d 187 186 #define histhf3d 188 187 #ifdef histhf3d … … 191 190 ENDIF !lev_histhf.GE.4 192 191 c 193 c#define histhf3d 194 c#ifdef histhf3d 195 c#include "ini_histhf3d.h" 196 c#endif 197 c 198 CALL histend(nid_hf) 199 c 200 endif ! ok_hf 192 ELSE IF(type_run.EQ."AMIP".OR.type_run.EQ."CFMI") THEN 193 c 194 IF(lev_histhf.GE.1) THEN 195 c 196 DO k=1, nlevSTD 197 c 198 c 199 c bb=clevSTD(k) 200 c 201 c IF(k.GE.2) THEN 202 IF(k.GE.2.AND.k.LE.12) bb2=clevSTD(k) 203 IF(k.GE.13.AND.k.LE.17) bb3=clevSTD(k) 204 c aa=clevSTD(k) 205 c bb=aa(1:lnblnk1(aa)) 206 c ENDIF 207 c 208 IF(bb2.EQ."850".or.bb2.EQ."200") THEN 209 c 210 CALL histdef(nid_hf, "u"//bb2, 211 . "Zonal wind "//bb2//"mb","m/s", 212 . iim,jjmp1,nhori, 1,1,1, -99, 32, 213 . "inst(X)", zstohf,zstohf) 214 c 215 CALL histdef(nid_hf, "v"//bb2, 216 . "Meridional wind "//bb2//"mb","m/s", 217 . iim,jjmp1,nhori, 1,1,1, -99, 32, 218 . "inst(X)", zstohf,zstohf) 219 c 220 ENDIF !bb2.EQ."850".or.bb2.EQ."200" 221 ENDDO !k=1, nlevSTD 222 c 223 CALL histdef(nid_hf, "topl", 224 . "Outgoing longwave radiation", "W/m2", 225 . iim,jjmp1,nhori, 1,1,1, -99, 32, 226 . "ave(X)", zstophy,zout) 227 c 228 CALL histdef(nid_hf, "precip","Total precipitation rate", 229 . "kg/(s*m2)",iim,jjmp1,nhori, 1,1,1, -99, 32, 230 . "ave(X)", zstophy,zout) 231 c 232 CALL histdef(nid_hf, "slp", 233 . "Mean sea-level pressure", "Pa", 234 . iim,jjmp1,nhori, 1,1,1, -99, 32, 235 . "inst(X)", zstohf,zout) 236 c 237 cIM 280504 BEG 238 ENDIF !(lev_histhf.GE.1) THEN 239 c 240 IF(lev_histhf.GE.2) THEN 241 c 242 DO k=1, nlevSTD 243 c 244 c bb=clevSTD(k) 245 c 246 c IF(k.GE.2) THEN 247 IF(k.GE.2.AND.k.LE.12) bb2=clevSTD(k) 248 IF(k.GE.13.AND.k.LE.17) bb3=clevSTD(k) 249 c aa=clevSTD(k) 250 c bb=aa(1:lnblnk1(aa)) 251 c ENDIF 252 c 253 IF(bb2.EQ."850".OR.bb2.EQ."500") THEN 254 c 255 CALL histdef(nid_hf, "t"//bb2, 256 . "Temperature "//bb2//"mb","K", 257 . iim,jjmp1,nhori, 1,1,1, -99, 32, 258 . "inst(X)", zstohf,zstohf) 259 c 260 CALL histdef(nid_hf, "q"//bb2, 261 . "Specific humidity "//bb2//"mb","kg/kg", 262 . iim,jjmp1,nhori, 1,1,1, -99, 32, 263 . "inst(X)", zstohf,zstohf) 264 c 265 ENDIF !bb2 266 c 267 IF(bb2.EQ."500") THEN 268 c 269 CALL histdef(nid_hf, "phi"//bb2, 270 . "Geopotential "//bb2//"mb", "m", 271 . iim,jjmp1,nhori, 1,1,1, -99, 32, 272 . "inst(X)", zstohf,zstohf) 273 c 274 CALL histdef(nid_hf, "w"//bb2, 275 . "Vertical motion "//bb2//"mb","Pa/s", 276 . iim,jjmp1,nhori, 1,1,1, -99, 32, 277 . "inst(X)", zstohf,zstohf) 278 ENDIF !bb2.EQ."500" 279 c 280 IF(bb3.EQ."50") THEN 281 c 282 CALL histdef(nid_hf, "t"//bb3, 283 . "Temperature "//bb3//"mb","K", 284 . iim,jjmp1,nhori, 1,1,1, -99, 32, 285 . "inst(X)", zstohf,zstohf) 286 c 287 CALL histdef(nid_hf, "u"//bb3, 288 . "Zonal wind "//bb3//"mb","m/s", 289 . iim,jjmp1,nhori, 1,1,1, -99, 32, 290 . "inst(X)", zstohf,zstohf) 291 c 292 CALL histdef(nid_hf, "v"//bb3, 293 . "Meridional wind "//bb3//"mb","m/s", 294 . iim,jjmp1,nhori, 1,1,1, -99, 32, 295 . "inst(X)", zstohf,zstohf) 296 c 297 ENDIF !bb3 298 c 299 ENDDO !k=1, nlevSTD 300 c 301 CALL histdef(nid_hf, "u10m", "Vent zonal 10m", "m/s", 302 . iim,jjmp1,nhori, 1,1,1, -99, 32, 303 . "inst(X)", zstohf,zout) 304 c 305 CALL histdef(nid_hf, "v10m", "Vent meridien 10m", "m/s", 306 . iim,jjmp1,nhori, 1,1,1, -99, 32, 307 . "inst(X)", zstohf,zout) 308 c 309 CALL histdef(nid_hf, "t2m", "Temperature 2m", "K", 310 . iim,jjmp1,nhori, 1,1,1, -99, 32, 311 . "inst(X)", zstohf,zout) 312 c 313 CALL histdef(nid_hf, "q2m", "Specific humidity", "kg/kg", 314 . iim,jjmp1,nhori, 1,1,1, -99, 32, 315 . "inst(X)", zstohf,zout) 316 c 317 CALL histdef(nid_hf, "psol", "Surface Pressure", "Pa", 318 . iim,jjmp1,nhori, 1,1,1, -99, 32, 319 . "inst(X)", zstohf,zout) 320 c 321 CALL histdef(nid_hf, "cldt", "Total cloudiness", "%", 322 . iim,jjmp1,nhori, 1,1,1, -99, 32, 323 . "ave(X)", zstohf,zout) 324 c 325 CALL histdef(nid_hf, "taux", 326 $ "Zonal wind stress","Pa", 327 $ iim,jjmp1,nhori, 1,1,1, -99, 32, 328 $ "ave(X)", zstohf,zout) 329 c 330 CALL histdef(nid_hf, "tauy", 331 $ "Meridional wind stress ", "Pa", 332 $ iim,jjmp1,nhori, 1,1,1, -99, 32, 333 $ "ave(X)", zstohf,zout) 334 c 335 CALL histdef(nid_hf, "prw", "Precipitable water", "kg/m2", 336 . iim,jjmp1,nhori, 1,1,1, -99, 32, 337 cIM 090904 . "ave(X)", zstohf,zout) 338 . "ave(X)", zstophy,zout) 339 c 340 CALL histdef(nid_hf, "sens", "Sensible heat flux", "W/m2", 341 . iim,jjmp1,nhori, 1,1,1, -99, 32, 342 cIM 090904 . "ave(X)", zstohf,zout) 343 . "ave(X)", zstophy,zout) 344 c 345 CALL histdef(nid_hf, "flat", "Latent heat flux", "W/m2", 346 . iim,jjmp1,nhori, 1,1,1, -99, 32, 347 . "ave(X)", zstohf,zout) 348 c 349 c CALL histdef(nid_hf, "snow_mass", "Snow Mass", "kg/m2", 350 c . iim,jjmp1,nhori, 1,1,1, -99, 32, 351 c . "ave(X)", zstohf,zout) 352 c 353 CALL histdef(nid_hf, "SWdnSFC", "SWdn at surface","W/m2", 354 . iim,jjmp1,nhori, 1,1,1,-99, 355 . 32, "ave(X)", zstohf,zout) 356 c 357 CALL histdef(nid_hf, "SWupSFC", "SWup at surface","W/m2", 358 . iim,jjmp1,nhori, 1,1,1,-99, 359 . 32, "ave(X)", zstohf,zout) 360 c 361 CALL histdef(nid_hf,"LWdnSFC","Down. IR rad. at surface", 362 . "W/m2", iim,jjmp1,nhori, 1,1,1, -99, 32, 363 . "ave(X)", zstohf,zout) 364 c 365 CALL histdef(nid_hf,"LWupSFC","Upwd. IR rad. at surface", 366 . "W/m2", iim,jjmp1,nhori, 1,1,1, -99, 32, 367 . "ave(X)", zstohf,zout) 368 c 369 CALL histdef(nid_hf, "SWdnTOA", "SWdn at TOA","W/m2", 370 . iim,jjmp1,nhori, 1,1,1,-99, 371 . 32, "ave(X)", zstohf,zout) 372 c 373 CALL histdef(nid_hf, "SWupTOA", "SWup at TOA","W/m2", 374 . iim,jjmp1,nhori, 1,1,1,-99, 375 . 32, "ave(X)", zstohf,zout) 376 c 377 DO k=1, nbteta 378 CALL histdef(nid_hf, "PV"//ctetaSTD(k), 379 $ "Vorticite potentielle "//ctetaSTD(k)//"K", 380 $ "1/(Pa*s)",iim,jjmp1,nhori, 1,1,1, -99, 381 $ 32, "inst(X)", zstohf,zout) 382 ENDDO !k=1, nbteta 383 c 384 c planetary boundary layer height 385 c 386 c ENDIF !1.EQ.0 387 c 388 ENDIF !(lev_histhf.GE.2) THEN 389 cIM 280504 END 390 c 391 ENDIF !type_run 392 c 393 CALL histend(nid_hf) 394 c 395 ENDIF ! ok_hf
Note: See TracChangeset
for help on using the changeset viewer.