Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/adaptdt.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/adaptdt.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/adaptdt.F	(revision 1299)
@@ -1,8 +1,9 @@
 !
-! $Header$
+! $Id$
 !
       subroutine adaptdt(nadv,dtbon,n,pbaru,
      c                   masse)
 
+      USE control_mod
       IMPLICIT NONE
 
@@ -16,5 +17,4 @@
 #include "logic.h"
 #include "temps.h"
-#include "control.h"
 #include "ener.h"
 #include "description.h"
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/advtrac.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/advtrac.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/advtrac.F	(revision 1299)
@@ -16,4 +16,6 @@
 c
       USE infotrac
+      USE control_mod
+ 
 
       IMPLICIT NONE
@@ -27,5 +29,4 @@
 #include "logic.h"
 #include "temps.h"
-#include "control.h"
 #include "ener.h"
 #include "description.h"
@@ -121,5 +122,5 @@
 
       ! ... Flux de masse diaganostiques traceurs
-      flxw = wg / FLOAT(iapp_tracvl)
+      flxw = wg / REAL(iapp_tracvl)
 
 c  test sur l'eventuelle creation de valeurs negatives de la masse
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/bilan_dyn.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/bilan_dyn.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/bilan_dyn.F	(revision 1299)
@@ -423,5 +423,5 @@
          Q_cum(:,:,:,iQ)=Q_cum(:,:,:,iQ)/masse_cum(:,:,:)
       enddo
-      zz=1./float(ncum)
+      zz=1./REAL(ncum)
       ps_cum=ps_cum*zz
       masse_cum=masse_cum*zz
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/caladvtrac.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/caladvtrac.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/caladvtrac.F	(revision 1299)
@@ -1,4 +1,4 @@
 !
-! $Header$
+! $Id$
 !
 c
@@ -9,4 +9,6 @@
 c
       USE infotrac
+      USE control_mod
+ 
       IMPLICIT NONE
 c
@@ -24,5 +26,4 @@
 #include "paramet.h"
 #include "comconst.h"
-#include "control.h"
 
 c   Arguments:
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/calfis.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/calfis.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/calfis.F	(revision 1299)
@@ -31,4 +31,6 @@
 c   .........
       USE infotrac
+      USE control_mod
+ 
 
       IMPLICIT NONE
@@ -96,5 +98,4 @@
 #include "comvert.h"
 #include "comgeom2.h"
-#include "control.h"
 
 c    Arguments :
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/conf_gcm.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/conf_gcm.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/conf_gcm.F	(revision 1299)
@@ -6,4 +6,5 @@
       SUBROUTINE conf_gcm( tapedef, etatinit, clesphy0 )
 c
+      USE control_mod
 #ifdef CPP_IOIPSL
       use IOIPSL
@@ -11,4 +12,5 @@
 ! if not using IOIPSL, we still need to use (a local version of) getin
       use ioipsl_getincom
+ 
 #endif
       IMPLICIT NONE
@@ -34,5 +36,4 @@
 #include "dimensions.h"
 #include "paramet.h"
-#include "control.h"
 #include "logic.h"
 #include "serre.h"
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/control_mod.F90
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/control_mod.F90	(revision 1299)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/control_mod.F90	(revision 1299)
@@ -0,0 +1,20 @@
+!
+! $Id$
+!
+
+MODULE control_mod
+
+! LF 01/2010
+! Remplacement du fichier et common control
+
+  IMPLICIT NONE
+
+  REAL    :: periodav
+  INTEGER :: nday,day_step,iperiod,iapp_tracvl
+  INTEGER :: iconser,iecri,idissip,iphysiq,iecrimoy
+  INTEGER :: dayref,anneeref, raz_date, ip_ebil_dyn
+  LOGICAL :: offline, output_grads_dyn, ok_dynzon
+  CHARACTER (len=4)  :: config_inca
+  CHARACTER (len=10) :: planet_type
+
+END MODULE
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/create_etat0_limit.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/create_etat0_limit.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/create_etat0_limit.F	(revision 1299)
@@ -6,4 +6,5 @@
 ! This prog. is designed to work for Earth
        USE dimphy
+       USE control_mod
        USE comgeomphy
        USE infotrac
@@ -34,5 +35,4 @@
 #include "paramet.h"
 #include "indicesol.h"
-#include  "control.h"
       REAL :: masque(iip1,jjp1)
 !      REAL :: pctsrf(iim*(jjm-1)+2, nbsrf)
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/defrun.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/defrun.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/defrun.F	(revision 1299)
@@ -1,4 +1,4 @@
 !
-! $Header$
+! $Id$
 !
 c
@@ -6,4 +6,6 @@
       SUBROUTINE defrun( tapedef, etatinit, clesphy0 )
 c
+      USE control_mod
+ 
       IMPLICIT NONE
 c-----------------------------------------------------------------------
@@ -28,5 +30,4 @@
 #include "dimensions.h"
 #include "paramet.h"
-#include "control.h"
 #include "logic.h"
 #include "serre.h"
@@ -239,6 +240,6 @@
        clesphy0(i) = 0.
       ENDDO
-                          clesphy0(1) = FLOAT( iflag_con )
-                          clesphy0(2) = FLOAT( nbapp_rad )
+                          clesphy0(1) = REAL( iflag_con )
+                          clesphy0(2) = REAL( nbapp_rad )
 
        IF( cycle_diurne  ) clesphy0(3) =  1.
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/disvert.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/disvert.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/disvert.F	(revision 1299)
@@ -111,5 +111,5 @@
       snorm  = 0.
       DO l = 1, llm
-         x = 2.*asin(1.) * (FLOAT(l)-0.5) / float(llm+1)
+         x = 2.*asin(1.) * (REAL(l)-0.5) / REAL(llm+1)
 
          IF (ok_strato) THEN
@@ -135,9 +135,9 @@
 
       DO l=1,llm
-        nivsigs(l) = FLOAT(l)
+        nivsigs(l) = REAL(l)
       ENDDO
 
       DO l=1,llmp1
-        nivsig(l)= FLOAT(l)
+        nivsig(l)= REAL(l)
       ENDDO
 
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/dynredem.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/dynredem.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/dynredem.F	(revision 1299)
@@ -8,4 +8,5 @@
 #endif
       USE infotrac
+ 
       IMPLICIT NONE
 c=======================================================================
@@ -72,9 +73,9 @@
        tab_cntrl(l) = 0.
       ENDDO
