Index: LMDZ4/trunk/libf/phylmd/phys_local_var_mod.F90
===================================================================
--- LMDZ4/trunk/libf/phylmd/phys_local_var_mod.F90	(revision 908)
+++ LMDZ4/trunk/libf/phylmd/phys_local_var_mod.F90	(revision 909)
@@ -7,9 +7,30 @@
 ! Declaration des variables
 
-      REAL,ALLOCATABLE :: t_seri(:,:), q_seri(:,:)
-      REAL,ALLOCATABLE :: ql_seri(:,:),qs_seri(:,:)
-      REAL,ALLOCATABLE :: u_seri(:,:), v_seri(:,:)
+      REAL, ALLOCATABLE :: t_seri(:,:), q_seri(:,:)
+      REAL, ALLOCATABLE :: ql_seri(:,:),qs_seri(:,:)
+      REAL, ALLOCATABLE :: u_seri(:,:), v_seri(:,:)
 
-
+      REAL, ALLOCATABLE :: tr_seri(:,:,:)
+      REAL, ALLOCATABLE :: d_t_dyn(:,:), d_q_dyn(:,:)
+      REAL, ALLOCATABLE :: d_t_con(:,:),d_q_con(:,:)
+      REAL, ALLOCATABLE :: d_u_con(:,:),d_v_con(:,:)
+      REAL, ALLOCATABLE :: d_t_wake(:,:),d_q_wake(:,:)
+      REAL, ALLOCATABLE :: d_t_lsc(:,:),d_q_lsc(:,:),d_ql_lsc(:,:)
+      REAL, ALLOCATABLE :: d_t_ajsb(:,:), d_q_ajsb(:,:)
+      REAL, ALLOCATABLE :: d_t_ajs(:,:), d_q_ajs(:,:)
+      REAL, ALLOCATABLE :: d_u_ajs(:,:), d_v_ajs(:,:)
+      REAL, ALLOCATABLE :: d_t_eva(:,:),d_q_eva(:,:)
+!tendances dues a oro et lif
+      REAL, ALLOCATABLE :: d_t_oli(:,:)
+      REAL, ALLOCATABLE :: d_u_oli(:,:), d_v_oli(:,:)
+      REAL, ALLOCATABLE :: d_t_vdf(:,:), d_q_vdf(:,:)
+      REAL, ALLOCATABLE :: d_u_vdf(:,:), d_v_vdf(:,:)
+      REAL, ALLOCATABLE :: d_t_oro(:,:)
+      REAL, ALLOCATABLE :: d_u_oro(:,:), d_v_oro(:,:)
+      REAL, ALLOCATABLE :: d_t_lif(:,:)
+      REAL, ALLOCATABLE :: d_u_lif(:,:), d_v_lif(:,:)
+! tendance du a la conersion Ec -> E thermique
+      REAL, ALLOCATABLE :: d_t_ec(:,:)
+      REAL, ALLOCATABLE :: d_ts(:,:), d_tr(:,:,:)
 CONTAINS
 
@@ -18,6 +39,27 @@
 use dimphy
 IMPLICIT NONE
+#include "indicesol.h"
       allocate(t_seri(klon,klev),q_seri(klon,klev),ql_seri(klon,klev),qs_seri(klon,klev))
       allocate(u_seri(klon,klev),v_seri(klon,klev))
+
+      allocate(tr_seri(klon,klev,nbtr))
+      allocate(d_t_dyn(klon,klev),d_q_dyn(klon,klev))
+      allocate(d_t_con(klon,klev),d_q_con(klon,klev))
+      allocate(d_u_con(klon,klev),d_v_con(klon,klev))
+      allocate(d_t_wake(klon,klev),d_q_wake(klon,klev))
+      allocate(d_t_lsc(klon,klev),d_q_lsc(klon,klev))
+      allocate(d_ql_lsc(klon,klev))
+      allocate(d_t_ajsb(klon,klev),d_q_ajsb(klon,klev))
+      allocate(d_t_ajs(klon,klev),d_q_ajs(klon,klev))
+      allocate(d_u_ajs(klon,klev),d_v_ajs(klon,klev))
+      allocate(d_t_eva(klon,klev),d_q_eva(klon,klev))
+      allocate(d_t_vdf(klon,klev),d_q_vdf(klon,klev))
+      allocate(d_u_vdf(klon,klev),d_v_vdf(klon,klev))
+      allocate(d_t_oli(klon,klev),d_t_oro(klon,klev))
+      allocate(d_u_oli(klon,klev),d_v_oli(klon,klev))
+      allocate(d_u_oro(klon,klev),d_v_oro(klon,klev))
+      allocate(d_t_lif(klon,klev),d_t_ec(klon,klev))
+      allocate(d_u_lif(klon,klev),d_v_lif(klon,klev))
+      allocate(d_ts(klon,klev), d_tr(klon,klev,nbtr))
 END SUBROUTINE phys_local_var_init
 
@@ -26,6 +68,27 @@
 use dimphy
 IMPLICIT NONE
+#include "indicesol.h"
       deallocate(t_seri,q_seri,ql_seri,qs_seri)
       deallocate(u_seri,v_seri)
+
+      deallocate(tr_seri)
+      deallocate(d_t_dyn,d_q_dyn)
+      deallocate(d_t_con,d_q_con)
+      deallocate(d_u_con,d_v_con)
+      deallocate(d_t_wake,d_q_wake)
+      deallocate(d_t_lsc,d_q_lsc)
+      deallocate(d_ql_lsc)
+      deallocate(d_t_ajsb,d_q_ajsb)
+      deallocate(d_t_ajs,d_q_ajs)
+      deallocate(d_u_ajs,d_v_ajs)
+      deallocate(d_t_eva,d_q_eva)
+      deallocate(d_t_vdf,d_q_vdf)
+      deallocate(d_u_vdf,d_v_vdf)
+      deallocate(d_t_oli,d_t_oro)
+      deallocate(d_u_oli,d_v_oli)
+      deallocate(d_u_oro,d_v_oro)
+      deallocate(d_t_lif,d_t_ec)
+      deallocate(d_u_lif,d_v_lif)
+      deallocate(d_ts, d_tr)
 END SUBROUTINE phys_local_var_end
 
