Index: LMDZ4/branches/LMDZ4_AR5/libf/phylmd/ini_histhfNMC.h
===================================================================
--- LMDZ4/branches/LMDZ4_AR5/libf/phylmd/ini_histhfNMC.h	(revision 1417)
+++ LMDZ4/branches/LMDZ4_AR5/libf/phylmd/ini_histhfNMC.h	(revision 1419)
@@ -88,4 +88,6 @@
      .                "ave(X)", zout,zout)
 c
+          IF (1.EQ.0) THEN 
+c
           CALL histdef(nid_hfnmc, "psbg",
      .         "Pressure sfce below ground","%",
@@ -146,4 +148,5 @@
      .         "ave(X)", zout,zout)
 c
+          ENDIF !(1.EQ.0) THEN 
          CALL histend(nid_hfnmc)
 c
Index: LMDZ4/branches/LMDZ4_AR5/libf/phylmd/phys_output_mod.F90
===================================================================
--- LMDZ4/branches/LMDZ4_AR5/libf/phylmd/phys_output_mod.F90	(revision 1417)
+++ LMDZ4/branches/LMDZ4_AR5/libf/phylmd/phys_output_mod.F90	(revision 1419)
@@ -66,8 +66,8 @@
   type(ctrl_out),save :: o_t2m_min      = ctrl_out((/ 1, 1, 10, 10, 10 /),'t2m_min')
   type(ctrl_out),save :: o_t2m_max      = ctrl_out((/ 1, 1, 10, 10, 10 /),'t2m_max')
-  type(ctrl_out),save,dimension(4) :: o_t2m_srf      = (/ ctrl_out((/ 10, 4, 10, 10, 10 /),'t2m_ter'), &
-                                                 ctrl_out((/ 10, 4, 10, 10, 10 /),'t2m_lic'), &
-                                                 ctrl_out((/ 10, 4, 10, 10, 10 /),'t2m_oce'), &
-                                                 ctrl_out((/ 10, 4, 10, 10, 10 /),'t2m_sic') /)
+  type(ctrl_out),save,dimension(4) :: o_t2m_srf      = (/ ctrl_out((/ 10, 6, 10, 10, 10 /),'t2m_ter'), &
+                                                 ctrl_out((/ 10, 6, 10, 10, 10 /),'t2m_lic'), &
+                                                 ctrl_out((/ 10, 6, 10, 10, 10 /),'t2m_oce'), &
+                                                 ctrl_out((/ 10, 6, 10, 10, 10 /),'t2m_sic') /)
 
   type(ctrl_out),save :: o_wind10m      = ctrl_out((/ 1, 1, 1, 10, 10 /),'wind10m')
@@ -80,13 +80,13 @@
   type(ctrl_out),save :: o_qsurf        = ctrl_out((/ 1, 10, 10, 10, 10 /),'qsurf')
 
-  type(ctrl_out),save,dimension(4) :: o_u10m_srf     = (/ ctrl_out((/ 10, 4, 10, 10, 10 /),'u10m_ter'), &
-                                              ctrl_out((/ 10, 4, 10, 10, 10 /),'u10m_lic'), &
-                                              ctrl_out((/ 10, 4, 10, 10, 10 /),'u10m_oce'), &
-                                              ctrl_out((/ 10, 4, 10, 10, 10 /),'u10m_sic') /)
-
-  type(ctrl_out),save,dimension(4) :: o_v10m_srf     = (/ ctrl_out((/ 10, 4, 10, 10, 10 /),'v10m_ter'), &
-                                              ctrl_out((/ 10, 4, 10, 10, 10 /),'v10m_lic'), &
-                                              ctrl_out((/ 10, 4, 10, 10, 10 /),'v10m_oce'), &
-                                              ctrl_out((/ 10, 4, 10, 10, 10 /),'v10m_sic') /)
+  type(ctrl_out),save,dimension(4) :: o_u10m_srf     = (/ ctrl_out((/ 10, 6, 10, 10, 10 /),'u10m_ter'), &
+                                              ctrl_out((/ 10, 6, 10, 10, 10 /),'u10m_lic'), &
+                                              ctrl_out((/ 10, 6, 10, 10, 10 /),'u10m_oce'), &
+                                              ctrl_out((/ 10, 6, 10, 10, 10 /),'u10m_sic') /)
+
+  type(ctrl_out),save,dimension(4) :: o_v10m_srf     = (/ ctrl_out((/ 10, 6, 10, 10, 10 /),'v10m_ter'), &
+                                              ctrl_out((/ 10, 6, 10, 10, 10 /),'v10m_lic'), &
+                                              ctrl_out((/ 10, 6, 10, 10, 10 /),'v10m_oce'), &
+                                              ctrl_out((/ 10, 6, 10, 10, 10 /),'v10m_sic') /)
 
   type(ctrl_out),save :: o_qsol         = ctrl_out((/ 1, 10, 10, 10, 10 /),'qsol')
@@ -99,8 +99,8 @@
   type(ctrl_out),save :: o_snow         = ctrl_out((/ 1, 1, 10, 10, 5 /),'snow') 
   type(ctrl_out),save :: o_evap         = ctrl_out((/ 1, 1, 10, 10, 10 /),'evap')
-  type(ctrl_out),save,dimension(4) :: o_evap_srf     = (/ ctrl_out((/ 1, 1, 10, 10, 10 /),'evap_ter'), &
-                                           ctrl_out((/ 1, 1, 10, 10, 10 /),'evap_lic'), &
-                                           ctrl_out((/ 1, 1, 10, 10, 10 /),'evap_oce'), &
-                                           ctrl_out((/ 1, 1, 10, 10, 10 /),'evap_sic') /)
+  type(ctrl_out),save,dimension(4) :: o_evap_srf     = (/ ctrl_out((/ 1, 6, 10, 10, 10 /),'evap_ter'), &
+                                           ctrl_out((/ 1, 6, 10, 10, 10 /),'evap_lic'), &
+                                           ctrl_out((/ 1, 6, 10, 10, 10 /),'evap_oce'), &
+                                           ctrl_out((/ 1, 6, 10, 10, 10 /),'evap_sic') /)
   type(ctrl_out),save :: o_msnow       = ctrl_out((/ 1, 10, 10, 10, 10 /),'msnow')
   type(ctrl_out),save :: o_fsnow       = ctrl_out((/ 1, 10, 10, 10, 10 /),'fsnow')
@@ -135,5 +135,5 @@
   type(ctrl_out),save :: o_soll         = ctrl_out((/ 1, 1, 10, 10, 10 /),'soll')
   type(ctrl_out),save :: o_soll0        = ctrl_out((/ 1, 5, 10, 10, 10 /),'soll0')
-  type(ctrl_out),save :: o_radsol       = ctrl_out((/ 1, 1, 10, 10, 10 /),'radsol')
+  type(ctrl_out),save :: o_radsol       = ctrl_out((/ 1, 7, 10, 10, 10 /),'radsol')
   type(ctrl_out),save :: o_SWupSFC      = ctrl_out((/ 1, 4, 10, 10, 5 /),'SWupSFC')
   type(ctrl_out),save :: o_SWupSFCclr   = ctrl_out((/ 1, 4, 10, 10, 5 /),'SWupSFCclr')
@@ -153,39 +153,39 @@
   type(ctrl_out),save :: o_taux         = ctrl_out((/ 1, 10, 10, 10, 10 /),'taux')
   type(ctrl_out),save :: o_tauy         = ctrl_out((/ 1, 10, 10, 10, 10 /),'tauy')
