Index: branches/dev_001_SBC/NEMO/C1D_SRC/diawri1d.F90
===================================================================
--- branches/dev_001_SBC/NEMO/C1D_SRC/diawri1d.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/C1D_SRC/diawri1d.F90	(revision 881)
@@ -193,5 +193,5 @@
             &          jpi, jpj, nh_T, 1  , 1, 1  , -99 , 32, clop, zsto, zout )
 
-#if ! defined key_dynspg_rl && defined key_ice_lim
+#if ! defined key_dynspg_rl && defined key_lim2
          ! sowaflup = sowaflep + sorunoff + sowafldp + a term associated to
          !    internal damping to Levitus that can be diagnosed from others
@@ -237,5 +237,5 @@
 #endif
 
-#if ( defined key_coupled && ! defined key_ice_lim ) 
+#if ( defined key_coupled && ! defined key_lim2 ) 
          CALL histdef( nid_T, "sohefldp", "Surface Heat Flux: Damping"         , "W/m2"   ,   &  ! qrp
             &          jpi, jpj, nh_T, 1  , 1, 1  , -99 , 32, clop, zsto, zout )
@@ -259,5 +259,5 @@
 #endif
 
-#if defined key_ice_lim && defined key_coupled
+#if defined key_lim2 && defined key_coupled
          CALL histdef( nid_T,"soicetem" , "Ice Surface Temperature"            , "K"      ,   &  ! tn_ice
             &          jpi, jpj, nh_T, 1  , 1, 1  , -99 , 32, clop, zsto, zout )
@@ -364,5 +364,5 @@
       CALL histwrite( nid_T, "sosstsst", it, tn(:,:,1)     , ndim_hT, ndex_hT )   ! sea surface temperature
       CALL histwrite( nid_T, "sosaline", it, sn(:,:,1)     , ndim_hT, ndex_hT )   ! sea surface salinity
-#if ! defined key_dynspg_rl && defined key_ice_lim
+#if ! defined key_dynspg_rl && defined key_lim2
       CALL histwrite( nid_T, "iowaflup", it, fsalt(:,:)    , ndim_hT, ndex_hT )   ! ice=>ocean water flux
       CALL histwrite( nid_T, "sowaflep", it, fmass(:,:)    , ndim_hT, ndex_hT )   ! atmos=>ocean water flux
@@ -396,5 +396,5 @@
       CALL histwrite( nid_T, "sosafldp", it, zw2d          , ndim_hT, ndex_hT )   ! salt flux damping
 #endif
-#if ( defined key_coupled && ! defined key_ice_lim ) 
+#if ( defined key_coupled && ! defined key_lim2 ) 
       CALL histwrite( nid_T, "sohefldp", it, qrp           , ndim_hT, ndex_hT )   ! heat flux damping
       CALL histwrite( nid_T, "sowafldp", it, erp           , ndim_hT, ndex_hT )   ! freshwater flux damping
@@ -411,5 +411,5 @@
       CALL histwrite( nid_T, "sohtc300", it, htc3          , ndim_hT, ndex_hT )   ! first 300m heaat content
 #endif
-#if defined key_ice_lim &&  defined key_coupled 
+#if defined key_lim2 &&  defined key_coupled 
       CALL histwrite( nid_T, "soicetem", it, tn_ice        , ndim_hT, ndex_hT )   ! surf. ice temperature
       CALL histwrite( nid_T, "soicealb", it, alb_ice       , ndim_hT, ndex_hT )   ! ice albedo
Index: branches/dev_001_SBC/NEMO/C1D_SRC/icestp1d.F90
===================================================================
--- branches/dev_001_SBC/NEMO/C1D_SRC/icestp1d.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/C1D_SRC/icestp1d.F90	(revision 881)
@@ -6,8 +6,8 @@
    !! History :   9.0  !  04-10  (C. Ethe)  from icestp, 1D configuration
    !!----------------------------------------------------------------------
-#if defined key_cfg_1d && defined key_ice_lim
+#if defined key_cfg_1d && defined key_lim2
    !!----------------------------------------------------------------------
    !!   'key_cfg_1d'  .AND.                                1D Configuration
-   !!   'key_ice_lim'                                     Lim sea-ice model
+   !!   'key_lim2'                                        Lim sea-ice model
    !!----------------------------------------------------------------------
    !!----------------------------------------------------------------------
@@ -18,14 +18,14 @@
    USE in_out_manager  ! I/O manager
    USE ice_oce         ! ice variables
-   USE dom_ice         ! LIM sea-ice domain
+   USE dom_ice_2       ! LIM sea-ice domain
    USE sbc_oce         ! surface boundary condition: ocean
    USE sbc_ice         ! surface boundary condition: ice
    USE daymod          ! calendar
    USE phycst          ! Define parameters for the routines
-   USE ice             ! ice variables
+   USE ice_2           ! ice variables
    USE lbclnk          ! ocean lateral boundary conditions (or mpp link)
-   USE limthd
-   USE limwri
-   USE limrst
+   USE limthd_2
+   USE limwri_2
+   USE limrst_2
 
    USE tradmp          ! damping salinity trend
Index: branches/dev_001_SBC/NEMO/LIM_SRC/dom_ice.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/dom_ice.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/dom_ice.F90	(revision 881)
@@ -1,10 +1,10 @@
-MODULE dom_ice
+MODULE dom_ice_2
    !!======================================================================
    !!                   ***  MODULE  dom_ice  ***
-   !! LIM Sea Ice :   Domain  variables
+   !! LIM 2.0 Sea Ice :   Domain  variables
    !!======================================================================
    !! History :   2.0  !  03-08  (C. Ethe)  Free form and module
    !!----------------------------------------------------------------------
-
+#if defined key_lim2
    !!----------------------------------------------------------------------
    !!   LIM 2.0, UCL-LOCEAN-IPSL (2005)
@@ -12,5 +12,5 @@
    !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt)
    !!----------------------------------------------------------------------
-   USE par_ice
+   USE par_ice_2
 
    IMPLICIT NONE
@@ -33,3 +33,4 @@
 
    !!======================================================================
-END MODULE dom_ice
+#endif
+END MODULE dom_ice_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/ice.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/ice.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/ice.F90	(revision 881)
@@ -1,3 +1,3 @@
-MODULE ice
+MODULE ice_2
    !!======================================================================
    !!                        ***  MODULE ice  ***
@@ -6,9 +6,13 @@
    !! History :  2.0  !  03-08  (C. Ethe)  F90: Free form and module
    !!----------------------------------------------------------------------
-#if defined key_ice_lim
+#if defined key_lim2
    !!----------------------------------------------------------------------
-   !!   'key_ice_lim' :                                   LIM sea-ice model
+   !!   'key_lim2' :                                  LIM 2.0 sea-ice model
    !!----------------------------------------------------------------------
-   USE par_ice          ! LIM sea-ice parameters
+   !!  LIM 2.0, UCL-LOCEAN-IPSL (2006)
+   !! $Id$
+   !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt)
+   !!----------------------------------------------------------------------
+   USE par_ice_2          ! LIM sea-ice parameters
 
    IMPLICIT NONE
@@ -99,12 +103,8 @@
 #else
    !!----------------------------------------------------------------------
-   !!   Default option         Empty module            NO LIM sea-ice model
+   !!   Default option         Empty module        NO LIM 2.0 sea-ice model
    !!----------------------------------------------------------------------
 #endif
 
-   !!----------------------------------------------------------------------
-   !!  LIM 2.0, UCL-LOCEAN-IPSL (2006)
-   !! $Id$
-   !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt)
    !!======================================================================
-END MODULE ice
+END MODULE ice_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/iceini.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/iceini.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/iceini.F90	(revision 881)
@@ -1,20 +1,20 @@
-MODULE iceini
+MODULE iceini_2
    !!======================================================================
    !!                       ***  MODULE iceini   ***
-   !!   Sea-ice model : LIM Sea ice model Initialization
+   !!   Sea-ice model : LIM 2.0 Sea ice model Initialization
    !!======================================================================
    !! History :   1.0  !  02-08  (G. Madec)  F90: Free form and modules
    !!             2.0  !  03-08  (C. Ethe)  add ice_run
    !!----------------------------------------------------------------------
-#if defined key_ice_lim
+#if defined key_lim2
    !!----------------------------------------------------------------------
-   !!   'key_ice_lim' :                                   LIM sea-ice model
+   !!   'key_lim2' :                                  LIM 2.0 sea-ice model
    !!----------------------------------------------------------------------
    !!----------------------------------------------------------------------
-   !!   ice_init       : sea-ice model initialization
-   !!   ice_run        : Definition some run parameter for ice model
+   !!   ice_init_2       : sea-ice model initialization
+   !!   ice_run_2        : Definition some run parameter for ice model
    !!----------------------------------------------------------------------
    USE dom_oce
-   USE dom_ice
+   USE dom_ice_2
    USE ice_oce         ! ice variables
    USE sbc_oce         ! surface boundary condition: ocean
@@ -22,8 +22,8 @@
    USE phycst          ! Define parameters for the routines
    USE ocfzpt
-   USE ice
-   USE limmsh
-   USE limistate
-   USE limrst   
+   USE ice_2
+   USE limmsh_2
+   USE limistate_2
+   USE limrst_2   
    USE ini1d           ! initialization of the 1D configuration
    USE in_out_manager
@@ -32,5 +32,5 @@
    PRIVATE
 
-   PUBLIC   ice_init                 ! called by opa.F90
+   PUBLIC   ice_init_2               ! called by opa.F90
 
    LOGICAL , PUBLIC               ::   ln_limdyn = .TRUE.   !: flag for ice dynamics (T) or not (F)
@@ -47,7 +47,7 @@
 CONTAINS
 
-   SUBROUTINE ice_init
+   SUBROUTINE ice_init_2
       !!----------------------------------------------------------------------
-      !!                  ***  ROUTINE ice_init  ***
+      !!                  ***  ROUTINE ice_init_2  ***
       !!
       !! ** purpose :   
@@ -60,5 +60,5 @@
       CALL ctlopn(numnam_ice,namelist_icename,'OLD', 'FORMATTED', 'SEQUENTIAL',   &
                      1,numout,.FALSE.,1)      
-      CALL ice_run                    !  read in namelist some run parameters
+      CALL ice_run_2                    !  read in namelist some run parameters
                  
       ! Louvain la Neuve Ice model
@@ -66,11 +66,11 @@
       rdt_ice = nn_fsbc * rdttra(1)
 
-      CALL lim_msh                    ! ice mesh initialization
+      CALL lim_msh_2                  ! ice mesh initialization
      
       ! Initial sea-ice state
       IF( .NOT.ln_rstart ) THEN
-         CALL lim_istate              ! start from rest: sea-ice deduced from sst
+         CALL lim_istate_2            ! start from rest: sea-ice deduced from sst
       ELSE
-         CALL lim_rst_read            ! start from a restart file
+         CALL lim_rst_read_2          ! start from a restart file
       ENDIF
       
@@ -81,10 +81,10 @@
 # endif
       !
-   END SUBROUTINE ice_init
+   END SUBROUTINE ice_init_2
 
 
-   SUBROUTINE ice_run
+   SUBROUTINE ice_run_2
       !!-------------------------------------------------------------------
-      !!                  ***  ROUTINE ice_run ***
+      !!                  ***  ROUTINE ice_run_2 ***
       !!                 
       !! ** Purpose :   Definition some run parameter for ice model
@@ -114,15 +114,15 @@
       ENDIF
       !
-   END SUBROUTINE ice_run
+   END SUBROUTINE ice_run_2
 
 #else
    !!----------------------------------------------------------------------
-   !!   Default option :        Empty module           NO LIM sea-ice model
+   !!   Default option :        Empty module       NO LIM 2.0 sea-ice model
    !!----------------------------------------------------------------------
 CONTAINS
-   SUBROUTINE ice_init        ! Empty routine
-   END SUBROUTINE ice_init
+   SUBROUTINE ice_init_2      ! Empty routine
+   END SUBROUTINE ice_init_2
 #endif
 
    !!======================================================================
-END MODULE iceini
+END MODULE iceini_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/limadv.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/limadv.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/limadv.F90	(revision 881)
@@ -1,17 +1,17 @@
-MODULE limadv 
+MODULE limadv_2 
    !!======================================================================
-   !!                       ***  MODULE limadv   ***
-   !! LIM sea-ice model : sea-ice advection
+   !!                       ***  MODULE limadv_2   ***
+   !! LIM 2.0 sea-ice model : sea-ice advection
    !!======================================================================
-#if defined key_ice_lim
-   !!----------------------------------------------------------------------
-   !!   'key_ice_lim'                                     LIM sea-ice model
-   !!----------------------------------------------------------------------
-   !!   lim_adv_x  : advection of sea ice on x axis
-   !!   lim_adv_y  : advection of sea ice on y axis
+#if defined key_lim2
+   !!----------------------------------------------------------------------
+   !!   'key_lim2'                                    LIM 2.0 sea-ice model
+   !!----------------------------------------------------------------------
+   !!   lim_adv_x_2  : advection of sea ice on x axis
+   !!   lim_adv_y_2  : advection of sea ice on y axis
    !!----------------------------------------------------------------------
    !! * Modules used
    USE dom_oce
-   USE dom_ice
+   USE dom_ice_2
    USE ice_oce         ! ice variables
    USE in_out_manager  ! I/O manager
@@ -23,6 +23,6 @@
 
    !! * Routine accessibility
-   PUBLIC lim_adv_x    ! called by lim_trp
-   PUBLIC lim_adv_y    ! called by lim_trp
+   PUBLIC lim_adv_x_2    ! called by lim_trp
+   PUBLIC lim_adv_y_2    ! called by lim_trp
 
    !! * Module variables
@@ -39,8 +39,8 @@
 CONTAINS
 
-   SUBROUTINE lim_adv_x( pdf, put , pcrh, psm , ps0 ,   &
-      &                  psx, psxx, psy , psyy, psxy )
+   SUBROUTINE lim_adv_x_2( pdf, put , pcrh, psm , ps0 ,   &
+      &                    psx, psxx, psy , psyy, psxy )
       !!---------------------------------------------------------------------
-      !!                **  routine lim_adv_x  **
+      !!                **  routine lim_adv_x_2  **
       !!  
       !! ** purpose :   Computes and adds the advection trend to sea-ice
@@ -232,11 +232,11 @@
       ENDIF
 
-   END SUBROUTINE lim_adv_x
-
-
-   SUBROUTINE lim_adv_y( pdf, pvt , pcrh, psm , ps0 ,   &
-      &                  psx, psxx, psy , psyy, psxy )
+   END SUBROUTINE lim_adv_x_2
+
+
+   SUBROUTINE lim_adv_y_2( pdf, pvt , pcrh, psm , ps0 ,   &
+      &                    psx, psxx, psy , psyy, psxy )
       !!---------------------------------------------------------------------
-      !!                **  routine lim_adv_y  **
+      !!                **  routine lim_adv_y_2  **
       !!            
       !! ** purpose :   Computes and adds the advection trend to sea-ice 
@@ -432,17 +432,17 @@
       ENDIF
 
-   END SUBROUTINE lim_adv_y
+   END SUBROUTINE lim_adv_y_2
 
 #else
    !!----------------------------------------------------------------------
-   !!   Default option            Dummy module         NO LIM sea-ice model
+   !!   Default option            Dummy module     NO LIM 2.0 sea-ice model
    !!----------------------------------------------------------------------
 CONTAINS
-   SUBROUTINE lim_adv_x         ! Empty routine
-   END SUBROUTINE lim_adv_x
-   SUBROUTINE lim_adv_y           ! Empty routine
-   END SUBROUTINE lim_adv_y
+   SUBROUTINE lim_adv_x_2         ! Empty routine
+   END SUBROUTINE lim_adv_x_2
+   SUBROUTINE lim_adv_y_2         ! Empty routine
+   END SUBROUTINE lim_adv_y_2
 
 #endif
 
-END MODULE limadv
+END MODULE limadv_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/limdia.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/limdia.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/limdia.F90	(revision 881)
@@ -1,5 +1,5 @@
-MODULE limdia
+MODULE limdia_2
    !!======================================================================
-   !!                       ***  MODULE limdia   ***
+   !!                       ***  MODULE limdia_2   ***
    !!                      diagnostics of ice model 
    !!======================================================================
@@ -8,20 +8,20 @@
    !!             9.0  !  06-08  (S. Masson)  change frequency output control
    !!-------------------------------------------------------------------
-#if defined key_ice_lim
-   !!----------------------------------------------------------------------
-   !!   'key_ice_lim' :                                   LIM sea-ice model
-   !!----------------------------------------------------------------------
-   !!----------------------------------------------------------------------
-   !!   lim_dia      : computation of the time evolution of keys var.
-   !!   lim_dia_init : initialization and namelist read
+#if defined key_lim2
+   !!----------------------------------------------------------------------
+   !!   'key_lim2' :                                  LIM 2.0 sea-ice model
+   !!----------------------------------------------------------------------
+   !!----------------------------------------------------------------------
+   !!   lim_dia_2      : computation of the time evolution of keys var.
+   !!   lim_dia_init_2 : initialization and namelist read
    !!----------------------------------------------------------------------
    USE phycst          ! 
-   USE par_ice         ! ice parameters
+   USE par_ice_2       ! ice parameters
    USE ice_oce         ! ice variables
    USE sbc_oce         ! surface boundary condition variables
    USE daymod          !
-   USE dom_ice         !
-   USE ice             !
-   USE limistate       !
+   USE dom_ice_2       !
+   USE ice_2           !
+   USE limistate_2     !
    USE in_out_manager  ! I/O manager
 
@@ -29,5 +29,5 @@
    PRIVATE
 
-   PUBLIC               lim_dia            ! called by ice_step
+   PUBLIC               lim_dia_2          ! called by sbc_ice_lim_2
    INTEGER, PUBLIC ::   ntmoy   = 1 ,   &  !: instantaneous values of ice evolution or averaging ntmoy
       &                 ninfo   = 1        !: frequency of ouputs on file ice_evolu in case of averaging
@@ -65,7 +65,7 @@
 CONTAINS
 
-   SUBROUTINE lim_dia( kt )
+   SUBROUTINE lim_dia_2( kt )
       !!--------------------------------------------------------------------
-      !!                  ***  ROUTINE lim_dia  ***
+      !!                  ***  ROUTINE lim_dia_2  ***
       !!   
       !! ** Purpose : Computation and outputs on file ice.evolu 
@@ -83,5 +83,5 @@
       !!-------------------------------------------------------------------
 
-      IF( kt == nit000 )   CALL lim_dia_init   ! initialisation of ice_evolu file      
+      IF( kt == nit000 )   CALL lim_dia_init_2  ! initialisation of ice_evolu file      
 
       ! computation of key variables at each time step   
@@ -163,10 +163,10 @@
        ENDIF
        !
-    END SUBROUTINE lim_dia
+    END SUBROUTINE lim_dia_2
  
 
-    SUBROUTINE lim_dia_init
+    SUBROUTINE lim_dia_init_2
        !!-------------------------------------------------------------------
-       !!                  ***  ROUTINE lim_dia_init  ***
+       !!                  ***  ROUTINE lim_dia_init_2  ***
        !!             
        !! ** Purpose : Preparation of the file ice_evolu for the output of
@@ -191,6 +191,6 @@
        IF(lwp) THEN
           WRITE(numout,*)
-          WRITE(numout,*) 'lim_dia_init : ice parameters for ice diagnostics '
-          WRITE(numout,*) '~~~~~~~~~~~~'
+          WRITE(numout,*) 'lim_dia_init_2 : ice parameters for ice diagnostics '
+          WRITE(numout,*) '~~~~~~~~~~~~~~'
           WRITE(numout,*) '   format of the output values                                 fmtinf = ', fmtinf
           WRITE(numout,*) '   number of variables written in one line                     nfrinf = ', nfrinf 
@@ -275,15 +275,15 @@
 1111   FORMAT( 3(F7.1,1X,F7.3,1X),I3,A )  
       !
-    END SUBROUTINE lim_dia_init
+    END SUBROUTINE lim_dia_init_2
 
 #else
    !!----------------------------------------------------------------------
-   !!   Default option :                               NO LIM sea-ice model
+   !!   Default option :                           NO LIM 2.0 sea-ice model
    !!----------------------------------------------------------------------
 CONTAINS
-   SUBROUTINE lim_dia         ! Empty routine
-   END SUBROUTINE lim_dia
+   SUBROUTINE lim_dia_2         ! Empty routine
+   END SUBROUTINE lim_dia_2
 #endif
 
    !!======================================================================
-END MODULE limdia
+END MODULE limdia_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/limdmp.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/limdmp.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/limdmp.F90	(revision 881)
@@ -1,20 +1,20 @@
-MODULE limdmp
+MODULE limdmp_2
    !!======================================================================
-   !!                       ***  MODULE limdmp   ***
+   !!                       ***  MODULE limdmp_2   ***
    !!  Ice model : restoring Ice thickness and Fraction leads
    !!======================================================================
    !! History :   2.0  !  04-04 (S. Theetten) Original code
    !!----------------------------------------------------------------------
-#if defined key_ice_lim   &&   defined key_tradmp
+#if defined key_lim2   &&   defined key_tradmp
    !!----------------------------------------------------------------------
-   !!   'key_ice_lim'  AND                                LIM sea-ice model
+   !!   'key_lim2'  AND                               LIM 2.0 sea-ice model
    !!   'key_tradmp'                                                Damping
    !!----------------------------------------------------------------------
    !!----------------------------------------------------------------------
-   !!   lim_dmp      : ice model damping
+   !!   lim_dmp_2      : ice model damping
    !!----------------------------------------------------------------------
    USE in_out_manager  ! I/O manager
    USE phycst          ! physical constants
-   USE ice
+   USE ice_2
    USE ice_oce
    USE tradmp
@@ -27,5 +27,5 @@
    PRIVATE
 
-   PUBLIC   lim_dmp     ! called by ice_step
+   PUBLIC   lim_dmp_2     ! called by ice_step_2
    
    INTEGER                        ::   nice1, nice2,  &  ! first and second record used
@@ -46,7 +46,7 @@
 CONTAINS
 
-   SUBROUTINE lim_dmp(kt)
+   SUBROUTINE lim_dmp_2(kt)
       !!-------------------------------------------------------------------
-      !!                   ***  ROUTINE lim_dmp ***
+      !!                   ***  ROUTINE lim_dmp_2 ***
       !!
       !! ** purpose : ice model damping : restoring ice thickness and 
@@ -60,5 +60,5 @@
       !!---------------------------------------------------------------------
       !
-      CALL dta_lim( kt )
+      CALL dta_lim_2( kt )
 
       DO jj = 2, jpjm1
@@ -69,10 +69,10 @@
       END DO
       !
-   END SUBROUTINE lim_dmp
+   END SUBROUTINE lim_dmp_2
 
 
-   SUBROUTINE dta_lim( kt ) 
+   SUBROUTINE dta_lim_2( kt ) 
       !!----------------------------------------------------------------------
-      !!                   ***  ROUTINE dta_lim  ***
+      !!                   ***  ROUTINE dta_lim_2  ***
       !!
       !! ** Purpose :   Reads monthly ice thickness and fraction lead  data
@@ -167,5 +167,5 @@
       IF( kt == nitend )   CALL iom_close( inumice_dmp )
       !
-   END SUBROUTINE dta_lim
+   END SUBROUTINE dta_lim_2
 
 #else
@@ -174,9 +174,9 @@
    !!----------------------------------------------------------------------
 CONTAINS
-   SUBROUTINE lim_dmp( kt )        ! Dummy routine
-      WRITE(*,*) 'lim_dmp: You should not see this print! error? ', kt
-   END SUBROUTINE lim_dmp
+   SUBROUTINE lim_dmp_2( kt )        ! Dummy routine
+      WRITE(*,*) 'lim_dmp_2: You should not see this print! error? ', kt
+   END SUBROUTINE lim_dmp_2
 #endif
 
    !!======================================================================
-END MODULE limdmp
+END MODULE limdmp_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/limdyn.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/limdyn.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/limdyn.F90	(revision 881)
@@ -1,5 +1,5 @@
-MODULE limdyn
+MODULE limdyn_2
    !!======================================================================
-   !!                     ***  MODULE  limdyn  ***
+   !!                     ***  MODULE  limdyn_2  ***
    !!   Sea-Ice dynamics :  
    !!======================================================================
@@ -9,20 +9,20 @@
    !!             2.0  !  06-07  (G. Madec)  Surface module
    !!---------------------------------------------------------------------
-#if defined key_ice_lim
-   !!----------------------------------------------------------------------
-   !!   'key_ice_lim' :                                   LIM sea-ice model
-   !!----------------------------------------------------------------------
-   !!    lim_dyn      : computes ice velocities
-   !!    lim_dyn_init : initialization and namelist read
+#if defined key_lim2
+   !!----------------------------------------------------------------------
+   !!   'key_lim2' :                                  LIM 2.0 sea-ice model
+   !!----------------------------------------------------------------------
+   !!    lim_dyn_2      : computes ice velocities
+   !!    lim_dyn_init_2 : initialization and namelist read
    !!----------------------------------------------------------------------
    USE dom_oce        ! ocean space and time domain
    USE sbc_oce        !
    USE phycst         !
-   USE ice            !
+   USE ice_2          !
    USE ice_oce        !
-   USE dom_ice        !
-   USE iceini         !
-   USE limistate      !
-   USE limrhg         ! ice rheology
+   USE dom_ice_2      !
+   USE iceini_2       !
+   USE limistate_2    !
+   USE limrhg_2       ! ice rheology
 
    USE lbclnk         !
@@ -34,5 +34,5 @@
    PRIVATE
 
-   PUBLIC   lim_dyn   ! routine called by ice_step
+   PUBLIC   lim_dyn_2 ! routine called by sbc_ice_lim
 
    REAL(wp)  ::  rone    = 1.e0   ! constant value
@@ -47,7 +47,7 @@
 CONTAINS
 
-   SUBROUTINE lim_dyn( kt )
-      !!-------------------------------------------------------------------
-      !!               ***  ROUTINE lim_dyn  ***
+   SUBROUTINE lim_dyn_2( kt )
+      !!-------------------------------------------------------------------
+      !!               ***  ROUTINE lim_dyn_2  ***
       !!               
       !! ** Purpose :   compute ice velocity and ocean-ice friction velocity
@@ -70,5 +70,5 @@
       !!---------------------------------------------------------------------
 
-      IF( kt == nit000 )   CALL lim_dyn_init   ! Initialization (first time-step only)
+      IF( kt == nit000 )   CALL lim_dyn_init_2   ! Initialization (first time-step only)
       
       IF( ln_limdyn ) THEN
@@ -88,5 +88,5 @@
             i_jpj = jpj
             IF(ln_ctl)   CALL prt_ctl_info( 'lim_dyn  :    i_j1 = ', ivar1=i_j1, clinfo2=' ij_jpj = ', ivar2=i_jpj )
-            CALL lim_rhg( i_j1, i_jpj )
+            CALL lim_rhg_2( i_j1, i_jpj )
             !
          ELSE                                 ! optimization of the computational area
@@ -109,5 +109,5 @@
                IF(ln_ctl)   WRITE(numout,*) 'lim_dyn : NH i_j1 = ', i_j1, ' ij_jpj = ', i_jpj
                ! 
-               CALL lim_rhg( i_j1, i_jpj )
+               CALL lim_rhg_2( i_j1, i_jpj )
                ! 
                ! Southern hemisphere
@@ -120,5 +120,5 @@
                IF(ln_ctl)   WRITE(numout,*) 'lim_dyn : SH i_j1 = ', i_j1, ' ij_jpj = ', i_jpj
                ! 
-               CALL lim_rhg( i_j1, i_jpj )
+               CALL lim_rhg_2( i_j1, i_jpj )
                ! 
             ELSE                                 ! local domain extends over one hemisphere only
@@ -139,5 +139,5 @@
                IF(ln_ctl)   WRITE(numout,*) 'lim_dyn : one hemisphere: i_j1 = ', i_j1, ' ij_jpj = ', i_jpj
                ! 
-               CALL lim_rhg( i_j1, i_jpj )
+               CALL lim_rhg_2( i_j1, i_jpj )
                !
             ENDIF
@@ -182,10 +182,10 @@
       IF(ln_ctl)   CALL prt_ctl(tab2d_1=ust2s , clinfo1=' lim_dyn  : ust2s :')
 
-   END SUBROUTINE lim_dyn
-
-
-   SUBROUTINE lim_dyn_init
-      !!-------------------------------------------------------------------
-      !!                  ***  ROUTINE lim_dyn_init  ***
+   END SUBROUTINE lim_dyn_2
+
+
+   SUBROUTINE lim_dyn_init_2
+      !!-------------------------------------------------------------------
+      !!                  ***  ROUTINE lim_dyn_init_2  ***
       !!
       !! ** Purpose :   Physical constants and parameters linked to the ice
@@ -207,6 +207,6 @@
       IF(lwp) THEN                                ! Control print
          WRITE(numout,*)
-         WRITE(numout,*) 'lim_dyn_init : ice parameters for ice dynamics '
-         WRITE(numout,*) '~~~~~~~~~~~~'
+         WRITE(numout,*) 'lim_dyn_init_2: ice parameters for ice dynamics '
+         WRITE(numout,*) '~~~~~~~~~~~~~~'
          WRITE(numout,*) '       tolerance parameter                              epsd   = ', epsd
          WRITE(numout,*) '       coefficient for semi-implicit coriolis           alpha  = ', alpha
@@ -236,15 +236,15 @@
       ahiv(:,:) = ahi0 * vmask(:,:,1)
       !
-   END SUBROUTINE lim_dyn_init
+   END SUBROUTINE lim_dyn_init_2
 
 #else
    !!----------------------------------------------------------------------
-   !!   Default option          Empty module           NO LIM sea-ice model
+   !!   Default option          Empty module       NO LIM 2.0 sea-ice model
    !!----------------------------------------------------------------------
 CONTAINS
-   SUBROUTINE lim_dyn         ! Empty routine
-   END SUBROUTINE lim_dyn
+   SUBROUTINE lim_dyn_2         ! Empty routine
+   END SUBROUTINE lim_dyn_2
 #endif 
 
    !!======================================================================
-END MODULE limdyn
+END MODULE limdyn_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/limhdf.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/limhdf.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/limhdf.F90	(revision 881)
@@ -1,12 +1,12 @@
-MODULE limhdf
+MODULE limhdf_2
    !!======================================================================
-   !!                    ***  MODULE limhdf   ***
-   !! LIM ice model : horizontal diffusion of sea-ice quantities
+   !!                    ***  MODULE limhdf_2   ***
+   !! LIM 2.0 ice model : horizontal diffusion of sea-ice quantities
    !!======================================================================
-#if defined key_ice_lim
+#if defined key_lim2
    !!----------------------------------------------------------------------
-   !!   'key_ice_lim'                                     LIM sea-ice model
+   !!   'key_lim2'                                    LIM 2.0 sea-ice model
    !!----------------------------------------------------------------------
-   !!   lim_hdf  : diffusion trend on sea-ice variable
+   !!   lim_hdf_2  : diffusion trend on sea-ice variable
    !!----------------------------------------------------------------------
    !! * Modules used
@@ -14,5 +14,5 @@
    USE ice_oce         ! ice variables
    USE in_out_manager
-   USE ice
+   USE ice_2
    USE lbclnk
    USE lib_mpp
@@ -23,5 +23,5 @@
 
    !! * Routine accessibility
-   PUBLIC lim_hdf    ! called by lim_tra
+   PUBLIC lim_hdf_2    ! called by lim_tra_2
 
    !! * Module variables
@@ -40,7 +40,7 @@
 CONTAINS
 
-   SUBROUTINE lim_hdf( ptab )
+   SUBROUTINE lim_hdf_2( ptab )
       !!-------------------------------------------------------------------
