From 9c280f9f300f2997c39175d3022b231949fe20a1 Mon Sep 17 00:00:00 2001
From: Gaelle Tanguy <gaelle.tanguy@meteo.fr>
Date: Thu, 26 Nov 2015 14:57:33 +0000
Subject: [PATCH] C.LAC(11/2015) : adaptation of budgets to FIT temporal scheme

---
 src/MNH/endstep_budget.f90 |   7 +--
 src/MNH/modeln.f90         |  27 +++++-----
 src/MNH/write_budget.f90   | 107 +++++++++++++++++++------------------
 3 files changed, 72 insertions(+), 69 deletions(-)

diff --git a/src/MNH/endstep_budget.f90 b/src/MNH/endstep_budget.f90
index e87c3b2a3..4ad7716a0 100644
--- a/src/MNH/endstep_budget.f90
+++ b/src/MNH/endstep_budget.f90
@@ -99,6 +99,7 @@ END MODULE MODI_ENDSTEP_BUDGET
 !!      V. Ducrocq  07/06/99  //
 !!      N. Asensio  22/06/99  // MASK case : delete KIU,KJU,KKU arguments
 !!                            and change the write_budget call
+!!      C.Lac       11/09/15 adaptation to FIT temporal scheme
 !!
 !-------------------------------------------------------------------------------
 !
@@ -136,7 +137,7 @@ SELECT CASE(CBUTYPE)
 !
 !*	 1.1    storage of the budget fields 
 !
-    IF( MODULO(KTCOUNT+1,NBUSTEP*NBUWRNB) == 0 ) THEN  
+    IF( MODULO(KTCOUNT,NBUSTEP*NBUWRNB) == 0 ) THEN  
       CALL WRITE_BUDGET(HFMDIAC,HLUOUT,TPDTCUR,TPDTMOD,PTSTEP, KSV )
 !
 !*	 1.2    resetting the budget arrays to 0.
@@ -169,7 +170,7 @@ SELECT CASE(CBUTYPE)
 !               -----------
 !  
   CASE('MASK')
-    IF( MODULO(KTCOUNT+1,NBUSTEP*NBUWRNB) == 0 ) THEN  
+    IF( MODULO(KTCOUNT,NBUSTEP*NBUWRNB) == 0 ) THEN  
 !
 !*	 2.1    storage of the budget fields
 ! 
@@ -202,7 +203,7 @@ SELECT CASE(CBUTYPE)
 !*	 2.3    update of the budget temporal increment and reset the budget
 !               initialization
 !
-    IF( MODULO(KTCOUNT+1,NBUSTEP) == 0 ) THEN  
+    IF( MODULO(KTCOUNT,NBUSTEP) == 0 ) THEN  
       NBUTIME=NBUTIME+1
       LBU_BEG=.TRUE.
     END IF
diff --git a/src/MNH/modeln.f90 b/src/MNH/modeln.f90
index 59261da34..853e39c4c 100644
--- a/src/MNH/modeln.f90
+++ b/src/MNH/modeln.f90
@@ -231,6 +231,7 @@ END MODULE MODI_MODEL_n
 !!      J.Escobar 20/04/2015: missing UPDATE_HALO before UPDATE_HALO2
 !!              July, 2015 (O.Nuissier/F.Duffourg) Add microphysics diagnostic for
 !!                                      aircraft, ballon and profiler
+!!       C.Lac    11/09/2015: correction of the budget due to FIT temporal scheme
 !!      J.Escobar : 15/09/2015 : WENO5 & JPHEXT <> 1
 !!-------------------------------------------------------------------------------
 !
@@ -958,34 +959,34 @@ XT_STORE = XT_STORE + ZTIME2 - ZTIME1
 !              --------------------------------------
 !
 IF (NBUMOD==IMI) THEN
-  LBU_ENABLE = CBUTYPE /='NONE'.AND. CBUTYPE /='SKIP' .AND. MODULO(KTCOUNT,2)==1
+  LBU_ENABLE = CBUTYPE /='NONE'.AND. CBUTYPE /='SKIP' 
 ELSE
   LBU_ENABLE = .FALSE.
 END IF
 !
-IF (NBUMOD==IMI .AND. CBUTYPE=='MASK' .AND. MODULO(KTCOUNT,2)==1) THEN
+IF (NBUMOD==IMI .AND. CBUTYPE=='MASK' ) THEN
   CALL SET_MASK
   IF (LBU_RU)   XBURHODJU(:,NBUTIME,:) = XBURHODJU(:,NBUTIME,:)    &