-       tab_cntrl(1)  = FLOAT(iim)
-       tab_cntrl(2)  = FLOAT(jjm)
-       tab_cntrl(3)  = FLOAT(llm)
-       tab_cntrl(4)  = FLOAT(day_ref)
-       tab_cntrl(5)  = FLOAT(annee_ref)
+       tab_cntrl(1)  = REAL(iim)
+       tab_cntrl(2)  = REAL(jjm)
+       tab_cntrl(3)  = REAL(llm)
+       tab_cntrl(4)  = REAL(day_ref)
+       tab_cntrl(5)  = REAL(annee_ref)
        tab_cntrl(6)  = rad
        tab_cntrl(7)  = omeg
@@ -116,6 +117,6 @@
       ENDIF
 
-       tab_cntrl(30) = FLOAT(iday_end)
-       tab_cntrl(31) = FLOAT(itau_dyn + itaufin)
+       tab_cntrl(30) = REAL(iday_end)
+       tab_cntrl(31) = REAL(itau_dyn + itaufin)
 c
 c    .........................................................
@@ -517,4 +518,6 @@
      .                     vcov,ucov,teta,q,masse,ps)
       USE infotrac
+      USE control_mod
+ 
       IMPLICIT NONE
 c=================================================================
@@ -528,5 +531,4 @@
 #include "comgeom.h"
 #include "temps.h"
-#include "control.h"
 
       INTEGER l
@@ -589,5 +591,5 @@
       ierr = NF_GET_VAR_REAL(nid, nvarid, tab_cntrl)
 #endif
-       tab_cntrl(31) = FLOAT(itau_dyn + itaufin)
+       tab_cntrl(31) = REAL(itau_dyn + itaufin)
 #ifdef NC_DOUBLE
       ierr = NF_PUT_VAR_DOUBLE (nid,nvarid,tab_cntrl)
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/etat0_netcdf.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/etat0_netcdf.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/etat0_netcdf.F	(revision 1299)
@@ -1,4 +1,4 @@
 !
-! $Header$
+! $Id$
 !
 c
@@ -9,4 +9,5 @@
       USE ioipsl
       USE dimphy
+      USE control_mod
       USE infotrac
       USE fonte_neige_mod
@@ -89,5 +90,4 @@
 
 #include "comdissnew.h"
-#include "control.h"
 #include "serre.h"
 #include "clesphys.h"
@@ -189,5 +189,5 @@
       co2_ppm0 = co2_ppm
 
-      dtvr   = daysec/FLOAT(day_step)
+      dtvr   = daysec/REAL(day_step)
       print*,'dtvr',dtvr
 
@@ -691,6 +691,6 @@
 C
       write(*,*)'phystep ',dtvr,iphysiq,nbapp_rad
-      phystep   = dtvr * FLOAT(iphysiq)
-      radpas    = NINT (86400./phystep/ FLOAT(nbapp_rad) )
+      phystep   = dtvr * REAL(iphysiq)
+      radpas    = NINT (86400./phystep/ REAL(nbapp_rad) )
       write(*,*)'phystep =', phystep, radpas
 cIM : lecture de co2_ppm & solaire ds physiq.def
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/extrapol.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/extrapol.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/extrapol.F	(revision 1299)
@@ -1,4 +1,4 @@
 !
-! $Header$
+! $Id$
 !
 C
@@ -158,5 +158,5 @@
                jlat = jy(k)
                pwork(i,j) = pwork(i,j)
-     $                      + pfild(ilon,jlat) * zmask(k)/FLOAT(inbor)
+     $                      + pfild(ilon,jlat) * zmask(k)/REAL(inbor)
             ENDDO
          ENDIF
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/fluxstokenc.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/fluxstokenc.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/fluxstokenc.F	(revision 1299)
@@ -114,10 +114,10 @@
       DO l=1,llm
          DO ij = 1,ip1jmp1
-            pbaruc(ij,l) = pbaruc(ij,l)/float(istdyn)
-            tetac(ij,l) = tetac(ij,l)/float(istdyn)
-            phic(ij,l) = phic(ij,l)/float(istdyn)
+            pbaruc(ij,l) = pbaruc(ij,l)/REAL(istdyn)
+            tetac(ij,l) = tetac(ij,l)/REAL(istdyn)
+            phic(ij,l) = phic(ij,l)/REAL(istdyn)
          ENDDO
          DO ij = 1,ip1jm
-            pbarvc(ij,l) = pbarvc(ij,l)/float(istdyn)
+            pbarvc(ij,l) = pbarvc(ij,l)/REAL(istdyn)
          ENDDO
       ENDDO
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/friction.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/friction.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/friction.F	(revision 1299)
@@ -1,7 +1,10 @@
 !
-! $Header$
+! $Id$
 !
 c=======================================================================
       SUBROUTINE friction(ucov,vcov,pdt)
+
+      USE control_mod
+ 
       IMPLICIT NONE
 
@@ -21,5 +24,4 @@
 #include "paramet.h"
 #include "comgeom2.h"
-#include "control.h"
 #include "comconst.h"
 
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/fxhyp.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/fxhyp.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/fxhyp.F	(revision 1299)
@@ -1,4 +1,4 @@
 !
-! $Header$
+! $Id$
 !
 c
@@ -89,5 +89,5 @@
 
        DO i = 0, nmax2 
-        xtild(i) = - pi + FLOAT(i) * depi /nmax2
+        xtild(i) = - pi + REAL(i) * depi /nmax2
        ENDDO
 
@@ -235,5 +235,5 @@
       DO 1500 i = ii1, ii2
 
-      xlon2 = - pi + (FLOAT(i) + xuv - decalx) * depi / FLOAT(iim) 
+      xlon2 = - pi + (REAL(i) + xuv - decalx) * depi / REAL(iim) 
 
       Xfi    = xlon2
@@ -280,5 +280,5 @@
 550   CONTINUE
 
-       xxprim(i) = depi/ ( FLOAT(iim) * Xprimin )
+       xxprim(i) = depi/ ( REAL(iim) * Xprimin )
        xvrai(i)  =  xi + xzoom
 
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/fxy.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/fxy.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/fxy.F	(revision 1299)
@@ -1,4 +1,4 @@
 !
-! $Header$
+! $Id$
 !
       SUBROUTINE fxy (rlatu,yprimu,rlatv,yprimv,rlatu1,yprimu1,
@@ -32,6 +32,6 @@
 c
        DO j = 1, jjm + 1 
-          rlatu(j) = fy    ( FLOAT( j )        )
-         yprimu(j) = fyprim( FLOAT( j )        )
+          rlatu(j) = fy    ( REAL( j )        )
+         yprimu(j) = fyprim( REAL( j )        )
        ENDDO
 
@@ -39,11 +39,11 @@
        DO j = 1, jjm
 
-         rlatv(j)  = fy    ( FLOAT( j ) + 0.5  )
-         rlatu1(j) = fy    ( FLOAT( j ) + 0.25 ) 
-         rlatu2(j) = fy    ( FLOAT( j ) + 0.75 ) 
+         rlatv(j)  = fy    ( REAL( j ) + 0.5  )
+         rlatu1(j) = fy    ( REAL( j ) + 0.25 ) 
+         rlatu2(j) = fy    ( REAL( j ) + 0.75 ) 
 
-        yprimv(j)  = fyprim( FLOAT( j ) + 0.5  ) 
-        yprimu1(j) = fyprim( FLOAT( j ) + 0.25 )
-        yprimu2(j) = fyprim( FLOAT( j ) + 0.75 )
+        yprimv(j)  = fyprim( REAL( j ) + 0.5  ) 
+        yprimu1(j) = fyprim( REAL( j ) + 0.25 )
+        yprimu2(j) = fyprim( REAL( j ) + 0.75 )
 
        ENDDO
@@ -53,13 +53,13 @@
 c
        DO i = 1, iim + 1
-           rlonv(i)     = fx    (   FLOAT( i )          )
-           rlonu(i)     = fx    (   FLOAT( i ) + 0.5    )
-        rlonm025(i)     = fx    (   FLOAT( i ) - 0.25  )
-        rlonp025(i)     = fx    (   FLOAT( i ) + 0.25  )
+           rlonv(i)     = fx    (   REAL( i )          )
+           rlonu(i)     = fx    (   REAL( i ) + 0.5    )
+        rlonm025(i)     = fx    (   REAL( i ) - 0.25  )
+        rlonp025(i)     = fx    (   REAL( i ) + 0.25  )
 
-         xprimv  (i)    = fxprim (  FLOAT( i )          )
-         xprimu  (i)    = fxprim (  FLOAT( i ) + 0.5    )
-        xprimm025(i)    = fxprim (  FLOAT( i ) - 0.25   )
-        xprimp025(i)    = fxprim (  FLOAT( i ) + 0.25   )
+         xprimv  (i)    = fxprim (  REAL( i )          )
+         xprimu  (i)    = fxprim (  REAL( i ) + 0.5    )
+        xprimm025(i)    = fxprim (  REAL( i ) - 0.25   )
+        xprimp025(i)    = fxprim (  REAL( i ) + 0.25   )
        ENDDO
 
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/fxysinus.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/fxysinus.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/fxysinus.F	(revision 1299)
@@ -1,4 +1,4 @@
 !
-! $Header$
+! $Id$
 !
       SUBROUTINE fxysinus (rlatu,yprimu,rlatv,yprimv,rlatu1,yprimu1,
@@ -32,6 +32,6 @@
 c
        DO j = 1, jjm + 1 
-          rlatu(j) = fy    ( FLOAT( j )        )
-         yprimu(j) = fyprim( FLOAT( j )        )
+          rlatu(j) = fy    ( REAL( j )        )
+         yprimu(j) = fyprim( REAL( j )        )
        ENDDO
 
@@ -39,11 +39,11 @@
        DO j = 1, jjm
 
-         rlatv(j)  = fy    ( FLOAT( j ) + 0.5  )
-         rlatu1(j) = fy    ( FLOAT( j ) + 0.25 ) 
-         rlatu2(j) = fy    ( FLOAT( j ) + 0.75 ) 
+         rlatv(j)  = fy    ( REAL( j ) + 0.5  )
+         rlatu1(j) = fy    ( REAL( j ) + 0.25 ) 
+         rlatu2(j) = fy    ( REAL( j ) + 0.75 ) 
 
-        yprimv(j)  = fyprim( FLOAT( j ) + 0.5  ) 
-        yprimu1(j) = fyprim( FLOAT( j ) + 0.25 )
-        yprimu2(j) = fyprim( FLOAT( j ) + 0.75 )
+        yprimv(j)  = fyprim( REAL( j ) + 0.5  ) 
+        yprimu1(j) = fyprim( REAL( j ) + 0.25 )
+        yprimu2(j) = fyprim( REAL( j ) + 0.75 )
 
        ENDDO
@@ -53,13 +53,13 @@
 c
        DO i = 1, iim + 1
-           rlonv(i)     = fx    (   FLOAT( i )          )
-           rlonu(i)     = fx    (   FLOAT( i ) + 0.5    )
-        rlonm025(i)     = fx    (   FLOAT( i ) - 0.25  )
-        rlonp025(i)     = fx    (   FLOAT( i ) + 0.25  )
+           rlonv(i)     = fx    (   REAL( i )          )
+           rlonu(i)     = fx    (   REAL( i ) + 0.5    )
+        rlonm025(i)     = fx    (   REAL( i ) - 0.25  )
+        rlonp025(i)     = fx    (   REAL( i ) + 0.25  )
 
-         xprimv  (i)    = fxprim (  FLOAT( i )          )
-         xprimu  (i)    = fxprim (  FLOAT( i ) + 0.5    )
-        xprimm025(i)    = fxprim (  FLOAT( i ) - 0.25   )
-        xprimp025(i)    = fxprim (  FLOAT( i ) + 0.25   )
+         xprimv  (i)    = fxprim (  REAL( i )          )
+         xprimu  (i)    = fxprim (  REAL( i ) + 0.5    )
+        xprimm025(i)    = fxprim (  REAL( i ) - 0.25   )
+        xprimp025(i)    = fxprim (  REAL( i ) + 0.25   )
        ENDDO
 
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/fyhyp.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/fyhyp.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/fyhyp.F	(revision 1299)
@@ -1,4 +1,4 @@
 !
-! $Header$
+! $Id$
 !
 c
@@ -75,5 +75,5 @@
        depi     = 2. * pi
        pis2     = pi/2.
-       pisjm    = pi/ FLOAT(jjm)
+       pisjm    = pi/ REAL(jjm)
        epsilon  = 1.e-3
        y0       =  yzoomdeg * pi/180. 
@@ -94,5 +94,5 @@
 
        DO i = 0, nmax2 
-        yt(i) = - pis2  + FLOAT(i)* pi /nmax2
+        yt(i) = - pis2  + REAL(i)* pi /nmax2
        ENDDO
 
@@ -210,5 +210,5 @@
        DO 1500 j =  1,jlat
         yo1   = 0.
-        ylon2 =  - pis2 + pisjm * ( FLOAT(j)  + yuv  -1.)  
+        ylon2 =  - pis2 + pisjm * ( REAL(j)  + yuv  -1.)  
         yfi    = ylon2
 c
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/gcm.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/gcm.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/gcm.F	(revision 1299)
@@ -15,4 +15,5 @@
       USE filtreg_mod
       USE infotrac
+      USE control_mod
 
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
@@ -68,5 +69,5 @@
 #include "logic.h"
 #include "temps.h"
-#include "control.h"
+!!!!!!!!!!!#include "control.h"
 #include "ener.h"
 #include "description.h"
@@ -292,5 +293,5 @@
       ENDIF
 
-      zdtvr    = daysec/FLOAT(day_step)
+      zdtvr    = daysec/REAL(day_step)
         IF(dtvr.NE.zdtvr) THEN
          WRITE(lunout,*)
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/grid_atob.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/grid_atob.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/grid_atob.F	(revision 1299)
@@ -1,4 +1,4 @@
 !
-! $Header$
+! $Id$
 !
       SUBROUTINE grille_m(imdep, jmdep, xdata, ydata, entree,
@@ -717,14 +717,14 @@
 c Calculs intermediares:
 c
-      xtmp(1) = -180.0 + 360.0/FLOAT(imtmp) / 2.0
+      xtmp(1) = -180.0 + 360.0/REAL(imtmp) / 2.0
       DO i = 2, imtmp
-         xtmp(i) = xtmp(i-1) + 360.0/FLOAT(imtmp)
+         xtmp(i) = xtmp(i-1) + 360.0/REAL(imtmp)
       ENDDO
       DO i = 1, imtmp
          xtmp(i) = xtmp(i) /180.0 * 4.0*ATAN(1.0)
       ENDDO
-      ytmp(1) = -90.0 + 180.0/FLOAT(jmtmp) / 2.0
+      ytmp(1) = -90.0 + 180.0/REAL(jmtmp) / 2.0
       DO j = 2, jmtmp
-         ytmp(j) = ytmp(j-1) + 180.0/FLOAT(jmtmp)
+         ytmp(j) = ytmp(j-1) + 180.0/REAL(jmtmp)
       ENDDO
       DO j = 1, jmtmp
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/grid_noro.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/grid_noro.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/grid_noro.F	(revision 1299)
@@ -1,4 +1,4 @@
 !
-! $Header$
+! $Id$
 !
 c
@@ -93,5 +93,5 @@
       xpi=acos(-1.)
       rad    = 6 371 229.
-      zdeltay=2.*xpi/float(jusn)*rad
+      zdeltay=2.*xpi/REAL(jusn)*rad
 c
 c utilise-t'on un masque lu?
@@ -215,6 +215,6 @@
 c  SUMMATION OVER GRIDPOINT AREA
 c 
-      zleny=xpi/float(jusn)*rad
-      xincr=xpi/2./float(jusn)
+      zleny=xpi/REAL(jusn)*rad
+      xincr=xpi/2./REAL(jusn)
        DO ii = 1, imar+1
        DO jj = 1, jmar
@@ -468,5 +468,5 @@
       DO IS=-1,1
         DO JS=-1,1
-          WEIGHTpb(IS,JS)=1./FLOAT((1+IS**2)*(1+JS**2))
+          WEIGHTpb(IS,JS)=1./REAL((1+IS**2)*(1+JS**2))
           SUM=SUM+WEIGHTpb(IS,JS)
         ENDDO
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/grilles_gcm_netcdf.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/grilles_gcm_netcdf.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/grilles_gcm_netcdf.F	(revision 1299)
@@ -1,4 +1,4 @@
 !
-! $Header$
+! $Id$
 !
 c
@@ -218,13 +218,13 @@
       open (20,file='grille.dat',form='unformatted',access='direct'
      s      ,recl=4*ip1jmp1)
-      write(20,rec=1) ((float(mod(i,2)+mod(j,2)),i=1,iip1),j=1,jjp1)
-      write(20,rec=2) ((float(mod(i,2)*mod(j,2)),i=1,iip1),j=1,jjp1)
+      write(20,rec=1) ((REAL(mod(i,2)+mod(j,2)),i=1,iip1),j=1,jjp1)
+      write(20,rec=2) ((REAL(mod(i,2)*mod(j,2)),i=1,iip1),j=1,jjp1)
       do j=2,jjm
          dlat1(j)=180.*(rlatv(j)-rlatv(j-1))/pi
-c        dlat2(j)=180.*fyprim(float(j))/pi
+c        dlat2(j)=180.*fyprim(REAL(j))/pi
       enddo
       do i=2,iip1
          dlon1(i)=180.*(rlonu(i)-rlonu(i-1))/pi
-c        dlon2(i)=180.*fxprim(float(i))/pi
+c        dlon2(i)=180.*fxprim(REAL(i))/pi
       enddo
       do j=2,jjm
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/guide_mod.F90
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/guide_mod.F90	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/guide_mod.F90	(revision 1299)
@@ -62,4 +62,6 @@
   SUBROUTINE guide_init
 
+    USE control_mod
+
     IMPLICIT NONE
   
@@ -67,5 +69,4 @@
     INCLUDE "paramet.h"
     INCLUDE "netcdf.inc"
-    INCLUDE "control.h"
 
     INTEGER                :: error,ncidpl,rid,rcod
@@ -269,4 +270,6 @@
 !=======================================================================
   SUBROUTINE guide_main(itau,ucov,vcov,teta,q,masse,ps)
+
+    USE control_mod
  
     IMPLICIT NONE
@@ -274,5 +277,4 @@
     INCLUDE "dimensions.h"
     INCLUDE "paramet.h"
-    INCLUDE "control.h"
     INCLUDE "comconst.h"
     INCLUDE "comvert.h"
@@ -354,7 +356,7 @@
       dday_step=real(day_step)
       IF (iguide_read.LT.0) THEN
-          tau=ditau/dday_step/FLOAT(iguide_read)
+          tau=ditau/dday_step/REAL(iguide_read)
       ELSE
-          tau=FLOAT(iguide_read)*ditau/dday_step
+          tau=REAL(iguide_read)*ditau/dday_step
       ENDIF
       reste=tau-AINT(tau)
@@ -541,5 +543,5 @@
             ENDDO
         ENDDO 
-        fieldm(:,l)=fieldm(:,l)/FLOAT(imax(typ)-imin(typ)+1)
+        fieldm(:,l)=fieldm(:,l)/REAL(imax(typ)-imin(typ)+1)
     ! Compute forcing
         DO j=1,hsize
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/infotrac.F90
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/infotrac.F90	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/infotrac.F90	(revision 1299)
@@ -31,4 +31,7 @@
 
   SUBROUTINE infotrac_init
+
+    USE control_mod
+ 
     IMPLICIT NONE
 !=======================================================================
@@ -49,5 +52,4 @@
 
     INCLUDE "dimensions.h"
-    INCLUDE "control.h"
     INCLUDE "iniprint.h"
 
@@ -217,5 +219,5 @@
           new_iq=new_iq+10 ! 9 tracers added
        ELSE
-          WRITE(lunout,*) 'This choice of advection schema is not available'
+          WRITE(lunout,*) 'This choice of advection schema is not available',iq,hadv(iq),vadv(iq)
           CALL abort_gcm('infotrac_init','Bad choice of advection schema - 1',1)
        END IF
@@ -258,5 +260,5 @@
           iadv(new_iq)=11
        ELSE
-          WRITE(lunout,*)'This choice of advection schema is not available'
+          WRITE(lunout,*)'This choice of advection schema is not available',iq,hadv(iq),vadv(iq)
           CALL abort_gcm('infotrac_init','Bad choice of advection schema - 2',1)
        END IF
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/iniacademic.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/iniacademic.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/iniacademic.F	(revision 1299)
@@ -1,4 +1,4 @@
 !
-! $Header$
+! $Id$
 !
 c
@@ -8,4 +8,6 @@
       USE filtreg_mod
       USE infotrac, ONLY : nqtot
+      USE control_mod
+ 
 
 c%W%    %G%
@@ -44,5 +46,4 @@
 #include "ener.h"
 #include "temps.h"
-#include "control.h"
 #include "iniprint.h"
 
@@ -93,5 +94,5 @@
         g      = 9.8
         daysec = 86400.
-        dtvr    = daysec/FLOAT(day_step)
+        dtvr    = daysec/REAL(day_step)
         zdtvr=dtvr
         kappa  = 0.2857143
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/iniconst.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/iniconst.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/iniconst.F	(revision 1299)
@@ -1,6 +1,8 @@
 !
-! $Header$
+! $Id$
 !
       SUBROUTINE iniconst
+
+      USE control_mod
 
       IMPLICIT NONE
@@ -16,5 +18,4 @@
 #include "comconst.h"
 #include "temps.h"
-#include "control.h"
 #include "comvert.h"
 
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/inidissip.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/inidissip.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/inidissip.F	(revision 1299)
@@ -11,4 +11,6 @@
 c   -------------
 
+      USE control_mod
+
       IMPLICIT NONE
 #include "dimensions.h"
@@ -17,5 +19,4 @@
 #include "comconst.h"
 #include "comvert.h"
-#include "control.h"
 #include "logic.h"
 
@@ -165,5 +166,5 @@
 
 c     IF(.NOT.lstardis) THEN
-         fact    = rad*24./float(jjm)
+         fact    = rad*24./REAL(jjm)
          fact    = fact*fact
          PRINT*,'coef u ', fact/cdivu, 1./cdivu
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/inigeom.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/inigeom.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/inigeom.F	(revision 1299)
@@ -1,4 +1,4 @@
 !
-! $Header$
+! $Id$
 !
 c
@@ -168,15 +168,15 @@
 c
       IF( nitergdiv.NE.2 ) THEN
-        gamdi_gdiv = coefdis/ ( float(nitergdiv) -2. )
+        gamdi_gdiv = coefdis/ ( REAL(nitergdiv) -2. )
       ELSE
         gamdi_gdiv = 0.
       ENDIF
       IF( nitergrot.NE.2 ) THEN
-        gamdi_grot = coefdis/ ( float(nitergrot) -2. )
+        gamdi_grot = coefdis/ ( REAL(nitergrot) -2. )
       ELSE
         gamdi_grot = 0.
       ENDIF
       IF( niterh.NE.2 ) THEN
-        gamdi_h = coefdis/ ( float(niterh) -2. )
+        gamdi_h = coefdis/ ( REAL(niterh) -2. )
       ELSE
         gamdi_h = 0.
@@ -381,6 +381,6 @@
        yprp               = yprimu2(j-1)
        rlatp              = rlatu2 (j-1)
-ccc       yprp             = fyprim( FLOAT(j) - 0.25 )
-ccc       rlatp            = fy    ( FLOAT(j) - 0.25 )
+ccc       yprp             = fyprim( REAL(j) - 0.25 )
+ccc       rlatp            = fy    ( REAL(j) - 0.25 )
 c
       coslatp             = COS( rlatp )
@@ -416,8 +416,8 @@
         rlatm    = rlatu1 (  j  )
         yprm     = yprimu1(  j  )
-cc         rlatp    = fy    ( FLOAT(j) - 0.25 )
-cc         yprp     = fyprim( FLOAT(j) - 0.25 )
-cc         rlatm    = fy    ( FLOAT(j) + 0.25 )
-cc         yprm     = fyprim( FLOAT(j) + 0.25 )
+cc         rlatp    = fy    ( REAL(j) - 0.25 )
+cc         yprp     = fyprim( REAL(j) - 0.25 )
+cc         rlatm    = fy    ( REAL(j) + 0.25 )
+cc         yprm     = fyprim( REAL(j) + 0.25 )
 
          coslatm  = COS( rlatm )
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/integrd.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/integrd.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/integrd.F	(revision 1299)
@@ -5,4 +5,6 @@
      $  (  nq,vcovm1,ucovm1,tetam1,psm1,massem1,
      $     dv,du,dteta,dq,dp,vcov,ucov,teta,q,ps,masse,phis,finvmaold )
+
+      USE control_mod
 
       IMPLICIT NONE
@@ -32,5 +34,4 @@
 #include "temps.h"
 #include "serre.h"
-#include "control.h"
 
 c   Arguments:
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/interp_horiz.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/interp_horiz.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/interp_horiz.F	(revision 1299)
@@ -1,4 +1,4 @@
 c
-c $Header$
+c $Id$
 c
       subroutine interp_horiz (varo,varn,imo,jmo,imn,jmn,lm,
@@ -101,6 +101,6 @@
            end do 
            do ii =1, imn+1
-             varn(ii,1,l) = totn/float(imn+1)
-             varn(ii,jmn+1,l) = tots/float(imn+1)
+             varn(ii,1,l) = totn/REAL(imn+1)
+             varn(ii,jmn+1,l) = tots/REAL(imn+1)
            end do 
        end do
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/interpre.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/interpre.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/interpre.F	(revision 1299)
@@ -1,8 +1,10 @@
 !
-! $Header$
+! $Id$
 !
        subroutine interpre(q,qppm,w,fluxwppm,masse,
      s            apppm,bpppm,massebx,masseby,pbaru,pbarv,
      s            unatppm,vnatppm,psppm)
+
+      USE control_mod
 
        implicit none
@@ -17,5 +19,4 @@
 #include "logic.h"
 #include "temps.h"
-#include "control.h"
 #include "ener.h"
 #include "description.h"
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/juldate.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/juldate.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/juldate.F	(revision 1299)
@@ -1,4 +1,4 @@
 !
-! $Header$
+! $Id$
 !
 	subroutine juldate(ian,imoi,ijou,oh,om,os,tjd,tjdsec)
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/leapfrog.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/leapfrog.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/leapfrog.F	(revision 1299)
@@ -15,4 +15,5 @@
       USE guide_mod, ONLY : guide_main
       USE write_field
+      USE control_mod
       IMPLICIT NONE
 
@@ -56,5 +57,4 @@
 #include "logic.h"
 #include "temps.h"
-#include "control.h"
 #include "ener.h"
 #include "description.h"
@@ -198,5 +198,5 @@
       itau = 0
 c$$$      iday = day_ini+itau/day_step
-c$$$      time = FLOAT(itau-(iday-day_ini)*day_step)/day_step+time_0
+c$$$      time = REAL(itau-(iday-day_ini)*day_step)/day_step+time_0
 c$$$         IF(time.GT.1.) THEN
 c$$$          time = time-1.
@@ -523,5 +523,5 @@
               itau= itau + 1
 c$$$              iday= day_ini+itau/day_step
-c$$$              time= FLOAT(itau-(iday-day_ini)*day_step)/day_step+time_0
+c$$$              time= REAL(itau-(iday-day_ini)*day_step)/day_step+time_0
 c$$$                IF(time.GT.1.) THEN
 c$$$                  time = time-1.
@@ -646,5 +646,5 @@
              itau =  itau + 1
 c$$$             iday = day_ini+itau/day_step
-c$$$             time = FLOAT(itau-(iday-day_ini)*day_step)/day_step+time_0
+c$$$             time = REAL(itau-(iday-day_ini)*day_step)/day_step+time_0
 c$$$
 c$$$                  IF(time.GT.1.) THEN
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/limit_netcdf.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/limit_netcdf.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/limit_netcdf.F	(revision 1299)
@@ -10,4 +10,5 @@
       use phys_state_var_mod , ONLY : pctsrf
       use inter_barxy_m, only: inter_barxy
+      USE control_mod
 
       IMPLICIT none
@@ -29,5 +30,4 @@
 #include "dimensions.h"
 #include "paramet.h"
-#include "control.h"
 #include "logic.h"
 #include "netcdf.inc"
@@ -148,5 +148,5 @@
       kappa  = 0.2857143
       cpp    = 1004.70885
-      dtvr    = daysec/FLOAT(day_step)
+      dtvr    = daysec/REAL(day_step)
       CALL inigeom
 c
@@ -418,5 +418,5 @@
           CALL SPLINE(ax,ay,lmdep,1.e30,1.e30,yder)
           DO k = 1, 360
-            time = FLOAT(k-1)
+            time = REAL(k-1)
             CALL SPLINT(ax,ay,yder,lmdep,time,by)
             champan(i,j,k) = by
@@ -632,5 +632,5 @@
           CALL SPLINE(ax,ay,lmdep,1.e30,1.e30,yder)
           DO k = 1, 360
-            time = FLOAT(k-1)
+            time = REAL(k-1)
             CALL SPLINT(ax,ay,yder,lmdep,time,by)
             champan(i,j,k) = by
@@ -951,5 +951,5 @@
           CALL SPLINE(ax,ay,lmdep,1.e30,1.e30,yder)
           DO k = 1, 360
-            time = FLOAT(k-1)
+            time = REAL(k-1)
             CALL SPLINT(ax,ay,yder,lmdep,time,by)
             champan(i,j,k) = by
@@ -1146,5 +1146,5 @@
           CALL SPLINE(ax,ay,lmdep,1.e30,1.e30,yder)
           DO k = 1, 360
-            time = FLOAT(k-1)
+            time = REAL(k-1)
             CALL SPLINT(ax,ay,yder,lmdep,time,by)
             champan(i,j,k) = by
@@ -1300,5 +1300,5 @@
       ierr = NF_PUT_VARA_DOUBLE (nid,id_RUG,debut,epais,phy_rug(1,k))
 #else
-      ierr = NF_PUT_VAR1_REAL (nid,id_tim,k,FLOAT(k))
+      ierr = NF_PUT_VAR1_REAL (nid,id_tim,k,REAL(k))
       IF (newlmt ) THEN
           ierr = NF_PUT_VARA_REAL (nid,id_FOCE,debut,epais
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/ppm3d.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/ppm3d.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/ppm3d.F	(revision 1299)
@@ -1,4 +1,4 @@
 !
-! $Header$
+! $Id$
 !
 
@@ -345,6 +345,6 @@
 C
       PI = 4. * ATAN(1.)
-      DL = 2.*PI / float(IMR)
-      DP =    PI / float(JMR)
+      DL = 2.*PI / REAL(IMR)
+      DP =    PI / REAL(JMR)
 C
       if(IGD.eq.0) then
@@ -388,5 +388,5 @@
       ZTC  = acos(CR1) * (180./PI)
 C
-      JS0 = float(JMR)*(90.-ZTC)/180. + 2
+      JS0 = REAL(JMR)*(90.-ZTC)/180. + 2
       JS0 = max(JS0, J1+1)
       IML = min(6*JS0/(J1-1)+2, 4*IMR/5)
@@ -628,5 +628,5 @@
 C Contribution from the N-S advection
       do i=1,imr*(j2-j1+1)
-      JT = float(J1) - VA(i,j1)
+      JT = REAL(J1) - VA(i,j1)
       wk1(i,j1,2) = VA(i,j1) * (q(i,jt,k,IC) - q(i,jt+1,k,IC))
       enddo
@@ -949,5 +949,5 @@
       IF(IORD.eq.1 .or. j.eq.j1. or. j.eq.j2) THEN
       DO 1406 i=1,IMR
-      iu = float(i) - uc(i,j)
+      iu = REAL(i) - uc(i,j)
 1406  fx1(i) = qtmp(iu)
       ELSE
@@ -957,5 +957,5 @@
       if(IORD.eq.2 .or. j.le.j1vl .or. j.ge.j2vl) then
       DO 1408 i=1,IMR
-      iu = float(i) - uc(i,j)
+      iu = REAL(i) - uc(i,j)
 1408  fx1(i) = qtmp(iu) + DC(iu)*(sign(1.,uc(i,j))-uc(i,j))
       else
@@ -1111,5 +1111,5 @@
       if(JORD.eq.1) then
       DO 1000 i=1,len
-      JT = float(J1) - VC(i,J1)
+      JT = REAL(J1) - VC(i,J1)
 1000  fx(i,j1) = p(i,JT)
       else
@@ -1123,5 +1123,5 @@
       else
       DO 1200 i=1,len
-      JT = float(J1) - VC(i,J1)
+      JT = REAL(J1) - VC(i,J1)
 1200  fx(i,j1) = p(i,JT) + (sign(1.,VC(i,j1))-VC(i,j1))*DC2(i,JT)
       endif
@@ -1358,5 +1358,5 @@
 	do j=j1-1,j2+1
       do i=1,imr
-      JP = float(j)-VA(i,j)
+      JP = REAL(j)-VA(i,j)
       ady(i,j) = VA(i,j)*(wk(i,jp)-wk(i,jp+1))
       enddo
@@ -1582,5 +1582,5 @@
       JMR = JNP-1
       do 55 j=2,JNP
-        ph5  =  -0.5*PI + (FLOAT(J-1)-0.5)*DP
+        ph5  =  -0.5*PI + (REAL(J-1)-0.5)*DP
 55      cose(j) = cos(ph5)
 C
@@ -1834,5 +1834,5 @@
 C
 c      if(first) then
-      DP = 4.*ATAN(1.)/float(JNP-1)
+      DP = 4.*ATAN(1.)/REAL(JNP-1)
       CAP1 = IMR*(1.-COS((j1-1.5)*DP))/DP
 c      first = .false.
@@ -1889,5 +1889,5 @@
 C Check Poles.
       if(q(1,1).lt.0.) then
-      dq = q(1,1)*cap1/float(IMR)*acosp(j1)
+      dq = q(1,1)*cap1/REAL(IMR)*acosp(j1)
       do i=1,imr
       q(i,1) = 0.
@@ -1898,5 +1898,5 @@
 C
       if(q(1,JNP).lt.0.) then
-      dq = q(1,JNP)*cap1/float(IMR)*acosp(j2)
+      dq = q(1,JNP)*cap1/REAL(IMR)*acosp(j2)
       do i=1,imr
       q(i,JNP) = 0.
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/ran1.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/ran1.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/ran1.F	(revision 1299)
@@ -1,4 +1,4 @@
 !
-! $Header$
+! $Id$
 !
       FUNCTION RAN1(IDUM)
@@ -20,5 +20,5 @@
           IX1=MOD(IA1*IX1+IC1,M1)
           IX2=MOD(IA2*IX2+IC2,M2)
-          R(J)=(FLOAT(IX1)+FLOAT(IX2)*RM2)*RM1
+          R(J)=(REAL(IX1)+REAL(IX2)*RM2)*RM1
 11      CONTINUE
         IDUM=1
@@ -30,5 +30,5 @@
       IF(J.GT.97.OR.J.LT.1)PAUSE
       RAN1=R(J)
-      R(J)=(FLOAT(IX1)+FLOAT(IX2)*RM2)*RM1
+      R(J)=(REAL(IX1)+REAL(IX2)*RM2)*RM1
       RETURN
       END
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/sortvarc.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/sortvarc.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/sortvarc.F	(revision 1299)
@@ -1,4 +1,4 @@
 !
-! $Header$
+! $Id$
 !
       SUBROUTINE sortvarc
@@ -59,5 +59,5 @@
 
        dtvrs1j   = dtvr/daysec
-       rjour     = FLOAT( INT( itau * dtvrs1j ))
+       rjour     = REAL( INT( itau * dtvrs1j ))
        heure     = ( itau*dtvrs1j-rjour ) * 24.
        imjmp1    = iim * jjp1
@@ -129,7 +129,7 @@
       ang   = SSUM(     llm,  angl, 1 )
 
-c      rday = FLOAT(INT ( day_ini + time ))
+c      rday = REAL(INT ( day_ini + time ))
 c
-       rday = FLOAT(INT(time-jD_ref-jH_ref))
+       rday = REAL(INT(time-jD_ref-jH_ref))
       IF(ptot0.eq.0.)  THEN
          PRINT 3500, itau, rday, heure,time
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/sortvarc0.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/sortvarc0.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/sortvarc0.F	(revision 1299)
@@ -1,4 +1,4 @@
 !
-! $Header$
+! $Id$
 !
       SUBROUTINE sortvarc0
@@ -60,5 +60,5 @@
 
        dtvrs1j   = dtvr/daysec
-       rjour     = FLOAT( INT( itau * dtvrs1j ))
+       rjour     = REAL( INT( itau * dtvrs1j ))
        heure     = ( itau*dtvrs1j-rjour ) * 24.
        imjmp1    = iim * jjp1
@@ -130,5 +130,5 @@
       ang0   = SSUM(     llm,  angl, 1 )
 
-      rday = FLOAT(INT (time ))
+      rday = REAL(INT (time ))
 c
       PRINT 3500, itau, rday, heure, time
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/startvar.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/startvar.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/startvar.F	(revision 1299)
@@ -352,5 +352,5 @@
       phis = phis * 9.81
     !
-!      masque(:,:) = FLOAT(tmp_int(:,:))
+!      masque(:,:) = REAL(tmp_int(:,:))
     !
     !  Compute surface roughness
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/tourabs.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/tourabs.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/tourabs.F	(revision 1299)
@@ -57,7 +57,7 @@
         ELSE
          rot( ij,l ) = (vcov(ij+1,l)/cv(ij+1)-vcov(ij,l)/cv(ij))/
-     $                 (2.*pi*RAD*cos(rlatv(j)))*float(iim)
+     $                 (2.*pi*RAD*cos(rlatv(j)))*REAL(iim)
      $                +(ucov(ij+iip1,l)/cu(ij+iip1)-ucov(ij,l)/cu(ij))/
-     $                 (pi*RAD)*(float(jjm)-1.)
+     $                 (pi*RAD)*(REAL(jjm)-1.)
 c
         ENDIF
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/traceurpole.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/traceurpole.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/traceurpole.F	(revision 1299)
@@ -1,6 +1,8 @@
 !
-! $Header$
+! $Id$
 !
           subroutine traceurpole(q,masse)
+
+      USE control_mod
 
           implicit none
@@ -15,5 +17,4 @@
 #include "logic.h"
 #include "temps.h"
-#include "control.h"
 #include "ener.h"
 #include "description.h"
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/ugeostr.F
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/ugeostr.F	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/ugeostr.F	(revision 1299)
@@ -40,5 +40,5 @@
             DO i=1,iim
                u(i,j,l)=fact*(phi(i,j+1,l)-phi(i,j,l))
-               um(j,l)=um(j,l)+u(i,j,l)/float(iim)
+               um(j,l)=um(j,l)+u(i,j,l)/REAL(iim)
             ENDDO
          ENDDO
Index: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/write_paramLMDZ_dyn.h
===================================================================
--- LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/write_paramLMDZ_dyn.h	(revision 1293)
+++ LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/write_paramLMDZ_dyn.h	(revision 1299)
@@ -7,41 +7,41 @@
       itau_w=itau_dyn+itau
 c
-      zx_tmp_2d(1:iip1,1:jjp1)=FLOAT(prt_level) 
+      zx_tmp_2d(1:iip1,1:jjp1)=REAL(prt_level) 
       CALL histwrite(nid_ctesGCM, "prt_level", itau_w,
      .               zx_tmp_2d,iip1*jjp1,ndex2d)
 c
-      zx_tmp_2d(1:iip1,1:jjp1)=FLOAT(dayref)
+      zx_tmp_2d(1:iip1,1:jjp1)=REAL(dayref)
       CALL histwrite(nid_ctesGCM, "dayref", itau_w,
      .               zx_tmp_2d,iip1*jjp1,ndex2d)
 c
-      zx_tmp_2d(1:iip1,1:jjp1)=FLOAT(anneeref)
+      zx_tmp_2d(1:iip1,1:jjp1)=REAL(anneeref)
       CALL histwrite(nid_ctesGCM, "anneeref", itau_w,
      .               zx_tmp_2d,iip1*jjp1,ndex2d)
 c
-      zx_tmp_2d(1:iip1,1:jjp1)=FLOAT(raz_date)
+      zx_tmp_2d(1:iip1,1:jjp1)=REAL(raz_date)
       CALL histwrite(nid_ctesGCM, "raz_date", itau_w,
      .               zx_tmp_2d,iip1*jjp1,ndex2d)
 c
-      zx_tmp_2d(1:iip1,1:jjp1)=FLOAT(nday)
+      zx_tmp_2d(1:iip1,1:jjp1)=REAL(nday)
       CALL histwrite(nid_ctesGCM, "nday", itau_w,
      .               zx_tmp_2d,iip1*jjp1,ndex2d)
 c
-      zx_tmp_2d(1:iip1,1:jjp1)=FLOAT(day_step)
+      zx_tmp_2d(1:iip1,1:jjp1)=REAL(day_step)
       CALL histwrite(nid_ctesGCM, "day_step", itau_w,
      .               zx_tmp_2d,iip1*jjp1,ndex2d)
 c
-      zx_tmp_2d(1:iip1,1:jjp1)=FLOAT(iperiod)
+      zx_tmp_2d(1:iip1,1:jjp1)=REAL(iperiod)
       CALL histwrite(nid_ctesGCM, "iperiod", itau_w,
      .               zx_tmp_2d,iip1*jjp1,ndex2d)
 c
-      zx_tmp_2d(1:iip1,1:jjp1)=FLOAT(iapp_tracvl)
+      zx_tmp_2d(1:iip1,1:jjp1)=REAL(iapp_tracvl)
       CALL histwrite(nid_ctesGCM, "iapp_tracvl", itau_w,
      .               zx_tmp_2d,iip1*jjp1,ndex2d)
 c
-      zx_tmp_2d(1:iip1,1:jjp1)=FLOAT(iconser)
+      zx_tmp_2d(1:iip1,1:jjp1)=REAL(iconser)
       CALL histwrite(nid_ctesGCM, "iconser", itau_w,
      .               zx_tmp_2d,iip1*jjp1,ndex2d)
 c
-      zx_tmp_2d(1:iip1,1:jjp1)=FLOAT(iecri)
+      zx_tmp_2d(1:iip1,1:jjp1)=REAL(iecri)
       CALL histwrite(nid_ctesGCM, "iecri", itau_w,
      .               zx_tmp_2d,iip1*jjp1,ndex2d)
@@ -51,5 +51,5 @@
      .               zx_tmp_2d,iip1*jjp1,ndex2d)
 c
-      zx_tmp_2d(1:iip1,1:jjp1)=FLOAT(idissip)
+      zx_tmp_2d(1:iip1,1:jjp1)=REAL(idissip)
       CALL histwrite(nid_ctesGCM, "idissip", itau_w,
      .               zx_tmp_2d,iip1*jjp1,ndex2d)
@@ -63,13 +63,13 @@
      .               zx_tmp_2d,iip1*jjp1,ndex2d)
 c
-      zx_tmp_2d(1:iip1,1:jjp1)=FLOAT(nitergdiv)
+      zx_tmp_2d(1:iip1,1:jjp1)=REAL(nitergdiv)
       CALL histwrite(nid_ctesGCM, "nitergdiv", itau_w,
      .               zx_tmp_2d,iip1*jjp1,ndex2d)
 c
-      zx_tmp_2d(1:iip1,1:jjp1)=FLOAT(nitergrot)
+      zx_tmp_2d(1:iip1,1:jjp1)=REAL(nitergrot)
       CALL histwrite(nid_ctesGCM, "nitergrot", itau_w,
      .               zx_tmp_2d,iip1*jjp1,ndex2d)
 c
-      zx_tmp_2d(1:iip1,1:jjp1)=FLOAT(niterh) 
+      zx_tmp_2d(1:iip1,1:jjp1)=REAL(niterh) 
       CALL histwrite(nid_ctesGCM, "niterh", itau_w,
      .               zx_tmp_2d,iip1*jjp1,ndex2d)
@@ -118,9 +118,9 @@
      .               zx_tmp_2d,iip1*jjp1,ndex2d)
 c
-      zx_tmp_2d(1:iip1,1:jjp1)=FLOAT(iflag_phys)
+      zx_tmp_2d(1:iip1,1:jjp1)=REAL(iflag_phys)
       CALL histwrite(nid_ctesGCM, "iflag_phys", itau_w,
      .               zx_tmp_2d,iip1*jjp1,ndex2d)
 c
-      zx_tmp_2d(1:iip1,1:jjp1)=FLOAT(iphysiq)
+      zx_tmp_2d(1:iip1,1:jjp1)=REAL(iphysiq)
       CALL histwrite(nid_ctesGCM, "iphysiq", itau_w,
      .               zx_tmp_2d,iip1*jjp1,ndex2d)
