diff --git a/src/common/turb/turb.F90 b/src/common/turb/turb.F90
index eb1fa12b60c286d6136a5beb0f89ea0eb42c0e92..065e45f21126b2bb9b6fea82accdd37d204d4e31 100644
--- a/src/common/turb/turb.F90
+++ b/src/common/turb/turb.F90
@@ -244,6 +244,7 @@ USE MODD_BUDGET, ONLY:      NBUDGET_U,  NBUDGET_V,  NBUDGET_W,  NBUDGET_TH, NBUD
                             TBUDGETDATA, TBUDGETCONF_t
 USE MODD_FIELD, ONLY: TFIELDDATA,TYPEREAL
 USE MODD_IO, ONLY: TFILEDATA
+USE MODD_ARGSLIST_ll, ONLY : LIST_ll
 !
 USE MODD_LES
 USE MODD_IBM_PARAM_n,    ONLY: LIBM, XIBM_LS, XIBM_XMUT
@@ -260,6 +261,8 @@ USE MODE_TM06, ONLY: TM06
 USE MODE_UPDATE_LM, ONLY: UPDATE_LM
 USE MODE_BUDGET,         ONLY: BUDGET_STORE_INIT, BUDGET_STORE_END
 USE MODE_IO_FIELD_WRITE, ONLY: IO_FIELD_WRITE
+USE MODE_ll, ONLY: ADD2DFIELD_ll, UPDATE_HALO_ll, CLEANLIST_ll, &
+                   LWEST_ll, LEAST_ll, LSOUTH_ll, LNORTH_ll
 USE MODE_SBL
 USE MODE_SOURCES_NEG_CORRECT, ONLY: SOURCES_NEG_CORRECT
 USE MODE_EMOIST, ONLY: EMOIST
@@ -438,8 +441,15 @@ REAL, DIMENSION(D%NIT,D%NJT,D%NKT) ::     &
           ZSHEAR, ZDUDZ, ZDVDZ,       &  ! horizontal-wind vertical gradient
           ZLVOCPEXNM,ZLSOCPEXNM,      &  ! Lv/Cp/EXNREF and Ls/Cp/EXNREF at t-1
           ZATHETA_ICE,ZAMOIST_ICE,    &  ! coefficients for s = f (Thetal,Rnp)
-          ZWORK1                         ! working array syntax
-
+          ZRVSAT, ZDRVSATDT,          &  ! local array for routine compute_function_thermo
+          ZWORK1,                     &  ! working array syntax
+          ZETHETA,ZEMOIST,            &  ! coef ETHETA and EMOIST (for DEAR routine)
+          ZDTHLDZ,ZDRTDZ,             &  ! dtheta_l/dz, drt_dz used for computing the stablity criterion
+          ZCOEF_AMPL,                 &  ! Amplification coefficient of the mixing length
+                                         ! when the instability criterium is verified (routine CLOUD_MODIF_LM)
+          ZLM_CLOUD                      ! Turbulent mixing length in the clouds (routine CLOUD_MODIF_LM)
+!
+!
 REAL, DIMENSION(D%NIT,D%NJT,D%NKT,KRR) :: ZRM ! initial mixing ratio 
 REAL, DIMENSION(D%NIT,D%NJT) ::  ZTAU11M,ZTAU12M,  &
                                                  ZTAU22M,ZTAU33M,  &
@@ -451,7 +461,7 @@ REAL, DIMENSION(D%NIT,D%NJT) ::  ZTAU11M,ZTAU12M,  &
             ! - Cd*||u|| where ||u|| is the module of the wind tangential to 
             ! orography (ZUSLOPE,ZVSLOPE) at the surface.
                                                  ZUSTAR, ZLMO,     &
-                                                 ZRVM, ZSFRV
+                                                 ZRVM, ZSFRV,ZWORK2D
             ! friction velocity, Monin Obuhkov length, work arrays for vapor
 !
             ! Virtual Potential Temp. used
@@ -459,8 +469,15 @@ REAL, DIMENSION(D%NIT,D%NJT) ::  ZTAU11M,ZTAU12M,  &
 !
 REAL                :: ZEXPL        ! 1-PIMPL deg of expl.
 REAL                :: ZRVORD       ! RV/RD
