30 |
use conflx_m, only: conflx |
use conflx_m, only: conflx |
31 |
USE ctherm, ONLY: iflag_thermals, nsplit_thermals |
USE ctherm, ONLY: iflag_thermals, nsplit_thermals |
32 |
use diagcld2_m, only: diagcld2 |
use diagcld2_m, only: diagcld2 |
33 |
USE dimens_m, ONLY: llm, nqmx |
USE dimensions, ONLY: llm, nqmx |
34 |
USE dimphy, ONLY: klon |
USE dimphy, ONLY: klon |
35 |
USE dimsoil, ONLY: nsoilmx |
USE dimsoil, ONLY: nsoilmx |
36 |
use drag_noro_m, only: drag_noro |
use drag_noro_m, only: drag_noro |
176 |
|
|
177 |
! Variables li\'ees \`a la convection d'Emanuel : |
! Variables li\'ees \`a la convection d'Emanuel : |
178 |
REAL, save:: Ma(klon, llm) ! undilute upward mass flux |
REAL, save:: Ma(klon, llm) ! undilute upward mass flux |
|
REAL, save:: qcondc(klon, llm) ! in-cld water content from convect |
|
179 |
REAL, save:: sig1(klon, llm), w01(klon, llm) |
REAL, save:: sig1(klon, llm), w01(klon, llm) |
180 |
|
|
181 |
! Variables pour la couche limite (Alain Lahellec) : |
! Variables pour la couche limite (Alain Lahellec) : |
236 |
real, save:: clwcon(klon, llm), rnebcon(klon, llm) |
real, save:: clwcon(klon, llm), rnebcon(klon, llm) |
237 |
real, save:: clwcon0(klon, llm), rnebcon0(klon, llm) |
real, save:: clwcon0(klon, llm), rnebcon0(klon, llm) |
238 |
|
|
239 |
REAL rhcl(klon, llm) ! humiditi relative ciel clair |
REAL rhcl(klon, llm) ! humidit\'e relative ciel clair |
240 |
REAL dialiq(klon, llm) ! eau liquide nuageuse |
REAL dialiq(klon, llm) ! eau liquide nuageuse |
241 |
REAL diafra(klon, llm) ! fraction nuageuse |
REAL diafra(klon, llm) ! fraction nuageuse |
242 |
REAL cldliq(klon, llm) ! eau liquide nuageuse |
REAL cldliq(klon, llm) ! eau liquide nuageuse |
371 |
REAL ue_lay(klon, llm) ! transport zonal de l'energie a chaque niveau vert. |
REAL ue_lay(klon, llm) ! transport zonal de l'energie a chaque niveau vert. |
372 |
REAL uq_lay(klon, llm) ! transport zonal de l'eau a chaque niveau vert. |
REAL uq_lay(klon, llm) ! transport zonal de l'eau a chaque niveau vert. |
373 |
|
|
|
real date0 |
|
374 |
REAL tsol(klon) |
REAL tsol(klon) |
375 |
|
|
376 |
REAL d_t_ec(klon, llm) |
REAL d_t_ec(klon, llm) |
475 |
! Initialisation des sorties |
! Initialisation des sorties |
476 |
|
|
477 |
call ini_histins(dtphys, ok_newmicro) |
call ini_histins(dtphys, ok_newmicro) |
|
CALL ymds2ju(annee_ref, 1, day_ref, 0., date0) |
|
|
! Positionner date0 pour initialisation de ORCHIDEE |
|
|
print *, 'physiq date0: ', date0 |
|
478 |
CALL phyredem0 |
CALL phyredem0 |
479 |
ENDIF test_firstcal |
ENDIF test_firstcal |
480 |
|
|
625 |
if (conv_emanuel) then |
if (conv_emanuel) then |
626 |
CALL concvl(paprs, play, t_seri, q_seri, u_seri, v_seri, sig1, w01, & |
CALL concvl(paprs, play, t_seri, q_seri, u_seri, v_seri, sig1, w01, & |
627 |
d_t_con, d_q_con, d_u_con, d_v_con, rain_con, ibas_con, itop_con, & |
d_t_con, d_q_con, d_u_con, d_v_con, rain_con, ibas_con, itop_con, & |
628 |
upwd, dnwd, Ma, cape, iflagctrl, qcondc, pmflxr, da, phi, mp) |
upwd, dnwd, Ma, cape, iflagctrl, clwcon0, pmflxr, da, phi, mp) |
629 |
snow_con = 0. |
snow_con = 0. |
|
clwcon0 = qcondc |
|
630 |
mfu = upwd + dnwd |
mfu = upwd + dnwd |
631 |
|
|
632 |
zqsat = MIN(0.5, r2es * FOEEW(t_seri, rtt >= t_seri) / play) |
zqsat = MIN(0.5, r2es * FOEEW(t_seri, rtt >= t_seri) / play) |
699 |
|
|
700 |
! Caclul des ratqs |
! Caclul des ratqs |
701 |
|
|
|
! ratqs convectifs \`a l'ancienne en fonction de (q(z = 0) - q) / q |
|
|
! on \'ecrase le tableau ratqsc calcul\'e par clouds_gno |
|
702 |
if (iflag_cldcon == 1) then |
if (iflag_cldcon == 1) then |
703 |
|
! ratqs convectifs \`a l'ancienne en fonction de (q(z = 0) - q) / q |
704 |
|
! on \'ecrase le tableau ratqsc calcul\'e par clouds_gno |
705 |
do k = 1, llm |
do k = 1, llm |
706 |
do i = 1, klon |
do i = 1, klon |
707 |
if(ptconv(i, k)) then |
if(ptconv(i, k)) then |
735 |
ratqs = ratqss |
ratqs = ratqss |
736 |
endif |
endif |
737 |
|
|
738 |
CALL fisrtilp(dtphys, paprs, play, t_seri, q_seri, ptconv, ratqs, & |
CALL fisrtilp(dtphys, paprs, play, t_seri, q_seri, ptconv, ratqs, d_t_lsc, & |
739 |
d_t_lsc, d_q_lsc, d_ql_lsc, rneb, cldliq, rain_lsc, snow_lsc, & |
d_q_lsc, d_ql_lsc, rneb, cldliq, rain_lsc, snow_lsc, pfrac_impa, & |
740 |
pfrac_impa, pfrac_nucl, pfrac_1nucl, frac_impa, frac_nucl, prfl, & |
pfrac_nucl, pfrac_1nucl, frac_impa, frac_nucl, prfl, psfl, rhcl) |
|
psfl, rhcl) |
|
741 |
|
|
742 |
WHERE (rain_lsc < 0) rain_lsc = 0. |
WHERE (rain_lsc < 0) rain_lsc = 0. |
743 |
WHERE (snow_lsc < 0) snow_lsc = 0. |
WHERE (snow_lsc < 0) snow_lsc = 0. |