From fb7b79909d6974c6797aec1f3fac0ec58e1e171a Mon Sep 17 00:00:00 2001
From: Philippe WAUTELET <philippe.wautelet@aero.obs-mip.fr>
Date: Fri, 12 Apr 2019 14:35:10 +0200
Subject: [PATCH] Philippe 12/04/2019: use MNHTIME for time measurement
 variables

---
 src/LIB/SURCOUCHE/src/mode_io_field_read.f90  | 15 ++++-----
 src/LIB/SURCOUCHE/src/mode_io_field_write.f90 | 31 ++++++++++---------
 2 files changed, 24 insertions(+), 22 deletions(-)

diff --git a/src/LIB/SURCOUCHE/src/mode_io_field_read.f90 b/src/LIB/SURCOUCHE/src/mode_io_field_read.f90
index 879ac1ab6..5f97e45f6 100644
--- a/src/LIB/SURCOUCHE/src/mode_io_field_read.f90
+++ b/src/LIB/SURCOUCHE/src/mode_io_field_read.f90
@@ -12,13 +12,14 @@
 !  P. Wautelet 29/01/2019: small bug correction in time measurement in IO_Field_read_byfield_X2
 !  P. Wautelet 05/03/2019: rename IO subroutines and modules
 !  P. Wautelet 10/04/2019: replace ABORT and STOP calls by Print_msg
+!  P. Wautelet 12/04/2019: use MNHTIME for time measurement variables
 !-----------------------------------------------------------------
 
 MODULE MODE_IO_FIELD_READ
 !
 USE MODD_IO, ONLY : NVERB_FATAL,NVERB_ERROR,NVERB_WARNING,NVERB_INFO,NVERB_DEBUG,TFILEDATA
 USE MODD_MPIF
-use modd_precision, only: MNHREAL_MPI
+use modd_precision, only: MNHREAL_MPI, MNHTIME
 !
 USE MODE_FIELD
 USE MODE_IO_READ_LFI
@@ -347,8 +348,8 @@ REAL,DIMENSION(:,:),POINTER  :: ZFIELDP
 LOGICAL                      :: GALLOC
 INTEGER                      :: IRESP
 INTEGER                      :: IHEXTOT
-REAL(KIND=8),DIMENSION(2)    :: T0,T1,T2
-REAL(KIND=8),DIMENSION(2)    :: T11,T22
+REAL(kind=MNHTIME), DIMENSION(2) :: T0, T1, T2
+REAL(kind=MNHTIME), DIMENSION(2) :: T11, T22
 #ifdef MNH_GA
 REAL,DIMENSION(:,:),POINTER    :: ZFIELD_GA
 #endif
@@ -522,8 +523,8 @@ LOGICAL                               :: GALLOC, GALLOC_ll
 REAL,DIMENSION(:,:),POINTER           :: TX2DP
 REAL,DIMENSION(:,:),POINTER           :: ZSLICE_ll,ZSLICE
 REAL,DIMENSION(:,:,:),POINTER         :: ZFIELDP
-REAL(KIND=8),DIMENSION(2)             :: T0,T1,T2
-REAL(KIND=8),DIMENSION(2)             :: T11,T22
+REAL(kind=MNHTIME), DIMENSION(2)      :: T0, T1, T2
+REAL(kind=MNHTIME), DIMENSION(2)      :: T11, T22
 CHARACTER(LEN=2)                      :: YDIR
 CHARACTER(LEN=4)                      :: YK
 CHARACTER(LEN=NMNHNAMELGTMAX+4)       :: YRECZSLICE
@@ -1846,8 +1847,8 @@ INTEGER, ALLOCATABLE,DIMENSION(:,:)      :: STATUSES
 INTEGER,ALLOCATABLE,DIMENSION(:)         :: REQ_TAB
 REAL,DIMENSION(:,:,:),ALLOCATABLE,TARGET :: Z3D
 REAL,DIMENSION(:,:,:), POINTER           :: TX3DP
