Index: dynamico_lmdz/simple_physics/phyparam/param/iniphyparam.F
===================================================================
--- dynamico_lmdz/simple_physics/phyparam/param/iniphyparam.F	(revision 4188)
+++ dynamico_lmdz/simple_physics/phyparam/param/iniphyparam.F	(revision 4189)
@@ -11,7 +11,8 @@
       use comsaison
       USE geometry_mod, ONLY : longitude,latitude,cell_area
-      USE phys_const
-      USE planet
-
+      USE phys_const, ONLY : pi,rad,g,r,cpp,rcp,dtphys,unjours,mugaz
+      USE planet, ONLY : coefir, coefvis
+      USE planet, ONLY : aphelie, periheli, peri_day, obliquit, year_day
+      USE vdif_mod, ONLY : lmixmin, emin_turb 
       IMPLICIT NONE
 
Index: dynamico_lmdz/simple_physics/phyparam/param/paramdef.F
===================================================================
--- dynamico_lmdz/simple_physics/phyparam/param/paramdef.F	(revision 4188)
+++ dynamico_lmdz/simple_physics/phyparam/param/paramdef.F	(revision 4189)
@@ -1,5 +1,7 @@
       SUBROUTINE paramdef(ngrid,rnatur,albedo,inertie,emissiv,z0)
-      USE  comgeomfi, ONLY : lati,sinlat,coslat
-      USE planet
+      USE comgeomfi, ONLY : lati,sinlat,coslat
+      USE vdif_mod, ONLY : lmixmin, emin_turb
+      USE planet, ONLY : coefir, coefvis
+      USE planet, ONLY : aphelie, periheli, obliquit, peri_day, year_day
       IMPLICIT NONE
 c-----------------------------------------------------------------------
Index: dynamico_lmdz/simple_physics/phyparam/physics/planet.F90
===================================================================
--- dynamico_lmdz/simple_physics/phyparam/physics/planet.F90	(revision 4188)
+++ dynamico_lmdz/simple_physics/phyparam/physics/planet.F90	(revision 4189)
@@ -4,6 +4,5 @@
 
   REAL :: aphelie, periheli, year_day, peri_day, obliquit, &
-       coefvis, coefir, &
-       lmixmin=100., emin_turb=1e-8
+       coefvis, coefir
   
 END MODULE planet
Index: dynamico_lmdz/simple_physics/phyparam/physics/vdif_mod.F90
===================================================================
--- dynamico_lmdz/simple_physics/phyparam/physics/vdif_mod.F90	(revision 4188)
+++ dynamico_lmdz/simple_physics/phyparam/physics/vdif_mod.F90	(revision 4189)
@@ -5,10 +5,11 @@
   
   REAL, PARAMETER :: karman=0.4
-  
-  PUBLIC :: vdif
+  REAL :: lmixmin=100., emin_turb=1e-8  
+
+  PUBLIC :: vdif, lmixmin, emin_turb
   
 CONTAINS
   
-  SUBROUTINE vdif_cd( ngrid,pz0,pg,pz,pu,pv,pts,ph,pcdv,pcdh)
+  PURE SUBROUTINE vdif_cd( ngrid,pz0,pg,pz,pu,pv,pts,ph,pcdv,pcdh)
     !=======================================================================
     !
@@ -25,4 +26,5 @@
     !   ------
     !     ngrid            size of the horizontal grid
+    !     pz0(ngrid)       roughness length ?
     !     pg               gravity (m s -2)
     !     pz(ngrid)        height of the first atmospheric layer
@@ -46,10 +48,8 @@
     !   ----------
     
-    INTEGER ngrid,nlay
-    REAL pz0(ngrid)
-    REAL pg,pz(ngrid)
-    REAL pu(ngrid),pv(ngrid)
-    REAL pts(ngrid),ph(ngrid)
-    REAL pcdv(ngrid),pcdh(ngrid)
+    INTEGER, INTENT(IN) ::  ngrid
+    REAL, INTENT(IN)  ::  pg, pz0(ngrid), pz(ngrid), &
+         pu(ngrid),pv(ngrid), pts(ngrid),ph(ngrid)
+    REAL, INTENT(OUT) :: pcdv(ngrid),pcdh(ngrid)
     
     !   Local:
@@ -58,9 +58,6 @@
     REAL, PARAMETER :: b=5., c=5., d=5., umin2=1e-12, &
          c2b=2.*b, c3bc=3.*b*c, c3b=3.*b
-  
     INTEGER ig
-    
-    REAL zu2,z1,zri,zcd0,zz
-    
+    REAL zu2,z1,zri,zcd0,zz    
     
     !-----------------------------------------------------------------------
@@ -98,21 +95,17 @@
   END SUBROUTINE vdif_cd
   
-  
-  SUBROUTINE vdif_k(ngrid,nlay,   &
-       ptimestep,pg,pzlev,pzlay,pz0,pu,pv,ph,pcdv,pkv,pkh)
+  PURE SUBROUTINE vdif_k(ngrid,nlay,   &
+       ptimestep,pg,pzlev,pzlay,pz0,pu,pv,ph,pkv,pkh)
     ! FIXME : pkh := pkv
     USE planet
-    INTEGER ngrid,nlay
-    REAL ptimestep
-    REAL pzlay(ngrid,nlay),pzlev(ngrid,nlay+1)
-    REAL pz0(ngrid)
-    REAL pu(ngrid,nlay),pv(ngrid,nlay),ph(ngrid,nlay)
-    REAL pg,pcdv(ngrid)
-    REAL pkv(ngrid,nlay+1),pkh(ngrid,nlay+1)
+    INTEGER, INTENT(IN) :: ngrid,nlay
+    REAL, INTENT(IN) ::  ptimestep, pg, &
+         pzlay(ngrid,nlay),pzlev(ngrid,nlay+1), pz0(ngrid), &
+         pu(ngrid,nlay),pv(ngrid,nlay),ph(ngrid,nlay)
+    REAL, INTENT(OUT) :: pkv(ngrid,nlay+1),pkh(ngrid,nlay+1)
     
     INTEGER ig,il
     REAL zdu,zdv,zri,zdvodz2,zdz,z1,lmix
     
-    print*,'LMIXMIN',lmixmin
     DO ig=1,ngrid
        pkv(ig,1)=0.
@@ -285,5 +278,5 @@
     !
     CALL vdif_cd( ngrid,pz0,g,pzlay,pu,pv,ptsrf,ph,zcdv,zcdh)
-    CALL vdif_k(ngrid,nlay,ptimestep,g,pzlev,pzlay,pz0,pu,pv,ph,zcdv,zkv,zkh)
+    CALL vdif_k(ngrid,nlay,ptimestep,g,pzlev,pzlay,pz0,pu,pv,ph,zkv,zkh)
     
     DO ig=1,ngrid
@@ -296,4 +289,5 @@
        PRINT*
        PRINT*,'Diagnostique diffusion verticale'
+       print*,'LMIXMIN',lmixmin
        PRINT*,'coefficients Cd pour v et h'
        PRINT*,zcdv(ngrid/2+1),zcdh(ngrid/2+1)
