diff --git a/src/common/micro/ini_lima_cold_mixed.F90 b/src/common/micro/ini_lima_cold_mixed.F90
index 12fca326bcaa6f7a708376d180894b31f96662d0..a493f28ee15f1ebe1c524b650e40667a87cb05b7 100644
--- a/src/common/micro/ini_lima_cold_mixed.F90
+++ b/src/common/micro/ini_lima_cold_mixed.F90
@@ -61,20 +61,20 @@ USE MODD_REF
 !
 use mode_msg
 !
-USE MODI_LIMA_FUNCTIONS
+USE MODE_LIMA_FUNCTIONS, ONLY: MOMG, GAUHER
 USE MODI_GAMMA
 USE MODI_GAMMA_INC
 USE MODE_RRCOLSS, ONLY: RRCOLSS
 USE MODE_RZCOLX, ONLY: RZCOLX
 USE MODE_RSCOLRG, ONLY: RSCOLRG
-USE MODI_NRCOLSS
-USE MODI_NZCOLX
-USE MODI_NSCOLRG
-USE MODI_LIMA_READ_XKER_RACCS
-USE MODI_LIMA_READ_XKER_SDRYG
-USE MODI_LIMA_READ_XKER_RDRYG
-USE MODI_LIMA_READ_XKER_SWETH
-USE MODI_LIMA_READ_XKER_GWETH
+USE MODE_NRCOLSS, ONLY: NRCOLSS
+USE MODE_NZCOLX, ONLY: NZCOLX 
+USE MODE_NSCOLRG, ONLY: NSCOLRG
+USE MODI_LIMA_READ_XKER_RACCS, ONLY: LIMA_READ_XKER_RACCS
+USE MODI_LIMA_READ_XKER_SDRYG, ONLY: LIMA_READ_XKER_SDRYG
+USE MODI_LIMA_READ_XKER_RDRYG, ONLY: LIMA_READ_XKER_RDRYG
+USE MODI_LIMA_READ_XKER_SWETH, ONLY: LIMA_READ_XKER_SWETH
+USE MODI_LIMA_READ_XKER_GWETH, ONLY: LIMA_READ_XKER_GWETH
 !
 IMPLICIT NONE
 !
diff --git a/src/common/micro/ini_lima_warm.F90 b/src/common/micro/ini_lima_warm.F90
index c1485757f397c113484257f6849c349f240f709c..8ae14ed0fe38348f4a761530db6ec43c75b2238d 100644
--- a/src/common/micro/ini_lima_warm.F90
+++ b/src/common/micro/ini_lima_warm.F90
@@ -52,7 +52,7 @@ USE MODD_PARAM_LIMA_WARM
 USE MODD_PARAMETERS
 !USE MODD_LUNIT, ONLY : TLUOUT0
 !
-USE MODI_LIMA_FUNCTIONS
+USE MODE_LIMA_FUNCTIONS, ONLY: MOMG
 USE MODI_HYPGEO
 USE MODI_GAMMA
 !
diff --git a/src/common/micro/init_aerosol_properties.F90 b/src/common/micro/init_aerosol_properties.F90
index e1a7916408b799fa8d5eed03ce2698fb3ba9c37d..ecd30df7f7498c011657b3af21a40a14cc675103 100644
--- a/src/common/micro/init_aerosol_properties.F90
+++ b/src/common/micro/init_aerosol_properties.F90
@@ -58,7 +58,7 @@ USE MODD_PARAM_LIMA,      ONLY : NMOD_CCN, HINI_CCN, HTYPE_CCN,        &
 use mode_msg
 !
 USE MODI_GAMMA
-USE MODI_LIMA_INIT_CCN_ACTIVATION_SPECTRUM
+USE MODE_LIMA_INIT_CCN_ACTIVATION_SPECTRUM, ONLY: LIMA_INIT_CCN_ACTIVATION_SPECTRUM
 !
 IMPLICIT NONE
 !
diff --git a/src/common/micro/lima.F90 b/src/common/micro/lima.F90
index c832735a6bf29b8c1db76f9f6d040eb99616e874..c1d23e04f783deee4db97f278f061b20237e6838 100644
--- a/src/common/micro/lima.F90
+++ b/src/common/micro/lima.F90
@@ -3,86 +3,17 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!      ######spl
-MODULE MODI_LIMA
-!      ####################
-!
-INTERFACE
-!
-   SUBROUTINE LIMA ( D, CST, BUCONF, TBUDGETS, KBUDGETS,                     &
-                     PTSTEP,                                                 &
-                     PRHODREF, PEXNREF, PDZZ,                                &
-                     PRHODJ, PPABST,                                         &
-                     NCCN, NIFN, NIMM,                                       &
-                     PDTHRAD, PTHT, PRT, PSVT, PW_NU,                        &
-                     PTHS, PRS, PSVS,                                        &
-                     PINPRC, PINDEP, PINPRR, PINPRI, PINPRS, PINPRG, PINPRH, &
-                     PEVAP3D, PCLDFR, PICEFR, PPRCFR, PFPR                   )
-!
-USE MODD_IO,  ONLY: TFILEDATA
-USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t
-USE MODD_BUDGET,   ONLY: TBUDGETDATA, TBUDGETCONF_t
-USE MODD_CST,            ONLY: CST_t
-!
-TYPE(DIMPHYEX_t),         INTENT(IN)    :: D
-TYPE(CST_t),              INTENT(IN)    :: CST
-TYPE(TBUDGETCONF_t),      INTENT(IN)    :: BUCONF
-TYPE(TBUDGETDATA), DIMENSION(KBUDGETS), INTENT(INOUT) :: TBUDGETS
-INTEGER, INTENT(IN) :: KBUDGETS
-!
-REAL,                     INTENT(IN)    :: PTSTEP     ! Time step
-!
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRHODREF   ! Reference density
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PEXNREF    ! Reference Exner function
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PDZZ       ! Layer thikness (m)
-!
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRHODJ     ! Dry density * Jacobian
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PPABST     ! absolute pressure at t
-!
-INTEGER,                  INTENT(IN)    :: NCCN       ! for array size declarations
-INTEGER,                  INTENT(IN)    :: NIFN       ! for array size declarations
-INTEGER,                  INTENT(IN)    :: NIMM       ! for array size declarations
-!
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PDTHRAD    ! dT/dt due to radiation
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PTHT       ! Theta at time t
-REAL, DIMENSION(:,:,:,:), INTENT(IN)    :: PRT        ! Mixing ratios at time t
-REAL, DIMENSION(:,:,:,:), INTENT(IN)    :: PSVT       ! Concentrations at time t
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PW_NU      ! w for CCN activation
-!
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PTHS       ! Theta source
-REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PRS        ! Mixing ratios sources
-REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSVS       ! Concentration sources
-!
-REAL, DIMENSION(:,:),     INTENT(OUT)   :: PINPRC     ! Cloud instant precip
-REAL, DIMENSION(:,:),     INTENT(OUT)   :: PINDEP     ! Cloud droplets deposition
-REAL, DIMENSION(:,:),     INTENT(OUT)   :: PINPRR     ! Rain instant precip
-REAL, DIMENSION(:,:),     INTENT(OUT)   :: PINPRI     ! Rain instant precip
-REAL, DIMENSION(:,:),     INTENT(OUT)   :: PINPRS     ! Snow instant precip
-REAL, DIMENSION(:,:),     INTENT(OUT)   :: PINPRG     ! Graupel instant precip
-REAL, DIMENSION(:,:),     INTENT(OUT)   :: PINPRH     ! Rain instant precip
-REAL, DIMENSION(:,:,:),   INTENT(OUT)   :: PEVAP3D    ! Rain evap profile
-!
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PCLDFR     ! Cloud fraction
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PICEFR     ! Cloud fraction
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PPRCFR     ! Cloud fraction
-REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PFPR       ! Precipitation fluxes in altitude
-!
-END SUBROUTINE LIMA
-END INTERFACE
-END MODULE MODI_LIMA
-!
-!
-!     ######spl
-      SUBROUTINE LIMA ( D, CST, BUCONF, TBUDGETS, KBUDGETS,                     &
-                        PTSTEP,                                                 &
-                        PRHODREF, PEXNREF, PDZZ,                                &
-                        PRHODJ, PPABST,                                         &
-                        NCCN, NIFN, NIMM,                                       &
-                        PDTHRAD, PTHT, PRT, PSVT, PW_NU,                        &
-                        PTHS, PRS, PSVS,                                        &
-                        PINPRC, PINDEP, PINPRR, PINPRI, PINPRS, PINPRG, PINPRH, &
-                        PEVAP3D, PCLDFR, PICEFR, PPRCFR, PFPR                   )
-!     ######################################################################
+!     #####################################################################
+SUBROUTINE LIMA ( D, CST, BUCONF, TBUDGETS, KBUDGETS,                     &
+                  PTSTEP,                                                 &
+                  PRHODREF, PEXNREF, PDZZ,                                &
+                  PRHODJ, PPABST,                                         &
+                  NCCN, NIFN, NIMM,                                       &
+                  PDTHRAD, PTHT, PRT, PSVT, PW_NU,                        &
+                  PTHS, PRS, PSVS,                                        &
+                  PINPRC, PINDEP, PINPRR, PINPRI, PINPRS, PINPRG, PINPRH, &
+                  PEVAP3D, PCLDFR, PICEFR, PPRCFR, PFPR                   )
+!     #####################################################################
 !
 !!    PURPOSE
 !!    -------
@@ -134,12 +65,12 @@ USE MODD_PARAM_LIMA_WARM, ONLY: XLBC, XLBEXC, XAC, XBC, XAR, XBR
 use mode_budget,          only: BUDGET_STORE_ADD_PHY, BUDGET_STORE_INIT_PHY, BUDGET_STORE_END_PHY
 use mode_tools,           only: Countjv
 
-USE MODI_LIMA_COMPUTE_CLOUD_FRACTIONS
-USE MODI_LIMA_DROPS_TO_DROPLETS_CONV
-USE MODI_LIMA_INST_PROCS
-USE MODI_LIMA_NUCLEATION_PROCS
-USE MODI_LIMA_SEDIMENTATION
-USE MODI_LIMA_TENDENCIES
+USE MODE_LIMA_COMPUTE_CLOUD_FRACTIONS, ONLY: LIMA_COMPUTE_CLOUD_FRACTIONS
+USE MODE_LIMA_DROPS_TO_DROPLETS_CONV, ONLY: LIMA_DROPS_TO_DROPLETS_CONV
+USE MODE_LIMA_INST_PROCS, ONLY: LIMA_INST_PROCS
+USE MODE_LIMA_NUCLEATION_PROCS, ONLY: LIMA_NUCLEATION_PROCS
+USE MODE_LIMA_SEDIMENTATION, ONLY: LIMA_SEDIMENTATION
+USE MODE_LIMA_TENDENCIES, ONLY: LIMA_TENDENCIES
 !
 IMPLICIT NONE
 !