-      !!                  ***  ROUTINE lim_hdf  ***
+      !!                  ***  ROUTINE lim_hdf_2  ***
       !!
       !! ** purpose :   Compute and add the diffusive trend on sea-ice
@@ -171,15 +171,15 @@
       ENDIF
 
-   END SUBROUTINE lim_hdf
+   END SUBROUTINE lim_hdf_2
 
 #else
    !!----------------------------------------------------------------------
-   !!   Default option          Dummy module           NO LIM sea-ice model
+   !!   Default option          Dummy module       NO LIM 2.0 sea-ice model
    !!----------------------------------------------------------------------
 CONTAINS
-   SUBROUTINE lim_hdf         ! Empty routine
-   END SUBROUTINE lim_hdf
+   SUBROUTINE lim_hdf_2       ! Empty routine
+   END SUBROUTINE lim_hdf_2
 #endif
 
    !!======================================================================
-END MODULE limhdf
+END MODULE limhdf_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/limistate.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/limistate.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/limistate.F90	(revision 881)
@@ -1,5 +1,5 @@
-MODULE limistate
+MODULE limistate_2
    !!======================================================================
-   !!                     ***  MODULE  limistate  ***
+   !!                     ***  MODULE  limistate_2  ***
    !!              Initialisation of diagnostics ice variables
    !!======================================================================
@@ -10,20 +10,20 @@
    !!                  !  07-10  (G. Madec)  surface module
    !!--------------------------------------------------------------------
-#if defined key_ice_lim
-   !!----------------------------------------------------------------------
-   !!   'key_ice_lim' :                                   LIM sea-ice model
-   !!----------------------------------------------------------------------
-   !!----------------------------------------------------------------------
-   !!   lim_istate      :  Initialisation of diagnostics ice variables
-   !!   lim_istate_init :  initialization of ice state and namelist read
+#if defined key_lim2
+   !!----------------------------------------------------------------------
+   !!   'key_lim2' :                                  LIM 2.0 sea-ice model
+   !!----------------------------------------------------------------------
+   !!----------------------------------------------------------------------
+   !!   lim_istate_2      :  Initialisation of diagnostics ice variables
+   !!   lim_istate_init_2 :  initialization of ice state and namelist read
    !!----------------------------------------------------------------------
    USE phycst
    USE ocfzpt
-   USE par_ice         ! ice parameters
+   USE par_ice_2       ! ice parameters
    USE ice_oce         ! ice variables
-   USE dom_ice
+   USE dom_ice_2
    USE lbclnk
    USE oce
-   USE ice
+   USE ice_2
    USE iom
    USE in_out_manager
@@ -32,7 +32,7 @@
    PRIVATE
 
-   PUBLIC   lim_istate   ! routine called by lim_init.F90
-
-   REAL(wp) ::           & !!! ** init namelist (namiceini) **
+   PUBLIC lim_istate_2      ! routine called by lim_init_2.F90
+
+   REAL(wp) ::           &  !!! ** init namelist (namiceini) **
       ttest  = 2.0  ,    &  ! threshold water temperature for initial sea ice
       hninn  = 0.5  ,    &  ! initial snow thickness in the north
@@ -54,7 +54,7 @@
 CONTAINS
 
-   SUBROUTINE lim_istate
-      !!-------------------------------------------------------------------
-      !!                    ***  ROUTINE lim_istate  ***
+   SUBROUTINE lim_istate_2
+      !!-------------------------------------------------------------------
+      !!                    ***  ROUTINE lim_istate_2  ***
       !!
       !! ** Purpose :   defined the sea-ice initial state
@@ -68,5 +68,5 @@
       !--------------------------------------------------------------------
  
-      CALL lim_istate_init     !  reading the initials parameters of the ice
+      CALL lim_istate_init_2     !  reading the initials parameters of the ice
 
       IF( .NOT. ln_limini ) THEN  
@@ -153,10 +153,10 @@
       CALL lbc_lnk( qstoif , 'T', 1. )
 
-   END SUBROUTINE lim_istate
+   END SUBROUTINE lim_istate_2
 
    
-   SUBROUTINE lim_istate_init
-      !!-------------------------------------------------------------------
-      !!                   ***  ROUTINE lim_istate_init  ***
+   SUBROUTINE lim_istate_init_2
+      !!-------------------------------------------------------------------
+      !!                   ***  ROUTINE lim_istate_init_2  ***
       !!        
       !! ** Purpose :   Definition of initial state of the ice 
@@ -179,6 +179,6 @@
       IF(lwp) THEN
          WRITE(numout,*)
-         WRITE(numout,*) 'lim_istate_init : ice parameters inititialisation '
-         WRITE(numout,*) '~~~~~~~~~~~~~~~'
+         WRITE(numout,*) 'lim_istate_init_2 : ice parameters inititialisation '
+         WRITE(numout,*) '~~~~~~~~~~~~~~~~~'
          WRITE(numout,*) '         threshold water temp. for initial sea-ice    ttest      = ', ttest
          WRITE(numout,*) '         initial snow thickness in the north          hninn      = ', hninn
@@ -214,15 +214,15 @@
       ENDIF
       !     
-   END SUBROUTINE lim_istate_init
+   END SUBROUTINE lim_istate_init_2
 
 #else
    !!----------------------------------------------------------------------
-   !!   Default option :         Empty module          NO LIM sea-ice model
+   !!   Default option :         Empty module      NO LIM 2.0 sea-ice model
    !!----------------------------------------------------------------------
 CONTAINS
-   SUBROUTINE lim_istate          ! Empty routine
-   END SUBROUTINE lim_istate
+   SUBROUTINE lim_istate_2        ! Empty routine
+   END SUBROUTINE lim_istate_2
 #endif
 
    !!======================================================================
-END MODULE limistate
+END MODULE limistate_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/limmsh.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/limmsh.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/limmsh.F90	(revision 881)
@@ -1,17 +1,17 @@
-MODULE limmsh
+MODULE limmsh_2
    !!======================================================================
-   !!                     ***  MODULE  limmsh  ***
-   !! LIM ice model :   definition of the ice mesh parameters
+   !!                     ***  MODULE  limmsh_2  ***
+   !! LIM 2.0 ice model :   definition of the ice mesh parameters
    !!======================================================================
-#if defined key_ice_lim
-   !!----------------------------------------------------------------------
-   !!   'key_ice_lim'                                     LIM sea-ice model
-   !!----------------------------------------------------------------------
-   !!   lim_msh   : definition of the ice mesh
+#if defined key_lim2
+   !!----------------------------------------------------------------------
+   !!   'key_lim2'                                     LIM 2.0sea-ice model
+   !!----------------------------------------------------------------------
+   !!   lim_msh_2   : definition of the ice mesh
    !!----------------------------------------------------------------------
    !! * Modules used
    USE phycst
    USE dom_oce
-   USE dom_ice
+   USE dom_ice_2
    USE lbclnk
    USE in_out_manager
@@ -21,5 +21,5 @@
 
    !! * Accessibility
-   PUBLIC lim_msh      ! routine called by ice_ini.F90
+   PUBLIC lim_msh_2      ! routine called by ice_ini_2.F90
 
    !!----------------------------------------------------------------------
@@ -31,7 +31,7 @@
 CONTAINS
 
-   SUBROUTINE lim_msh
+   SUBROUTINE lim_msh_2
       !!-------------------------------------------------------------------
-      !!                  ***  ROUTINE lim_msh  ***
+      !!                  ***  ROUTINE lim_msh_2  ***
       !!              
       !! ** Purpose : Definition of the charact. of the numerical grid
@@ -62,6 +62,6 @@
       IF(lwp) THEN
          WRITE(numout,*)
-         WRITE(numout,*) 'lim_msh : LIM sea-ice model, mesh initialization'
-         WRITE(numout,*) '~~~~~~~'
+         WRITE(numout,*) 'lim_msh_2 : LIM 2.0 sea-ice model, mesh initialization'
+         WRITE(numout,*) '~~~~~~~~~'
       ENDIF
       
@@ -245,5 +245,5 @@
       area(:,:) = e1t(:,:) * e2t(:,:)
       
-   END SUBROUTINE lim_msh
+   END SUBROUTINE lim_msh_2
 
 #else
@@ -252,8 +252,8 @@
    !!----------------------------------------------------------------------
 CONTAINS
-   SUBROUTINE lim_msh           ! Dummy routine
-   END SUBROUTINE lim_msh
+   SUBROUTINE lim_msh_2           ! Dummy routine
+   END SUBROUTINE lim_msh_2
 #endif
 
    !!======================================================================
-END MODULE limmsh
+END MODULE limmsh_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/limrhg.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/limrhg.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/limrhg.F90	(revision 881)
@@ -1,5 +1,5 @@
-MODULE limrhg
+MODULE limrhg_2
    !!======================================================================
-   !!                     ***  MODULE  limrhg  ***
+   !!                     ***  MODULE  limrhg_2  ***
    !!   Ice rheology :  performs sea ice rheology
    !!======================================================================
@@ -10,17 +10,17 @@
    !!            " "  !  09-09  (G. Madec)  Huge verctor optimisation
    !!----------------------------------------------------------------------
-#if defined key_ice_lim
-   !!----------------------------------------------------------------------
-   !!   'key_ice_lim'                                     LIM sea-ice model
-   !!----------------------------------------------------------------------
-   !!----------------------------------------------------------------------
-   !!   lim_rhg   : computes ice velocities
+#if defined key_lim2
+   !!----------------------------------------------------------------------
+   !!   'key_lim2'                                    LIM 2.0 sea-ice model
+   !!----------------------------------------------------------------------
+   !!----------------------------------------------------------------------
+   !!   lim_rhg_2   : computes ice velocities
    !!----------------------------------------------------------------------
    USE par_oce        ! ocean parameter
    USE ice_oce        ! ice variables
    USE sbc_ice        ! surface boundary condition: ice variables
-   USE dom_ice        ! domaine: ice variables
+   USE dom_ice_2      ! domaine: ice variables
    USE phycst         ! physical constant
-   USE ice            ! ice variables
+   USE ice_2          ! ice variables
    USE lbclnk         ! lateral boundary condition
    USE lib_mpp        ! MPP library
@@ -31,5 +31,5 @@
    PRIVATE
 
-   PUBLIC   lim_rhg   ! routine called by lim_dyn
+   PUBLIC   lim_rhg_2 ! routine called by lim_dyn
 
    REAL(wp) ::   rzero   = 0.e0   ! constant value: zero
@@ -46,7 +46,7 @@
 CONTAINS
 
-   SUBROUTINE lim_rhg( k_j1, k_jpj )
+   SUBROUTINE lim_rhg_2( k_j1, k_jpj )
       !!-------------------------------------------------------------------
-      !!                 ***  SUBROUTINR lim_rhg  ***
+      !!                 ***  SUBROUTINR lim_rhg_2  ***
       !!
       !! ** purpose :   determines the velocity field of sea ice by using
@@ -567,16 +567,16 @@
       ENDIF
 
-   END SUBROUTINE lim_rhg
+   END SUBROUTINE lim_rhg_2
 
 #else
    !!----------------------------------------------------------------------
-   !!   Default option          Dummy module           NO LIM sea-ice model
+   !!   Default option          Dummy module       NO 2.0 LIM sea-ice model
    !!----------------------------------------------------------------------
 CONTAINS
-   SUBROUTINE lim_rhg( k1 , k2 )         ! Dummy routine
-      WRITE(*,*) 'lim_rhg: You should not have seen this print! error?', k1, k2
-   END SUBROUTINE lim_rhg
+   SUBROUTINE lim_rhg_2( k1 , k2 )       ! Dummy routine
+      WRITE(*,*) 'lim_rhg_2: You should not have seen this print! error?', k1, k2
+   END SUBROUTINE lim_rhg_2
 #endif
 
    !!==============================================================================
-END MODULE limrhg
+END MODULE limrhg_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/limrst.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/limrst.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/limrst.F90	(revision 881)
@@ -1,5 +1,5 @@
-MODULE limrst
+MODULE limrst_2
    !!======================================================================
-   !!                     ***  MODULE  limrst  ***
+   !!                     ***  MODULE  limrst_2  ***
    !! Ice restart :  write the ice restart file
    !!======================================================================
@@ -7,14 +7,14 @@
    !!                 !  06-07  (S. Masson)  use IOM for restart read/write
    !!----------------------------------------------------------------------
-#if defined key_ice_lim
-   !!----------------------------------------------------------------------
-   !!   'key_ice_lim' :                                   LIM sea-ice model
-   !!----------------------------------------------------------------------
-   !!----------------------------------------------------------------------
-   !!   lim_rst_opn   : open ice restart file
-   !!   lim_rst_write : write of the ice restart file 
-   !!   lim_rst_read  : read  the ice restart file 
-   !!----------------------------------------------------------------------
-   USE ice
+#if defined key_lim2
+   !!----------------------------------------------------------------------
+   !!   'key_lim2' :                                  LIM 2.0 sea-ice model
+   !!----------------------------------------------------------------------
+   !!----------------------------------------------------------------------
+   !!   lim_rst_opn_2   : open ice restart file
+   !!   lim_rst_write_2 : write of the ice restart file 
+   !!   lim_rst_read_2  : read  the ice restart file 
+   !!----------------------------------------------------------------------
+   USE ice_2
    USE sbc_oce
    USE sbc_ice
@@ -27,7 +27,7 @@
    PRIVATE
 
-   PUBLIC   lim_rst_opn     ! routine called by ??? module
-   PUBLIC   lim_rst_write   ! routine called by lim_step.F90
-   PUBLIC   lim_rst_read    ! routine called by lim_init.F90
+   PUBLIC   lim_rst_opn_2     ! routine called by sbcice_lim_2.F90
+   PUBLIC   lim_rst_write_2   ! routine called by sbcice_lim_2.F90
+   PUBLIC   lim_rst_read_2    ! routine called by iceini_2.F90
 
    LOGICAL, PUBLIC ::   lrst_ice         !: logical to control the ice restart write 
@@ -42,7 +42,7 @@
 CONTAINS
 
-   SUBROUTINE lim_rst_opn( kt )
-      !!----------------------------------------------------------------------
-      !!                    ***  lim_rst_opn  ***
+   SUBROUTINE lim_rst_opn_2( kt )
+      !!----------------------------------------------------------------------
+      !!                    ***  lim_rst_opn_2  ***
       !!
       !! ** purpose  :   output of sea-ice variable in a netcdf file
@@ -82,10 +82,10 @@
       ENDIF
       !
-   END SUBROUTINE lim_rst_opn
-
-
-   SUBROUTINE lim_rst_write( kt )
-      !!----------------------------------------------------------------------
-      !!                    ***  lim_rst_write  ***
+   END SUBROUTINE lim_rst_opn_2
+
+
+   SUBROUTINE lim_rst_write_2( kt )
+      !!----------------------------------------------------------------------
+      !!                    ***  lim_rst_write_2  ***
       !!
       !! ** purpose  :   output of sea-ice variable in a netcdf file
@@ -100,9 +100,9 @@
       IF( iter == nitrst ) THEN
          IF(lwp) WRITE(numout,*)
-         IF(lwp) WRITE(numout,*) 'lim_rst_write : write ice restart file  kt =', kt
-         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~~'
-      ENDIF
-
-      ! Write in numriw (if iter  == nitrst)
+         IF(lwp) WRITE(numout,*) 'lim_rst_write_2 : write ice restart file  kt =', kt
+         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~~~~'
+      ENDIF
+
+      ! Write in numriw (if iter == nitrst)
       ! ------------------ 
       !                                                                     ! calendar control
@@ -164,10 +164,10 @@
       ENDIF
       !
-   END SUBROUTINE lim_rst_write
-
-
-   SUBROUTINE lim_rst_read
-      !!----------------------------------------------------------------------
-      !!                    ***  lim_rst_read  ***
+   END SUBROUTINE lim_rst_write_2
+
+
+   SUBROUTINE lim_rst_read_2
+      !!----------------------------------------------------------------------
+      !!                    ***  lim_rst_read_2  ***
       !!
       !! ** purpose  :   read of sea-ice variable restart in a netcdf file
