6 |
|
|
7 |
contains |
contains |
8 |
|
|
9 |
subroutine ini_histins(ok_newmicro) |
subroutine ini_histins |
10 |
|
|
11 |
! From phylmd/ini_histins.h, version 1.2, 2005/05/25 13:10:09 |
! From phylmd/ini_histins.h, version 1.2, 2005/05/25 13:10:09 |
12 |
|
|
15 |
use comconst, only: dtphys |
use comconst, only: dtphys |
16 |
use dimensions, only: iim, jjm, llm, nqmx |
use dimensions, only: iim, jjm, llm, nqmx |
17 |
use disvert_m, only: presnivs |
use disvert_m, only: presnivs |
18 |
use dynetat0_m, only: day_ref, annee_ref, rlatu, rlonv |
use dynetat0_m, only: rlatu, rlonv |
19 |
|
use dynetat0_chosen_m, only: day_ref, annee_ref |
20 |
USE histbeg_totreg_m, ONLY : histbeg_totreg |
USE histbeg_totreg_m, ONLY : histbeg_totreg |
21 |
USE histdef_m, ONLY : histdef |
USE histdef_m, ONLY : histdef |
22 |
USE histend_m, ONLY : histend |
USE histend_m, ONLY : histend |
23 |
USE histvert_m, ONLY : histvert |
USE histvert_m, ONLY : histvert |
24 |
use indicesol, only: nbsrf, clnsurf |
use indicesol, only: nbsrf, clnsurf |
25 |
use iniadvtrac_m, only: tname, ttext |
use infotrac_init_m, only: tname, ttext |
26 |
use nr_util, only: pi |
use nr_util, only: pi |
27 |
use phyetat0_m, only: itau_phy |
use phyetat0_m, only: itau_phy |
28 |
USE ymds2ju_m, only: ymds2ju |
USE ymds2ju_m, only: ymds2ju |
29 |
|
|
|
logical, intent(in):: ok_newmicro |
|
|
|
|
30 |
! Local: |
! Local: |
31 |
real zjulian, zsto, zout |
double precision julian |
32 |
|
real zsto, zout |
33 |
integer nhori, nvert, nsrf, iq, it |
integer nhori, nvert, nsrf, iq, it |
34 |
|
|
35 |
!------------------------------------------------------------------- |
!------------------------------------------------------------------- |
39 |
test_ok_instan: IF (ok_instan) THEN |
test_ok_instan: IF (ok_instan) THEN |
40 |
zsto = dtphys * ecrit_ins |
zsto = dtphys * ecrit_ins |
41 |
zout = dtphys * ecrit_ins |
zout = dtphys * ecrit_ins |
42 |
CALL ymds2ju(annee_ref, 1, day_ref, 0.0, zjulian) |
CALL ymds2ju(annee_ref, 1, day_ref, 0.0, julian) |
43 |
CALL histbeg_totreg("histins", rlonv(:iim) / pi * 180., & |
CALL histbeg_totreg("histins", rlonv(:iim) / pi * 180., & |
44 |
rlatu / pi * 180., 1, iim, & |
rlatu / pi * 180., 1, iim, & |
45 |
1, jjm + 1, itau_phy, zjulian, dtphys, nhori, nid_ins) |
1, jjm + 1, itau_phy, julian, dtphys, nhori, nid_ins) |
46 |
print *, 'itau_phy = ', itau_phy |
print *, 'itau_phy = ', itau_phy |
47 |
print *, "zjulian = ", zjulian |
print *, "julian = ", julian |
48 |
CALL histvert(nid_ins, "presnivs", "Vertical levels", "mb", & |
CALL histvert(nid_ins, "presnivs", "Vertical levels", "mb", & |
49 |
presnivs/100., nvert) |
presnivs/100., nvert) |
50 |
|
|
51 |
! Once: |
! Once: |
52 |
CALL histdef(nid_ins, "phis", "surface geopotential", "m2 s-2", & |
CALL histdef(nid_ins, "phis", "surface geopotential", "m2 s-2", & |
53 |
iim, jjm + 1, nhori, 1, 1, 1, -99, & |
iim, jjm + 1, nhori, 1, 1, 1, -99, & |
54 |
"once", zsto, zout) |
"once", zsto, zout) |
104 |
CALL histdef(nid_ins, "sols", "Solar rad. at surf.", "W/m2", & |
CALL histdef(nid_ins, "sols", "Solar rad. at surf.", "W/m2", & |
105 |
iim, jjm + 1, nhori, 1, 1, 1, -99, & |
iim, jjm + 1, nhori, 1, 1, 1, -99, & |
106 |
"inst(X)", zsto, zout) |
"inst(X)", zsto, zout) |
107 |
CALL histdef(nid_ins, "soll", "IR rad. at surface", "W/m2", & |
CALL histdef(nid_ins, "rls", "surface net downward longwave flux", & |
108 |
iim, jjm + 1, nhori, 1, 1, 1, -99, & |
"W/m2", iim, jjm + 1, nhori, 1, 1, 1, -99, "inst(X)", zsto, zout) |
|
"inst(X)", zsto, zout) |
|
109 |
CALL histdef(nid_ins, "solldown", "Down. IR rad. at surface", & |
CALL histdef(nid_ins, "solldown", "Down. IR rad. at surface", & |
110 |
"W/m2", iim, jjm + 1, nhori, 1, 1, 1, -99, & |
"W/m2", iim, jjm + 1, nhori, 1, 1, 1, -99, & |
111 |
"inst(X)", zsto, zout) |
"inst(X)", zsto, zout) |
141 |
jjm + 1, nhori, 1, 1, 1, -99, "inst(X)", zsto, zout) |
jjm + 1, nhori, 1, 1, 1, -99, "inst(X)", zsto, zout) |
142 |
|
|
143 |
DO nsrf = 1, nbsrf |
DO nsrf = 1, nbsrf |
|
call histdef(nid_ins, "pourc_"//clnsurf(nsrf), & |
|
|
"% "//clnsurf(nsrf), "%", & |
|
|
iim, jjm + 1, nhori, 1, 1, 1, -99, & |
|
|
"inst(X)", zsto, zout) |
|
144 |
call histdef(nid_ins, "fract_"//clnsurf(nsrf), & |
call histdef(nid_ins, "fract_"//clnsurf(nsrf), & |
145 |
"Fraction "//clnsurf(nsrf), "1", & |
"Fraction "//clnsurf(nsrf), "1", & |
146 |
iim, jjm + 1, nhori, 1, 1, 1, -99, & |
iim, jjm + 1, nhori, 1, 1, 1, -99, & |
264 |
CALL histdef(nid_ins, "dtlw0", "CS LW radiation dT", & |
CALL histdef(nid_ins, "dtlw0", "CS LW radiation dT", & |
265 |
"K/s", iim, jjm + 1, nhori, llm, 1, llm, nvert, "inst(X)", & |
"K/s", iim, jjm + 1, nhori, llm, 1, llm, nvert, "inst(X)", & |
266 |
zsto, zout) |
zsto, zout) |
267 |
|
CALL histdef(nid_ins, "pmflxr", "convective precipitation liquid", "", & |
268 |
if (ok_newmicro) then |
iim, jjm + 1, nhori, llm, 1, llm, nvert, "inst(X)", zsto, zout) |
269 |
CALL histdef(nid_ins, "re", "cloud droplet effective radius", & |
CALL histdef(nid_ins, "re", "cloud droplet effective radius", & |
270 |
"micrometer", iim, jjm + 1, nhori, llm, 1, llm, nvert, & |
"micrometer", iim, jjm + 1, nhori, llm, 1, llm, nvert, & |
271 |
"inst(X)", zsto, zout) |
"inst(X)", zsto, zout) |
272 |
CALL histdef(nid_ins, "fl", & |
CALL histdef(nid_ins, "fl", & |
273 |
"denominator of Cloud droplet effective radius", "", iim, & |
"denominator of cloud droplet effective radius", "", iim, & |
274 |
jjm + 1, nhori, llm, 1, llm, nvert, "inst(X)", zsto, zout) |
jjm + 1, nhori, llm, 1, llm, nvert, "inst(X)", zsto, zout) |
|
end if |
|
275 |
|
|
276 |
DO it = 1, nqmx - 2 |
DO it = 1, nqmx - 2 |
277 |
! champ 2D |
! champ 2D |