Index: LMDZ5/trunk/libf/phylmd/phys_output_ctrlout_mod.F90
===================================================================
--- LMDZ5/trunk/libf/phylmd/phys_output_ctrlout_mod.F90	(revision 1968)
+++ LMDZ5/trunk/libf/phylmd/phys_output_ctrlout_mod.F90	(revision 1971)
@@ -1222,5 +1222,5 @@
        "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))
   TYPE(ctrl_out), SAVE :: o_psbg = ctrl_out((/ 11, 11, 11, 11, 11, 11, 5, 5, 5 /), &
-       'psbg', 'Lagrangian tendency of air pressure', 'Pa s-1', (/ "inst(X)", "inst(X)", "inst(X)", &
+       'psbg', 'Pressure sfce below ground', '%', (/ "inst(X)", "inst(X)", "inst(X)", &
        "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)", "inst(X)"  /))
   TYPE(ctrl_out), SAVE :: o_tro3 = ctrl_out((/ 11, 11, 11, 11, 11, 11, 5, 5, 5 /), &
Index: LMDZ5/trunk/libf/phylmd/phys_output_mod.F90
===================================================================
--- LMDZ5/trunk/libf/phylmd/phys_output_mod.F90	(revision 1968)
+++ LMDZ5/trunk/libf/phylmd/phys_output_mod.F90	(revision 1971)
@@ -246,12 +246,20 @@
     WRITE(lunout,*)'phys_out_filelevels=',lev_files
 
+! A noter pour
+! l heure initiale - dans les fichiers histoire hist* - on met comme  
+! heure de debut soit la vraie heure (pour le 1D) soit 0h (pour le 3D) 
+! afin d avoir une seule sortie mensuelle par mois lorsque l on tourne 
+! par annee (IM).
+!
+     idayref = day_ref
+     IF (klon_glo==1) THEN
+         CALL ymds2ju(annee_ref, 1, idayref, hour, zjulian)     !jyg
+     ELSE
+         CALL ymds2ju(annee_ref, 1, idayref, 0.0, zjulian)
+     END IF
+
 #ifdef CPP_XIOS
     ! ug Réglage du calendrier xios
     !Temps julian => an, mois, jour, heure
-    IF (klon_glo==1) THEN                                       
-        CALL ymds2ju(annee_ref, 1, day_ref, hour, zjulian)
-    ELSE
-        CALL ymds2ju(annee_ref, 1, day_ref, 0.0, zjulian)
-    END IF 
     CALL ju2ymds(zjulian, x_an, x_mois, x_jour, x_heure)
     CALL wxios_set_cal(dtime, calend, x_an, x_mois, x_jour, x_heure)
@@ -276,5 +284,5 @@
     WRITE(lunout,*)'Alt approx des couches pour une haut d echelle de 8km = ',Alt(1:klev)
     !          endif
-    DO iff=1,nfiles
+  DO iff=1,nfiles
 
        ! Calculate ecrit_files for all files
@@ -294,6 +302,14 @@
        zoutm(iff) = ecrit_files(iff) ! Frequence ou l on ecrit en seconde
 
+    IF (clef_files(iff)) THEN
+
 #ifdef CPP_XIOS
-    ! ug déclaration des axes verticaux de chaque fichier:
+!!! Ouverture de chaque fichier XIOS !!!!!!!!!!!
+    CALL wxios_add_file(phys_out_filenames(iff),chtimestep(iff),lev_files(iff))  
+    print*,'wxios_add_file phys_out_filenames(iff)',phys_out_filenames(iff)                                                                        
+
+!!! Declaration des axes verticaux de chaque fichier:
+    print*,'Declaration des axes verticaux de chaque fichier '
+   if (iff.le.6) then
     CALL wxios_add_vaxis("presnivs", phys_out_filenames(iff), &
             levmax(iff) - levmin(iff) + 1, presnivs(levmin(iff):levmax(iff)))
@@ -304,24 +320,10 @@
     CALL wxios_add_vaxis("Ahyb", phys_out_filenames(iff), &
             levmax(iff) - levmin(iff) + 1, Alt)
-
-    IF (clef_files(iff)) THEN
-         CALL wxios_add_file(phys_out_filenames(iff),chtimestep(iff),lev_files(iff))
-    END IF
+   else
+    CALL wxios_add_vaxis("plev", phys_out_filenames(iff), &
+            levmax(iff) - levmin(iff) + 1, rlevSTD(levmin(iff):levmax(iff)))
+   endif
 #endif 
 
-       IF (clef_files(iff)) THEN
-
-          idayref = day_ref
-! A noter pour
-! l heure initiale - dans les fichiers histoire hist* - on met comme  
-! heure de debut soit la vraie heure (pour le 1D) soit 0h (pour le 3D) 
-! afin d avoir une seule sortie mensuelle par mois lorsque l on tourne 
-! par annee (IM).
-!
-     IF (klon_glo==1) THEN                                       
-         CALL ymds2ju(annee_ref, 1, idayref, hour, zjulian)     !jyg
-     ELSE
-         CALL ymds2ju(annee_ref, 1, idayref, 0.0, zjulian)
-     END IF                                                      
 !!!!!!!!!!!!!!!!! Traitement dans le cas ou l'on veut stocker sur un domaine limite !!
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
@@ -476,7 +478,7 @@
       ENDIF
 
-    ENDIF ! clef_files
-
-    ENDDO !  iff
+     ENDIF ! clef_files
+
+   ENDDO !  iff
 
     ! Updated write frequencies due to phys_out_filetimesteps. 
Index: LMDZ5/trunk/libf/phylmd/phys_output_write_mod.F90
===================================================================
--- LMDZ5/trunk/libf/phylmd/phys_output_write_mod.F90	(revision 1968)
+++ LMDZ5/trunk/libf/phylmd/phys_output_write_mod.F90	(revision 1971)
@@ -252,4 +252,5 @@
     REAL :: pdtphys
     CHARACTER (LEN=4), DIMENSION(nlevSTD) :: clevSTD
+    REAL, DIMENSION(klon,nlevSTD) :: zx_tmp_fi3d_STD
     REAL, DIMENSION(klon) :: pphis
     REAL, DIMENSION(klon, klev) :: pplay, d_t
@@ -1221,24 +1222,24 @@
                          freq_moyNMC(iff-6)=freq_outNMC(iff-6)/freq_calNMC(iff-6)
                       ENDIF
-                      zx_tmp_fi3d(i,k) = (100.*tnondef(i,k,iff-6))/freq_moyNMC(iff-6)
+                      zx_tmp_fi3d_STD(i,k) = (100.*tnondef(i,k,iff-6))/freq_moyNMC(iff-6)
                    ELSE
-                      zx_tmp_fi3d(i,k) = missing_val
+                      zx_tmp_fi3d_STD(i,k) = missing_val
                    ENDIF
                 ENDDO
              ENDDO
           ENDIF
-          CALL histwrite_phy(o_psbg,zx_tmp_fi3d,iff)
+          CALL histwrite_phy(o_psbg,zx_tmp_fi3d_STD,iff)
           IF(vars_defined) THEN
              DO k=1, nlevSTD
                 DO i=1, klon
                    IF(O3sumSTD(i,k,iff-6).NE.missing_val) THEN
-                      zx_tmp_fi3d(i,k) = O3sumSTD(i,k,iff-6) * 1.e+9
+                      zx_tmp_fi3d_STD(i,k) = O3sumSTD(i,k,iff-6) * 1.e+9
                    ELSE
-                      zx_tmp_fi3d(i,k) = missing_val
+                      zx_tmp_fi3d_STD(i,k) = missing_val
                    ENDIF
                 ENDDO
              ENDDO !k=1, nlevSTD
           ENDIF
-          CALL histwrite_phy(o_tro3,zx_tmp_fi3d,iff)
+          CALL histwrite_phy(o_tro3,zx_tmp_fi3d_STD,iff)
           if (read_climoz == 2) THEN
              IF(vars_defined) THEN
@@ -1246,12 +1247,12 @@
                    DO i=1, klon
                       IF(O3daysumSTD(i,k,iff-6).NE.missing_val) THEN
-                         zx_tmp_fi3d(i,k) = O3daysumSTD(i,k,iff-6) * 1.e+9
+                         zx_tmp_fi3d_STD(i,k) = O3daysumSTD(i,k,iff-6) * 1.e+9
                       ELSE
-                         zx_tmp_fi3d(i,k) = missing_val
+                         zx_tmp_fi3d_STD(i,k) = missing_val
                       ENDIF
                    ENDDO
                 ENDDO !k=1, nlevSTD
              ENDIF
-             CALL histwrite_phy(o_tro3_daylight,zx_tmp_fi3d,iff)
+             CALL histwrite_phy(o_tro3_daylight,zx_tmp_fi3d_STD,iff)
           endif
           CALL histwrite_phy(o_uxv,uvsumSTD(:,:,iff-6),iff)
