Index: LMDZ4/branches/LMDZ4-dev/libf/dyn3d/coefpoly.F
===================================================================
--- LMDZ4/branches/LMDZ4-dev/libf/dyn3d/coefpoly.F	(revision 1201)
+++ LMDZ4/branches/LMDZ4-dev/libf/dyn3d/coefpoly.F	(revision 1220)
@@ -19,7 +19,7 @@
 c  On en revient a resoudre un systeme de 4 equat.a 4 inconnues a0,a1,a2,a3
 
-      REAL*8 Xf1, Xf2,Xprim1,Xprim2, xtild1,xtild2, xi 
-      REAL*8 Xfout, Xprim
-      REAL*8 a1,a2,a3,a0, xtil1car, xtil2car,derr,x1x2car
+      REAL(KIND=8) Xf1, Xf2,Xprim1,Xprim2, xtild1,xtild2, xi 
+      REAL(KIND=8) Xfout, Xprim
+      REAL(KIND=8) a1,a2,a3,a0, xtil1car, xtil2car,derr,x1x2car
 
       xtil1car = xtild1 * xtild1
Index: LMDZ4/branches/LMDZ4-dev/libf/dyn3d/create_etat0_limit.F
===================================================================
--- LMDZ4/branches/LMDZ4-dev/libf/dyn3d/create_etat0_limit.F	(revision 1201)
+++ LMDZ4/branches/LMDZ4-dev/libf/dyn3d/create_etat0_limit.F	(revision 1220)
@@ -6,4 +6,8 @@
        USE comgeomphy
        USE infotrac
+#ifdef CPP_IOIPSL
+       use ioipsl, only: ioconf_calendar
+#endif
+       IMPLICIT NONE
 c
 c
@@ -44,4 +48,8 @@
       call InitComgeomphy
 
+#ifdef CPP_IOIPSL
+      call ioconf_calendar('360d')
+#endif
+
       WRITE(6,*) '  *********************  '
       WRITE(6,*) ' interbar = ',interbar
Index: LMDZ4/branches/LMDZ4-dev/libf/dyn3d/etat0_netcdf.F
===================================================================
--- LMDZ4/branches/LMDZ4-dev/libf/dyn3d/etat0_netcdf.F	(revision 1201)
+++ LMDZ4/branches/LMDZ4-dev/libf/dyn3d/etat0_netcdf.F	(revision 1220)
@@ -655,5 +655,5 @@
       itau_phy = 0
       iday = dayref +itau/day_step
-      time = FLOAT(itau-(iday-dayref)*day_step)/day_step
+      time = real(itau-(iday-dayref)*day_step)/day_step
 c     
       IF(time.GT.1)  THEN
Index: LMDZ4/branches/LMDZ4-dev/libf/dyn3d/fxhyp.F
===================================================================
--- LMDZ4/branches/LMDZ4-dev/libf/dyn3d/fxhyp.F	(revision 1201)
+++ LMDZ4/branches/LMDZ4-dev/libf/dyn3d/fxhyp.F	(revision 1220)
@@ -48,18 +48,18 @@
 c
        REAL   dzoom
-       REAL*8 xlon(iip1),xprimm(iip1),xuv
-       REAL*8 xtild(0:nmax2)
-       REAL*8 fhyp(0:nmax2),ffdx,beta,Xprimt(0:nmax2)
-       REAL*8 Xf(0:nmax2),xxpr(0:nmax2)
-       REAL*8 xvrai(iip1),xxprim(iip1) 
-       REAL*8 pi,depi,epsilon,xzoom,fa,fb
-       REAL*8 Xf1, Xfi , a0,a1,a2,a3,xi2
+       REAL(KIND=8) xlon(iip1),xprimm(iip1),xuv
+       REAL(KIND=8) xtild(0:nmax2)
+       REAL(KIND=8) fhyp(0:nmax2),ffdx,beta,Xprimt(0:nmax2)
+       REAL(KIND=8) Xf(0:nmax2),xxpr(0:nmax2)
+       REAL(KIND=8) xvrai(iip1),xxprim(iip1) 
+       REAL(KIND=8) pi,depi,epsilon,xzoom,fa,fb
+       REAL(KIND=8) Xf1, Xfi , a0,a1,a2,a3,xi2
        INTEGER i,it,ik,iter,ii,idif,ii1,ii2
