Skip to content
Snippets Groups Projects
Commit 24b93082 authored by WAUTELET Philippe's avatar WAUTELET Philippe
Browse files

Philippe 24/09/2024: IO: OUTPUT_LISTING0: remove it at the end if empty (+...

Philippe 24/09/2024: IO: OUTPUT_LISTING0: remove it at the end if empty (+ remove some unnecessary writes if MESONH)
parent bdfaa10d
No related branches found
No related tags found
No related merge requests found
......@@ -36,7 +36,11 @@ SUBROUTINE FINALIZE_MNH
IMPLICIT NONE
CHARACTER(LEN=:),ALLOCATABLE :: YPREFILENAME !To store the directory + filename
INTEGER :: ILU
INTEGER :: IRESP
INTEGER :: ISIZE
INTEGER :: ISTAT
INTEGER :: JMODEL
!Print the list of all files and some statistics on them
......@@ -46,7 +50,29 @@ SUBROUTINE FINALIZE_MNH
CALL MSG_STATS()
!Close all the opened 'output listing' files
IF ( TLUOUT0%LOPENED ) CALL IO_File_close(TLUOUT0)
IF ( ASSOCIATED( TLUOUT0) ) THEN
IF ( TLUOUT0%LOPENED ) CALL IO_File_close(TLUOUT0)
! Remove OUTPUT_LISTING0 if empty
IF ( TLUOUT0%LMASTER ) THEN
IF (ALLOCATED(TLUOUT0%CDIRNAME)) THEN
IF(LEN_TRIM(TLUOUT0%CDIRNAME)>0) THEN
YPREFILENAME = TRIM(TLUOUT0%CDIRNAME) // '/' // TRIM(TLUOUT0%CNAME)
ELSE
YPREFILENAME = TRIM(TLUOUT0%CNAME)
END IF
ELSE
YPREFILENAME = TRIM(TLUOUT0%CNAME)
END IF
!Get the size of the OUTPUT_LISTING0 file
INQUIRE( FILE=YPREFILENAME, SIZE=ISIZE )
IF ( ISIZE == 0 ) THEN
OPEN( NEWUNIT=ILU, IOSTAT=ISTAT, FILE=YPREFILENAME, STATUS='OLD' )
IF ( ISTAT == 0 ) CLOSE( ILU, STATUS='DELETE' )
END IF
END IF
END IF
DO JMODEL = 1, NMODEL
IF ( ASSOCIATED( LUNIT_MODEL(JMODEL)%TLUOUT ) ) THEN
IF ( LUNIT_MODEL(JMODEL)%TLUOUT%LOPENED ) CALL IO_File_close( LUNIT_MODEL(JMODEL)%TLUOUT)
......
......@@ -78,7 +78,7 @@
USE MODD_CONF
USE MODD_DYN, ONLY: XSEGLEN
USE MODD_DYN_n, ONLY: CPRESOPT, NITR ! only for spawning purpose
USE MODD_IO, ONLY: TFILE_OUTPUTLISTING, TPTR2FILE
USE MODD_IO, ONLY: NNULLUNIT, TFILE_OUTPUTLISTING, TPTR2FILE
USE MODD_LBC_n, ONLY: CLBCX,CLBCY ! only for spawning purpose
USE MODD_LUNIT
USE MODD_LUNIT_n
......@@ -126,21 +126,28 @@ CHARACTER(LEN=4), DIMENSION(:), POINTER :: DPTR_CLBCX,DPTR_CLBCY
!* 1.1 initialize // E/S and open output-listing file
!
!
!IF ( CPROGRAM/='REAL ' .AND. CPROGRAM/='MESONH ') THEN
IF (CPROGRAM/='REAL ') THEN
CALL IO_File_add2list(TLUOUT0,'OUTPUT_LISTING0','OUTPUTLISTING','WRITE')
CALL IO_File_open(TLUOUT0)
!Set output file for PRINT_MSG
TFILE_OUTPUTLISTING => TLUOUT0
ILUOUT0=TLUOUT0%NLU
!ELSE IF ( CPROGRAM == 'MESONH' ) THEN
! ! Do not create OUTPUT_LISTING0 file if main program MESONH
! ! If writes to ILUOUT0 => automatically discarded
! ILUOUT0 = NNULLUNIT
ELSE
ILUOUT0=TLUOUT0%NLU
END IF
!
WRITE(UNIT=ILUOUT0,FMT="(50('*'),/,'*',48X,'*',/, &
IF ( CPROGRAM /= 'MESONH' ) THEN
WRITE(UNIT=ILUOUT0,FMT="(50('*'),/,'*',48X,'*',/, &
& 7('*'),10X, ' MESO-NH MODEL ',10X,8('*'),/, &
& '*',48X,'*',/, &
& 7('*'),12X,' CNRM - LA ',12X,8('*'),/, &
& '*',48X,'*',/, 50('*'))")
END IF
!
CALL NSV_ASSOCIATE()
!
......@@ -245,7 +252,7 @@ IF ( CPROGRAM == 'MESONH' ) CALL IO_Bakout_struct_prepare( )
!* 5. WRITE MESSAGE ON OUTPUT-LISTING
! -------------------------------
!
IF (NVERB >= 5) THEN
IF ( CPROGRAM /= 'MESONH' .AND. NVERB>=5 ) THEN
WRITE(UNIT=ILUOUT0,FMT="(50('*'),/,'*',48X,'*',/, &
& '*',10X,' INITIALIZATION TERMINATED',10X,'*',/, &
& '*',48X,'*',/,50('*'))")
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment