10   SUBROUTINE surf_land(itime, dtime, date0, jour, knon, knindex, &
 
   12        debut, lafin, zlev, ccanopy, swnet, lwnet, 
albedo, &
 
   13        tsurf, p1lay, cdragh, cdragm, precip_rain, precip_snow, temp_air, spechum, &
 
   14        acoefh, acoefq, bcoefh, bcoefq, &
 
   15        acoefu, acoefv, bcoefu, bcoefv, & 
 
   16        pref, u1, v1, gustiness, rugoro, pctsrf, &
 
   18        snow, qsol, agesno, tsoil, &
 
   19        z0m, z0h, sfrwl, alb_dir_new, alb_dif_new, evap, fluxsens, fluxlat, &   
 
   20        qsurf, tsurf_new, dflux_s, dflux_l, &
 
   26 #ifdef ORCHIDEE_NOOPENMP 
   43     INTEGER, 
INTENT(IN)                     :: itime, jour, knon
 
   44     INTEGER, 
DIMENSION(klon), 
INTENT(IN)    :: knindex
 
   45     REAL, 
INTENT(IN)                        :: date0
 
   46     REAL, 
DIMENSION(klon), 
INTENT(IN)       :: rlon, rlat
 
   47     LOGICAL, 
INTENT(IN)                     :: debut, lafin
 
   48     REAL, 
INTENT(IN)                        :: dtime
 
   49     REAL, 
DIMENSION(klon), 
INTENT(IN)       :: zlev, ccanopy
 
   50     REAL, 
DIMENSION(klon), 
INTENT(IN)       :: swnet, lwnet
 
   51     REAL, 
DIMENSION(klon), 
INTENT(IN)       :: albedo  
 
   52     REAL, 
DIMENSION(klon), 
INTENT(IN)       :: tsurf
 
   53     REAL, 
DIMENSION(klon), 
INTENT(IN)       :: p1lay
 
   54     REAL, 
DIMENSION(klon), 
INTENT(IN)       :: cdragh, cdragm
 
   55     REAL, 
DIMENSION(klon), 
INTENT(IN)       :: precip_rain, precip_snow
 
   56     REAL, 
DIMENSION(klon), 
INTENT(IN)       :: temp_air, spechum
 
   57     REAL, 
DIMENSION(klon), 
INTENT(IN)       :: AcoefH, AcoefQ, BcoefH, BcoefQ
 
   58     REAL, 
DIMENSION(klon), 
INTENT(IN)       :: AcoefU, AcoefV, BcoefU, BcoefV
 
   59     REAL, 
DIMENSION(klon), 
INTENT(IN)       :: pref   
 
   60     REAL, 
DIMENSION(klon), 
INTENT(IN)       :: u1, v1, gustiness
 
   61     REAL, 
DIMENSION(klon), 
INTENT(IN)       :: rugoro
 
   62     REAL, 
DIMENSION(klon,nbsrf), 
INTENT(IN) :: pctsrf
 
   63     REAL, 
DIMENSION(klon), 
INTENT(IN)       :: lwdown_m  
 
   65     REAL, 
DIMENSION(klon), 
INTENT(IN)       :: q2m, t2m
 
   69     REAL, 
DIMENSION(klon), 
INTENT(INOUT)          :: snow, qsol
 
   70     REAL, 
DIMENSION(klon), 
INTENT(INOUT)          :: agesno
 
   71     REAL, 
DIMENSION(klon, nsoilmx), 
INTENT(INOUT) :: tsoil
 
   75     REAL, 
DIMENSION(klon), 
INTENT(OUT)       :: z0m, z0h
 
   79     REAL, 
DIMENSION(6), 
INTENT(IN) :: SFRWL
 
   80     REAL, 
DIMENSION(klon,nsw), 
INTENT(OUT)       :: alb_dir_new,alb_dif_new
 
   82     REAL, 
DIMENSION(klon), 
INTENT(OUT)       :: evap
 
   83     REAL, 
DIMENSION(klon), 
INTENT(OUT)       :: fluxsens, fluxlat
 
   84     REAL, 
DIMENSION(klon), 
INTENT(OUT)       :: qsurf
 
   85     REAL, 
DIMENSION(klon), 
INTENT(OUT)       :: tsurf_new
 
   86     REAL, 
DIMENSION(klon), 
INTENT(OUT)       :: dflux_s, dflux_l      
 
   87     REAL, 
DIMENSION(klon), 
INTENT(OUT)       :: flux_u1, flux_v1  
 
   91     REAL, 
DIMENSION(klon) :: p1lay_tmp
 
   92     REAL, 
DIMENSION(klon) :: pref_tmp
 
   93     REAL, 
DIMENSION(klon) :: swdown     
 
   94     REAL, 
DIMENSION(klon) :: epot_air           
 
   95     REAL, 
DIMENSION(klon) :: tsol_rad, emis_new 
 
   96     REAL, 
DIMENSION(klon) :: u0, v0     
 
  100     REAL, 
DIMENSION(klon)      :: alb1_new,alb2_new
 
  115        p1lay_tmp(1:knon) = p1lay(1:knon)/100.
 
  116        pref_tmp(1:knon)  = pref(1:knon)/100.
 
  122           swdown(i) = swnet(i)/(1-
albedo(i))
 
  129           epot_air(i) = rcpd*temp_air(i)*(pref(i)/p1lay(i))**rkappa
 
  134             knindex, rlon, rlat, pctsrf, &
 
  136             zlev,  u1, v1, gustiness, temp_air, spechum, epot_air, ccanopy, & 
 
  137             cdragh, acoefh, acoefq, bcoefh, bcoefq, &
 
  138             precip_rain, precip_snow, lwdown_m, swnet, swdown, &
 
  139             pref_tmp, q2m, t2m, &
 
  140             evap, fluxsens, fluxlat, &              
 
  141             tsol_rad, tsurf_new, alb1_new, alb2_new, &
 
  142             emis_new, z0m, qsurf)       
 
  143         z0h(1:knon)=z0m(1:knon) 
 
  149           z0m(i) = max(1.5e-05,sqrt(z0m(i)**2 + rugoro(i)**2))
 
  158             tsurf, p1lay, cdragh, precip_rain, precip_snow, temp_air, &
 
  159             spechum, acoefh, acoefq, bcoefh, bcoefq, pref, &
 
  160             u1, v1, gustiness, rugoro, swnet, lwnet, &
 
  161             snow, qsol, agesno, tsoil, &
 
  162             qsurf, z0m, alb1_new, alb2_new, evap, &
 
  163             fluxsens, fluxlat, tsurf_new, dflux_s, dflux_l)
 
  164         z0h(1:knon)=z0m(1:knon) 
 
  176          u0, v0, u1, v1, gustiness, cdragm, &
 
  177          acoefu, acoefv, bcoefu, bcoefv, &
 
  186        alb_dir_new(1:knon,1)=alb1_new(1:knon)
 
  187        alb_dir_new(1:knon,2)=alb2_new(1:knon)
 
  189        alb_dir_new(1:knon,1)=alb1_new(1:knon)
 
  190        alb_dir_new(1:knon,2)=alb2_new(1:knon)
 
  191        alb_dir_new(1:knon,3)=alb2_new(1:knon)
 
  192        alb_dir_new(1:knon,4)=alb2_new(1:knon)
 
  194        alb_dir_new(1:knon,1)=alb1_new(1:knon)
 
  195        alb_dir_new(1:knon,2)=alb1_new(1:knon)
 
  196        alb_dir_new(1:knon,3)=alb1_new(1:knon)
 
  197        alb_dir_new(1:knon,4)=alb2_new(1:knon)
 
  198        alb_dir_new(1:knon,5)=alb2_new(1:knon)
 
  199        alb_dir_new(1:knon,6)=alb2_new(1:knon)
 
  201 alb_dif_new=alb_dir_new
 