-       REAL*8 xi,xo1,xmoy,xlon2,fxm,Xprimin
-       REAL*8 champmin,champmax,decalx
+       REAL(KIND=8) xi,xo1,xmoy,xlon2,fxm,Xprimin
+       REAL(KIND=8) champmin,champmax,decalx
        INTEGER is2
        SAVE is2
 
-       REAL*8 heavyside
+       REAL(KIND=8) heavyside
 
        pi       = 2. * ASIN(1.)
Index: LMDZ4/branches/LMDZ4-dev/libf/dyn3d/fxyhyper.F
===================================================================
--- LMDZ4/branches/LMDZ4-dev/libf/dyn3d/fxyhyper.F	(revision 1201)
+++ LMDZ4/branches/LMDZ4-dev/libf/dyn3d/fxyhyper.F	(revision 1220)
@@ -41,5 +41,5 @@
        REAL rlonu(iip1),xprimu(iip1),rlonv(iip1),xprimv(iip1),
      , rlonm025(iip1),xprimm025(iip1), rlonp025(iip1),xprimp025(iip1)
-       REAL*8  dxmin, dxmax , dymin, dymax
+       REAL(KIND=8)  dxmin, dxmax , dymin, dymax
 
 c   ....   var. locales   .....
Index: LMDZ4/branches/LMDZ4-dev/libf/dyn3d/fyhyp.F
===================================================================
--- LMDZ4/branches/LMDZ4-dev/libf/dyn3d/fyhyp.F	(revision 1201)
+++ LMDZ4/branches/LMDZ4-dev/libf/dyn3d/fyhyp.F	(revision 1220)
@@ -50,15 +50,15 @@
      
        REAL   dzoom
-       REAL*8 ylat(jjp1), yprim(jjp1)
-       REAL*8 yuv
-       REAL*8 yt(0:nmax2)
-       REAL*8 fhyp(0:nmax2),beta,Ytprim(0:nmax2),fxm(0:nmax2)
+       REAL(KIND=8) ylat(jjp1), yprim(jjp1)
+       REAL(KIND=8) yuv
+       REAL(KIND=8) yt(0:nmax2)
+       REAL(KIND=8) fhyp(0:nmax2),beta,Ytprim(0:nmax2),fxm(0:nmax2)
        SAVE Ytprim, yt,Yf
-       REAL*8 Yf(0:nmax2),yypr(0:nmax2)
-       REAL*8 yvrai(jjp1), yprimm(jjp1),ylatt(jjp1)
-       REAL*8 pi,depi,pis2,epsilon,y0,pisjm
-       REAL*8 yo1,yi,ylon2,ymoy,Yprimin,champmin,champmax
-       REAL*8 yfi,Yf1,ffdy
-       REAL*8 ypn,deply,y00
+       REAL(KIND=8) Yf(0:nmax2),yypr(0:nmax2)
+       REAL(KIND=8) yvrai(jjp1), yprimm(jjp1),ylatt(jjp1)
+       REAL(KIND=8) pi,depi,pis2,epsilon,y0,pisjm
+       REAL(KIND=8) yo1,yi,ylon2,ymoy,Yprimin,champmin,champmax
+       REAL(KIND=8) yfi,Yf1,ffdy
+       REAL(KIND=8) ypn,deply,y00
        SAVE y00, deply
 
@@ -66,9 +66,9 @@
        INTEGER jpn,jjpn
        SAVE jpn
