Index: LMDZ4/trunk/libf/phylmd/surf_landice_mod.F90
===================================================================
--- LMDZ4/trunk/libf/phylmd/surf_landice_mod.F90	(revision 793)
+++ LMDZ4/trunk/libf/phylmd/surf_landice_mod.F90	(revision 888)
@@ -17,10 +17,11 @@
 !
   SUBROUTINE surf_landice(itime, dtime, knon, knindex, &
-       tsurf, p1lay, tq_cdrag, precip_rain, precip_snow, temp_air, spechum, &
+       swnet, lwnet, tsurf, p1lay, &
+       tq_cdrag, precip_rain, precip_snow, temp_air, spechum, &
        petAcoef, peqAcoef, petBcoef, peqBcoef, &
        ps, u1_lay, v1_lay, rugoro, pctsrf, &
-       radsol, snow, qsurf, qsol, agesno, &
-       tsoil, z0_new, alblw, evap, fluxsens, fluxlat, &
-       tsurf_new, alb_new, dflux_s, dflux_l, pctsrf_lic)
+       snow, qsurf, qsol, agesno, &
+       tsoil, z0_new, alb1, alb2, evap, fluxsens, fluxlat, &
+       tsurf_new, dflux_s, dflux_l, pctsrf_lic)
 
     INCLUDE "indicesol.h"
@@ -34,4 +35,6 @@
     INTEGER, DIMENSION(klon), INTENT(in)          :: knindex
     REAL, INTENT(in)                              :: dtime
+    REAL, DIMENSION(klon), INTENT(IN)             :: swnet ! net shortwave radiance
+    REAL, DIMENSION(klon), INTENT(IN)             :: lwnet ! net longwave radiance
     REAL, DIMENSION(klon), INTENT(IN)             :: tsurf
     REAL, DIMENSION(klon), INTENT(IN)             :: p1lay
@@ -48,5 +51,4 @@
 ! In/Output variables
 !****************************************************************************************
-    REAL, DIMENSION(klon), INTENT(INOUT)          :: radsol
     REAL, DIMENSION(klon), INTENT(INOUT)          :: snow, qsol
     REAL, DIMENSION(klon), INTENT(INOUT)          :: agesno
@@ -57,7 +59,8 @@
     REAL, DIMENSION(klon), INTENT(OUT)            :: qsurf
     REAL, DIMENSION(klon), INTENT(OUT)            :: z0_new
-    REAL, DIMENSION(klon), INTENT(OUT)            :: alblw
+    REAL, DIMENSION(klon), INTENT(OUT)            :: alb1  ! new albedo in visible SW interval
+    REAL, DIMENSION(klon), INTENT(OUT)            :: alb2  ! new albedo in near IR interval
     REAL, DIMENSION(klon), INTENT(OUT)            :: evap, fluxsens, fluxlat
-    REAL, DIMENSION(klon), INTENT(OUT)            :: tsurf_new, alb_new
+    REAL, DIMENSION(klon), INTENT(OUT)            :: tsurf_new
     REAL, DIMENSION(klon), INTENT(OUT)            :: dflux_s, dflux_l      
     REAL, DIMENSION(klon), INTENT(OUT)            :: pctsrf_lic
@@ -68,4 +71,5 @@
     REAL, DIMENSION(klon)    :: cal, beta, dif_grnd
     REAL, DIMENSION(klon)    :: zfra, alb_neig
+    REAL, DIMENSION(klon)    :: radsol
 
 ! End definition
@@ -73,7 +77,13 @@
 !
 ! Initialize output variables
-    alblw(:) =  999999.
-    alb_new(:) = 999999.
+    alb2(:) = 999999.
+    alb1(:) = 999999.
 
+!****************************************************************************************
+! Calculate total absorbed radiance at surface
+!
+!****************************************************************************************
+    radsol(:) = 0.0
+    radsol(1:knon) = swnet(1:knon) + lwnet(1:knon)
 
 !****************************************************************************************
@@ -122,17 +132,17 @@
     WHERE (snow(1 : knon) .LT. 0.0001) agesno(1 : knon) = 0.
     zfra(1:knon) = MAX(0.0,MIN(1.0,snow(1:knon)/(snow(1:knon)+10.0)))
-    alb_new(1:knon)  = alb_neig(1:knon)*zfra(1:knon) + &
+    alb1(1:knon) = alb_neig(1:knon)*zfra(1:knon) + &
          0.6 * (1.0-zfra(1:knon))
 !
 !IM: plusieurs choix/tests sur l'albedo des "glaciers continentaux"
-!       alb_new(1 : knon)  = 0.6 !IM cf FH/GK 
-!       alb_new(1 : knon)  = 0.82
-!       alb_new(1 : knon)  = 0.77 !211003 Ksta0.77
-!       alb_new(1 : knon)  = 0.8 !KstaTER0.8 & LMD_ARMIP5
+!       alb1(1 : knon)  = 0.6 !IM cf FH/GK 
+!       alb1(1 : knon)  = 0.82
+!       alb1(1 : knon)  = 0.77 !211003 Ksta0.77
+!       alb1(1 : knon)  = 0.8 !KstaTER0.8 & LMD_ARMIP5
 !IM: KstaTER0.77 & LMD_ARMIP6    
 
-! Attantion: alb_new and alblw are the same!
-    alb_new(1:knon)  = 0.77
-    alblw(1:knon)    = alb_new(1:knon)
+! Attantion: alb1 and alb2 are the same!
+    alb1(1:knon)  = 0.77
+    alb2(1:knon)  = alb1(1:knon)
 
 
