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

Philippe 05/04/2018: IO: add NMODEL field to TFILEDATA type

needed to manage correctly domain number when writing dimension variables
parent d7224401
Branches
Tags
No related merge requests found
...@@ -85,6 +85,8 @@ TYPE TFILEDATA ...@@ -85,6 +85,8 @@ TYPE TFILEDATA
!the 2 sub-files are abcd.Z001 and abcd.Z002 !the 2 sub-files are abcd.Z001 and abcd.Z002
TYPE(TFILE_ELT),DIMENSION(:),ALLOCATABLE :: TFILES_IOZ !Corresponding Z-splitted files TYPE(TFILE_ELT),DIMENSION(:),ALLOCATABLE :: TFILES_IOZ !Corresponding Z-splitted files
! !
INTEGER :: NMODEL = 0 !Model number corresponding to the file (field not always set)
!
! Fields for LFI files ! Fields for LFI files
INTEGER(KIND=LFI_INT) :: NLFININAR = 0 !Number of articles of the LFI file (only accurate if file opened in read mode) INTEGER(KIND=LFI_INT) :: NLFININAR = 0 !Number of articles of the LFI file (only accurate if file opened in read mode)
INTEGER(KIND=LFI_INT) :: NLFINPRAR = 0 !Number of predicted articles of the LFI file (non crucial) INTEGER(KIND=LFI_INT) :: NLFINPRAR = 0 !Number of predicted articles of the LFI file (non crucial)
......
...@@ -573,8 +573,9 @@ END SUBROUTINE POPULATE_STRUCT ...@@ -573,8 +573,9 @@ END SUBROUTINE POPULATE_STRUCT
! !
END SUBROUTINE IO_PREPARE_BAKOUT_STRUCT END SUBROUTINE IO_PREPARE_BAKOUT_STRUCT
! !
SUBROUTINE IO_FILE_ADD2LIST(TPFILE,HNAME,HTYPE,HMODE, & SUBROUTINE IO_FILE_ADD2LIST(TPFILE,HNAME,HTYPE,HMODE, &
HFORM,HACCESS,HFORMAT,KLFINPRAR,KLFITYPE,KLFIVERB,KRECL,TPDADFILE,TPDATAFILE,OOLD) HFORM,HACCESS,HFORMAT,KLFINPRAR,KLFITYPE,KLFIVERB,KRECL, &
KMODEL,TPDADFILE,TPDATAFILE,OOLD)
! !
USE MODD_BAKOUT, ONLY: LOUT_COMPRESS,LOUT_REDUCE_FLOAT_PRECISION,NOUT_COMPRESS_LEVEL USE MODD_BAKOUT, ONLY: LOUT_COMPRESS,LOUT_REDUCE_FLOAT_PRECISION,NOUT_COMPRESS_LEVEL
USE MODD_CONF, ONLY: CPROGRAM USE MODD_CONF, ONLY: CPROGRAM
...@@ -592,6 +593,7 @@ INTEGER(KIND=LFI_INT), OPTIONAL,INTENT(IN) :: KLFINPRAR !Number of predicted ...@@ -592,6 +593,7 @@ INTEGER(KIND=LFI_INT), OPTIONAL,INTENT(IN) :: KLFINPRAR !Number of predicted
INTEGER, OPTIONAL,INTENT(IN) :: KLFITYPE !Type of the file (used to generate list of files to transfers) INTEGER, OPTIONAL,INTENT(IN) :: KLFITYPE !Type of the file (used to generate list of files to transfers)
INTEGER, OPTIONAL,INTENT(IN) :: KLFIVERB !LFI verbosity level INTEGER, OPTIONAL,INTENT(IN) :: KLFIVERB !LFI verbosity level
INTEGER, OPTIONAL,INTENT(IN) :: KRECL !Record length INTEGER, OPTIONAL,INTENT(IN) :: KRECL !Record length
INTEGER, OPTIONAL,INTENT(IN) :: KMODEL !Model number
TYPE(TFILEDATA),POINTER,OPTIONAL,INTENT(IN) :: TPDADFILE !Corresponding dad file TYPE(TFILEDATA),POINTER,OPTIONAL,INTENT(IN) :: TPDADFILE !Corresponding dad file
TYPE(TFILEDATA),POINTER,OPTIONAL,INTENT(IN) :: TPDATAFILE!Corresponding data file (used only for DES files) TYPE(TFILEDATA),POINTER,OPTIONAL,INTENT(IN) :: TPDATAFILE!Corresponding data file (used only for DES files)
LOGICAL, OPTIONAL,INTENT(IN) :: OOLD !FALSE if new file (should not be found) LOGICAL, OPTIONAL,INTENT(IN) :: OOLD !FALSE if new file (should not be found)
...@@ -836,6 +838,8 @@ SELECT CASE(TPFILE%CTYPE) ...@@ -836,6 +838,8 @@ SELECT CASE(TPFILE%CTYPE)
END IF END IF
END SELECT END SELECT
! !
IF(PRESENT(KMODEL)) TPFILE%NMODEL = KMODEL
!
TPFILE%LOPENED = .FALSE. TPFILE%LOPENED = .FALSE.
TPFILE%NOPEN = 0 TPFILE%NOPEN = 0
TPFILE%NCLOSE = 0 TPFILE%NCLOSE = 0
......
...@@ -310,11 +310,11 @@ DO JPGD=1,NMODEL ...@@ -310,11 +310,11 @@ DO JPGD=1,NMODEL
IF (NDAD(JPGD)>=1) THEN IF (NDAD(JPGD)>=1) THEN
TZDADFILE => TPFILENESTPGD(NDAD(JPGD))%TZFILE TZDADFILE => TPFILENESTPGD(NDAD(JPGD))%TZFILE
CALL IO_FILE_ADD2LIST(TPFILENESTPGD(JPGD)%TZFILE,TRIM(YPGD(JPGD))//'.nest'//ADJUSTL(YNEST),'PREPNESTPGD', & CALL IO_FILE_ADD2LIST(TPFILENESTPGD(JPGD)%TZFILE,TRIM(YPGD(JPGD))//'.nest'//ADJUSTL(YNEST),'PREPNESTPGD', &
'WRITE',KLFITYPE=1,KLFIVERB=NVERB,TPDADFILE=TZDADFILE) 'WRITE',KLFITYPE=1,KLFIVERB=NVERB,KMODEL=JPGD,TPDADFILE=TZDADFILE)
ELSE ELSE
NULLIFY(TZDADFILE) NULLIFY(TZDADFILE)
CALL IO_FILE_ADD2LIST(TPFILENESTPGD(JPGD)%TZFILE,TRIM(YPGD(JPGD))//'.nest'//ADJUSTL(YNEST),'PREPNESTPGD', & CALL IO_FILE_ADD2LIST(TPFILENESTPGD(JPGD)%TZFILE,TRIM(YPGD(JPGD))//'.nest'//ADJUSTL(YNEST),'PREPNESTPGD', &
'WRITE',KLFITYPE=1,KLFIVERB=NVERB) 'WRITE',KLFITYPE=1,KLFIVERB=NVERB,KMODEL=JPGD)
END IF END IF
END DO END DO
! !
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment