Index: branches/2014/dev_r4650_UKMO11_restart_functionality/NEMOGCM/NEMO/OFF_SRC/domain.F90
===================================================================
--- branches/2014/dev_r4650_UKMO11_restart_functionality/NEMOGCM/NEMO/OFF_SRC/domain.F90	(revision 4763)
+++ branches/2014/dev_r4650_UKMO11_restart_functionality/NEMOGCM/NEMO/OFF_SRC/domain.F90	(revision 5208)
@@ -335,5 +335,5 @@
       INTEGER ::   ios
       !!
-      NAMELIST/namzgr/ ln_zco, ln_zps, ln_sco
+      NAMELIST/namzgr/ ln_zco, ln_zps, ln_sco, ln_isfcav
       !!----------------------------------------------------------------------
 
@@ -352,7 +352,8 @@
          WRITE(numout,*) '~~~~~~~'
          WRITE(numout,*) '          Namelist namzgr : set vertical coordinate'
-         WRITE(numout,*) '             z-coordinate - full steps      ln_zco = ', ln_zco
-         WRITE(numout,*) '             z-coordinate - partial steps   ln_zps = ', ln_zps
-         WRITE(numout,*) '             s- or hybrid z-s-coordinate    ln_sco = ', ln_sco
+         WRITE(numout,*) '             z-coordinate - full steps      ln_zco    = ', ln_zco
+         WRITE(numout,*) '             z-coordinate - partial steps   ln_zps    = ', ln_zps
+         WRITE(numout,*) '             s- or hybrid z-s-coordinate    ln_sco    = ', ln_sco
+         WRITE(numout,*) '             ice shelf cavity               ln_isfcav = ', ln_isfcav
       ENDIF
 
@@ -361,5 +362,7 @@
       IF( ln_zps ) ioptio = ioptio + 1
       IF( ln_sco ) ioptio = ioptio + 1
-      IF ( ioptio /= 1 )   CALL ctl_stop( ' none or several vertical coordinate options used' )
+      IF( ln_isfcav ) ioptio = 33
+      IF ( ioptio /= 1  )   CALL ctl_stop( ' none or several vertical coordinate options used' )
+      IF ( ioptio == 33 )   CALL ctl_stop( ' isf cavity with off line module not yet done    ' )
 
    END SUBROUTINE dom_zgr
Index: branches/2014/dev_r4650_UKMO11_restart_functionality/NEMOGCM/NEMO/OFF_SRC/dommsk.F90
===================================================================
--- branches/2014/dev_r4650_UKMO11_restart_functionality/NEMOGCM/NEMO/OFF_SRC/dommsk.F90	(revision 4763)
+++ branches/2014/dev_r4650_UKMO11_restart_functionality/NEMOGCM/NEMO/OFF_SRC/dommsk.F90	(revision 5208)
@@ -58,4 +58,5 @@
       ! Interior domain mask (used for global sum)
       ! --------------------
+      ssmask(:,:)  = tmask(:,:,1)
       tmask_i(:,:) = tmask(:,:,1)
       iif = jpreci                        ! thickness of exchange halos in i-axis
Index: branches/2014/dev_r4650_UKMO11_restart_functionality/NEMOGCM/NEMO/OFF_SRC/domrea.F90
===================================================================
--- branches/2014/dev_r4650_UKMO11_restart_functionality/NEMOGCM/NEMO/OFF_SRC/domrea.F90	(revision 4763)
+++ branches/2014/dev_r4650_UKMO11_restart_functionality/NEMOGCM/NEMO/OFF_SRC/domrea.F90	(revision 5208)
@@ -164,5 +164,6 @@
 
          CALL iom_get( inum4, jpdom_data, 'mbathy', zmbk )              ! number of ocean t-points
-         mbathy(:,:) = INT( zmbk(:,:) )
+         mbathy (:,:) = INT( zmbk(:,:) )
+         misfdep(:,:) = 1                                               ! ice shelf case not yet done
          
          CALL zgr_bot_level                                             ! mbk. arrays (deepest ocean t-, u- & v-points
@@ -371,4 +372,5 @@
       !
       mbkt(:,:) = MAX( mbathy(:,:) , 1 )    ! bottom k-index of T-level (=1 over land)
+      mikt(:,:) = 1 ; miku(:,:) = 1; mikv(:,:) = 1; ! top k-index of T-level (=1 over open ocean; >1 beneath ice shelf)
       !                                     ! bottom k-index of W-level = mbkt+1
       DO jj = 1, jpjm1                      ! bottom k-index of u- (v-) level
Index: branches/2014/dev_r4650_UKMO11_restart_functionality/NEMOGCM/NEMO/OFF_SRC/dtadyn.F90
===================================================================
--- branches/2014/dev_r4650_UKMO11_restart_functionality/NEMOGCM/NEMO/OFF_SRC/dtadyn.F90	(revision 4763)
+++ branches/2014/dev_r4650_UKMO11_restart_functionality/NEMOGCM/NEMO/OFF_SRC/dtadyn.F90	(revision 5208)
@@ -535,8 +535,13 @@
       !!---------------------------------------------------------------------
 #if defined key_ldfslp && ! defined key_c1d
-      CALL eos( pts, rhd, rhop, gdept_0(:,:,:) )   ! Time-filtered in situ density 
-      CALL bn2( pts, rn2 )         ! before Brunt-Vaisala frequency
-      IF( ln_zps )   &
-         &  CALL zps_hde( kt, jpts, pts, gtsu, gtsv, rhd, gru, grv )  ! Partial steps: before Horizontal DErivative
+      CALL eos_rab( pts, rab_n )       ! now local thermal/haline expension ratio at T-points
+      CALL bn2    ( pts, rab_n, rn2  ) ! now    Brunt-Vaisala
+      IF( ln_zps )   & ! Partial steps: before Horizontal DErivative
+        &    CALL zps_hde( kt, jpts, pts, gtsu, gtsv,  &        ! Partial steps: before horizontal gradient
+        &                                        rhd, gru , grv , aru , arv , gzu , gzv , ge3ru , ge3rv ,   &             !
+        &                                 gtui, gtvi, grui, grvi, arui, arvi, gzui, gzvi, ge3rui, ge3rvi    )  ! of t, s, rd at the last ocean level
+        ! only gtsu, gtsv, rhd, gru , grv are used 
+
+
          !                                                            ! of t, s, rd at the bottom ocean level
       CALL zdf_mxl( kt )            ! mixed layer depth
Index: branches/2014/dev_r4650_UKMO11_restart_functionality/NEMOGCM/NEMO/OFF_SRC/istate.F90
===================================================================
--- branches/2014/dev_r4650_UKMO11_restart_functionality/NEMOGCM/NEMO/OFF_SRC/istate.F90	(revision 4763)
+++ branches/2014/dev_r4650_UKMO11_restart_functionality/NEMOGCM/NEMO/OFF_SRC/istate.F90	(revision 5208)
@@ -12,5 +12,4 @@
    USE oce             ! ocean dynamics and active tracers 
    USE dom_oce         ! ocean space and time domain 
-   USE daymod          ! calendar
 
    IMPLICIT NONE
@@ -47,6 +46,4 @@
       rn2  (:,:,:) = 0.e0 
       !
-      CALL day_init                           ! model calendar (using both namelist and restart infos)
-
    END SUBROUTINE istate_init
 
