diff --git a/src/MNH/advec_ppm_algo.f90 b/src/MNH/advec_ppm_algo.f90
index e4a09da0b65d23f042aec7db1f98f852eb38d4c8..5bbeadcee81c155e0cfdc6b115eb81d97e210548 100644
--- a/src/MNH/advec_ppm_algo.f90
+++ b/src/MNH/advec_ppm_algo.f90
@@ -17,7 +17,9 @@ INTERFACE
       SUBROUTINE  ADVEC_PPM_ALGO(HMET_ADV_SCHEME, HLBCX, HLBCY, KGRID, PFIELDT, &
                                  PRHODJ, PTSTEP, &
                                  PRHOX1, PRHOX2, PRHOY1, PRHOY2, PRHOZ1,PRHOZ2,&
-                                 PSRC, KTCOUNT, PCRU, PCRV, PCRW)
+                                 PSRC,  TPDTCUR, PCRU, PCRV, PCRW)
+!
+USE MODD_TIME, ONLY: DATE_TIME
 !
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX  ! X direction LBC type
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY  ! Y direction LBC type
@@ -33,7 +35,7 @@ REAL, DIMENSION(:,:,:), INTENT(IN)  :: PRHOX1, PRHOX2
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PRHOY1, PRHOY2
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PRHOZ1, PRHOZ2
 REAL,                   INTENT(IN)  :: PTSTEP  ! Time step 
-INTEGER,                INTENT(IN)  :: KTCOUNT ! iteration count
+TYPE (DATE_TIME),       INTENT(IN)  :: TPDTCUR ! current date and time
 !
 REAL, DIMENSION(:,:,:), INTENT(OUT) :: PSRC    ! source term after advection
 !
@@ -48,7 +50,7 @@ END MODULE MODI_ADVEC_PPM_ALGO
       SUBROUTINE  ADVEC_PPM_ALGO(HMET_ADV_SCHEME, HLBCX, HLBCY, KGRID, PFIELDT, &
                                  PRHODJ, PTSTEP, &
                                  PRHOX1, PRHOX2, PRHOY1, PRHOY2, PRHOZ1,PRHOZ2,&
-                                 PSRC, KTCOUNT, PCRU, PCRV, PCRW)
+                                 PSRC, TPDTCUR, PCRU, PCRV, PCRW)
 !     ##########################################################################
 !!
 !!****  *ADVEC_PPM_ALGO* - interface for 3D advection with PPM type scheme
@@ -73,12 +75,12 @@ END MODULE MODI_ADVEC_PPM_ALGO
 !!
 !!    MODIFICATIONS
 !!    -------------
+!       10/16 (C.Lac) : Correction on the flag for Strang splitting to insure
+!                       reproducibility between START and RESTA
+!
 !
-!USE MODE_ll
+USE MODD_TYPE_DATE
 !
-!USE MODD_CONF
-!USE MODD_ARGSLIST_ll, ONLY : HALO2LIST_ll
-!USE MODI_ADVEC_4TH_ORDER_AUX
 USE MODI_SHUMAN
 USE MODI_PPM
 !
@@ -100,7 +102,7 @@ REAL, DIMENSION(:,:,:), INTENT(IN)  :: PRHOX1, PRHOX2
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PRHOY1, PRHOY2
 REAL, DIMENSION(:,:,:), INTENT(IN)  :: PRHOZ1, PRHOZ2
 REAL,                   INTENT(IN)  :: PTSTEP  ! Time step 
-INTEGER,                INTENT(IN)  :: KTCOUNT ! iteration count
+TYPE (DATE_TIME),       INTENT(IN)  :: TPDTCUR ! current date and time
 !
 REAL, DIMENSION(:,:,:), INTENT(OUT) :: PSRC    ! source term after advection
 !
@@ -108,7 +110,7 @@ REAL, DIMENSION(:,:,:), INTENT(OUT) :: PSRC    ! source term after advection
 !
 !*       0.2   Declarations of local variables :
 !
-!INTEGER:: IW,IE,IS,IN,IT,IB,IWF,IEF,ISF,INF   ! Coordinate of 4th order diffusion area
+LOGICAL  :: GFLAG   ! Logical flag
 !
 !-------------------------------------------------------------------------------
 !
@@ -121,6 +123,7 @@ REAL, DIMENSION(:,:,:), INTENT(OUT) :: PSRC    ! source term after advection
 !               ------------
 !
 PSRC = PFIELDT
+GFLAG = ABS(MOD(TPDTCUR%TIME/PTSTEP,2.)-1.) .LE. 0.5 
 !
 SELECT CASE (HMET_ADV_SCHEME)
 !
