Index: LMDZ6/trunk/libf/phylmd/cv3_buoy.f90
===================================================================
--- LMDZ6/trunk/libf/phylmd/cv3_buoy.f90	(revision 5690)
+++ LMDZ6/trunk/libf/phylmd/cv3_buoy.f90	(revision 5692)
@@ -1,2 +1,9 @@
+MODULE cv3_buoy_mod
+  PRIVATE
+
+  PUBLIC cv3_buoy
+
+CONTAINS
+
 SUBROUTINE cv3_buoy(nloc, ncum, nd, icb, inb, pbase, plcl, p, ph, ale, cin, &
     tv, tvp, buoy)
@@ -153,2 +160,4 @@
   RETURN
 END SUBROUTINE cv3_buoy
+
+END MODULE cv3_buoy_mod
Index: LMDZ6/trunk/libf/phylmd/cv3_cine.f90
===================================================================
--- LMDZ6/trunk/libf/phylmd/cv3_cine.f90	(revision 5690)
+++ LMDZ6/trunk/libf/phylmd/cv3_cine.f90	(revision 5692)
@@ -1,4 +1,10 @@
 
 ! $Id$
+MODULE cv3_cine_mod
+  PRIVATE
+  
+  PUBLIC cv3_cine
+  
+CONTAINS
 
 SUBROUTINE cv3_cine(nloc, ncum, nd, icb, inb, pbase, plcl, p, ph, tv, tvp, &
@@ -461,2 +467,4 @@
   RETURN
 END SUBROUTINE cv3_cine
+
+END MODULE cv3_cine_mod
Index: LMDZ6/trunk/libf/phylmd/cv3_enthalpmix.f90
===================================================================
--- LMDZ6/trunk/libf/phylmd/cv3_enthalpmix.f90	(revision 5690)
+++ LMDZ6/trunk/libf/phylmd/cv3_enthalpmix.f90	(revision 5692)
@@ -1,2 +1,9 @@
+MODULE cv3_enthalpmix_mod
+  PRIVATE
+
+  PUBLIC cv3_enthalpmix
+
+CONTAINS
+
 SUBROUTINE cv3_enthalpmix(len, nd, iflag, plim1, plim2, p, ph, &
                        t, q, u, v, w, &
@@ -214,2 +221,3 @@
 END SUBROUTINE cv3_enthalpmix
 
+END MODULE cv3_enthalpmix_mod
Index: LMDZ6/trunk/libf/phylmd/cv3_estatmix.f90
===================================================================
--- LMDZ6/trunk/libf/phylmd/cv3_estatmix.f90	(revision 5690)
+++ LMDZ6/trunk/libf/phylmd/cv3_estatmix.f90	(revision 5692)
@@ -1,2 +1,9 @@
+MODULE cv3_estatmix_mod
+  PRIVATE
+
+  PUBLIC cv3_estatmix
+
+CONTAINS
+
 SUBROUTINE cv3_estatmix(len, nd, iflag, plim1, plim2, p, ph, &
                        t, q, u, v, h, gz, w, &
@@ -197,2 +204,3 @@
 END SUBROUTINE cv3_estatmix
 
+END MODULE cv3_estatmix_mod
Index: LMDZ6/trunk/libf/phylmd/cv3_mixscale.f90
===================================================================
--- LMDZ6/trunk/libf/phylmd/cv3_mixscale.f90	(revision 5690)
+++ LMDZ6/trunk/libf/phylmd/cv3_mixscale.f90	(revision 5692)
@@ -1,2 +1,9 @@
+MODULE cv3_mixscale_mod
+  PRIVATE
+
+  PUBLIC cv3_mixscale
+
+CONTAINS
+
 SUBROUTINE cv3_mixscale(nloc, ncum, na, ment, m)
   ! **************************************************************
@@ -33,2 +40,4 @@
   RETURN
 END SUBROUTINE cv3_mixscale
+
+END MODULE cv3_mixscale_mod
Index: LMDZ6/trunk/libf/phylmd/cv3_routines.f90
===================================================================
--- LMDZ6/trunk/libf/phylmd/cv3_routines.f90	(revision 5690)
+++ LMDZ6/trunk/libf/phylmd/cv3_routines.f90	(revision 5692)
@@ -1,4 +1,11 @@
 
 ! $Id$
+MODULE cv3_routines_mod
+  PRIVATE
+
+  PUBLIC cv3_param, cv3_incrcount, cv3_prelim, cv3_feed, cv3_undilute1, cv3_trigger, cv3_compress, &
+         icefrac, cv3_undilute2, cv3_closure, cv3_mixing, cv3_unsat, cv3_yield, cv3_tracer, cv3_uncompress,&
+         cv3_epmax_fn_cape
+CONTAINS
 
 
@@ -5313,4 +5320,4 @@
       end subroutine cv3_epmax_fn_cape
 
-
-
+END MODULE cv3_routines_mod
+
Index: LMDZ6/trunk/libf/phylmd/cv3a_compress.f90
===================================================================
--- LMDZ6/trunk/libf/phylmd/cv3a_compress.f90	(revision 5690)
+++ LMDZ6/trunk/libf/phylmd/cv3a_compress.f90	(revision 5692)
@@ -1,2 +1,6 @@
+MODULE cv3a_compress_mod
+
+CONTAINS
+
 SUBROUTINE cv3a_compress(len, nloc, ncum, nd, ntra, compress, &
                          iflag1, nk1, icb1, icbs1, &
@@ -248,2 +252,4 @@
   RETURN
 END SUBROUTINE cv3a_compress
+
+END MODULE cv3a_compress_mod
Index: LMDZ6/trunk/libf/phylmd/cv3a_uncompress.f90
===================================================================
--- LMDZ6/trunk/libf/phylmd/cv3a_uncompress.f90	(revision 5690)
+++ LMDZ6/trunk/libf/phylmd/cv3a_uncompress.f90	(revision 5692)
@@ -1,4 +1,9 @@
 ! $Id$
-
+MODULE cv3a_uncompress_mod
+  PRIVATE
+
+  PUBLIC cv3a_uncompress
+
+CONTAINS
 SUBROUTINE cv3a_uncompress(nloc, len, ncum, nd, ntra, idcum, compress, &
                            iflag, kbas, ktop, &
@@ -348,2 +353,3 @@
 END SUBROUTINE cv3a_uncompress
 
+END MODULE cv3a_uncompress_mod
Index: LMDZ6/trunk/libf/phylmd/cv3p1_closure.f90
===================================================================
--- LMDZ6/trunk/libf/phylmd/cv3p1_closure.f90	(revision 5690)
+++ LMDZ6/trunk/libf/phylmd/cv3p1_closure.f90	(revision 5692)
@@ -1,4 +1,8 @@
 
 ! $Id$
+MODULE cv3p1_closure_mod
+PRIVATE
+PUBLIC cv3p1_closure
+CONTAINS
 
 SUBROUTINE cv3p1_closure(nloc, ncum, nd, icb, inb, pbase, plcl, p, ph, tv, &
@@ -24,4 +28,6 @@
   USE print_control_mod, ONLY: prt_level, lunout
   USE yomcst_mod_h
+  USE cv3_cine_mod, ONLY : cv3_cine
+  USE cv3_buoy_mod, ONLY : cv3_buoy
 IMPLICIT NONE
 
@@ -772,3 +778,4 @@
 END SUBROUTINE cv3p1_closure
 
-
+END MODULE cv3p1_closure_mod
+
Index: LMDZ6/trunk/libf/phylmd/cv3p2_closure.f90
===================================================================
--- LMDZ6/trunk/libf/phylmd/cv3p2_closure.f90	(revision 5690)
+++ LMDZ6/trunk/libf/phylmd/cv3p2_closure.f90	(revision 5692)
@@ -1,3 +1,8 @@
-
+MODULE cv3p2_closure_mod
+  PRIVATE
+
+  PUBLIC cv3p2_closure
+  
+CONTAINS  
 
 SUBROUTINE cv3p2_closure(nloc, ncum, nd, icb, inb, pbase, plcl, p, ph, tv, &
@@ -24,4 +29,6 @@
   USE print_control_mod, ONLY: prt_level, lunout
   USE yomcst_mod_h
+  USE cv3_cine_mod, ONLY : cv3_cine
+  USE cv3_buoy_mod, ONLY : cv3_buoy
 IMPLICIT NONE
 
@@ -867,3 +874,4 @@
 END SUBROUTINE cv3p2_closure
 
-
+END MODULE cv3p2_closure_mod
+
Index: LMDZ6/trunk/libf/phylmd/cv3p_mixing.f90
===================================================================
--- LMDZ6/trunk/libf/phylmd/cv3p_mixing.f90	(revision 5690)
+++ LMDZ6/trunk/libf/phylmd/cv3p_mixing.f90	(revision 5692)
@@ -1,2 +1,8 @@
+MODULE cv3p_mixing_mod
+  PRIVATE
+  PUBLIC cv3p_mixing
+CONTAINS
+
+
 SUBROUTINE cv3p_mixing(nloc, ncum, nd, na, ntra, icb, nk, inb, &
                        ph, t, rr, rs, u, v, tra, h, lv, lf, frac, qta, &
@@ -699,2 +705,3 @@
 END SUBROUTINE cv3p_mixing
 
+END MODULE cv3p_mixing_mod
Index: LMDZ6/trunk/libf/phylmd/cv_driver.F90
===================================================================
--- LMDZ6/trunk/libf/phylmd/cv_driver.F90	(revision 5690)
+++ LMDZ6/trunk/libf/phylmd/cv_driver.F90	(revision 5692)
@@ -14,4 +14,5 @@
   USE cv30_routines_mod, ONLY: cv30_param, cv30_prelim, cv30_feed, cv30_undilute1, cv30_trigger, cv30_compress, cv30_undilute2, &
           cv30_closure, cv30_epmax_fn_cape, cv30_mixing, cv30_unsat, cv30_yield, cv30_tracer, cv30_uncompress
+  USE cv_routines_mod
   IMPLICIT NONE
 
Index: LMDZ6/trunk/libf/phylmd/cv_routines.f90
===================================================================
--- LMDZ6/trunk/libf/phylmd/cv_routines.f90	(revision 5690)
+++ LMDZ6/trunk/libf/phylmd/cv_routines.f90	(revision 5692)
@@ -1,4 +1,11 @@
 
 ! $Id$
+MODULE cv_routines_mod
+PRIVATE
+
+PUBLIC cv_param, cv_prelim, cv_feed, cv_undilute1, cv_trigger, cv_compress, cv_undilute2, &
+       cv_closure, cv_mixing, cv_yield, cv_unsat, cv_uncompress
+
+CONTAINS
 
 SUBROUTINE cv_param(nd)
@@ -1708,2 +1715,3 @@
 END SUBROUTINE cv_uncompress
 
+END MODULE cv_routines_mod
Index: LMDZ6/trunk/libf/phylmd/cva_driver.f90
===================================================================
--- LMDZ6/trunk/libf/phylmd/cva_driver.f90	(revision 5690)
+++ LMDZ6/trunk/libf/phylmd/cva_driver.f90	(revision 5692)
@@ -1,4 +1,11 @@
 
 ! $Id$
+
+MODULE cva_driver_mod
+  PRIVATE
+
+  PUBLIC cva_driver_pre, cva_driver_post, cva_driver
+
+CONTAINS
 
 SUBROUTINE cva_driver(len, nd, ndp1, ntra, nloc, k_upper, &
@@ -42,4 +49,14 @@
   USE print_control_mod, ONLY: prt_level, lunout
   USE add_phys_tend_mod, ONLY: fl_cor_ebil
+  USE cv3_routines_mod
+  USE cv_routines_mod
+  USE cv3a_compress_mod, ONLY : cv3a_compress
+  USE cv3p_mixing_mod, ONLY   : cv3p_mixing
+  USE cv3p1_closure_mod, ONLY : cv3p1_closure
+  USE cv3p2_closure_mod, ONLY : cv3p2_closure
+  USE cv3_mixscale_mod, ONLY : cv3_mixscale
+  USE cv3a_uncompress_mod, ONLY : cv3a_uncompress
+  USE cv3_enthalpmix_mod, ONLY : cv3_enthalpmix
+  USE cv3_estatmix_mod, ONLY : cv3_estatmix
   IMPLICIT NONE
 
@@ -1291,2 +1308,4 @@
   RETURN
 END SUBROUTINE cva_driver
+
+END MODULE cva_driver_mod