subroutine calcul_flux_wind(knon, dtime, u0, v0, u1, v1, gustiness, cdrag_m, AcoefU, AcoefV, BcoefU, BcoefV, p1lay, t1lay, flux_u1, flux_v1)
 
subroutine, public surf_land_orchidee(itime, dtime, date0, knon, knindex, rlon, rlat, pctsrf, debut, lafin, plev, u1_lay, v1_lay, gustiness, temp_air, spechum, epot_air, ccanopy, tq_cdrag, petAcoef, peqAcoef, petBcoef, peqBcoef, precip_rain, precip_snow, lwdown, swnet, swdown, ps, q2m, t2m, evap, fluxsens, fluxlat, tsol_rad, tsurf_new, alb1_new, alb2_new, emis_new, z0_new, qsurf)
 
c c $Id c nbregdyn DO klon c rlat(i) c ENDIF!lon c ENDIF!lat ENDIF!pctsrf ENDDO!klon ENDDO!nbregdyn cIM 190504 ENDIF!ok_regdyn cIM somme de toutes les nhistoW BEG IF(debut) THEN DO nreg
 
c c $Id c nbregdyn DO klon c rlon(i)
 
subroutine surf_land(itime, dtime, date0, jour, knon, knindex, rlon, rlat, debut, lafin, zlev, ccanopy, swnet, lwnet, albedo, tsurf, p1lay, cdragh, cdragm, precip_rain, precip_snow, temp_air, spechum, AcoefH, AcoefQ, BcoefH, BcoefQ, AcoefU, AcoefV, BcoefU, BcoefV, pref, u1, v1, gustiness, rugoro, pctsrf, lwdown_m, q2m, t2m, snow, qsol, agesno, tsoil, z0m, z0h, SFRWL, alb_dir_new, alb_dif_new, evap, fluxsens, fluxlat, qsurf, tsurf_new, dflux_s, dflux_l, flux_u1, flux_v1)
 
subroutine surf_land_bucket(itime, jour, knon, knindex, debut, dtime, tsurf, p1lay, tq_cdrag, precip_rain, precip_snow, temp_air, spechum, petAcoef, peqAcoef, petBcoef, peqBcoef, pref, u1, v1, gustiness, rugoro, swnet, lwnet, snow, qsol, agesno, tsoil, qsurf, z0_new, alb1_new, alb2_new, evap, fluxsens, fluxlat, tsurf_new, dflux_s, dflux_l)