Index: branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/CONFIG/SHARED/namelist_ice_lim3_ref
===================================================================
--- branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/CONFIG/SHARED/namelist_ice_lim3_ref	(revision 7536)
+++ branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/CONFIG/SHARED/namelist_ice_lim3_ref	(revision 7537)
@@ -98,4 +98,5 @@
                                    !     0: k = k0 + beta.S/T (Untersteiner, 1964)
                                    !     1: k = k0 + beta1.S/T - beta2.T (Pringle et al., 2007)
+   rn_rcdsn    = 0.31              !  thermal conductivity of the snow (0.31 W/m/K, Maykut and Untersteiner, 1971). Obs: 0.1-0.5 (Lecomte et al, JAMES 2013)
    nn_monocat  = 0                 !  virtual ITD mono-category parameterizations (1, jpl = 1 only) or not (0)
                                    !     2: simple piling instead of ridging --- temporary option
Index: branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/CONFIG/SHARED/namelist_ref
===================================================================
--- branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/CONFIG/SHARED/namelist_ref	(revision 7536)
+++ branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/CONFIG/SHARED/namelist_ref	(revision 7537)
@@ -500,11 +500,12 @@
 &namsbc_alb    !   albedo parameters
 !-----------------------------------------------------------------------
-   nn_ice_alb  =    0   !  parameterization of ice/snow albedo
-                        !     0: Shine & Henderson-Sellers (JGR 1985)
-                        !     1: "home made" based on Brandt et al. (J. Climate 2005)
-                        !                         and Grenfell & Perovich (JGR 2004)
-   rn_albice   =  0.53  !  albedo of bare puddled ice (values from 0.49 to 0.58)
-                        !     0.53 (default) => if nn_ice_alb=0
-                        !     0.50 (default) => if nn_ice_alb=1
+   nn_ice_alb   =    1   !  parameterization of ice/snow albedo
+                         !     0: Shine & Henderson-Sellers (JGR 1985), giving clear-sky albedo
+                         !     1: "home made" based on Brandt et al. (JClim 2005) and Grenfell & Perovich (JGR 2004),
+                         !        giving cloud-sky albedo 
+   rn_alb_drsno =  0.80  !  dry snow albedo         : 0.80 (nn_ice_alb = 0); 0.85 (nn_ice_alb = 1); obs 0.85-0.87 (cloud-sky)
+   rn_alb_mlsno =  0.65  !  melting snow albedo     : 0.65 ( '' )          ; 0.75 ( '' )          ; obs 0.72-0.82 ( '' )
+   rn_alb_drice =  0.72  !  dry ice albedo          : 0.72 ( '' )          ; 0.60 ( '' )          ; obs 0.54-0.65 ( '' )
+   rn_alb_mlice =  0.53  !  bare puddled ice albedo : 0.53 ( '' )          ; 0.50 ( '' )          ; obs 0.49-0.58 ( '' )
 /
 !-----------------------------------------------------------------------
Index: branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/NEMO/LIM_SRC_3/ice.F90
===================================================================
--- branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/NEMO/LIM_SRC_3/ice.F90	(revision 7536)
+++ branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/NEMO/LIM_SRC_3/ice.F90	(revision 7537)
@@ -212,4 +212,5 @@
    REAL(wp), PUBLIC ::   rn_betas         !: coef. for partitioning of snowfall between leads and sea ice
    REAL(wp), PUBLIC ::   rn_kappa_i       !: coef. for the extinction of radiation Grenfell et al. (2006) [1/m]
+   REAL(wp), PUBLIC ::   rn_rcdsn         !: thermal conductivity of the snow [W/m/K]
    REAL(wp), PUBLIC ::   nn_conv_dif      !: maximal number of iterations for heat diffusion
    REAL(wp), PUBLIC ::   rn_terr_dif      !: maximal tolerated error (C) for heat diffusion