-  type(ctrl_out),save,dimension(4) :: o_taux_srf     = (/ ctrl_out((/ 1, 4, 10, 10, 10 /),'taux_ter'), &
-                                                 ctrl_out((/ 1, 4, 10, 10, 10 /),'taux_lic'), &
-                                                 ctrl_out((/ 1, 4, 10, 10, 10 /),'taux_oce'), &
-                                                 ctrl_out((/ 1, 4, 10, 10, 10 /),'taux_sic') /)
-
-  type(ctrl_out),save,dimension(4) :: o_tauy_srf     = (/ ctrl_out((/ 1, 4, 10, 10, 10 /),'tauy_ter'), &
-                                                 ctrl_out((/ 1, 4, 10, 10, 10 /),'tauy_lic'), &
-                                                 ctrl_out((/ 1, 4, 10, 10, 10 /),'tauy_oce'), &
-                                                 ctrl_out((/ 1, 4, 10, 10, 10 /),'tauy_sic') /)
-
-
-  type(ctrl_out),save,dimension(4) :: o_pourc_srf    = (/ ctrl_out((/ 1, 4, 10, 10, 10 /),'pourc_ter'), &
-                                                 ctrl_out((/ 1, 4, 10, 10, 10 /),'pourc_lic'), &
-                                                 ctrl_out((/ 1, 4, 10, 10, 10 /),'pourc_oce'), &
-                                                 ctrl_out((/ 1, 4, 10, 10, 10 /),'pourc_sic') /)     
-
-  type(ctrl_out),save,dimension(4) :: o_fract_srf    = (/ ctrl_out((/ 1, 4, 10, 10, 10 /),'fract_ter'), &
-                                                 ctrl_out((/ 1, 4, 10, 10, 10 /),'fract_lic'), &
-                                                 ctrl_out((/ 1, 4, 10, 10, 10 /),'fract_oce'), &
-                                                 ctrl_out((/ 1, 4, 10, 10, 10 /),'fract_sic') /)
-
-  type(ctrl_out),save,dimension(4) :: o_tsol_srf     = (/ ctrl_out((/ 1, 4, 10, 10, 10 /),'tsol_ter'), &
-                                                 ctrl_out((/ 1, 4, 10, 10, 10 /),'tsol_lic'), &
-                                                 ctrl_out((/ 1, 4, 10, 10, 10 /),'tsol_oce'), &
-                                                 ctrl_out((/ 1, 4, 10, 10, 10 /),'tsol_sic') /)
-
-  type(ctrl_out),save,dimension(4) :: o_sens_srf     = (/ ctrl_out((/ 1, 4, 10, 1, 10 /),'sens_ter'), &
-                                                 ctrl_out((/ 1, 4, 10, 1, 10 /),'sens_lic'), &
-                                                 ctrl_out((/ 1, 4, 10, 1, 10 /),'sens_oce'), &
-                                                 ctrl_out((/ 1, 4, 10, 1, 10 /),'sens_sic') /)
-
-  type(ctrl_out),save,dimension(4) :: o_lat_srf      = (/ ctrl_out((/ 1, 4, 10, 1, 10 /),'lat_ter'), &
-                                                 ctrl_out((/ 1, 4, 10, 1, 10 /),'lat_lic'), &
-                                                 ctrl_out((/ 1, 4, 10, 1, 10 /),'lat_oce'), &
-                                                 ctrl_out((/ 1, 4, 10, 1, 10 /),'lat_sic') /)
+  type(ctrl_out),save,dimension(4) :: o_taux_srf     = (/ ctrl_out((/ 1, 6, 10, 10, 10 /),'taux_ter'), &
+                                                 ctrl_out((/ 1, 6, 10, 10, 10 /),'taux_lic'), &
+                                                 ctrl_out((/ 1, 6, 10, 10, 10 /),'taux_oce'), &
+                                                 ctrl_out((/ 1, 6, 10, 10, 10 /),'taux_sic') /)
+
+  type(ctrl_out),save,dimension(4) :: o_tauy_srf     = (/ ctrl_out((/ 1, 6, 10, 10, 10 /),'tauy_ter'), &
+                                                 ctrl_out((/ 1, 6, 10, 10, 10 /),'tauy_lic'), &
+                                                 ctrl_out((/ 1, 6, 10, 10, 10 /),'tauy_oce'), &
+                                                 ctrl_out((/ 1, 6, 10, 10, 10 /),'tauy_sic') /)
+
+
+  type(ctrl_out),save,dimension(4) :: o_pourc_srf    = (/ ctrl_out((/ 1, 7, 10, 10, 10 /),'pourc_ter'), &
+                                                 ctrl_out((/ 1, 7, 10, 10, 10 /),'pourc_lic'), &
+                                                 ctrl_out((/ 1, 7, 10, 10, 10 /),'pourc_oce'), &
+                                                 ctrl_out((/ 1, 7, 10, 10, 10 /),'pourc_sic') /)     
+
+  type(ctrl_out),save,dimension(4) :: o_fract_srf    = (/ ctrl_out((/ 1, 6, 10, 10, 10 /),'fract_ter'), &
+                                                 ctrl_out((/ 1, 6, 10, 10, 10 /),'fract_lic'), &
+                                                 ctrl_out((/ 1, 6, 10, 10, 10 /),'fract_oce'), &
+                                                 ctrl_out((/ 1, 6, 10, 10, 10 /),'fract_sic') /)
+
+  type(ctrl_out),save,dimension(4) :: o_tsol_srf     = (/ ctrl_out((/ 1, 6, 10, 10, 10 /),'tsol_ter'), &
+                                                 ctrl_out((/ 1, 6, 10, 10, 10 /),'tsol_lic'), &
+                                                 ctrl_out((/ 1, 6, 10, 10, 10 /),'tsol_oce'), &
+                                                 ctrl_out((/ 1, 6, 10, 10, 10 /),'tsol_sic') /)
+
+  type(ctrl_out),save,dimension(4) :: o_sens_srf     = (/ ctrl_out((/ 1, 6, 10, 7, 10 /),'sens_ter'), &
+                                                 ctrl_out((/ 1, 6, 10, 7, 10 /),'sens_lic'), &
+                                                 ctrl_out((/ 1, 6, 10, 7, 10 /),'sens_oce'), &
+                                                 ctrl_out((/ 1, 6, 10, 7, 10 /),'sens_sic') /)
+
+  type(ctrl_out),save,dimension(4) :: o_lat_srf      = (/ ctrl_out((/ 1, 6, 10, 7, 10 /),'lat_ter'), &
+                                                 ctrl_out((/ 1, 6, 10, 7, 10 /),'lat_lic'), &
+                                                 ctrl_out((/ 1, 6, 10, 7, 10 /),'lat_oce'), &
+                                                 ctrl_out((/ 1, 6, 10, 7, 10 /),'lat_sic') /)
 
   type(ctrl_out),save,dimension(4) :: o_flw_srf      = (/ ctrl_out((/ 1, 10, 10, 10, 10 /),'flw_ter'), &
@@ -211,5 +211,5 @@
 
   type(ctrl_out),save :: o_cdrm         = ctrl_out((/ 1, 10, 10, 10, 10 /),'cdrm')
-  type(ctrl_out),save :: o_cdrh         = ctrl_out((/ 1, 10, 10, 1, 10 /),'cdrh')
+  type(ctrl_out),save :: o_cdrh         = ctrl_out((/ 1, 10, 10, 7, 10 /),'cdrh')
   type(ctrl_out),save :: o_cldl         = ctrl_out((/ 1, 1, 10, 10, 10 /),'cldl')
   type(ctrl_out),save :: o_cldm         = ctrl_out((/ 1, 1, 10, 10, 10 /),'cldm')
@@ -257,46 +257,46 @@
 ! Champs interpolles sur des niveaux de pression ??? a faire correctement
                                               
-  type(ctrl_out),save,dimension(6) :: o_uSTDlevs     = (/ ctrl_out((/ 1, 1, 3, 10, 10 /),'u850'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'u700'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'u500'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'u200'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'u50'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'u10') /) 
+  type(ctrl_out),save,dimension(6) :: o_uSTDlevs     = (/ ctrl_out((/ 1, 7, 7, 10, 10 /),'u850'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'u700'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'u500'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'u200'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'u50'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'u10') /) 
                                                      
 
-  type(ctrl_out),save,dimension(6) :: o_vSTDlevs     = (/ ctrl_out((/ 1, 1, 3, 10, 10 /),'v850'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'v700'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'v500'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'v200'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'v50'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'v10') /)
-
-  type(ctrl_out),save,dimension(6) :: o_wSTDlevs     = (/ ctrl_out((/ 1, 1, 3, 10, 10 /),'w850'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'w700'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'w500'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'w200'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'w50'), & 
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'w10') /)
-
-  type(ctrl_out),save,dimension(6) :: o_tSTDlevs     = (/ ctrl_out((/ 1, 1, 3, 10, 10 /),'t850'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'t700'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'t500'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'t200'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'t50'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'t10') /)
-
-  type(ctrl_out),save,dimension(6) :: o_qSTDlevs     = (/ ctrl_out((/ 1, 1, 3, 10, 10 /),'q850'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'q700'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'q500'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'q200'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'q50'), & 
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'q10') /)
-
-  type(ctrl_out),save,dimension(6) :: o_zSTDlevs   = (/ ctrl_out((/ 1, 1, 3, 10, 10 /),'z850'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'z700'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'z500'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'z200'), &
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'z50'), & 
-                                                     ctrl_out((/ 1, 1, 3, 10, 10 /),'z10') /)
+  type(ctrl_out),save,dimension(6) :: o_vSTDlevs     = (/ ctrl_out((/ 1, 7, 7, 10, 10 /),'v850'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'v700'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'v500'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'v200'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'v50'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'v10') /)
+
+  type(ctrl_out),save,dimension(6) :: o_wSTDlevs     = (/ ctrl_out((/ 1, 7, 7, 10, 10 /),'w850'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'w700'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'w500'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'w200'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'w50'), & 
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'w10') /)
+
+  type(ctrl_out),save,dimension(6) :: o_tSTDlevs     = (/ ctrl_out((/ 1, 7, 7, 10, 10 /),'t850'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'t700'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'t500'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'t200'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'t50'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'t10') /)
+
+  type(ctrl_out),save,dimension(6) :: o_qSTDlevs     = (/ ctrl_out((/ 1, 7, 7, 10, 10 /),'q850'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'q700'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'q500'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'q200'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'q50'), & 
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'q10') /)
+
+  type(ctrl_out),save,dimension(6) :: o_zSTDlevs   = (/ ctrl_out((/ 1, 7, 7, 10, 10 /),'z850'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'z700'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'z500'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'z200'), &
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'z50'), & 
+                                                     ctrl_out((/ 1, 7, 7, 10, 10 /),'z10') /)
 
 
@@ -419,5 +419,5 @@
   type(ctrl_out),save :: o_theta        = ctrl_out((/ 2, 3, 4, 10, 10 /),'theta')
   type(ctrl_out),save :: o_ovap         = ctrl_out((/ 2, 3, 4, 10, 10 /),'ovap')
