/[lmdze]/trunk/phylmd/conf_phys.f
ViewVC logotype

Contents of /trunk/phylmd/conf_phys.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 118 - (show annotations)
Thu Dec 18 17:30:24 2014 UTC (9 years, 4 months ago) by guez
File size: 3604 byte(s)
In file grilles_gcm.nc, renamed variable phis to orog, deleted
variable presnivs.

Removed variable bug_ozone from module clesphys.

In procedure ozonecm, moved computation of sint and cost out of the
loops on horizontal position and vertical level. Inverted the order of
the two loops. We can then move all computations from slat to aprim
out of the loop on vertical levels. Created variable slat2, following
LMDZ. Moved the limitation of column-density of ozone in cell at 1e-12
from radlwsw to ozonecm, following LMDZ.

Removed unused arguments u, albsol, rh, cldfra, rneb, diafra, cldliq,
pmflxr, pmflxs, prfl, psfl of phytrac.

In procedure yamada4, for all the arrays, replaced the dimension klon
by ngrid. At the end of the procedure, for the computation of kmn,kn,
kq and q2, changed the upper limit of the loop index from klon to ngrid.

In radlwsw, for the calculation of pozon, removed the factor
paprs(iof+i, 1)/101325, as in LMDZ. In procedure sw, removed the
factor 101325.0/PPSOL(JL), as in LMDZ.

1 module conf_phys_m
2
3 implicit none
4
5 integer:: iflag_pbl = 1 ! for the planetary boundary layer
6 REAL:: rad_chau1 = 13., rad_chau2 = 9.
7
8 contains
9
10 subroutine conf_phys
11
12 ! From phylmd/conf_phys.F90, version 1.7 2005/07/05 07:21:23
13
14 ! Configuration de la "physique" de LMDZ.
15
16 USE clesphys, ONLY: cdhmax, cdmmax, cfc11_ppt, cfc12_ppt, ch4_ppb, &
17 co2_ppm, ecrit_day, ecrit_hf, ecrit_hf2mth, ecrit_ins, ecrit_mth, &
18 ecrit_reg, ecrit_tra, ksta, ksta_ter, latmax_ins, latmin_ins, &
19 lev_histday, lev_histhf, lev_histmth, lonmax_ins, lonmin_ins, &
20 n2o_ppb, ok_isccp, ok_kzmin, ok_regdyn, overlap, rcfc11, rcfc12, &
21 rch4, rco2, rn2o, solaire, top_height, type_run
22 use clesphys2, only: read_clesphys2
23 USE comfisrtilp, ONLY: cld_lc_con, cld_lc_lsc, cld_tau_con, &
24 cld_tau_lsc, coef_eva, ffallv_con, ffallv_lsc, iflag_pdf, reevap_ice
25 USE conema3_m, ONLY: epmax, iflag_clw, ok_adj_ema
26 use unit_nml_m, only: unit_nml
27 USE yomcst, ONLY: r_ecc, r_incl, r_peri
28
29 namelist /conf_phys_nml/ R_ecc, R_peri, R_incl, solaire, co2_ppm, &
30 CH4_ppb, N2O_ppb, CFC11_ppt, CFC12_ppt, epmax, ok_adj_ema, &
31 iflag_clw, cld_lc_lsc, cld_lc_con, cld_tau_lsc, cld_tau_con, &
32 ffallv_lsc, ffallv_con, coef_eva, reevap_ice, iflag_pdf, &
33 top_height, overlap, cdmmax, cdhmax, ksta, ksta_ter, &
34 ok_kzmin, iflag_pbl, lev_histhf, lev_histday, lev_histmth, &
35 type_run, ok_isccp, ok_regdyn, lonmin_ins, lonmax_ins, &
36 latmin_ins, latmax_ins, ecrit_ins, ecrit_hf, ecrit_hf2mth, &
37 ecrit_day, ecrit_mth, ecrit_tra, ecrit_reg
38
39 namelist /nuagecom/ rad_chau1, rad_chau2
40
41 !-----------------------------------------------------------
42
43 print *, "Call sequence information: conf_phys"
44 call read_clesphys2
45
46 R_ecc = 0.016715 ! AMIP II
47 R_peri = 102.7 ! AMIP II
48 R_incl = 23.441 ! AMIP II
49 solaire = 1365. ! AMIP II
50 co2_ppm = 348. ! AMIP II
51 CH4_ppb = 1650.
52 N2O_ppb = 306.
53 CFC11_ppt = 280.
54 CFC12_ppt = 484.
55 epmax = .993
56 ok_adj_ema = .false.
57 iflag_clw = 0
58 cld_lc_lsc = 2.6e-4
59 cld_lc_con = 2.6e-4
60 cld_tau_lsc = 3600.
61 cld_tau_con = 3600.
62 ffallv_lsc = 1.
63 ffallv_con = 1.
64 coef_eva = 2.e-5
65 reevap_ice = .false.
66 iflag_pdf = 0
67 top_height = 3
68 overlap = 3
69 cdmmax = 1.3E-3
70 cdhmax = 1.1E-3
71 ksta = 1.0e-10
72 ksta_ter = 1.0e-10
73 ok_kzmin = .true.
74 lev_histhf = 0
75 lev_histday = 1
76 lev_histmth = 2
77 type_run = 'AMIP'
78 ok_isccp = .false.
79 ok_regdyn = .false.
80 lonmin_ins = 100.
81 lonmax_ins = 130.
82 latmin_ins = -20.
83 latmax_ins = 20.
84 ecrit_ins = NINT(86400./48.)
85 ecrit_hf = NINT(86400. *0.25)
86 ecrit_hf2mth = 4*30 ! ecriture mens. a partir de val. inst. toutes les 6h
87 ecrit_day = 86400
88 ecrit_mth = 86400
89 ecrit_tra = 1
90 ecrit_reg = NINT(86400. *0.25) ! 4 fois par jour
91
92 print *, "Enter namelist 'conf_phys_nml'."
93 read(unit=*, nml=conf_phys_nml)
94 write(unit_nml, nml=conf_phys_nml)
95
96 RCO2 = co2_ppm * 1.0e-06 * 44.011/28.97
97 RCH4 = CH4_ppb * 1.0E-09 * 16.043/28.97
98 RN2O = N2O_ppb * 1.0E-09 * 44.013/28.97
99 RCFC11=CFC11_ppt* 1.0E-12 * 137.3686/28.97
100 RCFC12 = CFC12_ppt * 1.0E-12 * 120.9140/28.97
101
102 print *, ' RCO2 = ', RCO2
103 print *, ' RCH4 = ', RCH4
104 print *, ' RN2O = ', RN2O
105 print *, ' RCFC11 = ', RCFC11
106 print *, ' RCFC12 = ', RCFC12
107
108 print *, "Enter namelist 'nuagecom'."
109 read(unit=*, nml=nuagecom)
110 write(unit_nml, nml=nuagecom)
111
112 end subroutine conf_phys
113
114 end module conf_phys_m

  ViewVC Help
Powered by ViewVC 1.1.21