Index: /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/C14/trcatm_c14.F90
===================================================================
--- /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/C14/trcatm_c14.F90	(revision 7191)
+++ /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/C14/trcatm_c14.F90	(revision 7192)
@@ -160,5 +160,5 @@
             DO jn = 1, nrecc14
                READ(inum2,*) iyear,incom,incom,atmc14(jn)
-               tyrc14(jn)=1950._wp-float(iyear)                ! BP to AD dates
+               tyrc14(jn)=1950._wp-REAL(iyear,wp)                ! BP to AD dates
             END DO
             CLOSE(inum2)
Index: /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/CFC/trcsms_cfc.F90
===================================================================
--- /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/CFC/trcsms_cfc.F90	(revision 7191)
+++ /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/CFC/trcsms_cfc.F90	(revision 7192)
@@ -113,6 +113,6 @@
          ! time interpolation at time kt
          DO jm = 1, jphem
-            zpatm(jm,jl) = (  p_cfc(iyear_beg, jm, jl) * FLOAT (im1)  &
-               &           +  p_cfc(iyear_end, jm, jl) * FLOAT (im2) ) / 12.
+            zpatm(jm,jl) = (  p_cfc(iyear_beg, jm, jl) * REAL(im1, wp)  &
+               &           +  p_cfc(iyear_end, jm, jl) * REAL(im2, wp) ) / 12.
          END DO
          
Index: /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zfechem.F90
===================================================================
--- /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zfechem.F90	(revision 7191)
+++ /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zfechem.F90	(revision 7192)
@@ -136,6 +136,6 @@
             DO jj = 1, jpj
                DO ji = 1, jpi
-                  zlight = etot(ji,jj,jk) * zstrn(ji,jj) * float(2-jn)
-                  zzstrn2 = zstrn2(ji,jj) * float(2-jn) + (1. - zstrn2(ji,jj) ) * float(jn-1)
+                  zlight = etot(ji,jj,jk) * zstrn(ji,jj) * REAL( 2-jn, wp )
+                  zzstrn2 = zstrn2(ji,jj) * REAL( 2-jn, wp ) + (1. - zstrn2(ji,jj) ) * REAL( jn-1, wp )
                   ! Calculate ligand concentrations : assume 2/3rd of excess goes to
                   ! strong ligands (L1) and 1/3rd to weak ligands (L2)
@@ -192,5 +192,5 @@
                         zphi = ACOS( zfff )
                         DO jic = 1, 3
-                           zfunc = -2 * zr * COS( zphi / 3. + 2. * FLOAT( jic - 1 ) * rpi / 3. ) - za2 / 3.
+                           zfunc = -2 * zr * COS( zphi / 3. + 2. * REAL( jic - 1, wp ) * rpi / 3. ) - za2 / 3.
                            IF( zfunc > 0. .AND. zfunc <= ztfe)  zxs = zfunc
                         END DO
Index: /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zpoc.F90
===================================================================
--- /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zpoc.F90	(revision 7191)
+++ /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zpoc.F90	(revision 7192)
@@ -529,6 +529,6 @@
       IF (jcpoc > 1) THEN
          !
-         remindelta = log(4. * 1000. ) / float(jcpoc-1)
-         reminup = 1./ 400. * exp(remindelta)
+         remindelta = LOG(4. * 1000. ) / REAL(jcpoc-1, wp)
+         reminup = 1./ 400. * EXP(remindelta)
          !
          ! Discretization based on incomplete gamma functions
@@ -540,11 +540,11 @@
          reminp(1) = gamain(reminup, rshape+1.0, ifault) * xremip / alphan(1)
          DO jn = 2, jcpoc-1
-            reminup = 1./ 400. * exp(float(jn) * remindelta)
-            remindown = 1. / 400. * exp(float(jn-1) * remindelta)
+            reminup = 1./ 400. * EXP( REAL(jn, wp) * remindelta)
+            remindown = 1. / 400. * EXP( REAL(jn-1, wp) * remindelta)
             alphan(jn) = gamain(reminup, rshape, ifault) - gamain(remindown, rshape, ifault)
             reminp(jn) = gamain(reminup, rshape+1.0, ifault) - gamain(remindown, rshape+1.0, ifault)
             reminp(jn) = reminp(jn) * xremip / alphan(jn)
          END DO
-         remindown = 1. / 400. * exp(float(jcpoc-1) * remindelta)
+         remindown = 1. / 400. * EXP( REAL(jcpoc-1, wp) * remindelta)
          alphan(jcpoc) = 1.0 - gamain(remindown, rshape, ifault)
          reminp(jcpoc) = 1.0 - gamain(remindown, rshape+1.0, ifault)
