/[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 308 by guez, Tue Sep 18 15:14:40 2018 UTC revision 311 by guez, Mon Dec 3 17:52:21 2018 UTC
# Line 5  module interfsurf_hq_m Line 5  module interfsurf_hq_m
5  contains  contains
6    
7    SUBROUTINE interfsurf_hq(julien, mu0, nisurf, knindex, tsoil, qsol, u1lay, &    SUBROUTINE interfsurf_hq(julien, mu0, nisurf, knindex, tsoil, qsol, u1lay, &
8         v1lay, temp_air, spechum, cdragh, tAcoef, qAcoef, tBcoef, qBcoef, &         v1lay, temp_air, q1lay, 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 43  contains Line 43  contains
43      real, intent(IN):: u1lay(:), v1lay(:) ! (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  
47        real, intent(IN):: q1lay(:) ! (knon)
48        ! humidit\'e sp\'ecifique de la premi\`ere couche
49    
50      real, intent(IN):: cdragh(:) ! (knon) coefficient d'echange      real, intent(IN):: cdragh(:) ! (knon) coefficient d'echange
51    
52      real, intent(IN):: tAcoef(:), qAcoef(:) ! (knon)      real, intent(IN):: tAcoef(:), qAcoef(:) ! (knon)
# Line 64  contains Line 67  contains
67      real, intent(OUT):: qsurf(:) ! (knon)      real, intent(OUT):: qsurf(:) ! (knon)
68      real, intent(IN):: ts(:) ! (knon) temp\'erature de surface      real, intent(IN):: ts(:) ! (knon) temp\'erature de surface
69      real, intent(IN):: p1lay(:) ! (knon) pression 1er niveau (milieu de couche)      real, intent(IN):: p1lay(:) ! (knon) pression 1er niveau (milieu de couche)
70      real, intent(IN):: ps(:) ! (knon) pression au sol      real, intent(IN):: ps(:) ! (knon) pression au sol, en Pa
71    
72      REAL, INTENT(IN):: radsol(:) ! (knon)      REAL, INTENT(IN):: radsol(:) ! (knon)
73      ! surface net downward radiative flux, in W / m2      ! surface net downward radiative flux, in W / m2
# Line 74  contains Line 77  contains
77      real, intent(OUT):: flux_t(:) ! (knon) flux de chaleur sensible      real, intent(OUT):: flux_t(:) ! (knon) flux de chaleur sensible
78      ! (Cp T) à la surface, positif vers le bas, W / m2      ! (Cp T) à la surface, positif vers le bas, W / m2
79    
80      real, intent(OUT):: fluxlat(:) ! (knon) flux de chaleur latente      real, intent(OUT):: fluxlat(:) ! (knon) flux de chaleur latente, en W m-2
81      real, intent(OUT):: dflux_l(:), dflux_s(:) ! (knon)      real, intent(OUT):: dflux_l(:), dflux_s(:) ! (knon)
82      real, intent(OUT):: tsurf_new(:) ! (knon) temp\'erature au sol      real, intent(OUT):: tsurf_new(:) ! (knon) temp\'erature au sol
83      real, intent(OUT):: albedo(:) ! (knon) albedo      real, intent(OUT):: albedo(:) ! (knon) albedo
# Line 128  contains Line 131  contains
131         cal = RCPD / soilcap         cal = RCPD / soilcap
132    
133         CALL calcul_fluxs(ts, p1lay, cal, beta, cdragh, ps, qsurf, &         CALL calcul_fluxs(ts, p1lay, cal, beta, cdragh, ps, qsurf, &
134              radsol + soilflux, temp_air, spechum, u1lay, v1lay, tAcoef, &              radsol + soilflux, temp_air, q1lay, u1lay, v1lay, tAcoef, &
135              qAcoef, tBcoef, qBcoef, tsurf_new, evap, fluxlat, flux_t, dflux_s, &              qAcoef, tBcoef, qBcoef, tsurf_new, evap, fluxlat, flux_t, dflux_s, &
136              dflux_l, dif_grnd = 0.)              dflux_l, dif_grnd = 0.)
137         CALL fonte_neige(is_ter, rain_fall, snow_fall, snow, qsol, &         CALL fonte_neige(is_ter, rain_fall, snow_fall, snow, qsol, &
# Line 147  contains Line 150  contains
150         cal = 0.         cal = 0.
151         beta = 1.         beta = 1.
152         call calcul_fluxs(tsurf, p1lay, cal, beta, cdragh, ps, qsurf, radsol, &         call calcul_fluxs(tsurf, p1lay, cal, beta, cdragh, ps, qsurf, radsol, &
153              temp_air, spechum, u1lay, v1lay, tAcoef, qAcoef, tBcoef, qBcoef, &              temp_air, q1lay, u1lay, v1lay, tAcoef, qAcoef, tBcoef, qBcoef, &
154              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.)
155         agesno = 0.         agesno = 0.
156         albedo = alboc_cd(mu0) * fmagic         albedo = alboc_cd(mu0) * fmagic
# Line 171  contains Line 174  contains
174         tsurf = tsurf_new         tsurf = tsurf_new
175         beta = 1.         beta = 1.
176         CALL calcul_fluxs(tsurf, p1lay, cal, beta, cdragh, ps, qsurf, &         CALL calcul_fluxs(tsurf, p1lay, cal, beta, cdragh, ps, qsurf, &
177              radsol + soilflux, temp_air, spechum, u1lay, v1lay, tAcoef, &              radsol + soilflux, temp_air, q1lay, u1lay, v1lay, tAcoef, &
178              qAcoef, tBcoef, qBcoef, tsurf_new, evap, fluxlat, flux_t, dflux_s, &              qAcoef, tBcoef, qBcoef, tsurf_new, evap, fluxlat, flux_t, dflux_s, &
179              dflux_l, dif_grnd = 1. / tau_gl)              dflux_l, dif_grnd = 1. / tau_gl)
180         CALL fonte_neige(is_sic, rain_fall, snow_fall, snow, qsol, &         CALL fonte_neige(is_sic, rain_fall, snow_fall, snow, qsol, &
# Line 192  contains Line 195  contains
195         cal = RCPD / soilcap         cal = RCPD / soilcap
196         beta = 1.         beta = 1.
197         call calcul_fluxs(ts, p1lay, cal, beta, cdragh, ps, qsurf, &         call calcul_fluxs(ts, p1lay, cal, beta, cdragh, ps, qsurf, &
198              radsol + soilflux, temp_air, spechum, u1lay, v1lay, tAcoef, &              radsol + soilflux, temp_air, q1lay, u1lay, v1lay, tAcoef, &
199              qAcoef, tBcoef, qBcoef, tsurf_new, evap, fluxlat, flux_t, dflux_s, &              qAcoef, tBcoef, qBcoef, tsurf_new, evap, fluxlat, flux_t, dflux_s, &
200              dflux_l, dif_grnd = 0.)              dflux_l, dif_grnd = 0.)
201         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.308  
changed lines
  Added in v.311

  ViewVC Help
Powered by ViewVC 1.1.21