Index: branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/OVERFLOW/EXP00/namelist_sco_FCT2_flux_ubs_cfg
===================================================================
--- branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/OVERFLOW/EXP00/namelist_sco_FCT2_flux_ubs_cfg	(revision 8873)
+++ branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/OVERFLOW/EXP00/namelist_sco_FCT2_flux_ubs_cfg	(revision 8882)
@@ -21,5 +21,5 @@
    nn_it000    =       1   !  first time step
    nn_itend    =    6120  ! here 17h of simulation  (=6120 time-step) 
-   !nn_itend    =    5760   ! here 16h of simulation  (=5760 time-step) abort after 5802 for zps: pb of physiques conditions
+   !nn_itend    =    5760   ! here 16h of simulation  (=5760 time-step) abort after 5802 for zps: pb of physics conditions
    nn_istate   =       0   !  output the initial state (1) or not (0)
    nn_stock    =    1080   !  frequency of creation of a restart file (modulo referenced to 1)
@@ -61,17 +61,23 @@
   rn_shlat    =    0.     !  shlat = 0  !  0 < shlat < 2  !  shlat = 2  !  2 < shlat
 /
-!-----------------------------------------------------------------------
-&nambfr        !   bottom friction
-!-----------------------------------------------------------------------
-   nn_bfr      =    0      !  type of bottom friction :   = 0 : free slip,  = 1 : linear friction
-                           !                              = 2 : nonlinear friction
-/
-!-----------------------------------------------------------------------
-&nambbc        !   bottom temperature boundary condition                (default: NO)
-!-----------------------------------------------------------------------
-/
-!-----------------------------------------------------------------------
-&nambbl        !   bottom boundary layer scheme                         ("key_trabbl")
-!-----------------------------------------------------------------------
+!!======================================================================
+!!                ***  Top/Bottom boundary condition  ***             !!
+!!======================================================================
+!!   namdrg        top/bottom drag coefficient                          (default: NO selection)
+!!   namdrg_top    top    friction                                      (ln_isfcav=T)
+!!   namdrg_bot    bottom friction
+!!   nambbc        bottom temperature boundary condition                (default: NO)
+!!   nambbl        bottom boundary layer scheme                         (default: NO)
+!!======================================================================
+!
+!-----------------------------------------------------------------------
+&namdrg            !   top/bottom drag coefficient                      (default: NO selection)
+!-----------------------------------------------------------------------
+   ln_NONE    = .true.     !  free-slip       : Cd = 0                  (F => fill namdrg_bot
+   ln_lin     = .false.    !      linear  drag: Cd = Cd0 Uc0                   &   namdrg_top)
+   ln_non_lin = .false.    !  non-linear  drag: Cd = Cd0 |U|
+   ln_loglayer= .false.    !  logarithmic drag: Cd = vkarmn/log(z/z0) |U|
+   !
+   ln_drgimp  = .true.     !  implicit top/bottom friction flag
 /
 !-----------------------------------------------------------------------
@@ -97,6 +103,4 @@
       nn_fct_h   =  2            !  =2/4, horizontal 2nd / 4th order
       nn_fct_v   =  2            !  =2/4, vertical   2nd / COMPACT 4th order
-      nn_fct_zts =  0            !  >=1,  2nd order FCT scheme with vertical sub-timestepping
-      !                          !        (number of sub-timestep = nn_fct_zts)
    ln_traadv_mus = .false. !  MUSCL scheme
       ln_mus_ups = .false.       !  use upstream scheme near river mouths
@@ -113,4 +117,5 @@
 !-----------------------------------------------------------------------
    !                       !  Operator type:    both false = No lateral diffusion
+   ln_traldf_NONE  =  .true.  !  No explicit diffusion
    ln_traldf_lap   =  .false.  !    laplacian operator
    ln_traldf_blp   =  .false.  !  bilaplacian operator
@@ -126,11 +131,11 @@
 /
 !-----------------------------------------------------------------------
-&namdyn_adv    !   formulation of the momentum advection
-!-----------------------------------------------------------------------
+&namdyn_adv    !   formulation of the momentum advection                (default: NO selection)
+!-----------------------------------------------------------------------
+   ln_dynadv_NONE= .false. !  linear dynamics (no momentum advection)
    ln_dynadv_vec = .false. !  vector form (T) or flux form (F)
    nn_dynkeg     = 0       ! scheme for grad(KE): =0   C2  ;  =1   Hollingsworth correction
    ln_dynadv_cen2= .false. !  flux form - 2nd order centered scheme
    ln_dynadv_ubs = .true.  !  flux form - 3rd order UBS      scheme
-   ln_dynzad_zts = .false. !  Use (T) sub timestepping for vertical momentum advection
 /
 !-----------------------------------------------------------------------
@@ -167,34 +172,66 @@
 /
 !-----------------------------------------------------------------------
-&namdyn_ldf    !   lateral diffusion on momentum
+&namdyn_ldf    !   lateral diffusion on momentum                        (default: NO selection)
 !-----------------------------------------------------------------------
    !                       !  Type of the operator :
-   !                           !  no diffusion: set ln_dynldf_lap=..._blp=F 
-   ln_dynldf_lap =  .true.     !    laplacian operator
+   ln_dynldf_NONE=  .true.    !  No operator (i.e. no explicit diffusion)
+   ln_dynldf_lap =  .false.    !    laplacian operator
    ln_dynldf_blp =  .false.    !  bilaplacian operator
    !                       !  Direction of action  :
-   ln_dynldf_lev =  .true.      !  iso-level
-   ln_dynldf_hor =  .false.     !  horizontal (geopotential)
-   ln_dynldf_iso =  .false.     !  iso-neutral
+   ln_dynldf_lev =  .false.    !  iso-level
+   ln_dynldf_hor =  .false.    !  horizontal (geopotential)
+   ln_dynldf_iso =  .false.    !  iso-neutral
    !                       !  Coefficient
-   nn_ahm_ijk_t  = 0         !  space/time variation of eddy coef
+   nn_ahm_ijk_t  = 0           !  space/time variation of eddy coef
    !                                !  =-30  read in eddy_viscosity_3D.nc file
    !                                !  =-20  read in eddy_viscosity_2D.nc file
-   !                                !  =  0  constant 
+   !                                !  =  0  constant
    !                                !  = 10  F(k)=c1d
    !                                !  = 20  F(i,j)=F(grid spacing)=c2d
    !                                !  = 30  F(i,j,k)=c2d*c1d
    !                                !  = 31  F(i,j,k)=F(grid spacing and local velocity)
