8 |
cdhmax, ksta, ksta_ter, ok_kzmin, ftsoil, qsol, paprs, pplay, fsnow, & |
cdhmax, ksta, ksta_ter, ok_kzmin, ftsoil, qsol, paprs, pplay, fsnow, & |
9 |
qsurf, evap, falbe, fluxlat, rain_fall, snow_f, fsolsw, fsollw, frugs, & |
qsurf, evap, falbe, fluxlat, rain_fall, snow_f, fsolsw, fsollw, frugs, & |
10 |
agesno, rugoro, d_t, d_q, d_u, d_v, d_ts, flux_t, flux_q, flux_u, & |
agesno, rugoro, d_t, d_q, d_u, d_v, d_ts, flux_t, flux_q, flux_u, & |
11 |
flux_v, cdragh, cdragm, q2, dflux_t, dflux_q, ycoefh, zu1, zv1, t2m, & |
flux_v, cdragh, cdragm, q2, dflux_t, dflux_q, ycoefh, t2m, q2m, & |
12 |
q2m, u10m_srf, v10m_srf, pblh, capcl, oliqcl, cteicl, pblt, therm, & |
u10m_srf, v10m_srf, pblh, capcl, oliqcl, cteicl, pblt, therm, trmb1, & |
13 |
trmb1, trmb2, trmb3, plcl, fqcalving, ffonte, run_off_lic_0) |
trmb2, trmb3, plcl, fqcalving, ffonte, run_off_lic_0) |
14 |
|
|
15 |
! From phylmd/clmain.F, version 1.6, 2005/11/16 14:47:19 |
! From phylmd/clmain.F, version 1.6, 2005/11/16 14:47:19 |
16 |
! Author: Z. X. Li (LMD/CNRS), date: 1993/08/18 |
! Author: Z. X. Li (LMD/CNRS), date: 1993/08/18 |
21 |
! ne tient pas compte de la diff\'erentiation des sous-fractions |
! ne tient pas compte de la diff\'erentiation des sous-fractions |
22 |
! de sol. |
! de sol. |
23 |
|
|
|
! Pour pouvoir extraire les coefficients d'\'echanges et le vent |
|
|
! dans la premi\`ere couche, trois champs ont \'et\'e cr\'e\'es : "ycoefh", |
|
|
! "zu1" et "zv1". Nous avons moyenn\'e les valeurs de ces trois |
|
|
! champs sur les quatre sous-surfaces du mod\`ele. |
|
|
|
|
24 |
use clqh_m, only: clqh |
use clqh_m, only: clqh |
25 |
use clvent_m, only: clvent |
use clvent_m, only: clvent |
26 |
use coefkz_m, only: coefkz |
use coefkz_m, only: coefkz |
107 |
! IM "slab" ocean |
! IM "slab" ocean |
108 |
|
|
109 |
REAL, intent(out):: ycoefh(klon, klev) |
REAL, intent(out):: ycoefh(klon, klev) |
110 |
REAL, intent(out):: zu1(klon), zv1(klon) |
! Pour pouvoir extraire les coefficients d'\'echange, le champ |
111 |
|
! "ycoefh" a \'et\'e cr\'e\'e. Nous avons moyenn\'e les valeurs de |
112 |
|
! ce champ sur les quatre sous-surfaces du mod\`ele. |
113 |
|
|
114 |
REAL, INTENT(inout):: t2m(klon, nbsrf), q2m(klon, nbsrf) |
REAL, INTENT(inout):: t2m(klon, nbsrf), q2m(klon, nbsrf) |
115 |
|
|
116 |
REAL, INTENT(inout):: u10m_srf(:, :), v10m_srf(:, :) ! (klon, nbsrf) |
REAL, INTENT(inout):: u10m_srf(:, :), v10m_srf(:, :) ! (klon, nbsrf) |
231 |
cdragm = 0. |
cdragm = 0. |
232 |
dflux_t = 0. |
dflux_t = 0. |
233 |
dflux_q = 0. |
dflux_q = 0. |
|
zu1 = 0. |
|
|
zv1 = 0. |
|
234 |
ypct = 0. |
ypct = 0. |
235 |
yqsurf = 0. |
yqsurf = 0. |
236 |
yrain_f = 0. |
yrain_f = 0. |
471 |
cdragm(i) = cdragm(i) + coefm(j, 1) |
cdragm(i) = cdragm(i) + coefm(j, 1) |
472 |
dflux_t(i) = dflux_t(i) + y_dflux_t(j) |
dflux_t(i) = dflux_t(i) + y_dflux_t(j) |
473 |
dflux_q(i) = dflux_q(i) + y_dflux_q(j) |
dflux_q(i) = dflux_q(i) + y_dflux_q(j) |
|
zu1(i) = zu1(i) + u1lay(j) * ypct(j) |
|
|
zv1(i) = zv1(i) + v1lay(j) * ypct(j) |
|
474 |
END DO |
END DO |
475 |
IF (nsrf == is_ter) THEN |
IF (nsrf == is_ter) THEN |
476 |
qsol(ni(:knon)) = yqsol(:knon) |
qsol(ni(:knon)) = yqsol(:knon) |