Index: LMDZ4/trunk/libf/phylmd/phys_state_var_mod.F90
===================================================================
--- LMDZ4/trunk/libf/phylmd/phys_state_var_mod.F90	(revision 909)
+++ LMDZ4/trunk/libf/phylmd/phys_state_var_mod.F90	(revision 909)
@@ -0,0 +1,78 @@
+      MODULE phys_state_var_mod
+! Variables sauvegardees pour le startphy.nc
+!======================================================================
+!
+!
+!======================================================================
+! Declaration des variables
+      USE dimphy
+      INTEGER :: klon_glo
+      REAL, SAVE :: dtime, co2_ppm_etat0, solaire_etat0
+      REAL, ALLOCATABLE, SAVE :: rlat(:), rlon(:), pctsrf(:,:)
+      REAL, ALLOCATABLE, SAVE :: ftsol(:,:)
+      character(len=6), SAVE :: ocean
+      logical, SAVE :: ok_veget 
+      REAL, ALLOCATABLE, SAVE :: falb1(:,:), falb2(:,:)
+      REAL, ALLOCATABLE, SAVE :: rain_fall(:), snow_fall(:)
+      REAL, ALLOCATABLE, SAVE :: solsw(:), sollw(:)
+      REAL, ALLOCATABLE, SAVE :: radsol(:)
+!clesphy0 param physiq
+!
+! Parametres de l'Orographie a l'Echelle Sous-Maille (OESM):
+!
+      REAL, ALLOCATABLE, SAVE :: zmea(:), zstd(:), zsig(:), zgam(:)
+      REAL, ALLOCATABLE, SAVE :: zthe(:), zpic(:), zval(:)
+!     REAL tabcntr0(100)
+      REAL, ALLOCATABLE, SAVE :: rugoro(:)
+      REAL, ALLOCATABLE, SAVE :: t_ancien(:,:), q_ancien(:,:)
+      LOGICAL, SAVE :: ancien_ok
+      REAL, ALLOCATABLE, SAVE :: clwcon(:,:),rnebcon(:,:)
+      REAL, ALLOCATABLE, SAVE :: ratqs(:,:)
+      REAL, ALLOCATABLE, SAVE :: pbl_tke(:,:,:) ! turb kinetic energy
+
+CONTAINS
+
+!======================================================================
+SUBROUTINE phys_state_var_init
+use dimphy
+IMPLICIT NONE
+#include "indicesol.h"
+
+      ALLOCATE( rlat(klon))
+      ALLOCATE( rlon(klon)) 
+      ALLOCATE( pctsrf(klon,nbsrf))
+      ALLOCATE( ftsol(klon,nbsrf))
+      ALLOCATE( falb1(klon,nbsrf))
+      ALLOCATE( falb2(klon,nbsrf))
+      ALLOCATE( rain_fall(klon) )
+      ALLOCATE( snow_fall(klon) )
+      ALLOCATE(solsw(klon), sollw(klon))
+      ALLOCATE( radsol(klon))
+      ALLOCATE( zmea(klon), zstd(klon), zsig(klon), zgam(klon) )
+      ALLOCATE( zthe(klon), zpic(klon), zval(klon) )
+
+      ALLOCATE( rugoro(klon))
+      ALLOCATE( t_ancien(klon,klev), q_ancien(klon,klev))
+      ALLOCATE( clwcon(klon,klev),rnebcon(klon,klev))
+      ALLOCATE( ratqs(klon,klev))
+      ALLOCATE(pbl_tke(klon,klev+1,nbsrf))
+
+END SUBROUTINE phys_state_var_init
+
+!======================================================================
+SUBROUTINE phys_state_var_end
+use dimphy
+IMPLICIT NONE
+#include "indicesol.h"
+!     deallocate(t_seri,q_seri,ql_seri,qs_seri)
+
+      deallocate( rlat, rlon, pctsrf, ftsol, falb1, falb2 )
+      deallocate( rain_fall, snow_fall, solsw, sollw, radsol )
+      deallocate( zmea, zstd, zsig, zgam )
+      deallocate( zthe, zpic, zval )
+      deallocate( rugoro, t_ancien, q_ancien, clwcon, rnebcon )
+      deallocate( ratqs, pbl_tke )
+
+END SUBROUTINE phys_state_var_end
+
+      END MODULE phys_state_var_mod
Index: LMDZ4/trunk/libf/phylmd/physiq.F
===================================================================
--- LMDZ4/trunk/libf/phylmd/physiq.F	(revision 908)
+++ LMDZ4/trunk/libf/phylmd/physiq.F	(revision 909)
@@ -28,4 +28,5 @@
       USE pbl_surface_mod, ONLY : pbl_surface
       USE phys_local_var_mod ! Variables internes non sauvegardees de la physique
+      USE phys_state_var_mod, klon_glo=>klon ! Variables sauvegardees de la physique
 
 
@@ -34,4 +35,5 @@
       USE ocean_forced_mod, ONLY : ocean_forced_get_vars
       USE fonte_neige_mod, ONLY  : fonte_neige_get_vars
+      USE phys_output_mod
 
       IMPLICIT none
@@ -123,8 +125,4 @@
       parameter(rnpb=.true.)
 #endif
-c      ocean = type de modele ocean a utiliser: force, slab, couple
-      character*6 ocean
-      SAVE ocean
-c$OMP THREADPRIVATE(ocean)
 
 cIM "slab" ocean
@@ -143,9 +141,4 @@
 ccc      LOGICAL soil_model
 ccc      PARAMETER (soil_model=.FALSE.)