-  type(ctrl_out),save :: o_ovapinit     = ctrl_out((/ 2, 3, 10, 10, 10 /),'ovapinit')
+  type(ctrl_out),save :: o_ovapinit     = ctrl_out((/ 2, 10, 10, 10, 10 /),'ovapinit')
   type(ctrl_out),save :: o_wvapp        = ctrl_out((/ 2, 10, 10, 10, 10 /),'wvapp')
   type(ctrl_out),save :: o_geop         = ctrl_out((/ 2, 3, 10, 10, 10 /),'geop')
@@ -449,8 +449,8 @@
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
-  type(ctrl_out),save,dimension(4) :: o_albe_srf     = (/ ctrl_out((/ 3, 4, 10, 1, 10 /),'albe_ter'), &
-                                                     ctrl_out((/ 3, 4, 10, 1, 10 /),'albe_lic'), &
-                                                     ctrl_out((/ 3, 4, 10, 1, 10 /),'albe_oce'), &
-                                                     ctrl_out((/ 3, 4, 10, 1, 10 /),'albe_sic') /) 
+  type(ctrl_out),save,dimension(4) :: o_albe_srf     = (/ ctrl_out((/ 3, 7, 10, 7, 10 /),'albe_ter'), &
+                                                     ctrl_out((/ 3, 7, 10, 7, 10 /),'albe_lic'), &
+                                                     ctrl_out((/ 3, 7, 10, 7, 10 /),'albe_oce'), &
+                                                     ctrl_out((/ 3, 7, 10, 7, 10 /),'albe_sic') /) 
 
   type(ctrl_out),save,dimension(4) :: o_ages_srf     = (/ ctrl_out((/ 10, 10, 10, 10, 10 /),'ages_ter'), &
@@ -459,8 +459,8 @@
                                                      ctrl_out((/ 3, 10, 10, 10, 10 /),'ages_sic') /)
 
