- Timestamp:
- May 27, 2020, 4:52:16 PM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/branches/Ocean_skin/libf/phylmd/calcul_fluxs_mod.F90
r3319 r3687 13 13 fqsat, petAcoef, peqAcoef, petBcoef, peqBcoef, & 14 14 tsurf_new, evap, fluxlat, fluxsens, dflux_s, dflux_l, & 15 sens_prec_liq, sens_prec_sol, lat_prec_liq, lat_prec_sol )15 sens_prec_liq, sens_prec_sol, lat_prec_liq, lat_prec_sol, rhoa) 16 16 17 17 18 18 USE dimphy, ONLY : klon 19 19 USE indice_sol_mod 20 use sens_heat_rain_m, only: sens_heat_rain 20 21 21 22 INCLUDE "clesphys.h" … … 71 72 REAL, DIMENSION(klon), INTENT(IN) :: ps, q1lay 72 73 REAL, DIMENSION(klon), INTENT(IN) :: tsurf, p1lay, cal, beta, cdragh,cdragq 73 REAL, DIMENSION(klon), INTENT(IN) :: precip_rain, precip_snow ! pas utiles74 REAL, DIMENSION(klon), INTENT(IN) :: precip_rain, precip_snow 74 75 REAL, DIMENSION(klon), INTENT(IN) :: radsol, dif_grnd 75 76 REAL, DIMENSION(klon), INTENT(IN) :: t1lay, u1lay, v1lay,gustiness 76 77 REAL, INTENT(IN) :: fqsat ! correction factor on qsat (generally 0.98 over salty water, 1 everywhere else) 77 78 79 real, intent(in), optional:: rhoa(:) ! (knon) 80 ! density of moist air (kg / m3) 81 78 82 ! Parametres entree-sorties 79 83 !**************************************************************************************** … … 85 89 REAL, DIMENSION(klon), INTENT(OUT) :: tsurf_new, evap, fluxsens, fluxlat 86 90 REAL, DIMENSION(klon), INTENT(OUT) :: dflux_s, dflux_l 87 REAL, DIMENSION(klon), OPTIONAL :: sens_prec_liq, sens_prec_sol91 REAL, intent(out), OPTIONAL:: sens_prec_liq(:), sens_prec_sol(:) ! (knon) 88 92 REAL, DIMENSION(klon), OPTIONAL :: lat_prec_liq, lat_prec_sol 89 93 … … 140 144 dflux_s = 0. 141 145 dflux_l = 0. 142 if (PRESENT(sens_prec_liq)) sens_prec_liq = 0.143 if (PRESENT(sens_prec_sol)) sens_prec_sol = 0.144 146 if (PRESENT(lat_prec_liq)) lat_prec_liq = 0. 145 147 if (PRESENT(lat_prec_sol)) lat_prec_sol = 0. … … 267 269 ! precip_snow(i) 268 270 ! On calcule par rapport a T=0 269 if (PRESENT(sens_prec_liq)) & 270 sens_prec_liq(i) = rcw * (t1lay(i) - RTT) * & 271 precip_rain(i) 272 if (PRESENT(sens_prec_sol)) & 273 sens_prec_sol(i) = rcs * (t1lay(i) - RTT) * & 274 precip_snow(i) 271 if (PRESENT(sens_prec_liq)) sens_prec_liq(i) & 272 = - sens_heat_rain(precip_rain(i) + precip_snow(i), t1lay(i), & 273 q1lay(i), rhoa(i), rlvtt, tsurf_new(i), ps(i)) 274 if (PRESENT(sens_prec_sol)) sens_prec_sol(i) = 0. 275 275 if (PRESENT(lat_prec_liq)) & 276 276 lat_prec_liq(i) = precip_rain(i) * (RLVTT - RLVTT) … … 280 280 281 281 282 ! if (PRESENT(sens_prec_liq)) & 283 ! WRITE(*,*)' calculs_fluxs sens_prec_liq (min, max)', & 284 ! MINVAL(sens_prec_liq(1:knon)), MAXVAL(sens_prec_liq(1:knon)) 285 ! if (PRESENT(sens_prec_sol)) & 286 ! WRITE(*,*)' calculs_fluxs sens_prec_sol (min, max)', & 287 ! MINVAL(sens_prec_sol(1:knon)), MAXVAL(sens_prec_sol(1:knon)) 288 289 ! 290 !**************************************************************************************** 282 !************************************************************************** 291 283 ! 292 284 END SUBROUTINE calcul_fluxs
Note: See TracChangeset
for help on using the changeset viewer.