Index: /LMDZ6/trunk/libf/dynphy_lonlat/phylmd/iniphysiq_mod.F90
===================================================================
--- /LMDZ6/trunk/libf/dynphy_lonlat/phylmd/iniphysiq_mod.F90	(revision 3124)
+++ /LMDZ6/trunk/libf/dynphy_lonlat/phylmd/iniphysiq_mod.F90	(revision 3125)
@@ -45,4 +45,7 @@
   USE ioipsl_getin_p_mod, ONLY: getin_p
   USE slab_heat_transp_mod, ONLY: ini_slab_transp_geom
+#ifdef REPROBUS
+  USE CHEM_REP, ONLY : Init_chem_rep_phys
+#endif
   IMPLICIT NONE
 
@@ -177,4 +180,9 @@
           rlonudyn,rlatudyn,rlonvdyn,rlatvdyn)
 #endif
+    IF (type_trac == 'repr') THEN
+#ifdef REPROBUS
+       CALL Init_chem_rep_phys(klon_omp,nbp_lev)
+#endif
+    END IF
   END IF
 
Index: /LMDZ6/trunk/libf/phylmd/phys_output_ctrlout_mod.F90
===================================================================
--- /LMDZ6/trunk/libf/phylmd/phys_output_ctrlout_mod.F90	(revision 3124)
+++ /LMDZ6/trunk/libf/phylmd/phys_output_ctrlout_mod.F90	(revision 3125)
@@ -1730,4 +1730,7 @@
   TYPE(ctrl_out), SAVE, ALLOCATABLE :: o_trac(:)
   TYPE(ctrl_out), SAVE, ALLOCATABLE :: o_trac_cum(:)
+#ifdef REPROBUS
+  TYPE(ctrl_out), SAVE, ALLOCATABLE :: o_nas(:)
+#endif
   TYPE(ctrl_out), SAVE, ALLOCATABLE :: o_dtr_vdf(:)
   TYPE(ctrl_out), SAVE, ALLOCATABLE :: o_dtr_the(:)
Index: /LMDZ6/trunk/libf/phylmd/phys_output_mod.F90
===================================================================
--- /LMDZ6/trunk/libf/phylmd/phys_output_mod.F90	(revision 3124)
+++ /LMDZ6/trunk/libf/phylmd/phys_output_mod.F90	(revision 3125)
@@ -35,5 +35,5 @@
     USE iophy 
     USE dimphy
-    USE infotrac_phy, ONLY: nqtot, nqo, niadv, tname, ttext
+    USE infotrac_phy, ONLY: nqtot, nqo, niadv, tname, ttext, type_trac
     USE ioipsl
     USE phys_cal_mod, only : hour, calend
@@ -46,4 +46,7 @@
     USE vertical_layers_mod, ONLY: ap,bp,preff,presnivs, aps, bps, pseudoalt
     USE time_phylmdz_mod, ONLY: day_ini, itau_phy, start_time, annee_ref, day_ref
+#ifdef REPROBUS
+    USE chem_rep, ONLY: nbnas, tnamenas, ttextnas
+#endif
 #ifdef CPP_XIOS
     ! ug Pour les sorties XIOS
@@ -156,4 +159,7 @@
     IF (.NOT. ALLOCATED(o_trac)) ALLOCATE(o_trac(nqtot))
     IF (.NOT. ALLOCATED(o_trac_cum)) ALLOCATE(o_trac_cum(nqtot))
+#ifdef REPROBUS
+    IF (.NOT. ALLOCATED(o_nas)) ALLOCATE(o_nas(nbnas))
+#endif
     ALLOCATE(o_dtr_the(nqtot),o_dtr_con(nqtot),o_dtr_lessi_impa(nqtot))
     ALLOCATE(o_dtr_lessi_nucl(nqtot),o_dtr_insc(nqtot),o_dtr_bcscav(nqtot))
@@ -572,4 +578,13 @@
             ENDDO
       ENDIF
+      IF (type_trac=='repr') THEN
+#ifdef REPROBUS
+         DO iiq=1,nbnas
+            o_nas(iiq) = ctrl_out((/ 4, 5, 5, 5, 10, 10, 11, 11, 11, 11 /), &
+                 tnamenas(iiq),ttextnas(iiq), "-", &
+                 (/ '', '', '', '', '', '', '', '', '', '' /))
+         ENDDO
+#endif
+      ENDIF
 
    ENDDO !  iff