-  type(ctrl_out),save,dimension(4) :: o_rugs_srf     = (/ ctrl_out((/ 3, 4, 10, 10, 10 /),'rugs_ter'), &
-                                                     ctrl_out((/ 3, 4, 10, 10, 10 /),'rugs_lic'), &
-                                                     ctrl_out((/ 3, 4, 10, 10, 10 /),'rugs_oce'), &
-                                                     ctrl_out((/ 3, 4, 10, 10, 10 /),'rugs_sic') /)
+  type(ctrl_out),save,dimension(4) :: o_rugs_srf     = (/ ctrl_out((/ 3, 6, 10, 10, 10 /),'rugs_ter'), &
+                                                     ctrl_out((/ 3, 6, 10, 10, 10 /),'rugs_lic'), &
+                                                     ctrl_out((/ 3, 6, 10, 10, 10 /),'rugs_oce'), &
+                                                     ctrl_out((/ 3, 6, 10, 10, 10 /),'rugs_sic') /)
 
   type(ctrl_out),save :: o_alb1         = ctrl_out((/ 3, 10, 10, 10, 10 /),'alb1')
@@ -477,7 +477,7 @@
   type(ctrl_out),save :: o_dudyn        = ctrl_out((/ 4, 10, 10, 10, 10 /),'dudyn')  !AXC
   type(ctrl_out),save :: o_dvdyn        = ctrl_out((/ 4, 10, 10, 10, 10 /),'dvdyn')  !AXC