@@ -178,6 +178,6 @@
       IF(lwp) THEN
          WRITE(numout,*)
-         WRITE(numout,*) 'lim_rst_read : read ice NetCDF restart file'
-         WRITE(numout,*) '~~~~~~~~~~~~'
+         WRITE(numout,*) 'lim_rst_read_2 : read ice NetCDF restart file'
+         WRITE(numout,*) '~~~~~~~~~~~~~~'
       ENDIF
 
@@ -247,12 +247,12 @@
       CALL iom_close( numrir )
       !
-   END SUBROUTINE lim_rst_read
+   END SUBROUTINE lim_rst_read_2
 
 #else
    !!----------------------------------------------------------------------
-   !!   Default option :       Empty module            NO LIM sea-ice model
+   !!   Default option :       Empty module        NO LIM 2.0 sea-ice model
    !!----------------------------------------------------------------------
 #endif
 
    !!======================================================================
-END MODULE limrst
+END MODULE limrst_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/limsbc.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/limsbc.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/limsbc.F90	(revision 881)
@@ -1,5 +1,5 @@
-MODULE limsbc
+MODULE limsbc_2
    !!======================================================================
-   !!                       ***  MODULE limsbc   ***
+   !!                       ***  MODULE limsbc_2   ***
    !!           computation of the flux at the sea ice/ocean interface
    !!======================================================================
@@ -8,10 +8,10 @@
    !!           06-07 (G. Madec) surface module
    !!----------------------------------------------------------------------
-#if defined key_ice_lim
-   !!----------------------------------------------------------------------
-   !!   'key_ice_lim'                                     LIM sea-ice model
-   !!----------------------------------------------------------------------
-   !!----------------------------------------------------------------------
-   !!   lim_sbc  : flux at the ice / ocean interface
+#if defined key_lim2
+   !!----------------------------------------------------------------------
+   !!   'key_lim2'                                    LIM 2.0 sea-ice model
+   !!----------------------------------------------------------------------
+   !!----------------------------------------------------------------------
+   !!   lim_sbc_2  : flux at the ice / ocean interface
    !!----------------------------------------------------------------------
    USE par_oce          ! ocean parameters
@@ -22,6 +22,6 @@
    USE ocfzpt           ! surface ocean freezing point
    USE ice_oce          ! sea-ice variable
-   USE ice              ! LIM sea-ice variables
-   USE iceini           ! ???
+   USE ice_2            ! LIM sea-ice variables
+   USE iceini_2         ! ???
    USE dynspg_oce       ! choice of the surface pressure gradient scheme 
 
@@ -34,5 +34,5 @@
    PRIVATE
 
-   PUBLIC lim_sbc       ! called by lim_step
+   PUBLIC lim_sbc_2     ! called by sbc_ice_lim_2
 
    REAL(wp)  ::   epsi16 = 1.e-16  ! constant values
@@ -44,5 +44,5 @@
    !!----------------------------------------------------------------------
    !!   LIM 2.0,  UCL-LOCEAN-IPSL (2006) 
-   !! $Header: $
+   !! $ Id: $
    !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt)
    !!----------------------------------------------------------------------
@@ -50,7 +50,7 @@
 CONTAINS
 
-   SUBROUTINE lim_sbc( kt )
+   SUBROUTINE lim_sbc_2( kt )
       !!-------------------------------------------------------------------
-      !!                ***  ROUTINE lim_sbc ***
+      !!                ***  ROUTINE lim_sbc_2 ***
       !!  
       !! ** Purpose : Update surface ocean boundary condition over areas
@@ -96,6 +96,6 @@
       IF( kt == nit000 ) THEN
          IF(lwp) WRITE(numout,*)
-         IF(lwp) WRITE(numout,*) 'lim_sbc : LIM sea-ice - surface boundary condition'
-         IF(lwp) WRITE(numout,*) '~~~~~~~   '
+         IF(lwp) WRITE(numout,*) 'lim_sbc_2 : LIM 2.0 sea-ice - surface boundary condition'
+         IF(lwp) WRITE(numout,*) '~~~~~~~~~   '
       ENDIF
 
@@ -241,15 +241,15 @@
       ENDIF 
    
-    END SUBROUTINE lim_sbc
+    END SUBROUTINE lim_sbc_2
 
 #else
    !!----------------------------------------------------------------------
-   !!   Default option :        Dummy module           NO LIM sea-ice model
+   !!   Default option :        Dummy module       NO LIM 2.0 sea-ice model
    !!----------------------------------------------------------------------
 CONTAINS
-   SUBROUTINE lim_sbc         ! Dummy routine
-   END SUBROUTINE lim_sbc
+   SUBROUTINE lim_sbc_2         ! Dummy routine
+   END SUBROUTINE lim_sbc_2
 #endif 
 
    !!======================================================================
-END MODULE limsbc
+END MODULE limsbc_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/limtab.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/limtab.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/limtab.F90	(revision 881)
@@ -1,8 +1,8 @@
-MODULE limtab
+MODULE limtab_2
    !!======================================================================
-   !!                       ***  MODULE limtab   ***
+   !!                       ***  MODULE limtab_2   ***
    !!              transform 1D (2D) array to a 2D (1D) table
    !!======================================================================
-#if defined key_ice_lim
+#if defined key_lim2
    !!----------------------------------------------------------------------
    !!   tab_2d_1d  : 2-D to 1-D
@@ -16,6 +16,6 @@
 
    !! * Routine accessibility
-   PUBLIC tab_2d_1d  ! called by lim_ther
-   PUBLIC tab_1d_2d  ! called by lim_ther
+   PUBLIC tab_2d_1d_2  ! called by lim_ther
+   PUBLIC tab_1d_2d_2  ! called by lim_ther
 
    !!----------------------------------------------------------------------
@@ -26,5 +26,5 @@
 CONTAINS
 
-   SUBROUTINE tab_2d_1d ( ndim1d, tab1d, tab2d, ndim2d_x, ndim2d_y, tab_ind )
+   SUBROUTINE tab_2d_1d_2 ( ndim1d, tab1d, tab2d, ndim2d_x, ndim2d_y, tab_ind )
 
       INTEGER, INTENT(in) :: &
@@ -49,8 +49,8 @@
       END DO 
 
-   END SUBROUTINE tab_2d_1d
+   END SUBROUTINE tab_2d_1d_2
 
 
-   SUBROUTINE tab_1d_2d ( ndim1d, tab2d, tab_ind, tab1d, ndim2d_x, ndim2d_y )
+   SUBROUTINE tab_1d_2d_2 ( ndim1d, tab2d, tab_ind, tab1d, ndim2d_x, ndim2d_y )
 
       INTEGER, INTENT ( in) :: &
@@ -75,6 +75,6 @@
       END DO
 
-   END SUBROUTINE tab_1d_2d
+   END SUBROUTINE tab_1d_2d_2
 
 #endif
-END MODULE limtab
+END MODULE limtab_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/limthd.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/limthd.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/limthd.F90	(revision 881)
@@ -1,5 +1,5 @@
-MODULE limthd
+MODULE limthd_2
    !!======================================================================
-   !!                  ***  MODULE limthd   ***
+   !!                  ***  MODULE limthd_2   ***
    !!              LIM thermo ice model : ice thermodynamic
    !!======================================================================
@@ -8,10 +8,10 @@
    !!            2.0  !  03-08 (C. Ethe)  add lim_thd_init
    !!---------------------------------------------------------------------
-#if defined key_ice_lim
-   !!----------------------------------------------------------------------
-   !!   'key_ice_lim' :                                   LIM sea-ice model
-   !!----------------------------------------------------------------------
-   !!   lim_thd      : thermodynamic of sea ice
-   !!   lim_thd_init : initialisation of sea-ice thermodynamic
+#if defined key_lim2
+   !!----------------------------------------------------------------------
+   !!   'key_lim2' :                                  LIM 2.0 sea-ice model
+   !!----------------------------------------------------------------------
+   !!   lim_thd_2      : thermodynamic of sea ice
+   !!   lim_thd_init_2 : initialisation of sea-ice thermodynamic
    !!----------------------------------------------------------------------
    USE phycst          ! physical constants
@@ -19,14 +19,14 @@
    USE lbclnk
    USE in_out_manager  ! I/O manager
-   USE ice             ! LIM sea-ice variables
+   USE ice_2           ! LIM sea-ice variables
    USE ice_oce         ! sea-ice/ocean variables
    USE sbc_oce         ! 
    USE sbc_ice         ! 
-   USE thd_ice         ! LIM thermodynamic sea-ice variables
-   USE dom_ice         ! LIM sea-ice domain
-   USE iceini
-   USE limthd_zdf
-   USE limthd_lac
-   USE limtab
+   USE thd_ice_2       ! LIM thermodynamic sea-ice variables
+   USE dom_ice_2       ! LIM sea-ice domain
+   USE iceini_2
+   USE limthd_zdf_2
+   USE limthd_lac_2
+   USE limtab_2
    USE prtctl          ! Print control
       
@@ -34,5 +34,5 @@
    PRIVATE
 
-   PUBLIC   lim_thd    ! called by lim_step
+   PUBLIC   lim_thd_2  ! called by lim_step
 
    REAL(wp)  ::   epsi20 = 1.e-20   ,  &  ! constant values
@@ -53,7 +53,7 @@
 CONTAINS
 
-   SUBROUTINE lim_thd( kt )
+   SUBROUTINE lim_thd_2( kt )
       !!-------------------------------------------------------------------
-      !!                ***  ROUTINE lim_thd  ***       
+      !!                ***  ROUTINE lim_thd_2  ***       
       !!  
       !! ** Purpose : This routine manages the ice thermodynamic.
@@ -93,5 +93,5 @@
       !!-------------------------------------------------------------------
 
-      IF( kt == nit000 )   CALL lim_thd_init  ! Initialization (first time-step only)
+      IF( kt == nit000 )   CALL lim_thd_init_2  ! Initialization (first time-step only)
    
       !-------------------------------------------!
@@ -245,53 +245,53 @@
          
          !  put the variable in a 1-D array for thermodynamics process
-         CALL tab_2d_1d( nbpb, frld_1d    (1:nbpb)     , frld       , jpi, jpj, npb(1:nbpb) )
-         CALL tab_2d_1d( nbpb, h_ice_1d   (1:nbpb)     , hicif      , jpi, jpj, npb(1:nbpb) )
-         CALL tab_2d_1d( nbpb, h_snow_1d  (1:nbpb)     , hsnif      , jpi, jpj, npb(1:nbpb) )
-         CALL tab_2d_1d( nbpb, sist_1d    (1:nbpb)     , sist       , jpi, jpj, npb(1:nbpb) )
-         CALL tab_2d_1d( nbpb, tbif_1d    (1:nbpb , 1 ), tbif(:,:,1), jpi, jpj, npb(1:nbpb) )
-         CALL tab_2d_1d( nbpb, tbif_1d    (1:nbpb , 2 ), tbif(:,:,2), jpi, jpj, npb(1:nbpb) )
-         CALL tab_2d_1d( nbpb, tbif_1d    (1:nbpb , 3 ), tbif(:,:,3), jpi, jpj, npb(1:nbpb) )
-         CALL tab_2d_1d( nbpb, qsr_ice_1d (1:nbpb)     , qsr_ice    , jpi, jpj, npb(1:nbpb) )
-         CALL tab_2d_1d( nbpb, fr1_i0_1d  (1:nbpb)     , fr1_i0     , jpi, jpj, npb(1:nbpb) )
-         CALL tab_2d_1d( nbpb, fr2_i0_1d  (1:nbpb)     , fr2_i0     , jpi, jpj, npb(1:nbpb) )
-         CALL tab_2d_1d( nbpb, qns_ice_1d (1:nbpb)     , qns_ice    , jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, frld_1d    (1:nbpb)     , frld       , jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, h_ice_1d   (1:nbpb)     , hicif      , jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, h_snow_1d  (1:nbpb)     , hsnif      , jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, sist_1d    (1:nbpb)     , sist       , jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, tbif_1d    (1:nbpb , 1 ), tbif(:,:,1), jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, tbif_1d    (1:nbpb , 2 ), tbif(:,:,2), jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, tbif_1d    (1:nbpb , 3 ), tbif(:,:,3), jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, qsr_ice_1d (1:nbpb)     , qsr_ice    , jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, fr1_i0_1d  (1:nbpb)     , fr1_i0     , jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, fr2_i0_1d  (1:nbpb)     , fr2_i0     , jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, qns_ice_1d (1:nbpb)     , qns_ice    , jpi, jpj, npb(1:nbpb) )
 #if ! defined key_coupled
-         CALL tab_2d_1d( nbpb, qla_ice_1d (1:nbpb)     , qla_ice    , jpi, jpj, npb(1:nbpb) )
-         CALL tab_2d_1d( nbpb, dqla_ice_1d(1:nbpb)     , dqla_ice   , jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, qla_ice_1d (1:nbpb)     , qla_ice    , jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, dqla_ice_1d(1:nbpb)     , dqla_ice   , jpi, jpj, npb(1:nbpb) )
 #endif
-         CALL tab_2d_1d( nbpb, dqns_ice_1d(1:nbpb)     , dqns_ice   , jpi, jpj, npb(1:nbpb) )
-         CALL tab_2d_1d( nbpb, tfu_1d     (1:nbpb)     , tfu        , jpi, jpj, npb(1:nbpb) )
-         CALL tab_2d_1d( nbpb, sprecip_1d (1:nbpb)     , sprecip    , jpi, jpj, npb(1:nbpb) ) 
-         CALL tab_2d_1d( nbpb, fbif_1d    (1:nbpb)     , fbif       , jpi, jpj, npb(1:nbpb) )
-         CALL tab_2d_1d( nbpb, thcm_1d    (1:nbpb)     , thcm       , jpi, jpj, npb(1:nbpb) )
-         CALL tab_2d_1d( nbpb, qldif_1d   (1:nbpb)     , qldif      , jpi, jpj, npb(1:nbpb) )
-         CALL tab_2d_1d( nbpb, qstbif_1d  (1:nbpb)     , qstoif     , jpi, jpj, npb(1:nbpb) )
-         CALL tab_2d_1d( nbpb, rdmicif_1d (1:nbpb)     , rdmicif    , jpi, jpj, npb(1:nbpb) )
-         CALL tab_2d_1d( nbpb, dmgwi_1d   (1:nbpb)     , dmgwi      , jpi, jpj, npb(1:nbpb) )
-         CALL tab_2d_1d( nbpb, qlbbq_1d   (1:nbpb)     , zqlbsbq    , jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, dqns_ice_1d(1:nbpb)     , dqns_ice   , jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, tfu_1d     (1:nbpb)     , tfu        , jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, sprecip_1d (1:nbpb)     , sprecip    , jpi, jpj, npb(1:nbpb) ) 
+         CALL tab_2d_1d_2( nbpb, fbif_1d    (1:nbpb)     , fbif       , jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, thcm_1d    (1:nbpb)     , thcm       , jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, qldif_1d   (1:nbpb)     , qldif      , jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, qstbif_1d  (1:nbpb)     , qstoif     , jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, rdmicif_1d (1:nbpb)     , rdmicif    , jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, dmgwi_1d   (1:nbpb)     , dmgwi      , jpi, jpj, npb(1:nbpb) )
+         CALL tab_2d_1d_2( nbpb, qlbbq_1d   (1:nbpb)     , zqlbsbq    , jpi, jpj, npb(1:nbpb) )
  
-         CALL lim_thd_zdf( 1, nbpb )       !  compute ice growth
+         CALL lim_thd_zdf_2( 1, nbpb )       !  compute ice growth
          
          !  back to the geographic grid.
-         CALL tab_1d_2d( nbpb, frld       , npb, frld_1d   (1:nbpb)     , jpi, jpj )
-         CALL tab_1d_2d( nbpb, hicif      , npb, h_ice_1d  (1:nbpb)     , jpi, jpj )
-         CALL tab_1d_2d( nbpb, hsnif      , npb, h_snow_1d (1:nbpb)     , jpi, jpj )
-         CALL tab_1d_2d( nbpb, sist       , npb, sist_1d   (1:nbpb)     , jpi, jpj )
-         CALL tab_1d_2d( nbpb, tbif(:,:,1), npb, tbif_1d   (1:nbpb , 1 ), jpi, jpj )   
-         CALL tab_1d_2d( nbpb, tbif(:,:,2), npb, tbif_1d   (1:nbpb , 2 ), jpi, jpj )   
-         CALL tab_1d_2d( nbpb, tbif(:,:,3), npb, tbif_1d   (1:nbpb , 3 ), jpi, jpj )   
-         CALL tab_1d_2d( nbpb, fscmbq     , npb, fscbq_1d  (1:nbpb)     , jpi, jpj )
-         CALL tab_1d_2d( nbpb, ffltbif    , npb, fltbif_1d (1:nbpb)     , jpi, jpj )
-         CALL tab_1d_2d( nbpb, fstric     , npb, fstbif_1d (1:nbpb)     , jpi, jpj )
-         CALL tab_1d_2d( nbpb, qldif      , npb, qldif_1d  (1:nbpb)     , jpi, jpj )
-         CALL tab_1d_2d( nbpb, qfvbq      , npb, qfvbq_1d  (1:nbpb)     , jpi, jpj )
-         CALL tab_1d_2d( nbpb, qstoif     , npb, qstbif_1d (1:nbpb)     , jpi, jpj )
-         CALL tab_1d_2d( nbpb, rdmicif    , npb, rdmicif_1d(1:nbpb)     , jpi, jpj )
-         CALL tab_1d_2d( nbpb, dmgwi      , npb, dmgwi_1d  (1:nbpb)     , jpi, jpj )
-         CALL tab_1d_2d( nbpb, rdmsnif    , npb, rdmsnif_1d(1:nbpb)     , jpi, jpj )
-         CALL tab_1d_2d( nbpb, rdvosif    , npb, dvsbq_1d  (1:nbpb)     , jpi, jpj )
-         CALL tab_1d_2d( nbpb, rdvobif    , npb, dvbbq_1d  (1:nbpb)     , jpi, jpj )
-         CALL tab_1d_2d( nbpb, fdvolif    , npb, dvlbq_1d  (1:nbpb)     , jpi, jpj )
-         CALL tab_1d_2d( nbpb, rdvonif    , npb, dvnbq_1d  (1:nbpb)     , jpi, jpj ) 
+         CALL tab_1d_2d_2( nbpb, frld       , npb, frld_1d   (1:nbpb)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpb, hicif      , npb, h_ice_1d  (1:nbpb)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpb, hsnif      , npb, h_snow_1d (1:nbpb)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpb, sist       , npb, sist_1d   (1:nbpb)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpb, tbif(:,:,1), npb, tbif_1d   (1:nbpb , 1 ), jpi, jpj )   
+         CALL tab_1d_2d_2( nbpb, tbif(:,:,2), npb, tbif_1d   (1:nbpb , 2 ), jpi, jpj )   
+         CALL tab_1d_2d_2( nbpb, tbif(:,:,3), npb, tbif_1d   (1:nbpb , 3 ), jpi, jpj )   
+         CALL tab_1d_2d_2( nbpb, fscmbq     , npb, fscbq_1d  (1:nbpb)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpb, ffltbif    , npb, fltbif_1d (1:nbpb)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpb, fstric     , npb, fstbif_1d (1:nbpb)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpb, qldif      , npb, qldif_1d  (1:nbpb)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpb, qfvbq      , npb, qfvbq_1d  (1:nbpb)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpb, qstoif     , npb, qstbif_1d (1:nbpb)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpb, rdmicif    , npb, rdmicif_1d(1:nbpb)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpb, dmgwi      , npb, dmgwi_1d  (1:nbpb)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpb, rdmsnif    , npb, rdmsnif_1d(1:nbpb)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpb, rdvosif    , npb, dvsbq_1d  (1:nbpb)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpb, rdvobif    , npb, dvbbq_1d  (1:nbpb)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpb, fdvolif    , npb, dvlbq_1d  (1:nbpb)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpb, rdvonif    , npb, dvnbq_1d  (1:nbpb)     , jpi, jpj ) 
 
  
@@ -348,30 +348,30 @@
          
          !...Put the variable in a 1-D array for lateral accretion
-         CALL tab_2d_1d( nbpac, frld_1d   (1:nbpac)     , frld       , jpi, jpj, npac(1:nbpac) )
-         CALL tab_2d_1d( nbpac, h_snow_1d (1:nbpac)     , hsnif      , jpi, jpj, npac(1:nbpac) )
-         CALL tab_2d_1d( nbpac, h_ice_1d  (1:nbpac)     , hicif      , jpi, jpj, npac(1:nbpac) )
-         CALL tab_2d_1d( nbpac, tbif_1d   (1:nbpac , 1 ), tbif(:,:,1), jpi, jpj, npac(1:nbpac) )   
-         CALL tab_2d_1d( nbpac, tbif_1d   (1:nbpac , 2 ), tbif(:,:,2), jpi, jpj, npac(1:nbpac) )   
-         CALL tab_2d_1d( nbpac, tbif_1d   (1:nbpac , 3 ), tbif(:,:,3), jpi, jpj, npac(1:nbpac) )   
-         CALL tab_2d_1d( nbpac, qldif_1d  (1:nbpac)     , qldif      , jpi, jpj, npac(1:nbpac) )
-         CALL tab_2d_1d( nbpac, qcmif_1d  (1:nbpac)     , qcmif      , jpi, jpj, npac(1:nbpac) )
-         CALL tab_2d_1d( nbpac, qstbif_1d (1:nbpac)     , qstoif     , jpi, jpj, npac(1:nbpac) )
-         CALL tab_2d_1d( nbpac, rdmicif_1d(1:nbpac)     , rdmicif    , jpi, jpj, npac(1:nbpac) )
-         CALL tab_2d_1d( nbpac, dvlbq_1d  (1:nbpac)     , fdvolif    , jpi, jpj, npac(1:nbpac) )
-         CALL tab_2d_1d( nbpac, tfu_1d    (1:nbpac)     , tfu        , jpi, jpj, npac(1:nbpac) )
+         CALL tab_2d_1d_2( nbpac, frld_1d   (1:nbpac)     , frld       , jpi, jpj, npac(1:nbpac) )
+         CALL tab_2d_1d_2( nbpac, h_snow_1d (1:nbpac)     , hsnif      , jpi, jpj, npac(1:nbpac) )
+         CALL tab_2d_1d_2( nbpac, h_ice_1d  (1:nbpac)     , hicif      , jpi, jpj, npac(1:nbpac) )
+         CALL tab_2d_1d_2( nbpac, tbif_1d   (1:nbpac , 1 ), tbif(:,:,1), jpi, jpj, npac(1:nbpac) )   
+         CALL tab_2d_1d_2( nbpac, tbif_1d   (1:nbpac , 2 ), tbif(:,:,2), jpi, jpj, npac(1:nbpac) )   
+         CALL tab_2d_1d_2( nbpac, tbif_1d   (1:nbpac , 3 ), tbif(:,:,3), jpi, jpj, npac(1:nbpac) )   
+         CALL tab_2d_1d_2( nbpac, qldif_1d  (1:nbpac)     , qldif      , jpi, jpj, npac(1:nbpac) )
+         CALL tab_2d_1d_2( nbpac, qcmif_1d  (1:nbpac)     , qcmif      , jpi, jpj, npac(1:nbpac) )
+         CALL tab_2d_1d_2( nbpac, qstbif_1d (1:nbpac)     , qstoif     , jpi, jpj, npac(1:nbpac) )
+         CALL tab_2d_1d_2( nbpac, rdmicif_1d(1:nbpac)     , rdmicif    , jpi, jpj, npac(1:nbpac) )
+         CALL tab_2d_1d_2( nbpac, dvlbq_1d  (1:nbpac)     , fdvolif    , jpi, jpj, npac(1:nbpac) )
+         CALL tab_2d_1d_2( nbpac, tfu_1d    (1:nbpac)     , tfu        , jpi, jpj, npac(1:nbpac) )
         
          !  call lateral accretion routine.
-         CALL lim_thd_lac( 1 , nbpac )
+         CALL lim_thd_lac_2( 1 , nbpac )
          
          !   back to the geographic grid
-         CALL tab_1d_2d( nbpac, frld       , npac(1:nbpac), frld_1d   (1:nbpac)     , jpi, jpj )
-         CALL tab_1d_2d( nbpac, hsnif      , npac(1:nbpac), h_snow_1d (1:nbpac)     , jpi, jpj )
-         CALL tab_1d_2d( nbpac, hicif      , npac(1:nbpac), h_ice_1d  (1:nbpac)     , jpi, jpj )
-         CALL tab_1d_2d( nbpac, tbif(:,:,1), npac(1:nbpac), tbif_1d   (1:nbpac , 1 ), jpi, jpj )
-         CALL tab_1d_2d( nbpac, tbif(:,:,2), npac(1:nbpac), tbif_1d   (1:nbpac , 2 ), jpi, jpj )
-         CALL tab_1d_2d( nbpac, tbif(:,:,3), npac(1:nbpac), tbif_1d   (1:nbpac , 3 ), jpi, jpj )
-         CALL tab_1d_2d( nbpac, qstoif     , npac(1:nbpac), qstbif_1d (1:nbpac)     , jpi, jpj )
-         CALL tab_1d_2d( nbpac, rdmicif    , npac(1:nbpac), rdmicif_1d(1:nbpac)     , jpi, jpj )
-         CALL tab_1d_2d( nbpac, fdvolif    , npac(1:nbpac), dvlbq_1d  (1:nbpac)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpac, frld       , npac(1:nbpac), frld_1d   (1:nbpac)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpac, hsnif      , npac(1:nbpac), h_snow_1d (1:nbpac)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpac, hicif      , npac(1:nbpac), h_ice_1d  (1:nbpac)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpac, tbif(:,:,1), npac(1:nbpac), tbif_1d   (1:nbpac , 1 ), jpi, jpj )
+         CALL tab_1d_2d_2( nbpac, tbif(:,:,2), npac(1:nbpac), tbif_1d   (1:nbpac , 2 ), jpi, jpj )
+         CALL tab_1d_2d_2( nbpac, tbif(:,:,3), npac(1:nbpac), tbif_1d   (1:nbpac , 3 ), jpi, jpj )
+         CALL tab_1d_2d_2( nbpac, qstoif     , npac(1:nbpac), qstbif_1d (1:nbpac)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpac, rdmicif    , npac(1:nbpac), rdmicif_1d(1:nbpac)     , jpi, jpj )
+         CALL tab_1d_2d_2( nbpac, fdvolif    , npac(1:nbpac), dvlbq_1d  (1:nbpac)     , jpi, jpj )
         
       ENDIF
@@ -391,19 +391,21 @@
       IF(ln_ctl) THEN
          CALL prt_ctl_info(' lim_thd  end  ')
-         CALL prt_ctl(tab2d_1=hicif      , clinfo1=' hicif   : ', tab2d_2=hsnif      , clinfo2=' hsnif  : ')
-         CALL prt_ctl(tab2d_1=frld       , clinfo1=' frld    : ', tab2d_2=hicifp     , clinfo2=' hicifp : ')
-         CALL prt_ctl(tab2d_1=phicif     , clinfo1=' phicif  : ', tab2d_2=pfrld      , clinfo2=' pfrld  : ')
-         CALL prt_ctl(tab2d_1=sist       , clinfo1=' sist    : ', tab2d_2=tbif(:,:,1), clinfo2=' tbif 1 : ')
-         CALL prt_ctl(tab2d_1=tbif(:,:,2), clinfo1=' tbif 2  : ', tab2d_2=tbif(:,:,3), clinfo2=' tbif 3 : ')
-         CALL prt_ctl(tab2d_1=fdtcn      , clinfo1=' fdtcn   : ', tab2d_2=qdtcn      , clinfo2=' qdtcn  : ')
-         CALL prt_ctl(tab2d_1=qstoif     , clinfo1=' qstoif  : ', tab2d_2=fsbbq      , clinfo2=' fsbbq  : ')
+         CALL prt_ctl(tab2d_1=hicif , clinfo1=' lim_thd: hicif   : ', tab2d_2=hsnif , clinfo2=' hsnif  : ')
+         CALL prt_ctl(tab2d_1=frld  , clinfo1=' lim_thd: frld    : ', tab2d_2=hicifp, clinfo2=' hicifp : ')
+         CALL prt_ctl(tab2d_1=phicif, clinfo1=' lim_thd: phicif  : ', tab2d_2=pfrld , clinfo2=' pfrld  : ')
+         CALL prt_ctl(tab2d_1=sist  , clinfo1=' lim_thd: sist    : ')
+         CALL prt_ctl(tab2d_1=tbif(:,:,1), clinfo1=' lim_thd: tbif 1  : ')
+         CALL prt_ctl(tab2d_1=tbif(:,:,2), clinfo1=' lim_thd: tbif 2  : ')
+         CALL prt_ctl(tab2d_1=tbif(:,:,3), clinfo1=' lim_thd: tbif 3  : ')
+         CALL prt_ctl(tab2d_1=fdtcn , clinfo1=' lim_thd: fdtcn   : ', tab2d_2=qdtcn , clinfo2=' qdtcn  : ')
+         CALL prt_ctl(tab2d_1=qstoif, clinfo1=' lim_thd: qstoif  : ', tab2d_2=fsbbq , clinfo2=' fsbbq  : ')
       ENDIF
        !
-   END SUBROUTINE lim_thd
-
-
-   SUBROUTINE lim_thd_init
+    END SUBROUTINE lim_thd_2
+
+
+    SUBROUTINE lim_thd_init_2
       !!-------------------------------------------------------------------
-      !!                   ***  ROUTINE lim_thd_init *** 
+      !!                   ***  ROUTINE lim_thd_init_2 *** 
       !!                 
       !! ** Purpose :   Physical constants and parameters linked to the ice 
@@ -427,6 +429,6 @@
       IF(lwp) THEN
          WRITE(numout,*)
-         WRITE(numout,*)'lim_thd_init : ice parameters for ice thermodynamic computation '
-         WRITE(numout,*)'~~~~~~~~~~~~'
+         WRITE(numout,*)'lim_thd_init_2: ice parameters for ice thermodynamic computation '
+         WRITE(numout,*)'~~~~~~~~~~~~~~'
          WRITE(numout,*)'       maximum melting at the bottom                           hmelt        = ', hmelt
          WRITE(numout,*)'       ice thick. for lateral accretion in NH (SH)             hiccrit(1/2) = ', hiccrit
@@ -458,15 +460,15 @@
       ENDIF
  
-   END SUBROUTINE lim_thd_init
+   END SUBROUTINE lim_thd_init_2
 
 #else
    !!----------------------------------------------------------------------
-   !!   Default option          Dummy module           NO LIM sea-ice model
+   !!   Default option          Dummy module       NO LIM 2.0 sea-ice model
    !!----------------------------------------------------------------------
 CONTAINS
-   SUBROUTINE lim_thd         ! Dummy routine
-   END SUBROUTINE lim_thd
+   SUBROUTINE lim_thd_2         ! Dummy routine
+   END SUBROUTINE lim_thd_2
 #endif
 
    !!======================================================================
-END MODULE limthd
+END MODULE limthd_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/limthd_lac.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/limthd_lac.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/limthd_lac.F90	(revision 881)
@@ -1,18 +1,18 @@
-MODULE limthd_lac
-#if defined key_ice_lim
-   !!======================================================================
-   !!                       ***  MODULE limthd_lac   ***
+MODULE limthd_lac_2
+#if defined key_lim2
+   !!======================================================================
+   !!                       ***  MODULE limthd_lac_2   ***
    !!                lateral thermodynamic growth of the ice 
    !!======================================================================
 
    !!----------------------------------------------------------------------