-      logical ok_veget
-      save ok_veget
-c$OMP THREADPRIVATE(ok_veget)
-c     parameter (ok_veget = .true.)
-c      parameter (ok_veget = .false.)
 c======================================================================
 c Dans les versions precedentes, l'eau liquide nuageuse utilisee dans
@@ -228,12 +221,4 @@
       REAL t(klon,klev),theta(klon,klev)
       REAL qx(klon,klev,nqmax)
-
-      REAL,allocatable,save :: t_ancien(:,:), q_ancien(:,:)
-c$OMP THREADPRIVATE(t_ancien, q_ancien)
-      LOGICAL ancien_ok
-      SAVE ancien_ok
-c$OMP THREADPRIVATE(ancien_ok)
-      REAL d_t_dyn(klon,klev)
-      REAL d_q_dyn(klon,klev)
 
       REAL omega(klon,klev)
@@ -635,24 +620,8 @@
 c Variables propres a la physique
 c
-      REAL dtime
-      SAVE dtime                  ! pas temporel de la physique
-c$OMP THREADPRIVATE(dtime)
-c
       INTEGER radpas
       SAVE radpas                 ! frequence d'appel rayonnement
 c$OMP THREADPRIVATE(radpas)
 c
-      REAL,allocatable,save :: radsol(:)
-c$OMP THREADPRIVATE(radsol)
-cym      SAVE radsol               ! bilan radiatif au sol calcule par code radiatif
-c
-      REAL,allocatable,save :: rlat(:)
-c$OMP THREADPRIVATE(rlat)
-cym      SAVE rlat                   ! latitude pour chaque point
-c
-      REAL,allocatable,save :: rlon(:)
-c$OMP THREADPRIVATE(rlon)
-cym      SAVE rlon                   ! longitude pour chaque point
-
       REAL,SAVE,ALLOCATABLE :: rlonPOS(:)
 c$OMP THREADPRIVATE(rlonPOS)    
@@ -666,12 +635,5 @@
 c$OMP THREADPRIVATE(itap)
 c
-      REAL co2_ppm_etat0
-c
-      REAL solaire_etat0
-c
       real slp(klon) ! sea level pressure
-
-      REAL,allocatable,save :: ftsol(:,:)
-c$OMP THREADPRIVATE(ftsol)       ! temperature du sol
 
 cIM
@@ -690,45 +652,5 @@
       REAL,save ::  solarlong0
 c
-      REAL,allocatable,save :: falb1(:,:)
-c$OMP THREADPRIVATE(falb1)       ! albedo par type de surface pour SW visible 
-c
-      REAL,allocatable,save :: falb2(:,:)
-c$OMP THREADPRIVATE(falb2)       ! albedo par type de surface pour SW proche IR
-
-c
-c
 c  Parametres de l'Orographie a l'Echelle Sous-Maille (OESM):
-c
-      REAL,allocatable,save :: zmea(:)
-c$OMP THREADPRIVATE(zmea)
-cym      SAVE zmea                   ! orographie moyenne
-c
-      REAL,allocatable,save :: zstd(:)
-c$OMP THREADPRIVATE(zstd)
-cym      SAVE zstd                   ! deviation standard de l'OESM
-c
-      REAL,allocatable,save :: zsig(:)
-c$OMP THREADPRIVATE(zsig)
-cym      SAVE zsig                   ! pente de l'OESM
-c
-      REAL,allocatable,save :: zgam(:)
-c$OMP THREADPRIVATE(zgam)
-cym      save zgam                   ! anisotropie de l'OESM
-c
-      REAL,allocatable,save :: zthe(:)
-c$OMP THREADPRIVATE(zthe)      
-cym      SAVE zthe                   ! orientation de l'OESM
-c
-      REAL,allocatable,save :: zpic(:)
-c$OMP THREADPRIVATE(zpic)
-cym      SAVE zpic                   ! Maximum de l'OESM
-c
-      REAL,allocatable,save :: zval(:)
-c$OMP THREADPRIVATE(zval)
-cym      SAVE zval                   ! Minimum de l'OESM
-c
-      REAL,allocatable,save :: rugoro(:)
-c$OMP THREADPRIVATE(rugoro)
-cym      SAVE rugoro                 ! longueur de rugosite de l'OESM
 c
 cIM 141004     REAL zulow(klon),zvlow(klon),zustr(klon), zvstr(klon)