-   rn_ahm_0      =     0.01    !  horizontal laplacian eddy viscosity   [m2/s]
-   rn_ahm_b      =     0.      !  background eddy viscosity for ldf_iso [m2/s]
-   rn_bhm_0      =     1.e+12  !  horizontal bilaplacian eddy viscosity [m4/s]
-/
-!-----------------------------------------------------------------------
-&namzdf        !   vertical physics
-!-----------------------------------------------------------------------
-   rn_avm0     =   1.e-4  !  vertical eddy viscosity   [m2/s]          (background Kz if not "key_zdfcst")
-   rn_avt0     =   0.     !  vertical eddy diffusivity [m2/s]          (background Kz if not "key_zdfcst")
-   ln_zdfevd   = .false.  !  enhanced vertical diffusion (evd)
-   ln_zdfnpc   = .false.  !  Non-Penetrative Convective algorithm
+   !                                !  = 32  F(i,j,k)=F(local gridscale and deformation rate)
+   ! Caution in 20 and 30 cases the coefficient have to be given for a 1 degree grid (~111km)
+   rn_ahm_0      =   1000.     !  horizontal laplacian eddy viscosity   [m2/s]
+   rn_ahm_b      =      0.     !  background eddy viscosity for ldf_iso [m2/s]
+   rn_bhm_0      = 1.e+12      !  horizontal bilaplacian eddy viscosity [m4/s]
+   !                       !  Smagorinsky settings (nn_ahm_ijk_t  = 32) :
+   rn_csmc       = 3.5         !  Smagorinsky constant of proportionality
+   rn_minfac     = 1.0         !  multiplier of theorectical lower limit
+   rn_maxfac     = 1.0         !  multiplier of theorectical upper limit
+/
+!!======================================================================
+!!                     vertical physics namelists                     !!
+!!======================================================================
+!-----------------------------------------------------------------------
+&namzdf        !   vertical physics                                     (default: NO selection)
+!-----------------------------------------------------------------------
+   !                       ! type of vertical closure (required)
+   ln_zdfcst   = .true.      !  constant mixing
+   ln_zdfric   = .false.      !  local Richardson dependent formulation (T =>   fill namzdf_ric)
+   ln_zdftke   = .false.      !  Turbulent Kinetic Energy closure       (T =>   fill namzdf_tke)
+   ln_zdfgls   = .false.      !  Generic Length Scale closure           (T =>   fill namzdf_gls)
+   !
+   !                       ! convection
+   ln_zdfevd   = .false.      !  enhanced vertical diffusion
+      nn_evdm     =    0         ! apply on tracer (=0) or on tracer and momentum (=1) 
+      rn_evd      =  100.        ! mixing coefficient [m2/s]
+   ln_zdfnpc   = .false.      !  Non-Penetrative Convective algorithm
+      nn_npc      =    1         ! frequency of application of npc
+      nn_npcp     =  365         ! npc control print frequency
+   !
+   ln_zdfddm   = .false.   ! double diffusive mixing
+      rn_avts  =    1.e-4     !  maximum avs (vertical mixing on salinity)
+      rn_hsbfr =    1.6       !  heat/salt buoyancy flux ratio
+   !
+   !                       ! gravity wave-driven vertical mixing
+   ln_zdfiwm   = .false.      ! internal wave-induced mixing            (T =>   fill namzdf_iwm)
+   ln_zdfswm   = .false.      ! surface  wave-induced mixing            (T => ln_wave=ln_sdw=T )
+   !
+   !                       ! coefficients
+   rn_avm0     =   1.e-4     !  vertical eddy viscosity   [m2/s]       (background Kz if ln_zdfcst=F)
+   rn_avt0     =   0.0e      !  vertical eddy diffusivity [m2/s]       (background Kz if ln_zdfcst=F)
+   nn_avb      =    0        !  profile for background avt & avm (=1) or not (=0)
+   nn_havtb    =    0        !  horizontal shape for avtb (=1) or not (=0)
 /
 !-----------------------------------------------------------------------
Index: branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/OVERFLOW/EXP00/namelist_zps_FCT2_flux_ubs_cfg
===================================================================
--- branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/OVERFLOW/EXP00/namelist_zps_FCT2_flux_ubs_cfg	(revision 8873)
+++ branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/OVERFLOW/EXP00/namelist_zps_FCT2_flux_ubs_cfg	(revision 8882)
@@ -20,6 +20,6 @@
    cn_exp      =   "OVF_zps_FCT2_flux_ubs"  !  experience name
    nn_it000    =       1   !  first time step
-   nn_itend    =    6120  ! here 17h of simulation  (=6120 time-step) 
-   !nn_itend    =    5760   ! here 16h of simulation  (=5760 time-step) abort after 5802 for zps: pb of physiques conditions
+   !nn_itend    =    6120  ! here 17h of simulation  (=6120 time-step) 
+   nn_itend    =    5760   ! here 16h of simulation  (=5760 time-step) abort after 5802 for zps: pb of physics conditions
    nn_istate   =       0   !  output the initial state (1) or not (0)
    nn_stock    =    1080   !  frequency of creation of a restart file (modulo referenced to 1)
@@ -61,17 +61,23 @@
   rn_shlat    =    0.     !  shlat = 0  !  0 < shlat < 2  !  shlat = 2  !  2 < shlat
 /
-!-----------------------------------------------------------------------
-&nambfr        !   bottom friction
-!-----------------------------------------------------------------------
-   nn_bfr      =    0      !  type of bottom friction :   = 0 : free slip,  = 1 : linear friction
-                           !                              = 2 : nonlinear friction
-/
-!-----------------------------------------------------------------------
-&nambbc        !   bottom temperature boundary condition                (default: NO)
-!-----------------------------------------------------------------------
-/
-!-----------------------------------------------------------------------
-&nambbl        !   bottom boundary layer scheme                         ("key_trabbl")
-!-----------------------------------------------------------------------
+!!======================================================================
+!!                ***  Top/Bottom boundary condition  ***             !!
+!!======================================================================
+!!   namdrg        top/bottom drag coefficient                          (default: NO selection)
+!!   namdrg_top    top    friction                                      (ln_isfcav=T)
+!!   namdrg_bot    bottom friction
+!!   nambbc        bottom temperature boundary condition                (default: NO)
+!!   nambbl        bottom boundary layer scheme                         (default: NO)
+!!======================================================================
+!
+!-----------------------------------------------------------------------
+&namdrg            !   top/bottom drag coefficient                      (default: NO selection)
+!-----------------------------------------------------------------------
+   ln_NONE    = .true.     !  free-slip       : Cd = 0                  (F => fill namdrg_bot
+   ln_lin     = .false.    !      linear  drag: Cd = Cd0 Uc0                   &   namdrg_top)
+   ln_non_lin = .false.    !  non-linear  drag: Cd = Cd0 |U|
+   ln_loglayer= .false.    !  logarithmic drag: Cd = vkarmn/log(z/z0) |U|
+   !
+   ln_drgimp  = .true.     !  implicit top/bottom friction flag
 /
 !-----------------------------------------------------------------------
@@ -97,6 +103,4 @@
       nn_fct_h   =  2            !  =2/4, horizontal 2nd / 4th order
       nn_fct_v   =  2            !  =2/4, vertical   2nd / COMPACT 4th order
