Index: /dynamico_lmdz/aquaplanet/ICOSA_LMDZ/bld.cfg
===================================================================
--- /dynamico_lmdz/aquaplanet/ICOSA_LMDZ/bld.cfg	(revision 3990)
+++ /dynamico_lmdz/aquaplanet/ICOSA_LMDZ/bld.cfg	(revision 3991)
@@ -44,4 +44,5 @@
 bld::excl_dep        use::icosa
 bld::excl_dep        use::disvert_mod
+bld::excl_dep        use::earth_const
 bld::excl_dep        use::mpi_mod
 bld::excl_dep        use::mpipara
@@ -64,4 +65,5 @@
 bld::excl_dep        use::infotrac_phy
 bld::excl_dep        use::inifis_mod 
+bld::excl_dep        use::physiq_mod
 bld::excl_dep        use::phyaqua_mod
 bld::excl_dep        use::wxios
Index: /dynamico_lmdz/aquaplanet/ICOSA_LMDZ/make_icosa_lmdz
===================================================================
--- /dynamico_lmdz/aquaplanet/ICOSA_LMDZ/make_icosa_lmdz	(revision 3990)
+++ /dynamico_lmdz/aquaplanet/ICOSA_LMDZ/make_icosa_lmdz	(revision 3991)
@@ -206,7 +206,8 @@
     if [[ "$with_orchidee_defined" == "TRUE" ]]
     then
-	lmdz_veget="orchidee2.0"
+	lmdz_veget="orchidee2.0 -cpp ORCHIDEE_NOZ0H"
     fi
-    ./makelmdz_fcm gcm -$compil_mode -mem -parallel $parallel -nodyn -io xios -v $lmdz_veget -arch $arch -arch_path $arch_path -j $job $full_flag || exit 1
+#    ./makelmdz_fcm gcm -$compil_mode -mem -parallel $parallel -nodyn -io xios -v $lmdz_veget -arch $arch -arch_path $arch_path -j $job $full_flag || exit 1
+    ./makelmdz_fcm gcm -$compil_mode -mem -parallel $parallel -libphy -io xios -v $lmdz_veget -arch $arch -arch_path $arch_path -j $job $full_flag || exit 1
     cd -
 
Index: /dynamico_lmdz/aquaplanet/ICOSA_LMDZ/src/interface_icosa_lmdz.f90
===================================================================
--- /dynamico_lmdz/aquaplanet/ICOSA_LMDZ/src/interface_icosa_lmdz.f90	(revision 3990)
+++ /dynamico_lmdz/aquaplanet/ICOSA_LMDZ/src/interface_icosa_lmdz.f90	(revision 3991)
@@ -57,9 +57,9 @@
   USE transfert_mod
   USE physics_distribution_mod, ONLY : init_physics_distribution
-  USE geometry_mod, ONLY : init_geometry
-  USE vertical_layers_mod, ONLY : init_vertical_layers
-  USE infotrac_phy, ONLY : init_infotrac_phy
-  USE inifis_mod, ONLY : inifis 
-  USE phyaqua_mod, ONLY : iniaqua 
+!  USE geometry_mod, ONLY : init_geometry
+!  USE vertical_layers_mod, ONLY : init_vertical_layers
+!  USE infotrac_phy, ONLY : init_infotrac_phy
+!  USE inifis_mod, ONLY : inifis 
+!  USE phyaqua_mod, ONLY : iniaqua 
    
   
@@ -175,4 +175,5 @@
   USE mpipara
   USE disvert_mod
+  USE earth_const, ONLY: scale_height
   USE xios_mod
   USE time_mod , init_time_icosa=> init_time 
@@ -184,5 +185,5 @@
   USE time_phylmdz_mod, ONLY: init_time_lmdz => init_time
   USE transfert_mod
-  USE physics_distribution_mod, ONLY : init_physics_distribution
+!  USE physics_distribution_mod, ONLY : init_physics_distribution
   USE geometry_mod, ONLY : init_geometry
   USE vertical_layers_mod, ONLY : init_vertical_layers
@@ -208,4 +209,7 @@
 
   REAL(rstd) :: pseudoalt(llm)
+  REAL(rstd) :: aps(llm)
+  REAL(rstd) :: bps(llm)
+  REAL(rstd) :: scaleheight
 
   INTEGER :: run_length  
@@ -225,4 +229,29 @@
   INTEGER,ALLOCATABLE           :: pbl_flg(:)  ! pbl_flg(it)=0  : boundary layer diffusion desactivaded for tracer number it 
   CHARACTER(len=8),ALLOCATABLE  :: solsym(:)  ! tracer name from inca
+  ! Isotopes
+  INTEGER,ALLOCATABLE :: nqfils(:)
+  INTEGER,ALLOCATABLE :: nqdesc(:)
+  INTEGER :: nqdesc_tot
+  INTEGER,ALLOCATABLE :: iqfils(:,:)
+  INTEGER,ALLOCATABLE :: iqpere(:)
+  LOGICAL :: ok_isotopes
+  LOGICAL :: ok_iso_verif
+  LOGICAL :: ok_isotrac
+  LOGICAL :: ok_init_iso
+  INTEGER :: niso_possibles
+  REAL,ALLOCATABLE :: tnat(:)
+  REAL,ALLOCATABLE :: alpha_ideal(:)
+  LOGICAL,ALLOCATABLE :: use_iso(:)
+  INTEGER,ALLOCATABLE :: iqiso(:,:)
+  INTEGER,ALLOCATABLE :: iso_num(:)
+  INTEGER,ALLOCATABLE :: iso_indnum(:)
+  INTEGER,ALLOCATABLE :: zone_num(:)
+  INTEGER,ALLOCATABLE :: phase_num(:)
+  INTEGER,ALLOCATABLE :: indnum_fn_num(:)
+  INTEGER,ALLOCATABLE :: index_trac(:,:)
+  INTEGER :: niso
+  INTEGER :: ntraceurs_zone
+  INTEGER :: ntraciso
+
   TYPE(t_field),POINTER,SAVE    :: f_ind_cell_glo(:)
   