+REAL                :: ZEPS         ! XMV / XMD
+REAL                :: ZD           ! distance to the surface (for routine DELT)
+REAL                :: ZVAR         ! Intermediary variable (for routine DEAR)
+REAL                :: ZPENTE       ! Slope of the amplification straight line (for routine CLOUD_MODIF_LM)
+REAL                :: ZCOEF_AMPL_CEI_NUL! Ordonnate at the origin of the
+                                         ! amplification straight line (for routine CLOUD_MODIF_LM)
 !
 INTEGER             :: IIE,IIB,IJE,IJB,IKB,IKE      ! index value for the
+INTEGER             :: IINFO_ll     ! return code of parallel routine
 ! Beginning and the End of the physical domain for the mass points
 INTEGER             :: IKT          ! array size in k direction
 INTEGER             :: IKTB,IKTE    ! start, end of k loops in physical domain 
@@ -473,6 +490,7 @@ REAL                :: ZALPHA       ! work coefficient :
 !
 REAL :: ZTIME1, ZTIME2
 TYPE(TFIELDDATA) :: TZFIELD
+TYPE(LIST_ll), POINTER :: TZFIELDS_ll  ! list of fields to exchange (for UPDATE_ROTATE_WIND)
 !
 !*      1.PRELIMINARIES
 !         -------------
@@ -1333,8 +1351,6 @@ CONTAINS
 !
 !*       0.    DECLARATIONS
 !              ------------
-USE MODE_ll
-USE MODD_ARGSLIST_ll, ONLY : LIST_ll
 !
 IMPLICIT NONE
 !
@@ -1343,11 +1359,6 @@ IMPLICIT NONE
 REAL, DIMENSION(:,:), INTENT(INOUT) :: PUSLOPE,PVSLOPE
 ! tangential surface fluxes in the axes following the orography
 !
-!*       0.2   Declarations of local variables :
-!
-INTEGER             :: IIB,IIE,IJB,IJE,IIU,IJU ! index values for the physical subdomain
-TYPE(LIST_ll), POINTER :: TZFIELDS_ll  ! list of fields to exchange
-INTEGER                :: IINFO_ll     ! return code of parallel routine
 REAL(KIND=JPRB) :: ZHOOK_HANDLE
 IF (LHOOK) CALL DR_HOOK('TURB:UPDATE_ROTATE_WIND',0,ZHOOK_HANDLE)
 !
@@ -1355,10 +1366,6 @@ IF (LHOOK) CALL DR_HOOK('TURB:UPDATE_ROTATE_WIND',0,ZHOOK_HANDLE)
 !
 NULLIFY(TZFIELDS_ll)
 !
-IIU=SIZE(PUSLOPE,1)
-IJU=SIZE(PUSLOPE,2)
-CALL GET_INDICE_ll (IIB,IJB,IIE,IJE,IIU,IJU)
-!
 !         2 Update halo if necessary
 !
 !!$IF (NHALO == 1) THEN
@@ -1371,20 +1378,20 @@ CALL GET_INDICE_ll (IIB,IJB,IIE,IJE,IIU,IJU)
 !        3 Boundary conditions for non cyclic case
 !
 IF ( HLBCX(1) /= "CYCL" .AND. LWEST_ll()) THEN
-  PUSLOPE(IIB-1,:)=PUSLOPE(IIB,:)
-  PVSLOPE(IIB-1,:)=PVSLOPE(IIB,:)
+  PUSLOPE(D%NIB-1,:)=PUSLOPE(D%NIB,:)
+  PVSLOPE(D%NIB-1,:)=PVSLOPE(D%NIB,:)
 END IF
 IF ( HLBCX(2) /= "CYCL" .AND. LEAST_ll()) THEN
-  PUSLOPE(IIE+1,:)=PUSLOPE(IIE,:)
-  PVSLOPE(IIE+1,:)=PVSLOPE(IIE,:)
+  PUSLOPE(D%NIE+1,:)=PUSLOPE(D%NIE,:)
+  PVSLOPE(D%NIE+1,:)=PVSLOPE(D%NIE,:)
 END IF
 IF ( HLBCY(1) /= "CYCL" .AND. LSOUTH_ll()) THEN