Index: branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/NEMO/LIM_SRC_3/limthd.F90
===================================================================
--- branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/NEMO/LIM_SRC_3/limthd.F90	(revision 7536)
+++ branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/NEMO/LIM_SRC_3/limthd.F90	(revision 7537)
@@ -644,6 +644,6 @@
       INTEGER  ::   ios                 ! Local integer output status for namelist read
       NAMELIST/namicethd/ rn_hnewice, ln_frazil, rn_maxfrazb, rn_vfrazb, rn_Cfrazb,                       &
-         &                rn_himin, rn_betas, rn_kappa_i, nn_conv_dif, rn_terr_dif, nn_ice_thcon, &
-         &                nn_monocat, ln_it_qnsice
+         &                rn_himin, rn_betas, rn_kappa_i, nn_conv_dif, rn_terr_dif, nn_ice_thcon,         &
+         &                rn_rcdsn, nn_monocat, ln_it_qnsice
       !!-------------------------------------------------------------------
       !
@@ -684,4 +684,5 @@
          WRITE(numout,*)'      maximal err. on T for heat diffusion computation        rn_terr_dif  = ', rn_terr_dif
          WRITE(numout,*)'      switch for comp. of thermal conductivity in the ice     nn_ice_thcon = ', nn_ice_thcon
+         WRITE(numout,*)'      thermal conductivity of the snow                        rn_rcdsn     = ', rn_rcdsn
          WRITE(numout,*)'      check heat conservation in the ice/snow                 con_i        = ', con_i
          WRITE(numout,*)'      virtual ITD mono-category parameterizations (1) or not  nn_monocat   = ', nn_monocat
Index: branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/NEMO/LIM_SRC_3/limthd_dif.F90
===================================================================
--- branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/NEMO/LIM_SRC_3/limthd_dif.F90	(revision 7536)
+++ branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/NEMO/LIM_SRC_3/limthd_dif.F90	(revision 7537)
@@ -376,6 +376,6 @@
 
                ! Effective thickness he (zhe)
-               zfac     = 1._wp / ( rcdsn + zkimean )
-               zratio_s = rcdsn   * zfac
+               zfac     = 1._wp / ( rn_rcdsn + zkimean )
+               zratio_s = rn_rcdsn   * zfac
                zratio_i = zkimean * zfac
                zhe      = zratio_s * ht_i_1d(ji) + zratio_i * ht_s_1d(ji)
@@ -400,11 +400,11 @@
          DO ji = kideb, kiut
             zfac                  =  1. / MAX( epsi10 , zh_s(ji) )
-            zkappa_s(ji,0)        = zghe(ji) * rcdsn * zfac
-            zkappa_s(ji,nlay_s)   = zghe(ji) * rcdsn * zfac
+            zkappa_s(ji,0)        = zghe(ji) * rn_rcdsn * zfac
+            zkappa_s(ji,nlay_s)   = zghe(ji) * rn_rcdsn * zfac
          END DO
 
          DO jk = 1, nlay_s-1
             DO ji = kideb , kiut
-               zkappa_s(ji,jk)    = zghe(ji) * 2.0 * rcdsn / MAX( epsi10, 2.0 * zh_s(ji) )
+               zkappa_s(ji,jk)    = zghe(ji) * 2.0 * rn_rcdsn / MAX( epsi10, 2.0 * zh_s(ji) )
             END DO
          END DO
@@ -422,6 +422,6 @@
             zkappa_i(ji,0)        = zghe(ji) * ztcond_i(ji,0) * zfac
             zkappa_i(ji,nlay_i)   = zghe(ji) * ztcond_i(ji,nlay_i) * zfac
