11 rlon,
rlat, swnet, lwnet, alb1, fder, &
14 tsurf, p1lay, cdragh, cdragm, precip_rain, precip_snow, temp_air, spechum, &
15 acoefh, acoefq, bcoefh, bcoefq, &
16 acoefu, acoefv, bcoefu, bcoefv, &
17 ps, u1, v1, rugoro, pctsrf, &
19 z0_new, alb1_new, alb2_new, evap, fluxsens, fluxlat, &
20 tsurf_new, dflux_s, dflux_l, &
38 INTEGER,
INTENT(IN) ::
itime, jour, knon
39 INTEGER,
DIMENSION(klon),
INTENT(IN) :: knindex
40 LOGICAL,
INTENT(IN) :: lafin
41 REAL,
INTENT(IN) ::
dtime
42 REAL,
DIMENSION(klon),
INTENT(IN) ::
rlon,
rlat
43 REAL,
DIMENSION(klon),
INTENT(IN) :: swnet
44 REAL,
DIMENSION(klon),
INTENT(IN) :: lwnet
45 REAL,
DIMENSION(klon),
INTENT(IN) :: alb1
46 REAL,
DIMENSION(klon),
INTENT(IN) :: fder
47 REAL,
DIMENSION(klon),
INTENT(IN) ::
tsurf
48 REAL,
DIMENSION(klon),
INTENT(IN) :: p1lay
49 REAL,
DIMENSION(klon),
INTENT(IN) :: cdragh, cdragm
50 REAL,
DIMENSION(klon),
INTENT(IN) :: precip_rain, precip_snow
51 REAL,
DIMENSION(klon),
INTENT(IN) :: temp_air, spechum
52 REAL,
DIMENSION(klon),
INTENT(IN) :: acoefh, acoefq, bcoefh, bcoefq
53 REAL,
DIMENSION(klon),
INTENT(IN) :: acoefu, acoefv, bcoefu, bcoefv
54 REAL,
DIMENSION(klon),
INTENT(IN) :: ps
55 REAL,
DIMENSION(klon),
INTENT(IN) :: u1, v1
56 REAL,
DIMENSION(klon),
INTENT(IN) :: rugoro
57 REAL,
DIMENSION(klon,nbsrf),
INTENT(IN) :: pctsrf
61 REAL,
DIMENSION(klon),
INTENT(INOUT) :: snow,
qsurf,
qsol
62 REAL,
DIMENSION(klon),
INTENT(INOUT) :: agesno
63 REAL,
DIMENSION(klon, nsoilmx),
INTENT(INOUT) :: tsoil
67 REAL,
DIMENSION(klon),
INTENT(OUT) :: z0_new
68 REAL,
DIMENSION(klon),
INTENT(OUT) :: alb1_new
69 REAL,
DIMENSION(klon),
INTENT(OUT) :: alb2_new
70 REAL,
DIMENSION(klon),
INTENT(OUT) :: evap, fluxsens, fluxlat
71 REAL,
DIMENSION(klon),
INTENT(OUT) :: tsurf_new
72 REAL,
DIMENSION(klon),
INTENT(OUT) :: dflux_s, dflux_l
73 REAL,
DIMENSION(klon),
INTENT(OUT) :: flux_u1, flux_v1
77 REAL,
DIMENSION(klon) :: radsol
89 radsol(1:knon) = swnet(1:knon) + lwnet(1:knon)
95 IF (type_ocean ==
'couple')
THEN
102 p1lay, cdragh, cdragm, precip_rain, precip_snow, temp_air, spechum,&
103 acoefh, acoefq, bcoefh, bcoefq, &
104 acoefu, acoefv, bcoefu, bcoefv, &
105 ps, u1, v1, pctsrf, &
106 radsol, snow,
qsurf, &
107 alb1_new, alb2_new, evap, fluxsens, fluxlat, flux_u1, flux_v1, &
108 tsurf_new, dflux_s, dflux_l)
110 ELSE IF (type_ocean ==
'force' .OR. (type_ocean ==
'slab' .AND. version_ocean==
'sicOBS'))
THEN
113 tsurf, p1lay, cdragh, cdragm, precip_rain, precip_snow, temp_air, spechum,&
114 acoefh, acoefq, bcoefh, bcoefq, &
115 acoefu, acoefv, bcoefu, bcoefv, &
117 radsol, snow,
qsol, agesno, tsoil, &
118 qsurf, alb1_new, alb2_new, evap, fluxsens, fluxlat, flux_u1, flux_v1, &
119 tsurf_new, dflux_s, dflux_l)
121 ELSE IF (type_ocean ==
'slab')
THEN
139 z0_new = sqrt(z0_new**2+rugoro**2)