-                            + 2.*MASK_COMPRESS(MXM(XRHODJ))
+                            + MASK_COMPRESS(MXM(XRHODJ))
   IF (LBU_RV)   XBURHODJV(:,NBUTIME,:) = XBURHODJV(:,NBUTIME,:)    &
-                            + 2.*MASK_COMPRESS(MYM(XRHODJ))
+                            + MASK_COMPRESS(MYM(XRHODJ))
   IF (LBU_RW)   XBURHODJW(:,NBUTIME,:) = XBURHODJW(:,NBUTIME,:)    &
-                            + 2.*MASK_COMPRESS(MZM(1,IKU,1,XRHODJ))
+                            + MASK_COMPRESS(MZM(1,IKU,1,XRHODJ))
   IF (ALLOCATED(XBURHODJ))                                         &
                 XBURHODJ (:,NBUTIME,:) = XBURHODJ (:,NBUTIME,:)    &
-                              + 2.*MASK_COMPRESS(XRHODJ)
+                              + MASK_COMPRESS(XRHODJ)
 END IF
 !
-IF (NBUMOD==IMI .AND. CBUTYPE=='CART' .AND. MODULO(KTCOUNT,2)==1) THEN
+IF (NBUMOD==IMI .AND. CBUTYPE=='CART' ) THEN
   IF (LBU_RU)   XBURHODJU(:,:,:) = XBURHODJU(:,:,:)    &
-                + 2.*CART_COMPRESS(MXM(XRHODJ))
+                + CART_COMPRESS(MXM(XRHODJ))
   IF (LBU_RV)   XBURHODJV(:,:,:) = XBURHODJV(:,:,:)    &
-                + 2.*CART_COMPRESS(MYM(XRHODJ))
+                + CART_COMPRESS(MYM(XRHODJ))
   IF (LBU_RW)   XBURHODJW(:,:,:) = XBURHODJW(:,:,:)    &
-                + 2.*CART_COMPRESS(MZM(1,IKU,1,XRHODJ))
+                + CART_COMPRESS(MZM(1,IKU,1,XRHODJ))
   IF (ALLOCATED(XBURHODJ))                             &
                 XBURHODJ (:,:,:) = XBURHODJ (:,:,:)    &
