Index: NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/flo4rk.F90
===================================================================
--- NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/flo4rk.F90	(revision 11348)
+++ NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/flo4rk.F90	(revision 11413)
@@ -4,7 +4,5 @@
    !! Ocean floats :   trajectory computation using a 4th order Runge-Kutta
    !!======================================================================
-#if   defined key_floats
-   !!----------------------------------------------------------------------
-   !!   'key_floats'                                     float trajectories
+   !!
    !!----------------------------------------------------------------------
    !!   flo_4rk        : Compute the geographical position of floats
@@ -445,10 +443,4 @@
    END SUBROUTINE flo_interp
 
-#  else
-   !!----------------------------------------------------------------------
-   !!   No floats                                              Dummy module
-   !!----------------------------------------------------------------------
-#endif
-   
    !!======================================================================
 END MODULE flo4rk
Index: NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/flo_oce.F90
===================================================================
--- NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/flo_oce.F90	(revision 11348)
+++ NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/flo_oce.F90	(revision 11413)
@@ -6,8 +6,4 @@
    !! History :   OPA  ! 1999-10  (CLIPPER projet)
    !!   NEMO      1.0  ! 2002-11  (G. Madec, A. Bozec)  F90: Free form and module
-   !!----------------------------------------------------------------------
-#if   defined   key_floats
-   !!----------------------------------------------------------------------
-   !!   'key_floats'                                        drifting floats
    !!----------------------------------------------------------------------
    USE par_oce         ! ocean parameters
@@ -20,8 +16,7 @@
    PUBLIC   flo_oce_alloc   ! Routine called in floats.F90
 
-   LOGICAL, PUBLIC, PARAMETER ::   lk_floats = .TRUE.    !: float flag
-
    !! float parameters
    !! ----------------
+   LOGICAL, PUBLIC ::   ln_floats   !: Activate floats or not
    INTEGER, PUBLIC ::   jpnfl       !: total number of floats during the run
    INTEGER, PUBLIC ::   jpnnewflo   !: number of floats added in a new run
@@ -68,11 +63,4 @@
    END FUNCTION flo_oce_alloc
 
-#else
-   !!----------------------------------------------------------------------
-   !!   Default option :                                 NO drifting floats
-   !!----------------------------------------------------------------------
-   LOGICAL, PUBLIC, PARAMETER ::   lk_floats = .FALSE.   !: float flag
-#endif
-
    !!======================================================================
 END MODULE flo_oce
Index: NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/floats.F90
===================================================================
--- NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/floats.F90	(revision 11348)
+++ NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/floats.F90	(revision 11413)
@@ -7,7 +7,5 @@
    !!   NEMO     1.0  ! 2002-06  (A. Bozec)  F90, Free form and module
    !!----------------------------------------------------------------------
-#if   defined   key_floats
-   !!----------------------------------------------------------------------
-   !!   'key_floats'                                     float trajectories
+   !!
    !!----------------------------------------------------------------------
    !!   flo_stp   : float trajectories computation
@@ -30,5 +28,5 @@
 
    PUBLIC   flo_stp    ! routine called by step.F90
-   PUBLIC   flo_init   ! routine called by opa.F90
+   PUBLIC   flo_init   ! routine called by nemogcm.F90
 
    !!----------------------------------------------------------------------
@@ -81,5 +79,5 @@
       INTEGER ::   ios                 ! Local integer output status for namelist read
       !
-      NAMELIST/namflo/ jpnfl, jpnnewflo, ln_rstflo, nn_writefl, nn_stockfl, ln_argo, ln_flork4, ln_ariane, ln_flo_ascii
+      NAMELIST/namflo/ ln_floats, jpnfl, jpnnewflo, ln_rstflo, nn_writefl, nn_stockfl, ln_argo, ln_flork4, ln_ariane, ln_flo_ascii
       !!---------------------------------------------------------------------
       !
@@ -100,55 +98,44 @@
          WRITE(numout,*)
          WRITE(numout,*) '         Namelist floats :'
-         WRITE(numout,*) '            number of floats                      jpnfl        = ', jpnfl
-         WRITE(numout,*) '            number of new floats                  jpnflnewflo  = ', jpnnewflo
-         WRITE(numout,*) '            restart                               ln_rstflo    = ', ln_rstflo
-         WRITE(numout,*) '            frequency of float output file        nn_writefl   = ', nn_writefl
-         WRITE(numout,*) '            frequency of float restart file       nn_stockfl   = ', nn_stockfl
-         WRITE(numout,*) '            Argo type floats                      ln_argo      = ', ln_argo
-         WRITE(numout,*) '            Computation of T trajectories         ln_flork4    = ', ln_flork4
-         WRITE(numout,*) '            Use of ariane convention              ln_ariane    = ', ln_ariane
-         WRITE(numout,*) '            ascii output (T) or netcdf output (F) ln_flo_ascii = ', ln_flo_ascii
+         WRITE(numout,*) '            Activate floats or not                   ln_floats    = ', ln_floats
+         WRITE(numout,*) '               number of floats                      jpnfl        = ', jpnfl
+         WRITE(numout,*) '               number of new floats                  jpnflnewflo  = ', jpnnewflo
+         WRITE(numout,*) '               restart                               ln_rstflo    = ', ln_rstflo
+         WRITE(numout,*) '               frequency of float output file        nn_writefl   = ', nn_writefl
+         WRITE(numout,*) '               frequency of float restart file       nn_stockfl   = ', nn_stockfl
+         WRITE(numout,*) '               Argo type floats                      ln_argo      = ', ln_argo
+         WRITE(numout,*) '               Computation of T trajectories         ln_flork4    = ', ln_flork4
+         WRITE(numout,*) '               Use of ariane convention              ln_ariane    = ', ln_ariane
+         WRITE(numout,*) '               ascii output (T) or netcdf output (F) ln_flo_ascii = ', ln_flo_ascii
 
       ENDIF
       !