@@ -128,7 +131,8 @@ SELECT CASE (HMET_ADV_SCHEME)
 !
 CASE('PPM_00')
 !
-   IF (MODULO(KTCOUNT,2) .EQ. 0) THEN ! JUANTEST50
+!  IF (MODULO(KTCOUNT,2) .EQ. 0) THEN ! JUANTEST50
+   IF (GFLAG ) THEN 
 !
 !*       1.     ADVECTION IN X DIRECTION
 !               ------------------------
@@ -175,7 +179,7 @@ CASE('PPM_00')
 !
 CASE('PPM_01')
 !
-   IF (MODULO(KTCOUNT,2) .EQ. 0) THEN
+   IF (GFLAG ) THEN 
 !
 !*       1.     ADVECTION IN X DIRECTION
 !               ------------------------
@@ -227,7 +231,7 @@ CASE('PPM_01')
 !
 CASE('PPM_02')
 !
-   IF (MODULO(KTCOUNT,2) .EQ. 0) THEN
+   IF (GFLAG ) THEN 
 !
 !*       1.     ADVECTION IN X DIRECTION
 !               ------------------------
diff --git a/src/MNH/advection_metsv.f90 b/src/MNH/advection_metsv.f90
index 60d68a9f6e74ae200972b045ea123afa3cceb287..9a6751d0e7f17adedca400a244696897d2df757b 100644
--- a/src/MNH/advection_metsv.f90
+++ b/src/MNH/advection_metsv.f90
@@ -11,12 +11,14 @@ INTERFACE
       SUBROUTINE ADVECTION_METSV (HLUOUT, HFMFILE, OCLOSE_OUT,HUVW_ADV_SCHEME, &
                             HMET_ADV_SCHEME,HSV_ADV_SCHEME, HCLOUD, KSPLIT,    &
                             OSPLIT_CFL, PSPLIT_CFL, OCFL_WRIT,                 &
-                            HLBCX, HLBCY, KRR, KSV, KTCOUNT, PTSTEP,           &
+                            HLBCX, HLBCY, KRR, KSV, TPDTCUR, PTSTEP,           &
                             PUT, PVT, PWT, PTHT, PRT, PTKET, PSVT, PPABST,     &
                             PTHVREF, PRHODJ, PDXX, PDYY, PDZZ, PDZX, PDZY,     &
                             PRTHS, PRRS, PRTKES, PRSVS,                        &
                             PRTHS_CLD, PRRS_CLD, PRSVS_CLD, PRTKES_ADV         )
 !
+USE MODD_TYPE_DATE, ONLY: DATE_TIME
+!
 LOGICAL,                INTENT(IN)   ::  OCLOSE_OUT   ! switch for syncronous
                                                       ! file opening
 CHARACTER(LEN=*),       INTENT(IN)   ::  HFMFILE      ! Name of the output
@@ -39,7 +41,7 @@ CHARACTER(LEN=4),DIMENSION(2),INTENT(IN):: HLBCX, HLBCY  ! X- and Y-direc LBC
 INTEGER,                  INTENT(IN)    :: KRR  ! Number of moist variables
 INTEGER,                  INTENT(IN)    :: KSV  ! Number of Scalar Variables
 !
-INTEGER,                  INTENT(IN)    :: KTCOUNT
+TYPE (DATE_TIME),         INTENT(IN)    :: TPDTCUR ! current date and time
 REAL,                     INTENT(IN)    :: PTSTEP
 !
 REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PUT , PVT  , PWT