@@ -919,11 +841,4 @@
 #endif
 
-cAA
-      REAL,allocatable,save :: rain_fall(:) ! pluie
-c$OMP THREADPRIVATE(rain_fall)
-      REAL,allocatable,save :: snow_fall(:) ! neige
-c$OMP THREADPRIVATE(snow_fall)
-cym      save snow_fall, rain_fall
-
 cIM cf FH pour Tiedtke 080604
       REAL rain_tiedtke(klon),snow_tiedtke(klon)
@@ -958,6 +873,4 @@
       SAVE lmt_pas                ! frequence de mise a jour
 c$OMP THREADPRIVATE(lmt_pas) 
-      REAL,allocatable,save :: pctsrf(:,:)
-c$OMP THREADPRIVATE(pctsrf) 
 cIM
       REAL pctsrf_new(klon,nbsrf) !pourcentage surfaces issus d'ORCHIDEE
@@ -1024,6 +937,4 @@
 c Variables locales
 c
-      real,allocatable,save :: clwcon(:,:),rnebcon(:,:)
-c$OMP THREADPRIVATE(clwcon,rnebcon)
       real,allocatable,save :: clwcon0(:,:),rnebcon0(:,:)
 cym      save rnebcon, clwcon
@@ -1042,8 +953,4 @@
       REAL fluxu(klon,klev, nbsrf)   ! flux turbulent de vitesse u
       REAL fluxv(klon,klev, nbsrf)   ! flux turbulent de vitesse v
-
-      REAL, DIMENSION(:,:,:), ALLOCATABLE, SAVE :: pbl_tke ! turb kinetic energy
-c   !$OMP THREADPRIVATE(pbl_tke)
-
 c
       REAL zxfluxt(klon, klev)
@@ -1060,6 +967,6 @@
       REAL,allocatable,save :: cool0(:,:)   ! refroidissement infrarouge ciel clair
 c$OMP THREADPRIVATE(cool0)
-      REAL,allocatable,save :: topsw(:), toplw(:), solsw(:), sollw(:)
-c$OMP THREADPRIVATE(topsw,toplw,solsw,sollw)
+      REAL,allocatable,save :: topsw(:), toplw(:)
+c$OMP THREADPRIVATE(topsw,toplw)
       real,allocatable,save :: sollwdown(:)    ! downward LW flux at surface
 c$OMP THREADPRIVATE(sollwdown)
@@ -1110,5 +1017,5 @@
       REAL zx_t, zx_qs, zdelta, zcor, zfra, zlvdcp, zlsdcp
       real zqsat(klon,klev)
-      INTEGER i, k, iq, ig, j, nsrf, ll, l, iiq
+      INTEGER i, k, iq, ig, j, nsrf, ll, l, iiq, iff
       REAL t_coup
       PARAMETER (t_coup=234.0)
@@ -1163,14 +1070,4 @@
 c eva: evaporation de l'eau liquide nuageuse
 c vdf: couche limite (Vertical DiFfusion)
-      REAL d_t_con(klon,klev),d_q_con(klon,klev)
-      REAL d_t_wake(klon,klev),d_q_wake(klon,klev)
-      REAL,SAVE,ALLOCATABLE :: d_u_con(:,:),d_v_con(:,:)
-c$OMP THREADPRIVATE(d_u_con,d_v_con)
-      REAL d_t_lsc(klon,klev),d_q_lsc(klon,klev),d_ql_lsc(klon,klev)
-      REAL d_t_ajsb(klon,klev), d_q_ajsb(klon,klev)
-      REAL d_t_ajs(klon,klev), d_q_ajs(klon,klev)
-      REAL d_u_ajs(klon,klev), d_v_ajs(klon,klev)
-      REAL d_t_eva(klon,klev),d_q_eva(klon,klev)
-      REAL d_t_oli(klon,klev) !tendances dues a oro et lif 
       REAL rneb(klon,klev)
 