-   !!   lim_lat_acr    : lateral accretion of ice
+   !!   lim_lat_acr_2    : lateral accretion of ice
    !! * Modules used
    USE par_oce          ! ocean parameters
    USE phycst
-   USE ice_oce         ! ice variables
-   USE thd_ice
-   USE iceini
-   USE limistate 
+   USE ice_oce          ! ice variables
+   USE thd_ice_2
+   USE iceini_2
+   USE limistate_2 
      
    IMPLICIT NONE
@@ -20,5 +20,5 @@
 
    !! * Routine accessibility
-   PUBLIC lim_thd_lac     ! called by lim_thd
+   PUBLIC lim_thd_lac_2   ! called by lim_thd_2
 
    !! * Module variables
@@ -35,7 +35,7 @@
 CONTAINS
     
-   SUBROUTINE lim_thd_lac( kideb, kiut )
+   SUBROUTINE lim_thd_lac_2( kideb, kiut )
       !!-------------------------------------------------------------------
-      !!               ***   ROUTINE lim_thd_lac  ***
+      !!               ***   ROUTINE lim_thd_lac_2  ***
       !!  
       !! ** Purpose : Computation of the evolution of the ice thickness and 
@@ -220,13 +220,13 @@
       END DO
       
-   END SUBROUTINE lim_thd_lac
+   END SUBROUTINE lim_thd_lac_2
 #else
    !!======================================================================
-   !!                       ***  MODULE limthd_lac   ***
+   !!                       ***  MODULE limthd_lac_2   ***
    !!                           no sea ice model
    !!======================================================================
 CONTAINS
-   SUBROUTINE lim_thd_lac           ! Empty routine
-   END SUBROUTINE lim_thd_lac
+   SUBROUTINE lim_thd_lac_2           ! Empty routine
+   END SUBROUTINE lim_thd_lac_2
 #endif
-END MODULE limthd_lac
+END MODULE limthd_lac_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/limthd_zdf.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/limthd_zdf.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/limthd_zdf.F90	(revision 881)
@@ -1,5 +1,5 @@
-MODULE limthd_zdf
+MODULE limthd_zdf_2
    !!======================================================================
-   !!                       ***  MODULE limthd_zdf ***
+   !!                       ***  MODULE limthd_zdf_2 ***
    !!                thermodynamic growth and decay of the ice 
    !!======================================================================
@@ -7,17 +7,17 @@
    !!            2.0  !  02-08 (C. Ethe, G. Madec) F90
    !!----------------------------------------------------------------------
-#if defined key_ice_lim
-   !!----------------------------------------------------------------------
-   !!   'key_ice_lim'                                     LIM sea-ice model
-   !!----------------------------------------------------------------------
-   !!----------------------------------------------------------------------
-   !!   lim_thd_zdf  : vertical accr./abl. and lateral ablation of sea ice
+#if defined key_lim2
+   !!----------------------------------------------------------------------
+   !!   'key_lim2'                                    LIM 2.0 sea-ice model
+   !!----------------------------------------------------------------------
+   !!----------------------------------------------------------------------
+   !!   lim_thd_zdf_2 : vertical accr./abl. and lateral ablation of sea ice
    !!----------------------------------------------------------------------
    USE par_oce          ! ocean parameters
    USE phycst           ! ???
    USE ice_oce          ! ice variables
-   USE thd_ice
-   USE iceini
-   USE limistate
+   USE thd_ice_2
+   USE iceini_2
+   USE limistate_2
    USE in_out_manager
       
@@ -25,5 +25,5 @@
    PRIVATE
 
-   PUBLIC   lim_thd_zdf        ! called by lim_thd
+   PUBLIC   lim_thd_zdf_2        ! called by lim_thd_2
 
    REAL(wp) ::   epsi20 = 1.e-20  ,  &  ! constant values
@@ -39,7 +39,7 @@
 CONTAINS
 
-   SUBROUTINE lim_thd_zdf( kideb , kiut )
+   SUBROUTINE lim_thd_zdf_2( kideb , kiut )
       !!------------------------------------------------------------------
-      !!                ***  ROUTINE lim_thd_zdf  ***
+      !!                ***  ROUTINE lim_thd_zdf_2  ***
       !!              
       !! ** Purpose : This routine determines the time evolution of snow 
@@ -773,5 +773,5 @@
        END DO
        ! 
-    END SUBROUTINE lim_thd_zdf
+    END SUBROUTINE lim_thd_zdf_2
 
 #else
@@ -780,8 +780,8 @@
    !!----------------------------------------------------------------------
 CONTAINS
-   SUBROUTINE lim_thd_zdf          ! Empty routine
-   END SUBROUTINE lim_thd_zdf
+   SUBROUTINE lim_thd_zdf_2          ! Empty routine
+   END SUBROUTINE lim_thd_zdf_2
 #endif
 
    !!======================================================================
-END MODULE limthd_zdf
+END MODULE limthd_zdf_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/limtrp.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/limtrp.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/limtrp.F90	(revision 881)
@@ -1,13 +1,13 @@
-MODULE limtrp
+MODULE limtrp_2
    !!======================================================================
-   !!                       ***  MODULE limtrp   ***
-   !! LIM transport ice model : sea-ice advection/diffusion
+   !!                       ***  MODULE limtrp_2   ***
+   !! LIM 2.0 transport ice model : sea-ice advection/diffusion
    !!======================================================================
-#if defined key_ice_lim
-   !!----------------------------------------------------------------------
-   !!   'key_ice_lim' :                                   LIM sea-ice model
-   !!----------------------------------------------------------------------
-   !!   lim_trp      : advection/diffusion process of sea ice
-   !!   lim_trp_init : initialization and namelist read
+#if defined key_lim2
+   !!----------------------------------------------------------------------
+   !!   'key_lim2' :                                  LIM 2.0 sea-ice model
+   !!----------------------------------------------------------------------
+   !!   lim_trp_2      : advection/diffusion process of sea ice
+   !!   lim_trp_init_2 : initialization and namelist read
    !!----------------------------------------------------------------------
    !! * Modules used
@@ -17,10 +17,10 @@
    USE in_out_manager  ! I/O manager
    USE ice_oce         ! ice variables
-   USE dom_ice
-   USE ice
-   USE iceini
-   USE limistate
-   USE limadv
-   USE limhdf
+   USE dom_ice_2
+   USE ice_2
+   USE iceini_2
+   USE limistate_2
+   USE limadv_2
+   USE limhdf_2
    USE lbclnk
    USE lib_mpp
@@ -30,5 +30,5 @@
 
    !! * Routine accessibility
-   PUBLIC lim_trp       ! called by ice_step
+   PUBLIC lim_trp_2     ! called by sbc_ice_lim_2
 
    !! * Shared module variables
@@ -54,7 +54,7 @@
 CONTAINS
 
-   SUBROUTINE lim_trp( kt )
+   SUBROUTINE lim_trp_2( kt )
       !!-------------------------------------------------------------------
-      !!                   ***  ROUTINE lim_trp ***
+      !!                   ***  ROUTINE lim_trp_2 ***
       !!                    
       !! ** purpose : advection/diffusion process of sea ice
@@ -97,5 +97,5 @@
       !---------------------------------------------------------------------
 
-      IF( kt == nit000  )   CALL lim_trp_init      ! Initialization (first time-step only)
+      IF( kt == nit000  )   CALL lim_trp_init_2      ! Initialization (first time-step only)
 
       zsm(:,:) = area(:,:)
@@ -128,5 +128,5 @@
          IF (lk_mpp ) CALL mpp_max(zcfl)
 
-         IF ( zcfl > 0.5 .AND. lwp )   WRITE(numout,*) 'lim_trp : violation of cfl criterion the ',nday,'th day, cfl = ',zcfl
+         IF ( zcfl > 0.5 .AND. lwp )   WRITE(numout,*) 'lim_trp_2 : violation of cfl criterion the ',nday,'th day, cfl = ',zcfl
 
          ! content of properties
@@ -149,35 +149,35 @@
          IF ( MOD( nday , 2 ) == 0) THEN
             DO jk = 1,initad
-               CALL lim_adv_x( zusnit, zui_u, rone , zsm, zs0ice, sxice, sxxice, syice, syyice, sxyice )
-               CALL lim_adv_y( zusnit, zvi_v, rzero, zsm, zs0ice, sxice, sxxice, syice, syyice, sxyice )
-               CALL lim_adv_x( zusnit, zui_u, rone , zsm, zs0sn , sxsn , sxxsn , sysn , syysn , sxysn  )
-               CALL lim_adv_y( zusnit, zvi_v, rzero, zsm, zs0sn , sxsn , sxxsn , sysn , syysn , sxysn  )
-               CALL lim_adv_x( zusnit, zui_u, rone , zsm, zs0a  , sxa  , sxxa  , sya  , syya  , sxya   )
-               CALL lim_adv_y( zusnit, zvi_v, rzero, zsm, zs0a  , sxa  , sxxa  , sya  , syya  , sxya   )
-               CALL lim_adv_x( zusnit, zui_u, rone , zsm, zs0c0 , sxc0 , sxxc0 , syc0 , syyc0 , sxyc0  )
-               CALL lim_adv_y( zusnit, zvi_v, rzero, zsm, zs0c0 , sxc0 , sxxc0 , syc0 , syyc0 , sxyc0  )
-               CALL lim_adv_x( zusnit, zui_u, rone , zsm, zs0c1 , sxc1 , sxxc1 , syc1 , syyc1 , sxyc1  )
-               CALL lim_adv_y( zusnit, zvi_v, rzero, zsm, zs0c1 , sxc1 , sxxc1 , syc1 , syyc1 , sxyc1  )
-               CALL lim_adv_x( zusnit, zui_u, rone , zsm, zs0c2 , sxc2 , sxxc2 , syc2 , syyc2 , sxyc2  )
-               CALL lim_adv_y( zusnit, zvi_v, rzero, zsm, zs0c2 , sxc2 , sxxc2 , syc2 , syyc2 , sxyc2  )
-               CALL lim_adv_x( zusnit, zui_u, rone , zsm, zs0st , sxst , sxxst , syst , syyst , sxyst  )
-               CALL lim_adv_y( zusnit, zvi_v, rzero, zsm, zs0st , sxst , sxxst , syst , syyst , sxyst  )
+               CALL lim_adv_x_2( zusnit, zui_u, rone , zsm, zs0ice, sxice, sxxice, syice, syyice, sxyice )
+               CALL lim_adv_y_2( zusnit, zvi_v, rzero, zsm, zs0ice, sxice, sxxice, syice, syyice, sxyice )
+               CALL lim_adv_x_2( zusnit, zui_u, rone , zsm, zs0sn , sxsn , sxxsn , sysn , syysn , sxysn  )
+               CALL lim_adv_y_2( zusnit, zvi_v, rzero, zsm, zs0sn , sxsn , sxxsn , sysn , syysn , sxysn  )
+               CALL lim_adv_x_2( zusnit, zui_u, rone , zsm, zs0a  , sxa  , sxxa  , sya  , syya  , sxya   )
+               CALL lim_adv_y_2( zusnit, zvi_v, rzero, zsm, zs0a  , sxa  , sxxa  , sya  , syya  , sxya   )
+               CALL lim_adv_x_2( zusnit, zui_u, rone , zsm, zs0c0 , sxc0 , sxxc0 , syc0 , syyc0 , sxyc0  )
+               CALL lim_adv_y_2( zusnit, zvi_v, rzero, zsm, zs0c0 , sxc0 , sxxc0 , syc0 , syyc0 , sxyc0  )
+               CALL lim_adv_x_2( zusnit, zui_u, rone , zsm, zs0c1 , sxc1 , sxxc1 , syc1 , syyc1 , sxyc1  )
+               CALL lim_adv_y_2( zusnit, zvi_v, rzero, zsm, zs0c1 , sxc1 , sxxc1 , syc1 , syyc1 , sxyc1  )
+               CALL lim_adv_x_2( zusnit, zui_u, rone , zsm, zs0c2 , sxc2 , sxxc2 , syc2 , syyc2 , sxyc2  )
+               CALL lim_adv_y_2( zusnit, zvi_v, rzero, zsm, zs0c2 , sxc2 , sxxc2 , syc2 , syyc2 , sxyc2  )
+               CALL lim_adv_x_2( zusnit, zui_u, rone , zsm, zs0st , sxst , sxxst , syst , syyst , sxyst  )
+               CALL lim_adv_y_2( zusnit, zvi_v, rzero, zsm, zs0st , sxst , sxxst , syst , syyst , sxyst  )
             END DO
          ELSE
             DO jk = 1, initad
-               CALL lim_adv_y( zusnit, zvi_v, rone , zsm, zs0ice, sxice, sxxice, syice, syyice, sxyice )
-               CALL lim_adv_x( zusnit, zui_u, rzero, zsm, zs0ice, sxice, sxxice, syice, syyice, sxyice )
-               CALL lim_adv_y( zusnit, zvi_v, rone , zsm, zs0sn , sxsn , sxxsn , sysn , syysn , sxysn  )
-               CALL lim_adv_x( zusnit, zui_u, rzero, zsm, zs0sn , sxsn , sxxsn , sysn , syysn , sxysn  )
-               CALL lim_adv_y( zusnit, zvi_v, rone , zsm, zs0a  , sxa  , sxxa  , sya  , syya  , sxya   )
-               CALL lim_adv_x( zusnit, zui_u, rzero, zsm, zs0a  , sxa  , sxxa  , sya  , syya  , sxya   )
-               CALL lim_adv_y( zusnit, zvi_v, rone , zsm, zs0c0 , sxc0 , sxxc0 , syc0 , syyc0 , sxyc0  )
-               CALL lim_adv_x( zusnit, zui_u, rzero, zsm, zs0c0 , sxc0 , sxxc0 , syc0 , syyc0 , sxyc0  )
-               CALL lim_adv_y( zusnit, zvi_v, rone , zsm, zs0c1 , sxc1 , sxxc1 , syc1 , syyc1 , sxyc1  )
-               CALL lim_adv_x( zusnit, zui_u, rzero, zsm, zs0c1 , sxc1 , sxxc1 , syc1 , syyc1 , sxyc1  )
-               CALL lim_adv_y( zusnit, zvi_v, rone , zsm, zs0c2 , sxc2 , sxxc2 , syc2 , syyc2 , sxyc2  )
-               CALL lim_adv_x( zusnit, zui_u, rzero, zsm, zs0c2 , sxc2 , sxxc2 , syc2 , syyc2 , sxyc2  )
-               CALL lim_adv_y( zusnit, zvi_v, rone , zsm, zs0st , sxst , sxxst , syst , syyst , sxyst  )
-               CALL lim_adv_x( zusnit, zui_u, rzero, zsm, zs0st , sxst , sxxst , syst , syyst , sxyst  )
+               CALL lim_adv_y_2( zusnit, zvi_v, rone , zsm, zs0ice, sxice, sxxice, syice, syyice, sxyice )
+               CALL lim_adv_x_2( zusnit, zui_u, rzero, zsm, zs0ice, sxice, sxxice, syice, syyice, sxyice )
+               CALL lim_adv_y_2( zusnit, zvi_v, rone , zsm, zs0sn , sxsn , sxxsn , sysn , syysn , sxysn  )
+               CALL lim_adv_x_2( zusnit, zui_u, rzero, zsm, zs0sn , sxsn , sxxsn , sysn , syysn , sxysn  )
+               CALL lim_adv_y_2( zusnit, zvi_v, rone , zsm, zs0a  , sxa  , sxxa  , sya  , syya  , sxya   )
+               CALL lim_adv_x_2( zusnit, zui_u, rzero, zsm, zs0a  , sxa  , sxxa  , sya  , syya  , sxya   )
+               CALL lim_adv_y_2( zusnit, zvi_v, rone , zsm, zs0c0 , sxc0 , sxxc0 , syc0 , syyc0 , sxyc0  )
+               CALL lim_adv_x_2( zusnit, zui_u, rzero, zsm, zs0c0 , sxc0 , sxxc0 , syc0 , syyc0 , sxyc0  )
+               CALL lim_adv_y_2( zusnit, zvi_v, rone , zsm, zs0c1 , sxc1 , sxxc1 , syc1 , syyc1 , sxyc1  )
+               CALL lim_adv_x_2( zusnit, zui_u, rzero, zsm, zs0c1 , sxc1 , sxxc1 , syc1 , syyc1 , sxyc1  )
+               CALL lim_adv_y_2( zusnit, zvi_v, rone , zsm, zs0c2 , sxc2 , sxxc2 , syc2 , syyc2 , sxyc2  )
+               CALL lim_adv_x_2( zusnit, zui_u, rzero, zsm, zs0c2 , sxc2 , sxxc2 , syc2 , syyc2 , sxyc2  )
+               CALL lim_adv_y_2( zusnit, zvi_v, rone , zsm, zs0st , sxst , sxxst , syst , syyst , sxyst  )
+               CALL lim_adv_x_2( zusnit, zui_u, rzero, zsm, zs0st , sxst , sxxst , syst , syyst , sxyst  )
             END DO
          ENDIF