-            zkappa_s(ji,nlay_s)   = zghe(ji) * zghe(ji) * 2.0 * rcdsn * ztcond_i(ji,0) / & 
-           &                        MAX( epsi10, ( zghe(ji) * ztcond_i(ji,0) * zh_s(ji) + zghe(ji) * rcdsn * zh_i(ji) ) )
+            zkappa_s(ji,nlay_s)   = zghe(ji) * zghe(ji) * 2.0 * rn_rcdsn * ztcond_i(ji,0) / & 
+           &                        MAX( epsi10, ( zghe(ji) * ztcond_i(ji,0) * zh_s(ji) + zghe(ji) * rn_rcdsn * zh_i(ji) ) )
             zkappa_i(ji,0)        = zkappa_s(ji,nlay_s) * isnow(ji) + zkappa_i(ji,0) * ( 1._wp - isnow(ji) )
          END DO
@@ -738,6 +738,6 @@
       !--- Snow-ice interfacial temperature (diagnostic SIMIP)
       DO ji = kideb, kiut
-         zfac        = 1. / MAX( epsi10 , rcdsn * zh_i(ji) + ztcond_i(ji,1) * zh_s(ji) )
-         t_si_1d(ji) = ( rcdsn          * zh_i(ji) * t_s_1d(ji,1) + &
+         zfac        = 1. / MAX( epsi10 , rn_rcdsn * zh_i(ji) + ztcond_i(ji,1) * zh_s(ji) )
+         t_si_1d(ji) = ( rn_rcdsn          * zh_i(ji) * t_s_1d(ji,1) + &
         &                ztcond_i(ji,1) * zh_s(ji) * t_i_1d(ji,1) ) * zfac
       END DO
Index: branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/NEMO/OPA_SRC/DOM/phycst.F90
===================================================================
--- branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/NEMO/OPA_SRC/DOM/phycst.F90	(revision 7536)
+++ branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/NEMO/OPA_SRC/DOM/phycst.F90	(revision 7537)
@@ -65,7 +65,6 @@
 #if defined key_lim3 || defined key_cice
    REAL(wp), PUBLIC ::   rhoic    =  917._wp         !: volumic mass of sea ice                               [kg/m3]
-   REAL(wp), PUBLIC ::   rcdic    =    2.034396_wp   !: thermal conductivity of fresh ice
-   REAL(wp), PUBLIC ::   rcdsn    =    0.31_wp       !: thermal conductivity of snow
-   REAL(wp), PUBLIC ::   cpic     = 2067.0_wp        !: specific heat for ice 
+   REAL(wp), PUBLIC ::   rcdic    =    2.034396_wp   !: thermal conductivity of fresh ice                     [W/m/K]
+   REAL(wp), PUBLIC ::   cpic     = 2067.0_wp        !: specific heat of fresh ice                            [J/kg/K]
    REAL(wp), PUBLIC ::   lsub     =    2.834e+6_wp   !: pure ice latent heat of sublimation                   [J/kg]
    REAL(wp), PUBLIC ::   lfus     =    0.334e+6_wp   !: latent heat of fusion of fresh ice                    [J/kg]
@@ -83,4 +82,7 @@
    REAL(wp), PUBLIC ::   xlic     =  300.33e+6_wp    !: volumetric latent heat fusion of ice                  [J/m3]
    REAL(wp), PUBLIC ::   xsn      =    2.8e+6_wp     !: volumetric latent heat of sublimation of snow         [J/m3]
+#endif
+#if defined key_cice
+   REAL(wp), PUBLIC ::   rcdsn    =    0.31_wp       !: thermal conductivity of snow                          [W/m/K], now namelist parameter for LIM3
 #endif
 #if defined key_lim3
@@ -177,6 +179,8 @@
       IF(lwp) THEN
          WRITE(numout,*)
+#if defined key_cice
          WRITE(numout,*) '          thermal conductivity of the snow          = ', rcdsn   , ' J/s/m/K'
-         WRITE(numout,*) '          thermal conductivity of the ice           = ', rcdic   , ' J/s/m/K'
+#endif
+         WRITE(numout,*) '          thermal conductivity of pure ice          = ', rcdic   , ' J/s/m/K'
          WRITE(numout,*) '          fresh ice specific heat                   = ', cpic    , ' J/kg/K'
          WRITE(numout,*) '          latent heat of fusion of fresh ice / snow = ', lfus    , ' J/kg'
Index: branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/NEMO/OPA_SRC/SBC/albedo.F90
===================================================================
--- branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/NEMO/OPA_SRC/SBC/albedo.F90	(revision 7536)
+++ branches/2016/v3_6_CMIP6_ice_diagnostics/NEMOGCM/NEMO/OPA_SRC/SBC/albedo.F90	(revision 7537)
@@ -39,5 +39,5 @@
    !                             !!* namelist namsbc_alb
    INTEGER  ::   nn_ice_alb
-   REAL(wp) ::   rn_albice
+   REAL(wp) ::   rn_alb_drsno, rn_alb_mlsno, rn_alb_drice, rn_alb_mlice
 
    !!----------------------------------------------------------------------
@@ -101,4 +101,8 @@
       IF( albd_init == 0 )   CALL albedo_init      ! initialization 
 
+      ralb_sf = rn_alb_drsno ! dry snow
+      ralb_sm = rn_alb_mlsno ! melting snow
+      ralb_if = rn_alb_drice ! bare frozen ice
+      ralb_im = rn_alb_mlice ! bare puddled ice 
       
       SELECT CASE ( nn_ice_alb )
@@ -109,9 +113,9 @@
       CASE( 0 )
        
-         ralb_sf = 0.80       ! dry snow
-         ralb_sm = 0.65       ! melting snow
-         ralb_if = 0.72       ! bare frozen ice
-         ralb_im = rn_albice  ! bare puddled ice 
-         
+         !ralb_sf = 0.80       ! dry snow
+         !ralb_sm = 0.65       ! melting snow
+         !ralb_if = 0.72       ! bare frozen ice
+         !ralb_im = ...        ! bare puddled ice 
+
          !  Computation of ice albedo (free of snow)
          WHERE     ( ph_snw == 0._wp .AND. pt_ice >= rt0_ice )   ;   zalb(:,:,:) = ralb_im
@@ -163,9 +167,9 @@
       CASE( 1 ) 
 
-         ralb_im = rn_albice  ! bare puddled ice
+!        ralb_im = ...        ! bare puddled ice
 ! compilation of values from literature
-         ralb_sf = 0.85      ! dry snow
-         ralb_sm = 0.75      ! melting snow
-         ralb_if = 0.60      ! bare frozen ice
+!        ralb_sf = 0.85      ! dry snow
+!        ralb_sm = 0.75      ! melting snow
+!        ralb_if = 0.60      ! bare frozen ice
 ! Perovich et al 2002 (Sheba) => the only dataset for which all types of ice/snow were retrieved
 !         ralb_sf = 0.85       ! dry snow
@@ -248,5 +252,5 @@
       !!----------------------------------------------------------------------
       INTEGER  ::   ios                 ! Local integer output status for namelist read
-      NAMELIST/namsbc_alb/ nn_ice_alb, rn_albice 
+      NAMELIST/namsbc_alb/ nn_ice_alb, rn_alb_drsno, rn_alb_mlsno, rn_alb_drice , rn_alb_mlice
       !!----------------------------------------------------------------------
       !
@@ -268,5 +272,8 @@
          WRITE(numout,*) '   Namelist namsbc_alb : albedo '
          WRITE(numout,*) '      choose the albedo parameterization                  nn_ice_alb = ', nn_ice_alb
-         WRITE(numout,*) '      albedo of bare puddled ice                          rn_albice  = ', rn_albice
+         WRITE(numout,*) '      albedo of dry snow                                  rn_alb_drsno = ', rn_alb_drsno
+         WRITE(numout,*) '      albedo of melting snow                              rn_alb_mlsno = ', rn_alb_mlsno
+         WRITE(numout,*) '      albedo of dry ice                                   rn_alb_drice = ', rn_alb_drice
+         WRITE(numout,*) '      albedo of bare puddled ice                          rn_alb_mlice = ', rn_alb_mlice
       ENDIF
       !