@@ -1206,17 +1103,5 @@
 c$OMP THREADPRIVATE(snow_con)
       REAL snow_lsc(klon)
-      REAL d_ts(klon,nbsrf)
-c
-      REAL d_u_vdf(klon,klev), d_v_vdf(klon,klev)
-      REAL d_t_vdf(klon,klev), d_q_vdf(klon,klev)
-c
-      REAL d_u_oro(klon,klev), d_v_oro(klon,klev)
-      REAL d_t_oro(klon,klev)
-      REAL d_u_lif(klon,klev), d_v_lif(klon,klev)
-      REAL d_t_lif(klon,klev)
-      REAL d_u_oli(klon,klev), d_v_oli(klon,klev) !tendances dues a oro et lif 
-
-      REAL,allocatable,save :: ratqs(:,:)
-c$OMP THREADPRIVATE(ratqs)
+c
       REAL ratqss(klon,klev),ratqsc(klon,klev)
       real ratqsbas,ratqshaut
@@ -1269,7 +1154,4 @@
 c Variables locales pour effectuer les appels en serie
 c
-      REAL tr_seri(klon,klev,nbtr)
-      REAL d_tr(klon,klev,nbtr)
-
       REAL zx_rh(klon,klev)
 cIM RH a 2m (la surface)
@@ -1392,5 +1274,4 @@
 c$OMP THREADPRIVATE(if_ebil)
 c+jld ec_conser
-      REAL d_t_ec(klon,klev)    ! tendance du a la conersion Ec -> E thermique
       REAL ZRCPD
 c-jld ec_conser
@@ -1512,5 +1393,4 @@
       if (first) then 
       
-      allocate( t_ancien(klon,klev), q_ancien(klon,klev))
       allocate( swdn0(klon,klevp1), swdn(klon,klevp1))
       allocate( swup0(klon,klevp1), swup(klon,klevp1))
@@ -1522,19 +1402,5 @@
       allocate( LWup200clr(klon), LWup200(klon))
       allocate( LWdnTOA(klon), LWdnTOAclr(klon))
-      allocate( radsol(klon))
-      allocate( rlat(klon))
-      allocate( rlon(klon))
-      allocate( ftsol(klon,nbsrf))
       allocate( deltat(klon))
-      allocate( falb1(klon,nbsrf))
-      allocate( falb2(klon,nbsrf))
-      allocate( zmea(klon))
-      allocate( zstd(klon))
-      allocate( zsig(klon))
-      allocate( zgam(klon))
-      allocate( zthe(klon))
-      allocate( zpic(klon))
-      allocate( zval(klon))
-      allocate( rugoro(klon))
       allocate( zuthe(klon),zvthe(klon))
       allocate( alb_neig(klon))
@@ -1569,17 +1435,13 @@
       allocate( pfrac_nucl(klon,klev))
       allocate( pfrac_1nucl(klon,klev))
-      allocate( rain_fall(klon) )
-      allocate( snow_fall(klon) )
       allocate( total_rain(klon), nday_rain(klon))
-      allocate( pctsrf(klon,nbsrf))
       allocate( albsol1(klon))
       allocate( albsol2(klon))
       allocate( wo(klon,klev))
-      allocate( clwcon(klon,klev),rnebcon(klon,klev))
       allocate( heat(klon,klev)    )
       allocate( heat0(klon,klev)  )
       allocate( cool(klon,klev)    )
       allocate( cool0(klon,klev)   )