-      !                             ! allocate floats arrays
-      IF( flo_oce_alloc() /= 0 )   CALL ctl_stop( 'STOP', 'flo_init : unable to allocate arrays' )
-      !
-      !                             ! allocate flodom arrays
-      IF( flo_dom_alloc() /= 0 )   CALL ctl_stop( 'STOP', 'flo_dom : unable to allocate arrays' )
-      !
-      !                             ! allocate flowri arrays
-      IF( flo_wri_alloc() /= 0 )   CALL ctl_stop( 'STOP', 'flo_wri : unable to allocate arrays' )
-      !
-      !                             ! allocate florst arrays
-      IF( flo_rst_alloc() /= 0 )   CALL ctl_stop( 'STOP', 'flo_rst : unable to allocate arrays' )
-      !
-      jpnrstflo = jpnfl-jpnnewflo   ! memory allocation 
-      !
-      DO jfl = 1, jpnfl             ! vertical axe for netcdf IOM ouput
-         nfloat(jfl) = jfl 
-      END DO
-      !
-      CALL flo_dom                  ! compute/read initial position of floats
-      !
-      wb(:,:,:) = wn(:,:,:)         ! set wb for computation of floats trajectories at the first time step
+      IF( ln_floats ) THEN
+         !                             ! allocate floats arrays
+         IF( flo_oce_alloc() /= 0 )   CALL ctl_stop( 'STOP', 'flo_init : unable to allocate arrays' )
+         !
+         !                             ! allocate flodom arrays
+         IF( flo_dom_alloc() /= 0 )   CALL ctl_stop( 'STOP', 'flo_dom : unable to allocate arrays' )
+         !
+         !                             ! allocate flowri arrays
+         IF( flo_wri_alloc() /= 0 )   CALL ctl_stop( 'STOP', 'flo_wri : unable to allocate arrays' )
+         !
+         !                             ! allocate florst arrays
+         IF( flo_rst_alloc() /= 0 )   CALL ctl_stop( 'STOP', 'flo_rst : unable to allocate arrays' )
+         !
+         jpnrstflo = jpnfl-jpnnewflo   ! memory allocation 
+         !
+         DO jfl = 1, jpnfl             ! vertical axe for netcdf IOM ouput
+            nfloat(jfl) = jfl 
+         END DO
+         !
+         CALL flo_dom                  ! compute/read initial position of floats
+         !
+         wb(:,:,:) = wn(:,:,:)         ! set wb for computation of floats trajectories at the first time step
+         !
+      ENDIF
       !
    END SUBROUTINE flo_init
 
-#  else
-   !!----------------------------------------------------------------------
-   !!   Default option :                                       Empty module
-   !!----------------------------------------------------------------------
-CONTAINS
-   SUBROUTINE flo_stp( kt )          ! Empty routine
-      IMPLICIT NONE
-      INTEGER, INTENT( in ) :: kt
-      WRITE(*,*) 'flo_stp: You should not have seen this print! error?', kt
-   END SUBROUTINE flo_stp
-   SUBROUTINE flo_init          ! Empty routine
-      IMPLICIT NONE
-   END SUBROUTINE flo_init
-#endif
-
    !!======================================================================
  END MODULE floats
Index: NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/floblk.F90
===================================================================
--- NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/floblk.F90	(revision 11348)
+++ NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/floblk.F90	(revision 11413)
@@ -4,7 +4,5 @@
    !! Ocean floats :   trajectory computation
    !!======================================================================
-#if   defined key_floats
-   !!----------------------------------------------------------------------
-   !!   'key_floats'                                     float trajectories
+   !!
    !!----------------------------------------------------------------------
    !!    flotblk     : compute float trajectories with Blanke algorithme
@@ -369,13 +367,4 @@
    END SUBROUTINE flo_blk
 
-#  else
-   !!----------------------------------------------------------------------
-   !!   Default option                                         Empty module
-   !!----------------------------------------------------------------------
-CONTAINS
-   SUBROUTINE flo_blk                  ! Empty routine
-   END SUBROUTINE flo_blk 
-#endif
-   
    !!======================================================================
 END MODULE floblk 
Index: NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/flodom.F90
===================================================================
--- NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/flodom.F90	(revision 11348)
+++ NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/flodom.F90	(revision 11413)
@@ -6,8 +6,4 @@
    !! History :  OPA  ! 1998-07 (Y.Drillet, CLIPPER)  Original code
    !!  NEMO      3.3  ! 2011-09 (C.Bricaud,S.Law-Chune Mercator-Ocean): add ARIANE convention + comsecitc changes
-   !!----------------------------------------------------------------------
-#if   defined key_floats
-   !!----------------------------------------------------------------------
-   !!   'key_floats'                                     float trajectories
    !!----------------------------------------------------------------------
    !!   flo_dom               : initialization of floats
@@ -455,15 +451,4 @@
    END FUNCTION flo_dom_alloc
 
-
-#else
-   !!----------------------------------------------------------------------
-   !!   Default option                                         Empty module
-   !!----------------------------------------------------------------------
-CONTAINS
-   SUBROUTINE flo_dom                 ! Empty routine
-         WRITE(*,*) 'flo_dom: : You should not have seen this print! error?'
-   END SUBROUTINE flo_dom
-#endif
-
    !!======================================================================
 END MODULE flodom
Index: NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/florst.F90
===================================================================
--- NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/florst.F90	(revision 11348)
+++ NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/florst.F90	(revision 11413)
@@ -8,8 +8,4 @@
    !!   NEMO      1.0  !  2002-10  (A. Bozec)  F90 : Free form and module
    !!             3.2  !  2010-08  (slaw, cbricaud): netcdf outputs and others 
-   !!----------------------------------------------------------------------
-#if   defined key_floats
-   !!----------------------------------------------------------------------
-   !!   'key_floats'                                     float trajectories
    !!----------------------------------------------------------------------
    USE flo_oce         ! ocean drifting floats
@@ -125,13 +121,4 @@
    END SUBROUTINE flo_rst
 
-#  else
-   !!----------------------------------------------------------------------
-   !!   Default option                                         Empty module
-   !!----------------------------------------------------------------------
-CONTAINS
-   SUBROUTINE flo_rst                 ! Empty routine
-   END SUBROUTINE flo_rst
-#endif
-
    !!=======================================================================
 END MODULE florst
Index: NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/flowri.F90
===================================================================
--- NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/flowri.F90	(revision 11348)
+++ NEMO/branches/2019/dev_r11265_ASINTER-01_Guillaume_ABL1D/src/OCE/FLO/flowri.F90	(revision 11413)
@@ -10,8 +10,4 @@
    !!   NEMO      1.0  !  2002-10  (A. Bozec)  F90 : Free form and module
    !!             3.2  !  2010-08  (slaw, cbricaud): netcdf outputs and others 
-   !!----------------------------------------------------------------------
-#if   defined key_floats
-   !!----------------------------------------------------------------------
-   !!   'key_floats'                                     float trajectories
    !!----------------------------------------------------------------------
    USE flo_oce         ! ocean drifting floats
@@ -179,5 +175,5 @@
                CALL ctl_opn( numflo, 'trajec_float', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. )
                irecflo = NINT( (nitend-nn_it000) / FLOAT(nn_writefl) )
-               WRITE(numflo,*)cexper,no,irecflo,jpnfl,nn_writefl
+               WRITE(numflo,*) cexper, irecflo, jpnfl, nn_writefl
             ENDIF
 
@@ -255,12 +251,11 @@
 
                istart = (/jfl,irec/)
-               icfl   = INT( tpkfl(jfl) )            ! K-index of the nearest point before
-
-               CALL flioputv( numflo , 'traj_lon'    , zlon(jfl)        , start=istart )
-               CALL flioputv( numflo , 'traj_lat'    , zlat(jfl)        , start=istart )  
-               CALL flioputv( numflo , 'traj_depth'  , zdep(jfl)        , start=istart )  
-               CALL flioputv( numflo , 'traj_temp'   , ztemp(icfl,jfl)  , start=istart )  
-               CALL flioputv( numflo , 'traj_salt'   , zsal(icfl,jfl)   , start=istart )  
-               CALL flioputv( numflo , 'traj_dens'   , zrho(icfl,jfl)   , start=istart )  
+
+               CALL flioputv( numflo , 'traj_lon'    , zlon(jfl), start=istart )
+               CALL flioputv( numflo , 'traj_lat'    , zlat(jfl), start=istart )  
+               CALL flioputv( numflo , 'traj_depth'  , zdep(jfl), start=istart )  
+               CALL flioputv( numflo , 'traj_temp'   , ztem(jfl), start=istart )  
+               CALL flioputv( numflo , 'traj_salt'   , zsal(jfl), start=istart )  
+               CALL flioputv( numflo , 'traj_dens'   , zrho(jfl), start=istart )  
 
             ENDDO
@@ -277,14 +272,4 @@
    END SUBROUTINE flo_wri
 
-
-#  else
-   !!----------------------------------------------------------------------
-   !!   Default option                                         Empty module
-   !!----------------------------------------------------------------------
-CONTAINS
-   SUBROUTINE flo_wri                 ! Empty routine
-   END SUBROUTINE flo_wri
-#endif
-
    !!=======================================================================
 END MODULE flowri