diff --git a/src/common/micro/lima_adjust_split.F90 b/src/common/micro/lima_adjust_split.F90
index e4d3ce84b52cfc42370c6b5b18ad619b9a4550d2..0b59012332465225b9908870b0f22b152d05f5e2 100644
--- a/src/common/micro/lima_adjust_split.F90
+++ b/src/common/micro/lima_adjust_split.F90
@@ -3,80 +3,6 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!     #############################
-      MODULE MODI_LIMA_ADJUST_SPLIT
-!     #############################
-!
-INTERFACE
-!
-   SUBROUTINE LIMA_ADJUST_SPLIT(D, CST, BUCONF, TBUDGETS, KBUDGETS, &
-                             KRR, KMI, HCONDENS, HLAMBDA3,        &
-                             OSUBG_COND, OSIGMAS, PTSTEP, PSIGQSAT,             &
-                             PRHODREF, PRHODJ, PEXNREF, PSIGS, PMFCONV,         &
-                             PPABST, PPABSTT, PZZ, PDTHRAD, PW_NU,              &
-                             PRT, PRS, PSVT, PSVS,                              &
-                             PTHS, PSRCS, PCLDFR, PICEFR, PRC_MF, PRI_MF, PCF_MF)
-!
-!USE MODD_IO,    ONLY: TFILEDATA
-USE MODD_DIMPHYEX,       ONLY: DIMPHYEX_t
-USE MODD_BUDGET,   ONLY: TBUDGETDATA, TBUDGETCONF_t
-USE MODD_CST,            ONLY: CST_t
-!
-TYPE(DIMPHYEX_t),         INTENT(IN)   :: D
-TYPE(CST_t),              INTENT(IN)    :: CST
-TYPE(TBUDGETCONF_t),      INTENT(IN)    :: BUCONF
-TYPE(TBUDGETDATA), DIMENSION(KBUDGETS), INTENT(INOUT) :: TBUDGETS
-INTEGER, INTENT(IN) :: KBUDGETS
-!
-INTEGER,                  INTENT(IN)   :: KRR        ! Number of moist variables
-INTEGER,                  INTENT(IN)   :: KMI        ! Model index 
-CHARACTER(len=80),        INTENT(IN)   :: HCONDENS
-CHARACTER(len=4),         INTENT(IN)   :: HLAMBDA3   ! formulation for lambda3 coeff
-LOGICAL,                  INTENT(IN)   :: OSUBG_COND ! Switch for Subgrid
-                                                     ! Condensation
-LOGICAL,                  INTENT(IN)   :: OSIGMAS    ! Switch for Sigma_s:
-                                                     ! use values computed in CONDENSATION
-                                                     ! or that from turbulence scheme
-REAL,                     INTENT(IN)   :: PTSTEP     ! Time step
-REAL,                     INTENT(IN)   :: PSIGQSAT   ! coeff applied to qsat variance contribution
-!
-REAL, DIMENSION(:,:,:),   INTENT(IN)   ::  PRHODREF  ! Dry density of the 
-                                                     ! reference state
-REAL, DIMENSION(:,:,:),   INTENT(IN)   ::  PRHODJ    ! Dry density * Jacobian
-REAL, DIMENSION(:,:,:),   INTENT(IN)   ::  PEXNREF   ! Reference Exner function
-REAL, DIMENSION(:,:,:),   INTENT(IN)   ::  PSIGS     ! Sigma_s at time t
-REAL, DIMENSION(:,:,:),   INTENT(IN)   ::  PMFCONV   ! 
-REAL, DIMENSION(:,:,:),   INTENT(IN)   ::  PPABST    ! Absolute Pressure at t     
-REAL, DIMENSION(:,:,:),   INTENT(IN)   ::  PPABSTT   ! Absolute Pressure at t+dt     
-REAL, DIMENSION(:,:,:),   INTENT(IN)   ::  PZZ       !     
-REAL, DIMENSION(:,:,:),   INTENT(IN)   :: PDTHRAD   ! Radiative temperature tendency
-REAL, DIMENSION(:,:,:),   INTENT(IN)   :: PW_NU     ! updraft velocity used for
-!
-REAL, DIMENSION(:,:,:,:), INTENT(IN)    :: PRT       ! m.r. at t
-!
-REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PRS       ! m.r. source
-!
-REAL, DIMENSION(:,:,:,:), INTENT(IN)    :: PSVT ! Concentrations at time t
-!
-REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSVS ! Concentration sources
-!
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PTHS      ! Theta source
-!
-REAL, DIMENSION(:,:,:),   INTENT(OUT)   :: PSRCS     ! Second-order flux
-                                                     ! s'rc'/2Sigma_s2 at time t+1
-                                                     ! multiplied by Lambda_3
-REAL, DIMENSION(:,:,:),   INTENT(INOUT)   :: PCLDFR    ! Cloud fraction          
-REAL, DIMENSION(:,:,:),   INTENT(INOUT)   :: PICEFR    ! Cloud fraction          
-REAL, DIMENSION(:,:,:),     INTENT(IN)    :: PRC_MF! Convective Mass Flux liquid mixing ratio
-REAL, DIMENSION(:,:,:),     INTENT(IN)    :: PRI_MF! Convective Mass Flux ice mixing ratio
-REAL, DIMENSION(:,:,:),     INTENT(IN)    :: PCF_MF! Convective Mass Flux Cloud fraction 
-!
-END SUBROUTINE LIMA_ADJUST_SPLIT
-!
-END INTERFACE
-!
-END MODULE MODI_LIMA_ADJUST_SPLIT
-!
 !     ###########################################################################
 SUBROUTINE LIMA_ADJUST_SPLIT(D, CST, BUCONF, TBUDGETS, KBUDGETS,                &
                              KRR, KMI, HCONDENS, HLAMBDA3,                      &
diff --git a/src/common/micro/lima_bergeron.F90 b/src/common/micro/mode_lima_bergeron.F90
similarity index 61%
rename from src/common/micro/lima_bergeron.F90
rename to src/common/micro/mode_lima_bergeron.F90
index 7a4967708e09ec8b49e850a2583fd47a7c04ee6d..7df06b07fb522fb373f86bd6211ef365729bd9a1 100644
--- a/src/common/micro/lima_bergeron.F90
+++ b/src/common/micro/mode_lima_bergeron.F90
@@ -2,41 +2,14 @@
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt  
 !MNH_LIC for details. version 1.
-!      #################################
-       MODULE MODI_LIMA_BERGERON
-!      #################################
-!
-INTERFACE
-   SUBROUTINE LIMA_BERGERON (LDCOMPUTE,                         &
-                             PRCT, PRIT, PCIT, PLBDI,           &
-                             PSSIW, PAI, PCJ, PLVFACT, PLSFACT, &
-                             P_TH_BERFI, P_RC_BERFI             )
-!
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRCT    ! Cloud water C. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PRIT    ! Cloud water C. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PCIT    ! Cloud water C. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDI   ! 
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PSSIW   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PAI     ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PCJ     ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLVFACT ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLSFACT ! 
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_BERFI
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RC_BERFI
-!!
-END SUBROUTINE LIMA_BERGERON
-END INTERFACE
-END MODULE MODI_LIMA_BERGERON
-!
+MODULE MODE_LIMA_BERGERON
+  IMPLICIT NONE
+  CONTAINS
 !     #############################################################
-      SUBROUTINE LIMA_BERGERON( LDCOMPUTE,                        &
-                               PRCT, PRIT, PCIT, PLBDI,           &
-                               PSSIW, PAI, PCJ, PLVFACT, PLSFACT, &
-                               P_TH_BERFI, P_RC_BERFI             )
+    SUBROUTINE LIMA_BERGERON( LDCOMPUTE,                        &
+                              PRCT, PRIT, PCIT, PLBDI,           &
+                              PSSIW, PAI, PCJ, PLVFACT, PLSFACT, &
+                              P_TH_BERFI, P_RC_BERFI             )
 !     #############################################################
 !
 !!    PURPOSE
@@ -99,3 +72,4 @@ END WHERE
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_BERGERON
+END MODULE MODE_LIMA_BERGERON
diff --git a/src/common/micro/lima_ccn_activation.F90 b/src/common/micro/mode_lima_ccn_activation.F90
similarity index 92%
rename from src/common/micro/lima_ccn_activation.F90
rename to src/common/micro/mode_lima_ccn_activation.F90
index f94b3ec75a89781a09f9dbfaa096da8b6b373807..1731dd8156a2f19ebaa201b3f7fad0e835e2d417 100644
--- a/src/common/micro/lima_ccn_activation.F90
+++ b/src/common/micro/mode_lima_ccn_activation.F90
@@ -3,49 +3,15 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!      ###############################
-       MODULE MODI_LIMA_CCN_ACTIVATION
-!      ###############################
-!
-INTERFACE
-   SUBROUTINE LIMA_CCN_ACTIVATION (CST,                                   &
-                                   PRHODREF, PEXNREF, PPABST, PT, PDTHRAD, PW_NU, &
-                                   PTHT, PRVT, PRCT, PCCT, PRRT, PNFT, PNAT,      &
-                                   PCLDFR                                         )
-USE MODD_CST,            ONLY: CST_t
-!USE MODD_IO, ONLY: TFILEDATA
-!
-TYPE(CST_t),              INTENT(IN)    :: CST
-!TYPE(TFILEDATA),          INTENT(IN)    :: TPFILE     ! Output file
-!
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRHODREF   ! Reference density
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PEXNREF    ! Reference Exner function
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PPABST     ! abs. pressure at time t
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PT         ! Temperature
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PDTHRAD    ! Radiative temperature tendency
-!
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PW_NU      ! updraft velocity used for
-                                                      ! the nucleation param.
-!   
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PTHT       ! Theta at t 
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRVT       ! Water vapor m.r. at t 
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRCT       ! Cloud water m.r. at t 
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PCCT       ! Cloud water m.r. at t 
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRRT       ! Cloud water m.r. at t 
-REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNFT       ! CCN C. available at t
-REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNAT       ! CCN C. activated at t
-!
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PCLDFR     ! Precipitation fraction
-!
-END SUBROUTINE LIMA_CCN_ACTIVATION
-END INTERFACE
-END MODULE MODI_LIMA_CCN_ACTIVATION
-!     #############################################################################
-   SUBROUTINE LIMA_CCN_ACTIVATION (CST,                                   &
-                                   PRHODREF, PEXNREF, PPABST, PT, PDTHRAD, PW_NU, &
-                                   PTHT, PRVT, PRCT, PCCT, PRRT, PNFT, PNAT,      &
-                                   PCLDFR                                         )
-!     #############################################################################
+MODULE MODE_LIMA_CCN_ACTIVATION
+  IMPLICIT NONE
+CONTAINS
+!     ##############################################################################
+    SUBROUTINE LIMA_CCN_ACTIVATION (CST,                                           &
+                                    PRHODREF, PEXNREF, PPABST, PT, PDTHRAD, PW_NU, &
+                                    PTHT, PRVT, PRCT, PCCT, PRRT, PNFT, PNAT,      &
+                                    PCLDFR                                         )
+!     ##############################################################################
 !
 !!
 !!    PURPOSE
@@ -851,3 +817,4 @@ END FUNCTION SINGL_FUNCSMAX
 !-----------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_CCN_ACTIVATION
+END MODULE MODE_LIMA_CCN_ACTIVATION
diff --git a/src/common/micro/lima_ccn_hom_freezing.F90 b/src/common/micro/mode_lima_ccn_hom_freezing.F90
similarity index 85%
rename from src/common/micro/lima_ccn_hom_freezing.F90
rename to src/common/micro/mode_lima_ccn_hom_freezing.F90
index b57bc6f2a99592997db11ce391024386fa85d4fc..25744d42abb867dfca9935a86bb924329e49ee8e 100644
--- a/src/common/micro/lima_ccn_hom_freezing.F90
+++ b/src/common/micro/mode_lima_ccn_hom_freezing.F90
@@ -3,50 +3,14 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-------------------------------------------------------------------------------
-!      #################################
-       MODULE MODI_LIMA_CCN_HOM_FREEZING
-!      #################################
-!
-INTERFACE
-   SUBROUTINE LIMA_CCN_HOM_FREEZING (CST, PRHODREF, PEXNREF, PPABST, PW_NU,    &
-                                     PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, &
-                                     PCCT, PCRT, PCIT, PNFT, PNHT,             &
-                                     PICEFR                                    )
-USE MODD_CST,            ONLY: CST_t
-!
-TYPE(CST_t),              INTENT(IN)    :: CST
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRHODREF! Reference density
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PEXNREF ! Reference Exner function
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PPABST  ! abs. pressure at time t
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PW_NU   ! updraft velocity used for
-                                                   ! the nucleation param.
-!
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PTHT    ! Theta at time t
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRVT    ! Water vapor m.r. at t 
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRCT    ! Cloud water m.r. at t 
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRRT    ! Rain water m.r. at t 
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRIT    ! Cloud ice m.r. at t 
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRST    ! Snow/aggregate m.r. at t 
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRGT    ! Graupel m.r. at t 
-!
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PCCT    ! Cloud water C. at t
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PCRT    ! Rain water C. source
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PCIT    ! Ice crystal C. source
-!
-REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNFT    ! Free CCN conc. 
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PNHT    ! haze homogeneous freezing
-!
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PICEFR  ! Ice fraction
-!
-END SUBROUTINE LIMA_CCN_HOM_FREEZING
-END INTERFACE
-END MODULE MODI_LIMA_CCN_HOM_FREEZING
-!
+MODULE MODE_LIMA_CCN_HOM_FREEZING
+  IMPLICIT NONE
+CONTAINS
 !     ##########################################################################
-   SUBROUTINE LIMA_CCN_HOM_FREEZING (CST, PRHODREF, PEXNREF, PPABST, PW_NU,    &
-                                     PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, &
-                                     PCCT, PCRT, PCIT, PNFT, PNHT ,            &
-                                     PICEFR                                    )
+  SUBROUTINE LIMA_CCN_HOM_FREEZING (CST, PRHODREF, PEXNREF, PPABST, PW_NU,    &
+                                    PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, &
+                                    PCCT, PCRT, PCIT, PNFT, PNHT ,            &
+                                    PICEFR                                    )
 !     ##########################################################################
 !
 !!    PURPOSE
@@ -396,3 +360,4 @@ END IF ! INEGT>0
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_CCN_HOM_FREEZING
+END MODULE MODE_LIMA_CCN_HOM_FREEZING
diff --git a/src/common/micro/lima_collisional_ice_breakup.F90 b/src/common/micro/mode_lima_collisional_ice_breakup.F90
similarity index 90%
rename from src/common/micro/lima_collisional_ice_breakup.F90
rename to src/common/micro/mode_lima_collisional_ice_breakup.F90
index a6848d14345bcdf23a70338347f5b8ab66940e7b..58a040f5af64a6c7b1b780d32a0b6ea0a448709a 100644
--- a/src/common/micro/lima_collisional_ice_breakup.F90
+++ b/src/common/micro/mode_lima_collisional_ice_breakup.F90
@@ -3,43 +3,15 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-------------------------------------------------------------------------------
-!      ########################################
-       MODULE MODI_LIMA_COLLISIONAL_ICE_BREAKUP
-!      ########################################
-!
-INTERFACE
-   SUBROUTINE LIMA_COLLISIONAL_ICE_BREAKUP (LDCOMPUTE,              &
-                                            PRHODREF,               &
-                                            PRIT, PRST, PRGT, PCIT, PCST, PCGT, &
-                                            PLBDS, PLBDG,           &
-                                            P_RI_CIBU, P_CI_CIBU    )
-!
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHODREF
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRIT
-REAL, DIMENSION(:),   INTENT(IN)    :: PRST
-REAL, DIMENSION(:),   INTENT(IN)    :: PRGT
-REAL, DIMENSION(:),   INTENT(IN)    :: PCIT
-REAL, DIMENSION(:),   INTENT(IN)    :: PCST
-REAL, DIMENSION(:),   INTENT(IN)    :: PCGT
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDS 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDG 
-!
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RI_CIBU
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_CI_CIBU
-!
-END SUBROUTINE LIMA_COLLISIONAL_ICE_BREAKUP
-END INTERFACE
-END MODULE MODI_LIMA_COLLISIONAL_ICE_BREAKUP
-!
+MODULE MODE_LIMA_COLLISIONAL_ICE_BREAKUP
+  IMPLICIT NONE
+CONTAINS
 !     #######################################################################
-      SUBROUTINE LIMA_COLLISIONAL_ICE_BREAKUP (LDCOMPUTE,              &
-                                               PRHODREF,               &
-                                               PRIT, PRST, PRGT, PCIT, PCST, PCGT, &
-                                               PLBDS, PLBDG,           &
-                                               P_RI_CIBU, P_CI_CIBU    )
+  SUBROUTINE LIMA_COLLISIONAL_ICE_BREAKUP (LDCOMPUTE,              &
+                                           PRHODREF,               &
+                                           PRIT, PRST, PRGT, PCIT, PCST, PCGT, &
+                                           PLBDS, PLBDG,           &
+                                           P_RI_CIBU, P_CI_CIBU    )
 !     #######################################################################
 !
 !!    PURPOSE
@@ -418,3 +390,4 @@ END IF
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_COLLISIONAL_ICE_BREAKUP
+END MODULE MODE_LIMA_COLLISIONAL_ICE_BREAKUP
diff --git a/src/common/micro/lima_compute_cloud_fractions.F90 b/src/common/micro/mode_lima_compute_cloud_fractions.F90
similarity index 65%
rename from src/common/micro/lima_compute_cloud_fractions.F90
rename to src/common/micro/mode_lima_compute_cloud_fractions.F90
index 60bdab28e1f6ff8b2cd0f972d041820e1f154ae0..98ac4ae517cd8b246674fd551efabd46b21cd441 100644
--- a/src/common/micro/lima_compute_cloud_fractions.F90
+++ b/src/common/micro/mode_lima_compute_cloud_fractions.F90
@@ -3,57 +3,18 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-------------------------------------------------------------------------------
-!#######################################
-MODULE MODI_LIMA_COMPUTE_CLOUD_FRACTIONS
-!#######################################
-  INTERFACE
-     SUBROUTINE LIMA_COMPUTE_CLOUD_FRACTIONS (D,                                 &
-                                              PCCT, PRCT,                        &
-                                              PCRT, PRRT,                        &
-                                              PCIT, PRIT,                        &
-                                              PCST, PRST,                        &
-                                              PCGT, PRGT,                        &
-                                              PCHT, PRHT,                        &
-                                              PCLDFR, PICEFR, PPRCFR             )
-       USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t
-       TYPE(DIMPHYEX_t),      INTENT(IN)    :: D
-       !
-       REAL, DIMENSION(:,:,:),INTENT(IN)    :: PCCT          !
-       REAL, DIMENSION(:,:,:),INTENT(IN)    :: PRCT          !
-       !
-       REAL, DIMENSION(:,:,:),INTENT(IN)    :: PCRT          !
-       REAL, DIMENSION(:,:,:),INTENT(IN)    :: PRRT          !
-       !
-       REAL, DIMENSION(:,:,:),INTENT(IN)    :: PCIT          !
-       REAL, DIMENSION(:,:,:),INTENT(IN)    :: PRIT          !
-       !
-       REAL, DIMENSION(:,:,:),INTENT(IN)    :: PCST          !
-       REAL, DIMENSION(:,:,:),INTENT(IN)    :: PRST          !
-       !
-       REAL, DIMENSION(:,:,:),INTENT(IN)    :: PCGT          !
-       REAL, DIMENSION(:,:,:),INTENT(IN)    :: PRGT          !
-       !
-       REAL, DIMENSION(:,:,:),INTENT(IN)    :: PCHT          !
-       REAL, DIMENSION(:,:,:),INTENT(IN)    :: PRHT          !
-       !
-       REAL, DIMENSION(:,:,:),INTENT(INOUT) :: PCLDFR        ! 
-       REAL, DIMENSION(:,:,:),INTENT(INOUT) :: PICEFR        ! 
-       REAL, DIMENSION(:,:,:),INTENT(INOUT) :: PPRCFR        ! 
-       !
-     END SUBROUTINE LIMA_COMPUTE_CLOUD_FRACTIONS
-  END INTERFACE
-END MODULE MODI_LIMA_COMPUTE_CLOUD_FRACTIONS
-!
-!
+MODULE MODE_LIMA_COMPUTE_CLOUD_FRACTIONS
+  IMPLICIT NONE
+CONTAINS
 !################################################################
-SUBROUTINE LIMA_COMPUTE_CLOUD_FRACTIONS (D,                                 &
-                                         PCCT, PRCT,                        &
-                                         PCRT, PRRT,                        &
-                                         PCIT, PRIT,                        &
-                                         PCST, PRST,                        &
-                                         PCGT, PRGT,                        &
-                                         PCHT, PRHT,                        &
-                                         PCLDFR, PICEFR, PPRCFR             )
+  SUBROUTINE LIMA_COMPUTE_CLOUD_FRACTIONS (D,                     &
+                                           PCCT, PRCT,            &
+                                           PCRT, PRRT,            &
+                                           PCIT, PRIT,            &
+                                           PCST, PRST,            &
+                                           PCGT, PRGT,            &
+                                           PCHT, PRHT,            &
+                                           PCLDFR, PICEFR, PPRCFR )
 !################################################################
 !
 !!
@@ -176,3 +137,4 @@ WHERE ( (PRRT(:,:,:).GT.0. .AND. (NMOM_R.EQ.1 .OR. PCRT(:,:,:).GT.0.) ) .OR. &
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_COMPUTE_CLOUD_FRACTIONS
+END MODULE MODE_LIMA_COMPUTE_CLOUD_FRACTIONS
diff --git a/src/common/micro/lima_conversion_melting_snow.F90 b/src/common/micro/mode_lima_conversion_melting_snow.F90
similarity index 68%
rename from src/common/micro/lima_conversion_melting_snow.F90
rename to src/common/micro/mode_lima_conversion_melting_snow.F90
index ef46c794f37aee347aa52ea5bf8c338502b53801..0921e3f73188b680251bbae80789d0f74870c35c 100644
--- a/src/common/micro/lima_conversion_melting_snow.F90
+++ b/src/common/micro/mode_lima_conversion_melting_snow.F90
@@ -3,42 +3,14 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-------------------------------------------------------------------------------
-!      #################################
-       MODULE MODI_LIMA_CONVERSION_MELTING_SNOW
-!      #################################
-!
-INTERFACE
-   SUBROUTINE LIMA_CONVERSION_MELTING_SNOW (LDCOMPUTE,                          &
-                                            PRHODREF, PPRES, PT, PKA, PDV, PCJ, &
-                                            PRVT, PRST, PCST, PLBDS,            &
-                                            P_RS_CMEL, P_CS_CMEL                )
-!
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHODREF ! Reference Exner function
-REAL, DIMENSION(:),   INTENT(IN)    :: PPRES    !
-REAL, DIMENSION(:),   INTENT(IN)    :: PT       !
-REAL, DIMENSION(:),   INTENT(IN)    :: PKA      !
-REAL, DIMENSION(:),   INTENT(IN)    :: PDV      !
-REAL, DIMENSION(:),   INTENT(IN)    :: PCJ      !
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRVT    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRST    ! Snow mr at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PCST    ! Snow C. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDS   ! 
-!
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RS_CMEL
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_CS_CMEL
-!
-END SUBROUTINE LIMA_CONVERSION_MELTING_SNOW
-END INTERFACE
-END MODULE MODI_LIMA_CONVERSION_MELTING_SNOW
-!
+MODULE MODE_LIMA_CONVERSION_MELTING_SNOW
+  IMPLICIT NONE
+CONTAINS
 !     ##############################################################################
-      SUBROUTINE LIMA_CONVERSION_MELTING_SNOW (LDCOMPUTE,                          &
-                                               PRHODREF, PPRES, PT, PKA, PDV, PCJ, &
-                                               PRVT, PRST, PCST, PLBDS,            &
-                                               P_RS_CMEL, P_CS_CMEL                )
+  SUBROUTINE LIMA_CONVERSION_MELTING_SNOW (LDCOMPUTE,                          &
+                                           PRHODREF, PPRES, PT, PKA, PDV, PCJ, &
+                                           PRVT, PRST, PCST, PLBDS,            &
+                                           P_RS_CMEL, P_CS_CMEL                )
 !     ##############################################################################
 !
 !!    PURPOSE
@@ -127,3 +99,4 @@ END WHERE
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_CONVERSION_MELTING_SNOW
+END MODULE MODE_LIMA_CONVERSION_MELTING_SNOW
diff --git a/src/common/micro/lima_droplets_accretion.F90 b/src/common/micro/mode_lima_droplets_accretion.F90
similarity index 75%
rename from src/common/micro/lima_droplets_accretion.F90
rename to src/common/micro/mode_lima_droplets_accretion.F90
index d183953cd21da3563c87d7fc851af9bd76d10539..8e0119a4380f264f99c14f7c3e76426f049c175e 100644
--- a/src/common/micro/lima_droplets_accretion.F90
+++ b/src/common/micro/mode_lima_droplets_accretion.F90
@@ -3,43 +3,15 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-------------------------------------------------------------------------------
-!      #################################
-       MODULE MODI_LIMA_DROPLETS_ACCRETION
-!      #################################
-!
-INTERFACE
-   SUBROUTINE LIMA_DROPLETS_ACCRETION (LDCOMPUTE,                      &
-                                       PRHODREF,                       &
-                                       PRCT, PRRT, PCCT, PCRT,         &
-                                       PLBDC, PLBDC3, PLBDR, PLBDR3,   &
-                                       P_RC_ACCR, P_CC_ACCR            )
-!
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHODREF ! Reference Exner function
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRCT    ! Cloud water m.r. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PRRT    ! Rain m.r. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PCCT    ! Cloud water conc. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PCRT    ! Rain conc. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDC   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDC3  ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDR   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDR3  ! 
-!
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RC_ACCR
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_CC_ACCR
-!
-END SUBROUTINE LIMA_DROPLETS_ACCRETION
-END INTERFACE
-END MODULE MODI_LIMA_DROPLETS_ACCRETION
-!
+MODULE MODE_LIMA_DROPLETS_ACCRETION
+  IMPLICIT NONE
+CONTAINS
 !     #####################################################################
-      SUBROUTINE LIMA_DROPLETS_ACCRETION (LDCOMPUTE,                      &
-                                          PRHODREF,                       &
-                                          PRCT, PRRT, PCCT, PCRT,         &
-                                          PLBDC, PLBDC3, PLBDR, PLBDR3,   &
-                                          P_RC_ACCR, P_CC_ACCR            )
+  SUBROUTINE LIMA_DROPLETS_ACCRETION (LDCOMPUTE,                      &
+                                      PRHODREF,                       &
+                                      PRCT, PRRT, PCCT, PCRT,         &
+                                      PLBDC, PLBDC3, PLBDR, PLBDR3,   &
+                                      P_RC_ACCR, P_CC_ACCR            )
 !     #####################################################################
 !
 !!    PURPOSE
@@ -190,3 +162,4 @@ END IF
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_DROPLETS_ACCRETION
+END MODULE MODE_LIMA_DROPLETS_ACCRETION
diff --git a/src/common/micro/lima_droplets_autoconversion.F90 b/src/common/micro/mode_lima_droplets_autoconversion.F90
similarity index 74%
rename from src/common/micro/lima_droplets_autoconversion.F90
rename to src/common/micro/mode_lima_droplets_autoconversion.F90
index 6d48daab73d7a4f16fdb4c2fb055f2f27ce2ffe4..fca3fbf804de1e6b60bc4fd54a9073a4b04eb369 100644
--- a/src/common/micro/lima_droplets_autoconversion.F90
+++ b/src/common/micro/mode_lima_droplets_autoconversion.F90
@@ -3,38 +3,14 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-------------------------------------------------------------------------------
-!      #################################
-       MODULE MODI_LIMA_DROPLETS_AUTOCONVERSION
-!      #################################
-!
-INTERFACE
-   SUBROUTINE LIMA_DROPLETS_AUTOCONVERSION (LDCOMPUTE,                      &
-                                            PRHODREF,                       &
-                                            PRCT, PCCT, PLBDC, PLBDR,       &
-                                            P_RC_AUTO, P_CC_AUTO, P_CR_AUTO )
-!
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHODREF ! Reference Exner function
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRCT    ! Cloud water m.r. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PCCT    ! Cloud water conc. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDC   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDR   ! 
-!
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RC_AUTO
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_CC_AUTO
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_CR_AUTO
-!
-END SUBROUTINE LIMA_DROPLETS_AUTOCONVERSION
-END INTERFACE
-END MODULE MODI_LIMA_DROPLETS_AUTOCONVERSION
-!
+MODULE MODE_LIMA_DROPLETS_AUTOCONVERSION
+  IMPLICIT NONE
+CONTAINS
 !     ##########################################################################
-      SUBROUTINE LIMA_DROPLETS_AUTOCONVERSION (LDCOMPUTE,                      &
-                                               PRHODREF,                       &
-                                               PRCT, PCCT, PLBDC, PLBDR,       &
-                                               P_RC_AUTO, P_CC_AUTO, P_CR_AUTO )
+  SUBROUTINE LIMA_DROPLETS_AUTOCONVERSION (LDCOMPUTE,                      &
+                                           PRHODREF,                       &
+                                           PRCT, PCCT, PLBDC, PLBDR,       &
+                                           P_RC_AUTO, P_CC_AUTO, P_CR_AUTO )
 !     ##########################################################################
 !
 !!    PURPOSE
@@ -148,3 +124,4 @@ END IF
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_DROPLETS_AUTOCONVERSION
+END MODULE MODE_LIMA_DROPLETS_AUTOCONVERSION
diff --git a/src/common/micro/lima_droplets_hom_freezing.F90 b/src/common/micro/mode_lima_droplets_hom_freezing.F90
similarity index 67%
rename from src/common/micro/lima_droplets_hom_freezing.F90
rename to src/common/micro/mode_lima_droplets_hom_freezing.F90
index b33d7a3501fdf56c3925db691f50a11af30b2e5f..687e161ee34a2f9c138f4510f06f81b4e15035ba 100644
--- a/src/common/micro/lima_droplets_hom_freezing.F90
+++ b/src/common/micro/mode_lima_droplets_hom_freezing.F90
@@ -2,40 +2,14 @@
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt  
 !MNH_LIC for details. version 1.
-!      #################################
-       MODULE MODI_LIMA_DROPLETS_HOM_FREEZING
-!      #################################
-!
-INTERFACE
-   SUBROUTINE LIMA_DROPLETS_HOM_FREEZING (PTSTEP, LDCOMPUTE,                &
-                                          PT, PLVFACT, PLSFACT,             &
-                                          PRCT, PCCT, PLBDC,                &
-                                          P_TH_HONC, P_RC_HONC, P_CC_HONC   )
-!
-REAL,                 INTENT(IN)    :: PTSTEP 
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PT       ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLVFACT  ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLSFACT  ! 
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRCT    ! Cloud water m.r. at t 
-REAL, DIMENSION(:),   INTENT(IN)    :: PCCT    ! Cloud water C. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDC   ! Cloud water lambda
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_HONC
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RC_HONC
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CC_HONC
-!
-END SUBROUTINE LIMA_DROPLETS_HOM_FREEZING
-END INTERFACE
-END MODULE MODI_LIMA_DROPLETS_HOM_FREEZING
-!
+MODULE MODE_LIMA_DROPLETS_HOM_FREEZING
+  IMPLICIT NONE
+CONTAINS
 !     ##########################################################################
-      SUBROUTINE LIMA_DROPLETS_HOM_FREEZING (PTSTEP,  LDCOMPUTE,               &
-                                             PT, PLVFACT, PLSFACT,             &
-                                             PRCT, PCCT, PLBDC,                &
-                                             P_TH_HONC, P_RC_HONC, P_CC_HONC   )
+  SUBROUTINE LIMA_DROPLETS_HOM_FREEZING (PTSTEP,  LDCOMPUTE,               &
+                                         PT, PLVFACT, PLSFACT,             &
+                                         PRCT, PCCT, PLBDC,                &
+                                         P_TH_HONC, P_RC_HONC, P_CC_HONC   )
 !     ##########################################################################
 !
 !!    PURPOSE
@@ -123,3 +97,4 @@ END WHERE
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_DROPLETS_HOM_FREEZING
+END MODULE MODE_LIMA_DROPLETS_HOM_FREEZING
diff --git a/src/common/micro/lima_droplets_riming_snow.F90 b/src/common/micro/mode_lima_droplets_riming_snow.F90
similarity index 76%
rename from src/common/micro/lima_droplets_riming_snow.F90
rename to src/common/micro/mode_lima_droplets_riming_snow.F90
index cd46682388de1ab48cd16f98169998029eb2dca6..70ab95d4787ed23f3b4e12fb544d6c25f3edcf40 100644
--- a/src/common/micro/lima_droplets_riming_snow.F90
+++ b/src/common/micro/mode_lima_droplets_riming_snow.F90
@@ -3,53 +3,15 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-------------------------------------------------------------------------------
-!      #################################
-       MODULE MODI_LIMA_DROPLETS_RIMING_SNOW
-!      #################################
-!
-INTERFACE
-   SUBROUTINE LIMA_DROPLETS_RIMING_SNOW (PTSTEP,  LDCOMPUTE,                                               &
-                                         PRHODREF, PT,                                                     &
-                                         PRCT, PCCT, PRST, PCST, PLBDC, PLBDS, PLVFACT, PLSFACT,           &
-                                         P_TH_RIM, P_RC_RIM, P_CC_RIM, P_RS_RIM, P_CS_RIM, P_RG_RIM,       &
-                                         P_RI_HMS, P_CI_HMS, P_RS_HMS                                      )
-!
-REAL,                 INTENT(IN)    :: PTSTEP 
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHODREF    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PT   ! 
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRCT    ! Cloud water mr at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PCCT    ! Cloud water C. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PRST    ! Snow mr at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PCST    ! Snow C. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDC   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDS   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLVFACT ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLSFACT ! 
-!
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_TH_RIM
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RC_RIM
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_CC_RIM
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RS_RIM
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_CS_RIM
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RG_RIM
-!
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RI_HMS
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_CI_HMS
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RS_HMS
-!
-END SUBROUTINE LIMA_DROPLETS_RIMING_SNOW
-END INTERFACE
-END MODULE MODI_LIMA_DROPLETS_RIMING_SNOW
-!
+MODULE MODE_LIMA_DROPLETS_RIMING_SNOW
+  IMPLICIT NONE
+CONTAINS
 !     #########################################################################################
-      SUBROUTINE LIMA_DROPLETS_RIMING_SNOW (PTSTEP, LDCOMPUTE,                                                &
-                                            PRHODREF, PT,                                                     &
-                                            PRCT, PCCT, PRST, PCST, PLBDC, PLBDS, PLVFACT, PLSFACT,           &
-                                            P_TH_RIM, P_RC_RIM, P_CC_RIM, P_RS_RIM, P_CS_RIM, P_RG_RIM,       &
-                                            P_RI_HMS, P_CI_HMS, P_RS_HMS                                      )
+  SUBROUTINE LIMA_DROPLETS_RIMING_SNOW (PTSTEP, LDCOMPUTE,                                                &
+                                        PRHODREF, PT,                                                     &
+                                        PRCT, PCCT, PRST, PCST, PLBDC, PLBDS, PLVFACT, PLSFACT,           &
+                                        P_TH_RIM, P_RC_RIM, P_CC_RIM, P_RS_RIM, P_CS_RIM, P_RG_RIM,       &
+                                        P_RI_HMS, P_CI_HMS, P_RS_HMS                                      )
 !     #########################################################################################
 !
 !!    PURPOSE
@@ -234,3 +196,4 @@ END DO
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_DROPLETS_RIMING_SNOW
+END MODULE MODE_LIMA_DROPLETS_RIMING_SNOW
diff --git a/src/common/micro/lima_droplets_self_collection.F90 b/src/common/micro/mode_lima_droplets_self_collection.F90
similarity index 63%
rename from src/common/micro/lima_droplets_self_collection.F90
rename to src/common/micro/mode_lima_droplets_self_collection.F90
index 79312e8cb058055804d58a2d48c53f10a04deb65..6a4557c89610cb9cafac0c37c4c639926e4b9a90 100644
--- a/src/common/micro/lima_droplets_self_collection.F90
+++ b/src/common/micro/mode_lima_droplets_self_collection.F90
@@ -3,34 +3,14 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-------------------------------------------------------------------------------
-!      #################################
-       MODULE MODI_LIMA_DROPLETS_SELF_COLLECTION
-!      #################################
-!
-INTERFACE
-   SUBROUTINE LIMA_DROPLETS_SELF_COLLECTION (LDCOMPUTE,                      &
-                                             PRHODREF,                       &
-                                             PCCT, PLBDC3,                   &
-                                             P_CC_SELF                       )
-!
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHODREF ! Reference Exner function
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PCCT    ! Cloud water C. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDC3  ! 
-!
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_CC_SELF
-!
-END SUBROUTINE LIMA_DROPLETS_SELF_COLLECTION
-END INTERFACE
-END MODULE MODI_LIMA_DROPLETS_SELF_COLLECTION
-!
+MODULE MODE_LIMA_DROPLETS_SELF_COLLECTION
+  IMPLICIT NONE
+CONTAINS
 !     ######################################################################
-      SUBROUTINE LIMA_DROPLETS_SELF_COLLECTION (LDCOMPUTE,                      &
-                                                PRHODREF,                       &
-                                                PCCT, PLBDC3,                   &
-                                                P_CC_SELF                       )
+  SUBROUTINE LIMA_DROPLETS_SELF_COLLECTION (LDCOMPUTE,                      &
+                                            PRHODREF,                       &
+                                            PCCT, PLBDC3,                   &
+                                            P_CC_SELF                       )
 !     ######################################################################
 !
 !!    PURPOSE
@@ -92,3 +72,4 @@ END WHERE
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_DROPLETS_SELF_COLLECTION
+END MODULE MODE_LIMA_DROPLETS_SELF_COLLECTION
diff --git a/src/common/micro/lima_drops_break_up.F90 b/src/common/micro/mode_lima_drops_break_up.F90
similarity index 71%
rename from src/common/micro/lima_drops_break_up.F90
rename to src/common/micro/mode_lima_drops_break_up.F90
index 697c682469036cd49ecd2f8906efd9bdd1bdb093..e2b36c2ab18e6bfa233bd9c9e27f5c40bbb62927 100644
--- a/src/common/micro/lima_drops_break_up.F90
+++ b/src/common/micro/mode_lima_drops_break_up.F90
@@ -2,36 +2,14 @@
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt  
 !MNH_LIC for details. version 1.
-!      ###############################
-       MODULE MODI_LIMA_DROPS_BREAK_UP
-!      ###############################
-!
-INTERFACE
-   SUBROUTINE LIMA_DROPS_BREAK_UP (LDCOMPUTE,  &
-                                   PCRT, PRRT, &
-                                   P_CR_BRKU,  &
-                                   PB_CR       )
-
-!
-LOGICAL, DIMENSION(:), INTENT(IN)    :: LDCOMPUTE  
-!
-REAL, DIMENSION(:),    INTENT(IN)    :: PCRT             !
-REAL, DIMENSION(:),    INTENT(IN)    :: PRRT             !
-!
-REAL, DIMENSION(:),    INTENT(INOUT) :: P_CR_BRKU        ! Concentration change (#/kg)
-REAL, DIMENSION(:),    INTENT(INOUT) :: PB_CR            ! Cumulated concentration change (#/kg)
-!
-END SUBROUTINE LIMA_DROPS_BREAK_UP
-END INTERFACE
-END MODULE MODI_LIMA_DROPS_BREAK_UP
-!
-!
+MODULE MODE_LIMA_DROPS_BREAK_UP
+  IMPLICIT NONE
+CONTAINS
 !     ##########################################
-   SUBROUTINE LIMA_DROPS_BREAK_UP (LDCOMPUTE,  &
-                                   PCRT, PRRT, &
-                                   P_CR_BRKU,  &
-                                   PB_CR       )
-
+  SUBROUTINE LIMA_DROPS_BREAK_UP (LDCOMPUTE,  &
+                                  PCRT, PRRT, &
+                                  P_CR_BRKU,  &
+                                  PB_CR       )
 !     ##########################################
 !
 !!
@@ -98,3 +76,4 @@ PB_CR(:) = PB_CR(:) + P_CR_BRKU(:)
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_DROPS_BREAK_UP
+END MODULE MODE_LIMA_DROPS_BREAK_UP
diff --git a/src/common/micro/lima_drops_hom_freezing.F90 b/src/common/micro/mode_lima_drops_hom_freezing.F90
similarity index 59%
rename from src/common/micro/lima_drops_hom_freezing.F90
rename to src/common/micro/mode_lima_drops_hom_freezing.F90
index b8382155bd2b89953b7a60ae0f54063d4c99af8e..1d3e289dbaad05153f76fc9dd95c23226010cec3 100644
--- a/src/common/micro/lima_drops_hom_freezing.F90
+++ b/src/common/micro/mode_lima_drops_hom_freezing.F90
@@ -2,53 +2,16 @@
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt  
 !MNH_LIC for details. version 1.
-!      #################################
-       MODULE MODI_LIMA_DROPS_HOM_FREEZING
-!      #################################
-!
-INTERFACE
-      SUBROUTINE LIMA_DROPS_HOM_FREEZING (PTSTEP, LDCOMPUTE,                        &
-                                          PEXNREF, PPABST,                          &
-                                          PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, &
-                                          PCRT,                                     &
-                                          P_TH_HONR, P_RR_HONR, P_CR_HONR,          &
-                                          PB_TH, PB_RR, PB_CR, PB_RG                )
-!
-REAL,                  INTENT(IN)    :: PTSTEP 
-LOGICAL, DIMENSION(:), INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),    INTENT(IN)    :: PEXNREF ! Reference Exner function
-REAL, DIMENSION(:),    INTENT(IN)    :: PPABST  ! abs. pressure at time t
-!
-REAL, DIMENSION(:),    INTENT(IN)    :: PTHT    ! Theta at time t
-REAL, DIMENSION(:),    INTENT(IN)    :: PRVT    ! Water vapor m.r. at t 
-REAL, DIMENSION(:),    INTENT(IN)    :: PRCT    ! Cloud water m.r. at t 
-REAL, DIMENSION(:),    INTENT(IN)    :: PRRT    ! Rain water m.r. at t 
-REAL, DIMENSION(:),    INTENT(IN)    :: PRIT    ! Cloud ice m.r. at t 
-REAL, DIMENSION(:),    INTENT(IN)    :: PRST    ! Snow/aggregate m.r. at t 
-REAL, DIMENSION(:),    INTENT(IN)    :: PRGT    ! Graupel m.r. at t 
-!
-REAL, DIMENSION(:),    INTENT(IN)    :: PCRT    ! Rain water C. at t
-!
-REAL, DIMENSION(:),    INTENT(INOUT) :: P_TH_HONR
-REAL, DIMENSION(:),    INTENT(INOUT) :: P_RR_HONR
-REAL, DIMENSION(:),    INTENT(INOUT) :: P_CR_HONR
-REAL, DIMENSION(:),    INTENT(INOUT) :: PB_TH
-REAL, DIMENSION(:),    INTENT(INOUT) :: PB_RR
-REAL, DIMENSION(:),    INTENT(INOUT) :: PB_CR
-REAL, DIMENSION(:),    INTENT(INOUT) :: PB_RG
-!
-END SUBROUTINE LIMA_DROPS_HOM_FREEZING
-END INTERFACE
-END MODULE MODI_LIMA_DROPS_HOM_FREEZING
-!
+MODULE MODE_LIMA_DROPS_HOM_FREEZING
+  IMPLICIT NONE
+CONTAINS
 !     ###############################################################################
-      SUBROUTINE LIMA_DROPS_HOM_FREEZING (PTSTEP, LDCOMPUTE,                        &
-                                          PEXNREF, PPABST,                          &
-                                          PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, &
-                                          PCRT,                                     &
-                                          P_TH_HONR, P_RR_HONR, P_CR_HONR,          &
-                                          PB_TH, PB_RR, PB_CR, PB_RG                )
+  SUBROUTINE LIMA_DROPS_HOM_FREEZING (PTSTEP, LDCOMPUTE,                        &
+                                      PEXNREF, PPABST,                          &
+                                      PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, &
+                                      PCRT,                                     &
+                                      P_TH_HONR, P_RR_HONR, P_CR_HONR,          &
+                                      PB_TH, PB_RR, PB_CR, PB_RG                )
 !     ###############################################################################
 !
 !!    PURPOSE
@@ -142,3 +105,4 @@ ENDWHERE
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_DROPS_HOM_FREEZING
+END MODULE MODE_LIMA_DROPS_HOM_FREEZING
diff --git a/src/common/micro/lima_drops_self_collection.F90 b/src/common/micro/mode_lima_drops_self_collection.F90
similarity index 73%
rename from src/common/micro/lima_drops_self_collection.F90
rename to src/common/micro/mode_lima_drops_self_collection.F90
index 3f064dfcdc0f19a5124562e4d8a5658f2a31a7c5..0c16b69b4d41c53ba69667de98731a79df209c38 100644
--- a/src/common/micro/lima_drops_self_collection.F90
+++ b/src/common/micro/mode_lima_drops_self_collection.F90
@@ -3,35 +3,14 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-------------------------------------------------------------------------------
-!      #################################
-       MODULE MODI_LIMA_DROPS_SELF_COLLECTION
-!      #################################
-!
-INTERFACE
-   SUBROUTINE LIMA_DROPS_SELF_COLLECTION (LDCOMPUTE,           &
-                                          PRHODREF,            &
-                                          PCRT, PLBDR, PLBDR3, &
-                                          P_CR_SCBU            )
-!
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHODREF ! Reference Exner function
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PCRT    ! Cloud water C. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDR   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDR3  ! 
-!
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_CR_SCBU
-!
-END SUBROUTINE LIMA_DROPS_SELF_COLLECTION
-END INTERFACE
-END MODULE MODI_LIMA_DROPS_SELF_COLLECTION
-!
+MODULE MODE_LIMA_DROPS_SELF_COLLECTION
+  IMPLICIT NONE
+CONTAINS
 !     #############################################################
-      SUBROUTINE LIMA_DROPS_SELF_COLLECTION (LDCOMPUTE,           &
-                                             PRHODREF,            &
-                                             PCRT, PLBDR, PLBDR3, &
-                                             P_CR_SCBU            )
+  SUBROUTINE LIMA_DROPS_SELF_COLLECTION (LDCOMPUTE,           &
+                                         PRHODREF,            &
+                                         PCRT, PLBDR, PLBDR3, &
+                                         P_CR_SCBU            )
 !     #############################################################
 !
 !!    PURPOSE
@@ -121,3 +100,4 @@ P_CR_SCBU(:) = - ZW3(:) * PRHODREF(:)
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_DROPS_SELF_COLLECTION
+END MODULE MODE_LIMA_DROPS_SELF_COLLECTION
diff --git a/src/common/micro/lima_drops_to_droplets_conv.F90 b/src/common/micro/mode_lima_drops_to_droplets_conv.F90
similarity index 71%
rename from src/common/micro/lima_drops_to_droplets_conv.F90
rename to src/common/micro/mode_lima_drops_to_droplets_conv.F90
index b7b1a48bf416027e773dfb621ac8abaa08a63571..808bed2403a360d48509250e1925cea5d12a25ca 100644
--- a/src/common/micro/lima_drops_to_droplets_conv.F90
+++ b/src/common/micro/mode_lima_drops_to_droplets_conv.F90
@@ -2,34 +2,12 @@
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt  
 !MNH_LIC for details. version 1.
-!      #################################
-       MODULE MODI_LIMA_DROPS_TO_DROPLETS_CONV
-!      #################################
-!
-INTERFACE
-      SUBROUTINE LIMA_DROPS_TO_DROPLETS_CONV (CST, PRHODREF, PRCT, PRRT, PCCT, PCRT, &
-                                              P_RR_CVRC, P_CR_CVRC    )
-!
-USE MODD_CST, ONLY: CST_t
-TYPE(CST_t),              INTENT(IN)    :: CST
-!
-REAL, DIMENSION(:,:,:),    INTENT(IN)    :: PRHODREF! Cloud water m.r. at t 
-REAL, DIMENSION(:,:,:),    INTENT(IN)    :: PRCT    ! Cloud water m.r. at t 
-REAL, DIMENSION(:,:,:),    INTENT(IN)    :: PRRT    ! Rain water m.r. at t 
-!
-REAL, DIMENSION(:,:,:),    INTENT(IN)    :: PCCT    ! Cloud water C. at t
-REAL, DIMENSION(:,:,:),    INTENT(IN)    :: PCRT    ! Rain water C. at t
-!
-REAL, DIMENSION(:,:,:),    INTENT(INOUT) :: P_RR_CVRC
-REAL, DIMENSION(:,:,:),    INTENT(INOUT) :: P_CR_CVRC
-!
-END SUBROUTINE LIMA_DROPS_TO_DROPLETS_CONV
-END INTERFACE
-END MODULE MODI_LIMA_DROPS_TO_DROPLETS_CONV
-!
+MODULE MODE_LIMA_DROPS_TO_DROPLETS_CONV
+  IMPLICIT NONE
+CONTAINS
 !     ######################################################################
-      SUBROUTINE LIMA_DROPS_TO_DROPLETS_CONV (CST, PRHODREF, PRCT, PRRT, PCCT, PCRT, &
-                                              P_RR_CVRC, P_CR_CVRC    )
+  SUBROUTINE LIMA_DROPS_TO_DROPLETS_CONV (CST, PRHODREF, PRCT, PRRT, PCCT, PCRT, &
+                                          P_RR_CVRC, P_CR_CVRC    )
 !     ######################################################################
 !
 !!    PURPOSE
@@ -106,3 +84,4 @@ END WHERE
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_DROPS_TO_DROPLETS_CONV
+END MODULE MODE_LIMA_DROPS_TO_DROPLETS_CONV
diff --git a/src/common/micro/lima_functions.F90 b/src/common/micro/mode_lima_functions.F90
similarity index 76%
rename from src/common/micro/lima_functions.F90
rename to src/common/micro/mode_lima_functions.F90
index b5a8f17d782405a0467ae9e39bc3d7cf8faf4b6a..e68fa3e7a3128ba430621d6cd7cf1a73b64ea5b2 100644
--- a/src/common/micro/lima_functions.F90
+++ b/src/common/micro/mode_lima_functions.F90
@@ -9,63 +9,9 @@
 !  P. Wautelet 26/04/2019: replace non-standard FLOAT function by REAL function
 !  P. Wautelet 28/05/2019: move COUNTJV function to tools.f90
 !-----------------------------------------------------------------
-!#################################
-        MODULE MODI_LIMA_FUNCTIONS
-!#################################
-!
-INTERFACE
-!
-FUNCTION MOMG (PALPHA,PNU,PP) RESULT (PMOMG)
-  REAL,                        INTENT(IN)           :: PALPHA 
-  REAL,                        INTENT(IN)           :: PNU    
-  REAL,                        INTENT(IN)           :: PP     
-  REAL                                              :: PMOMG  
-END FUNCTION MOMG
-!
-FUNCTION RECT(PA,PB,PX,PX1,PX2)  RESULT(PRECT)
-  REAL,                        INTENT(IN)           :: PA
-  REAL,                        INTENT(IN)           :: PB
-  REAL, DIMENSION(:),          INTENT(IN)           :: PX
-  REAL,                        INTENT(IN)           :: PX1
-  REAL,                        INTENT(IN)           :: PX2
-  REAL, DIMENSION(SIZE(PX,1))                       :: PRECT
-END FUNCTION RECT
-!
-FUNCTION DELTA(PA,PB,PX,PX1,PX2)  RESULT(PDELTA)
-  REAL,                        INTENT(IN)           :: PA
-  REAL,                        INTENT(IN)           :: PB
-  REAL, DIMENSION(:),          INTENT(IN)           :: PX
-  REAL,                        INTENT(IN)           :: PX1
-  REAL,                        INTENT(IN)           :: PX2
-  REAL, DIMENSION(SIZE(PX,1))                       :: PDELTA
-END FUNCTION DELTA
-!
-FUNCTION DELTA_VEC(PA,PB,PX,PX1,PX2)  RESULT(PDELTA_VEC)
-  REAL,                        INTENT(IN)           :: PA
-  REAL,                        INTENT(IN)           :: PB
-  REAL, DIMENSION(:),          INTENT(IN)           :: PX
-  REAL, DIMENSION(:),          INTENT(IN)           :: PX1
-  REAL, DIMENSION(:),          INTENT(IN)           :: PX2
-  REAL, DIMENSION(SIZE(PX,1))                       :: PDELTA_VEC
-END FUNCTION DELTA_VEC
-!
-SUBROUTINE GAULAG(x,w,n,alf)
-  INTEGER,                     INTENT(IN)           :: n
-  REAL,                        INTENT(IN)           :: alf
-  REAL, DIMENSION(n),          INTENT(INOUT)        :: w, x
-END SUBROUTINE GAULAG
-!
-SUBROUTINE GAUHER(x,w,n)
-  INTEGER,                     INTENT(IN)           :: n
-  REAL, DIMENSION(n),          INTENT(INOUT)        :: w, x
-END SUBROUTINE GAUHER
-!
-END INTERFACE
-!
-END MODULE MODI_LIMA_FUNCTIONS
-!
-!------------------------------------------------------------------------------
-!
+MODULE MODE_LIMA_FUNCTIONS
+  IMPLICIT NONE
+CONTAINS
 !###########################################
 FUNCTION MOMG (PALPHA,PNU,PP) RESULT (PMOMG)
 !###########################################
@@ -305,3 +251,4 @@ SUBROUTINE gauher(x,w,n)
 END SUBROUTINE gauher
 !
 !------------------------------------------------------------------------------
+END MODULE MODE_LIMA_FUNCTIONS
diff --git a/src/common/micro/lima_graupel.F90 b/src/common/micro/mode_lima_graupel.F90
similarity index 78%
rename from src/common/micro/lima_graupel.F90
rename to src/common/micro/mode_lima_graupel.F90
index 6e73522666ee21e10b06296efcd8681f5faeefe9..42dfa71fbae577e18dab94b672e7be2cb42dae02 100644
--- a/src/common/micro/lima_graupel.F90
+++ b/src/common/micro/mode_lima_graupel.F90
@@ -3,123 +3,24 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!      #################################
-       MODULE MODI_LIMA_GRAUPEL
-!      #################################
-!
-INTERFACE
-   SUBROUTINE LIMA_GRAUPEL (PTSTEP, LDCOMPUTE,                                     &
-                            PRHODREF, PPRES, PT, PKA, PDV, PCJ,                    &
-                            PRVT, PRCT, PRRT, PRIT, PRST, PRGT,                    &
-                            PCCT, PCRT, PCIT, PCST, PCGT,                          &
-                            PLBDC, PLBDR, PLBDS, PLBDG,                            &
-                            PLVFACT, PLSFACT,                                      &
-                            P_TH_WETG, P_RC_WETG, P_CC_WETG, P_RR_WETG, P_CR_WETG, &
-                            P_RI_WETG, P_CI_WETG, P_RS_WETG, P_CS_WETG, P_RG_WETG, P_CG_WETG, P_RH_WETG, &
-                            P_TH_DRYG, P_RC_DRYG, P_CC_DRYG, P_RR_DRYG, P_CR_DRYG, &
-                            P_RI_DRYG, P_CI_DRYG, P_RS_DRYG, P_CS_DRYG, P_RG_DRYG, &
-                            P_RI_HMG, P_CI_HMG, P_RG_HMG,                          &
-                            P_TH_GMLT, P_RR_GMLT, P_CR_GMLT, P_CG_GMLT,            &
-                            PA_TH, PA_RC, PA_CC, PA_RR, PA_CR,                     &
-                            PA_RI, PA_CI, PA_RS, PA_CS, PA_RG, PA_CG, PA_RH, PA_CH )
-!
-REAL,                 INTENT(IN)    :: PTSTEP 
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHODREF    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PPRES    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PT   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PKA   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PDV   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PCJ   ! 
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRVT    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRCT    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRRT    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRIT    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRST    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRGT    !
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PCCT    !
-REAL, DIMENSION(:),   INTENT(IN)    :: PCRT    !
-REAL, DIMENSION(:),   INTENT(IN)    :: PCIT    !
-REAL, DIMENSION(:),   INTENT(IN)    :: PCST    !
-REAL, DIMENSION(:),   INTENT(IN)    :: PCGT    !
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDC   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDR   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDS   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDG   ! 
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PLVFACT ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLSFACT ! 
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RC_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CC_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RR_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CR_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RI_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CI_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RS_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CS_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RG_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CG_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RH_WETG
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_DRYG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RC_DRYG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CC_DRYG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RR_DRYG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CR_DRYG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RI_DRYG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CI_DRYG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RS_DRYG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CS_DRYG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RG_DRYG
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RI_HMG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CI_HMG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RG_HMG
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_GMLT
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RR_GMLT
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CR_GMLT
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CG_GMLT
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_TH
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_RC
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_CC
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_RR
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_CR
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_RI
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_CI
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_RS
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_CS
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_RG
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_CG
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_RH
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_CH
-!
-END SUBROUTINE LIMA_GRAUPEL
-END INTERFACE
-END MODULE MODI_LIMA_GRAUPEL
-!
+MODULE MODE_LIMA_GRAUPEL
+  IMPLICIT NONE
+CONTAINS
 !     #################################################################################
-      SUBROUTINE LIMA_GRAUPEL (PTSTEP, LDCOMPUTE,                                     &
-                               PRHODREF, PPRES, PT, PKA, PDV, PCJ,                    &
-                               PRVT, PRCT, PRRT, PRIT, PRST, PRGT,                    &
-                               PCCT, PCRT, PCIT, PCST, PCGT,                          &
-                               PLBDC, PLBDR, PLBDS, PLBDG,                            &
-                               PLVFACT, PLSFACT,                                      &
-                               P_TH_WETG, P_RC_WETG, P_CC_WETG, P_RR_WETG, P_CR_WETG, &
-                               P_RI_WETG, P_CI_WETG, P_RS_WETG, P_CS_WETG, P_RG_WETG, P_CG_WETG, P_RH_WETG, &
-                               P_TH_DRYG, P_RC_DRYG, P_CC_DRYG, P_RR_DRYG, P_CR_DRYG, &
-                               P_RI_DRYG, P_CI_DRYG, P_RS_DRYG, P_CS_DRYG, P_RG_DRYG, &
-                               P_RI_HMG, P_CI_HMG, P_RG_HMG,                          &
-                               P_TH_GMLT, P_RR_GMLT, P_CR_GMLT, P_CG_GMLT,            &
-                               PA_TH, PA_RC, PA_CC, PA_RR, PA_CR,                     &
-                               PA_RI, PA_CI, PA_RS, PA_CS, PA_RG, PA_CG, PA_RH, PA_CH )
+  SUBROUTINE LIMA_GRAUPEL (PTSTEP, LDCOMPUTE,                                     &
+                           PRHODREF, PPRES, PT, PKA, PDV, PCJ,                    &
+                           PRVT, PRCT, PRRT, PRIT, PRST, PRGT,                    &
+                           PCCT, PCRT, PCIT, PCST, PCGT,                          &
+                           PLBDC, PLBDR, PLBDS, PLBDG,                            &
+                           PLVFACT, PLSFACT,                                      &
+                           P_TH_WETG, P_RC_WETG, P_CC_WETG, P_RR_WETG, P_CR_WETG, &
+                           P_RI_WETG, P_CI_WETG, P_RS_WETG, P_CS_WETG, P_RG_WETG, P_CG_WETG, P_RH_WETG, &
+                           P_TH_DRYG, P_RC_DRYG, P_CC_DRYG, P_RR_DRYG, P_CR_DRYG, &
+                           P_RI_DRYG, P_CI_DRYG, P_RS_DRYG, P_CS_DRYG, P_RG_DRYG, &
+                           P_RI_HMG, P_CI_HMG, P_RG_HMG,                          &
+                           P_TH_GMLT, P_RR_GMLT, P_CR_GMLT, P_CG_GMLT,            &
+                           PA_TH, PA_RC, PA_CC, PA_RR, PA_CR,                     &
+                           PA_RI, PA_CI, PA_RS, PA_CS, PA_RG, PA_CG, PA_RH, PA_CH )
 !     #################################################################################
 !
 !!    PURPOSE
@@ -668,3 +569,4 @@ CONTAINS
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_GRAUPEL
+END MODULE MODE_LIMA_GRAUPEL
diff --git a/src/common/micro/lima_graupel_deposition.F90 b/src/common/micro/mode_lima_graupel_deposition.F90
similarity index 65%
rename from src/common/micro/lima_graupel_deposition.F90
rename to src/common/micro/mode_lima_graupel_deposition.F90
index 83b28e3d202d33d6339b48fd0d81b7f5b79cdc5b..14e970084e17abc54a598dd2720b5e1e84156e84 100644
--- a/src/common/micro/lima_graupel_deposition.F90
+++ b/src/common/micro/mode_lima_graupel_deposition.F90
@@ -3,37 +3,13 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-------------------------------------------------------------------------------
-!      #################################
-       MODULE MODI_LIMA_GRAUPEL_DEPOSITION
-!      #################################
-!
-INTERFACE
-   SUBROUTINE LIMA_GRAUPEL_DEPOSITION (LDCOMPUTE, PRHODREF,                        &
-                                       PRGT, PCGT, PSSI, PLBDG, PAI, PCJ, PLSFACT, &
-                                       P_TH_DEPG, P_RG_DEPG                        )
-!
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHODREF ! 
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRGT     ! graupel mr
-REAL, DIMENSION(:),   INTENT(IN)    :: PCGT     ! graupel conc
-REAL, DIMENSION(:),   INTENT(IN)    :: PSSI     ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDG    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PAI      ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PCJ      ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLSFACT  ! 
-!
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_TH_DEPG
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RG_DEPG
-!!
-END SUBROUTINE LIMA_GRAUPEL_DEPOSITION
-END INTERFACE
-END MODULE MODI_LIMA_GRAUPEL_DEPOSITION
-!
+MODULE MODE_LIMA_GRAUPEL_DEPOSITION
+  IMPLICIT NONE
+CONTAINS
 !     ###########################################################################
-      SUBROUTINE LIMA_GRAUPEL_DEPOSITION (LDCOMPUTE, PRHODREF,                        &
-                                          PRGT, PCGT, PSSI, PLBDG, PAI, PCJ, PLSFACT, &
-                                          P_TH_DEPG, P_RG_DEPG                        )
+  SUBROUTINE LIMA_GRAUPEL_DEPOSITION (LDCOMPUTE, PRHODREF,                        &
+                                      PRGT, PCGT, PSSI, PLBDG, PAI, PCJ, PLSFACT, &
+                                      P_TH_DEPG, P_RG_DEPG                        )
 !     ###########################################################################
 !
 !!    PURPOSE
@@ -98,3 +74,4 @@ END WHERE
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_GRAUPEL_DEPOSITION
+END MODULE MODE_LIMA_GRAUPEL_DEPOSITION
diff --git a/src/common/micro/lima_hail.F90 b/src/common/micro/mode_lima_hail.F90
similarity index 78%
rename from src/common/micro/lima_hail.F90
rename to src/common/micro/mode_lima_hail.F90
index 66fe11b3ae5f50236e862dc58ebee8a78ba84487..4d1fef9038708a7578e9491e8cccc2b215d2fb65 100644
--- a/src/common/micro/lima_hail.F90
+++ b/src/common/micro/mode_lima_hail.F90
@@ -3,110 +3,22 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!      #################################
-       MODULE MODI_LIMA_HAIL
-!      #################################
-!
-INTERFACE
-   SUBROUTINE LIMA_HAIL (PTSTEP, LDCOMPUTE,                                     &
-                         PRHODREF, PPRES, PT, PKA, PDV, PCJ,                    &
-                         PRVT, PRCT, PRRT, PRIT, PRST, PRGT, PRHT,              &
-                         PCCT, PCRT, PCIT, PCST, PCGT, PCHT,                    &
-                         PLBDC, PLBDR, PLBDS, PLBDG, PLBDH,                     &
-                         PLVFACT, PLSFACT,                                      &
-                         P_TH_WETH, P_RC_WETH, P_CC_WETH, P_RR_WETH, P_CR_WETH, &
-                         P_RI_WETH, P_CI_WETH, P_RS_WETH, P_CS_WETH, P_RG_WETH, P_CG_WETH, P_RH_WETH, &
-                         P_RG_COHG, P_CG_COHG,                                  &
-                         P_TH_HMLT, P_RR_HMLT, P_CR_HMLT, P_CH_HMLT,            &
-                         PA_TH, PA_RC, PA_CC, PA_RR, PA_CR,                     &
-                         PA_RI, PA_CI, PA_RS, PA_CS, PA_RG, PA_CG, PA_RH, PA_CH )
-!
-REAL,                 INTENT(IN)    :: PTSTEP 
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHODREF    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PPRES    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PT   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PKA   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PDV   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PCJ   ! 
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRVT    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRCT    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRRT    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRIT    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRST    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRGT    !
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHT    !
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PCCT    !
-REAL, DIMENSION(:),   INTENT(IN)    :: PCRT    !
-REAL, DIMENSION(:),   INTENT(IN)    :: PCIT    !
-REAL, DIMENSION(:),   INTENT(IN)    :: PCST    !
-REAL, DIMENSION(:),   INTENT(IN)    :: PCGT    !
-REAL, DIMENSION(:),   INTENT(IN)    :: PCHT    !
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDC   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDR   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDS   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDG   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDH   ! 
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PLVFACT ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLSFACT ! 
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RC_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CC_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RR_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CR_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RI_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CI_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RS_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CS_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RG_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CG_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RH_WETH
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RG_COHG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CG_COHG
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_HMLT
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RR_HMLT
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CR_HMLT
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CH_HMLT
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_TH
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_RC
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_CC
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_RR
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_CR
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_RI
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_CI
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_RS
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_CS
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_RG
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_CG
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_RH
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_CH
-!
-END SUBROUTINE LIMA_HAIL
-END INTERFACE
-END MODULE MODI_LIMA_HAIL
-!
+MODULE MODE_LIMA_HAIL
+  IMPLICIT NONE
+CONTAINS
 !     #################################################################################
-      SUBROUTINE LIMA_HAIL (PTSTEP, LDCOMPUTE,                                     &
-                            PRHODREF, PPRES, PT, PKA, PDV, PCJ,                    &
-                            PRVT, PRCT, PRRT, PRIT, PRST, PRGT, PRHT,              &
-                            PCCT, PCRT, PCIT, PCST, PCGT, PCHT,                    &
-                            PLBDC, PLBDR, PLBDS, PLBDG, PLBDH,                     &
-                            PLVFACT, PLSFACT,                                      &
-                            P_TH_WETH, P_RC_WETH, P_CC_WETH, P_RR_WETH, P_CR_WETH, &
-                            P_RI_WETH, P_CI_WETH, P_RS_WETH, P_CS_WETH, P_RG_WETH, P_CG_WETH, P_RH_WETH, &
-                            P_RG_COHG, P_CG_COHG,                                  &
-                            P_TH_HMLT, P_RR_HMLT, P_CR_HMLT, P_CH_HMLT,            &
-                            PA_TH, PA_RC, PA_CC, PA_RR, PA_CR,                     &
-                            PA_RI, PA_CI, PA_RS, PA_CS, PA_RG, PA_CG, PA_RH, PA_CH )
+  SUBROUTINE LIMA_HAIL (PTSTEP, LDCOMPUTE,                                     &
+                        PRHODREF, PPRES, PT, PKA, PDV, PCJ,                    &
+                        PRVT, PRCT, PRRT, PRIT, PRST, PRGT, PRHT,              &
+                        PCCT, PCRT, PCIT, PCST, PCGT, PCHT,                    &
+                        PLBDC, PLBDR, PLBDS, PLBDG, PLBDH,                     &
+                        PLVFACT, PLSFACT,                                      &
+                        P_TH_WETH, P_RC_WETH, P_CC_WETH, P_RR_WETH, P_CR_WETH, &
+                        P_RI_WETH, P_CI_WETH, P_RS_WETH, P_CS_WETH, P_RG_WETH, P_CG_WETH, P_RH_WETH, &
+                        P_RG_COHG, P_CG_COHG,                                  &
+                        P_TH_HMLT, P_RR_HMLT, P_CR_HMLT, P_CH_HMLT,            &
+                        PA_TH, PA_RC, PA_CC, PA_RR, PA_CR,                     &
+                        PA_RI, PA_CI, PA_RS, PA_CS, PA_RG, PA_CG, PA_RH, PA_CH )
 !     #################################################################################
 !
 !!    PURPOSE
@@ -574,3 +486,4 @@ CONTAINS
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_HAIL
+END MODULE MODE_LIMA_HAIL
diff --git a/src/common/micro/lima_hail_deposition.F90 b/src/common/micro/mode_lima_hail_deposition.F90
similarity index 65%
rename from src/common/micro/lima_hail_deposition.F90
rename to src/common/micro/mode_lima_hail_deposition.F90
index 1b411138fdfc344c7ab8cdc4043bc37e737baa2e..50eae03d08804182d5da09f0eefcf8fc30bed701 100644
--- a/src/common/micro/lima_hail_deposition.F90
+++ b/src/common/micro/mode_lima_hail_deposition.F90
@@ -3,37 +3,13 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-------------------------------------------------------------------------------
-!      #################################
-       MODULE MODI_LIMA_HAIL_DEPOSITION
-!      #################################
-!
-INTERFACE
-   SUBROUTINE LIMA_HAIL_DEPOSITION (LDCOMPUTE, PRHODREF,                        &
-                                    PRHT, PCHT, PSSI, PLBDH, PAI, PCJ, PLSFACT, &
-                                    P_TH_DEPH, P_RH_DEPH                        )
-!
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHODREF ! 
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHT     ! hail mr
-REAL, DIMENSION(:),   INTENT(IN)    :: PCHT     ! hail conc
-REAL, DIMENSION(:),   INTENT(IN)    :: PSSI     ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDH    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PAI      ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PCJ      ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLSFACT  ! 
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_DEPH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RH_DEPH
-!!
-END SUBROUTINE LIMA_HAIL_DEPOSITION
-END INTERFACE
-END MODULE MODI_LIMA_HAIL_DEPOSITION
-!
+MODULE MODE_LIMA_HAIL_DEPOSITION
+  IMPLICIT NONE
+CONTAINS
 !     ###########################################################################
-      SUBROUTINE LIMA_HAIL_DEPOSITION (LDCOMPUTE, PRHODREF,                        &
-                                       PRHT, PCHT, PSSI, PLBDH, PAI, PCJ, PLSFACT, &
-                                       P_TH_DEPH, P_RH_DEPH                        )
+  SUBROUTINE LIMA_HAIL_DEPOSITION (LDCOMPUTE, PRHODREF,                        &
+                                   PRHT, PCHT, PSSI, PLBDH, PAI, PCJ, PLSFACT, &
+                                   P_TH_DEPH, P_RH_DEPH                        )
 !     ###########################################################################
 !
 !!    PURPOSE
@@ -98,3 +74,4 @@ END WHERE
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_HAIL_DEPOSITION
+END MODULE MODE_LIMA_HAIL_DEPOSITION
diff --git a/src/common/micro/lima_ice_aggregation_snow.F90 b/src/common/micro/mode_lima_ice_aggregation_snow.F90
similarity index 72%
rename from src/common/micro/lima_ice_aggregation_snow.F90
rename to src/common/micro/mode_lima_ice_aggregation_snow.F90
index 26b23005738fe4202944cb83e51d634d403aeede..03f4c10b228955877104f014612422e0374ce9d2 100644
--- a/src/common/micro/lima_ice_aggregation_snow.F90
+++ b/src/common/micro/mode_lima_ice_aggregation_snow.F90
@@ -3,40 +3,14 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-------------------------------------------------------------------------------
-!      #################################
-       MODULE MODI_LIMA_ICE_AGGREGATION_SNOW
-!      #################################
-!
-INTERFACE
-   SUBROUTINE LIMA_ICE_AGGREGATION_SNOW (LDCOMPUTE,                            &
-                                         PT, PRHODREF,                         &
-                                         PRIT, PRST, PCIT, PCST, PLBDI, PLBDS, &
-                                         P_RI_AGGS, P_CI_AGGS                  )
-!
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PT
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHODREF
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRIT
-REAL, DIMENSION(:),   INTENT(IN)    :: PRST
-REAL, DIMENSION(:),   INTENT(IN)    :: PCIT
-REAL, DIMENSION(:),   INTENT(IN)    :: PCST
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDI 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDS 
-!
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RI_AGGS
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_CI_AGGS
-!
-END SUBROUTINE LIMA_ICE_AGGREGATION_SNOW
-END INTERFACE
-END MODULE MODI_LIMA_ICE_AGGREGATION_SNOW
-!
+MODULE MODE_LIMA_ICE_AGGREGATION_SNOW
+  IMPLICIT NONE
+CONTAINS
 !     #######################################################################
-      SUBROUTINE LIMA_ICE_AGGREGATION_SNOW (LDCOMPUTE,                            &
-                                            PT, PRHODREF,                         &
-                                            PRIT, PRST, PCIT, PCST, PLBDI, PLBDS, &
-                                            P_RI_AGGS, P_CI_AGGS                  )
+  SUBROUTINE LIMA_ICE_AGGREGATION_SNOW (LDCOMPUTE,                            &
+                                        PT, PRHODREF,                         &
+                                        PRIT, PRST, PCIT, PCST, PLBDI, PLBDS, &
+                                        P_RI_AGGS, P_CI_AGGS                  )
 !     #######################################################################
 !
 !!    PURPOSE
@@ -134,3 +108,4 @@ END IF
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_ICE_AGGREGATION_SNOW
+END MODULE MODE_LIMA_ICE_AGGREGATION_SNOW
diff --git a/src/common/micro/lima_ice_deposition.F90 b/src/common/micro/mode_lima_ice_deposition.F90
similarity index 73%
rename from src/common/micro/lima_ice_deposition.F90
rename to src/common/micro/mode_lima_ice_deposition.F90
index a0d51a533e82cb3b54e469f07c539392d73b5514..ed7540ca238a6898c0c9c4a61ac52eaad60d2035 100644
--- a/src/common/micro/lima_ice_deposition.F90
+++ b/src/common/micro/mode_lima_ice_deposition.F90
@@ -3,48 +3,15 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-------------------------------------------------------------------------------
-!      #####################
-       MODULE MODI_LIMA_ICE_DEPOSITION
-!      #####################
-!
-INTERFACE
-      SUBROUTINE LIMA_ICE_DEPOSITION (PTSTEP, LDCOMPUTE,                     &
-                                      PRHODREF, PT, PSSI, PAI, PCJ, PLSFACT, &
-                                      PRIT, PCIT, PLBDI,                     &
-                                      P_TH_DEPI, P_RI_DEPI,                  &
-                                      P_RI_CNVS, P_CI_CNVS                   )
-!
-REAL,                 INTENT(IN)    :: PTSTEP
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHODREF! Reference density
-REAL, DIMENSION(:),   INTENT(IN)    :: PT  ! abs. pressure at time t
-REAL, DIMENSION(:),   INTENT(IN)    :: PSSI  ! abs. pressure at time t
-REAL, DIMENSION(:),   INTENT(IN)    :: PAI  ! abs. pressure at time t
-REAL, DIMENSION(:),   INTENT(IN)    :: PCJ  ! abs. pressure at time t
-REAL, DIMENSION(:),   INTENT(IN)    :: PLSFACT  ! abs. pressure at time t
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRIT    ! Cloud ice m.r. at t 
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PCIT    ! Ice crystal C. at t
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDI    ! Graupel m.r. at t 
-!
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_TH_DEPI
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RI_DEPI
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RI_CNVS
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_CI_CNVS
-!
-END SUBROUTINE LIMA_ICE_DEPOSITION
-END INTERFACE
-END MODULE MODI_LIMA_ICE_DEPOSITION
-!
+MODULE MODE_LIMA_ICE_DEPOSITION
+  IMPLICIT NONE
+CONTAINS
 !     ##########################################################################
-SUBROUTINE LIMA_ICE_DEPOSITION (PTSTEP, LDCOMPUTE,                        &
-                                PRHODREF, PT,  PSSI, PAI, PCJ, PLSFACT,   &
-                                PRIT, PCIT, PLBDI,                        &
-                                P_TH_DEPI, P_RI_DEPI,                     &
-                                P_RI_CNVS, P_CI_CNVS                      )
+  SUBROUTINE LIMA_ICE_DEPOSITION (PTSTEP, LDCOMPUTE,                        &
+                                  PRHODREF, PT,  PSSI, PAI, PCJ, PLSFACT,   &
+                                  PRIT, PCIT, PLBDI,                        &
+                                  P_TH_DEPI, P_RI_DEPI,                     &
+                                  P_RI_CNVS, P_CI_CNVS                      )
 !     ##########################################################################
 !
 !!    PURPOSE
@@ -183,3 +150,4 @@ IF (NMOM_S.EQ.0) THEN
 END IF
 !
 END SUBROUTINE LIMA_ICE_DEPOSITION
+END MODULE MODE_LIMA_ICE_DEPOSITION
diff --git a/src/common/micro/lima_ice_melting.F90 b/src/common/micro/mode_lima_ice_melting.F90
similarity index 60%
rename from src/common/micro/lima_ice_melting.F90
rename to src/common/micro/mode_lima_ice_melting.F90
index a95f45044056fda9664059a03b549d2395581639..e2e7b475ec9a9c622bab7d00b003b6f4997ce240 100644
--- a/src/common/micro/lima_ice_melting.F90
+++ b/src/common/micro/mode_lima_ice_melting.F90
@@ -2,56 +2,16 @@
 !MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt  
 !MNH_LIC for details. version 1.
-!      #################################
-       MODULE MODI_LIMA_ICE_MELTING
-!      #################################
-!
-INTERFACE
-      SUBROUTINE LIMA_ICE_MELTING (PTSTEP, LDCOMPUTE,                        &
-                                   PEXNREF, PPABST,                          &
-                                   PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, &
-                                   PCIT, PINT,                               &
-                                   P_TH_IMLT, P_RC_IMLT, P_CC_IMLT,          &
-                                   PB_TH, PB_RC, PB_CC, PB_RI, PB_CI, PB_IFNN)
-!
-REAL,                 INTENT(IN)    :: PTSTEP 
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PEXNREF ! Reference Exner function
-REAL, DIMENSION(:),   INTENT(IN)    :: PPABST  ! abs. pressure at time t
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PTHT    ! Theta at time t
-REAL, DIMENSION(:),   INTENT(IN)    :: PRVT    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRCT    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRRT    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRIT    ! Cloud ice m.r. at t 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRST    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRGT    ! 
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PCIT    ! Rain water C. at t
-REAL, DIMENSION(:,:), INTENT(IN)    :: PINT    ! Nucleated IFN C. at t
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_IMLT
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RC_IMLT
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CC_IMLT
-REAL, DIMENSION(:),   INTENT(INOUT) :: PB_TH
-REAL, DIMENSION(:),   INTENT(INOUT) :: PB_RC
-REAL, DIMENSION(:),   INTENT(INOUT) :: PB_CC
-REAL, DIMENSION(:),   INTENT(INOUT) :: PB_RI
-REAL, DIMENSION(:),   INTENT(INOUT) :: PB_CI
-REAL, DIMENSION(:,:), INTENT(INOUT) :: PB_IFNN
-!
-END SUBROUTINE LIMA_ICE_MELTING
-END INTERFACE
-END MODULE MODI_LIMA_ICE_MELTING
-!
+MODULE MODE_LIMA_ICE_MELTING
+  IMPLICIT NONE
+CONTAINS
 !     ########################################################################
-      SUBROUTINE LIMA_ICE_MELTING (PTSTEP, LDCOMPUTE,                        &
-                                   PEXNREF, PPABST,                          &
-                                   PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, &
-                                   PCIT, PINT,                               &
-                                   P_TH_IMLT, P_RC_IMLT, P_CC_IMLT,          &
-                                   PB_TH, PB_RC, PB_CC, PB_RI, PB_CI, PB_IFNN)
+  SUBROUTINE LIMA_ICE_MELTING (PTSTEP, LDCOMPUTE,                        &
+                               PEXNREF, PPABST,                          &
+                               PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, &
+                               PCIT, PINT,                               &
+                               P_TH_IMLT, P_RC_IMLT, P_CC_IMLT,          &
+                               PB_TH, PB_RC, PB_CC, PB_RI, PB_CI, PB_IFNN)
 !     ########################################################################
 !
 !!    PURPOSE
@@ -162,3 +122,4 @@ ENDDO
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_ICE_MELTING
+END MODULE MODE_LIMA_ICE_MELTING
diff --git a/src/common/micro/lima_init_ccn_activation_spectrum.F90 b/src/common/micro/mode_lima_init_ccn_activation_spectrum.F90
similarity index 93%
rename from src/common/micro/lima_init_ccn_activation_spectrum.F90
rename to src/common/micro/mode_lima_init_ccn_activation_spectrum.F90
index 4403f97025e2c04b8f823efd603eec3accbb28ef..c11b9222e8a25524ee32b40d0a16b49c0abd7077 100644
--- a/src/common/micro/lima_init_ccn_activation_spectrum.F90
+++ b/src/common/micro/mode_lima_init_ccn_activation_spectrum.F90
@@ -3,27 +3,11 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-------------------------------------------------------------------------------
-!      ####################
-       MODULE MODI_LIMA_INIT_CCN_ACTIVATION_SPECTRUM
-INTERFACE
-   SUBROUTINE LIMA_INIT_CCN_ACTIVATION_SPECTRUM (CTYPE_CCN,XD,XSIGMA,XLIMIT_FACTOR,XK,XMU,XBETA,XKAPPA)
-     !
-     CHARACTER(LEN=*), INTENT(IN)  :: CTYPE_CCN         ! Aerosol type
-     REAL,             INTENT(IN)  :: XD            ! Aerosol PSD modal diameter          
-     REAL,             INTENT(IN)  :: XSIGMA        ! Aerosol PSD width
-     REAL,             INTENT(OUT) :: XLIMIT_FACTOR ! C/Naer
-     REAL,             INTENT(OUT) :: XK            ! k
-     REAL,             INTENT(OUT) :: XMU           ! mu
-     REAL,             INTENT(OUT) :: XBETA         ! beta
-     REAL,             INTENT(OUT) :: XKAPPA        ! kappa
-!
-   END SUBROUTINE LIMA_INIT_CCN_ACTIVATION_SPECTRUM
-END INTERFACE
-END MODULE MODI_LIMA_INIT_CCN_ACTIVATION_SPECTRUM
-!      ####################
-!
+MODULE MODE_LIMA_INIT_CCN_ACTIVATION_SPECTRUM
+  IMPLICIT NONE
+CONTAINS
 !     #############################################################
-      SUBROUTINE LIMA_INIT_CCN_ACTIVATION_SPECTRUM (CTYPE_CCN,XD,XSIGMA,XLIMIT_FACTOR,XK,XMU,XBETA,XKAPPA)
+  SUBROUTINE LIMA_INIT_CCN_ACTIVATION_SPECTRUM (CTYPE_CCN,XD,XSIGMA,XLIMIT_FACTOR,XK,XMU,XBETA,XKAPPA)
 !     #############################################################
 
 !!
@@ -456,3 +440,4 @@ END FUNCTION DSDD
 !
 !------------------------------------------------------------------------------
 END SUBROUTINE LIMA_INIT_CCN_ACTIVATION_SPECTRUM
+END MODULE MODE_LIMA_INIT_CCN_ACTIVATION_SPECTRUM
diff --git a/src/common/micro/lima_inst_procs.F90 b/src/common/micro/mode_lima_inst_procs.F90
similarity index 50%
rename from src/common/micro/lima_inst_procs.F90
rename to src/common/micro/mode_lima_inst_procs.F90
index 3de0152dbbc9e78a2548cbf4f47b2eaede217a8a..0deeb85fa8652fa12103407a5fc1b0ad2b8a7712 100644
--- a/src/common/micro/lima_inst_procs.F90
+++ b/src/common/micro/mode_lima_inst_procs.F90
@@ -3,87 +3,22 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-------------------------------------------------------------------------------
-!      ###############################
-       MODULE MODI_LIMA_INST_PROCS
-!      ###############################
-!
-INTERFACE
-   SUBROUTINE LIMA_INST_PROCS (PTSTEP, LDCOMPUTE,                        &
-                               PEXNREF, PPABST,                          &
-                               PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, &
-                               PCCT, PCRT, PCIT,                         &
-                               PINT,                                     &
-                               P_CR_BRKU,                                & ! spontaneous break up of drops (BRKU) : Nr
-                               P_TH_HONR, P_RR_HONR, P_CR_HONR,          & ! rain drops homogeneous freezing (HONR) : rr, Nr, rg=-rr, th
-                               P_TH_IMLT, P_RC_IMLT, P_CC_IMLT,          & ! ice melting (IMLT) : rc, Nc, ri=-rc, Ni=-Nc, th, IFNF, IFNA
-                               PB_TH, PB_RV, PB_RC, PB_RR, PB_RI, PB_RG, &
-                               PB_CC, PB_CR, PB_CI,                      &
-                               PB_IFNN,                                  &
-                               PCF1D, PIF1D, PPF1D                       )
-!
-REAL,                 INTENT(IN)    :: PTSTEP     ! Time step
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PEXNREF    ! Reference Exner function
-REAL, DIMENSION(:),   INTENT(IN)    :: PPABST     ! abs. pressure at time t
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PTHT       ! Theta at t 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRVT       ! Water vapor m.r. at t 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRCT       ! Cloud water m.r. at t 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRRT       ! Rain water m.r. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PRIT       ! Rain water m.r. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PRST       ! Rain water m.r. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PRGT       ! Rain water m.r. at t
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PCCT       ! Cloud water conc. at t 
-REAL, DIMENSION(:),   INTENT(IN)    :: PCRT       ! Rain water conc. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PCIT       ! Prinstine ice conc. at t
-!
-REAL, DIMENSION(:,:), INTENT(IN)    :: PINT       ! IFN C. activated at t
-!
-REAL, DIMENSION(:)  , INTENT(INOUT) :: P_CR_BRKU  ! Concentration change (#/kg)
-REAL, DIMENSION(:)  , INTENT(INOUT) :: P_TH_HONR  ! 
-REAL, DIMENSION(:)  , INTENT(INOUT) :: P_RR_HONR  ! mr change (kg/kg)
-REAL, DIMENSION(:)  , INTENT(INOUT) :: P_CR_HONR  ! Concentration change (#/kg)
-REAL, DIMENSION(:)  , INTENT(INOUT) :: P_TH_IMLT  ! 
-REAL, DIMENSION(:)  , INTENT(INOUT) :: P_RC_IMLT  ! mr change (kg/kg)
-REAL, DIMENSION(:)  , INTENT(INOUT) :: P_CC_IMLT  ! Concentration change (#/kg)
-!
-REAL, DIMENSION(:)  , INTENT(INOUT) :: PB_TH      ! Cumulated theta change
-REAL, DIMENSION(:)  , INTENT(INOUT) :: PB_RV      ! Cumulated mr change (kg/kg)
-REAL, DIMENSION(:)  , INTENT(INOUT) :: PB_RC      ! Cumulated mr change (kg/kg)
-REAL, DIMENSION(:)  , INTENT(INOUT) :: PB_RR      ! Cumulated mr change (kg/kg)
-REAL, DIMENSION(:)  , INTENT(INOUT) :: PB_RI      ! Cumulated mr change (kg/kg)
-REAL, DIMENSION(:)  , INTENT(INOUT) :: PB_RG      ! Cumulated mr change (kg/kg)
-!
-REAL, DIMENSION(:)  , INTENT(INOUT) :: PB_CC      ! Cumulated concentration change (#/kg)
-REAL, DIMENSION(:)  , INTENT(INOUT) :: PB_CR      ! Cumulated concentration change (#/kg)
-REAL, DIMENSION(:)  , INTENT(INOUT) :: PB_CI      ! Cumulated concentration change (#/kg)
-!
-REAL, DIMENSION(:,:), INTENT(INOUT) :: PB_IFNN    ! Cumulated concentration change (#/kg)
-!
-REAL, DIMENSION(:)  , INTENT(INOUT) :: PCF1D      ! Liquid cloud fraction
-REAL, DIMENSION(:)  , INTENT(INOUT) :: PIF1D      ! Ice cloud fraction
-REAL, DIMENSION(:)  , INTENT(INOUT) :: PPF1D      ! Precipitation fraction
-!
-   END SUBROUTINE LIMA_INST_PROCS
-END INTERFACE
-END MODULE MODI_LIMA_INST_PROCS
-!
-!
+MODULE MODE_LIMA_INST_PROCS
+  IMPLICIT NONE
+CONTAINS
 !     ###########################################################################
-SUBROUTINE LIMA_INST_PROCS (PTSTEP, LDCOMPUTE,                                  &
-                            PEXNREF, PPABST,                                    &
-                            PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT,           &
-                            PCCT, PCRT, PCIT,                                   &
-                            PINT,                                               &
-                            P_CR_BRKU,                                          & ! spontaneous break up of drops (BRKU) : Nr
-                            P_TH_HONR, P_RR_HONR, P_CR_HONR,                    & ! rain drops homogeneous freezing (HONR) : rr, Nr, rg=-rr, th
-                            P_TH_IMLT, P_RC_IMLT, P_CC_IMLT,                    & ! ice melting (IMLT) : rc, Nc, ri=-rc, Ni=-Nc, th, IFNF, IFNA
-                            PB_TH, PB_RV, PB_RC, PB_RR, PB_RI, PB_RG,           &
-                            PB_CC, PB_CR, PB_CI,                                &
-                            PB_IFNN,                                            &
-                            PCF1D, PIF1D, PPF1D                                 )
+  SUBROUTINE LIMA_INST_PROCS (PTSTEP, LDCOMPUTE,                                  &
+                              PEXNREF, PPABST,                                    &
+                              PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT,           &
+                              PCCT, PCRT, PCIT,                                   &
+                              PINT,                                               &
+                              P_CR_BRKU,                                          & ! spontaneous break up of drops (BRKU) : Nr
+                              P_TH_HONR, P_RR_HONR, P_CR_HONR,                    & ! rain drops homogeneous freezing (HONR) : rr, Nr, rg=-rr, th
+                              P_TH_IMLT, P_RC_IMLT, P_CC_IMLT,                    & ! ice melting (IMLT) : rc, Nc, ri=-rc, Ni=-Nc, th, IFNF, IFNA
+                              PB_TH, PB_RV, PB_RC, PB_RR, PB_RI, PB_RG,           &
+                              PB_CC, PB_CR, PB_CI,                                &
+                              PB_IFNN,                                            &
+                              PCF1D, PIF1D, PPF1D                                 )
 !     ###########################################################################
 !
 !!    PURPOSE
@@ -104,9 +39,9 @@ SUBROUTINE LIMA_INST_PROCS (PTSTEP, LDCOMPUTE,
 !
 USE MODD_PARAM_LIMA, ONLY : NMOM_C, NMOM_R, NMOM_I, NMOM_G
 !
-USE MODI_LIMA_DROPS_BREAK_UP
-USE MODI_LIMA_DROPS_HOM_FREEZING
-USE MODI_LIMA_ICE_MELTING
+USE MODE_LIMA_DROPS_BREAK_UP, ONLY: LIMA_DROPS_BREAK_UP
+USE MODE_LIMA_DROPS_HOM_FREEZING, ONLY: LIMA_DROPS_HOM_FREEZING
+USE MODE_LIMA_ICE_MELTING, ONLY: LIMA_ICE_MELTING
 
 IMPLICIT NONE
 
@@ -195,3 +130,4 @@ END IF
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_INST_PROCS
+END MODULE MODE_LIMA_INST_PROCS
diff --git a/src/common/micro/lima_meyers_nucleation.F90 b/src/common/micro/mode_lima_meyers_nucleation.F90
similarity index 78%
rename from src/common/micro/lima_meyers_nucleation.F90
rename to src/common/micro/mode_lima_meyers_nucleation.F90
index f85e3274037252e496fbf1d48a17fdfdb50628a7..989c3562cbcac6400404794c726c1c6f7237fe2d 100644
--- a/src/common/micro/lima_meyers_nucleation.F90
+++ b/src/common/micro/mode_lima_meyers_nucleation.F90
@@ -3,60 +3,17 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!      ##################################
-       MODULE MODI_LIMA_MEYERS_NUCLEATION
-!      ##################################
-!
-INTERFACE
-   SUBROUTINE LIMA_MEYERS_NUCLEATION (CST, PTSTEP,                                &
-                                      PRHODREF, PEXNREF, PPABST,                  &
-                                      PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT,   &
-                                      PCCT, PCIT, PINT,                           &
-                                      P_TH_HIND, P_RI_HIND, P_CI_HIND,            &
-                                      P_TH_HINC, P_RC_HINC, P_CC_HINC,            &
-                                      PICEFR                                      )
-USE MODD_CST,            ONLY: CST_t
-!
-TYPE(CST_t),              INTENT(IN)    :: CST
-REAL,                     INTENT(IN)    :: PTSTEP
-!
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRHODREF! Reference density
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PEXNREF ! Reference Exner function
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PPABST  ! abs. pressure at time t
-!
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PTHT    ! Theta at time t
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRVT    ! Water vapor m.r. at t 
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRCT    ! Cloud water m.r. at t 
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRRT    ! Rain water m.r. at t 
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRIT    ! Cloud ice m.r. at t 
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRST    ! Snow/aggregate m.r. at t 
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRGT    ! Graupel m.r. at t 
-!
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PCCT    ! Cloud water C. at t
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PCIT    ! Ice crystal C. source
-REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PINT    ! Activated ice nuclei C.
-!
-REAL, DIMENSION(:,:,:),   INTENT(OUT)   :: P_TH_HIND
-REAL, DIMENSION(:,:,:),   INTENT(OUT)   :: P_RI_HIND
-REAL, DIMENSION(:,:,:),   INTENT(OUT)   :: P_CI_HIND
-REAL, DIMENSION(:,:,:),   INTENT(OUT)   :: P_TH_HINC
-REAL, DIMENSION(:,:,:),   INTENT(OUT)   :: P_RC_HINC
-REAL, DIMENSION(:,:,:),   INTENT(OUT)   :: P_CC_HINC
-!
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PICEFR
-!
-END SUBROUTINE LIMA_MEYERS_NUCLEATION
-END INTERFACE
-END MODULE MODI_LIMA_MEYERS_NUCLEATION
-!
+MODULE MODE_LIMA_MEYERS_NUCLEATION
+  IMPLICIT NONE
+CONTAINS
 !     #############################################################################
-   SUBROUTINE LIMA_MEYERS_NUCLEATION (CST, PTSTEP,                                &
-                                      PRHODREF, PEXNREF, PPABST,                  &
-                                      PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT,   &
-                                      PCCT, PCIT, PINT,                           &
-                                      P_TH_HIND, P_RI_HIND, P_CI_HIND,            &
-                                      P_TH_HINC, P_RC_HINC, P_CC_HINC,            &
-                                      PICEFR                                      )
+  SUBROUTINE LIMA_MEYERS_NUCLEATION (CST, PTSTEP,                                &
+                                     PRHODREF, PEXNREF, PPABST,                  &
+                                     PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT,   &
+                                     PCCT, PCIT, PINT,                           &
+                                     P_TH_HIND, P_RI_HIND, P_CI_HIND,            &
+                                     P_TH_HINC, P_RC_HINC, P_CC_HINC,            &
+                                     PICEFR                                      )
 !     #############################################################################
 !!
 !!    PURPOSE
@@ -348,3 +305,4 @@ END IF
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_MEYERS_NUCLEATION
+END MODULE MODE_LIMA_MEYERS_NUCLEATION
diff --git a/src/common/micro/lima_nucleation_procs.F90 b/src/common/micro/mode_lima_nucleation_procs.F90
similarity index 82%
rename from src/common/micro/lima_nucleation_procs.F90
rename to src/common/micro/mode_lima_nucleation_procs.F90
index ae5ec06ce838568ad69420bf481370d1c5b1cdab..502d8a3c52e2dd9f4b57e27a66b7051cf96a1244 100644
--- a/src/common/micro/lima_nucleation_procs.F90
+++ b/src/common/micro/mode_lima_nucleation_procs.F90
@@ -3,76 +3,17 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-------------------------------------------------------------------------------
-!      ###############################
-       MODULE MODI_LIMA_NUCLEATION_PROCS
-!      ###############################
-!
-INTERFACE
-   SUBROUTINE LIMA_NUCLEATION_PROCS (D, CST, BUCONF, TBUDGETS, KBUDGETS,             &
-                                     PTSTEP, PRHODJ,                                 &
-                                     PRHODREF, PEXNREF, PPABST, PT, PDTHRAD, PW_NU,  &
-                                     PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, PRHT, &
-                                     PCCT, PCRT, PCIT,                               &
-                                     PNFT, PNAT, PIFT, PINT, PNIT, PNHT,             &
-                                     PCLDFR, PICEFR, PPRCFR                          )
-!
-USE MODD_CST,            ONLY: CST_t
-USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t
-USE MODD_BUDGET,   ONLY: TBUDGETDATA, TBUDGETCONF_t 
-!USE MODD_IO, ONLY: TFILEDATA
-!
-TYPE(DIMPHYEX_t),         INTENT(IN)    :: D
-TYPE(CST_t),              INTENT(IN)    :: CST
-TYPE(TBUDGETCONF_t),      INTENT(IN)    :: BUCONF
-TYPE(TBUDGETDATA), DIMENSION(KBUDGETS), INTENT(INOUT) :: TBUDGETS
-INTEGER, INTENT(IN) :: KBUDGETS
-!
-REAL,                     INTENT(IN)    :: PTSTEP     ! Double Time step
-!TYPE(TFILEDATA),          INTENT(IN)    :: TPFILE     ! Output file
-!
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRHODJ     ! Reference density
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRHODREF   ! Reference density
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PEXNREF    ! Reference Exner function
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PPABST     ! abs. pressure at time t
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PT         ! Temperature
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PDTHRAD    ! Radiative temperature tendency
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PW_NU      ! updraft velocity used for
-!
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PTHT       ! Theta at t 
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRVT       ! Water vapor m.r. at t 
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRCT       ! Cloud water m.r. at t 
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRRT       ! Rain water m.r. at t
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRIT       ! Pristine ice m.r. at t
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRST       ! Snow m.r. at t
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRGT       ! Graupel m.r. at t
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRHT       ! Hail m.r. at t
-!
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PCCT       ! Cloud water conc. at t 
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PCRT       ! Rain water conc. at t
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PCIT       ! Prinstine ice conc. at t
-!
-REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNFT       ! CCN C. available at t
-REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNAT       ! CCN C. activated at t
-REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PIFT       ! IFN C. available at t
-REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PINT       ! IFN C. activated at t
-REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNIT       ! Coated IFN activated at t
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PNHT       ! CCN hom freezing
-!
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PCLDFR     ! Cloud fraction
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PICEFR     ! Ice fraction
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PPRCFR     ! Precipitation fraction
-!
-END SUBROUTINE LIMA_NUCLEATION_PROCS
-END INTERFACE
-END MODULE MODI_LIMA_NUCLEATION_PROCS
+MODULE MODE_LIMA_NUCLEATION_PROCS
+  IMPLICIT NONE
+CONTAINS
 !     #############################################################################
-SUBROUTINE LIMA_NUCLEATION_PROCS (D, CST, BUCONF, TBUDGETS, KBUDGETS,             &
-                                  PTSTEP, PRHODJ,                                 &
-                                  PRHODREF, PEXNREF, PPABST, PT, PDTHRAD, PW_NU,  &
-                                  PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, PRHT, &
-                                  PCCT, PCRT, PCIT,                               &
-                                  PNFT, PNAT, PIFT, PINT, PNIT, PNHT,             &
-                                  PCLDFR, PICEFR, PPRCFR                          )
+  SUBROUTINE LIMA_NUCLEATION_PROCS (D, CST, BUCONF, TBUDGETS, KBUDGETS,             &
+                                    PTSTEP, PRHODJ,                                 &
+                                    PRHODREF, PEXNREF, PPABST, PT, PDTHRAD, PW_NU,  &
+                                    PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, PRHT, &
+                                    PCCT, PCRT, PCIT,                               &
+                                    PNFT, PNAT, PIFT, PINT, PNIT, PNHT,             &
+                                    PCLDFR, PICEFR, PPRCFR                          )
 !     #############################################################################
 !
 !!    PURPOSE
@@ -108,11 +49,11 @@ USE MODD_TURB_n,     ONLY : LSUBG_COND
 
 use mode_budget,     only: BUDGET_STORE_ADD_PHY, BUDGET_STORE_INIT_PHY, BUDGET_STORE_END_PHY
 
-USE MODI_LIMA_CCN_ACTIVATION
-USE MODI_LIMA_CCN_HOM_FREEZING
-USE MODI_LIMA_MEYERS_NUCLEATION
-USE MODI_LIMA_PHILLIPS_IFN_NUCLEATION
-USE MODE_LIMA_ICE4_NUCLEATION
+USE MODE_LIMA_CCN_ACTIVATION, ONLY: LIMA_CCN_ACTIVATION
+USE MODE_LIMA_CCN_HOM_FREEZING, ONLY: LIMA_CCN_HOM_FREEZING
+USE MODE_LIMA_MEYERS_NUCLEATION, ONLY: LIMA_MEYERS_NUCLEATION
+USE MODE_LIMA_PHILLIPS_IFN_NUCLEATION, ONLY: LIMA_PHILLIPS_IFN_NUCLEATION
+USE MODE_LIMA_ICE4_NUCLEATION, ONLY: LIMA_ICE4_NUCLEATION
 !
 !-------------------------------------------------------------------------------
 !
@@ -436,3 +377,4 @@ ENDIF
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_NUCLEATION_PROCS
+END MODULE MODE_LIMA_NUCLEATION_PROCS
diff --git a/src/common/micro/lima_phillips_ifn_nucleation.F90 b/src/common/micro/mode_lima_phillips_ifn_nucleation.F90
similarity index 84%
rename from src/common/micro/lima_phillips_ifn_nucleation.F90
rename to src/common/micro/mode_lima_phillips_ifn_nucleation.F90
index c2d7cabc30dc0f1944f81bf50f4f5de02f548951..37d4b321f11f73814c63fb5fd163bd87b9ecf614 100644
--- a/src/common/micro/lima_phillips_ifn_nucleation.F90
+++ b/src/common/micro/mode_lima_phillips_ifn_nucleation.F90
@@ -3,63 +3,17 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!      ########################################
-       MODULE MODI_LIMA_PHILLIPS_IFN_NUCLEATION
-!      ########################################
-!
-INTERFACE
-   SUBROUTINE LIMA_PHILLIPS_IFN_NUCLEATION (CST, PTSTEP,                              &
-                                            PRHODREF, PEXNREF, PPABST,                &
-                                            PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, &
-                                            PCCT, PCIT, PNAT, PIFT, PINT, PNIT,       &
-                                            P_TH_HIND, P_RI_HIND, P_CI_HIND,          &
-                                            P_TH_HINC, P_RC_HINC, P_CC_HINC,          &
-                                            PICEFR                                    )
-USE MODD_CST,            ONLY: CST_t
-!
-TYPE(CST_t),              INTENT(IN)    :: CST
-REAL,                     INTENT(IN)    :: PTSTEP 
-!
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRHODREF! Reference density
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PEXNREF ! Reference Exner function
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PPABST  ! abs. pressure at time t
-!
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PTHT    ! Theta at time t
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRVT    ! Water vapor m.r. at t 
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRCT    ! Cloud water m.r. at t 
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRRT    ! Rain water m.r. at t 
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRIT    ! Cloud ice m.r. at t 
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRST    ! Snow/aggregate m.r. at t 
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRGT    ! Graupel m.r. at t
-!
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PCCT    ! Cloud water conc. at t 
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PCIT    ! Cloud water conc. at t 
-REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNAT    ! CCN conc. used for immersion nucl.
-REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PIFT    ! Free IFN conc.
-REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PINT    ! Nucleated IFN conc.
-REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PNIT    ! Nucleated (by immersion) CCN conc.
-!
-REAL, DIMENSION(:,:,:),   INTENT(OUT)   :: P_TH_HIND
-REAL, DIMENSION(:,:,:),   INTENT(OUT)   :: P_RI_HIND
-REAL, DIMENSION(:,:,:),   INTENT(OUT)   :: P_CI_HIND
-REAL, DIMENSION(:,:,:),   INTENT(OUT)   :: P_TH_HINC
-REAL, DIMENSION(:,:,:),   INTENT(OUT)   :: P_RC_HINC
-REAL, DIMENSION(:,:,:),   INTENT(OUT)   :: P_CC_HINC
-!
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PICEFR
-!
-END SUBROUTINE LIMA_PHILLIPS_IFN_NUCLEATION
-END INTERFACE
-END MODULE MODI_LIMA_PHILLIPS_IFN_NUCLEATION
-!
+MODULE MODE_LIMA_PHILLIPS_IFN_NUCLEATION
+  IMPLICIT NONE
+CONTAINS
 !     #################################################################################
-   SUBROUTINE LIMA_PHILLIPS_IFN_NUCLEATION (CST, PTSTEP,                              &
-                                            PRHODREF, PEXNREF, PPABST,                &
-                                            PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, &
-                                            PCCT, PCIT, PNAT, PIFT, PINT, PNIT,       &
-                                            P_TH_HIND, P_RI_HIND, P_CI_HIND,          &
-                                            P_TH_HINC, P_RC_HINC, P_CC_HINC,          &
-                                            PICEFR                                    )
+  SUBROUTINE LIMA_PHILLIPS_IFN_NUCLEATION (CST, PTSTEP,                              &
+                                           PRHODREF, PEXNREF, PPABST,                &
+                                           PTHT, PRVT, PRCT, PRRT, PRIT, PRST, PRGT, &
+                                           PCCT, PCIT, PNAT, PIFT, PINT, PNIT,       &
+                                           P_TH_HIND, P_RI_HIND, P_CI_HIND,          &
+                                           P_TH_HINC, P_RC_HINC, P_CC_HINC,          &
+                                           PICEFR                                    )
 !     #################################################################################
 !!
 !!    PURPOSE
@@ -126,8 +80,8 @@ USE MODD_PARAM_LIMA_COLD, ONLY : XMNU0
 
 use mode_tools,           only: Countjv
 
-USE MODI_LIMA_PHILLIPS_INTEG
-USE MODI_LIMA_PHILLIPS_REF_SPECTRUM
+USE MODE_LIMA_PHILLIPS_INTEG, ONLY : LIMA_PHILLIPS_INTEG
+USE MODE_LIMA_PHILLIPS_REF_SPECTRUM, ONLY : LIMA_PHILLIPS_REF_SPECTRUM
 
 IMPLICIT NONE
 !
@@ -510,3 +464,4 @@ END IF ! INEGT > 0
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_PHILLIPS_IFN_NUCLEATION
+END MODULE MODE_LIMA_PHILLIPS_IFN_NUCLEATION
diff --git a/src/common/micro/lima_phillips_integ.F90 b/src/common/micro/mode_lima_phillips_integ.F90
similarity index 87%
rename from src/common/micro/lima_phillips_integ.F90
rename to src/common/micro/mode_lima_phillips_integ.F90
index 7cb098c3b4bb5d848e8d91b355a5490e477af53a..210dd08f9009aee84bcec0a9b8997d1cbe681e46 100644
--- a/src/common/micro/lima_phillips_integ.F90
+++ b/src/common/micro/mode_lima_phillips_integ.F90
@@ -1,25 +1,8 @@
-!      ###############################
-       MODULE MODI_LIMA_PHILLIPS_INTEG
-!      ###############################
-!
-INTERFACE
-      SUBROUTINE LIMA_PHILLIPS_INTEG (CST, ZZT, ZSI, ZSI0, ZSW, ZZY, Z_FRAC_ACT)
-!
-USE MODD_CST,            ONLY: CST_t
-TYPE(CST_t),              INTENT(IN)    :: CST
-REAL, DIMENSION(:),   INTENT(IN)    :: ZZT
-REAL, DIMENSION(:),   INTENT(IN)    :: ZSI
-REAL, DIMENSION(:,:), INTENT(IN)    :: ZSI0
-REAL, DIMENSION(:),   INTENT(IN)    :: ZSW
-REAL, DIMENSION(:),   INTENT(IN)    :: ZZY
-REAL, DIMENSION(:,:), INTENT(INOUT) :: Z_FRAC_ACT
-!
-END SUBROUTINE LIMA_PHILLIPS_INTEG
-END INTERFACE
-END MODULE MODI_LIMA_PHILLIPS_INTEG
-!
+MODULE MODE_LIMA_PHILLIPS_INTEG
+  IMPLICIT NONE
+CONTAINS
 !     ######################################################################
-      SUBROUTINE LIMA_PHILLIPS_INTEG (CST, ZZT, ZSI, ZSI0, ZSW, ZZY, Z_FRAC_ACT)
+  SUBROUTINE LIMA_PHILLIPS_INTEG (CST, ZZT, ZSI, ZSI0, ZSW, ZZY, Z_FRAC_ACT)
 !     ######################################################################
 !!
 !!    PURPOSE
@@ -54,7 +37,7 @@ USE MODD_CST,            ONLY: CST_t
 USE MODD_PARAM_LIMA,      ONLY : XMDIAM_IFN, XSIGMA_IFN, NSPECIE, XFRAC_REF, &
                                  XH, XAREA1, XGAMMA, XABSCISS, XWEIGHT, NDIAM,     &
                                  XT0, XDT0, XDSI0, XSW0, XTX1, XTX2
-USE MODI_LIMA_FUNCTIONS,  ONLY : DELTA, DELTA_VEC
+USE MODE_LIMA_FUNCTIONS,  ONLY : DELTA, DELTA_VEC
 USE MODI_GAMMA_INC
 !
 IMPLICIT NONE
@@ -164,3 +147,4 @@ DO JSPECIE = 1, NSPECIE        ! = 4 = {DM1, DM2, BC, O} respectively
 ENDDO
 !
 END SUBROUTINE LIMA_PHILLIPS_INTEG
+END MODULE MODE_LIMA_PHILLIPS_INTEG
diff --git a/src/common/micro/lima_phillips_ref_spectrum.F90 b/src/common/micro/mode_lima_phillips_ref_spectrum.F90
similarity index 82%
rename from src/common/micro/lima_phillips_ref_spectrum.F90
rename to src/common/micro/mode_lima_phillips_ref_spectrum.F90
index 62d5f1985c88867a7f17bdd7363ccc0170df0ce3..b1492d450bab9ae445a17bc7be1ec4594f091600 100644
--- a/src/common/micro/lima_phillips_ref_spectrum.F90
+++ b/src/common/micro/mode_lima_phillips_ref_spectrum.F90
@@ -1,23 +1,8 @@
-!      ######################################
-       MODULE MODI_LIMA_PHILLIPS_REF_SPECTRUM
-!      ######################################
-!
-INTERFACE
-      SUBROUTINE LIMA_PHILLIPS_REF_SPECTRUM (CST, ZZT, ZSI, ZSI_W, ZZY)
-!
-USE MODD_CST,            ONLY: CST_t
-TYPE(CST_t),              INTENT(IN)    :: CST
-REAL, DIMENSION(:), INTENT(IN)    :: ZZT    ! Temperature
-REAL, DIMENSION(:), INTENT(IN)    :: ZSI    ! Saturation over ice
-REAL, DIMENSION(:), INTENT(IN)    :: ZSI_W  ! Saturation over ice at water sat.
-REAL, DIMENSION(:), INTENT(INOUT) :: ZZY    ! Reference activity spectrum
-!
-END SUBROUTINE LIMA_PHILLIPS_REF_SPECTRUM
-END INTERFACE
-END MODULE MODI_LIMA_PHILLIPS_REF_SPECTRUM
-!
+MODULE MODE_LIMA_PHILLIPS_REF_SPECTRUM
+  IMPLICIT NONE
+CONTAINS
 !     ######################################################################
-      SUBROUTINE LIMA_PHILLIPS_REF_SPECTRUM (CST, ZZT, ZSI, ZSI_W, ZZY)
+  SUBROUTINE LIMA_PHILLIPS_REF_SPECTRUM (CST, ZZT, ZSI, ZSI_W, ZZY)
 !     ######################################################################
 !!
 !!    PURPOSE
@@ -50,7 +35,7 @@ END MODULE MODI_LIMA_PHILLIPS_REF_SPECTRUM
 !
 USE MODD_CST,            ONLY: CST_t
 USE MODD_PARAM_LIMA,      ONLY : XGAMMA, XRHO_CFDC
-USE MODI_LIMA_FUNCTIONS,  ONLY : RECT, DELTA
+USE MODE_LIMA_FUNCTIONS,  ONLY : RECT, DELTA
 !
 IMPLICIT NONE
 !
@@ -139,3 +124,4 @@ DEALLOCATE(Z1)
 DEALLOCATE(Z2)
 !
 END SUBROUTINE LIMA_PHILLIPS_REF_SPECTRUM
+END MODULE MODE_LIMA_PHILLIPS_REF_SPECTRUM
diff --git a/src/common/micro/lima_rain_accr_snow.F90 b/src/common/micro/mode_lima_rain_accr_snow.F90
similarity index 87%
rename from src/common/micro/lima_rain_accr_snow.F90
rename to src/common/micro/mode_lima_rain_accr_snow.F90
index a63ac24a4b9c776d316c18074682e61dddff53ed..66f06a67fe17542a7f11409800e09a9ea9f75d8e 100644
--- a/src/common/micro/lima_rain_accr_snow.F90
+++ b/src/common/micro/mode_lima_rain_accr_snow.F90
@@ -3,47 +3,14 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!      #################################
-       MODULE MODI_LIMA_RAIN_ACCR_SNOW
-!      #################################
-!
-INTERFACE
-   SUBROUTINE LIMA_RAIN_ACCR_SNOW (PTSTEP, LDCOMPUTE,                                         &
-                                   PRHODREF, PT,                                              &
-                                   PRRT, PCRT, PRST, PCST, PLBDR, PLBDS, PLVFACT, PLSFACT,    &
-                                   P_TH_ACC, P_RR_ACC, P_CR_ACC, P_RS_ACC, P_CS_ACC, P_RG_ACC )
-!
-REAL,                 INTENT(IN)    :: PTSTEP 
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHODREF    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PT   ! 
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRRT    ! Rain mr at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PCRT    ! Rain C. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PRST    ! Snow mr at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PCST    ! Snow C. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDR   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDS   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLVFACT ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLSFACT ! 
-!
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_TH_ACC
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RR_ACC
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_CR_ACC
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RS_ACC
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_CS_ACC
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RG_ACC
-!
-END SUBROUTINE LIMA_RAIN_ACCR_SNOW
-END INTERFACE
-END MODULE MODI_LIMA_RAIN_ACCR_SNOW
-!
+MODULE MODE_LIMA_RAIN_ACCR_SNOW
+  IMPLICIT NONE
+CONTAINS
 !     ###################################################################################
-      SUBROUTINE LIMA_RAIN_ACCR_SNOW (PTSTEP, LDCOMPUTE,                                         &
-                                      PRHODREF, PT,                                              &
-                                      PRRT, PCRT, PRST, PCST, PLBDR, PLBDS, PLVFACT, PLSFACT,    &
-                                      P_TH_ACC, P_RR_ACC, P_CR_ACC, P_RS_ACC, P_CS_ACC, P_RG_ACC )
+  SUBROUTINE LIMA_RAIN_ACCR_SNOW (PTSTEP, LDCOMPUTE,                                         &
+                                  PRHODREF, PT,                                              &
+                                  PRRT, PCRT, PRST, PCST, PLBDR, PLBDS, PLVFACT, PLSFACT,    &
+                                  P_TH_ACC, P_RR_ACC, P_CR_ACC, P_RS_ACC, P_CS_ACC, P_RG_ACC )
 !     ###################################################################################
 !
 !!    PURPOSE
@@ -398,3 +365,4 @@ CONTAINS
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_RAIN_ACCR_SNOW
+END MODULE MODE_LIMA_RAIN_ACCR_SNOW
diff --git a/src/common/micro/lima_rain_evaporation.F90 b/src/common/micro/mode_lima_rain_evaporation.F90
similarity index 66%
rename from src/common/micro/lima_rain_evaporation.F90
rename to src/common/micro/mode_lima_rain_evaporation.F90
index c7211f2fcd62960a43373cb63f19c38314ea6d0f..86e59a8d7778eba2ba80b4263a1d9edea2980a3f 100644
--- a/src/common/micro/lima_rain_evaporation.F90
+++ b/src/common/micro/mode_lima_rain_evaporation.F90
@@ -3,48 +3,15 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!      ##########################
-       MODULE MODI_LIMA_RAIN_EVAPORATION
-!      ##########################
-!
-INTERFACE
-      SUBROUTINE LIMA_RAIN_EVAPORATION (PTSTEP, LDCOMPUTE,                          &
-                                        PRHODREF, PT, PLV, PLVFACT, PEVSAT, PRVSAT, &
-                                        PRVT, PRCT, PRRT, PCRT, PLBDR,              &
-                                        P_TH_EVAP, P_RR_EVAP, P_CR_EVAP,            &
-                                        PEVAP3D                                     )
-!
-REAL,                 INTENT(IN)    :: PTSTEP     ! Time step
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE  !
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHODREF   ! Reference density
-REAL, DIMENSION(:),   INTENT(IN)    :: PT         ! Temperature
-REAL, DIMENSION(:),   INTENT(IN)    :: PLV        ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLVFACT    !
-REAL, DIMENSION(:),   INTENT(IN)    :: PEVSAT     !
-REAL, DIMENSION(:),   INTENT(IN)    :: PRVSAT     !
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRVT       ! Water vapor m.r. at t 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRCT       ! Cloud water m.r. at t 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRRT       ! Rain water m.r. at t 
-REAL, DIMENSION(:),   INTENT(IN)    :: PCRT       ! Rain water conc at t 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDR     ! Lambda(rain)
-!
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_TH_EVAP
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RR_EVAP
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_CR_EVAP
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: PEVAP3D    ! Rain evap profile
-!
-END SUBROUTINE LIMA_RAIN_EVAPORATION
-END INTERFACE
-END MODULE MODI_LIMA_RAIN_EVAPORATION
+MODULE MODE_LIMA_RAIN_EVAPORATION
+  IMPLICIT NONE
+CONTAINS
 !     ###############################################################################
-      SUBROUTINE LIMA_RAIN_EVAPORATION (PTSTEP, LDCOMPUTE,                          &
-                                        PRHODREF, PT, PLV, PLVFACT, PEVSAT, PRVSAT, &
-                                        PRVT, PRCT, PRRT, PCRT, PLBDR,              &
-                                        P_TH_EVAP, P_RR_EVAP, P_CR_EVAP,            &
-                                        PEVAP3D                                     )
+  SUBROUTINE LIMA_RAIN_EVAPORATION (PTSTEP, LDCOMPUTE,                          &
+                                    PRHODREF, PT, PLV, PLVFACT, PEVSAT, PRVSAT, &
+                                    PRVT, PRCT, PRRT, PCRT, PLBDR,              &
+                                    P_TH_EVAP, P_RR_EVAP, P_CR_EVAP,            &
+                                    PEVAP3D                                     )
 !     ###############################################################################
 !
 !!
@@ -168,3 +135,4 @@ END IF
 !-----------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_RAIN_EVAPORATION
+END MODULE MODE_LIMA_RAIN_EVAPORATION
diff --git a/src/common/micro/lima_rain_freezing.F90 b/src/common/micro/mode_lima_rain_freezing.F90
similarity index 65%
rename from src/common/micro/lima_rain_freezing.F90
rename to src/common/micro/mode_lima_rain_freezing.F90
index a6c9504a1cef696a5003a099c293a41060ed4fa7..b3bee2145b48b566fd0673e947a804fe0f37a8d4 100644
--- a/src/common/micro/lima_rain_freezing.F90
+++ b/src/common/micro/mode_lima_rain_freezing.F90
@@ -3,44 +3,14 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!      #################################
-       MODULE MODI_LIMA_RAIN_FREEZING
-!      #################################
-!
-INTERFACE
-   SUBROUTINE LIMA_RAIN_FREEZING (LDCOMPUTE,                                             &
-                                  PRHODREF, PT, PLVFACT, PLSFACT,                        &
-                                  PRRT, PCRT, PRIT, PCIT, PLBDR,                         &
-                                  P_TH_CFRZ, P_RR_CFRZ, P_CR_CFRZ, P_RI_CFRZ, P_CI_CFRZ  )
-!
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHODREF ! Reference Exner function
-REAL, DIMENSION(:),   INTENT(IN)    :: PT       !
-REAL, DIMENSION(:),   INTENT(IN)    :: PLVFACT  !
-REAL, DIMENSION(:),   INTENT(IN)    :: PLSFACT  !
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRRT    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PCRT    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRIT    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PCIT    ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDR   ! 
-!
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_TH_CFRZ
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RR_CFRZ
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_CR_CFRZ
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RI_CFRZ
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_CI_CFRZ
-!
-END SUBROUTINE LIMA_RAIN_FREEZING
-END INTERFACE
-END MODULE MODI_LIMA_RAIN_FREEZING
-!
+MODULE MODE_LIMA_RAIN_FREEZING
+  IMPLICIT NONE
+CONTAINS
 !     #######################################################################################
-      SUBROUTINE LIMA_RAIN_FREEZING (LDCOMPUTE,                                             &
-                                     PRHODREF, PT, PLVFACT, PLSFACT,                        &
-                                     PRRT, PCRT, PRIT, PCIT, PLBDR,                         &
-                                     P_TH_CFRZ, P_RR_CFRZ, P_CR_CFRZ, P_RI_CFRZ, P_CI_CFRZ  )
+  SUBROUTINE LIMA_RAIN_FREEZING (LDCOMPUTE,                                             &
+                                 PRHODREF, PT, PLVFACT, PLSFACT,                        &
+                                 PRRT, PCRT, PRIT, PCIT, PLBDR,                         &
+                                 P_TH_CFRZ, P_RR_CFRZ, P_CR_CFRZ, P_RI_CFRZ, P_CI_CFRZ  )
 !     #######################################################################################
 !
 !!    PURPOSE
@@ -133,3 +103,4 @@ END WHERE
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_RAIN_FREEZING
+END MODULE MODE_LIMA_RAIN_FREEZING
diff --git a/src/common/micro/lima_raindrop_shattering_freezing.F90 b/src/common/micro/mode_lima_raindrop_shattering_freezing.F90
similarity index 74%
rename from src/common/micro/lima_raindrop_shattering_freezing.F90
rename to src/common/micro/mode_lima_raindrop_shattering_freezing.F90
index dc7c14066214dfb589ad8428291dbc1c9262706d..43f20e08f1825fe23736064c7fb91e1c1694c8ad 100644
--- a/src/common/micro/lima_raindrop_shattering_freezing.F90
+++ b/src/common/micro/mode_lima_raindrop_shattering_freezing.F90
@@ -3,41 +3,15 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-------------------------------------------------------------------------------
-!      #############################################
-       MODULE MODI_LIMA_RAINDROP_SHATTERING_FREEZING
-!      #############################################
-!
-INTERFACE
-   SUBROUTINE LIMA_RAINDROP_SHATTERING_FREEZING (LDCOMPUTE,                    &
-                                                 PRHODREF,                     &
-                                                 PRRT, PCRT, PRIT, PCIT, PRGT, &
-                                                 PLBDR,                        &
-                                                 P_RI_RDSF, P_CI_RDSF          )
-!
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHODREF
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRRT
-REAL, DIMENSION(:),   INTENT(IN)    :: PCRT
-REAL, DIMENSION(:),   INTENT(IN)    :: PRIT
-REAL, DIMENSION(:),   INTENT(IN)    :: PCIT
-REAL, DIMENSION(:),   INTENT(IN)    :: PRGT
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDR 
-!
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RI_RDSF
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_CI_RDSF
-!
-END SUBROUTINE LIMA_RAINDROP_SHATTERING_FREEZING
-END INTERFACE
-END MODULE MODI_LIMA_RAINDROP_SHATTERING_FREEZING
-!
+MODULE MODE_LIMA_RAINDROP_SHATTERING_FREEZING
+  IMPLICIT NONE
+CONTAINS
 !     #######################################################################
-      SUBROUTINE LIMA_RAINDROP_SHATTERING_FREEZING (LDCOMPUTE,                    &
-                                                    PRHODREF,                     &
-                                                    PRRT, PCRT, PRIT, PCIT, PRGT, &
-                                                    PLBDR,                        &
-                                                    P_RI_RDSF, P_CI_RDSF          )
+  SUBROUTINE LIMA_RAINDROP_SHATTERING_FREEZING (LDCOMPUTE,                    &
+                                                PRHODREF,                     &
+                                                PRRT, PCRT, PRIT, PCIT, PRGT, &
+                                                PLBDR,                        &
+                                                P_RI_RDSF, P_CI_RDSF          )
 !     #######################################################################
 !
 !!    PURPOSE
@@ -157,3 +131,4 @@ ENDIF
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_RAINDROP_SHATTERING_FREEZING
+END MODULE MODE_LIMA_RAINDROP_SHATTERING_FREEZING
diff --git a/src/common/micro/lima_read_xker_gweth.F90 b/src/common/micro/mode_lima_read_xker_gweth.F90
similarity index 97%
rename from src/common/micro/lima_read_xker_gweth.F90
rename to src/common/micro/mode_lima_read_xker_gweth.F90
index 25a567ec83399fb73d1774df9bacf5d879b67240..b0a514a0ba2fce4e6724da3ed87984e1d1496e74 100644
--- a/src/common/micro/lima_read_xker_gweth.F90
+++ b/src/common/micro/mode_lima_read_xker_gweth.F90
@@ -3,49 +3,14 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt  
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!--------------- special set of characters for RCS information
-!-----------------------------------------------------------------
-! $Source$ $Revision$
-! MASDEV4_7 microph 2006/05/18 13:07:25
-!-----------------------------------------------------------------
-!     ###########################
-      MODULE MODI_LIMA_READ_XKER_GWETH
-!     ###########################
-!
-INTERFACE
-      SUBROUTINE LIMA_READ_XKER_GWETH (KWETLBDAH,KWETLBDAG,KND,                   &
-                    PALPHAH,PNUH,PALPHAG,PNUG,PEHG,PBG,PCH,PDH,PCG,PDG,      &
-                    PWETLBDAH_MAX,PWETLBDAG_MAX,PWETLBDAH_MIN,PWETLBDAG_MIN, &
-                    PFDINFTY,PKER_GWETH                                      )
-!
-INTEGER, INTENT(OUT) :: KND,KWETLBDAH,KWETLBDAG
-REAL,    INTENT(OUT) :: PALPHAH
-REAL,    INTENT(OUT) :: PNUH
-REAL,    INTENT(OUT) :: PALPHAG
-REAL,    INTENT(OUT) :: PNUG
-REAL,    INTENT(OUT) :: PEHG
-REAL,    INTENT(OUT) :: PBG
-REAL,    INTENT(OUT) :: PCH
-REAL,    INTENT(OUT) :: PDH
-REAL,    INTENT(OUT) :: PCG
-REAL,    INTENT(OUT) :: PDG
-REAL,    INTENT(OUT) :: PWETLBDAH_MAX
-REAL,    INTENT(OUT) :: PWETLBDAG_MAX
-REAL,    INTENT(OUT) :: PWETLBDAH_MIN
-REAL,    INTENT(OUT) :: PWETLBDAG_MIN
-REAL,    INTENT(OUT) :: PFDINFTY
-REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_GWETH 
-!
-END SUBROUTINE LIMA_READ_XKER_GWETH
-!
-END INTERFACE
-!
-END MODULE MODI_LIMA_READ_XKER_GWETH
+MODULE MODE_LIMA_READ_XKER_GWETH
+  IMPLICIT NONE
+CONTAINS
 !     ########################################################################
-      SUBROUTINE LIMA_READ_XKER_GWETH (KWETLBDAH,KWETLBDAG,KND,                   &
-                    PALPHAH,PNUH,PALPHAG,PNUG,PEHG,PBG,PCH,PDH,PCG,PDG,      &
-                    PWETLBDAH_MAX,PWETLBDAG_MAX,PWETLBDAH_MIN,PWETLBDAG_MIN, &
-                    PFDINFTY,PKER_GWETH                                      )
+  SUBROUTINE LIMA_READ_XKER_GWETH (KWETLBDAH,KWETLBDAG,KND,                                 &
+                                   PALPHAH,PNUH,PALPHAG,PNUG,PEHG,PBG,PCH,PDH,PCG,PDG,      &
+                                   PWETLBDAH_MAX,PWETLBDAG_MAX,PWETLBDAH_MIN,PWETLBDAG_MIN, &
+                                   PFDINFTY,PKER_GWETH                                      )
 !     ########################################################################
 !
 !!****  * * - initialize the kernels for the graupel-hail wet growth process
@@ -1735,3 +1700,4 @@ PKER_GWETH( 40, 40) =  0.197923E-01
 END IF
 !
 END SUBROUTINE LIMA_READ_XKER_GWETH
+END MODULE MODE_LIMA_READ_XKER_GWETH
diff --git a/src/common/micro/lima_read_xker_raccs.F90 b/src/common/micro/mode_lima_read_xker_raccs.F90
similarity index 98%
rename from src/common/micro/lima_read_xker_raccs.F90
rename to src/common/micro/mode_lima_read_xker_raccs.F90
index 5a75adf255339c49ec3c786f1d70c08083274e16..55afa459085921cb76b02b6471ce22c7da2a5612 100644
--- a/src/common/micro/lima_read_xker_raccs.F90
+++ b/src/common/micro/mode_lima_read_xker_raccs.F90
@@ -3,53 +3,14 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt  
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!--------------- special set of characters for RCS information
-!-----------------------------------------------------------------
-! $Source$ $Revision$
-! MASDEV4_7 init 2006/05/18 13:07:25
-!-----------------------------------------------------------------
-!     ###########################
-      MODULE MODI_LIMA_READ_XKER_RACCS 
-!     ###########################
-!
-INTERFACE
-      SUBROUTINE LIMA_READ_XKER_RACCS (KACCLBDAS,KACCLBDAR,KND,                        &
-                      PALPHAS,PNUS,PALPHAR,PNUR,PESR,PBS,PBR,PCS,PDS,PFVELOS,PCR,PDR,  &
-                      PACCLBDAS_MAX,PACCLBDAR_MAX,PACCLBDAS_MIN,PACCLBDAR_MIN,         &
-                      PFDINFTY,PKER_RACCSS,PKER_RACCS,PKER_SACCRG                      )
-!
-INTEGER, INTENT(OUT) :: KND,KACCLBDAS,KACCLBDAR
-REAL,    INTENT(OUT) :: PALPHAS
-REAL,    INTENT(OUT) :: PNUS
-REAL,    INTENT(OUT) :: PALPHAR
-REAL,    INTENT(OUT) :: PNUR
-REAL,    INTENT(OUT) :: PESR
-REAL,    INTENT(OUT) :: PBS
-REAL,    INTENT(OUT) :: PBR
-REAL,    INTENT(OUT) :: PCS
-REAL,    INTENT(OUT) :: PDS
-REAL,    INTENT(OUT) :: PFVELOS
-REAL,    INTENT(OUT) :: PCR
-REAL,    INTENT(OUT) :: PDR
-REAL,    INTENT(OUT) :: PACCLBDAS_MAX
-REAL,    INTENT(OUT) :: PACCLBDAR_MAX
-REAL,    INTENT(OUT) :: PACCLBDAS_MIN
-REAL,    INTENT(OUT) :: PACCLBDAR_MIN
-REAL,    INTENT(OUT) :: PFDINFTY
-REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_RACCSS
-REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_RACCS 
-REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_SACCRG
-!
-END SUBROUTINE LIMA_READ_XKER_RACCS
-!
-END INTERFACE
-!
-END MODULE MODI_LIMA_READ_XKER_RACCS
+MODULE MODE_LIMA_READ_XKER_RACCS
+  IMPLICIT NONE
+CONTAINS
 !     ##########################################################################
-      SUBROUTINE LIMA_READ_XKER_RACCS (KACCLBDAS,KACCLBDAR,KND,                        &
-                      PALPHAS,PNUS,PALPHAR,PNUR,PESR,PBS,PBR,PCS,PDS,PFVELOS,PCR,PDR,  &
-                      PACCLBDAS_MAX,PACCLBDAR_MAX,PACCLBDAS_MIN,PACCLBDAR_MIN,         &
-                      PFDINFTY,PKER_RACCSS,PKER_RACCS,PKER_SACCRG                      )
+  SUBROUTINE LIMA_READ_XKER_RACCS (KACCLBDAS,KACCLBDAR,KND,                                         &
+                                   PALPHAS,PNUS,PALPHAR,PNUR,PESR,PBS,PBR,PCS,PDS,PFVELOS,PCR,PDR,  &
+                                   PACCLBDAS_MAX,PACCLBDAR_MAX,PACCLBDAS_MIN,PACCLBDAR_MIN,         &
+                                   PFDINFTY,PKER_RACCSS,PKER_RACCS,PKER_SACCRG                      )
 !     ##########################################################################
 !
 !!****  * * - initialize the kernels for the rain-snow accretion process
@@ -4951,3 +4912,4 @@ IF( PRESENT(PKER_SACCRG) ) THEN
 END IF
 !
 END SUBROUTINE LIMA_READ_XKER_RACCS
+END MODULE MODE_LIMA_READ_XKER_RACCS
diff --git a/src/common/micro/lima_read_xker_rdryg.F90 b/src/common/micro/mode_lima_read_xker_rdryg.F90
similarity index 97%
rename from src/common/micro/lima_read_xker_rdryg.F90
rename to src/common/micro/mode_lima_read_xker_rdryg.F90
index de1a4287401dc151fb785ab4e23b24010b8988e0..160392c58731e22c56e5fb8a5b96b161d6bcccde 100644
--- a/src/common/micro/lima_read_xker_rdryg.F90
+++ b/src/common/micro/mode_lima_read_xker_rdryg.F90
@@ -3,49 +3,14 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt  
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!--------------- special set of characters for RCS information
-!-----------------------------------------------------------------
-! $Source$ $Revision$
-! MASDEV4_7 init 2006/05/18 13:07:25
-!-----------------------------------------------------------------
-!     ###########################
-      MODULE MODI_LIMA_READ_XKER_RDRYG
-!     ###########################
-!
-INTERFACE
-      SUBROUTINE LIMA_READ_XKER_RDRYG (KDRYLBDAG,KDRYLBDAR,KND,                   &
-                    PALPHAG,PNUG,PALPHAR,PNUR,PEGR,PBR,PCG,PDG,PCR,PDR,      &
-                    PDRYLBDAG_MAX,PDRYLBDAR_MAX,PDRYLBDAG_MIN,PDRYLBDAR_MIN, &
-                    PFDINFTY,PKER_RDRYG                                      )
-!
-INTEGER, INTENT(OUT) :: KND,KDRYLBDAG,KDRYLBDAR
-REAL,    INTENT(OUT) :: PALPHAG
-REAL,    INTENT(OUT) :: PNUG
-REAL,    INTENT(OUT) :: PALPHAR
-REAL,    INTENT(OUT) :: PNUR
-REAL,    INTENT(OUT) :: PEGR
-REAL,    INTENT(OUT) :: PBR
-REAL,    INTENT(OUT) :: PCG
-REAL,    INTENT(OUT) :: PDG
-REAL,    INTENT(OUT) :: PCR
-REAL,    INTENT(OUT) :: PDR
-REAL,    INTENT(OUT) :: PDRYLBDAG_MAX
-REAL,    INTENT(OUT) :: PDRYLBDAR_MAX
-REAL,    INTENT(OUT) :: PDRYLBDAG_MIN
-REAL,    INTENT(OUT) :: PDRYLBDAR_MIN
-REAL,    INTENT(OUT) :: PFDINFTY
-REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_RDRYG 
-!
-END SUBROUTINE LIMA_READ_XKER_RDRYG
-!
-END INTERFACE
-!
-END MODULE MODI_LIMA_READ_XKER_RDRYG
+MODULE MODE_LIMA_READ_XKER_RDRYG
+  IMPLICIT NONE
+CONTAINS
 !     ########################################################################
-      SUBROUTINE LIMA_READ_XKER_RDRYG (KDRYLBDAG,KDRYLBDAR,KND,                   &
-                    PALPHAG,PNUG,PALPHAR,PNUR,PEGR,PBR,PCG,PDG,PCR,PDR,      &
-                    PDRYLBDAG_MAX,PDRYLBDAR_MAX,PDRYLBDAG_MIN,PDRYLBDAR_MIN, &
-                    PFDINFTY,PKER_RDRYG                                      )
+  SUBROUTINE LIMA_READ_XKER_RDRYG (KDRYLBDAG,KDRYLBDAR,KND,                   &
+                                   PALPHAG,PNUG,PALPHAR,PNUR,PEGR,PBR,PCG,PDG,PCR,PDR,      &
+                                   PDRYLBDAG_MAX,PDRYLBDAR_MAX,PDRYLBDAG_MIN,PDRYLBDAR_MIN, &
+                                   PFDINFTY,PKER_RDRYG                                      )
 !     ########################################################################
 !
 !!****  * * - initialize the kernels for the snow-graupel dry growth process
@@ -1734,3 +1699,4 @@ PKER_RDRYG( 40, 40) =  0.603544E-02
 END IF
 !
 END SUBROUTINE LIMA_READ_XKER_RDRYG
+END MODULE MODE_LIMA_READ_XKER_RDRYG
diff --git a/src/common/micro/lima_read_xker_sdryg.F90 b/src/common/micro/mode_lima_read_xker_sdryg.F90
similarity index 98%
rename from src/common/micro/lima_read_xker_sdryg.F90
rename to src/common/micro/mode_lima_read_xker_sdryg.F90
index f3c2377e598d75bfa99128901bc11047e768d4ee..d12ca6142379d89ae956366a15b105784e13f08c 100644
--- a/src/common/micro/lima_read_xker_sdryg.F90
+++ b/src/common/micro/mode_lima_read_xker_sdryg.F90
@@ -3,50 +3,14 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt  
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!--------------- special set of characters for RCS information
-!-----------------------------------------------------------------
-! $Source$ $Revision$
-! MASDEV4_7 init 2006/05/18 13:07:25
-!-----------------------------------------------------------------
-!     ###########################
-      MODULE MODI_LIMA_READ_XKER_SDRYG
-!     ###########################
-!
-INTERFACE
-      SUBROUTINE LIMA_READ_XKER_SDRYG (KDRYLBDAG,KDRYLBDAS,KND,                 &
-                    PALPHAG,PNUG,PALPHAS,PNUS,PEGS,PBS,PCG,PDG,PCS,PDS,PFVELOS, &
-                    PDRYLBDAG_MAX,PDRYLBDAS_MAX,PDRYLBDAG_MIN,PDRYLBDAS_MIN,    &
-                    PFDINFTY,PKER_SDRYG                                         )
-!
-INTEGER, INTENT(OUT) :: KND,KDRYLBDAG,KDRYLBDAS
-REAL,    INTENT(OUT) :: PALPHAG
-REAL,    INTENT(OUT) :: PNUG
-REAL,    INTENT(OUT) :: PALPHAS
-REAL,    INTENT(OUT) :: PNUS
-REAL,    INTENT(OUT) :: PEGS
-REAL,    INTENT(OUT) :: PBS
-REAL,    INTENT(OUT) :: PCG
-REAL,    INTENT(OUT) :: PDG
-REAL,    INTENT(OUT) :: PCS
-REAL,    INTENT(OUT) :: PDS
-REAL,    INTENT(OUT) :: PFVELOS
-REAL,    INTENT(OUT) :: PDRYLBDAG_MAX
-REAL,    INTENT(OUT) :: PDRYLBDAS_MAX
-REAL,    INTENT(OUT) :: PDRYLBDAG_MIN
-REAL,    INTENT(OUT) :: PDRYLBDAS_MIN
-REAL,    INTENT(OUT) :: PFDINFTY
-REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_SDRYG 
-!
-END SUBROUTINE LIMA_READ_XKER_SDRYG
-!
-END INTERFACE
-!
-END MODULE MODI_LIMA_READ_XKER_SDRYG
+MODULE MODE_LIMA_READ_XKER_SDRYG
+  IMPLICIT NONE
+CONTAINS
 !     ########################################################################
-      SUBROUTINE LIMA_READ_XKER_SDRYG (KDRYLBDAG,KDRYLBDAS,KND,                 &
-                    PALPHAG,PNUG,PALPHAS,PNUS,PEGS,PBS,PCG,PDG,PCS,PDS,PFVELOS, &
-                    PDRYLBDAG_MAX,PDRYLBDAS_MAX,PDRYLBDAG_MIN,PDRYLBDAS_MIN,    &
-                    PFDINFTY,PKER_SDRYG                                         )
+  SUBROUTINE LIMA_READ_XKER_SDRYG (KDRYLBDAG,KDRYLBDAS,KND,                                    &
+                                   PALPHAG,PNUG,PALPHAS,PNUS,PEGS,PBS,PCG,PDG,PCS,PDS,PFVELOS, &
+                                   PDRYLBDAG_MAX,PDRYLBDAS_MAX,PDRYLBDAG_MIN,PDRYLBDAS_MIN,    &
+                                   PFDINFTY,PKER_SDRYG                                         )
 !     ########################################################################
 !
 !!****  * * - initialize the kernels for the snow-graupel dry growth process
@@ -3338,3 +3302,4 @@ PKER_SDRYG( 40, 80) =  0.332823E+00
 END IF
 !
 END SUBROUTINE LIMA_READ_XKER_SDRYG
+END MODULE MODE_LIMA_READ_XKER_SDRYG
diff --git a/src/common/micro/lima_read_xker_sweth.F90 b/src/common/micro/mode_lima_read_xker_sweth.F90
similarity index 98%
rename from src/common/micro/lima_read_xker_sweth.F90
rename to src/common/micro/mode_lima_read_xker_sweth.F90
index a034ec708a09071c4185be149cc4ef3c89d294fa..fe423f89a53fda3abfc716d9fdc36d6d52f0ef64 100644
--- a/src/common/micro/lima_read_xker_sweth.F90
+++ b/src/common/micro/mode_lima_read_xker_sweth.F90
@@ -3,50 +3,14 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt  
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!--------------- special set of characters for RCS information
-!-----------------------------------------------------------------
-! $Source$ $Revision$
-! MASDEV4_7 microph 2006/05/18 13:07:25
-!-----------------------------------------------------------------
-!     ###########################
-      MODULE MODI_LIMA_READ_XKER_SWETH
-!     ###########################
-!
-INTERFACE
-      SUBROUTINE LIMA_READ_XKER_SWETH (KWETLBDAH,KWETLBDAS,KND,                 &
-                    PALPHAH,PNUH,PALPHAS,PNUS,PEHS,PBS,PCH,PDH,PCS,PDS,PFVELOS, &
-                    PWETLBDAH_MAX,PWETLBDAS_MAX,PWETLBDAH_MIN,PWETLBDAS_MIN,    &
-                    PFDINFTY,PKER_SWETH                                         )
-!
-INTEGER, INTENT(OUT) :: KND,KWETLBDAH,KWETLBDAS
-REAL,    INTENT(OUT) :: PALPHAH
-REAL,    INTENT(OUT) :: PNUH
-REAL,    INTENT(OUT) :: PALPHAS
-REAL,    INTENT(OUT) :: PNUS
-REAL,    INTENT(OUT) :: PEHS
-REAL,    INTENT(OUT) :: PBS
-REAL,    INTENT(OUT) :: PCH
-REAL,    INTENT(OUT) :: PDH
-REAL,    INTENT(OUT) :: PCS
-REAL,    INTENT(OUT) :: PDS
-REAL,    INTENT(OUT) :: PFVELOS
-REAL,    INTENT(OUT) :: PWETLBDAH_MAX
-REAL,    INTENT(OUT) :: PWETLBDAS_MAX
-REAL,    INTENT(OUT) :: PWETLBDAH_MIN
-REAL,    INTENT(OUT) :: PWETLBDAS_MIN
-REAL,    INTENT(OUT) :: PFDINFTY
-REAL, DIMENSION(:,:), INTENT(OUT), OPTIONAL :: PKER_SWETH 
-!
-END SUBROUTINE LIMA_READ_XKER_SWETH
-!
-END INTERFACE
-!
-END MODULE MODI_LIMA_READ_XKER_SWETH
+MODULE MODE_LIMA_READ_XKER_SWETH
+  IMPLICIT NONE
+CONTAINS
 !     ########################################################################
-      SUBROUTINE LIMA_READ_XKER_SWETH (KWETLBDAH,KWETLBDAS,KND,                 &
-                    PALPHAH,PNUH,PALPHAS,PNUS,PEHS,PBS,PCH,PDH,PCS,PDS,PFVELOS, &
-                    PWETLBDAH_MAX,PWETLBDAS_MAX,PWETLBDAH_MIN,PWETLBDAS_MIN,    &
-                    PFDINFTY,PKER_SWETH                                         )
+  SUBROUTINE LIMA_READ_XKER_SWETH (KWETLBDAH,KWETLBDAS,KND,                                    &
+                                   PALPHAH,PNUH,PALPHAS,PNUS,PEHS,PBS,PCH,PDH,PCS,PDS,PFVELOS, &
+                                   PWETLBDAH_MAX,PWETLBDAS_MAX,PWETLBDAH_MIN,PWETLBDAS_MIN,    &
+                                   PFDINFTY,PKER_SWETH                                         )
 !     ########################################################################
 !
 !!****  * * - initialize the kernels for the snow-hail wet growth process
@@ -3338,3 +3302,4 @@ PKER_SWETH( 40, 80) =  0.310319E+00
 END IF
 !
 END SUBROUTINE LIMA_READ_XKER_SWETH
+END MODULE MODE_LIMA_READ_XKER_SWETH
diff --git a/src/common/micro/lima_sedimentation.F90 b/src/common/micro/mode_lima_sedimentation.F90
similarity index 83%
rename from src/common/micro/lima_sedimentation.F90
rename to src/common/micro/mode_lima_sedimentation.F90
index bbf6b492af02ad6d77ec4786ec1a62320080cc22..dc6164d492aedbacd1aa7819285d9289d210e909 100644
--- a/src/common/micro/lima_sedimentation.F90
+++ b/src/common/micro/mode_lima_sedimentation.F90
@@ -3,45 +3,13 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!      ###################################
-       MODULE MODI_LIMA_SEDIMENTATION
-!      ###################################
-!
-INTERFACE
-      SUBROUTINE LIMA_SEDIMENTATION (D, CST, &
-                                     HPHASE, KMOMENTS, KID, KSPLITG, PTSTEP, PDZZ, PRHODREF,       &
-                                     PPABST, PT, PRT_SUM, PCPT, PRS, PCS, PINPR, PFPR )
-!
-USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t
-USE MODD_CST,            ONLY: CST_t
-!
-TYPE(DIMPHYEX_t),         INTENT(IN)    :: D
-TYPE(CST_t),              INTENT(IN)    :: CST
-CHARACTER(1),             INTENT(IN)    :: HPHASE    ! Liquid or solid hydrometeors
-INTEGER,                  INTENT(IN)    :: KMOMENTS  ! Number of moments 
-INTEGER,                  INTENT(IN)    :: KID       ! Hydrometeor ID
-INTEGER,                  INTENT(IN)    :: KSPLITG   !  
-REAL,                     INTENT(IN)    :: PTSTEP    ! Time step          
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PDZZ      ! Height (z)
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRHODREF  ! Reference density
-REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PPABST    ! abs. pressure at time t
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PT        ! Temperature
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRT_SUM   ! total water mixing ratio
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PCPT      ! Cp
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PRS       ! m.r. source
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PCS       ! C. source
-REAL, DIMENSION(:,:),     INTENT(INOUT) :: PINPR     ! Instant precip rate
-REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PFPR      ! Precip. fluxes in altitude
-!
-END SUBROUTINE LIMA_SEDIMENTATION
-END INTERFACE
-END MODULE MODI_LIMA_SEDIMENTATION
-!
-!
+MODULE MODE_LIMA_SEDIMENTATION
+  IMPLICIT NONE
+CONTAINS
 !     ######################################################################
-      SUBROUTINE LIMA_SEDIMENTATION (D, CST, &
-                                     HPHASE, KMOMENTS, KID, KSPLITG, PTSTEP, PDZZ, PRHODREF,       &
-                                     PPABST, PT, PRT_SUM, PCPT, PRS, PCS, PINPR, PFPR )
+  SUBROUTINE LIMA_SEDIMENTATION (D, CST, &
+                                 HPHASE, KMOMENTS, KID, KSPLITG, PTSTEP, PDZZ, PRHODREF,       &
+                                 PPABST, PT, PRT_SUM, PCPT, PRS, PCS, PINPR, PFPR )
 !     ######################################################################
 !
 !!    PURPOSE
@@ -281,5 +249,4 @@ PRS(:,:,:) = PRS(:,:,:) / PTSTEP
 IF (KMOMENTS==2) PCS(:,:,:) = PCS(:,:,:) / PTSTEP
 !
 END SUBROUTINE LIMA_SEDIMENTATION
-!
-!-------------------------------------------------------------------------------
+END MODULE MODE_LIMA_SEDIMENTATION
diff --git a/src/common/micro/lima_snow_deposition.F90 b/src/common/micro/mode_lima_snow_deposition.F90
similarity index 74%
rename from src/common/micro/lima_snow_deposition.F90
rename to src/common/micro/mode_lima_snow_deposition.F90
index 3bd8d0141f23ef6c013ba7738e1da65518be4811..0a520c063aa1e96b4c6631a836ab3c4470b62023 100644
--- a/src/common/micro/lima_snow_deposition.F90
+++ b/src/common/micro/mode_lima_snow_deposition.F90
@@ -3,45 +3,15 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!      #####################
-       MODULE MODI_LIMA_SNOW_DEPOSITION
-!      #####################
-!
-INTERFACE
-      SUBROUTINE LIMA_SNOW_DEPOSITION (LDCOMPUTE,                         &
-                                       PRHODREF, PSSI, PAI, PCJ, PLSFACT, &
-                                       PRST, PCST, PLBDS,                 &
-                                       P_RI_CNVI, P_CI_CNVI,              &
-                                       P_TH_DEPS, P_RS_DEPS               )
-!
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHODREF! Reference density
-REAL, DIMENSION(:),   INTENT(IN)    :: PSSI  ! abs. pressure at time t
-REAL, DIMENSION(:),   INTENT(IN)    :: PAI  ! abs. pressure at time t
-REAL, DIMENSION(:),   INTENT(IN)    :: PCJ  ! abs. pressure at time t
-REAL, DIMENSION(:),   INTENT(IN)    :: PLSFACT  ! abs. pressure at time t
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRST    ! Snow/aggregate m.r. at t 
-REAL, DIMENSION(:),   INTENT(IN)    :: PCST    ! Snow/aggregate concentration 
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDS    ! Graupel m.r. at t 
-!
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RI_CNVI
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_CI_CNVI
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_TH_DEPS
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_RS_DEPS
-!
-END SUBROUTINE LIMA_SNOW_DEPOSITION
-END INTERFACE
-END MODULE MODI_LIMA_SNOW_DEPOSITION
-!
+MODULE MODE_LIMA_SNOW_DEPOSITION
+  IMPLICIT NONE
+CONTAINS
 !     ##########################################################################
-SUBROUTINE LIMA_SNOW_DEPOSITION (LDCOMPUTE,                                &
-                                 PRHODREF,  PSSI, PAI, PCJ, PLSFACT,       &
-                                 PRST, PCST, PLBDS,                        &
-                                 P_RI_CNVI, P_CI_CNVI,                     &
-                                 P_TH_DEPS, P_RS_DEPS                      )
+  SUBROUTINE LIMA_SNOW_DEPOSITION (LDCOMPUTE,                                &
+                                   PRHODREF,  PSSI, PAI, PCJ, PLSFACT,       &
+                                   PRST, PCST, PLBDS,                        &
+                                   P_RI_CNVI, P_CI_CNVI,                     &
+                                   P_TH_DEPS, P_RS_DEPS                      )
 !     ##########################################################################
 !
 !!    PURPOSE
@@ -177,3 +147,4 @@ ELSE
 END IF
 !
 END SUBROUTINE LIMA_SNOW_DEPOSITION
+END MODULE MODE_LIMA_SNOW_DEPOSITION
diff --git a/src/common/micro/lima_snow_self_collection.F90 b/src/common/micro/mode_lima_snow_self_collection.F90
similarity index 78%
rename from src/common/micro/lima_snow_self_collection.F90
rename to src/common/micro/mode_lima_snow_self_collection.F90
index ea38870b87d715c9d5d556b1ea1d9353c44bf41e..50339a87f9cfab882ee4e4ea81fea509d1aebfd2 100644
--- a/src/common/micro/lima_snow_self_collection.F90
+++ b/src/common/micro/mode_lima_snow_self_collection.F90
@@ -3,36 +3,14 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-------------------------------------------------------------------------------
-!      #################################
-       MODULE MODI_LIMA_SNOW_SELF_COLLECTION
-!      #################################
-!
-INTERFACE
-   SUBROUTINE LIMA_SNOW_SELF_COLLECTION (LDCOMPUTE,          &
-                                         PRHODREF, PT,       &
-                                         PRST, PCST, PLBDS,  &
-                                         P_CS_SSC            )
-!
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHODREF ! Reference Exner function
-REAL, DIMENSION(:),   INTENT(IN)    :: PT       ! Temperature
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRST    ! Snow mr at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PCST    ! Snow C. at t
-REAL, DIMENSION(:),   INTENT(IN)    :: PLBDS   ! 
-!
-REAL, DIMENSION(:),   INTENT(OUT)   :: P_CS_SSC 
-!
-END SUBROUTINE LIMA_SNOW_SELF_COLLECTION
-END INTERFACE
-END MODULE MODI_LIMA_SNOW_SELF_COLLECTION
-!
+MODULE MODE_LIMA_SNOW_SELF_COLLECTION
+  IMPLICIT NONE
+CONTAINS
 !     #############################################################
-      SUBROUTINE LIMA_SNOW_SELF_COLLECTION (LDCOMPUTE,          &
-                                            PRHODREF, PT,       &
-                                            PRST, PCST, PLBDS,  &
-                                            P_CS_SSC            )
+  SUBROUTINE LIMA_SNOW_SELF_COLLECTION (LDCOMPUTE,          &
+                                        PRHODREF, PT,       &
+                                        PRST, PCST, PLBDS,  &
+                                        P_CS_SSC            )
 !     #############################################################
 !
 !!    PURPOSE
@@ -147,3 +125,4 @@ END IF
 !-------------------------------------------------------------------------------
 !
 END SUBROUTINE LIMA_SNOW_SELF_COLLECTION
+END MODULE MODE_LIMA_SNOW_SELF_COLLECTION
diff --git a/src/common/micro/lima_tendencies.F90 b/src/common/micro/mode_lima_tendencies.F90
similarity index 66%
rename from src/common/micro/lima_tendencies.F90
rename to src/common/micro/mode_lima_tendencies.F90
index 6ee01ff6f07750ec44c2d1c86852f0006facecf4..d25250bcc03b6020789d727a7b4d915fce8ef20c 100644
--- a/src/common/micro/lima_tendencies.F90
+++ b/src/common/micro/mode_lima_tendencies.F90
@@ -3,273 +3,50 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!###############################
-MODULE MODI_LIMA_TENDENCIES
-!###############################
-  INTERFACE
-     SUBROUTINE LIMA_TENDENCIES (PTSTEP, LDCOMPUTE,                                                &
-                                 PEXNREF, PRHODREF, PPABST, PTHT,                                  &
-                                 PRVT, PRCT, PRRT, PRIT, PRST, PRGT, PRHT,                         &
-                                 PCCT, PCRT, PCIT, PCST, PCGT, PCHT,                               &
-                                 P_TH_HONC, P_RC_HONC, P_CC_HONC,                                  & 
-                                 P_CC_SELF,                                                        & 
-                                 P_RC_AUTO, P_CC_AUTO, P_CR_AUTO,                                  & 
-                                 P_RC_ACCR, P_CC_ACCR,                                             & 
-                                 P_CR_SCBU,                                                        & 
-                                 P_TH_EVAP, P_RR_EVAP, P_CR_EVAP,                                  & 
-                                 P_RI_CNVI, P_CI_CNVI,                                             & 
-                                 P_TH_DEPS, P_RS_DEPS,                                             & 
-                                 P_TH_DEPI, P_RI_DEPI,                                             & 
-                                 P_RI_CNVS, P_CI_CNVS,                                             &
-                                 P_CS_SSC,                                                         &
-                                 P_RI_AGGS, P_CI_AGGS,                                             & 
-                                 P_TH_DEPG, P_RG_DEPG,                                             & 
-                                 P_TH_BERFI, P_RC_BERFI,                                           & 
-                                 P_TH_RIM, P_RC_RIM, P_CC_RIM, P_RS_RIM, P_CS_RIM, P_RG_RIM,       & 
-                                 P_RI_HMS, P_CI_HMS, P_RS_HMS,                                     & 
-                                 P_TH_ACC, P_RR_ACC, P_CR_ACC, P_RS_ACC, P_CS_ACC, P_RG_ACC,       & 
-                                 P_RS_CMEL, P_CS_CMEL,                                             & 
-                                 P_TH_CFRZ, P_RR_CFRZ, P_CR_CFRZ, P_RI_CFRZ, P_CI_CFRZ,            & 
-                                 P_RI_CIBU, P_CI_CIBU,                                             & 
-                                 P_RI_RDSF, P_CI_RDSF,                                             & 
-                                 P_TH_WETG, P_RC_WETG, P_CC_WETG, P_RR_WETG, P_CR_WETG,            & 
-                                 P_RI_WETG, P_CI_WETG, P_RS_WETG, P_CS_WETG, P_RG_WETG, P_CG_WETG, P_RH_WETG, & 
-                                 P_TH_DRYG, P_RC_DRYG, P_CC_DRYG, P_RR_DRYG, P_CR_DRYG,            & 
-                                 P_RI_DRYG, P_CI_DRYG, P_RS_DRYG, P_CS_DRYG, P_RG_DRYG,            & 
-                                 P_RI_HMG, P_CI_HMG, P_RG_HMG,                                     & 
-                                 P_TH_GMLT, P_RR_GMLT, P_CR_GMLT, P_CG_GMLT,                       &
-                                 P_TH_DEPH, P_RH_DEPH,                                             &
-                                 P_TH_WETH, P_RC_WETH, P_CC_WETH, P_RR_WETH, P_CR_WETH,            &
-                                 P_RI_WETH, P_CI_WETH, P_RS_WETH, P_CS_WETH, P_RG_WETH, P_CG_WETH, P_RH_WETH, &
-                                 P_RG_COHG, P_CG_COHG,                                             &
-                                 P_TH_HMLT, P_RR_HMLT, P_CR_HMLT, P_CH_HMLT,                       &
-                                 PA_TH, PA_RV, PA_RC, PA_CC, PA_RR, PA_CR,                         &
-                                 PA_RI, PA_CI, PA_RS, PA_CS, PA_RG, PA_CG, PA_RH, PA_CH,           &
-                                 PEVAP3D,                                                          &
-                                 PCF1D, PIF1D, PPF1D                                               )
-!
-REAL,                 INTENT(IN)    :: PTSTEP 
-LOGICAL, DIMENSION(:),INTENT(IN)    :: LDCOMPUTE
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PEXNREF   ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHODREF  ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PPABST    ! Pressure
-REAL, DIMENSION(:),   INTENT(IN)    :: PTHT      ! Potential temperature
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PRVT      ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRCT      ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRRT      ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRIT      ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRST      ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PRGT      !
-REAL, DIMENSION(:),   INTENT(IN)    :: PRHT      ! Mixing ratios (kg/kg)
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PCCT      !
-REAL, DIMENSION(:),   INTENT(IN)    :: PCRT      !
-REAL, DIMENSION(:),   INTENT(IN)    :: PCIT      ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PCST      ! 
-REAL, DIMENSION(:),   INTENT(IN)    :: PCGT      !
-REAL, DIMENSION(:),   INTENT(IN)    :: PCHT      ! Number concentrations (/kg)
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_HONC
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RC_HONC
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CC_HONC ! droplets homogeneous freezing (HONC) : rc, Nc, ri=-rc, Ni=-Nc, th
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CC_SELF ! self collection of droplets (SELF) : Nc
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RC_AUTO
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CC_AUTO
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CR_AUTO ! autoconversion of cloud droplets (AUTO) : rc, Nc, rr=-rc, Nr
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RC_ACCR
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CC_ACCR ! accretion of droplets by rain drops (ACCR) : rc, Nc, rr=-rr
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CR_SCBU ! self collectio break up of drops (SCBU) : Nr
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_EVAP
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RR_EVAP
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CR_EVAP ! evaporation of rain drops (EVAP) : rr, Nr, rv=-rr
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RI_CNVI
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CI_CNVI  ! conversion snow -> ice (CNVI) : ri, Ni, rs=-ri
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_DEPS
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RS_DEPS  ! deposition of vapor on snow (DEPS) : rv=-rs, rs, th
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_DEPI
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RI_DEPI  ! deposition of vapor on ice (DEPI) : rv=-ri, ri, th
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RI_CNVS
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CI_CNVS  ! conversion ice -> snow (CNVS) : ri, Ni, rs=-ri
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CS_SSC   ! self collection of snow (SSC) : Ns
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RI_AGGS
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CI_AGGS  ! aggregation of ice on snow (AGGS) : ri, Ni, rs=-ri
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_DEPG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RG_DEPG  ! deposition of vapor on graupel (DEPG) : rv=-rg, rg, th
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_BERFI
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RC_BERFI ! Bergeron (BERFI) : rc, ri=-rc, th
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_RIM
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RC_RIM
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CC_RIM
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RS_RIM
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CS_RIM
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RG_RIM   ! cloud droplet riming (RIM) : rc, Nc, rs, Ns, rg, Ng=-Ns, th
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RI_HMS
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CI_HMS
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RS_HMS   ! hallett mossop snow (HMS) : ri, Ni, rs
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_ACC
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RR_ACC
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CR_ACC
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RS_ACC
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CS_ACC
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RG_ACC   ! rain accretion on aggregates (ACC) : rr, Nr, rs, Ns, rg, Ng=-Ns, th
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RS_CMEL
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CS_CMEL  ! conversion-melting (CMEL) : rs, Ns, rg=-rs, Ng=-Ns
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_CFRZ
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RR_CFRZ
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CR_CFRZ
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RI_CFRZ
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CI_CFRZ  ! rain freezing (CFRZ) : rr, Nr, ri, Ni, rg=-rr-ri, th
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RI_CIBU
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CI_CIBU  ! collisional ice break-up (CIBU) : ri, Ni, rs=-ri
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RI_RDSF
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CI_RDSF  ! rain drops freezing shattering (RDSF) : ri, Ni, rg=-ri
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RC_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CC_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RR_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CR_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RI_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CI_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RS_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CS_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RG_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CG_WETG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RH_WETG ! wet growth of graupel (WETG) : rc, NC, rr, Nr, ri, Ni, rs, Ns, rg, Ng, rh, Nh=-Ng, th
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_DRYG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RC_DRYG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CC_DRYG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RR_DRYG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CR_DRYG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RI_DRYG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CI_DRYG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RS_DRYG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CS_DRYG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RG_DRYG ! dry growth of graupel (DRYG) : rc, Nc, rr, Nr, ri, Ni, rs, Ns, rg, th
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RI_HMG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CI_HMG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RG_HMG  ! hallett mossop graupel (HMG) : ri, Ni, rg
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_GMLT
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RR_GMLT
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CR_GMLT
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CG_GMLT ! graupel melting (GMLT) : rr, Nr, rg=-rr, Ng, th
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_DEPH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RH_DEPH  ! deposition of vapor on hail (DEPH) : rv=-rh, rh, th
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RC_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CC_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RR_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CR_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RI_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CI_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RS_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CS_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RG_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CG_WETH
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RH_WETH ! wet growth of hail (WETH) : rc, NC, rr, Nr, ri, Ni, rs, Ns, rg, Ng, rh, th
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RG_COHG
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CG_COHG ! conversion hail -> graupel (COHG) : rg, Ng, rh=-rg; Nh=-Ng
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_TH_HMLT
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_RR_HMLT
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CR_HMLT
-REAL, DIMENSION(:),   INTENT(INOUT) :: P_CH_HMLT ! hail melting (HMLT) : rr, Nr, rh=-rr, Nh, th
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_TH
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_RV
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_RC
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_CC
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_RR
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_CR
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_RI
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_CI
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_RS
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_CS
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_RG
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_CG
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_RH
-REAL, DIMENSION(:),   INTENT(INOUT) :: PA_CH
-!
-REAL, DIMENSION(:),   INTENT(INOUT) :: PEVAP3D
-!
-REAL, DIMENSION(:),   INTENT(IN)    :: PCF1D
-REAL, DIMENSION(:),   INTENT(IN)    :: PIF1D
-REAL, DIMENSION(:),   INTENT(IN)    :: PPF1D
-!
-     END SUBROUTINE LIMA_TENDENCIES
-  END INTERFACE
-END MODULE MODI_LIMA_TENDENCIES
-!#####################################################################
-!
+MODULE MODE_LIMA_TENDENCIES
+  IMPLICIT NONE
+CONTAINS
 !#####################################################################
-SUBROUTINE LIMA_TENDENCIES (PTSTEP, LDCOMPUTE,                                                &
-                            PEXNREF, PRHODREF, PPABST, PTHT,                                  &
-                            PRVT, PRCT, PRRT, PRIT, PRST, PRGT, PRHT,                         &
-                            PCCT, PCRT, PCIT, PCST, PCGT, PCHT,                               &
-                            P_TH_HONC, P_RC_HONC, P_CC_HONC,                                  & 
-                            P_CC_SELF,                                                        & 
-                            P_RC_AUTO, P_CC_AUTO, P_CR_AUTO,                                  & 
-                            P_RC_ACCR, P_CC_ACCR,                                             & 
-                            P_CR_SCBU,                                                        & 
-                            P_TH_EVAP, P_RR_EVAP, P_CR_EVAP,                                  & 
-                            P_RI_CNVI, P_CI_CNVI,                                             & 
-                            P_TH_DEPS, P_RS_DEPS,                                             & 
-                            P_TH_DEPI, P_RI_DEPI,                                             & 
-                            P_RI_CNVS, P_CI_CNVS,                                             &
-                            P_CS_SSC,                                                         &
-                            P_RI_AGGS, P_CI_AGGS,                                             & 
-                            P_TH_DEPG, P_RG_DEPG,                                             & 
-                            P_TH_BERFI, P_RC_BERFI,                                           & 
-                            P_TH_RIM, P_RC_RIM, P_CC_RIM, P_RS_RIM, P_CS_RIM, P_RG_RIM,       & 
-                            P_RI_HMS, P_CI_HMS, P_RS_HMS,                                     & 
-                            P_TH_ACC, P_RR_ACC, P_CR_ACC, P_RS_ACC, P_CS_ACC, P_RG_ACC,       & 
-                            P_RS_CMEL, P_CS_CMEL,                                             & 
-                            P_TH_CFRZ, P_RR_CFRZ, P_CR_CFRZ, P_RI_CFRZ, P_CI_CFRZ,            & 
-                            P_RI_CIBU, P_CI_CIBU,                                             & 
-                            P_RI_RDSF, P_CI_RDSF,                                             & 
-                            P_TH_WETG, P_RC_WETG, P_CC_WETG, P_RR_WETG, P_CR_WETG,            & 
-                            P_RI_WETG, P_CI_WETG, P_RS_WETG, P_CS_WETG, P_RG_WETG, P_CG_WETG, P_RH_WETG, & 
-                            P_TH_DRYG, P_RC_DRYG, P_CC_DRYG, P_RR_DRYG, P_CR_DRYG,            & 
-                            P_RI_DRYG, P_CI_DRYG, P_RS_DRYG, P_CS_DRYG, P_RG_DRYG,            & 
-                            P_RI_HMG, P_CI_HMG, P_RG_HMG,                                     & 
-                            P_TH_GMLT, P_RR_GMLT, P_CR_GMLT, P_CG_GMLT,                       &
-                            P_TH_DEPH, P_RH_DEPH,                                             &
-                            P_TH_WETH, P_RC_WETH, P_CC_WETH, P_RR_WETH, P_CR_WETH,            &
-                            P_RI_WETH, P_CI_WETH, P_RS_WETH, P_CS_WETH, P_RG_WETH, P_CG_WETH, P_RH_WETH, &
-                            P_RG_COHG, P_CG_COHG,                                             &
-                            P_TH_HMLT, P_RR_HMLT, P_CR_HMLT, P_CH_HMLT,                       &
-                            PA_TH, PA_RV, PA_RC, PA_CC, PA_RR, PA_CR,                         &
-                            PA_RI, PA_CI, PA_RS, PA_CS, PA_RG, PA_CG, PA_RH, PA_CH,           &
-                            PEVAP3D,                                                          &
-                            PCF1D, PIF1D, PPF1D                                               )
+  SUBROUTINE LIMA_TENDENCIES (PTSTEP, LDCOMPUTE,                                                &
+                              PEXNREF, PRHODREF, PPABST, PTHT,                                  &
+                              PRVT, PRCT, PRRT, PRIT, PRST, PRGT, PRHT,                         &
+                              PCCT, PCRT, PCIT, PCST, PCGT, PCHT,                               &
+                              P_TH_HONC, P_RC_HONC, P_CC_HONC,                                  & 
+                              P_CC_SELF,                                                        & 
+                              P_RC_AUTO, P_CC_AUTO, P_CR_AUTO,                                  & 
+                              P_RC_ACCR, P_CC_ACCR,                                             & 
+                              P_CR_SCBU,                                                        & 
+                              P_TH_EVAP, P_RR_EVAP, P_CR_EVAP,                                  & 
+                              P_RI_CNVI, P_CI_CNVI,                                             & 
+                              P_TH_DEPS, P_RS_DEPS,                                             & 
+                              P_TH_DEPI, P_RI_DEPI,                                             & 
+                              P_RI_CNVS, P_CI_CNVS,                                             &
+                              P_CS_SSC,                                                         &
+                              P_RI_AGGS, P_CI_AGGS,                                             & 
+                              P_TH_DEPG, P_RG_DEPG,                                             & 
+                              P_TH_BERFI, P_RC_BERFI,                                           & 
+                              P_TH_RIM, P_RC_RIM, P_CC_RIM, P_RS_RIM, P_CS_RIM, P_RG_RIM,       & 
+                              P_RI_HMS, P_CI_HMS, P_RS_HMS,                                     & 
+                              P_TH_ACC, P_RR_ACC, P_CR_ACC, P_RS_ACC, P_CS_ACC, P_RG_ACC,       & 
+                              P_RS_CMEL, P_CS_CMEL,                                             & 
+                              P_TH_CFRZ, P_RR_CFRZ, P_CR_CFRZ, P_RI_CFRZ, P_CI_CFRZ,            & 
+                              P_RI_CIBU, P_CI_CIBU,                                             & 
+                              P_RI_RDSF, P_CI_RDSF,                                             & 
+                              P_TH_WETG, P_RC_WETG, P_CC_WETG, P_RR_WETG, P_CR_WETG,            & 
+                              P_RI_WETG, P_CI_WETG, P_RS_WETG, P_CS_WETG, P_RG_WETG, P_CG_WETG, P_RH_WETG, & 
+                              P_TH_DRYG, P_RC_DRYG, P_CC_DRYG, P_RR_DRYG, P_CR_DRYG,            & 
+                              P_RI_DRYG, P_CI_DRYG, P_RS_DRYG, P_CS_DRYG, P_RG_DRYG,            & 
+                              P_RI_HMG, P_CI_HMG, P_RG_HMG,                                     & 
+                              P_TH_GMLT, P_RR_GMLT, P_CR_GMLT, P_CG_GMLT,                       &
+                              P_TH_DEPH, P_RH_DEPH,                                             &
+                              P_TH_WETH, P_RC_WETH, P_CC_WETH, P_RR_WETH, P_CR_WETH,            &
+                              P_RI_WETH, P_CI_WETH, P_RS_WETH, P_CS_WETH, P_RG_WETH, P_CG_WETH, P_RH_WETH, &
+                              P_RG_COHG, P_CG_COHG,                                             &
+                              P_TH_HMLT, P_RR_HMLT, P_CR_HMLT, P_CH_HMLT,                       &
+                              PA_TH, PA_RV, PA_RC, PA_CC, PA_RR, PA_CR,                         &
+                              PA_RI, PA_CI, PA_RS, PA_CS, PA_RG, PA_CG, PA_RH, PA_CH,           &
+                              PEVAP3D,                                                          &
+                              PCF1D, PIF1D, PPF1D                                               )
 !     ######################################################################
 !!
 !!    PURPOSE
@@ -303,28 +80,28 @@ USE MODD_PARAM_LIMA_MIXED, ONLY : XLBG, XLBEXG, XCCG, XCXG, XLBH, XLBEXH, XCCH,
 USE MODD_PARAM_LIMA_COLD,  ONLY : XSCFAC, XLBI, XLBEXI, XLBS, XLBEXS, XLBDAS_MAX, XTRANS_MP_GAMMAS,  &
                                   XFVELOS, XLBDAS_MIN, XCCS, XCXS, XBS, XNS
 !
-USE MODI_LIMA_DROPLETS_HOM_FREEZING
-USE MODI_LIMA_DROPLETS_SELF_COLLECTION
-USE MODI_LIMA_DROPLETS_AUTOCONVERSION
-USE MODI_LIMA_DROPLETS_ACCRETION
-USE MODI_LIMA_DROPS_SELF_COLLECTION
-USE MODI_LIMA_RAIN_EVAPORATION
-USE MODI_LIMA_ICE_DEPOSITION
-USE MODI_LIMA_SNOW_DEPOSITION
-USE MODI_LIMA_SNOW_SELF_COLLECTION
-USE MODI_LIMA_ICE_AGGREGATION_SNOW
-USE MODI_LIMA_GRAUPEL_DEPOSITION
-USE MODI_LIMA_DROPLETS_RIMING_SNOW
-USE MODI_LIMA_RAIN_ACCR_SNOW
-USE MODI_LIMA_CONVERSION_MELTING_SNOW
-USE MODI_LIMA_RAIN_FREEZING
-USE MODI_LIMA_COLLISIONAL_ICE_BREAKUP
-USE MODI_LIMA_RAINDROP_SHATTERING_FREEZING
-USE MODI_LIMA_GRAUPEL
-USE MODI_LIMA_HAIL_DEPOSITION
-USE MODI_LIMA_HAIL
-!
-USE MODI_LIMA_BERGERON
+USE MODE_LIMA_DROPLETS_HOM_FREEZING, ONLY: LIMA_DROPLETS_HOM_FREEZING
+USE MODE_LIMA_DROPLETS_SELF_COLLECTION, ONLY: LIMA_DROPLETS_SELF_COLLECTION
+USE MODE_LIMA_DROPLETS_AUTOCONVERSION, ONLY: LIMA_DROPLETS_AUTOCONVERSION
+USE MODE_LIMA_DROPLETS_ACCRETION, ONLY: LIMA_DROPLETS_ACCRETION
+USE MODE_LIMA_DROPS_SELF_COLLECTION, ONLY: LIMA_DROPS_SELF_COLLECTION
+USE MODE_LIMA_RAIN_EVAPORATION, ONLY: LIMA_RAIN_EVAPORATION
+USE MODE_LIMA_ICE_DEPOSITION, ONLY: LIMA_ICE_DEPOSITION
+USE MODE_LIMA_SNOW_DEPOSITION, ONLY: LIMA_SNOW_DEPOSITION
+USE MODE_LIMA_SNOW_SELF_COLLECTION, ONLY: LIMA_SNOW_SELF_COLLECTION
+USE MODE_LIMA_ICE_AGGREGATION_SNOW, ONLY: LIMA_ICE_AGGREGATION_SNOW
+USE MODE_LIMA_GRAUPEL_DEPOSITION, ONLY: LIMA_GRAUPEL_DEPOSITION
+USE MODE_LIMA_DROPLETS_RIMING_SNOW, ONLY: LIMA_DROPLETS_RIMING_SNOW
+USE MODE_LIMA_RAIN_ACCR_SNOW, ONLY: LIMA_RAIN_ACCR_SNOW
+USE MODE_LIMA_CONVERSION_MELTING_SNOW, ONLY: LIMA_CONVERSION_MELTING_SNOW
+USE MODE_LIMA_RAIN_FREEZING, ONLY: LIMA_RAIN_FREEZING
+USE MODE_LIMA_COLLISIONAL_ICE_BREAKUP, ONLY: LIMA_COLLISIONAL_ICE_BREAKUP
+USE MODE_LIMA_RAINDROP_SHATTERING_FREEZING, ONLY: LIMA_RAINDROP_SHATTERING_FREEZING
+USE MODE_LIMA_GRAUPEL, ONLY: LIMA_GRAUPEL
+USE MODE_LIMA_HAIL_DEPOSITION, ONLY: LIMA_HAIL_DEPOSITION
+USE MODE_LIMA_HAIL, ONLY: LIMA_HAIL
+!
+USE MODE_LIMA_BERGERON, ONLY: LIMA_BERGERON
 !
 IMPLICIT NONE
 !
@@ -1087,3 +864,4 @@ IF (NMOM_H.GE.1) THEN
 END IF
    !  
 END SUBROUTINE LIMA_TENDENCIES
+END MODULE MODE_LIMA_TENDENCIES
diff --git a/src/common/micro/nrcolss.f90 b/src/common/micro/mode_nrcolss.f90
similarity index 77%
rename from src/common/micro/nrcolss.f90
rename to src/common/micro/mode_nrcolss.f90
index d21be2bd3b12000a5c5871c47e9ba5faa22d84f5..3da87d0a49abb048b03c968b8334228ac906dd62 100644
--- a/src/common/micro/nrcolss.f90
+++ b/src/common/micro/mode_nrcolss.f90
@@ -3,60 +3,14 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt  
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!--------------- special set of characters for RCS information
-!-----------------------------------------------------------------
-! $Source$ $Revision$
-! MASDEV4_7 init 2006/11/23 10:39:56
-!-----------------------------------------------------------------
-!     ###################
-      MODULE MODI_NRCOLSS
-!     ###################
-!
-INTERFACE
-!
-      SUBROUTINE NRCOLSS( KND, PALPHAS, PNUS, PALPHAR, PNUR,                 &
-                         PESR, PFALLS, PEXFALLS, PFALLEXPS, PFALLR, PEXFALLR,&
-                         PLBDASMAX, PLBDARMAX, PLBDASMIN, PLBDARMIN,         &
-                         PDINFTY, PNRCOLSS, PAG, PBS, PAS                    )
-!
-INTEGER, INTENT(IN) :: KND    ! Number of discrete size intervals in DS and DR  
-!
-REAL, INTENT(IN) :: PALPHAS   ! First shape parameter of the aggregates 
-                              ! size distribution (generalized gamma law)
-REAL, INTENT(IN) :: PNUS      ! Second shape parameter of the aggregates
-                              ! size distribution (generalized gamma law)
-REAL, INTENT(IN) :: PALPHAR   ! First shape parameter of the rain  
-                              ! size distribution (generalized gamma law)
-REAL, INTENT(IN) :: PNUR      ! Second shape parameter of the rain 
-                              ! size distribution (generalized gamma law)
-REAL, INTENT(IN) :: PESR      ! Efficiency of aggregates collecting rain 
-REAL, INTENT(IN) :: PFALLS    ! Fall speed constant of aggregates
-REAL, INTENT(IN) :: PEXFALLS  ! Fall speed exponent of aggregates
-REAL, INTENT(IN) :: PFALLEXPS ! Fall speed exponential of aggregates (Thompson 2008)
-REAL, INTENT(IN) :: PFALLR    ! Fall speed constant of rain 
-REAL, INTENT(IN) :: PEXFALLR  ! Fall speed exponent of rain 
-REAL, INTENT(IN) :: PLBDASMAX ! Maximun slope of size distribution of aggregates
-REAL, INTENT(IN) :: PLBDARMAX ! Maximun slope of size distribution of rain 
-REAL, INTENT(IN) :: PLBDASMIN ! Minimun slope of size distribution of aggregates
-REAL, INTENT(IN) :: PLBDARMIN ! Minimun slope of size distribution of rain 
-REAL, INTENT(IN) :: PDINFTY   ! Factor to define the largest diameter up to
-                              ! which the diameter integration is performed
-REAL, INTENT(IN) :: PAG, PBS, PAS
-!
-REAL, DIMENSION(:,:), INTENT(INOUT) :: PNRCOLSS! Scaled fall speed difference in
-                                               ! the mass collection kernel as a
-                                               ! function of LAMBDAX and LAMBDAZ
-!
-      END SUBROUTINE NRCOLSS
-!
-END INTERFACE
-!
-      END MODULE MODI_NRCOLSS
+MODULE MODE_NRCOLSS
+  IMPLICIT NONE
+CONTAINS
 !     ########################################################################
-      SUBROUTINE NRCOLSS( KND, PALPHAS, PNUS, PALPHAR, PNUR,                 &
-                         PESR, PFALLS, PEXFALLS, PFALLEXPS, PFALLR, PEXFALLR,&
-                         PLBDASMAX, PLBDARMAX, PLBDASMIN, PLBDARMIN,         &
-                         PDINFTY, PNRCOLSS, PAG, PBS, PAS                    )
+  SUBROUTINE NRCOLSS( KND, PALPHAS, PNUS, PALPHAR, PNUR,                  &
+                      PESR, PFALLS, PEXFALLS, PFALLEXPS, PFALLR, PEXFALLR,&
+                      PLBDASMAX, PLBDARMAX, PLBDASMIN, PLBDARMIN,         &
+                      PDINFTY, PNRCOLSS, PAG, PBS, PAS                    )
 !     ########################################################################
 !
 !
@@ -314,3 +268,4 @@ DO JLBDAS = 1,SIZE(PNRCOLSS(:,:),1)
 END DO
 !
 END SUBROUTINE NRCOLSS
+END MODULE MODE_NRCOLSS
diff --git a/src/common/micro/nscolrg.f90 b/src/common/micro/mode_nscolrg.f90
similarity index 78%
rename from src/common/micro/nscolrg.f90
rename to src/common/micro/mode_nscolrg.f90
index 790a01f76a32fef7603ff99d7ad1339a657fbb80..593d838d6951769c140653ea40fecdaac2352948 100644
--- a/src/common/micro/nscolrg.f90
+++ b/src/common/micro/mode_nscolrg.f90
@@ -3,60 +3,14 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt  
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!--------------- special set of characters for RCS information
-!-----------------------------------------------------------------
-! $Source$ $Revision$
-! MASDEV4_7 init 2006/11/23 10:43:02
-!-----------------------------------------------------------------
-!     ###################
-      MODULE MODI_NSCOLRG
-!     ###################
-!
-INTERFACE
-!
-      SUBROUTINE NSCOLRG( KND, PALPHAS, PZNUS, PALPHAR, PNUR,                &
-                         PESR, PFALLS, PEXFALLS, PFALLEXPS, PFALLR, PEXFALLR,&
-                         PLBDASMAX, PLBDARMAX, PLBDASMIN, PLBDARMIN,         &
-                         PDINFTY, PNSCOLRG,PAG, PBS, PAS                     )
-!
-INTEGER, INTENT(IN) :: KND    ! Number of discrete size intervals in DS and DR  
-!
-REAL, INTENT(IN) :: PALPHAS   ! First shape parameter of the aggregates 
-                              ! size distribution (generalized gamma law)
-REAL, INTENT(IN) :: PZNUS     ! Second shape parameter of the aggregates
-                              ! size distribution (generalized gamma law)
-REAL, INTENT(IN) :: PALPHAR   ! First shape parameter of the rain  
-                              ! size distribution (generalized gamma law)
-REAL, INTENT(IN) :: PNUR      ! Second shape parameter of the rain 
-                              ! size distribution (generalized gamma law)
-REAL, INTENT(IN) :: PESR      ! Efficiency of the aggregates collecting rain 
-REAL, INTENT(IN) :: PFALLS    ! Fall speed constant of the aggregates
-REAL, INTENT(IN) :: PEXFALLS  ! Fall speed exponent of the aggregates
-REAL, INTENT(IN) :: PFALLEXPS  ! Fall speed exponential constant of the aggregates
-REAL, INTENT(IN) :: PFALLR    ! Fall speed constant of rain 
-REAL, INTENT(IN) :: PEXFALLR  ! Fall speed exponent of rain 
-REAL, INTENT(IN) :: PLBDASMAX ! Maximun slope of size distribution of the aggregates
-REAL, INTENT(IN) :: PLBDARMAX ! Maximun slope of size distribution of rain 
-REAL, INTENT(IN) :: PLBDASMIN ! Minimun slope of size distribution of the aggregates
-REAL, INTENT(IN) :: PLBDARMIN ! Minimun slope of size distribution of rain 
-REAL, INTENT(IN) :: PDINFTY   ! Factor to define the largest diameter up to
-                              ! which the diameter integration is performed
-REAL, INTENT(IN) :: PAG, PBS, PAS
-!
-REAL, DIMENSION(:,:), INTENT(INOUT) :: PNSCOLRG! Scaled fall speed difference in
-                                               ! the mass collection kernel as a
-                                               ! function of LAMBDAX and LAMBDAZ
-!
-      END SUBROUTINE NSCOLRG
-!
-END INTERFACE
-!
-      END MODULE MODI_NSCOLRG
+MODULE MODE_NSCOLRG
+  IMPLICIT NONE
+CONTAINS
 !     ########################################################################
-      SUBROUTINE NSCOLRG( KND, PALPHAS, PZNUS, PALPHAR, PNUR,                &
-                         PESR, PFALLS, PEXFALLS, PFALLEXPS, PFALLR, PEXFALLR,&
-                         PLBDASMAX, PLBDARMAX, PLBDASMIN, PLBDARMIN,         &
-                         PDINFTY, PNSCOLRG,PAG, PBS, PAS                     )
+  SUBROUTINE NSCOLRG( KND, PALPHAS, PZNUS, PALPHAR, PNUR,                 &
+                      PESR, PFALLS, PEXFALLS, PFALLEXPS, PFALLR, PEXFALLR,&
+                      PLBDASMAX, PLBDARMAX, PLBDASMIN, PLBDARMIN,         &
+                      PDINFTY, PNSCOLRG,PAG, PBS, PAS                     )
 !     ########################################################################
 !
 !
@@ -315,3 +269,4 @@ DO JLBDAR = 1,SIZE(PNSCOLRG(:,:),1)
 END DO
 !
 END SUBROUTINE NSCOLRG
+END MODULE MODE_NSCOLRG
diff --git a/src/common/micro/nzcolx.f90 b/src/common/micro/mode_nzcolx.f90
similarity index 75%
rename from src/common/micro/nzcolx.f90
rename to src/common/micro/mode_nzcolx.f90
index e4493c2e60f617e81998e2466d534e887891feaf..5a3932bf461543d85ba4226d0c1d02531cd242fe 100644
--- a/src/common/micro/nzcolx.f90
+++ b/src/common/micro/mode_nzcolx.f90
@@ -3,62 +3,15 @@
 !MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt  
 !MNH_LIC for details. version 1.
 !-----------------------------------------------------------------
-!--------------- special set of characters for RCS information
-!-----------------------------------------------------------------
-! $Source$ $Revision$
-! MASDEV4_7 init 2006/05/18 13:07:25
-!-----------------------------------------------------------------
-!     ##################
-      MODULE MODI_NZCOLX
-!     ##################
-!
-INTERFACE
-!
-      SUBROUTINE NZCOLX( KND, PALPHAX, PNUX, PALPHAZ, PNUZ,          &
-                         PEXZ, PFALLX, PEXFALLX, PFALLEXPX,          &
-                         PFALLZ, PEXFALLZ, PFALLEXPZ,                &
-		         PLBDAXMAX, PLBDAZMAX, PLBDAXMIN, PLBDAZMIN, &
-		         PDINFTY, PNZCOLX                            )
-!
-INTEGER, INTENT(IN) :: KND    ! Number of discrete size intervals in DX and DZ  
-!
-!
-REAL, INTENT(IN) :: PALPHAX   ! First shape parameter of the specy X 
-			      ! size distribution (generalized gamma law)
-REAL, INTENT(IN) :: PNUX      ! Second shape parameter of the specy X
-			      ! size distribution (generalized gamma law)
-REAL, INTENT(IN) :: PALPHAZ   ! First shape parameter of the specy Z 
-			      ! size distribution (generalized gamma law)
-REAL, INTENT(IN) :: PNUZ      ! Second shape parameter of the specy Z
-REAL, INTENT(IN) :: PEXZ      ! Efficiency of specy X collecting specy Z
-REAL, INTENT(IN) :: PFALLX    ! Fall speed constant of specy X
-REAL, INTENT(IN) :: PEXFALLX  ! Fall speed exponent of specy X
-REAL, INTENT(IN) :: PFALLEXPX ! Fall speed exponential constant of specy X
-REAL, INTENT(IN) :: PFALLZ    ! Fall speed constant of specy Z
-REAL, INTENT(IN) :: PEXFALLZ  ! Fall speed exponent of specy Z
-REAL, INTENT(IN) :: PFALLEXPZ ! Fall speed exponential constant of specy Z
-REAL, INTENT(IN) :: PLBDAXMAX ! Maximun slope of size distribution of specy X
-REAL, INTENT(IN) :: PLBDAZMAX ! Maximun slope of size distribution of specy Z
-REAL, INTENT(IN) :: PLBDAXMIN ! Minimun slope of size distribution of specy X
-REAL, INTENT(IN) :: PLBDAZMIN ! Minimun slope of size distribution of specy Z
-REAL, INTENT(IN) :: PDINFTY   ! Factor to define the largest diameter up to
-			      ! which the diameter integration is performed
-!
-REAL, DIMENSION(:,:), INTENT(INOUT) :: PNZCOLX ! Scaled fall speed difference in
-				               ! the mass collection kernel as a
-					       ! function of LAMBDAX and LAMBDAZ
-!
-      END SUBROUTINE NZCOLX
-!
-END INTERFACE
-!
-      END MODULE MODI_NZCOLX
+MODULE MODE_NZCOLX
+  IMPLICIT NONE
+CONTAINS
 !     ################################################################
-      SUBROUTINE NZCOLX( KND, PALPHAX, PNUX, PALPHAZ, PNUZ,          &
-                         PEXZ, PFALLX, PEXFALLX, PFALLEXPX,          &
-                         PFALLZ, PEXFALLZ, PFALLEXPZ,                &
-		         PLBDAXMAX, PLBDAZMAX, PLBDAXMIN, PLBDAZMIN, &
-		         PDINFTY, PNZCOLX                            )
+  SUBROUTINE NZCOLX( KND, PALPHAX, PNUX, PALPHAZ, PNUZ,          &
+                     PEXZ, PFALLX, PEXFALLX, PFALLEXPX,          &
+                     PFALLZ, PEXFALLZ, PFALLEXPZ,                &
+                     PLBDAXMAX, PLBDAZMAX, PLBDAXMIN, PLBDAZMIN, &
+                     PDINFTY, PNZCOLX                            )
 !     ################################################################
 !
 !
@@ -276,3 +229,4 @@ DO JLBDAX = 1,SIZE(PNZCOLX(:,:),1)
 END DO
 !
 END SUBROUTINE NZCOLX
+END MODULE MODE_NZCOLX
diff --git a/src/common/micro/set_conc_lima.f90 b/src/common/micro/mode_set_conc_lima.f90
similarity index 100%
rename from src/common/micro/set_conc_lima.f90
rename to src/common/micro/mode_set_conc_lima.f90
diff --git a/src/common/micro/modi_lima.F90 b/src/common/micro/modi_lima.F90
new file mode 100644
index 0000000000000000000000000000000000000000..6cd5fa338a4bde2175fa985d0e14d370718c9ec7
--- /dev/null
+++ b/src/common/micro/modi_lima.F90
@@ -0,0 +1,65 @@
+MODULE MODI_LIMA
+!
+INTERFACE
+!
+   SUBROUTINE LIMA ( D, CST, BUCONF, TBUDGETS, KBUDGETS,                     &
+                     PTSTEP,                                                 &
+                     PRHODREF, PEXNREF, PDZZ,                                &
+                     PRHODJ, PPABST,                                         &
+                     NCCN, NIFN, NIMM,                                       &
+                     PDTHRAD, PTHT, PRT, PSVT, PW_NU,                        &
+                     PTHS, PRS, PSVS,                                        &
+                     PINPRC, PINDEP, PINPRR, PINPRI, PINPRS, PINPRG, PINPRH, &
+                     PEVAP3D, PCLDFR, PICEFR, PPRCFR, PFPR                   )
+!
+USE MODD_IO,  ONLY: TFILEDATA
+USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t
+USE MODD_BUDGET,   ONLY: TBUDGETDATA, TBUDGETCONF_t
+USE MODD_CST,            ONLY: CST_t
+!
+TYPE(DIMPHYEX_t),         INTENT(IN)    :: D
+TYPE(CST_t),              INTENT(IN)    :: CST
+TYPE(TBUDGETCONF_t),      INTENT(IN)    :: BUCONF
+TYPE(TBUDGETDATA), DIMENSION(KBUDGETS), INTENT(INOUT) :: TBUDGETS
+INTEGER, INTENT(IN) :: KBUDGETS
+!
+REAL,                     INTENT(IN)    :: PTSTEP     ! Time step
+!
+REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRHODREF   ! Reference density
+REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PEXNREF    ! Reference Exner function
+REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PDZZ       ! Layer thikness (m)
+!
+REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PRHODJ     ! Dry density * Jacobian
+REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PPABST     ! absolute pressure at t
+!
+INTEGER,                  INTENT(IN)    :: NCCN       ! for array size declarations
+INTEGER,                  INTENT(IN)    :: NIFN       ! for array size declarations
+INTEGER,                  INTENT(IN)    :: NIMM       ! for array size declarations
+!
+REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PDTHRAD    ! dT/dt due to radiation
+REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PTHT       ! Theta at time t
+REAL, DIMENSION(:,:,:,:), INTENT(IN)    :: PRT        ! Mixing ratios at time t
+REAL, DIMENSION(:,:,:,:), INTENT(IN)    :: PSVT       ! Concentrations at time t
+REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PW_NU      ! w for CCN activation
+!
+REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PTHS       ! Theta source
+REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PRS        ! Mixing ratios sources
+REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSVS       ! Concentration sources
+!
+REAL, DIMENSION(:,:),     INTENT(OUT)   :: PINPRC     ! Cloud instant precip
+REAL, DIMENSION(:,:),     INTENT(OUT)   :: PINDEP     ! Cloud droplets deposition
+REAL, DIMENSION(:,:),     INTENT(OUT)   :: PINPRR     ! Rain instant precip
+REAL, DIMENSION(:,:),     INTENT(OUT)   :: PINPRI     ! Rain instant precip
+REAL, DIMENSION(:,:),     INTENT(OUT)   :: PINPRS     ! Snow instant precip
+REAL, DIMENSION(:,:),     INTENT(OUT)   :: PINPRG     ! Graupel instant precip
+REAL, DIMENSION(:,:),     INTENT(OUT)   :: PINPRH     ! Rain instant precip
+REAL, DIMENSION(:,:,:),   INTENT(OUT)   :: PEVAP3D    ! Rain evap profile
+!
+REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PCLDFR     ! Cloud fraction
+REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PICEFR     ! Cloud fraction
+REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PPRCFR     ! Cloud fraction
+REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PFPR       ! Precipitation fluxes in altitude
+!
+END SUBROUTINE LIMA
+END INTERFACE
+END MODULE MODI_LIMA
diff --git a/src/common/micro/modi_lima_adjust_split.F90 b/src/common/micro/modi_lima_adjust_split.F90
new file mode 100644
index 0000000000000000000000000000000000000000..aeb84748a1a24cd73f99e9c042969df03f645deb
--- /dev/null
+++ b/src/common/micro/modi_lima_adjust_split.F90
@@ -0,0 +1,71 @@
+!     #############################
+      MODULE MODI_LIMA_ADJUST_SPLIT
+!     #############################
+!
+INTERFACE
+!
+   SUBROUTINE LIMA_ADJUST_SPLIT(D, CST, BUCONF, TBUDGETS, KBUDGETS, &
+                             KRR, KMI, HCONDENS, HLAMBDA3,        &
+                             OSUBG_COND, OSIGMAS, PTSTEP, PSIGQSAT,             &
+                             PRHODREF, PRHODJ, PEXNREF, PSIGS, PMFCONV,         &
+                             PPABST, PPABSTT, PZZ, PDTHRAD, PW_NU,              &
+                             PRT, PRS, PSVT, PSVS,                              &
+                             PTHS, PSRCS, PCLDFR, PICEFR, PRC_MF, PRI_MF, PCF_MF)
+!
+!USE MODD_IO,    ONLY: TFILEDATA
+USE MODD_DIMPHYEX,       ONLY: DIMPHYEX_t
+USE MODD_BUDGET,   ONLY: TBUDGETDATA, TBUDGETCONF_t
+USE MODD_CST,            ONLY: CST_t
+!
+TYPE(DIMPHYEX_t),         INTENT(IN)   :: D
+TYPE(CST_t),              INTENT(IN)    :: CST
+TYPE(TBUDGETCONF_t),      INTENT(IN)    :: BUCONF
+TYPE(TBUDGETDATA), DIMENSION(KBUDGETS), INTENT(INOUT) :: TBUDGETS
+INTEGER, INTENT(IN) :: KBUDGETS
+!
+INTEGER,                  INTENT(IN)   :: KRR        ! Number of moist variables
+INTEGER,                  INTENT(IN)   :: KMI        ! Model index 
+CHARACTER(len=80),        INTENT(IN)   :: HCONDENS
+CHARACTER(len=4),         INTENT(IN)   :: HLAMBDA3   ! formulation for lambda3 coeff
+LOGICAL,                  INTENT(IN)   :: OSUBG_COND ! Switch for Subgrid
+                                                     ! Condensation
+LOGICAL,                  INTENT(IN)   :: OSIGMAS    ! Switch for Sigma_s:
+                                                     ! use values computed in CONDENSATION
+                                                     ! or that from turbulence scheme
+REAL,                     INTENT(IN)   :: PTSTEP     ! Time step
+REAL,                     INTENT(IN)   :: PSIGQSAT   ! coeff applied to qsat variance contribution
+!
+REAL, DIMENSION(:,:,:),   INTENT(IN)   ::  PRHODREF  ! Dry density of the 
+                                                     ! reference state
+REAL, DIMENSION(:,:,:),   INTENT(IN)   ::  PRHODJ    ! Dry density * Jacobian
+REAL, DIMENSION(:,:,:),   INTENT(IN)   ::  PEXNREF   ! Reference Exner function
+REAL, DIMENSION(:,:,:),   INTENT(IN)   ::  PSIGS     ! Sigma_s at time t
+REAL, DIMENSION(:,:,:),   INTENT(IN)   ::  PMFCONV   ! 
+REAL, DIMENSION(:,:,:),   INTENT(IN)   ::  PPABST    ! Absolute Pressure at t     
+REAL, DIMENSION(:,:,:),   INTENT(IN)   ::  PPABSTT   ! Absolute Pressure at t+dt     
+REAL, DIMENSION(:,:,:),   INTENT(IN)   ::  PZZ       !     
+REAL, DIMENSION(:,:,:),   INTENT(IN)   :: PDTHRAD   ! Radiative temperature tendency
+REAL, DIMENSION(:,:,:),   INTENT(IN)   :: PW_NU     ! updraft velocity used for
+!
+REAL, DIMENSION(:,:,:,:), INTENT(IN)    :: PRT       ! m.r. at t
+!
+REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PRS       ! m.r. source
+!
+REAL, DIMENSION(:,:,:,:), INTENT(IN)    :: PSVT ! Concentrations at time t
+!
+REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PSVS ! Concentration sources
+!
+REAL, DIMENSION(:,:,:),   INTENT(INOUT) :: PTHS      ! Theta source
+!
+REAL, DIMENSION(:,:,:),   INTENT(OUT)   :: PSRCS     ! Second-order flux
+                                                     ! s'rc'/2Sigma_s2 at time t+1
+                                                     ! multiplied by Lambda_3
+REAL, DIMENSION(:,:,:),   INTENT(INOUT)   :: PCLDFR    ! Cloud fraction          
+REAL, DIMENSION(:,:,:),   INTENT(INOUT)   :: PICEFR    ! Cloud fraction          
+REAL, DIMENSION(:,:,:),     INTENT(IN)    :: PRC_MF! Convective Mass Flux liquid mixing ratio
+REAL, DIMENSION(:,:,:),     INTENT(IN)    :: PRI_MF! Convective Mass Flux ice mixing ratio
+REAL, DIMENSION(:,:,:),     INTENT(IN)    :: PCF_MF! Convective Mass Flux Cloud fraction 
+!
+END SUBROUTINE LIMA_ADJUST_SPLIT
+END INTERFACE
+END MODULE MODI_LIMA_ADJUST_SPLIT