Index: /LMDZ5/trunk/libf/dyn3d/conf_gcm.F90
===================================================================
--- /LMDZ5/trunk/libf/dyn3d/conf_gcm.F90	(revision 2441)
+++ /LMDZ5/trunk/libf/dyn3d/conf_gcm.F90	(revision 2442)
@@ -297,4 +297,9 @@
   CALL getin('dissip_deltaz',dissip_deltaz )
   CALL getin('dissip_zref',dissip_zref )
+
+  ! ngroup
+  ngroup=3
+  CALL getin('ngroup',ngroup)
+
 
   ! top_bound sponge: only active if ok_strato=.true. and iflag_top_bound!=0
Index: /LMDZ5/trunk/libf/dyn3d/groupe.F
===================================================================
--- /LMDZ5/trunk/libf/dyn3d/groupe.F	(revision 2441)
+++ /LMDZ5/trunk/libf/dyn3d/groupe.F	(revision 2442)
@@ -22,6 +22,6 @@
 #include "comvert.h"
 
-      integer ngroup
-      parameter (ngroup=3)
+!     integer ngroup
+!     parameter (ngroup=3)
 
 
Index: /LMDZ5/trunk/libf/dyn3d/groupeun.F
===================================================================
--- /LMDZ5/trunk/libf/dyn3d/groupeun.F	(revision 2441)
+++ /LMDZ5/trunk/libf/dyn3d/groupeun.F	(revision 2442)
@@ -13,6 +13,6 @@
       REAL q(iip1,jjmax,llmax)
 
-      INTEGER ngroup
-      PARAMETER (ngroup=3)
+!     INTEGER ngroup
+!     PARAMETER (ngroup=3)
 
       REAL airecn,qn
@@ -37,7 +37,7 @@
 
       LOGICAL, SAVE :: first = .TRUE.
-      INTEGER,SAVE :: i_index(iim,ngroup)
+!     INTEGER,SAVE :: i_index(iim,ngroup)
       INTEGER      :: offset
-      REAL         :: qsum(iim/ngroup)
+!     REAL         :: qsum(iim/ngroup)
 
       IF (first) THEN
@@ -142,6 +142,6 @@
 #include "comgeom2.h"
 
-      INTEGER ngroup
-      PARAMETER (ngroup=3)
+!     INTEGER ngroup
+!     PARAMETER (ngroup=3)
 
       REAL airen,airecn
Index: /LMDZ5/trunk/libf/dyn3d_common/comconst.h
===================================================================
--- /LMDZ5/trunk/libf/dyn3d_common/comconst.h	(revision 2441)
+++ /LMDZ5/trunk/libf/dyn3d_common/comconst.h	(revision 2442)
@@ -6,5 +6,5 @@
 
       COMMON/comconsti/im,jm,lllm,imp1,jmp1,lllmm1,lllmp1,lcl,          &
-     &                 iflag_top_bound,mode_top_bound
+     &                 iflag_top_bound,mode_top_bound,ngroup
       COMMON/comconstr/dtvr,daysec,                                     &
      & pi,dtphys,dtdiss,rad,r,cpp,kappa,cotot,unsim,g,omeg              &
@@ -32,4 +32,5 @@
 ! top_bound sponge:
       INTEGER iflag_top_bound ! sponge type
+      INTEGER ngroup
       INTEGER mode_top_bound  ! sponge mode
       REAL tau_top_bound ! inverse of sponge characteristic time scale (Hz)
Index: /LMDZ5/trunk/libf/dyn3dmem/conf_gcm.F90
===================================================================
--- /LMDZ5/trunk/libf/dyn3dmem/conf_gcm.F90	(revision 2441)
+++ /LMDZ5/trunk/libf/dyn3dmem/conf_gcm.F90	(revision 2442)
@@ -326,4 +326,9 @@
   CALL getin('dissip_zref',dissip_zref )
 
+  ! ngroup
+  ngroup=3
+  CALL getin('ngroup',ngroup)
+
+  ! mode_top_bound : fields towards which sponge relaxation will be done:
   ! top_bound sponge: only active if ok_strato=.true. and iflag_top_bound!=0
   !                   iflag_top_bound=0 for no sponge