-      nn_fct_zts =  0            !  >=1,  2nd order FCT scheme with vertical sub-timestepping
-      !                          !        (number of sub-timestep = nn_fct_zts)
    ln_traadv_mus = .false. !  MUSCL scheme
       ln_mus_ups = .false.       !  use upstream scheme near river mouths
@@ -113,4 +117,5 @@
 !-----------------------------------------------------------------------
    !                       !  Operator type:    both false = No lateral diffusion
+   ln_traldf_NONE  =  .true.  !  No explicit diffusion
    ln_traldf_lap   =  .false.  !    laplacian operator
    ln_traldf_blp   =  .false.  !  bilaplacian operator
@@ -126,11 +131,11 @@
 /
 !-----------------------------------------------------------------------
-&namdyn_adv    !   formulation of the momentum advection
-!-----------------------------------------------------------------------
+&namdyn_adv    !   formulation of the momentum advection                (default: NO selection)
+!-----------------------------------------------------------------------
+   ln_dynadv_NONE= .false. !  linear dynamics (no momentum advection)
    ln_dynadv_vec = .false. !  vector form (T) or flux form (F)
    nn_dynkeg     = 0       ! scheme for grad(KE): =0   C2  ;  =1   Hollingsworth correction
    ln_dynadv_cen2= .false. !  flux form - 2nd order centered scheme
    ln_dynadv_ubs = .true.  !  flux form - 3rd order UBS      scheme
-   ln_dynzad_zts = .false. !  Use (T) sub timestepping for vertical momentum advection
 /
 !-----------------------------------------------------------------------
@@ -167,34 +172,66 @@
 /
 !-----------------------------------------------------------------------
-&namdyn_ldf    !   lateral diffusion on momentum
+&namdyn_ldf    !   lateral diffusion on momentum                        (default: NO selection)
 !-----------------------------------------------------------------------
    !                       !  Type of the operator :
-   !                           !  no diffusion: set ln_dynldf_lap=..._blp=F 
-   ln_dynldf_lap =  .true.     !    laplacian operator
+   ln_dynldf_NONE=  .true.    !  No operator (i.e. no explicit diffusion)
+   ln_dynldf_lap =  .false.    !    laplacian operator
    ln_dynldf_blp =  .false.    !  bilaplacian operator
    !                       !  Direction of action  :
-   ln_dynldf_lev =  .false.     !  iso-level
-   ln_dynldf_hor =  .true.      !  horizontal (geopotential)
-   ln_dynldf_iso =  .false.     !  iso-neutral
+   ln_dynldf_lev =  .false.    !  iso-level
+   ln_dynldf_hor =  .false.    !  horizontal (geopotential)
+   ln_dynldf_iso =  .false.    !  iso-neutral
    !                       !  Coefficient
-   nn_ahm_ijk_t  = 0         !  space/time variation of eddy coef
+   nn_ahm_ijk_t  = 0           !  space/time variation of eddy coef
    !                                !  =-30  read in eddy_viscosity_3D.nc file
    !                                !  =-20  read in eddy_viscosity_2D.nc file
-   !                                !  =  0  constant 
+   !                                !  =  0  constant
    !                                !  = 10  F(k)=c1d
    !                                !  = 20  F(i,j)=F(grid spacing)=c2d
    !                                !  = 30  F(i,j,k)=c2d*c1d
    !                                !  = 31  F(i,j,k)=F(grid spacing and local velocity)
-   rn_ahm_0      =     0.01    !  horizontal laplacian eddy viscosity   [m2/s]
-   rn_ahm_b      =     0.      !  background eddy viscosity for ldf_iso [m2/s]
-   rn_bhm_0      =     1.e+12  !  horizontal bilaplacian eddy viscosity [m4/s]
-/
-!-----------------------------------------------------------------------
-&namzdf        !   vertical physics
-!-----------------------------------------------------------------------
-   rn_avm0     =   1.e-4  !  vertical eddy viscosity   [m2/s]          (background Kz if not "key_zdfcst")
-   rn_avt0     =   0.     !  vertical eddy diffusivity [m2/s]          (background Kz if not "key_zdfcst")
-   ln_zdfevd   = .false.  !  enhanced vertical diffusion (evd)
-   ln_zdfnpc   = .false.  !  Non-Penetrative Convective algorithm
+   !                                !  = 32  F(i,j,k)=F(local gridscale and deformation rate)
+   ! Caution in 20 and 30 cases the coefficient have to be given for a 1 degree grid (~111km)
+   rn_ahm_0      =   1000.     !  horizontal laplacian eddy viscosity   [m2/s]
+   rn_ahm_b      =      0.     !  background eddy viscosity for ldf_iso [m2/s]
+   rn_bhm_0      = 1.e+12      !  horizontal bilaplacian eddy viscosity [m4/s]
+   !                       !  Smagorinsky settings (nn_ahm_ijk_t  = 32) :
+   rn_csmc       = 3.5         !  Smagorinsky constant of proportionality
+   rn_minfac     = 1.0         !  multiplier of theorectical lower limit
+   rn_maxfac     = 1.0         !  multiplier of theorectical upper limit
+/
+!!======================================================================
+!!                     vertical physics namelists                     !!
+!!======================================================================
+!-----------------------------------------------------------------------
+&namzdf        !   vertical physics                                     (default: NO selection)
+!-----------------------------------------------------------------------
+   !                       ! type of vertical closure (required)
+   ln_zdfcst   = .true.      !  constant mixing
+   ln_zdfric   = .false.      !  local Richardson dependent formulation (T =>   fill namzdf_ric)
+   ln_zdftke   = .false.      !  Turbulent Kinetic Energy closure       (T =>   fill namzdf_tke)
+   ln_zdfgls   = .false.      !  Generic Length Scale closure           (T =>   fill namzdf_gls)
+   !   
+   !                       ! convection
+   ln_zdfevd   = .false.      !  enhanced vertical diffusion
+      nn_evdm     =    0         ! apply on tracer (=0) or on tracer and momentum (=1) 
+      rn_evd      =  100.        ! mixing coefficient [m2/s]
+   ln_zdfnpc   = .false.      !  Non-Penetrative Convective algorithm
+      nn_npc      =    1         ! frequency of application of npc 
+      nn_npcp     =  365         ! npc control print frequency
+   !   
+   ln_zdfddm   = .false.   ! double diffusive mixing
+      rn_avts  =    1.e-4     !  maximum avs (vertical mixing on salinity)
+      rn_hsbfr =    1.6       !  heat/salt buoyancy flux ratio
+   !   
+   !                       ! gravity wave-driven vertical mixing
+   ln_zdfiwm   = .false.      ! internal wave-induced mixing            (T =>   fill namzdf_iwm)
+   ln_zdfswm   = .false.      ! surface  wave-induced mixing            (T => ln_wave=ln_sdw=T )
+   !   
+   !                       ! coefficients
+   rn_avm0     =   1.e-4     !  vertical eddy viscosity   [m2/s]       (background Kz if ln_zdfcst=F)
+   rn_avt0     =   0.0e      !  vertical eddy diffusivity [m2/s]       (background Kz if ln_zdfcst=F)
+   nn_avb      =    0        !  profile for background avt & avm (=1) or not (=0)
+   nn_havtb    =    0        !  horizontal shape for avtb (=1) or not (=0)
 /
 !-----------------------------------------------------------------------