@@ -67,7 +69,7 @@ END MODULE MODI_ADVECTION_METSV
       SUBROUTINE ADVECTION_METSV (HLUOUT, HFMFILE, OCLOSE_OUT,HUVW_ADV_SCHEME, &
                             HMET_ADV_SCHEME,HSV_ADV_SCHEME, HCLOUD, KSPLIT,    &
                             OSPLIT_CFL, PSPLIT_CFL, OCFL_WRIT,                 &
-                            HLBCX, HLBCY, KRR, KSV, KTCOUNT, PTSTEP,           &
+                            HLBCX, HLBCY, KRR, KSV, TPDTCUR, PTSTEP,           &
                             PUT, PVT, PWT, PTHT, PRT, PTKET, PSVT, PPABST,     &
                             PTHVREF, PRHODJ, PDXX, PDYY, PDZZ, PDZX, PDZY,     &
                             PRTHS, PRRS, PRTKES, PRSVS,                        &
@@ -131,7 +133,8 @@ END MODULE MODI_ADVECTION_METSV
 !!                  J.Escobar : 15/09/2015 : WENO5 & JPHEXT <> 1 
 !!                  J.Escobar : 01/10/2015 : add computation of CFL for L1D case
 !!                  04/2016  (C.Lac)       : correction of negativity for KHKO
-!!
+!!                  10/2016  (C.Lac) Correction on the flag for Strang splitting
+!!                                  to insure reproducibility between START and RESTA
 !-------------------------------------------------------------------------------
 !
 !*       0.    DECLARATIONS
@@ -145,6 +148,7 @@ USE MODD_CONF,  ONLY : LNEUTRAL,NHALO,L1D, L2D
 USE MODD_CTURB, ONLY : XTKEMIN
 USE MODD_CST 
 USE MODD_BUDGET
+USE MODD_TYPE_DATE, ONLY: DATE_TIME
 !
 USE MODI_CONTRAV
 USE MODI_PPM_RHODJ
@@ -183,7 +187,7 @@ CHARACTER(LEN=4),DIMENSION(2),INTENT(IN):: HLBCX, HLBCY  ! X- and Y-direc LBC
 INTEGER,                  INTENT(IN)    :: KRR  ! Number of moist variables
 INTEGER,                  INTENT(IN)    :: KSV  ! Number of Scalar Variables
 !
-INTEGER,                  INTENT(IN)    :: KTCOUNT
+TYPE (DATE_TIME),         INTENT(IN)    :: TPDTCUR ! current date and time
 REAL,                     INTENT(IN)    :: PTSTEP
 !
 REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PUT , PVT  , PWT
@@ -475,12 +479,12 @@ DO JSPL=1,KSPLIT
    IF (KSV /=0) ZRSVS_PPM(:,:,:,:)   = 0.              
 !
    IF (LNEUTRAL) ZTH=ZTH-PTHVREF  !* To be removed with the new PPM scheme ?
-   CALL PPM_MET (HLBCX,HLBCY, KRR, KTCOUNT, ZRUCPPM, ZRVCPPM, ZRWCPPM, ZTSTEP_PPM,    &
-              PRHODJ,  ZRHOX1, ZRHOX2, ZRHOY1, ZRHOY2,  ZRHOZ1, ZRHOZ2,               &
+   CALL PPM_MET (HLBCX,HLBCY, KRR, TPDTCUR,ZRUCPPM, ZRVCPPM, ZRWCPPM, ZTSTEP_PPM,    &
+              PRHODJ,  ZRHOX1, ZRHOX2, ZRHOY1, ZRHOY2,  ZRHOZ1, ZRHOZ2,              &
               ZTH, ZTKE, ZR, ZRTHS_PPM, ZRTKES_PPM, ZRRS_PPM, HMET_ADV_SCHEME)
    IF (LNEUTRAL) ZTH=ZTH+PTHVREF  !* To be removed with the new PPM scheme ?
 !
-   CALL PPM_SCALAR (HLBCX,HLBCY, KSV, KTCOUNT, ZRUCPPM, ZRVCPPM, ZRWCPPM,             &
+   CALL PPM_SCALAR (HLBCX,HLBCY, KSV, TPDTCUR, ZRUCPPM, ZRVCPPM, ZRWCPPM,             &
                  ZTSTEP_PPM, PRHODJ, ZRHOX1, ZRHOX2, ZRHOY1, ZRHOY2,  ZRHOZ1, ZRHOZ2, &
                  ZSV, ZRSVS_PPM, HSV_ADV_SCHEME                                       )
 !
diff --git a/src/MNH/ppm_met.f90 b/src/MNH/ppm_met.f90
index 65eed307e34969f39422614dcb4efa5b2caef965..6a728dfdf681da9e7767ccef583b337d6f8086c8 100644
--- a/src/MNH/ppm_met.f90
+++ b/src/MNH/ppm_met.f90
@@ -9,18 +9,20 @@
 !
 INTERFACE
 !
-      SUBROUTINE PPM_MET (HLBCX,HLBCY, KRR, KTCOUNT,              &
+      SUBROUTINE PPM_MET (HLBCX,HLBCY, KRR, TPDTCUR,              &
                           PCRU, PCRV, PCRW, PTSTEP, PRHODJ,       &
                           PRHOX1, PRHOX2, PRHOY1, PRHOY2,         &
                           PRHOZ1, PRHOZ2, PTHT, PTKET, PRT,       &
                           PRTHS, PRTKES, PRRS, HMET_ADV_SCHEME    )
 !
+USE MODD_TYPE_DATE, ONLY: DATE_TIME
+!
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX ! X direction LBC type
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY ! Y direction LBC type
 CHARACTER (LEN=6),               INTENT(IN) :: HMET_ADV_SCHEME
 !
 INTEGER,                  INTENT(IN)    :: KRR    ! Number of moist variables
-INTEGER,                  INTENT(IN)    :: KTCOUNT! iteration count
+TYPE (DATE_TIME),         INTENT(IN)    :: TPDTCUR ! current date and time
 !
 REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PCRU  ! Courant
 REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PCRV  ! numbers
@@ -46,7 +48,7 @@ END INTERFACE
 END MODULE MODI_PPM_MET
 !
 !     ######################################################################
-      SUBROUTINE PPM_MET (HLBCX,HLBCY, KRR, KTCOUNT,              &
+      SUBROUTINE PPM_MET (HLBCX,HLBCY, KRR, TPDTCUR,              &
                           PCRU, PCRV, PCRW, PTSTEP, PRHODJ,       &
                           PRHOX1, PRHOX2, PRHOY1, PRHOY2,         &
                           PRHOZ1, PRHOZ2, PTHT, PTKET, PRT,       &
@@ -80,6 +82,8 @@ END MODULE MODI_PPM_MET
 !!    -------------
 !!      Original 11.05.2006. T.Maric
 !!      Modification : 11.2011 C.Lac, V.Masson : Advection of (theta_l,r_t) 
+!!                  10/2016  (C.Lac) Correction on the flag for Strang splitting
+!!                                  to insure reproducibility between START and RESTA 
 !!
 !-------------------------------------------------------------------------------
 !
@@ -90,6 +94,7 @@ END MODULE MODI_PPM_MET
 !
 USE MODD_PARAMETERS
 USE MODD_CONF
+USE MODD_TYPE_DATE, ONLY: DATE_TIME
 !
 USE MODI_SHUMAN
 USE MODI_PPM
@@ -108,7 +113,7 @@ CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY ! Y direction LBC type
 CHARACTER (LEN=6),               INTENT(IN) :: HMET_ADV_SCHEME
 !
 INTEGER,                  INTENT(IN)    :: KRR    ! Number of moist variables
-INTEGER,                  INTENT(IN)    :: KTCOUNT! iteration count
+TYPE (DATE_TIME),         INTENT(IN)    :: TPDTCUR ! current date and time
 !
 REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PCRU  ! contravariant
 REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PCRV  !  components
@@ -159,7 +164,7 @@ IGRID = 1
 !
 CALL ADVEC_PPM_ALGO(HMET_ADV_SCHEME, HLBCX, HLBCY, IGRID, PTHT, PRHODJ, PTSTEP, &
                     PRHOX1, PRHOX2, PRHOY1, PRHOY2, PRHOZ1, PRHOZ2, &
-                    ZSRC, KTCOUNT, PCRU, PCRV, PCRW)
+                    ZSRC, TPDTCUR, PCRU, PCRV, PCRW)
 ! add the advection to the sources
 PRTHS = PRTHS +  ZSRC 
 !
@@ -169,7 +174,7 @@ PRTHS = PRTHS +  ZSRC
 IF (GTKEALLOC) THEN
    CALL ADVEC_PPM_ALGO(HMET_ADV_SCHEME, HLBCX, HLBCY, IGRID, PTKET,PRHODJ,PTSTEP, &
                        PRHOX1, PRHOX2, PRHOY1, PRHOY2, PRHOZ1, PRHOZ2, &
-                       ZSRC, KTCOUNT, PCRU, PCRV, PCRW)
+                       ZSRC, TPDTCUR, PCRU, PCRV, PCRW)
   PRTKES = PRTKES + ZSRC
 !
 !
@@ -184,7 +189,7 @@ DO JRR=1,KRR
    CALL ADVEC_PPM_ALGO(HMET_ADV_SCHEME, HLBCX, HLBCY, IGRID,           &
                        PRT(:,:,:,JRR), PRHODJ, PTSTEP,                 &
                        PRHOX1, PRHOX2, PRHOY1, PRHOY2, PRHOZ1, PRHOZ2, &
-                       ZSRC, KTCOUNT, PCRU, PCRV, PCRW                 )
+                       ZSRC, TPDTCUR, PCRU, PCRV, PCRW                 )
    PRRS(:,:,:,JRR) = PRRS(:,:,:,JRR) + ZSRC(:,:,:)
 !
 END DO
diff --git a/src/MNH/ppm_scalar.f90 b/src/MNH/ppm_scalar.f90
index 25f08aba4d3d3b2f69bbb1c5fb445a493e66c54f..d3c768dfc6cec4be3178cc6852c0826e694cf53b 100644
--- a/src/MNH/ppm_scalar.f90
+++ b/src/MNH/ppm_scalar.f90
@@ -10,20 +10,22 @@
 !
 INTERFACE
 !
-      SUBROUTINE PPM_SCALAR (HLBCX,HLBCY, KSV, KTCOUNT,   &
+      SUBROUTINE PPM_SCALAR (HLBCX,HLBCY, KSV, TPDTCUR,   &
                      PCRU, PCRV, PCRW, PTSTEP, PRHODJ,    &
                      PRHOX1, PRHOX2, PRHOY1, PRHOY2,      &
                      PRHOZ1, PRHOZ2,                      &
                      PSVT, PRSVS, HSV_ADV_SCHEME          ) 
 !
 USE MODD_ARGSLIST_ll, ONLY : HALO2LIST_ll
+USE MODD_TYPE_DATE,   ONLY : DATE_TIME
+!
 !
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCX ! X direction LBC type
 CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY ! Y direction LBC type
 CHARACTER (LEN=6),               INTENT(IN) :: HSV_ADV_SCHEME
 !
 INTEGER,                  INTENT(IN)    :: KSV    ! Number of Scalar Variables
-INTEGER,                  INTENT(IN)    :: KTCOUNT! iteration count
+TYPE (DATE_TIME),         INTENT(IN)    :: TPDTCUR ! current date and time
 !
 REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PCRU  ! Courant
 REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PCRV  ! numbers
@@ -48,7 +50,7 @@ END INTERFACE
 END MODULE MODI_PPM_SCALAR
 !
 !     ######################################################################
-      SUBROUTINE PPM_SCALAR (HLBCX,HLBCY, KSV, KTCOUNT,   &
+      SUBROUTINE PPM_SCALAR (HLBCX,HLBCY, KSV, TPDTCUR,   &
                      PCRU, PCRV, PCRW, PTSTEP, PRHODJ,    &
                      PRHOX1, PRHOX2, PRHOY1, PRHOY2,      &
                      PRHOZ1, PRHOZ2,                      &
@@ -82,7 +84,8 @@ END MODULE MODI_PPM_SCALAR
 !!    -------------
 !!      Original 11.05.2006. T.Maric
 !!      Modification : 11.2011 C.Lac, V.Masson : Advection of (theta_l,r_t) 
-!!
+!!                  10/2016  (C.Lac) Correction on the flag for Strang splitting
+!!                                  to insure reproducibility between START and RESTA!!
 !-------------------------------------------------------------------------------
 !
 !*       0.    DECLARATIONS
@@ -93,6 +96,7 @@ END MODULE MODI_PPM_SCALAR
 USE MODD_PARAMETERS
 USE MODD_CONF
 USE MODD_ARGSLIST_ll, ONLY : HALO2LIST_ll
+USE MODD_TYPE_DATE, ONLY: DATE_TIME
 !
 USE MODI_SHUMAN
 USE MODI_PPM
@@ -108,7 +112,7 @@ CHARACTER (LEN=4), DIMENSION(2), INTENT(IN) :: HLBCY ! Y direction LBC type
 CHARACTER (LEN=6),               INTENT(IN) :: HSV_ADV_SCHEME
 !
 INTEGER,                  INTENT(IN)    :: KSV    ! Number of Scalar Variables
-INTEGER,                  INTENT(IN)    :: KTCOUNT! iteration count
+TYPE (DATE_TIME),         INTENT(IN)    :: TPDTCUR ! current date and time
 !
 REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PCRU  ! contravariant
 REAL, DIMENSION(:,:,:),   INTENT(IN)    :: PCRV  !  components
@@ -152,7 +156,7 @@ DO JSV=1,KSV
    CALL ADVEC_PPM_ALGO(HSV_ADV_SCHEME, HLBCX, HLBCY, IGRID, PSVT(:,:,:,JSV), & 
                        PRHODJ, PTSTEP, & 
                        PRHOX1, PRHOX2, PRHOY1, PRHOY2, PRHOZ1, PRHOZ2, &
-                       ZSRC, KTCOUNT, PCRU, PCRV, PCRW)
+                       ZSRC, TPDTCUR, PCRU, PCRV, PCRW)
 ! add the advection to the sources
    PRSVS(:,:,:,JSV) =  PRSVS(:,:,:,JSV) + ZSRC(:,:,:)   
 !