-      allocate( topsw(klon), toplw(klon), solsw(klon), sollw(klon))
+      allocate( topsw(klon), toplw(klon))
       allocate( sollwdown(klon)    )
       allocate( sollwdownclr(klon)  ) 
@@ -1592,5 +1454,4 @@
       allocate( bbase(klon)    )     
       allocate( ibas_con(klon), itop_con(klon))
-      allocate( ratqs(klon,klev))
       allocate( sulfate_pi(klon, klev)) 
       allocate( paire_ter(klon))
@@ -1639,7 +1500,11 @@
       allocate( snow_con(klon))
       allocate( tnondef(klon,nlevSTD,nout)) 
-      allocate( d_u_con(klon,klev),d_v_con(klon,klev))            
       
-      
+      print*, '================================================='
+      print*, 'Allocation des variables locales et sauvegardees'
+      call phys_local_var_init
+      call phys_state_var_init
+      print*, '================================================='
+                  
         paire_ter(:)=0.    
         clwcon(:,:)=0.
@@ -1654,9 +1519,4 @@
 	first=.false.
 
-      print*, '================================================='
-      print*, 'Allocation des variables locales non sauvegardees'
-      call phys_local_var_init
-      print*, '================================================='
-                  
       endif  ! fisrt
 
@@ -1727,6 +1587,4 @@
 !rv
 !ACo
-         d_u_con(:,:) = 0.0
-         d_v_con(:,:) = 0.0
          rnebcon0(:,:) = 0.0
          clwcon0(:,:) = 0.0
@@ -1771,6 +1629,4 @@
              PRINT*, "Using method MELLOR&YAMADA" 
          endif
-          ! NB! pbl_tke could/should be read and written from (re)startphy.nc
-          ALLOCATE(pbl_tke(klon,klev+1,nbsrf))  
           pbl_tke(:,:,:) = 1.e-8 
 
@@ -2000,22 +1856,30 @@
 #ifdef CPP_IOIPSL
 
-#ifdef histhf
-#include "ini_histhf.h"
-#endif
-
-#ifdef histday
-#include "ini_histday.h"
+c Commente par abderrahmane 11 2 08
+c#ifdef histhf
+c#include "ini_histhf.h"
+c#endif
+
+c#ifdef histday
+c#include "ini_histday.h"
 cIM rajout diagnostiques bilan KP pour analyse MJO par Jun-Ichi Yano
 c#include "ini_bilKP_ins.h"
 c#include "ini_bilKP_ave.h"
-#endif
-
-#ifdef histmth
-#include "ini_histmth.h"
-#endif
-
-#ifdef histins
-#include "ini_histins.h"
-#endif
+c#endif
+
+c#ifdef histmth
+c#include "ini_histmth.h"
+c#endif
+
+c#ifdef histins
+c#include "ini_histins.h"
+c#endif
+
+      call phys_output_open ( jj_nb, jjmp1, nqmax,
+     &               nlevSTD, clevSTD, nbteta, ctetaSTD,
+     &      dtime, presnivs, ok_veget, ocean, iflag_pbl,
+     &               ok_mensuel,ok_journe,ok_hf,ok_instan,
+     &               rlon, rlat, nid_files)
+
 
 #ifdef histISCCP
@@ -3841,19 +3705,23 @@
       ENDIF
 
-#ifdef histhf
-#include "write_histhf.h"
-#endif
-
-#ifdef histday
-#include "write_histday.h"
-#endif
-
-#ifdef histmth
-#include "write_histmth.h"
-#endif
-
-#ifdef histins
-#include "write_histins.h"
-#endif
+
+c Commente par abderrahmane le 11 2 08
+c#ifdef histhf
+c#include "write_histhf.h"
+c#endif
+
+c#ifdef histday
+c#include "write_histday.h"
+c#endif
+
+c#ifdef histmth
+c#include "write_histmth.h"
+c#endif
+
+c#ifdef histins
+c#include "write_histins.h"
+c#endif
+
+#include "phys_output_write.h"
 
 #ifdef histISCCP