@@ -264,8 +293,11 @@
       
               
-    CALL init_geometry(lonfi, latfi, bounds_lonfi, bounds_latfi, airefi, INT(ind_cell_glo))
-
+    CALL init_geometry(klon_omp,lonfi, latfi, bounds_lonfi, bounds_latfi, airefi, INT(ind_cell_glo))
+
+    scaleheight=scale_height/1000. ! Atmospheric scale height (km)
+    aps(1:llm)=0.5*(ap(1:llm)+ap(2:llm+1))
+    bps(1:llm)=0.5*(bp(1:llm)+bp(2:llm+1))
     pseudoalt(:)=0
-    CALL init_vertical_layers(llm,preff,ap,bp,presnivs,pseudoalt)
+    CALL init_vertical_layers(llm,preff,scaleheight,ap,bp,aps,bps,presnivs,pseudoalt)
 
 
@@ -307,7 +339,38 @@
     niadv(3)=3
     niadv(4)=4
+    ! isotopes
+    ALLOCATE(nqfils(nqtot)) ; nqfils(:)=0
+    ALLOCATE(nqdesc(nqtot)) ; nqdesc(:)=0
+    nqdesc_tot=0
+    ALLOCATE(iqfils(nqtot,nqtot)) ; iqfils(:,:)=0
+    ALLOCATE(iqpere(nqtot)) ; iqpere(:)=0
+    ok_isotopes=.false.
+    ok_iso_verif=.false.
+    ok_isotrac=.false.
+    ok_init_iso=.false.
+    niso_possibles=5
+    niso=0
+    ntraceurs_zone=0
+    ntraciso=0
+    ALLOCATE(tnat(niso_possibles)) ; tnat(:)=0
+    ALLOCATE(alpha_ideal(niso_possibles)) ; alpha_ideal(:)=0
+    ALLOCATE(use_iso(niso_possibles)) ; use_iso(:)=.false.
+    ALLOCATE(iqiso(ntraciso,nqo)) ; iqiso(:,:)=0
+    ALLOCATE(iso_num(nqtot)) ; iso_num(:)=0
+    ALLOCATE(iso_indnum(nqtot)) ; iso_indnum(:)=0
+    ALLOCATE(zone_num(nqtot)) ; zone_num(:)=0
+    ALLOCATE(phase_num(nqtot)) ; phase_num(:)=0
+    ALLOCATE(indnum_fn_num(niso_possibles)) ; indnum_fn_num(:)=0
+    ALLOCATE(index_trac(ntraceurs_zone,niso)) ; index_trac(:,:)=0
         
     CALL init_infotrac_phy(nqtot,nqo,nbtr,tname,ttext,type_trac,&
-                           niadv,conv_flg,pbl_flg,solsym)
+                           niadv,conv_flg,pbl_flg,solsym, &
+                           nqfils,nqdesc,nqdesc_tot,iqfils,iqpere, &
+                           ok_isotopes,ok_iso_verif,ok_isotrac, &
+                           ok_init_iso,niso_possibles,tnat, &
+                           alpha_ideal,use_iso,iqiso,iso_num, &
+                           iso_indnum,zone_num,phase_num, &
+                           indnum_fn_num,index_trac, &
+                           niso,ntraceurs_zone,ntraciso)
 
    ! Initialize physical constant
@@ -362,4 +425,5 @@
   USE mod_phys_lmdz_omp_data, ONLY: klon_omp
   USE geometry_mod, ONLY : cell_area
+  USE physiq_mod, ONLY: physiq
   IMPLICIT NONE
   
@@ -405,4 +469,6 @@
     REAL(rstd),ALLOCATABLE,SAVE :: ulat_phy(:,:)
 !$OMP THREADPRIVATE(ulat_phy)
+    REAL(rstd),ALLOCATABLE,SAVE :: rot_phy(:,:)
+!$OMP THREADPRIVATE(rot_phy)
     REAL(rstd),ALLOCATABLE,SAVE :: q_phy(:,:,:)
 !$OMP THREADPRIVATE(q_phy)
@@ -450,4 +516,5 @@
       ALLOCATE(ulon_phy(klon_omp,llm))
       ALLOCATE(ulat_phy(klon_omp,llm))
+      ALLOCATE(rot_phy(klon_omp,llm))
       ALLOCATE(q_phy(klon_omp,llm,nqtot))
       ALLOCATE(wflux_phy(klon_omp,llm))
@@ -542,6 +609,9 @@
     CALL wxios_set_context()
  
+    ! Ehouarn: rot_phy() not implemented!! Set it to zero for now
+    rot_phy(:,:)=0
     CALL physiq(klon_omp, llm, debut, lafin, dtphy, &
-                p_phy, p_layer_phy, phi_phy, phis_phy, presnivs, ulon_phy, ulat_phy, Temp_phy, q_phy, wflux_phy, &
+                p_phy, p_layer_phy, phi_phy, phis_phy, presnivs, &
+                ulon_phy, ulat_phy, rot_phy, Temp_phy, q_phy, wflux_phy, &
                 dulon_phy, dulat_phy, dTemp_phy, dq_phy, dps_phy)
     