-       REAL*8 a0,a1,a2,a3,yi2,heavyy0,heavyy0m
-       REAL*8 fa(0:nmax2),fb(0:nmax2)
+       REAL(KIND=8) a0,a1,a2,a3,yi2,heavyy0,heavyy0m
+       REAL(KIND=8) fa(0:nmax2),fb(0:nmax2)
        REAL y0min,y0max
 
-       REAL*8     heavyside
+       REAL(KIND=8)     heavyside
 
        pi       = 2. * ASIN(1.)
Index: LMDZ4/branches/LMDZ4-dev/libf/dyn3d/gcm.F
===================================================================
--- LMDZ4/branches/LMDZ4-dev/libf/dyn3d/gcm.F	(revision 1201)
+++ LMDZ4/branches/LMDZ4-dev/libf/dyn3d/gcm.F	(revision 1220)
@@ -313,5 +313,5 @@
           annee_ref = anneeref
           day_ref = dayref
-          day_ini = 1
+          day_ini = dayref
           itau_dyn = 0
           itau_phy = 0
@@ -331,5 +331,5 @@
 
 #ifdef CPP_IOIPSL
-      call ioconf_startdate(annee_ref,0,day_ref, 0.)
+      call ioconf_startdate(annee_ref,1,day_ref, 0.)
 #endif
 