Index: /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsbc.F90
===================================================================
--- /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsbc.F90	(revision 7191)
+++ /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsbc.F90	(revision 7192)
@@ -321,5 +321,5 @@
             END DO
             CALL iom_close( numdust )
-            ztimes_dust = 1._wp / FLOAT( ntimes_dust ) 
+            ztimes_dust = 1._wp / REAL(ntimes_dust, wp) 
             sumdepsi = 0.e0
             DO jm = 1, ntimes_dust
@@ -386,5 +386,5 @@
                END DO
                CALL iom_close( numriv )
-               ztimes_riv = 1._wp / FLOAT(ntimes_riv) 
+               ztimes_riv = 1._wp / REAL(ntimes_riv, wp) 
                DO jm = 1, ntimes_riv
                   rivinput(ifpr) = rivinput(ifpr) + glob_sum( zriver(:,:,jm) * tmask(:,:,1) * ztimes_riv ) 
@@ -433,5 +433,5 @@
             END DO
             CALL iom_close( numdepo )
-            ztimes_ndep = 1._wp / FLOAT( ntimes_ndep ) 
+            ztimes_ndep = 1._wp / REAL(ntimes_ndep, wp) 
             nitdepinput = 0._wp
             DO jm = 1, ntimes_ndep
Index: /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsink.F90
===================================================================
--- /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsink.F90	(revision 7191)
+++ /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsink.F90	(revision 7192)
@@ -136,6 +136,6 @@
                IF( tmask(ji,jj,jk) == 1 ) THEN
                  zwsmax = 0.5 * e3t_n(ji,jj,jk) / xstep
-                 wsbio3(ji,jj,jk) = MIN( wsbio3(ji,jj,jk), zwsmax * FLOAT( iiter1 ) )
-                 wsbio4(ji,jj,jk) = MIN( wsbio4(ji,jj,jk), zwsmax * FLOAT( iiter2 ) )
+                 wsbio3(ji,jj,jk) = MIN( wsbio3(ji,jj,jk), zwsmax * REAL( iiter1, wp ) )
+                 wsbio4(ji,jj,jk) = MIN( wsbio4(ji,jj,jk), zwsmax * REAL( iiter2, wp ) )
                ENDIF
             END DO
@@ -194,5 +194,5 @@
                   IF( tmask(ji,jj,jk) == 1 ) THEN
                     zwsmax = 0.5 * e3t_n(ji,jj,jk) / xstep
-                    wsfep(ji,jj,jk) = MIN( wsfep(ji,jj,jk), zwsmax * FLOAT( iiter1 ) )
+                    wsfep(ji,jj,jk) = MIN( wsfep(ji,jj,jk), zwsmax * REAL( iiter1, wp ) )
                   ENDIF
                END DO
@@ -310,5 +310,5 @@
       CALL wrk_alloc( jpi, jpj, jpk, ztraz, zakz, zwsink2, ztrb )
 
-      zstep = rfact2 / FLOAT( kiter ) / 2.
+      zstep = rfact2 / REAL( kiter, wp ) / 2.
 
       ztraz(:,:,:) = 0.e0
Index: /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsms.F90
===================================================================
--- /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsms.F90	(revision 7191)
+++ /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsms.F90	(revision 7192)
@@ -88,5 +88,5 @@
       IF( ( ln_top_euler .AND. kt == nittrc000 )  .OR. ( .NOT.ln_top_euler .AND. kt <= nittrc000 + nn_dttrc ) ) THEN
          rfactr  = 1. / rfact
-         rfact2  = rfact / FLOAT( nrdttrc )
+         rfact2  = rfact / REAL( nrdttrc, wp )
          rfact2r = 1. / rfact2
          xstep = rfact2 / rday         ! Time step duration for biology
Index: /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/TRP/trcrad.F90
===================================================================
--- /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/TRP/trcrad.F90	(revision 7191)
+++ /branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/TRP/trcrad.F90	(revision 7192)
@@ -214,5 +214,5 @@
             IF( l_trdtrc ) THEN
                !
-               zs2rdt = 1. / ( 2. * rdt * FLOAT( nn_dttrc ) )
+               zs2rdt = 1. / ( 2. * rdt * REAL( nn_dttrc, wp ) )
                ztrtrdb(:,:,:) = ( ptrb(:,:,:,jn) - ztrtrdb(:,:,:) ) * zs2rdt
                ztrtrdn(:,:,:) = ( ptrn(:,:,:,jn) - ztrtrdn(:,:,:) ) * zs2rdt 