Index: /LMDZ5/trunk/libf/dyn3dmem/groupe_loc.F
===================================================================
--- /LMDZ5/trunk/libf/dyn3dmem/groupe_loc.F	(revision 2441)
+++ /LMDZ5/trunk/libf/dyn3dmem/groupe_loc.F	(revision 2442)
@@ -22,6 +22,6 @@
 #include "comvert.h"
 
-      integer ngroup
-      parameter (ngroup=3)
+!     integer ngroup
+!     parameter (ngroup=3)
 
 
Index: /LMDZ5/trunk/libf/dyn3dmem/groupeun_loc.F
===================================================================
--- /LMDZ5/trunk/libf/dyn3dmem/groupeun_loc.F	(revision 2441)
+++ /LMDZ5/trunk/libf/dyn3dmem/groupeun_loc.F	(revision 2442)
@@ -12,6 +12,6 @@
       REAL q(iip1,sb:se,llmax)
 
-      INTEGER ngroup
-      PARAMETER (ngroup=3)
+!     INTEGER ngroup
+!     PARAMETER (ngroup=3)
 
       REAL airecn,qn
@@ -38,7 +38,7 @@
       LOGICAL, SAVE :: first = .TRUE.
 !$OMP THREADPRIVATE(first)
-      INTEGER,SAVE :: i_index(iim,ngroup)
+!     INTEGER,SAVE :: i_index(iim,ngroup)
       INTEGER      :: offset
-      REAL         :: qsum(iim/ngroup)
+!     REAL         :: qsum(iim/ngroup)
 
       IF (first) THEN
@@ -143,6 +143,6 @@
 #include "comgeom2.h"
 
-      INTEGER ngroup
-      PARAMETER (ngroup=3)
+!     INTEGER ngroup
+!     PARAMETER (ngroup=3)
 
       REAL airen,airecn
Index: /LMDZ5/trunk/libf/dyn3dpar/conf_gcm.F90
===================================================================
--- /LMDZ5/trunk/libf/dyn3dpar/conf_gcm.F90	(revision 2441)
+++ /LMDZ5/trunk/libf/dyn3dpar/conf_gcm.F90	(revision 2442)
@@ -324,4 +324,8 @@
   CALL getin('dissip_deltaz',dissip_deltaz )
   CALL getin('dissip_zref',dissip_zref )
+
+  ! ngroup
+  ngroup=3
+  CALL getin('ngroup',ngroup)
 
   ! top_bound sponge: only active if ok_strato=.true. and iflag_top_bound!=0
Index: /LMDZ5/trunk/libf/dyn3dpar/groupe_p.F
===================================================================
--- /LMDZ5/trunk/libf/dyn3dpar/groupe_p.F	(revision 2441)
+++ /LMDZ5/trunk/libf/dyn3dpar/groupe_p.F	(revision 2442)
@@ -20,6 +20,6 @@
 #include "comvert.h"
 
-      integer ngroup
-      parameter (ngroup=3)
+!     integer ngroup
+!     parameter (ngroup=3)
 
 
Index: /LMDZ5/trunk/libf/dyn3dpar/groupeun_p.F
===================================================================
--- /LMDZ5/trunk/libf/dyn3dpar/groupeun_p.F	(revision 2441)
+++ /LMDZ5/trunk/libf/dyn3dpar/groupeun_p.F	(revision 2442)
@@ -12,6 +12,6 @@
       REAL q(iip1,jjmax,llmax)
 
-      INTEGER ngroup
-      PARAMETER (ngroup=3)
+!     INTEGER ngroup
+!     PARAMETER (ngroup=3)
 
       REAL airecn,qn
@@ -38,7 +38,7 @@
       LOGICAL, SAVE :: first = .TRUE.
 !$OMP THREADPRIVATE(first)
-      INTEGER,SAVE :: i_index(iim,ngroup)
+!     INTEGER,SAVE :: i_index(iim,ngroup)
       INTEGER      :: offset
-      REAL         :: qsum(iim/ngroup)
+!     REAL         :: qsum(iim/ngroup)
 
       IF (first) THEN
@@ -143,6 +143,6 @@
 #include "comgeom2.h"
 
-      INTEGER ngroup
-      PARAMETER (ngroup=3)
+!     INTEGER ngroup
+!     PARAMETER (ngroup=3)
 
       REAL airen,airecn