-REAL(KIND=8),DIMENSION(2)                :: T0,T1,T2,T3
-REAL(KIND=8),DIMENSION(2)                :: T11,T22
+REAL(kind=MNHTIME), DIMENSION(2)         :: T0, T1, T2, T3
+REAL(kind=MNHTIME), DIMENSION(2)         :: T11, T22
 TYPE(TX_3DP),ALLOCATABLE,DIMENSION(:)    :: T_TX3DP
 !
 CALL PRINT_MSG(NVERB_DEBUG,'IO','IO_Field_read_byfield_lb','reading '//TRIM(TPFIELD%CMNHNAME))
diff --git a/src/LIB/SURCOUCHE/src/mode_io_field_write.f90 b/src/LIB/SURCOUCHE/src/mode_io_field_write.f90
index c865a5806..8d44c9889 100644
--- a/src/LIB/SURCOUCHE/src/mode_io_field_write.f90
+++ b/src/LIB/SURCOUCHE/src/mode_io_field_write.f90
@@ -11,6 +11,7 @@
 !  P. Wautelet 05/03/2019: rename IO subroutines and modules
 !  P. Wautelet 10/04/2019: replace ABORT and STOP calls by Print_msg
 !  P. Wautelet 12/04/2019: added pointers for C1D, L1D, N1D, X5D and X6D structures in TFIELDDATA
+!  P. Wautelet 12/04/2019: use MNHTIME for time measurement variables
 !-----------------------------------------------------------------
 
 #define MNH_SCALARS_IN_SPLITFILES 0
@@ -19,7 +20,7 @@ MODULE MODE_IO_FIELD_WRITE
 
   USE MODD_IO,        ONLY: TFILEDATA, TOUTBAK
   USE MODD_MPIF
-  use modd_precision, only: MNHINT_MPI, MNHREAL_MPI
+  use modd_precision, only: MNHINT_MPI, MNHREAL_MPI, MNHTIME
 
   USE MODE_FIELD
   USE MODE_IO_WRITE_LFI
@@ -511,14 +512,14 @@ CONTAINS
     LOGICAL                                  :: GALLOC
     LOGICAL                                  :: GLFI, GNC4
     !
-    REAL*8,DIMENSION(2) :: T0,T1,T2
-    REAL*8,DIMENSION(2) :: T11,T22
+    REAL(kind=MNHTIME), DIMENSION(2)         :: T0, T1, T2
+    REAL(kind=MNHTIME), DIMENSION(2)         :: T11, T22
 #ifdef MNH_GA
-    REAL,DIMENSION(:,:),POINTER            :: ZFIELD_GA
+    REAL,DIMENSION(:,:),POINTER              :: ZFIELD_GA
 #endif
-    INTEGER                                :: IHEXTOT
-    CHARACTER(LEN=:),ALLOCATABLE           :: YMSG
-    CHARACTER(LEN=6)                       :: YRESP
+    INTEGER                                  :: IHEXTOT
+    CHARACTER(LEN=:),ALLOCATABLE             :: YMSG
+    CHARACTER(LEN=6)                         :: YRESP
     !
     YFILEM   = TPFILE%CNAME
     YRECFM   = TPFIELD%CMNHNAME
@@ -701,13 +702,13 @@ CONTAINS
     INTEGER,ALLOCATABLE,DIMENSION(:)         :: REQ_TAB
     INTEGER                                  :: NB_REQ
     TYPE TX_2DP
-       REAL,DIMENSION(:,:), POINTER    :: X
+       REAL, DIMENSION(:,:), POINTER :: X
     END TYPE TX_2DP
-    TYPE(TX_2DP),ALLOCATABLE,DIMENSION(:) :: T_TX2DP
-    REAL*8,DIMENSION(2) :: T0,T1,T2
-    REAL*8,DIMENSION(2) :: T11,T22
+    TYPE(TX_2DP),ALLOCATABLE,DIMENSION(:)    :: T_TX2DP
+    REAL(kind=MNHTIME), DIMENSION(2)         :: T0, T1, T2
+    REAL(kind=MNHTIME), DIMENSION(2)         :: T11, T22
 #ifdef MNH_GA
-    REAL,DIMENSION(:,:,:),POINTER          :: ZFIELD_GA
+    REAL,DIMENSION(:,:,:),POINTER            :: ZFIELD_GA
 #endif
     INTEGER                                  :: IHEXTOT
     CHARACTER(LEN=:),ALLOCATABLE             :: YMSG
@@ -1629,8 +1630,8 @@ CONTAINS
     LOGICAL                                  :: GALLOC
     LOGICAL                                  :: GLFI, GNC4
     !
-    REAL*8,DIMENSION(2) :: T0,T1,T2
-    REAL*8,DIMENSION(2) :: T11,T22
+    REAL(kind=MNHTIME), DIMENSION(2)         :: T0, T1, T2
+    REAL(kind=MNHTIME), DIMENSION(2)         :: T11, T22
     INTEGER                                  :: IHEXTOT
     CHARACTER(LEN=:),ALLOCATABLE             :: YMSG
     CHARACTER(LEN=6)                         :: YRESP
@@ -1776,7 +1777,7 @@ CONTAINS
     LOGICAL                                  :: GALLOC
     LOGICAL                                  :: GLFI, GNC4
     !
-    REAL*8,DIMENSION(2) :: T11,T22
+    REAL(kind=MNHTIME), DIMENSION(2)         :: T11, T22
     INTEGER                                  :: IHEXTOT
     CHARACTER(LEN=:),ALLOCATABLE             :: YMSG
     CHARACTER(LEN=6)                         :: YRESP
-- 
GitLab