@@ -211,11 +211,11 @@
          ! diffusion
          ! ---------
-         CALL lim_hdf( zs0ice )
-         CALL lim_hdf( zs0sn  )
-         CALL lim_hdf( zs0a   )
-         CALL lim_hdf( zs0c0  )
-         CALL lim_hdf( zs0c1  )
-         CALL lim_hdf( zs0c2  )
-         CALL lim_hdf( zs0st  )
+         CALL lim_hdf_2( zs0ice )
+         CALL lim_hdf_2( zs0sn  )
+         CALL lim_hdf_2( zs0a   )
+         CALL lim_hdf_2( zs0c0  )
+         CALL lim_hdf_2( zs0c1  )
+         CALL lim_hdf_2( zs0c2  )
+         CALL lim_hdf_2( zs0st  )
 
          zs0ice(:,:) = MAX( rzero, zs0ice(:,:) * area(:,:) )    !!bug:  est-ce utile
@@ -278,10 +278,10 @@
       ENDIF
       
-   END SUBROUTINE lim_trp
-
-
-   SUBROUTINE lim_trp_init
+   END SUBROUTINE lim_trp_2
+
+
+   SUBROUTINE lim_trp_init_2
       !!-------------------------------------------------------------------
-      !!                  ***  ROUTINE lim_trp_init  ***
+      !!                  ***  ROUTINE lim_trp_init_2  ***
       !!
       !! ** Purpose :   initialization of ice advection parameters
@@ -303,10 +303,10 @@
       IF(lwp) THEN
          WRITE(numout,*)
-         WRITE(numout,*) 'lim_trp_init : Ice parameters for advection '
-         WRITE(numout,*) '~~~~~~~~~~~~'
+         WRITE(numout,*) 'lim_trp_init_2 : Ice parameters for advection '
+         WRITE(numout,*) '~~~~~~~~~~~~~~'
          WRITE(numout,*) '   boundary conditions (0. no-slip, 1. free-slip) bound  = ', bound
       ENDIF
             
-   END SUBROUTINE lim_trp_init
+   END SUBROUTINE lim_trp_init_2
 
 #else
@@ -315,8 +315,8 @@
    !!----------------------------------------------------------------------
 CONTAINS
-   SUBROUTINE lim_trp        ! Empty routine
-   END SUBROUTINE lim_trp
+   SUBROUTINE lim_trp_2        ! Empty routine
+   END SUBROUTINE lim_trp_2
 #endif
 
    !!======================================================================
-END MODULE limtrp
+END MODULE limtrp_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/limwri.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/limwri.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/limwri.F90	(revision 881)
@@ -1,5 +1,5 @@
-MODULE limwri
+MODULE limwri_2
    !!======================================================================
-   !!                     ***  MODULE  limwri  ***
+   !!                     ***  MODULE  limwri_2  ***
    !!         Ice diagnostics :  write ice output files
    !!======================================================================
@@ -7,11 +7,11 @@
    !!            2.0  ! 04-10  (C. Ethe )  1D configuration
    !!-------------------------------------------------------------------
-#if defined key_ice_lim
-   !!----------------------------------------------------------------------
-   !!   'key_ice_lim'                                     LIM sea-ice model
-   !!----------------------------------------------------------------------
-   !!----------------------------------------------------------------------
-   !!   lim_wri      : write of the diagnostics variables in ouput file 
-   !!   lim_wri_init : initialization and namelist read
+#if defined key_lim2
+   !!----------------------------------------------------------------------
+   !!   'key_lim2'                                    LIM 2.0 sea-ice model
+   !!----------------------------------------------------------------------
+   !!----------------------------------------------------------------------
+   !!   lim_wri_2      : write of the diagnostics variables in ouput file 
+   !!   lim_wri_init_2 : initialization and namelist read
    !!----------------------------------------------------------------------
    USE phycst
@@ -21,6 +21,6 @@
    USE sbc_oce
    USE sbc_ice
-   USE dom_ice
-   USE ice
+   USE dom_ice_2
+   USE ice_2
 
    USE lbclnk
@@ -32,5 +32,5 @@
    PRIVATE
 
-   PUBLIC   lim_wri        ! routine called by sbcice_lim module
+   PUBLIC   lim_wri_2      ! routine called by sbc_ice_lim_2
 
    INTEGER, PARAMETER                       ::   jpnoumax = 40   ! maximum number of variable for ice output
@@ -55,5 +55,5 @@
    !!----------------------------------------------------------------------
    !!  LIM 2.0, UCL-LOCEAN-IPSL (2006)
-   !! $Header: $
+   !! $ Id: $
    !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt)
    !!----------------------------------------------------------------------
@@ -65,5 +65,5 @@
    !!   'key_dimgout'                                    Direct Access file
    !!----------------------------------------------------------------------
-# include "limwri_dimg.h90"
+# include "limwri_dimg_2.h90"
 #else
    !!----------------------------------------------------------------------
@@ -71,7 +71,7 @@
    !!----------------------------------------------------------------------
 
-   SUBROUTINE lim_wri( kt )
-      !!-------------------------------------------------------------------
-      !!                    ***   ROUTINE lim_wri  ***
+   SUBROUTINE lim_wri_2( kt )
+      !!-------------------------------------------------------------------
+      !!                    ***   ROUTINE lim_wri_2  ***
       !!                
       !! ** Purpose :   write the sea-ice output file in NetCDF
@@ -96,5 +96,5 @@
       IF( kt == nit000 ) THEN                    !   Initialisation   !
          !                                       !--------------------!
-         CALL lim_wri_init 
+         CALL lim_wri_init_2 
                            
          zsto     = rdt_ice
@@ -183,11 +183,11 @@
       IF( ( nn_fsbc * niter + nit000 - 1 ) >= nitend )   CALL histclo( nice ) 
       !
-   END SUBROUTINE lim_wri
+   END SUBROUTINE lim_wri_2
    
 #endif
    
-   SUBROUTINE lim_wri_init
-      !!-------------------------------------------------------------------
-      !!                    ***   ROUTINE lim_wri_init  ***
+   SUBROUTINE lim_wri_init_2
+      !!-------------------------------------------------------------------
+      !!                    ***   ROUTINE lim_wri_init_2  ***
       !!                
       !! ** Purpose :   intialisation of LIM sea-ice output
@@ -255,6 +255,6 @@
       IF(lwp) THEN
          WRITE(numout,*)
-         WRITE(numout,*) 'lim_wri_init : Ice parameters for outputs'
-         WRITE(numout,*) '~~~~~~~~~~~~'
+         WRITE(numout,*) 'lim_wri_init_2 : Ice parameters for outputs'
+         WRITE(numout,*) '~~~~~~~~~~~~~~'
          WRITE(numout,*) '    number of fields to be stored         noumef = ', noumef
          WRITE(numout,*) '           title                            name     unit      Saving (1/0) ',   &
@@ -266,15 +266,15 @@
       ENDIF
       !    
-   END SUBROUTINE lim_wri_init
+   END SUBROUTINE lim_wri_init_2
 
 #else
    !!----------------------------------------------------------------------
-   !!   Default option :         Empty module          NO LIM sea-ice model
+   !!   Default option :         Empty module      NO LIM 2.0 sea-ice model
    !!----------------------------------------------------------------------
 CONTAINS
-   SUBROUTINE lim_wri          ! Empty routine
-   END SUBROUTINE lim_wri
+   SUBROUTINE lim_wri_2          ! Empty routine
+   END SUBROUTINE lim_wri_2
 #endif
 
    !!======================================================================
-END MODULE limwri
+END MODULE limwri_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/limwri_dimg.h90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/limwri_dimg.h90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/limwri_dimg.h90	(revision 881)
@@ -1,3 +1,3 @@
-    SUBROUTINE lim_wri(kt)
+    SUBROUTINE lim_wri_2(kt)
    !!----------------------------------------------------------------------
    !!  LIM 2.0, UCL-LOCEAN-IPSL (2005)
@@ -52,5 +52,5 @@
     IF ( kt == nit000 ) THEN 
 
-       CALL lim_wri_init 
+       CALL lim_wri_init_2 
 
        nwf = 0 
@@ -58,5 +58,5 @@
 
        IF (lwp ) THEN
-          WRITE(numout,*) 'lim_wri : Write ice outputs in dimg'
+          WRITE(numout,*) 'lim_wri_2 : Write ice outputs in dimg'
           WRITE(numout,*) '~~~~~~~~'
           WRITE(numout,*) '   According to namelist_ice, following fields saved:'
@@ -203,3 +203,3 @@
        END IF     !  MOD(kt+nn_fsbc-1-nit000+1, nwrite == 0 ) !
 
-     END SUBROUTINE lim_wri
+     END SUBROUTINE lim_wri_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/par_ice.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/par_ice.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/par_ice.F90	(revision 881)
@@ -1,5 +1,6 @@
-MODULE par_ice
+MODULE par_ice_2
+#if defined key_lim2
    !!======================================================================
-   !!                       ***  MODULE par_ice   ***
+   !!                       ***  MODULE par_ice_2   ***
    !! Sea-Ice model : definition of the parameters
    !!======================================================================
@@ -24,3 +25,4 @@
 
    !!======================================================================
-END MODULE par_ice
+#endif
+END MODULE par_ice_2
Index: branches/dev_001_SBC/NEMO/LIM_SRC/thd_ice.F90
===================================================================
--- branches/dev_001_SBC/NEMO/LIM_SRC/thd_ice.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/LIM_SRC/thd_ice.F90	(revision 881)
@@ -1,6 +1,7 @@
-MODULE thd_ice
+MODULE thd_ice_2
+#if defined key_lim2
    !!======================================================================
-   !!                       ***  MODULE thd_ice  ***
-   !! LIM sea-ice :   Ice thermodynamics in 1D
+   !!                       ***  MODULE thd_ice_2  ***
+   !! LIM 2.0 sea-ice :   Ice thermodynamics in 1D
    !!=====================================================================
    !! History :
@@ -12,5 +13,5 @@
    !!----------------------------------------------------------------------
    !! * Modules used
-   USE par_ice
+   USE par_ice_2
 
    IMPLICIT NONE
@@ -82,3 +83,4 @@
 
    !!======================================================================
-END MODULE thd_ice
+#endif
+END MODULE thd_ice_2
Index: branches/dev_001_SBC/NEMO/NST_SRC/agrif_user.F90
===================================================================
--- branches/dev_001_SBC/NEMO/NST_SRC/agrif_user.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/NST_SRC/agrif_user.F90	(revision 881)
@@ -65,5 +65,5 @@
       USE sol_oce
       USE in_out_manager
-#if defined key_ice_lim
+#if defined key_lim2
       USE ice_oce
 #endif
Index: branches/dev_001_SBC/NEMO/OPA_SRC/DIA/diawri.F90
===================================================================
--- branches/dev_001_SBC/NEMO/OPA_SRC/DIA/diawri.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/OPA_SRC/DIA/diawri.F90	(revision 881)
@@ -244,5 +244,5 @@
             &          jpi, jpj, nh_T, 1  , 1, 1  , -99 , 32, clop, zsto, zout )
 #endif
-!!$#if ! defined key_dynspg_rl && defined key_ice_lim
+!!$#if ! defined key_dynspg_rl && defined key_lim2
 !!$         ! sowaflup = sowaflep + sorunoff + sowafldp + a term associated to
 !!$         !    internal damping to Levitus that can be diagnosed from others
@@ -282,5 +282,5 @@
 
 
-#if ( defined key_coupled && ! defined key_ice_lim ) 
+#if ( defined key_coupled && ! defined key_lim2 ) 
          CALL histdef( nid_T, "sohefldp", "Surface Heat Flux: Damping"         , "W/m2"   ,   &  ! qrp
             &          jpi, jpj, nh_T, 1  , 1, 1  , -99 , 32, clop, zsto, zout )
@@ -308,5 +308,5 @@
 #endif
 
-#if defined key_ice_lim && defined key_coupled
+#if defined key_lim2 && defined key_coupled
          CALL histdef( nid_T,"soicetem" , "Ice Surface Temperature"            , "K"      ,   &  ! tn_ice
             &          jpi, jpj, nh_T, 1  , 1, 1  , -99 , 32, clop, zsto, zout )
@@ -414,5 +414,5 @@
       CALL histwrite( nid_T, "sossheig", it, sshn          , ndim_hT, ndex_hT )   ! sea surface height
 #endif
-!!$#if ! defined key_dynspg_rl && defined key_ice_lim
+!!$#if ! defined key_dynspg_rl && defined key_lim2
 !!$      CALL histwrite( nid_T, "iowaflup", it, fsalt(:,:)    , ndim_hT, ndex_hT )   ! ice=>ocean water flux
 !!$      CALL histwrite( nid_T, "sowaflep", it, fmass(:,:)    , ndim_hT, ndex_hT )   ! atmos=>ocean water flux
@@ -434,5 +434,5 @@
       CALL histwrite( nid_T, "sosafldp", it, zw2d          , ndim_hT, ndex_hT )   ! salt flux damping
 #endif
-#if ( defined key_coupled && ! defined key_ice_lim ) 
+#if ( defined key_coupled && ! defined key_lim2 ) 
       CALL histwrite( nid_T, "sohefldp", it, qrp           , ndim_hT, ndex_hT )   ! heat flux damping
       CALL histwrite( nid_T, "sowafldp", it, erp           , ndim_hT, ndex_hT )   ! freshwater flux damping
@@ -452,5 +452,5 @@
       CALL histwrite( nid_T, "sohtc300", it, htc3          , ndim_hT, ndex_hT )   ! first 300m heaat content
 #endif
-#if defined key_ice_lim &&  defined key_coupled 
+#if defined key_lim2 &&  defined key_coupled 
       CALL histwrite( nid_T, "soicetem", it, tn_ice        , ndim_hT, ndex_hT )   ! surf. ice temperature
       CALL histwrite( nid_T, "soicealb", it, alb_ice       , ndim_hT, ndex_hT )   ! ice albedo
Index: branches/dev_001_SBC/NEMO/OPA_SRC/DIA/diawri_dimg.h90
===================================================================
--- branches/dev_001_SBC/NEMO/OPA_SRC/DIA/diawri_dimg.h90	(revision 880)
+++ branches/dev_001_SBC/NEMO/OPA_SRC/DIA/diawri_dimg.h90	(revision 881)
@@ -186,5 +186,5 @@
        !        fsel(:,:,15) = fsel(:,:,15) + fbt(:,:)
        fsel(:,:,16) = fsel(:,:,16) + emps(:,:)
-#if defined key_ice_lim
+#if defined key_lim2
        fsel(:,:,17) = fsel(:,:,17) + fsalt(:,:)
 #endif
@@ -276,5 +276,5 @@
           !         fsel(:,:,15) =  fbt(:,:)
           fsel(:,:,16) =  emps(:,:) * tmask(:,:,1)
-#if defined key_ice_lim
+#if defined key_lim2
           fsel(:,:,17) =  fsalt(:,:) * tmask(:,:,1)
 #endif