-                + 2.*CART_COMPRESS(XRHODJ)
+                + CART_COMPRESS(XRHODJ)
 END IF
 !
 CALL BUDGET_FLAGS(LUSERV, LUSERC, LUSERR,         &
@@ -1779,7 +1780,7 @@ IF (CELEC /= 'NONE' .AND. (CCLOUD(1:3) == 'ICE')) THEN
     ZTOWN(:,:)= 0.
     CALL MNHGET_SURF_PARAM_n (PSEA=ZSEA(:,:),PTOWN=ZTOWN(:,:))
     CALL RESOLVED_ELEC_n (CCLOUD, CSCONV, CMF_CLOUD,                     &
-                          NRR, NSPLITR, IMI, KTCOUNT,                    &
+                          NRR, NSPLITR, IMI, KTCOUNT, OEXIT,             &
                           CLBCX, CLBCY, YFMFILE, CLUOUT, CRAD, CTURBDIM, &
                           GCLOSE_OUT, LSUBG_COND, LSIGMAS,VSIGQSAT,CSUBG_AUCV,   &
                           XTSTEP, XZZ, XRHODJ, XRHODREF, XEXNREF,        &
@@ -1793,7 +1794,7 @@ IF (CELEC /= 'NONE' .AND. (CCLOUD(1:3) == 'ICE')) THEN
     DEALLOCATE(ZTOWN)
   ELSE
     CALL RESOLVED_ELEC_n (CCLOUD, CSCONV, CMF_CLOUD,                     &
-                          NRR, NSPLITR, IMI, KTCOUNT,                    &
+                          NRR, NSPLITR, IMI, KTCOUNT, OEXIT,             &
                           CLBCX, CLBCY, YFMFILE, CLUOUT, CRAD, CTURBDIM, &
                           GCLOSE_OUT, LSUBG_COND, LSIGMAS,VSIGQSAT, CSUBG_AUCV,   &
                           XTSTEP, XZZ, XRHODJ, XRHODREF, XEXNREF,        &
diff --git a/src/MNH/write_budget.f90 b/src/MNH/write_budget.f90
index 529ef941b..a50b48fd9 100644
--- a/src/MNH/write_budget.f90
+++ b/src/MNH/write_budget.f90
@@ -128,6 +128,7 @@ END MODULE MODI_WRITE_BUDGET
 !!      October 2009 (G. Tanguy) add ILENCH=LEN(YCOMMENT) after
 !!                                              change of YCOMMENT
 !!      24/03/2014  (J.Escobar ) miss placed deallocate in RSV budget
+!!      11/09/2015  (C.Lac)    Correction due to FIT temporal scheme
 !!                             
 !!
 !-------------------------------------------------------------------------------
@@ -260,8 +261,8 @@ SELECT CASE (CBUTYPE)
 ! unit conversion for  RU budgets 
       ALLOCATE(ZCONVERT(NBUPROCNBR(IP)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(IP)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(IP)) = 1.
 ! 
       IF (GNOCOMPRESS) THEN
         ALLOCATE(ZWORKT(NBUIMAX,NBUJMAX,NBUKMAX,1,1,NBUPROCNBR(IP))) ! local budget of RU
@@ -333,8 +334,8 @@ SELECT CASE (CBUTYPE)
       IP=2
       ALLOCATE(ZCONVERT(NBUPROCNBR(IP)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(IP)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(IP)) = 1.
 ! 
       IF (GNOCOMPRESS) THEN
         ALLOCATE(ZWORKT(NBUIMAX,NBUJMAX,NBUKMAX,1,1,NBUPROCNBR(IP))) ! local budget of RV
@@ -405,8 +406,8 @@ SELECT CASE (CBUTYPE)
       IP=3
       ALLOCATE(ZCONVERT(NBUPROCNBR(IP)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(IP)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(IP)) = 1.
 ! 
       IF (GNOCOMPRESS) THEN
         ALLOCATE(ZWORKT(NBUIMAX,NBUJMAX,NBUKMAX,1,1,NBUPROCNBR(IP))) ! local budget of RW
@@ -512,8 +513,8 @@ SELECT CASE (CBUTYPE)
       IP=4
       ALLOCATE(ZCONVERT(NBUPROCNBR(IP)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(IP)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(IP)) = 1.
 ! 
       IF (GNOCOMPRESS) THEN
         ALLOCATE(ZWORKT(NBUIMAX,NBUJMAX,NBUKMAX,1,1,NBUPROCNBR(IP))) ! local budget of RTH
@@ -558,8 +559,8 @@ SELECT CASE (CBUTYPE)
       IP=5
       ALLOCATE(ZCONVERT(NBUPROCNBR(IP)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(IP)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(IP)) = 1.
 ! 
       IF (GNOCOMPRESS) THEN
         ALLOCATE(ZWORKT(NBUIMAX,NBUJMAX,NBUKMAX,1,1,NBUPROCNBR(IP))) ! local budget of RTKE
@@ -604,8 +605,8 @@ SELECT CASE (CBUTYPE)
       IP=6
       ALLOCATE(ZCONVERT(NBUPROCNBR(IP)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(IP)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(IP)) = 1.
 ! 
       IF (GNOCOMPRESS) THEN
         ALLOCATE(ZWORKT(NBUIMAX,NBUJMAX,NBUKMAX,1,1,NBUPROCNBR(IP))) ! local budget of RTKE
@@ -650,8 +651,8 @@ SELECT CASE (CBUTYPE)
       IP=7
       ALLOCATE(ZCONVERT(NBUPROCNBR(IP)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(IP)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(IP)) = 1.
 ! 
       IF (GNOCOMPRESS) THEN
         ALLOCATE(ZWORKT(NBUIMAX,NBUJMAX,NBUKMAX,1,1,NBUPROCNBR(IP))) ! local budget of RRC
@@ -695,8 +696,8 @@ SELECT CASE (CBUTYPE)
       IP=8
       ALLOCATE(ZCONVERT(NBUPROCNBR(IP)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(IP)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(IP)) = 1.
 ! 
       IF (GNOCOMPRESS) THEN
         ALLOCATE(ZWORKT(NBUIMAX,NBUJMAX,NBUKMAX,1,1,NBUPROCNBR(IP))) ! local budget of RRR
@@ -740,8 +741,8 @@ SELECT CASE (CBUTYPE)
       IP=9
       ALLOCATE(ZCONVERT(NBUPROCNBR(IP)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(IP)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(IP)) = 1.
 ! 
       IF (GNOCOMPRESS) THEN
         ALLOCATE(ZWORKT(NBUIMAX,NBUJMAX,NBUKMAX,1,1,NBUPROCNBR(IP))) ! local budget of RRI
@@ -785,8 +786,8 @@ SELECT CASE (CBUTYPE)
       IP=10
       ALLOCATE(ZCONVERT(NBUPROCNBR(IP)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(IP)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(IP)) = 1.
 ! 
       IF (GNOCOMPRESS) THEN
         ALLOCATE(ZWORKT(NBUIMAX,NBUJMAX,NBUKMAX,1,1,NBUPROCNBR(IP))) ! local budget of RRS
@@ -830,8 +831,8 @@ SELECT CASE (CBUTYPE)
       IP=11
       ALLOCATE(ZCONVERT(NBUPROCNBR(IP)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(IP)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(IP)) = 1.
 ! 
       IF (GNOCOMPRESS) THEN
         ALLOCATE(ZWORKT(NBUIMAX,NBUJMAX,NBUKMAX,1,1,NBUPROCNBR(IP))) ! local budget of RRG
@@ -875,8 +876,8 @@ SELECT CASE (CBUTYPE)
       IP=12
       ALLOCATE(ZCONVERT(NBUPROCNBR(IP)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(IP)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(IP)) = 1.
 ! 
       IF (GNOCOMPRESS) THEN
         ALLOCATE(ZWORKT(NBUIMAX,NBUJMAX,NBUKMAX,1,1,NBUPROCNBR(IP))) ! local budget of RRH
@@ -921,8 +922,8 @@ SELECT CASE (CBUTYPE)
         IP=12+JSV
         ALLOCATE(ZCONVERT(NBUPROCNBR(IP)))
         ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-        ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-        ZCONVERT(4:NBUPROCNBR(IP)) = 2.
+        ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+        ZCONVERT(4:NBUPROCNBR(IP)) = 1.
 ! 
         IF (GNOCOMPRESS) THEN
           ALLOCATE(ZWORKT(NBUIMAX,NBUJMAX,NBUKMAX,1,1,NBUPROCNBR(IP))) ! local budget of RRH
@@ -1064,13 +1065,13 @@ SELECT CASE (CBUTYPE)
 !
       ALLOCATE(ZCONVERT(NBUPROCNBR(1)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(1)) = 2.
+      ZCONVERT(3)       =  PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(1)) = 1.
       DO JPROC=1,NBUPROCNBR(1)
         ZWORKT(1,1,:,:,:,JPROC) = END_MASK_COMPRESS( XBURU(:,:,:,JPROC)) &
                                * ZCONVERT(JPROC) / ZWORK(1,1,:,:,:,1)
       END DO
-      DEALLOCATE(ZCONVERT, ZWORK) 
+      DEALLOCATE(ZCONVERT, ZWORK)
       
 !
       YWORKUNIT(:)       = 'M/S**2'; YWORKUNIT(1:3) = 'M/S'
@@ -1121,8 +1122,8 @@ SELECT CASE (CBUTYPE)
 !
       ALLOCATE(ZCONVERT(NBUPROCNBR(2)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(2)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(2)) = 1.
       DO JPROC=1,NBUPROCNBR(2)
         ZWORKT(1,1,:,:,:,JPROC) = END_MASK_COMPRESS( XBURV  (:,:,:,JPROC)) &
                          * ZCONVERT(JPROC) / ZWORK(1,1,:,:,:,1) 
@@ -1177,8 +1178,8 @@ SELECT CASE (CBUTYPE)
 !
       ALLOCATE(ZCONVERT(NBUPROCNBR(3)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(3)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(3)) = 1.
       DO JPROC=1,NBUPROCNBR(3)
         ZWORKT(1,1,:,:,:,JPROC) = END_MASK_COMPRESS( XBURW (:,:,:,JPROC)) &
                          * ZCONVERT(JPROC) / ZWORK(1,1,:,:,:,1)
@@ -1235,8 +1236,8 @@ SELECT CASE (CBUTYPE)
 !
       ALLOCATE(ZCONVERT(NBUPROCNBR(4)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(4)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(4)) = 1.
       DO JPROC=1,NBUPROCNBR(4)
         ZWORKT(1,1,:,:,:,JPROC) = END_MASK_COMPRESS( XBURTH  (:,:,:,JPROC)) &
                          * ZCONVERT(JPROC) / ZWORK(1,1,:,:,:,1)
@@ -1266,8 +1267,8 @@ SELECT CASE (CBUTYPE)
 !
       ALLOCATE(ZCONVERT(NBUPROCNBR(5)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(5)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(5)) = 1.
       DO JPROC=1,NBUPROCNBR(5)
         ZWORKT(1,1,:,:,:,JPROC) = END_MASK_COMPRESS( XBURTKE (:,:,:,JPROC)) &
                          * ZCONVERT(JPROC) / ZWORK(1,1,:,:,:,1)
@@ -1297,8 +1298,8 @@ SELECT CASE (CBUTYPE)
 !
       ALLOCATE(ZCONVERT(NBUPROCNBR(6)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(6)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(6)) = 1.
       DO JPROC=1,NBUPROCNBR(6)
         ZWORKT(1,1,:,:,:,JPROC) = END_MASK_COMPRESS( XBURRV  (:,:,:,JPROC)) &
                          * ZCONVERT(JPROC) / ZWORK(1,1,:,:,:,1)
@@ -1328,8 +1329,8 @@ SELECT CASE (CBUTYPE)
 !
       ALLOCATE(ZCONVERT(NBUPROCNBR(7)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(7)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(7)) = 1.
       DO JPROC=1,NBUPROCNBR(7)
         ZWORKT(1,1,:,:,:,JPROC) = END_MASK_COMPRESS( XBURRC  (:,:,:,JPROC)) &
                          * ZCONVERT(JPROC) / ZWORK(1,1,:,:,:,1)
@@ -1359,8 +1360,8 @@ SELECT CASE (CBUTYPE)
 !
       ALLOCATE(ZCONVERT(NBUPROCNBR(8)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(8)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(8)) = 1.
       DO JPROC=1,NBUPROCNBR(8)
         ZWORKT(1,1,:,:,:,JPROC) = END_MASK_COMPRESS( XBURRR  (:,:,:,JPROC)) &
                          * ZCONVERT(JPROC) / ZWORK(1,1,:,:,:,1)
@@ -1390,8 +1391,8 @@ SELECT CASE (CBUTYPE)
 !
       ALLOCATE(ZCONVERT(NBUPROCNBR(9)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(9)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(9)) = 1.
       DO JPROC=1,NBUPROCNBR(9)
         ZWORKT(1,1,:,:,:,JPROC) = END_MASK_COMPRESS( XBURRI  (:,:,:,JPROC)) &
                          * ZCONVERT(JPROC) / ZWORK(1,1,:,:,:,1)
@@ -1421,8 +1422,8 @@ SELECT CASE (CBUTYPE)
 !
       ALLOCATE(ZCONVERT(NBUPROCNBR(10)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(10)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(10)) = 1.
       DO JPROC=1,NBUPROCNBR(10)
         ZWORKT(1,1,:,:,:,JPROC) = END_MASK_COMPRESS( XBURRS  (:,:,:,JPROC)) &
                          * ZCONVERT(JPROC) / ZWORK(1,1,:,:,:,1)
@@ -1452,8 +1453,8 @@ SELECT CASE (CBUTYPE)
 !
       ALLOCATE(ZCONVERT(NBUPROCNBR(11)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(11)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(11)) = 1.
       DO JPROC=1,NBUPROCNBR(11)
         ZWORKT(1,1,:,:,:,JPROC) = END_MASK_COMPRESS( XBURRG  (:,:,:,JPROC)) &
                          * ZCONVERT(JPROC) / ZWORK(1,1,:,:,:,1)
@@ -1483,8 +1484,8 @@ SELECT CASE (CBUTYPE)
 !
       ALLOCATE(ZCONVERT(NBUPROCNBR(12)))
       ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-      ZCONVERT(4:NBUPROCNBR(12)) = 2.
+      ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+      ZCONVERT(4:NBUPROCNBR(12)) = 1.
       DO JPROC=1,NBUPROCNBR(12)
         ZWORKT(1,1,:,:,:,JPROC) = END_MASK_COMPRESS( XBURRH (:,:,:,JPROC)) &
                          * ZCONVERT(JPROC) / ZWORK(1,1,:,:,:,1)
@@ -1515,8 +1516,8 @@ SELECT CASE (CBUTYPE)
 !
         ALLOCATE(ZCONVERT(NBUPROCNBR(12+JSV)))
         ZCONVERT(1:2)     = PTSTEP * REAL(NBUSTEP)
-        ZCONVERT(3)       = 2. * PTSTEP * REAL(NBUSTEP)
-        ZCONVERT(4:NBUPROCNBR(12+JSV)) = 2.
+        ZCONVERT(3)       = PTSTEP * REAL(NBUSTEP)
+        ZCONVERT(4:NBUPROCNBR(12+JSV)) = 1.
         DO JPROC=1,NBUPROCNBR(12+JSV)
           ZWORKT(1,1,:,:,:,JPROC) = END_MASK_COMPRESS( XBURSV  (:,:,:,JPROC,JSV)) &
                            * ZCONVERT(JPROC) / ZWORK(1,1,:,:,:,1)
-- 
GitLab