1 |
module conf_phys_m |
2 |
|
3 |
implicit none |
4 |
|
5 |
integer, protected:: iflag_pbl = 1 ! for the planetary boundary layer |
6 |
! 6 : Mellor and Yamada 2.0 |
7 |
! 8 : Mellor and Yamada 2.5 |
8 |
|
9 |
REAL, protected:: rad_chau1 = 13., rad_chau2 = 9. |
10 |
! effective radii of liquid cloud droplets, in micrometers |
11 |
|
12 |
real:: epmax = 0.993 ! \'efficacit\'e de pr\'ecipitation |
13 |
integer:: iflag_clw = 0 |
14 |
|
15 |
contains |
16 |
|
17 |
subroutine conf_phys |
18 |
|
19 |
! From phylmd/conf_phys.F90, version 1.7 2005/07/05 07:21:23 |
20 |
|
21 |
! Configuration de la "physique" de LMDZ. |
22 |
|
23 |
USE clesphys, ONLY: read_clesphys |
24 |
use clesphys2, only: read_clesphys2 |
25 |
USE comfisrtilp, ONLY: cld_lc_con, cld_lc_lsc, cld_tau_con, & |
26 |
cld_tau_lsc, coef_eva, ffallv_con, ffallv_lsc, iflag_pdf, reevap_ice |
27 |
use nr_util, only: assert |
28 |
use unit_nml_m, only: unit_nml |
29 |
USE yomcst, ONLY: read_YOMCST |
30 |
|
31 |
namelist /conf_phys_nml/ epmax, iflag_clw, cld_lc_lsc, cld_lc_con, & |
32 |
cld_tau_lsc, cld_tau_con, ffallv_lsc, ffallv_con, coef_eva, & |
33 |
reevap_ice, iflag_pdf, iflag_pbl |
34 |
|
35 |
namelist /nuagecom/ rad_chau1, rad_chau2 |
36 |
|
37 |
!----------------------------------------------------------- |
38 |
|
39 |
print *, "Call sequence information: conf_phys" |
40 |
call read_clesphys2 |
41 |
call read_YOMCST |
42 |
|
43 |
cld_lc_lsc = 2.6e-4 |
44 |
cld_lc_con = 2.6e-4 |
45 |
cld_tau_lsc = 3600. |
46 |
cld_tau_con = 3600. |
47 |
ffallv_lsc = 1. |
48 |
ffallv_con = 1. |
49 |
coef_eva = 2.e-5 |
50 |
reevap_ice = .false. |
51 |
iflag_pdf = 0 |
52 |
|
53 |
print *, "Enter namelist 'conf_phys_nml'." |
54 |
read(unit=*, nml=conf_phys_nml) |
55 |
write(unit_nml, nml=conf_phys_nml) |
56 |
|
57 |
call assert(any(iflag_pbl == [0, 1, 6, 8, 9]), & |
58 |
"conf_phys: bad value for iflag_pbl") |
59 |
call read_clesphys |
60 |
|
61 |
print *, "Enter namelist 'nuagecom'." |
62 |
read(unit=*, nml=nuagecom) |
63 |
write(unit_nml, nml=nuagecom) |
64 |
|
65 |
end subroutine conf_phys |
66 |
|
67 |
end module conf_phys_m |