@@ -413,7 +413,7 @@
       WRITE(lunout,300)day_ini,day_end
  300  FORMAT('1'/,15x,'run du jour',i7,2x,'au jour',i7//)
-      call ju2ymds(jD_ref+day_ini-1,an, mois, jour, heure)
+      call ju2ymds(jD_ref + day_ini - day_ref, an, mois, jour, heure)
       write (lunout,301)jour, mois, an
-      call ju2ymds(jD_ref+day_end-1,an, mois, jour, heure)
+      call ju2ymds(jD_ref + day_end - day_ref, an, mois, jour, heure)
       write (lunout,302)jour, mois, an
  301  FORMAT('1'/,15x,'run du ', i2,'/',i2,'/',i4)
Index: LMDZ4/branches/LMDZ4-dev/libf/dyn3d/grid_atob.F
===================================================================
--- LMDZ4/branches/LMDZ4-dev/libf/dyn3d/grid_atob.F	(revision 1201)
+++ LMDZ4/branches/LMDZ4-dev/libf/dyn3d/grid_atob.F	(revision 1220)
@@ -700,5 +700,5 @@
       PARAMETER (imtmp=360,jmtmp=180)
       REAL xtmp(imtmp), ytmp(jmtmp)
-      REAL*8 cham1tmp(imtmp,jmtmp), cham2tmp(imtmp,jmtmp)
+      REAL(KIND=8) cham1tmp(imtmp,jmtmp), cham2tmp(imtmp,jmtmp)
       REAL zzzz
 c
@@ -859,5 +859,5 @@
               number(ii,jj) = number(ii,jj) + 1.0
               rugs(ii,jj) = rugs(ii,jj)
-     .                       + LOG(MAX(0.001,cham2tmp(i,j)))
+     .                       + LOG(MAX(0.001_8,cham2tmp(i,j)))
           ENDIF
           ENDDO
@@ -892,5 +892,5 @@
          i_proche = ij_proche - (j_proche-1)*imtmp
          PRINT*, "solution:", ij_proche, i_proche, j_proche
-         rugs(i,j) = LOG(MAX(0.001,cham2tmp(i_proche,j_proche)))
+         rugs(i,j) = LOG(MAX(0.001_8,cham2tmp(i_proche,j_proche)))
          ENDIF
       ENDDO
Index: LMDZ4/branches/LMDZ4-dev/libf/dyn3d/heavyside.F
===================================================================
--- LMDZ4/branches/LMDZ4-dev/libf/dyn3d/heavyside.F	(revision 1201)
+++ LMDZ4/branches/LMDZ4-dev/libf/dyn3d/heavyside.F	(revision 1220)
@@ -10,5 +10,5 @@
        IMPLICIT NONE
 
-       REAL*8 heavyside , a
+       REAL(KIND=8) heavyside , a
 
        IF ( a.LE.0. )  THEN
Index: LMDZ4/branches/LMDZ4-dev/libf/dyn3d/inter_barx.F
===================================================================
--- LMDZ4/branches/LMDZ4-dev/libf/dyn3d/inter_barx.F	(revision 1201)
+++ LMDZ4/branches/LMDZ4-dev/libf/dyn3d/inter_barx.F	(revision 1220)
@@ -212,5 +212,5 @@
      
 
-3      FORMAT(1x,70(1h-))
+3      FORMAT(1x,70("-"))
 2      FORMAT(1x,8f8.2)
 
Index: LMDZ4/branches/LMDZ4-dev/libf/dyn3d/leapfrog.F
===================================================================
--- LMDZ4/branches/LMDZ4-dev/libf/dyn3d/leapfrog.F	(revision 1201)
+++ LMDZ4/branches/LMDZ4-dev/libf/dyn3d/leapfrog.F	(revision 1220)
@@ -219,5 +219,5 @@
    1  CONTINUE
 
-      jD_cur = jD_ref + (day_ini - 1) + int (itau * dtvr / daysec) 
+      jD_cur = jD_ref + day_ini - day_ref + int (itau * dtvr / daysec) 
       jH_cur = jH_ref +                                                 &
      &          (itau * dtvr / daysec - int(itau * dtvr / daysec)) 
@@ -356,5 +356,6 @@
 !           rdaym_ini  = itau * dtvr / daysec
 !           rdayvrai   = rdaym_ini  + day_ini
-           jD_cur = jD_ref + (day_ini - 1) + int (itau * dtvr / daysec) 
+           jD_cur = jD_ref + day_ini - day_ref
+     $        + int (itau * dtvr / daysec) 
            jH_cur = jH_ref +                                            &
      &              (itau * dtvr / daysec - int(itau * dtvr / daysec)) 
Index: LMDZ4/branches/LMDZ4-dev/libf/dyn3d/sortvarc.F
===================================================================
--- LMDZ4/branches/LMDZ4-dev/libf/dyn3d/sortvarc.F	(revision 1201)
+++ LMDZ4/branches/LMDZ4-dev/libf/dyn3d/sortvarc.F	(revision 1220)
@@ -157,6 +157,6 @@
       RETURN
 
-3500   FORMAT('0'10(1h*),4x,'pas'i7,5x,'jour'f9.0,'heure'f5.1,4x 
-     *   ,'date',f14.4,4x,10(1h*))
+3500   FORMAT(10("*"),4x,'pas',i7,5x,'jour',f9.0,'heure',f5.1,4x 
+     *   ,'date',f14.4,4x,10("*"))
 4000   FORMAT(10x,'masse',4x,'rmsdpdt',7x,'energie',2x,'enstrophie'
      * ,2x,'entropie',3x,'rmsv',4x,'mt.ang',/,'GLOB  '
Index: LMDZ4/branches/LMDZ4-dev/libf/dyn3d/sortvarc0.F
===================================================================
--- LMDZ4/branches/LMDZ4-dev/libf/dyn3d/sortvarc0.F	(revision 1201)
+++ LMDZ4/branches/LMDZ4-dev/libf/dyn3d/sortvarc0.F	(revision 1220)
@@ -130,11 +130,11 @@
       ang0   = SSUM(     llm,  angl, 1 )
 
-      rday = FLOAT(INT ( day_ini + time ))
+      rday = FLOAT(INT (time ))
 c
       PRINT 3500, itau, rday, heure, time
       PRINT *, ptot0,etot0,ztot0,stot0,ang0
 
-3500   FORMAT('0',10(1h*),4x,'pas',i7,5x,'jour',f5.0,'heure',f5.1,4x 
-     *   ,'date',f10.5,4x,10(1h*))
+3500   FORMAT(10("*"),4x,'pas',i7,5x,'jour',f5.0,'heure',f5.1,4x 
+     *   ,'date',f10.5,4x,10("*"))
       RETURN
       END