Index: branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/OVERFLOW/EXP00/namelist_zps_FCT4_flux_ubs_cfg
===================================================================
--- branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/OVERFLOW/EXP00/namelist_zps_FCT4_flux_ubs_cfg	(revision 8873)
+++ branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/OVERFLOW/EXP00/namelist_zps_FCT4_flux_ubs_cfg	(revision 8882)
@@ -20,6 +20,6 @@
    cn_exp      =   "OVF_zps_FCT4_flux_ubs"  !  experience name
    nn_it000    =       1   !  first time step
-   nn_itend    =    6120  ! here 17h of simulation  (=6120 time-step) 
-   !nn_itend    =    5760   ! here 16h of simulation  (=5760 time-step) abort after 5802 for zps: pb of physiques conditions
+   !nn_itend    =    6120  ! here 17h of simulation  (=6120 time-step) 
+   nn_itend    =    5760   ! here 16h of simulation  (=5760 time-step) abort after 5802 for zps: pb of physics conditions
    nn_istate   =       0   !  output the initial state (1) or not (0)
    nn_stock    =    1080   !  frequency of creation of a restart file (modulo referenced to 1)
@@ -61,17 +61,23 @@
   rn_shlat    =    0.     !  shlat = 0  !  0 < shlat < 2  !  shlat = 2  !  2 < shlat
 /
-!-----------------------------------------------------------------------
-&nambfr        !   bottom friction
-!-----------------------------------------------------------------------
-   nn_bfr      =    0      !  type of bottom friction :   = 0 : free slip,  = 1 : linear friction
-                           !                              = 2 : nonlinear friction
-/
-!-----------------------------------------------------------------------
-&nambbc        !   bottom temperature boundary condition                (default: NO)
-!-----------------------------------------------------------------------
-/
-!-----------------------------------------------------------------------
-&nambbl        !   bottom boundary layer scheme                         ("key_trabbl")
-!-----------------------------------------------------------------------
+!!======================================================================
+!!                ***  Top/Bottom boundary condition  ***             !!
+!!======================================================================
+!!   namdrg        top/bottom drag coefficient                          (default: NO selection)
+!!   namdrg_top    top    friction                                      (ln_isfcav=T)
+!!   namdrg_bot    bottom friction
+!!   nambbc        bottom temperature boundary condition                (default: NO)
+!!   nambbl        bottom boundary layer scheme                         (default: NO)
+!!======================================================================
+!
+!-----------------------------------------------------------------------
+&namdrg            !   top/bottom drag coefficient                      (default: NO selection)
+!-----------------------------------------------------------------------
+   ln_NONE    = .true.     !  free-slip       : Cd = 0                  (F => fill namdrg_bot
+   ln_lin     = .false.    !      linear  drag: Cd = Cd0 Uc0                   &   namdrg_top)
+   ln_non_lin = .false.    !  non-linear  drag: Cd = Cd0 |U|
+   ln_loglayer= .false.    !  logarithmic drag: Cd = vkarmn/log(z/z0) |U|
+   !
+   ln_drgimp  = .true.     !  implicit top/bottom friction flag
 /
 !-----------------------------------------------------------------------
@@ -97,6 +103,4 @@
       nn_fct_h   =  4            !  =2/4, horizontal 2nd / 4th order
       nn_fct_v   =  4            !  =2/4, vertical   2nd / COMPACT 4th order
-      nn_fct_zts =  0            !  >=1,  2nd order FCT scheme with vertical sub-timestepping
-      !                          !        (number of sub-timestep = nn_fct_zts)
    ln_traadv_mus = .false. !  MUSCL scheme
       ln_mus_ups = .false.       !  use upstream scheme near river mouths
@@ -113,4 +117,5 @@
 !-----------------------------------------------------------------------
    !                       !  Operator type:    both false = No lateral diffusion
+   ln_traldf_NONE  =  .true.  !  No explicit diffusion
    ln_traldf_lap   =  .false.  !    laplacian operator
    ln_traldf_blp   =  .false.  !  bilaplacian operator
@@ -126,11 +131,11 @@
 /
 !-----------------------------------------------------------------------
-&namdyn_adv    !   formulation of the momentum advection
-!-----------------------------------------------------------------------
+&namdyn_adv    !   formulation of the momentum advection                (default: NO selection)
+!-----------------------------------------------------------------------
+   ln_dynadv_NONE= .false. !  linear dynamics (no momentum advection)
    ln_dynadv_vec = .false. !  vector form (T) or flux form (F)
    nn_dynkeg     = 0       ! scheme for grad(KE): =0   C2  ;  =1   Hollingsworth correction
    ln_dynadv_cen2= .false. !  flux form - 2nd order centered scheme
    ln_dynadv_ubs = .true.  !  flux form - 3rd order UBS      scheme
-   ln_dynzad_zts = .false. !  Use (T) sub timestepping for vertical momentum advection
 /
 !-----------------------------------------------------------------------
@@ -167,34 +172,66 @@
 /
 !-----------------------------------------------------------------------
-&namdyn_ldf    !   lateral diffusion on momentum
+&namdyn_ldf    !   lateral diffusion on momentum                        (default: NO selection)
 !-----------------------------------------------------------------------
    !                       !  Type of the operator :
-   !                           !  no diffusion: set ln_dynldf_lap=..._blp=F 
-   ln_dynldf_lap =  .true.     !    laplacian operator
+   ln_dynldf_NONE=  .true.    !  No operator (i.e. no explicit diffusion)
+   ln_dynldf_lap =  .false.    !    laplacian operator
    ln_dynldf_blp =  .false.    !  bilaplacian operator
    !                       !  Direction of action  :
-   ln_dynldf_lev =  .false.     !  iso-level
-   ln_dynldf_hor =  .true.      !  horizontal (geopotential)
-   ln_dynldf_iso =  .false.     !  iso-neutral
+   ln_dynldf_lev =  .false.    !  iso-level
+   ln_dynldf_hor =  .false.    !  horizontal (geopotential)
+   ln_dynldf_iso =  .false.    !  iso-neutral
    !                       !  Coefficient
-   nn_ahm_ijk_t  = 0         !  space/time variation of eddy coef
+   nn_ahm_ijk_t  = 0           !  space/time variation of eddy coef
    !                                !  =-30  read in eddy_viscosity_3D.nc file
    !                                !  =-20  read in eddy_viscosity_2D.nc file