-  type(ctrl_out),save :: o_dtcon        = ctrl_out((/ 4, 5, 10, 10, 10 /),'dtcon')
+  type(ctrl_out),save :: o_dtcon        = ctrl_out((/ 4, 10, 10, 10, 10 /),'dtcon')
   type(ctrl_out),save :: o_ducon        = ctrl_out((/ 4, 10, 10, 10, 10 /),'ducon')
-  type(ctrl_out),save :: o_dqcon        = ctrl_out((/ 4, 5, 10, 10, 10 /),'dqcon')
+  type(ctrl_out),save :: o_dqcon        = ctrl_out((/ 4, 10, 10, 10, 10 /),'dqcon')
   type(ctrl_out),save :: o_dtwak        = ctrl_out((/ 4, 5, 10, 10, 10 /),'dtwak')
   type(ctrl_out),save :: o_dqwak        = ctrl_out((/ 4, 5, 10, 10, 10 /),'dqwak')
@@ -524,4 +524,6 @@
   type(ctrl_out),save :: o_dulif        = ctrl_out((/ 4, 10, 10, 10, 10 /),'dulif')
   type(ctrl_out),save :: o_dvlif        = ctrl_out((/ 4, 10, 10, 10, 10 /),'dvlif')
+  type(ctrl_out),save :: o_duhin        = ctrl_out((/ 4, 10, 10, 10, 10 /),'duhin')
+  type(ctrl_out),save :: o_dvhin        = ctrl_out((/ 4, 10, 10, 10, 10 /),'dvhin')
 
 ! Attention a refaire correctement
@@ -1224,4 +1226,9 @@
      ENDIF
 
+     IF (ok_hines) then
+ CALL histdef3d(iff,o_duhin%flag,o_duhin%name, "Hines GWD dU", "m/s2")
+ CALL histdef3d(iff,o_dvhin%flag,o_dvhin%name, "Hines GWD dV", "m/s2")
+     ENDIF
+
 
 !Attention : sorties uniquement pour traceurs 3 et 4
Index: LMDZ4/branches/LMDZ4_AR5/libf/phylmd/phys_output_write.h
===================================================================
--- LMDZ4/branches/LMDZ4_AR5/libf/phylmd/phys_output_write.h	(revision 1417)
+++ LMDZ4/branches/LMDZ4_AR5/libf/phylmd/phys_output_write.h	(revision 1419)
@@ -1509,4 +1509,15 @@
         ENDIF
 
+       IF (ok_hines) THEN
+       IF (o_duhin%flag(iff)<=lev_files(iff)) THEN
+      zx_tmp_fi3d(1:klon,1:klev)=d_u_hin(1:klon,1:klev)/pdtphys
+      CALL histwrite_phy(nid_files(iff),o_duhin%name,itau_w,zx_tmp_fi3d)
+       ENDIF
+
+        IF (o_dvhin%flag(iff)<=lev_files(iff)) THEN
+      zx_tmp_fi3d(1:klon,1:klev)=d_v_hin(1:klon,1:klev)/pdtphys
+      CALL histwrite_phy(nid_files(iff),o_dvhin%name,itau_w,zx_tmp_fi3d)
+       ENDIF
+        ENDIF
 
         IF (nqtot.GE.3 .AND. o_trac(1)%flag(iff)<=lev_files(iff)) THEN
Index: LMDZ4/branches/LMDZ4_AR5/libf/phylmd/write_histhfNMC.h
===================================================================
--- LMDZ4/branches/LMDZ4_AR5/libf/phylmd/write_histhfNMC.h	(revision 1417)
+++ LMDZ4/branches/LMDZ4_AR5/libf/phylmd/write_histhfNMC.h	(revision 1419)
@@ -30,4 +30,6 @@
        CALL histwrite_phy(nid_hfnmc,"wap",itau_w,wwriteSTD3)
 c
+       IF (1.EQ.0) THEN
+c
        DO k=1, nlevSTD
         DO i=1, klon
@@ -60,5 +62,5 @@
        CALL histwrite_phy(nid_hfnmc,"TxT",itau_w,T2sumSTD(:,:,3))
 c
-c     ENDIF !type_run
+       ENDIF !(1.EQ.0) THEN
 c
       if (ok_sync) then