-  PUSLOPE(:,IJB-1)=PUSLOPE(:,IJB)
-  PVSLOPE(:,IJB-1)=PVSLOPE(:,IJB)
+  PUSLOPE(:,D%NJB-1)=PUSLOPE(:,D%NJB)
+  PVSLOPE(:,D%NJB-1)=PVSLOPE(:,D%NJB)
 END IF
 IF(  HLBCY(2) /= "CYCL" .AND. LNORTH_ll()) THEN
-  PUSLOPE(:,IJE+1)=PUSLOPE(:,IJE)
-  PVSLOPE(:,IJE+1)=PVSLOPE(:,IJE)
+  PUSLOPE(:,D%NJE+1)=PUSLOPE(:,D%NJE)
+  PVSLOPE(:,D%NJE+1)=PVSLOPE(:,D%NJE)
 END IF
 !
 IF (LHOOK) CALL DR_HOOK('TURB:UPDATE_ROTATE_WIND',1,ZHOOK_HANDLE)
@@ -1411,7 +1418,6 @@ END SUBROUTINE UPDATE_ROTATE_WIND
 !
 !*       0.    DECLARATIONS
 !              ------------
-USE MODD_CST, ONLY: CST_t
 !
 IMPLICIT NONE
 !
@@ -1422,13 +1428,6 @@ REAL, DIMENSION(D%NIT,D%NJT,D%NKT), INTENT(IN)    :: PT,PEXN,PCP
 !
 REAL, DIMENSION(D%NIT,D%NJT,D%NKT), INTENT(OUT)   :: PLOCPEXN
 REAL, DIMENSION(D%NIT,D%NJT,D%NKT), INTENT(OUT)   :: PAMOIST,PATHETA
-! 
-!*       0.2   Declarations of local variables
-!
-REAL                :: ZEPS         ! XMV / XMD
-REAL, DIMENSION(D%NIT,D%NJT,D%NKT) :: ZRVSAT
-REAL, DIMENSION(D%NIT,D%NJT,D%NKT) :: ZDRVSATDT
-INTEGER :: JI,JJ,JK
 !
 !-------------------------------------------------------------------------------
 !
@@ -1506,11 +1505,6 @@ END SUBROUTINE COMPUTE_FUNCTION_THERMO
 !
 REAL, DIMENSION(D%NIT,D%NJT,D%NKT), INTENT(OUT)   :: PLM
 LOGICAL,                INTENT(IN)    :: ODZ
-!
-!*       0.2   Declarations of local variables
-!
-REAL                :: ZD           ! distance to the surface
-!
 !-------------------------------------------------------------------------------
 !
 REAL(KIND=JPRB) :: ZHOOK_HANDLE
@@ -1605,18 +1599,6 @@ END SUBROUTINE DELT
 !
 REAL, DIMENSION(D%NIT,D%NJT,D%NKT), INTENT(OUT)   :: PLM
 !
-!*       0.2   Declarations of local variables
-!
-REAL                :: ZD           ! distance to the surface
-REAL                :: ZVAR         ! Intermediary variable
-REAL, DIMENSION(SIZE(PUT,1),SIZE(PUT,2)) ::   ZWORK2D
-!
-REAL, DIMENSION(D%NIT,D%NJT,D%NKT) ::     &
-            ZDTHLDZ,ZDRTDZ,     &!dtheta_l/dz, drt_dz used for computing the stablity
-!                                ! criterion 
-            ZETHETA,ZEMOIST             !coef ETHETA and EMOIST
-!----------------------------------------------------------------------------
-!
 !-------------------------------------------------------------------------------
 !
 !   initialize the mixing length with the mesh grid
@@ -1789,15 +1771,6 @@ END SUBROUTINE DEAR
 !
 IMPLICIT NONE
 !
-REAL :: ZPENTE            ! Slope of the amplification straight line
-REAL :: ZCOEF_AMPL_CEI_NUL! Ordonnate at the origin of the
-                          ! amplification straight line
-REAL, DIMENSION(D%NIT,D%NJT,D%NKT) :: ZCOEF_AMPL
-                          ! Amplification coefficient of the mixing length
-                          ! when the instability criterium is verified 
-REAL, DIMENSION(D%NIT,D%NJT,D%NKT) :: ZLM_CLOUD
-                          ! Turbulent mixing length in the clouds
-!
 !-------------------------------------------------------------------------------
 !
 !*       1.    INITIALISATION