-   !                                !  =  0  constant 
+   !                                !  =  0  constant
    !                                !  = 10  F(k)=c1d
    !                                !  = 20  F(i,j)=F(grid spacing)=c2d
    !                                !  = 30  F(i,j,k)=c2d*c1d
    !                                !  = 31  F(i,j,k)=F(grid spacing and local velocity)
-   rn_ahm_0      =     0.01    !  horizontal laplacian eddy viscosity   [m2/s]
-   rn_ahm_b      =     0.      !  background eddy viscosity for ldf_iso [m2/s]
-   rn_bhm_0      =     1.e+12  !  horizontal bilaplacian eddy viscosity [m4/s]
-/
-!-----------------------------------------------------------------------
-&namzdf        !   vertical physics
-!-----------------------------------------------------------------------
-   rn_avm0     =   1.e-4  !  vertical eddy viscosity   [m2/s]          (background Kz if not "key_zdfcst")
-   rn_avt0     =   0.     !  vertical eddy diffusivity [m2/s]          (background Kz if not "key_zdfcst")
-   ln_zdfevd   = .false.  !  enhanced vertical diffusion (evd)
-   ln_zdfnpc   = .false.  !  Non-Penetrative Convective algorithm
+   !                                !  = 32  F(i,j,k)=F(local gridscale and deformation rate)
+   ! Caution in 20 and 30 cases the coefficient have to be given for a 1 degree grid (~111km)
+   rn_ahm_0      =   1000.     !  horizontal laplacian eddy viscosity   [m2/s]
+   rn_ahm_b      =      0.     !  background eddy viscosity for ldf_iso [m2/s]
+   rn_bhm_0      = 1.e+12      !  horizontal bilaplacian eddy viscosity [m4/s]
+   !                       !  Smagorinsky settings (nn_ahm_ijk_t  = 32) :
+   rn_csmc       = 3.5         !  Smagorinsky constant of proportionality
+   rn_minfac     = 1.0         !  multiplier of theorectical lower limit
+   rn_maxfac     = 1.0         !  multiplier of theorectical upper limit
+/
+!!======================================================================
+!!                     vertical physics namelists                     !!
+!!======================================================================
+!-----------------------------------------------------------------------
+&namzdf        !   vertical physics                                     (default: NO selection)
+!-----------------------------------------------------------------------
+   !                       ! type of vertical closure (required)
+   ln_zdfcst   = .true.      !  constant mixing
+   ln_zdfric   = .false.      !  local Richardson dependent formulation (T =>   fill namzdf_ric)
+   ln_zdftke   = .false.      !  Turbulent Kinetic Energy closure       (T =>   fill namzdf_tke)
+   ln_zdfgls   = .false.      !  Generic Length Scale closure           (T =>   fill namzdf_gls)
+   !   
+   !                       ! convection
+   ln_zdfevd   = .false.      !  enhanced vertical diffusion
+      nn_evdm     =    0         ! apply on tracer (=0) or on tracer and momentum (=1) 
+      rn_evd      =  100.        ! mixing coefficient [m2/s]
+   ln_zdfnpc   = .false.      !  Non-Penetrative Convective algorithm
+      nn_npc      =    1         ! frequency of application of npc 
+      nn_npcp     =  365         ! npc control print frequency
+   !   
+   ln_zdfddm   = .false.   ! double diffusive mixing
+      rn_avts  =    1.e-4     !  maximum avs (vertical mixing on salinity)
+      rn_hsbfr =    1.6       !  heat/salt buoyancy flux ratio
+   !   
+   !                       ! gravity wave-driven vertical mixing
+   ln_zdfiwm   = .false.      ! internal wave-induced mixing            (T =>   fill namzdf_iwm)
+   ln_zdfswm   = .false.      ! surface  wave-induced mixing            (T => ln_wave=ln_sdw=T )
+   !   
+   !                       ! coefficients
+   rn_avm0     =   1.e-4     !  vertical eddy viscosity   [m2/s]       (background Kz if ln_zdfcst=F)
+   rn_avt0     =   0.0e      !  vertical eddy diffusivity [m2/s]       (background Kz if ln_zdfcst=F)
+   nn_avb      =    0        !  profile for background avt & avm (=1) or not (=0)
+   nn_havtb    =    0        !  horizontal shape for avtb (=1) or not (=0)
 /
 !-----------------------------------------------------------------------
Index: branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/OVERFLOW/EXP00/namelist_zps_FCT4_vect_een_cfg
===================================================================
--- branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/OVERFLOW/EXP00/namelist_zps_FCT4_vect_een_cfg	(revision 8873)
+++ branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/OVERFLOW/EXP00/namelist_zps_FCT4_vect_een_cfg	(revision 8882)
@@ -20,6 +20,6 @@
    cn_exp      =   "OVF_zps_FCT4_vect_een"  !  experience name
    nn_it000    =       1   !  first time step
-   nn_itend    =    6120  ! here 17h of simulation  (=6120 time-step) 
-   !nn_itend    =    5760   ! here 16h of simulation  (=5760 time-step) abort after 5802 for zps: pb of physiques conditions
+   !nn_itend    =    6120  ! here 17h of simulation  (=6120 time-step) 
+   nn_itend    =    5760   ! here 16h of simulation  (=5760 time-step) abort after 5802 for zps: pb of physics conditions
    nn_istate   =       0   !  output the initial state (1) or not (0)
    nn_stock    =    1080   !  frequency of creation of a restart file (modulo referenced to 1)
@@ -61,17 +61,23 @@
   rn_shlat    =    0.     !  shlat = 0  !  0 < shlat < 2  !  shlat = 2  !  2 < shlat
 /
-!-----------------------------------------------------------------------
-&nambfr        !   bottom friction
-!-----------------------------------------------------------------------
-   nn_bfr      =    0      !  type of bottom friction :   = 0 : free slip,  = 1 : linear friction
-                           !                              = 2 : nonlinear friction
-/
-!-----------------------------------------------------------------------
-&nambbc        !   bottom temperature boundary condition                (default: NO)
-!-----------------------------------------------------------------------
-/
-!-----------------------------------------------------------------------
-&nambbl        !   bottom boundary layer scheme                         ("key_trabbl")
-!-----------------------------------------------------------------------
+!!======================================================================
+!!                ***  Top/Bottom boundary condition  ***             !!
+!!======================================================================
+!!   namdrg        top/bottom drag coefficient                          (default: NO selection)
+!!   namdrg_top    top    friction                                      (ln_isfcav=T)
+!!   namdrg_bot    bottom friction
+!!   nambbc        bottom temperature boundary condition                (default: NO)
+!!   nambbl        bottom boundary layer scheme                         (default: NO)
+!!======================================================================
+!
+!-----------------------------------------------------------------------
+&namdrg            !   top/bottom drag coefficient                      (default: NO selection)
+!-----------------------------------------------------------------------
+   ln_NONE    = .true.     !  free-slip       : Cd = 0                  (F => fill namdrg_bot
+   ln_lin     = .false.    !      linear  drag: Cd = Cd0 Uc0                   &   namdrg_top)
+   ln_non_lin = .false.    !  non-linear  drag: Cd = Cd0 |U|
+   ln_loglayer= .false.    !  logarithmic drag: Cd = vkarmn/log(z/z0) |U|
+   !
+   ln_drgimp  = .true.     !  implicit top/bottom friction flag
 /
 !-----------------------------------------------------------------------