Index: /LMDZ6/trunk/libf/phylmd/phys_output_write_mod.F90
===================================================================
--- /LMDZ6/trunk/libf/phylmd/phys_output_write_mod.F90	(revision 3124)
+++ /LMDZ6/trunk/libf/phylmd/phys_output_write_mod.F90	(revision 3125)
@@ -168,4 +168,7 @@
          o_uxv, o_vxq, o_vxT, o_wxq, o_vxphi, &
          o_wxT, o_uxu, o_vxv, o_TxT, o_trac, &
+#ifdef REPROBUS
+         o_nas, &
+#endif
          o_dtr_vdf, o_dtr_the, o_dtr_con, &
          o_dtr_lessi_impa, o_dtr_lessi_nucl, &
@@ -316,4 +319,8 @@
          surf_PM25_sulf, tau_strat_550, tausum_strat, &
          vsed_aer, tau_strat_1020, f_r_wet
+#endif
+
+#ifdef REPROBUS
+    USE CHEM_REP, ONLY : nas, nbnas, tnamenas, ttextnas
 #endif
 
@@ -2051,8 +2058,19 @@
                 ENDDO
              ENDIF
+#ifndef REPROBUS
              CALL histwrite_phy(o_trac_cum(iq-nqo), zx_tmp_fi2d)
+#endif
             ENDIF
           ENDDO
        ENDIF
+
+       IF (type_trac == 'repr') THEN
+#ifdef REPROBUS
+           DO iq=1,nbnas
+             CALL histwrite_phy(o_nas(iq), nas(:,:,iq))
+           ENDDO
+#endif
+       ENDIF
+
        ENDIF   !(iflag_phytrac==1)
 
Index: /LMDZ6/trunk/libf/phylmd/phytrac_mod.F90
===================================================================
--- /LMDZ6/trunk/libf/phylmd/phytrac_mod.F90	(revision 3124)
+++ /LMDZ6/trunk/libf/phylmd/phytrac_mod.F90	(revision 3125)
@@ -508,4 +508,7 @@
                    flag_cvltr(it)=.false.
                 ENDIF
+
+             CASE('repr')
+                 flag_cvltr(it)=.false.
 
              CASE('inca')
Index: /LMDZ6/trunk/libf/phylmd/tracreprobus_mod.F90
===================================================================
--- /LMDZ6/trunk/libf/phylmd/tracreprobus_mod.F90	(revision 3124)
+++ /LMDZ6/trunk/libf/phylmd/tracreprobus_mod.F90	(revision 3125)
@@ -72,9 +72,9 @@
           WRITE(*,*)it,'nqtot',nqtot,'nbtr',nbtr
           IF (it < nqtot) THEN
-             WRITE(*,*)'ici',it,nqtot
+             WRITE(*,*)'iciav',it,nqtot
 #ifdef REPROBUS
-             CALL minmaxqfi_chimie(tr_seri(1,1,it),0.,1.e10,'avant chimie ')
+             CALL minmaxqfi_chimie(it,tr_seri(1,1,it),0.,1.e10,'avant chimie ')
 #endif
-             WRITE(*,*)'apres'
+             WRITE(*,*)iter,'avpres'
           ENDIF
        ENDDO
@@ -94,4 +94,19 @@
        ! pdel, pdt_rep, daynum : definit dans phytrac et utilise dans chemmain
        !                 et transporte par CHEM_REP
+
+       DO it=1, nbtr
+!     WRITE(lunout,*)it,' ',minval(tr_seri(:,:,it)),maxval(tr_seri(:,:,it))
+! seulement pour les especes chimiques (pas l'age de l'air)
+! verif valeurs extremes
+! correction: a 1.e-30 quand =0 ou negatif et
+! call abort si >ou= 1.e10
+          WRITE(*,*)it,'nqtot',nqtot,'nbtr',nbtr
+          IF (it < nqtot) THEN
+             WRITE(*,*)'iciap',it,nqtot
+             CALL minmaxqfi_chimie(it,tr_seri(1,1,it),0.,1.e10,'apres chemmain')
+             WRITE(*,*)iter,'appres'
+          ENDIF
+       ENDDO
+
 #endif        
        
