diff --git a/src/OCE/ZDF/zdfgls.F90 b/src/OCE/ZDF/zdfgls.F90
index e3f7c96e82ac51ce504c9cab9d6788fb9692368c..8c0b65d2b129dde0f9e3d22a0202274522589ee6 100644
--- a/src/OCE/ZDF/zdfgls.F90
+++ b/src/OCE/ZDF/zdfgls.F90
@@ -969,6 +969,9 @@ CONTAINS
             CASE DEFAULT
                CALL ctl_stop( 'zdf_tke_init: wrong value for nn_mxlice, should be 0,1,2,3 ')
          END SELECT
+         IF ( (nn_mxlice>1).AND.(nn_ice<2) ) THEN
+            CALL ctl_stop( 'zdf_tke_init: with no ice model, nn_mxlice must be 0 or 1')
+         ENDIF
          WRITE(numout,*)
       ENDIF
 
diff --git a/src/OCE/ZDF/zdftke.F90 b/src/OCE/ZDF/zdftke.F90
index c9847d55352bbcad85167b3e2793ad22f0babb18..f8f604567e43da12cc0231f0b5da93456fef0305 100644
--- a/src/OCE/ZDF/zdftke.F90
+++ b/src/OCE/ZDF/zdftke.F90
@@ -762,6 +762,9 @@ CONTAINS
             CASE DEFAULT
                CALL ctl_stop( 'zdf_tke_init: wrong value for nn_mxlice, should be 0,1,2,3 or 4')
             END SELECT
+            IF ( (nn_mxlice>1).AND.(nn_ice<2) ) THEN
+               CALL ctl_stop( 'zdf_tke_init: with no ice model, nn_mxlice must be 0 or 1') 
+            ENDIF
          ENDIF
          WRITE(numout,*) '      Langmuir cells parametrization              ln_lc     = ', ln_lc
          WRITE(numout,*) '         coef to compute vertical velocity of LC     rn_lc  = ', rn_lc