@@ -97,6 +103,4 @@
       nn_fct_h   =  4            !  =2/4, horizontal 2nd / 4th order
       nn_fct_v   =  4            !  =2/4, vertical   2nd / COMPACT 4th order
-      nn_fct_zts =  0            !  >=1,  2nd order FCT scheme with vertical sub-timestepping
-      !                          !        (number of sub-timestep = nn_fct_zts)
    ln_traadv_mus = .false. !  MUSCL scheme
       ln_mus_ups = .false.       !  use upstream scheme near river mouths
@@ -113,4 +117,5 @@
 !-----------------------------------------------------------------------
    !                       !  Operator type:    both false = No lateral diffusion
+   ln_traldf_NONE  =  .true.  !  No explicit diffusion
    ln_traldf_lap   =  .false.  !    laplacian operator
    ln_traldf_blp   =  .false.  !  bilaplacian operator
@@ -126,11 +131,11 @@
 /
 !-----------------------------------------------------------------------
-&namdyn_adv    !   formulation of the momentum advection
-!-----------------------------------------------------------------------
-   ln_dynadv_vec = .true.  !  vector form (T) or flux form (F)
+&namdyn_adv    !   formulation of the momentum advection                (default: NO selection)
+!-----------------------------------------------------------------------
+   ln_dynadv_NONE= .false. !  linear dynamics (no momentum advection)
+   ln_dynadv_vec = .true. !  vector form (T) or flux form (F)
    nn_dynkeg     = 0       ! scheme for grad(KE): =0   C2  ;  =1   Hollingsworth correction
    ln_dynadv_cen2= .false. !  flux form - 2nd order centered scheme
    ln_dynadv_ubs = .false. !  flux form - 3rd order UBS      scheme
-   ln_dynzad_zts = .false. !  Use (T) sub timestepping for vertical momentum advection
 /
 !-----------------------------------------------------------------------
@@ -143,7 +148,7 @@
 !-----------------------------------------------------------------------
    ln_dynvor_ene = .false. !  enstrophy conserving scheme
-   ln_dynvor_ens = .false. !  energy conserving scheme
+   ln_dynvor_ens = .true.  !  energy conserving scheme
    ln_dynvor_mix = .false. !  mixed scheme
-   ln_dynvor_een = .true.  !  energy & enstrophy scheme
+   ln_dynvor_een = .true. !  energy & enstrophy scheme
       nn_een_e3f = 0             !  e3f = masked averaging of e3t divided by 4 (=0) or by the sum of mask (=1)
 /
@@ -167,34 +172,66 @@
 /
 !-----------------------------------------------------------------------
-&namdyn_ldf    !   lateral diffusion on momentum
+&namdyn_ldf    !   lateral diffusion on momentum                        (default: NO selection)
 !-----------------------------------------------------------------------
    !                       !  Type of the operator :
-   !                           !  no diffusion: set ln_dynldf_lap=..._blp=F 
-   ln_dynldf_lap =  .true.     !    laplacian operator
+   ln_dynldf_NONE=  .false.    !  No operator (i.e. no explicit diffusion)
+   ln_dynldf_lap =  .true.    !    laplacian operator
    ln_dynldf_blp =  .false.    !  bilaplacian operator
    !                       !  Direction of action  :
-   ln_dynldf_lev =  .false.     !  iso-level
-   ln_dynldf_hor =  .true.      !  horizontal (geopotential)
-   ln_dynldf_iso =  .false.     !  iso-neutral
+   ln_dynldf_lev =  .false.    !  iso-level
+   ln_dynldf_hor =  .true.    !  horizontal (geopotential)
+   ln_dynldf_iso =  .false.    !  iso-neutral
    !                       !  Coefficient
-   nn_ahm_ijk_t  = 0         !  space/time variation of eddy coef
+   nn_ahm_ijk_t  = 0           !  space/time variation of eddy coef
    !                                !  =-30  read in eddy_viscosity_3D.nc file
    !                                !  =-20  read in eddy_viscosity_2D.nc file
-   !                                !  =  0  constant 
+   !                                !  =  0  constant
    !                                !  = 10  F(k)=c1d
    !                                !  = 20  F(i,j)=F(grid spacing)=c2d
    !                                !  = 30  F(i,j,k)=c2d*c1d
    !                                !  = 31  F(i,j,k)=F(grid spacing and local velocity)
-   rn_ahm_0      =     0.01    !  horizontal laplacian eddy viscosity   [m2/s]
-   rn_ahm_b      =     0.      !  background eddy viscosity for ldf_iso [m2/s]
-   rn_bhm_0      =     1.e+12  !  horizontal bilaplacian eddy viscosity [m4/s]
-/
-!-----------------------------------------------------------------------
-&namzdf        !   vertical physics
-!-----------------------------------------------------------------------
-   rn_avm0     =   1.e-4  !  vertical eddy viscosity   [m2/s]          (background Kz if not "key_zdfcst")
-   rn_avt0     =   0.     !  vertical eddy diffusivity [m2/s]          (background Kz if not "key_zdfcst")
-   ln_zdfevd   = .false.  !  enhanced vertical diffusion (evd)
-   ln_zdfnpc   = .false.  !  Non-Penetrative Convective algorithm
+   !                                !  = 32  F(i,j,k)=F(local gridscale and deformation rate)
+   ! Caution in 20 and 30 cases the coefficient have to be given for a 1 degree grid (~111km)
+   rn_ahm_0      =    100.     !  horizontal laplacian eddy viscosity   [m2/s]
+   rn_ahm_b      =      0.     !  background eddy viscosity for ldf_iso [m2/s]
+   rn_bhm_0      = 1.e+12      !  horizontal bilaplacian eddy viscosity [m4/s]
+   !                       !  Smagorinsky settings (nn_ahm_ijk_t  = 32) :
+   rn_csmc       = 3.5         !  Smagorinsky constant of proportionality
+   rn_minfac     = 1.0         !  multiplier of theorectical lower limit
+   rn_maxfac     = 1.0         !  multiplier of theorectical upper limit
+/
+!!======================================================================
+!!                     vertical physics namelists                     !!
+!!======================================================================
+!-----------------------------------------------------------------------
+&namzdf        !   vertical physics                                     (default: NO selection)
+!-----------------------------------------------------------------------
+   !                       ! type of vertical closure (required)
+   ln_zdfcst   = .true.      !  constant mixing
+   ln_zdfric   = .false.      !  local Richardson dependent formulation (T =>   fill namzdf_ric)
+   ln_zdftke   = .false.      !  Turbulent Kinetic Energy closure       (T =>   fill namzdf_tke)
+   ln_zdfgls   = .false.      !  Generic Length Scale closure           (T =>   fill namzdf_gls)
+   !   
+   !                       ! convection
+   ln_zdfevd   = .false.      !  enhanced vertical diffusion
+      nn_evdm     =    0         ! apply on tracer (=0) or on tracer and momentum (=1) 
+      rn_evd      =  100.        ! mixing coefficient [m2/s]
+   ln_zdfnpc   = .false.      !  Non-Penetrative Convective algorithm
+      nn_npc      =    1         ! frequency of application of npc 
+      nn_npcp     =  365         ! npc control print frequency
+   !   
+   ln_zdfddm   = .false.   ! double diffusive mixing
+      rn_avts  =    1.e-4     !  maximum avs (vertical mixing on salinity)
+      rn_hsbfr =    1.6       !  heat/salt buoyancy flux ratio
+   !   
+   !                       ! gravity wave-driven vertical mixing
+   ln_zdfiwm   = .false.      ! internal wave-induced mixing            (T =>   fill namzdf_iwm)
+   ln_zdfswm   = .false.      ! surface  wave-induced mixing            (T => ln_wave=ln_sdw=T )
+   !   
+   !                       ! coefficients
+   rn_avm0     =   1.e-4     !  vertical eddy viscosity   [m2/s]       (background Kz if ln_zdfcst=F)
+   rn_avt0     =   0.0e      !  vertical eddy diffusivity [m2/s]       (background Kz if ln_zdfcst=F)
+   nn_avb      =    0        !  profile for background avt & avm (=1) or not (=0)
+   nn_havtb    =    0        !  horizontal shape for avtb (=1) or not (=0)
 /
 !-----------------------------------------------------------------------
