diff --git a/src/LIB/SURCOUCHE/src/modd_structure_ll.f90 b/src/LIB/SURCOUCHE/src/modd_structure_ll.f90
index 3edf470ce6da9f08105f9659fc2f0dfa0af9cd19..3a433f5e0f08f1ce1193e487d43a396f4cda4d26 100644
--- a/src/LIB/SURCOUCHE/src/modd_structure_ll.f90
+++ b/src/LIB/SURCOUCHE/src/modd_structure_ll.f90
@@ -49,10 +49,12 @@
 !     Original 04/05/98
 !     Juan     19/08/2005: distinction Halo NORD/SUD & EST/WEST
 !     M.Moge   05/02/2015: extended HALO (halo size + 1)
+!     P. Wautelet 24/10/2017: initialize ZONE_ll type
 !
 !-------------------------------------------------------------------------------
 !
-  USE MODD_ARGSLIST_ll, ONLY : LIST_ll
+  USE MODD_ARGSLIST_ll,   ONLY : LIST_ll
+  USE MODD_PARAMETERS,    ONLY : NNEGUNDEF
   USE MODD_PARAMETERS_ll, ONLY : NMAXRIM
 !
 !-------------------------------------------------------------------------------
@@ -91,11 +93,11 @@ END INTERFACE
 !
   SEQUENCE
 !
-  INTEGER :: NUMBER       ! zone's number
-  INTEGER :: MSSGTAG      ! Message Tag
-  INTEGER :: NXOR, NXEND  ! coordinate of the origine point
-  INTEGER :: NYOR, NYEND  ! coordinate of the last point
-  INTEGER :: NZOR, NZEND  !
+  INTEGER :: NUMBER = NNEGUNDEF ! zone's number
+  INTEGER :: MSSGTAG = NNEGUNDEF      ! Message Tag
+  INTEGER :: NXOR = NNEGUNDEF, NXEND = NNEGUNDEF  ! coordinate of the origin point
+  INTEGER :: NYOR = NNEGUNDEF, NYEND = NNEGUNDEF  ! coordinate of the last point
+  INTEGER :: NZOR = NNEGUNDEF, NZEND = NNEGUNDEF  !
 !!$  INTEGER :: NXOR, NYOR, NZOR    ! coordinate of the origine point
 !!$  INTEGER :: NXEND, NYEND, NZEND ! coordinate of the last point
 
diff --git a/src/LIB/SURCOUCHE/src/mode_init_ll.f90 b/src/LIB/SURCOUCHE/src/mode_init_ll.f90
index 1cc488308593d5c2e1cbb3fc841a99b8e7f0503d..20b94bbef68f887001e292621da16d4299fcbd6d 100644
--- a/src/LIB/SURCOUCHE/src/mode_init_ll.f90
+++ b/src/LIB/SURCOUCHE/src/mode_init_ll.f90
@@ -231,7 +231,9 @@
   ALLOCATE(NXOR_ALL(JPMODELMAX), NYOR_ALL(JPMODELMAX)) 
   ALLOCATE(NXEND_ALL(JPMODELMAX), NYEND_ALL(JPMODELMAX)) 
   ALLOCATE(NDAD(JPMODELMAX)) 
-  ALLOCATE(CLBCX(JPMODELMAX, 2), CLBCY(JPMODELMAX, 2)) 
+  ALLOCATE(CLBCX(JPMODELMAX, 2), CLBCY(JPMODELMAX, 2))
+  CLBCX(:,:)=''
+  CLBCY(:,:)=''
 !
 !-------------------------------------------------------------------------------
 !
diff --git a/src/MNH/modd_lbcn.f90 b/src/MNH/modd_lbcn.f90
index ccc82133b9b447bb29af012706fe48b4c67070ae..5c3dfa3eec70079bc6c2022ec4977986e04c8533 100644
--- a/src/MNH/modd_lbcn.f90
+++ b/src/MNH/modd_lbcn.f90
@@ -52,12 +52,10 @@ IMPLICIT NONE
 
 TYPE LBC_t
 !
-!JUAN
-  CHARACTER(LEN=4), DIMENSION(:),POINTER  :: CLBCX =>NULL() ! X-direction LBC type at left(1)
-                                             ! and right(2) boundaries 
-  CHARACTER(LEN=4), DIMENSION(:),POINTER  :: CLBCY =>NULL() ! Y-direction LBC type at left(1)
-                                             ! and right(2) boundaries 
-!JUAN
+  CHARACTER(LEN=4), DIMENSION(2) :: CLBCX = '' ! X-direction LBC type at left(1)
+                                             ! and right(2) boundaries
+  CHARACTER(LEN=4), DIMENSION(2) :: CLBCY = '' ! Y-direction LBC type at left(1)
+                                             ! and right(2) boundaries
   INTEGER, DIMENSION(2)          :: NLBLX ! X-direction characteristic large
                                              ! scale length at left(1) and 
                                              ! right(2) boundaries ( number of
@@ -76,7 +74,6 @@ TYPE LBC_t
 END TYPE LBC_t
 
 TYPE(LBC_t), DIMENSION(JPMODELMAX), TARGET, SAVE :: LBC_MODEL
-LOGICAL    , DIMENSION(JPMODELMAX),         SAVE :: LBC_FIRST_CALL = .TRUE.
 
 CHARACTER(LEN=4), DIMENSION(:), POINTER :: CLBCX=>NULL()
 CHARACTER(LEN=4), DIMENSION(:), POINTER :: CLBCY=>NULL()
@@ -92,13 +89,6 @@ CONTAINS
 SUBROUTINE LBC_GOTO_MODEL(KFROM, KTO)
 INTEGER, INTENT(IN) :: KFROM, KTO
 !
-!JUAN
-IF (LBC_FIRST_CALL(KTO)) THEN
-ALLOCATE (LBC_MODEL(KTO)%CLBCX(2))
-ALLOCATE (LBC_MODEL(KTO)%CLBCY(2))
-LBC_FIRST_CALL(KTO) = .FALSE.
-ENDIF
-!JUAN
 !
 ! Save current state for allocated arrays
 !