11 real,
allocatable,
save::
c_mob(:, :)
15 real,
allocatable,
save::
a2(:, :)
49 print *,
"Call sequence information: alloc_coefoz"
73 use netcdf95, only: nf95_open, nf95_close
74 use netcdf
, only: nf90_nowrite
83 integer,
intent(in):: julien
85 REAL,
intent(in):: rlat(:)
88 real,
intent(in):: paprs(:, :)
91 real,
intent(in):: pplay(:, :)
111 real,
parameter:: amu = 1.6605402e-27
113 real,
parameter:: Clx = 3.8e-9
121 call assert((/
size(rlat),
size(paprs, 1),
size(pplay, 1)/) ==
klon, &
122 "regr_pr_comb_coefoz klon")
123 call assert((/
size(paprs, 2) - 1,
size(pplay, 2)/) ==
nbp_lev, &
124 "regr_pr_comb_coefoz nbp_lev")
127 if (
is_mpi_root)
call nf95_open(
"coefoz_LMDZ.nc", nf90_nowrite, ncid)
130 call regr_pr_av(ncid, (/
"a2 ",
"a4 ",
"a6 ", &
131 "P_net_Mob",
"r_Mob ",
"temp_Mob ",
"R_Het "/), julien, &
134 a4_mass = coefoz(:, :, 2) * 48. / 29.
138 a6_mass = coefoz(:, :, 3) / (1e4 * 29. * amu)
142 call regr_pr_int(ncid,
"Sigma_Mob", julien,
plev, pplay, top_value=0., &
146 c_mob = (coefoz(:, :, 4) -
a2 * coefoz(:, :, 5) &
147 - coefoz(:, :, 3) * coefoz(:, :, 1)) * 48. / 29. &
subroutine regr_pr_av(ncid, name, julien, press_in_edg, paprs, v3)
real, dimension(:,:), allocatable, save r_het_interm
real, dimension(:,:), allocatable, save a2
real, dimension(:), allocatable, save press_in_edg
subroutine regr_pr_comb_coefoz(julien, rlat, paprs, pplay)
real, dimension(:,:), allocatable, save a4_mass
logical, save is_mpi_root
real, dimension(:,:), allocatable, save c_mob
subroutine regr_pr_int(ncid, name, julien, plev, pplay, top_value, v3)
real, dimension(:), pointer, save plev
real, dimension(:,:), allocatable, save a6_mass