/[lmdze]/trunk/phylmd/Interface_surf/interfsurf_hq.f
ViewVC logotype

Diff of /trunk/phylmd/Interface_surf/interfsurf_hq.f

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 305 by guez, Tue Sep 11 11:08:38 2018 UTC revision 308 by guez, Tue Sep 18 15:14:40 2018 UTC
# Line 4  module interfsurf_hq_m Line 4  module interfsurf_hq_m
4    
5  contains  contains
6    
7    SUBROUTINE interfsurf_hq(julien, mu0, nisurf, knindex, tsoil, qsol, u1_lay, &    SUBROUTINE interfsurf_hq(julien, mu0, nisurf, knindex, tsoil, qsol, u1lay, &
8         v1_lay, temp_air, spechum, tq_cdrag, tAcoef, qAcoef, tBcoef, qBcoef, &         v1lay, temp_air, spechum, cdragh, tAcoef, qAcoef, tBcoef, qBcoef, &
9         rain_fall, snow_fall, rugos, rugoro, snow, qsurf, ts, p1lay, ps, &         rain_fall, snow_fall, rugos, rugoro, snow, qsurf, ts, p1lay, ps, &
10         radsol, evap, flux_t, fluxlat, dflux_l, dflux_s, tsurf_new, albedo, &         radsol, evap, flux_t, fluxlat, dflux_l, dflux_s, tsurf_new, albedo, &
11         z0_new, pctsrf_new_sic, agesno, fqcalving, ffonte, run_off_lic_0, &         z0_new, pctsrf_new_sic, agesno, fqcalving, ffonte, run_off_lic_0, &
# Line 40  contains Line 40  contains
40      REAL, intent(INOUT):: qsol(:) ! (knon)      REAL, intent(INOUT):: qsol(:) ! (knon)
41      ! column-density of water in soil, in kg m-2      ! column-density of water in soil, in kg m-2
42    
43      real, intent(IN):: u1_lay(:), v1_lay(:) ! (knon) vitesse 1ere couche      real, intent(IN):: u1lay(:), v1lay(:) ! (knon) vitesse 1ere couche
44    
45      real, intent(IN):: temp_air(:) ! (knon) temperature de l'air 1ere couche      real, intent(IN):: temp_air(:) ! (knon) temperature de l'air 1ere couche
46      real, intent(IN):: spechum(:) ! (knon) humidite specifique 1ere couche      real, intent(IN):: spechum(:) ! (knon) humidite specifique 1ere couche
47      real, intent(IN):: tq_cdrag(:) ! (knon) coefficient d'echange      real, intent(IN):: cdragh(:) ! (knon) coefficient d'echange
48    
49      real, intent(IN):: tAcoef(:), qAcoef(:) ! (knon)      real, intent(IN):: tAcoef(:), qAcoef(:) ! (knon)
50      ! coefficients A de la r\'esolution de la couche limite pour t et q      ! coefficients A de la r\'esolution de la couche limite pour t et q
# Line 65  contains Line 65  contains
65      real, intent(IN):: ts(:) ! (knon) temp\'erature de surface      real, intent(IN):: ts(:) ! (knon) temp\'erature de surface
66      real, intent(IN):: p1lay(:) ! (knon) pression 1er niveau (milieu de couche)      real, intent(IN):: p1lay(:) ! (knon) pression 1er niveau (milieu de couche)
67      real, intent(IN):: ps(:) ! (knon) pression au sol      real, intent(IN):: ps(:) ! (knon) pression au sol
68      REAL, INTENT(IN):: radsol(:) ! (knon) rayonnement net au sol (LW + SW)  
69        REAL, INTENT(IN):: radsol(:) ! (knon)
70        ! surface net downward radiative flux, in W / m2
71    
72      real, intent(OUT):: evap(:) ! (knon) evaporation totale      real, intent(OUT):: evap(:) ! (knon) evaporation totale
73    
74      real, intent(OUT):: flux_t(:) ! (knon) flux de chaleur sensible      real, intent(OUT):: flux_t(:) ! (knon) flux de chaleur sensible
# Line 124  contains Line 127  contains
127         CALL soil(is_ter, snow, ts, tsoil, soilcap, soilflux)         CALL soil(is_ter, snow, ts, tsoil, soilcap, soilflux)
128         cal = RCPD / soilcap         cal = RCPD / soilcap
129    
130         CALL calcul_fluxs(ts, p1lay, cal, beta, tq_cdrag, ps, qsurf, &         CALL calcul_fluxs(ts, p1lay, cal, beta, cdragh, ps, qsurf, &
131              radsol + soilflux, temp_air, spechum, u1_lay, v1_lay, tAcoef, &              radsol + soilflux, temp_air, spechum, u1lay, v1lay, tAcoef, &
132              qAcoef, tBcoef, qBcoef, tsurf_new, evap, fluxlat, flux_t, dflux_s, &              qAcoef, tBcoef, qBcoef, tsurf_new, evap, fluxlat, flux_t, dflux_s, &
133              dflux_l, dif_grnd = 0.)              dflux_l, dif_grnd = 0.)
134         CALL fonte_neige(is_ter, rain_fall, snow_fall, snow, qsol, &         CALL fonte_neige(is_ter, rain_fall, snow_fall, snow, qsol, &
# Line 143  contains Line 146  contains
146         call limit_read_sst(julien, knindex, tsurf)         call limit_read_sst(julien, knindex, tsurf)
147         cal = 0.         cal = 0.
148         beta = 1.         beta = 1.
149         call calcul_fluxs(tsurf, p1lay, cal, beta, tq_cdrag, ps, qsurf, radsol, &         call calcul_fluxs(tsurf, p1lay, cal, beta, cdragh, ps, qsurf, radsol, &
150              temp_air, spechum, u1_lay, v1_lay, tAcoef, qAcoef, tBcoef, qBcoef, &              temp_air, spechum, u1lay, v1lay, tAcoef, qAcoef, tBcoef, qBcoef, &
151              tsurf_new, evap, fluxlat, flux_t, dflux_s, dflux_l, dif_grnd = 0.)              tsurf_new, evap, fluxlat, flux_t, dflux_s, dflux_l, dif_grnd = 0.)
152         agesno = 0.         agesno = 0.
153         albedo = alboc_cd(mu0) * fmagic         albedo = alboc_cd(mu0) * fmagic
# Line 167  contains Line 170  contains
170         cal = RCPD / soilcap         cal = RCPD / soilcap
171         tsurf = tsurf_new         tsurf = tsurf_new
172         beta = 1.         beta = 1.
173         CALL calcul_fluxs(tsurf, p1lay, cal, beta, tq_cdrag, ps, qsurf, &         CALL calcul_fluxs(tsurf, p1lay, cal, beta, cdragh, ps, qsurf, &
174              radsol + soilflux, temp_air, spechum, u1_lay, v1_lay, tAcoef, &              radsol + soilflux, temp_air, spechum, u1lay, v1lay, tAcoef, &
175              qAcoef, tBcoef, qBcoef, tsurf_new, evap, fluxlat, flux_t, dflux_s, &              qAcoef, tBcoef, qBcoef, tsurf_new, evap, fluxlat, flux_t, dflux_s, &
176              dflux_l, dif_grnd = 1. / tau_gl)              dflux_l, dif_grnd = 1. / tau_gl)
177         CALL fonte_neige(is_sic, rain_fall, snow_fall, snow, qsol, &         CALL fonte_neige(is_sic, rain_fall, snow_fall, snow, qsol, &
# Line 188  contains Line 191  contains
191         CALL soil(is_lic, snow, ts, tsoil, soilcap, soilflux)         CALL soil(is_lic, snow, ts, tsoil, soilcap, soilflux)
192         cal = RCPD / soilcap         cal = RCPD / soilcap
193         beta = 1.         beta = 1.
194         call calcul_fluxs(ts, p1lay, cal, beta, tq_cdrag, ps, qsurf, &         call calcul_fluxs(ts, p1lay, cal, beta, cdragh, ps, qsurf, &
195              radsol + soilflux, temp_air, spechum, u1_lay, v1_lay, tAcoef, &              radsol + soilflux, temp_air, spechum, u1lay, v1lay, tAcoef, &
196              qAcoef, tBcoef, qBcoef, tsurf_new, evap, fluxlat, flux_t, dflux_s, &              qAcoef, tBcoef, qBcoef, tsurf_new, evap, fluxlat, flux_t, dflux_s, &
197              dflux_l, dif_grnd = 0.)              dflux_l, dif_grnd = 0.)
198         call fonte_neige(is_lic, rain_fall, snow_fall, snow, qsol, &         call fonte_neige(is_lic, rain_fall, snow_fall, snow, qsol, &

Legend:
Removed from v.305  
changed lines
  Added in v.308

  ViewVC Help
Powered by ViewVC 1.1.21