From 6f5371576b75eb96681954282faee8486758c824 Mon Sep 17 00:00:00 2001 From: Philippe WAUTELET <philippe.wautelet@aero.obs-mip.fr> Date: Fri, 3 Mar 2017 14:58:42 +0100 Subject: [PATCH] Philippe 03/03/2017: IO: add or migrate to PRINT_MSG --- src/LIB/SURCOUCHE/src/fmwrit_ll.f90 | 51 ++++++++++++++++++++++++++--- src/LIB/SURCOUCHE/src/mode_fm.f90 | 31 ++++++++++-------- src/LIB/SURCOUCHE/src/mode_io.f90 | 13 +++++++- 3 files changed, 76 insertions(+), 19 deletions(-) diff --git a/src/LIB/SURCOUCHE/src/fmwrit_ll.f90 b/src/LIB/SURCOUCHE/src/fmwrit_ll.f90 index 4490bdcfb..d00f992d2 100644 --- a/src/LIB/SURCOUCHE/src/fmwrit_ll.f90 +++ b/src/LIB/SURCOUCHE/src/fmwrit_ll.f90 @@ -289,6 +289,8 @@ CONTAINS TYPE(FD_ll), POINTER :: TZFD_IOZ !JUANZIO ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRITX0_ll','writing '//TRIM(HRECFM)) + ! !* 1.1 THE NAME OF LFIFM ! IRESP = 0 @@ -431,8 +433,8 @@ CONTAINS IF (LIOCDF4) THEN CALL IO_FILE_FIND_BYNAME(TRIM(TPFILE%CNAME)//YK_FILE,TZFILE,IRESP) IF (IRESP/=0) THEN - PRINT *,'FATAL: IO_WRITE_FIELD_BYFIELD_X0: file ',TRIM(TRIM(TPFILE%CNAME)//YK_FILE),' not found in list' - STOP + CALL PRINT_MSG(NVERB_FATAL,'IO','IO_WRITE_FIELD_BYFIELD_X0','file '//TRIM(TRIM(TPFILE%CNAME)//YK_FILE)//& + ' not found in list') END IF CALL IO_WRITE_FIELD_NC4(TZFILE,TPFIELD,TZFD_IOZ%CDF,PFIELD,IRESP) END IF @@ -483,6 +485,8 @@ CONTAINS REAL,DIMENSION(:),POINTER :: ZFIELDP LOGICAL :: GALLOC ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRITX1_ll','writing '//TRIM(HRECFM)) + ! !* 1.1 THE NAME OF LFIFM ! IRESP = 0 @@ -689,6 +693,8 @@ CONTAINS #endif INTEGER :: IHEXTOT ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRITX2_ll','writing '//TRIM(HRECFM)) + ! !* 1.1 THE NAME OF LFIFM ! CALL SECOND_MNH2(T11) @@ -1076,6 +1082,8 @@ CONTAINS #endif INTEGER :: IHEXTOT ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRITX3_ll','writing '//TRIM(HRECFM)) + ! !* 1.1 THE NAME OF LFIFM ! CALL SECOND_MNH2(T11) @@ -1766,6 +1774,8 @@ CONTAINS LOGICAL :: GALLOC INTEGER :: IHEXTOT ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRITX4_ll','writing '//TRIM(HRECFM)) + ! !* 1.1 THE NAME OF LFIFM ! IRESP = 0 @@ -1866,6 +1876,8 @@ CONTAINS LOGICAL :: GALLOC INTEGER :: IHEXTOT ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRITX5_ll','writing '//TRIM(HRECFM)) + ! !* 1.1 THE NAME OF LFIFM ! IRESP = 0 @@ -1965,6 +1977,8 @@ CONTAINS TYPE(FMHEADER) :: TZFMH LOGICAL :: GALLOC ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRITX6_ll','writing '//TRIM(HRECFM)) + ! !* 1.1 THE NAME OF LFIFM ! IRESP = 0 @@ -2050,6 +2064,8 @@ CONTAINS CHARACTER(len=5) :: YK_FILE CHARACTER(len=128) :: YFILE_IOZ TYPE(FD_ll), POINTER :: TZFD_IOZ + ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRITN0_ll','writing '//TRIM(HRECFM)) !JUANZIO !---------------------------------------------------------------- ! @@ -2192,8 +2208,8 @@ CONTAINS IF (LIOCDF4) THEN CALL IO_FILE_FIND_BYNAME(TRIM(TPFILE%CNAME)//YK_FILE,TZFILE,IRESP) IF (IRESP/=0) THEN - PRINT *,'FATAL: IO_WRITE_FIELD_BYFIELD_N0: file ',TRIM(TRIM(TPFILE%CNAME)//YK_FILE),' not found in list' - STOP + CALL PRINT_MSG(NVERB_FATAL,'IO','IO_WRITE_FIELD_BYFIELD_N0','file '//TRIM(TRIM(TPFILE%CNAME)//YK_FILE)//& + ' not found in list') END IF CALL IO_WRITE_FIELD_NC4(TZFILE,TPFIELD,TZFD_IOZ%CDF,KFIELD,IRESP) END IF @@ -2243,6 +2259,8 @@ CONTAINS TYPE(FMHEADER) :: TZFMH INTEGER,DIMENSION(:),POINTER :: IFIELDP LOGICAL :: GALLOC + ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRITN1_ll','writing '//TRIM(HRECFM)) !---------------------------------------------------------------- ! !* 1.1 THE NAME OF LFIFM @@ -2328,6 +2346,8 @@ CONTAINS LOGICAL :: GALLOC INTEGER :: IHEXTOT ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRITN2_ll','writing '//TRIM(HRECFM)) + ! !* 1.1 THE NAME OF LFIFM ! IRESP = 0 @@ -2569,6 +2589,8 @@ CONTAINS INTEGER :: IRESP TYPE(FMHEADER) :: TZFMH + ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRITL0_ll','writing '//TRIM(HRECFM)) !---------------------------------------------------------------- ! !* 1.1 THE NAME OF LFIFM @@ -2652,6 +2674,7 @@ CONTAINS !* 0.2 Declarations of local variables ! INTEGER :: IFIELD + ! CALL PRINT_MSG(NVERB_DEBUG,'IO','IO_WRITE_FIELD_BYFIELD_L0','writing '//TRIM(TPFIELD%CMNHNAME)) ! ! @@ -2695,6 +2718,8 @@ CONTAINS INTEGER :: IRESP TYPE(FMHEADER) :: TZFMH + ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRITL1_ll','writing '//TRIM(HRECFM)) !---------------------------------------------------------------- ! !* 1.1 THE NAME OF LFIFM @@ -2771,6 +2796,8 @@ CONTAINS INTEGER :: IRESP TYPE(FMHEADER) :: TZFMH + ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRITC0_ll','writing '//TRIM(HRECFM)) !---------------------------------------------------------------- !* 1.1 THE NAME OF LFIFM ! @@ -2930,6 +2957,8 @@ CONTAINS TYPE(FD_ll), POINTER :: TZFD INTEGER :: IRESP TYPE(FMHEADER) :: TZFMH + ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRITC1_ll','writing '//TRIM(HRECFM)) !---------------------------------------------------------------- !* 1.1 THE NAME OF LFIFM ! @@ -3015,6 +3044,8 @@ CONTAINS TYPE(FMHEADER) :: TZFMH INTEGER, DIMENSION(3) :: ITDATE ! date array ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRITT0_ll','writing '//TRIM(HRECFM)) + ! !------------------------------------------------------------------------------- IRESP = 0 YFNLFI=TRIM(ADJUSTL(HFILEM))//'.lfi' @@ -3186,6 +3217,8 @@ CONTAINS END TYPE TX_3DP TYPE(TX_3DP),ALLOCATABLE,DIMENSION(:) :: T_TX3DP ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRIT_LB','writing '//TRIM(HRECFM)) + ! !* 1.1 THE NAME OF LFIFM ! IRESP = 0 @@ -3484,6 +3517,8 @@ CONTAINS TYPE(FMHEADER) :: TZFMH LOGICAL :: GALLOC + ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRITBOXX2_ll','writing '//TRIM(HRECFM)) ! !* 1.1 THE NAME OF LFIFM ! @@ -3576,6 +3611,8 @@ CONTAINS TYPE(FMHEADER) :: TZFMH LOGICAL :: GALLOC + ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRITBOXX3_ll','writing '//TRIM(HRECFM)) ! !* 1.1 THE NAME OF LFIFM ! @@ -3668,6 +3705,8 @@ CONTAINS TYPE(FMHEADER) :: TZFMH LOGICAL :: GALLOC + ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRITBOXX4_ll','writing '//TRIM(HRECFM)) ! !* 1.1 THE NAME OF LFIFM ! @@ -3760,6 +3799,8 @@ CONTAINS TYPE(FMHEADER) :: TZFMH LOGICAL :: GALLOC + ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRITBOXX5_ll','writing '//TRIM(HRECFM)) ! !* 1.1 THE NAME OF LFIFM ! @@ -3853,6 +3894,8 @@ CONTAINS TYPE(FMHEADER) :: TZFMH LOGICAL :: GALLOC + ! + CALL PRINT_MSG(NVERB_DEBUG,'IO','FMWRITBOXX6_ll','writing '//TRIM(HRECFM)) ! !* 1.1 THE NAME OF LFIFM ! diff --git a/src/LIB/SURCOUCHE/src/mode_fm.f90 b/src/LIB/SURCOUCHE/src/mode_fm.f90 index 67acb8ba4..f60f9fb4c 100644 --- a/src/LIB/SURCOUCHE/src/mode_fm.f90 +++ b/src/LIB/SURCOUCHE/src/mode_fm.f90 @@ -19,6 +19,8 @@ MODULE MODE_FM USE MODD_ERRCODES USE MODD_MPIF +USE MODE_MSG + IMPLICIT NONE PRIVATE @@ -146,11 +148,12 @@ CHARACTER (LEN=3) :: YNUMBER ! Character string for Z-level TYPE(FD_ll), POINTER :: TZFDLFI,TZFD_IOZ TYPE(TFILEDATA),POINTER :: TZFILE_IOZ ! +CALL PRINT_MSG(NVERB_DEBUG,'IO','IO_FILE_OPEN_ll','opening '//TRIM(TPFILE%CNAME)//' for '//TRIM(TPFILE%CMODE)) +! IF (TPFILE%LOPENED) THEN - PRINT *,'ERROR: IO_FILE_OPEN_ll: file ',TRIM(TPFILE%CNAME),' already opened' - CALL ABORT - STOP -ENDIF + CALL PRINT_MSG(NVERB_ERROR,'IO','IO_FILE_OPEN_ll','file '//TRIM(TPFILE%CNAME)//' already opened') + RETURN +END IF ! CALL FMOPEN_ll(TPFILE%CNAME,TPFILE%CMODE,HFIPRI,TPFILE%NLFINPRAR,TPFILE%NLFITYPE,TPFILE%NLFIVERB,ININAR,KRESP,TPFILE=TPFILE) ! @@ -167,10 +170,8 @@ IF (TZFDLFI%NB_PROCIO>1) THEN TZFD_IOZ => GETFD(TRIM(TPFILE%CNAME)//'.Z'//YNUMBER//'.lfi') IF (ISP == TZFD_IOZ%OWNER .AND. LIOCDF4) THEN CALL IO_FILE_FIND_BYNAME(TRIM(TPFILE%CNAME)//'.Z'//YNUMBER,TZFILE_IOZ,IRESP) - IF (IRESP/=0) THEN - PRINT *,'FATAL: IO_FILE_OPEN_ll: file ',TRIM(TRIM(TPFILE%CNAME)//'.Z'//YNUMBER),' not found in list' - STOP - END IF + IF (IRESP/=0) & + CALL PRINT_MSG(NVERB_FATAL,'IO','IO_FILE_OPEN_ll','file '//TRIM(TRIM(TPFILE%CNAME)//'.Z'//YNUMBER)//' not found in list') TZFILE_IOZ%NNCID = TZFD_IOZ%CDF%NCID TZFILE_IOZ%LOPENED = .TRUE. TZFILE_IOZ%NOPEN = TZFILE_IOZ%NOPEN + 1 @@ -230,6 +231,7 @@ INTEGER(KIND=IDCDF_KIND) :: INCERR #endif CHARACTER(LEN=13) :: YTYPE +CALL PRINT_MSG(NVERB_DEBUG,'IO','FMOPEN_ll','opening '//TRIM(HFILEM)//' for '//TRIM(HACTION)) IF ( PRESENT(TPFILE) ) THEN YTYPE = TPFILE%CTYPE ELSE @@ -417,10 +419,11 @@ CHARACTER (LEN=3) :: YNUMBER ! Character string for Z-level TYPE(FD_ll), POINTER :: TZFDLFI TYPE(TFILEDATA),POINTER :: TZFILE_IOZ ! +CALL PRINT_MSG(NVERB_DEBUG,'IO','IO_FILE_CLOSE_ll','closing '//TRIM(TPFILE%CNAME)) +! IF (.NOT.TPFILE%LOPENED) THEN - PRINT *,'ERROR: IO_FILE_CLOSE_ll: trying to close a file not opened: ',TRIM(TPFILE%CNAME) - CALL ABORT - STOP + CALL PRINT_MSG(NVERB_ERROR,'IO','IO_FILE_CLOSE_ll','trying to close a file not opened: '//TRIM(TPFILE%CNAME)) + RETURN ENDIF ! !Next lines done before the close to be sure the FD_ll still exists @@ -437,9 +440,8 @@ IF (INB_PROCIO>1) THEN DO JI = 1,TZFDLFI%NB_PROCIO WRITE (YNUMBER,FMT="(I3.3)") JI CALL IO_FILE_FIND_BYNAME(TRIM(TPFILE%CNAME)//'.Z'//YNUMBER,TZFILE_IOZ,IRESP) - IF (IRESP/=0) THEN - PRINT *,'ERROR: IO_FILE_CLOSE_ll: file ',TRIM(TRIM(TPFILE%CNAME)//'.Z'//YNUMBER),' not found in list' - END IF + IF (IRESP/=0) & + CALL PRINT_MSG(NVERB_ERROR,'IO','IO_FILE_CLOSE_ll','file '//TRIM(TRIM(TPFILE%CNAME)//'.Z'//YNUMBER)//' not found in list') IF (TZFILE_IOZ%LOPENED) THEN TZFILE_IOZ%LOPENED = .FALSE. TZFILE_IOZ%NCLOSE = TZFILE_IOZ%NCLOSE + 1 @@ -490,6 +492,7 @@ INTEGER(KIND=LFI_INT) :: IRESP8,INUM8 LOGICAL :: GPARALLELIO CHARACTER(LEN=13) :: YTYPE +CALL PRINT_MSG(NVERB_DEBUG,'IO','FMCLOS_ll','closing '//TRIM(HFILEM)) IF ( PRESENT(TPFILE) ) THEN YTYPE = TPFILE%CTYPE ELSE diff --git a/src/LIB/SURCOUCHE/src/mode_io.f90 b/src/LIB/SURCOUCHE/src/mode_io.f90 index 1675cf90a..cf1dd4237 100644 --- a/src/LIB/SURCOUCHE/src/mode_io.f90 +++ b/src/LIB/SURCOUCHE/src/mode_io.f90 @@ -32,6 +32,7 @@ MODULE MODE_IO_ll !JUANZ USE MODD_VAR_ll, ONLY : NMNH_COMM_WORLD !JUANZ + USE MODE_MSG IMPLICIT NONE @@ -290,6 +291,12 @@ CONTAINS TYPE(FD_ll), POINTER :: TZJUAN LOGICAL :: GPARALLELIO + IF ( PRESENT(FILE) ) THEN + CALL PRINT_MSG(NVERB_DEBUG,'IO','OPEN_ll','opening '//TRIM(FILE)//' for '//TRIM(ACTION)) + ELSE + CALL PRINT_MSG(NVERB_DEBUG,'IO','OPEN_ll','called for '//TRIM(ACTION)//' (filename not provided)') + ENDIF + ! IF ( PRESENT(OPARALLELIO) ) THEN GPARALLELIO = OPARALLELIO ELSE !par defaut on active les IO paralleles en Z si possible @@ -795,6 +802,8 @@ CONTAINS CHARACTER(LEN=7) :: YSTATU LOGICAL :: GPARALLELIO + CALL PRINT_MSG(NVERB_DEBUG,'IO','CLOSE_ll','closing '//TRIM(HFILE)) + IF ( PRESENT(OPARALLELIO) ) THEN GPARALLELIO = OPARALLELIO ELSE !par defaut on active les IO paralleles en Z si possible @@ -956,13 +965,15 @@ END MODULE MODE_IO_ll MODULE MODE_MSG ! +USE MODD_IO_ll, ONLY : NVERB_FATAL,NVERB_ERROR,NVERB_WARNING,NVERB_INFO,NVERB_DEBUG,& + NIO_VERB,NIO_ABORT_LEVEL,NGEN_VERB,NGEN_ABORT_LEVEL +! IMPLICIT NONE ! CONTAINS ! SUBROUTINE PRINT_MSG(KVERB,HDOMAIN,HSUBR,HMSG) ! -USE MODD_IO_ll USE MODD_VAR_ll, ONLY : NMNH_COMM_WORLD ! INTEGER, INTENT(IN) :: KVERB !Verbosity level -- GitLab