Index: branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/OVERFLOW/MY_SRC/usrdef_sbc.F90
===================================================================
--- branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/OVERFLOW/MY_SRC/usrdef_sbc.F90	(revision 8873)
+++ branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/OVERFLOW/MY_SRC/usrdef_sbc.F90	(revision 8882)
@@ -16,4 +16,5 @@
    USE dom_oce         ! ocean space and time domain
    USE sbc_oce         ! Surface boundary condition: ocean fields
+   USE sbc_ice         ! Surface boundary condition: ice fields 
    USE phycst          ! physical constants
    !
Index: branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/OVERFLOW/MY_SRC/zdfini.F90
===================================================================
--- branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/OVERFLOW/MY_SRC/zdfini.F90	(revision 8873)
+++ 	(revision )
@@ -1,183 +1,0 @@
-MODULE zdfini
-   !!======================================================================
-   !!                     ***  MODULE zdfini  ***
-   !!
-   !!                     ===  OVERFLOW case  ===
-   !!
-   !! Ocean physics :   read vertical mixing namelist and check consistancy
-   !!======================================================================
-   !! History :  8.0  ! 1997-06  (G. Madec)  Original code from inimix
-   !!            1.0  ! 2002-08  (G. Madec)  F90 : free form
-   !!             -   ! 2005-06  (C. Ethe) KPP scheme
-   !!             -   ! 2009-07  (G. Madec) add avmb, avtb in restart for cen2 advection
-   !!            3.7  ! 2014-12  (G. Madec) remove KPP scheme
-   !!----------------------------------------------------------------------
-
-   !!----------------------------------------------------------------------
-   !!   zdf_init    : initialization, namelist read, and parameters control
-   !!----------------------------------------------------------------------
-   USE par_oce         ! mesh and scale factors
-   USE zdf_oce         ! TKE vertical mixing          
-   USE sbc_oce         ! surface module (only for nn_isf in the option compatibility test)
-   USE zdftke          ! TKE vertical mixing
-   USE zdfgls          ! GLS vertical mixing
-   USE zdfric          ! Richardson vertical mixing   
-   USE zdfddm          ! double diffusion mixing      
-   USE zdfevd          ! enhanced vertical diffusion  
-   USE tranpc          ! convection: non penetrative adjustment
-   USE ldfslp          ! iso-neutral slopes
-   !
-   USE in_out_manager  ! I/O manager
-   USE iom             ! IOM library
-   USE lib_mpp         ! distribued memory computing
-
-   IMPLICIT NONE
-   PRIVATE
-
-   PUBLIC   zdf_init   ! routine called by opa.F90
-   
-   !!----------------------------------------------------------------------
-   !! NEMO/OPA 4.0 , NEMO Consortium (2011)
-   !! $Id$
-   !! Software governed by the CeCILL licence     (NEMOGCM/NEMO_CeCILL.txt)
-   !!----------------------------------------------------------------------
-CONTAINS
-
-   SUBROUTINE zdf_init
-      !!----------------------------------------------------------------------
-      !!                  ***  ROUTINE zdf_init  ***
-      !! 
-      !! ** Purpose :   initializations of the vertical ocean physics
-      !!
-      !! ** Method  :   Read namelist namzdf, control logicals 
-      !!----------------------------------------------------------------------
-      INTEGER ::   ioptio, ios       ! local integers
-      !!
-      NAMELIST/namzdf/ rn_avm0, rn_avt0, nn_avb, nn_havtb, ln_zdfexp, nn_zdfexp,   &
-         &              ln_zdfevd, nn_evdm, rn_avevd, ln_zdfnpc, nn_npc, nn_npcp,  &
-         &              ln_zdfqiao
-      !!----------------------------------------------------------------------
-
-      REWIND( numnam_ref )              ! Namelist namzdf in reference namelist : Vertical mixing parameters
-      READ  ( numnam_ref, namzdf, IOSTAT = ios, ERR = 901)
-901   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf in reference namelist', lwp )
-
-      REWIND( numnam_cfg )              ! Namelist namzdf in reference namelist : Vertical mixing parameters
-      READ  ( numnam_cfg, namzdf, IOSTAT = ios, ERR = 902 )
-902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf in configuration namelist', lwp )
-      IF(lwm) WRITE ( numond, namzdf )
-
-      IF(lwp) THEN               !* Parameter print
-         WRITE(numout,*)
-         WRITE(numout,*) 'zdf_init: vertical physics'
-         WRITE(numout,*) '~~~~~~~~'
-         WRITE(numout,*) '   Namelist namzdf : set vertical mixing mixing parameters'
-         WRITE(numout,*) '      vertical eddy viscosity             rn_avm0   = ', rn_avm0
-         WRITE(numout,*) '      vertical eddy diffusivity           rn_avt0   = ', rn_avt0
-         WRITE(numout,*) '      constant background or profile      nn_avb    = ', nn_avb
-         WRITE(numout,*) '      horizontal variation for avtb       nn_havtb  = ', nn_havtb
-         WRITE(numout,*) '      time splitting / backward scheme    ln_zdfexp = ', ln_zdfexp
-         WRITE(numout,*) '      number of time step                 nn_zdfexp = ', nn_zdfexp
-         WRITE(numout,*) '      enhanced vertical diffusion         ln_zdfevd = ', ln_zdfevd
-         WRITE(numout,*) '         applied on momentum (=1/0)       nn_evdm   = ', nn_evdm
-         WRITE(numout,*) '      vertical coefficient for evd        rn_avevd  = ', rn_avevd
-         WRITE(numout,*) '      non-penetrative convection (npc)    ln_zdfnpc = ', ln_zdfnpc
-         WRITE(numout,*) '      npc call  frequency                 nn_npc    = ', nn_npc
-         WRITE(numout,*) '      npc print frequency                 nn_npcp   = ', nn_npcp
-      ENDIF
-
-      !                          !* Parameter & logical controls
-      !                          !  ----------------------------
-      !
-      !                               ! ... check of vertical mixing scheme on tracers
-      !                                              ==> will be done in trazdf module
-      !
-      !                               ! ... check of mixing coefficient
-      IF(lwp) WRITE(numout,*)
-      IF(lwp) WRITE(numout,*) '   vertical mixing option :'
-      ioptio = 0
-      IF( lk_zdfcst ) THEN
-         IF(lwp) WRITE(numout,*) '      constant eddy diffusion coefficients'
-         ioptio = ioptio+1
-      ENDIF
-      IF( lk_zdfric ) THEN
-         IF(lwp) WRITE(numout,*) '      Richardson dependent eddy coefficients'
-         ioptio = ioptio+1
-      ENDIF
-      IF( lk_zdftke ) THEN
-         IF(lwp) WRITE(numout,*) '      TKE dependent eddy coefficients'
-         ioptio = ioptio+1
-      ENDIF
-      IF( lk_zdfgls ) THEN
-         IF(lwp) WRITE(numout,*) '      GLS dependent eddy coefficients'
-         ioptio = ioptio+1
-      ENDIF
-      IF( ioptio == 0 .OR. ioptio > 1 )   &
-         &   CALL ctl_stop( ' one and only one vertical diffusion option has to be defined ' )
-      IF( ( lk_zdfric .OR. lk_zdfgls ) .AND. ln_isfcav )   &
-         &   CALL ctl_stop( ' only zdfcst and zdftke were tested with ice shelves cavities ' )
-      !
-      !                               ! ... Convection
-      IF(lwp) WRITE(numout,*)
-      IF(lwp) WRITE(numout,*) '   convection :'
-      !
-#if defined key_top
-      IF( ln_zdfnpc )   CALL ctl_stop( ' zdf_init: npc scheme is not working with key_top' )
-#endif
-      !
-      ioptio = 0
-      IF( ln_zdfnpc ) THEN
-         IF(lwp) WRITE(numout,*) '      use non penetrative convective scheme'
-         ioptio = ioptio+1
-      ENDIF
-      IF( ln_zdfevd ) THEN
-         IF(lwp) WRITE(numout,*) '      use enhanced vertical dif. scheme'
-         ioptio = ioptio+1
-      ENDIF
-      IF( lk_zdftke ) THEN
-         IF(lwp) WRITE(numout,*) '      use the 1.5 turbulent closure'
-      ENDIF
-      IF( lk_zdfgls ) THEN
-         IF(lwp) WRITE(numout,*) '      use the GLS closure scheme'
-      ENDIF
-      IF ( ioptio > 1 )   CALL ctl_stop( ' chose between ln_zdfnpc and ln_zdfevd' )
-      IF( ioptio == 0 .AND. .NOT.( lk_zdftke .OR. lk_zdfgls ) )           &
-         !SF CALL ctl_stop( ' except for TKE or GLS physics, a convection scheme is',   &
-         CALL ctl_warn( ' except for TKE or GLS physics, a convection scheme is',   &
-         &              ' required: ln_zdfevd or ln_zdfnpc logicals' )
-
-      !                               !* Background eddy viscosity and diffusivity profil
-      IF( nn_avb == 0 ) THEN                ! Define avmb, avtb from namelist parameter
-         avmb(:) = rn_avm0
-         avtb(:) = rn_avt0                     
-      ELSE                                  ! Background profile of avt (fit a theoretical/observational profile (Krauss 1990)
-         avmb(:) = rn_avm0
-         avtb(:) = rn_avt0 + ( 3.e-4_wp - 2._wp * rn_avt0 ) * 1.e-4_wp * gdepw_1d(:)   ! m2/s
-         IF(ln_sco .AND. lwp)   CALL ctl_warn( 'avtb profile not valid in sco' )
-      ENDIF
-      !
-      IF( ln_rstart ) THEN                  !  Read avmb, avtb in restart (if exist)
-         ! if ln_traadv_cen, avmb, avtb have been modified in traadv_cen2 module. 
-         ! To ensure the restartability, avmb & avtb are written in the restart 
-         ! file in traadv_cen2 end read here. 
-         IF( iom_varid( numror, 'avmb', ldstop = .FALSE. ) > 0 ) THEN
-            CALL iom_get( numror, jpdom_unknown, 'avmb', avmb )
-            CALL iom_get( numror, jpdom_unknown, 'avtb', avtb )
-         ENDIF
-      ENDIF
-      !                                     ! 2D shape of the avtb
-      avtb_2d(:,:) = 1.e0                        ! uniform 
-      !
-      IF( nn_havtb == 1 ) THEN                   ! decrease avtb in the equatorial band
-           !  -15S -5S : linear decrease from avt0 to avt0/10.
-           !  -5S  +5N : cst value avt0/10.
-           !   5N  15N : linear increase from avt0/10, to avt0
-           WHERE(-15. <= gphit .AND. gphit < -5 )   avtb_2d = (1.  - 0.09 * (gphit + 15.))
-           WHERE( -5. <= gphit .AND. gphit <  5 )   avtb_2d =  0.1
-           WHERE(  5. <= gphit .AND. gphit < 15 )   avtb_2d = (0.1 + 0.09 * (gphit -  5.))
-      ENDIF
-      !
-   END SUBROUTINE zdf_init
-
-   !!======================================================================
-END MODULE zdfini
Index: branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/OVERFLOW/cpp_OVERFLOW.fcm
===================================================================
--- branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/OVERFLOW/cpp_OVERFLOW.fcm	(revision 8873)
+++ branches/2017/dev_CNRS_2017/NEMOGCM/CONFIG/TEST_CASES/OVERFLOW/cpp_OVERFLOW.fcm	(revision 8882)
@@ -1,1 +1,1 @@
-bld::tool::fppkeys key_zdfcst key_mpp_mpi key_iomput key_nosignedzero
+bld::tool::fppkeys   key_mpp_mpi key_iomput key_nosignedzero