Index: branches/dev_001_SBC/NEMO/OPA_SRC/SBC/albedo.F90
===================================================================
--- branches/dev_001_SBC/NEMO/OPA_SRC/SBC/albedo.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/OPA_SRC/SBC/albedo.F90	(revision 881)
@@ -50,7 +50,7 @@
 CONTAINS
 
-#if defined key_ice_lim
-   !!----------------------------------------------------------------------
-   !!   'key_ice_lim'                                         LIM ice model
+#if defined key_lim2
+   !!----------------------------------------------------------------------
+   !!   'key_lim2'                                        LIM 2.0 ice model
    !!----------------------------------------------------------------------
 
@@ -68,5 +68,5 @@
       !! References :   Shine and Hendersson-Sellers 1985, JGR, 90(D1), 2243-2250.
       !!----------------------------------------------------------------------
-      USE ice             ! ???
+      USE ice_2             ! ???
       !!
       REAL(wp), INTENT(out), DIMENSION(jpi,jpj) ::   palb     ! albedo of ice under overcast sky
Index: branches/dev_001_SBC/NEMO/OPA_SRC/SBC/cpl_oasis3.F90
===================================================================
--- branches/dev_001_SBC/NEMO/OPA_SRC/SBC/cpl_oasis3.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/OPA_SRC/SBC/cpl_oasis3.F90	(revision 881)
@@ -51,5 +51,5 @@
 
    USE oce, only: tn, un, vn
-   USE ice, only: frld, hicif, hsnif
+   USE ice_2, only: frld, hicif, hsnif
 
    IMPLICIT NONE
Index: branches/dev_001_SBC/NEMO/OPA_SRC/SBC/sbc_ice.F90
===================================================================
--- branches/dev_001_SBC/NEMO/OPA_SRC/SBC/sbc_ice.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/OPA_SRC/SBC/sbc_ice.F90	(revision 881)
@@ -6,7 +6,7 @@
    !! History :  9.0  !  06-08  (G. Modec)  Surface module
    !!----------------------------------------------------------------------
-#if defined key_ice_lim
+#if defined key_lim2
    !!----------------------------------------------------------------------
-   !!   'key_ice_lim' :                                   Lim sea-ice model
+   !!   'key_lim2' :                                  LIM 2.0 sea-ice model
    !!----------------------------------------------------------------------
    USE par_oce          ! ocean parameters
Index: branches/dev_001_SBC/NEMO/OPA_SRC/SBC/sbcblk_clio.F90
===================================================================
--- branches/dev_001_SBC/NEMO/OPA_SRC/SBC/sbcblk_clio.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/OPA_SRC/SBC/sbcblk_clio.F90	(revision 881)
@@ -30,7 +30,6 @@
    USE albedo
    USE prtctl          ! Print control
-#if defined key_lim3
-   USE par_ice
-#elif defined key_lim2
+#if defined key_lim2
+   USE par_ice_2
    USE ice_2
 #endif
Index: branches/dev_001_SBC/NEMO/OPA_SRC/SBC/sbccpl.F90
===================================================================
--- branches/dev_001_SBC/NEMO/OPA_SRC/SBC/sbccpl.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/OPA_SRC/SBC/sbccpl.F90	(revision 881)
@@ -27,5 +27,5 @@
    USE cpl_oasis4      ! OASIS4 coupling (to ECHAM5)
    USE geo2ocean, ONLY : repere, repcmo
-   USE ice, only       : frld       ! : leads fraction = 1-a/totalarea
+   USE ice_2, only     : frld       ! : leads fraction = 1-a/totalarea
 
    USE sbc_oce         ! Surface boundary condition: ocean fields
@@ -64,5 +64,5 @@
                        fr2_i0       ! : 2nd part of the fraction of sol.rad. which penetrate inside the ice cover
 
-   USE ice, only    : hicif ,     & ! : ice thickness
+   USE ice_2, only  : hicif ,     & ! : ice thickness
                       frld  ,     & ! : leads fraction = 1-a/totalarea
                       hsnif  ,    & ! : snow thickness
Index: branches/dev_001_SBC/NEMO/OPA_SRC/SBC/sbcice_lim.F90
===================================================================
--- branches/dev_001_SBC/NEMO/OPA_SRC/SBC/sbcice_lim.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/OPA_SRC/SBC/sbcice_lim.F90	(revision 881)
@@ -1,25 +1,25 @@
-MODULE sbcice_lim
+MODULE sbcice_lim_2
    !!======================================================================
-   !!                       ***  MODULE  sbcice  ***
+   !!                       ***  MODULE  sbcice_lim_2  ***
    !! Surface module :  update surface ocean boundary condition over ice
    !!                   covered area using LIM sea-ice model
-   !! Sea-Ice model  :  LIM Sea ice model time-stepping
+   !! Sea-Ice model  :  LIM 2.0 Sea ice model time-stepping
    !!======================================================================
-   !! History :  9.0   !  06-06  (G. Madec)  from icestp.F90
+   !! History :  9.0   !  06-06  (G. Madec)  from icestp_2.F90
    !!----------------------------------------------------------------------
-#if defined key_ice_lim
+#if defined key_lim2
    !!----------------------------------------------------------------------
-   !!   'key_ice_lim' :                                   Lim sea-ice model
+   !!   'key_lim2' :                                  LIM 2.0 sea-ice model
    !!----------------------------------------------------------------------
    !!----------------------------------------------------------------------
-   !!   sbc_ice_lim    : sea-ice model time-stepping and
+   !!   sbc_ice_lim_2  : sea-ice model time-stepping and
    !!                    update ocean sbc over ice-covered area
    !!----------------------------------------------------------------------
    USE oce             ! ocean dynamics and tracers
    USE dom_oce         ! ocean space and time domain
-   USE ice
-   USE iceini
+   USE ice_2
+   USE iceini_2
    USE ice_oce         ! ice variables
-   USE dom_ice
+   USE dom_ice_2
    USE cpl_oce
 
@@ -33,12 +33,12 @@
    USE phycst          ! Define parameters for the routines
    USE eosbn2          ! equation of state
-   USE limdyn
-   USE limtrp
-   USE limdmp
-   USE limthd
-   USE limsbc          ! sea surface boundary condition
-   USE limdia
-   USE limwri
-   USE limrst
+   USE limdyn_2
+   USE limtrp_2
+   USE limdmp_2
+   USE limthd_2
+   USE limsbc_2        ! sea surface boundary condition
+   USE limdia_2
+   USE limwri_2
+   USE limrst_2
 
    USE lbclnk
@@ -50,5 +50,5 @@
    PRIVATE
 
-   PUBLIC sbc_ice_lim ! routine called by step.F90
+   PUBLIC sbc_ice_lim_2 ! routine called by sbcmod.F90
    
    !! * Substitutions
@@ -57,5 +57,5 @@
    !!----------------------------------------------------------------------
    !!   OPA 9.0 , LOCEAN-IPSL (2006) 
-   !! $Header: /
+   !! $ Id: $
    !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt)
    !!----------------------------------------------------------------------
@@ -63,7 +63,7 @@
 CONTAINS
 
-   SUBROUTINE sbc_ice_lim( kt, kblk )
+   SUBROUTINE sbc_ice_lim_2( kt, kblk )
       !!---------------------------------------------------------------------
-      !!                  ***  ROUTINE ice_stp  ***
+      !!                  ***  ROUTINE sbc_ice_lim_2  ***
       !!                   
       !! ** Purpose :   update the ocean surface boundary condition via the 
@@ -95,8 +95,8 @@
       IF( kt == nit000 ) THEN
          IF(lwp) WRITE(numout,*)
-         IF(lwp) WRITE(numout,*) 'sbc_ice_lim : update ocean surface boudary condition' 
-         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~   via Louvain la Neuve Ice Model (LIM) time stepping'
+         IF(lwp) WRITE(numout,*) 'sbc_ice_lim_2 : update ocean surface boudary condition' 
+         IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~~   via Louvain la Neuve Ice Model (LIM) time stepping'
 
-         CALL ice_init
+         CALL ice_init_2
 
       ENDIF
@@ -161,29 +161,29 @@
          !  Ice model step  !
          ! ---------------- !
-         ;                              CALL lim_rst_opn  ( kt )      ! Open Ice restart file
-         ;                              CALL lim_dyn      ( kt )      ! Ice dynamics    ( rheology/dynamics )
-         ;                              CALL lim_trp      ( kt )      ! Ice transport   ( Advection/diffusion )
-         IF( ln_limdmp )                CALL lim_dmp      ( kt )      ! Ice damping 
-         ;                              CALL lim_thd      ( kt )      ! Ice thermodynamics 
-         ;                              CALL lim_sbc      ( kt )      ! Ice/Ocean Mass & Heat fluxes 
+         ;                              CALL lim_rst_opn_2  ( kt )      ! Open Ice restart file
+         ;                              CALL lim_dyn_2      ( kt )      ! Ice dynamics    ( rheology/dynamics )
+         ;                              CALL lim_trp_2      ( kt )      ! Ice transport   ( Advection/diffusion )
+         IF( ln_limdmp )                CALL lim_dmp_2      ( kt )      ! Ice damping 
+         ;                              CALL lim_thd_2      ( kt )      ! Ice thermodynamics 
+         ;                              CALL lim_sbc_2      ( kt )      ! Ice/Ocean Mass & Heat fluxes 
          IF( MOD( kt+nn_fsbc-1, ninfo ) == 0 .OR.   &
-            &  ntmoy == 1 )             CALL lim_dia      ( kt )      ! Ice Diagnostics 
-         ;                              CALL lim_wri      ( kt )      ! Ice outputs 
-         IF( lrst_ice )                 CALL lim_rst_write( kt )      ! Ice restart file 
+            &  ntmoy == 1 )             CALL lim_dia_2      ( kt )      ! Ice Diagnostics 
+         ;                              CALL lim_wri_2      ( kt )      ! Ice outputs 
+         IF( lrst_ice )                 CALL lim_rst_write_2( kt )      ! Ice restart file 
          !
       ENDIF
       !
-   END SUBROUTINE sbc_ice_lim
+   END SUBROUTINE sbc_ice_lim_2
 
 #else
    !!----------------------------------------------------------------------
-   !!   Default option           Dummy module          NO LIM sea-ice model
+   !!   Default option           Dummy module      NO LIM 2.0 sea-ice model
    !!----------------------------------------------------------------------
 CONTAINS
-   SUBROUTINE sbc_ice_lim ( kt, kblk )     ! Dummy routine
-      WRITE(*,*) 'sbc_ice_lim: You should not have seen this print! error?', kt, kblk
-   END SUBROUTINE sbc_ice_lim
+   SUBROUTINE sbc_ice_lim_2 ( kt, kblk )     ! Dummy routine
+      WRITE(*,*) 'sbc_ice_lim_2: You should not have seen this print! error?', kt, kblk
+   END SUBROUTINE sbc_ice_lim_2
 #endif
 
    !!======================================================================
-END MODULE sbcice_lim
+END MODULE sbcice_lim_2
Index: branches/dev_001_SBC/NEMO/OPA_SRC/SBC/sbcmod.F90
===================================================================
--- branches/dev_001_SBC/NEMO/OPA_SRC/SBC/sbcmod.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/OPA_SRC/SBC/sbcmod.F90	(revision 881)
@@ -26,5 +26,5 @@
    USE sbcblk_core     ! surface boundary condition: bulk formulation : CORE
    USE sbcice_if       ! surface boundary condition: ice-if sea-ice model
-   USE sbcice_lim      ! surface boundary condition: LIM sea-ice model
+   USE sbcice_lim_2    ! surface boundary condition: LIM 2.0 sea-ice model
    USE sbccpl          ! surface boundary condition: coupled florulation
    USE sbcssr          ! surface boundary condition: sea surface restoring
@@ -228,5 +228,5 @@
       CASE(  1 )   ;         CALL sbc_ice_if ( kt )                  ! Ice-cover climatology ("Ice-if" model)
          !                                                           ! (update heat and freshwater fluxes)
-      CASE(  2 )   ;         CALL sbc_ice_lim( kt, nsbc )            ! LIM ice model
+      CASE(  2 )   ;         CALL sbc_ice_lim_2( kt, nsbc )          ! LIM 2.0 ice model
       END SELECT                                                     ! (update all fluxes using bulk + LIM)
 
Index: branches/dev_001_SBC/NEMO/OPA_SRC/TRA/traadv_cen2.F90
===================================================================
--- branches/dev_001_SBC/NEMO/OPA_SRC/TRA/traadv_cen2.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/OPA_SRC/TRA/traadv_cen2.F90	(revision 881)
@@ -161,5 +161,5 @@
                   rnfmsk(ji,jj) * rnfmsk_z(jk),      &  ! near runoff mouths (& closed sea outflows)
                   upsmsk(ji,jj)                      &  ! some of some straits
-#if defined key_ice_lim
+#if defined key_lim2
                   !                                     ! below ice covered area (if tn < "freezing"+0.1 )
                   , MAX(  0., SIGN( 1., fzptn(ji,jj) + 0.1 - tn(ji,jj,jk) )  ) * tmask(ji,jj,jk)   &
Index: branches/dev_001_SBC/NEMO/OPA_SRC/cpl_oce.F90
===================================================================
--- branches/dev_001_SBC/NEMO/OPA_SRC/cpl_oce.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/OPA_SRC/cpl_oce.F90	(revision 881)
@@ -218,5 +218,5 @@
       qsrc           !: solar radiation (w m-2)
 
-#  if defined key_ice_lim
+#  if defined key_lim2
    REAL(wp), DIMENSION(jpi,jpj) ::   &  !:
       watm        ,    &  !:
Index: branches/dev_001_SBC/NEMO/OPA_SRC/ice_oce.F90
===================================================================
--- branches/dev_001_SBC/NEMO/OPA_SRC/ice_oce.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/OPA_SRC/ice_oce.F90	(revision 881)
@@ -11,7 +11,7 @@
    !! This software is governed by the CeCILL licence see modipsl/doc/NEMO_CeCILL.txt 
    !!----------------------------------------------------------------------
-#if defined key_ice_lim
+#if defined key_lim2
    !!----------------------------------------------------------------------
-   !!   'key_ice_lim'   :                                     LIM ice model
+   !!   'key_lim2'   :                                    LIM 2.0 ice model
    !!----------------------------------------------------------------------
    !! * Modules used
@@ -46,5 +46,5 @@
 #else
    !!----------------------------------------------------------------------
-   !!   Default option                                 NO LIM sea-ice model
+   !!   Default option                             NO LIM 2.0 sea-ice model
    !!----------------------------------------------------------------------
    LOGICAL, PUBLIC, PARAMETER ::   lk_ice_lim = .FALSE.  !: No LIM ice model
Index: branches/dev_001_SBC/NEMO/OPA_SRC/restart.F90
===================================================================
--- branches/dev_001_SBC/NEMO/OPA_SRC/restart.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/OPA_SRC/restart.F90	(revision 881)
@@ -193,5 +193,5 @@
       !!----------------------------------------------------------------------
       REAL(wp) ::   zcoef, zkt, zrdt, zrdttra1, zndastp
-#if defined key_ice_lim
+#if defined key_lim2
       INTEGER  ::   ji, jj
 #endif
Index: branches/dev_001_SBC/NEMO/TOP_SRC/TRP/trcadv_cen2.F90
===================================================================
--- branches/dev_001_SBC/NEMO/TOP_SRC/TRP/trcadv_cen2.F90	(revision 880)
+++ branches/dev_001_SBC/NEMO/TOP_SRC/TRP/trcadv_cen2.F90	(revision 881)
@@ -164,5 +164,5 @@
                zind(ji,jj,jk) =  MAX ( upsrnfh(ji,jj) * upsrnfz(jk),     &  ! changing advection scheme near runoff
                   &                    upsadv(ji,jj)                     &  ! in the vicinity of some straits
-#if defined key_ice_lim
+#if defined key_lim2
                   &                  , tmask(ji,jj,jk)                   &  ! half upstream tracer fluxes
                   &                  * MAX( 0., SIGN( 1., fzptn(ji,jj)   &  ! if tn < ("freezing"+0.1 )
