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

Philippe 31/10/2017: IO: pass TPFILE to IO_WRITE_FIELD_LFI_xxx calls and use...

Philippe 31/10/2017: IO: pass TPFILE to IO_WRITE_FIELD_LFI_xxx calls and use it to retrieve the logical unit + correct a bug in the integer kind of the LU
parent acca5207
No related branches found
No related tags found
No related merge requests found
...@@ -724,14 +724,14 @@ END IF ...@@ -724,14 +724,14 @@ END IF
END SUBROUTINE IO_READ_CHECK_FIELD_LFI END SUBROUTINE IO_READ_CHECK_FIELD_LFI
! !
! !
SUBROUTINE IO_WRITE_FIELD_LFI_X0(TPFIELD,KFLU,PFIELD,KRESP) SUBROUTINE IO_WRITE_FIELD_LFI_X0(TPFILE,TPFIELD,PFIELD,KRESP)
! !
IMPLICIT NONE IMPLICIT NONE
! !
!* 0.1 Declarations of arguments !* 0.1 Declarations of arguments
! !
TYPE(TFILEDATA), INTENT(IN) :: TPFILE
TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD
INTEGER, INTENT(IN) :: KFLU ! Fortran Logical Unit
REAL, INTENT(IN) :: PFIELD ! array containing the data field REAL, INTENT(IN) :: PFIELD ! array containing the data field
INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised
! !
...@@ -754,7 +754,7 @@ IF (IRESP==0) THEN ...@@ -754,7 +754,7 @@ IF (IRESP==0) THEN
IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) & IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) &
CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_X0','field name was truncated to '& CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_X0','field name was truncated to '&
//YRECFM//' for '//TRIM(TPFIELD%CMNHNAME)) //YRECFM//' for '//TRIM(TPFIELD%CMNHNAME))
CALL LFIECR(IRESP,KFLU,TRIM(TPFIELD%CMNHNAME),IWORK,ITOTAL) CALL LFIECR(IRESP,TPFILE%NLFIFLU,TRIM(TPFIELD%CMNHNAME),IWORK,ITOTAL)
ENDIF ENDIF
! !
KRESP=IRESP KRESP=IRESP
...@@ -763,14 +763,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK) ...@@ -763,14 +763,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK)
! !
END SUBROUTINE IO_WRITE_FIELD_LFI_X0 END SUBROUTINE IO_WRITE_FIELD_LFI_X0
! !
SUBROUTINE IO_WRITE_FIELD_LFI_X1(TPFIELD,KFLU,PFIELD,KRESP) SUBROUTINE IO_WRITE_FIELD_LFI_X1(TPFILE,TPFIELD,PFIELD,KRESP)
! !
IMPLICIT NONE IMPLICIT NONE
! !
!* 0.1 Declarations of arguments !* 0.1 Declarations of arguments
! !
TYPE(TFILEDATA), INTENT(IN) :: TPFILE
TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD
INTEGER, INTENT(IN) :: KFLU ! Fortran Logical Unit
REAL,DIMENSION(:), INTENT(IN) :: PFIELD ! array containing the data field REAL,DIMENSION(:), INTENT(IN) :: PFIELD ! array containing the data field
INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised
! !
...@@ -793,7 +793,7 @@ IF (IRESP==0) THEN ...@@ -793,7 +793,7 @@ IF (IRESP==0) THEN
IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) & IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) &
CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_X1','field name was truncated to '& CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_X1','field name was truncated to '&
//YRECFM//' for '//TRIM(TPFIELD%CMNHNAME)) //YRECFM//' for '//TRIM(TPFIELD%CMNHNAME))
CALL LFIECR(IRESP,KFLU,YRECFM,IWORK,ITOTAL) CALL LFIECR(IRESP,TPFILE%NLFIFLU,YRECFM,IWORK,ITOTAL)
ENDIF ENDIF
! !
KRESP=IRESP KRESP=IRESP
...@@ -802,14 +802,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK) ...@@ -802,14 +802,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK)
! !
END SUBROUTINE IO_WRITE_FIELD_LFI_X1 END SUBROUTINE IO_WRITE_FIELD_LFI_X1
! !
SUBROUTINE IO_WRITE_FIELD_LFI_X2(TPFIELD,KFLU,PFIELD,KRESP,KVERTLEVEL) SUBROUTINE IO_WRITE_FIELD_LFI_X2(TPFILE,TPFIELD,PFIELD,KRESP,KVERTLEVEL)
! !
IMPLICIT NONE IMPLICIT NONE
! !
!* 0.1 Declarations of arguments !* 0.1 Declarations of arguments
! !
TYPE(TFILEDATA), INTENT(IN) :: TPFILE
TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD
INTEGER, INTENT(IN) :: KFLU ! Fortran Logical Unit
REAL,DIMENSION(:,:), INTENT(IN) :: PFIELD ! array containing the data field REAL,DIMENSION(:,:), INTENT(IN) :: PFIELD ! array containing the data field
INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised
INTEGER,OPTIONAL, INTENT(IN) :: KVERTLEVEL ! Number of the vertical level (needed for Z-level splitted files) INTEGER,OPTIONAL, INTENT(IN) :: KVERTLEVEL ! Number of the vertical level (needed for Z-level splitted files)
...@@ -841,7 +841,7 @@ IF (IRESP==0) THEN ...@@ -841,7 +841,7 @@ IF (IRESP==0) THEN
IF( LEN_TRIM(YVARNAME) > LEN(YRECFM) ) & IF( LEN_TRIM(YVARNAME) > LEN(YRECFM) ) &
CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_X2','field name was truncated to '& CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_X2','field name was truncated to '&
//YRECFM//' for '//TRIM(YVARNAME)) //YRECFM//' for '//TRIM(YVARNAME))
CALL LFIECR(IRESP,KFLU,YRECFM,IWORK,ITOTAL) CALL LFIECR(IRESP,TPFILE%NLFIFLU,YRECFM,IWORK,ITOTAL)
ENDIF ENDIF
! !
KRESP=IRESP KRESP=IRESP
...@@ -850,14 +850,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK) ...@@ -850,14 +850,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK)
! !
END SUBROUTINE IO_WRITE_FIELD_LFI_X2 END SUBROUTINE IO_WRITE_FIELD_LFI_X2
! !
SUBROUTINE IO_WRITE_FIELD_LFI_X3(TPFIELD,KFLU,PFIELD,KRESP) SUBROUTINE IO_WRITE_FIELD_LFI_X3(TPFILE,TPFIELD,PFIELD,KRESP)
! !
IMPLICIT NONE IMPLICIT NONE
! !
!* 0.1 Declarations of arguments !* 0.1 Declarations of arguments
! !
TYPE(TFILEDATA), INTENT(IN) :: TPFILE
TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD
INTEGER, INTENT(IN) :: KFLU ! Fortran Logical Unit
REAL,DIMENSION(:,:,:), INTENT(IN) :: PFIELD ! array containing the data field REAL,DIMENSION(:,:,:), INTENT(IN) :: PFIELD ! array containing the data field
INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised
! !
...@@ -880,7 +880,7 @@ IF (IRESP==0) THEN ...@@ -880,7 +880,7 @@ IF (IRESP==0) THEN
IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) & IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) &
CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_X3','field name was truncated to '& CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_X3','field name was truncated to '&
//YRECFM//' for '//TRIM(TPFIELD%CMNHNAME)) //YRECFM//' for '//TRIM(TPFIELD%CMNHNAME))
CALL LFIECR(IRESP,KFLU,YRECFM,IWORK,ITOTAL) CALL LFIECR(IRESP,TPFILE%NLFIFLU,YRECFM,IWORK,ITOTAL)
ENDIF ENDIF
! !
KRESP=IRESP KRESP=IRESP
...@@ -889,14 +889,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK) ...@@ -889,14 +889,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK)
! !
END SUBROUTINE IO_WRITE_FIELD_LFI_X3 END SUBROUTINE IO_WRITE_FIELD_LFI_X3
! !
SUBROUTINE IO_WRITE_FIELD_LFI_X4(TPFIELD,KFLU,PFIELD,KRESP) SUBROUTINE IO_WRITE_FIELD_LFI_X4(TPFILE,TPFIELD,PFIELD,KRESP)
! !
IMPLICIT NONE IMPLICIT NONE
! !
!* 0.1 Declarations of arguments !* 0.1 Declarations of arguments
! !
TYPE(TFILEDATA), INTENT(IN) :: TPFILE
TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD
INTEGER, INTENT(IN) :: KFLU ! Fortran Logical Unit
REAL,DIMENSION(:,:,:,:), INTENT(IN) :: PFIELD ! array containing the data field REAL,DIMENSION(:,:,:,:), INTENT(IN) :: PFIELD ! array containing the data field
INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised
! !
...@@ -919,7 +919,7 @@ IF (IRESP==0) THEN ...@@ -919,7 +919,7 @@ IF (IRESP==0) THEN
IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) & IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) &
CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_X4','field name was truncated to '& CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_X4','field name was truncated to '&
//YRECFM//' for '//TRIM(TPFIELD%CMNHNAME)) //YRECFM//' for '//TRIM(TPFIELD%CMNHNAME))
CALL LFIECR(IRESP,KFLU,YRECFM,IWORK,ITOTAL) CALL LFIECR(IRESP,TPFILE%NLFIFLU,YRECFM,IWORK,ITOTAL)
ENDIF ENDIF
! !
KRESP=IRESP KRESP=IRESP
...@@ -928,14 +928,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK) ...@@ -928,14 +928,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK)
! !
END SUBROUTINE IO_WRITE_FIELD_LFI_X4 END SUBROUTINE IO_WRITE_FIELD_LFI_X4
! !
SUBROUTINE IO_WRITE_FIELD_LFI_X5(TPFIELD,KFLU,PFIELD,KRESP) SUBROUTINE IO_WRITE_FIELD_LFI_X5(TPFILE,TPFIELD,PFIELD,KRESP)
! !
IMPLICIT NONE IMPLICIT NONE
! !
!* 0.1 Declarations of arguments !* 0.1 Declarations of arguments
! !
TYPE(TFILEDATA), INTENT(IN) :: TPFILE
TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD
INTEGER, INTENT(IN) :: KFLU ! Fortran Logical Unit
REAL,DIMENSION(:,:,:,:,:),INTENT(IN) :: PFIELD ! array containing the data field REAL,DIMENSION(:,:,:,:,:),INTENT(IN) :: PFIELD ! array containing the data field
INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised
! !
...@@ -958,7 +958,7 @@ IF (IRESP==0) THEN ...@@ -958,7 +958,7 @@ IF (IRESP==0) THEN
IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) & IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) &
CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_X5','field name was truncated to '& CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_X5','field name was truncated to '&
//YRECFM//' for '//TRIM(TPFIELD%CMNHNAME)) //YRECFM//' for '//TRIM(TPFIELD%CMNHNAME))
CALL LFIECR(IRESP,KFLU,YRECFM,IWORK,ITOTAL) CALL LFIECR(IRESP,TPFILE%NLFIFLU,YRECFM,IWORK,ITOTAL)
ENDIF ENDIF
! !
KRESP=IRESP KRESP=IRESP
...@@ -967,14 +967,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK) ...@@ -967,14 +967,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK)
! !
END SUBROUTINE IO_WRITE_FIELD_LFI_X5 END SUBROUTINE IO_WRITE_FIELD_LFI_X5
! !
SUBROUTINE IO_WRITE_FIELD_LFI_X6(TPFIELD,KFLU,PFIELD,KRESP) SUBROUTINE IO_WRITE_FIELD_LFI_X6(TPFILE,TPFIELD,PFIELD,KRESP)
! !
IMPLICIT NONE IMPLICIT NONE
! !
!* 0.1 Declarations of arguments !* 0.1 Declarations of arguments
! !
TYPE(TFILEDATA), INTENT(IN) :: TPFILE
TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD
INTEGER, INTENT(IN) :: KFLU ! Fortran Logical Unit
REAL,DIMENSION(:,:,:,:,:,:),INTENT(IN) :: PFIELD ! array containing the data field REAL,DIMENSION(:,:,:,:,:,:),INTENT(IN) :: PFIELD ! array containing the data field
INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised
! !
...@@ -997,7 +997,7 @@ IF (IRESP==0) THEN ...@@ -997,7 +997,7 @@ IF (IRESP==0) THEN
IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) & IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) &
CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_X6','field name was truncated to '& CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_X6','field name was truncated to '&
//YRECFM//' for '//TRIM(TPFIELD%CMNHNAME)) //YRECFM//' for '//TRIM(TPFIELD%CMNHNAME))
CALL LFIECR(IRESP,KFLU,YRECFM,IWORK,ITOTAL) CALL LFIECR(IRESP,TPFILE%NLFIFLU,YRECFM,IWORK,ITOTAL)
ENDIF ENDIF
! !
KRESP=IRESP KRESP=IRESP
...@@ -1006,14 +1006,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK) ...@@ -1006,14 +1006,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK)
! !
END SUBROUTINE IO_WRITE_FIELD_LFI_X6 END SUBROUTINE IO_WRITE_FIELD_LFI_X6
! !
SUBROUTINE IO_WRITE_FIELD_LFI_N0(TPFIELD,KFLU,KFIELD,KRESP) SUBROUTINE IO_WRITE_FIELD_LFI_N0(TPFILE,TPFIELD,KFIELD,KRESP)
! !
IMPLICIT NONE IMPLICIT NONE
! !
!* 0.1 Declarations of arguments !* 0.1 Declarations of arguments
! !
TYPE(TFILEDATA), INTENT(IN) :: TPFILE
TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD
INTEGER, INTENT(IN) :: KFLU ! Fortran Logical Unit
INTEGER, INTENT(IN) :: KFIELD ! array containing the data field INTEGER, INTENT(IN) :: KFIELD ! array containing the data field
INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised
! !
...@@ -1036,7 +1036,7 @@ IF (IRESP==0) THEN ...@@ -1036,7 +1036,7 @@ IF (IRESP==0) THEN
IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) & IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) &
CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_N0','field name was truncated to '& CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_N0','field name was truncated to '&
//YRECFM//' for '//TRIM(TPFIELD%CMNHNAME)) //YRECFM//' for '//TRIM(TPFIELD%CMNHNAME))
CALL LFIECR(IRESP,KFLU,YRECFM,IWORK,ITOTAL) CALL LFIECR(IRESP,TPFILE%NLFIFLU,YRECFM,IWORK,ITOTAL)
ENDIF ENDIF
! !
KRESP=IRESP KRESP=IRESP
...@@ -1045,14 +1045,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK) ...@@ -1045,14 +1045,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK)
! !
END SUBROUTINE IO_WRITE_FIELD_LFI_N0 END SUBROUTINE IO_WRITE_FIELD_LFI_N0
! !
SUBROUTINE IO_WRITE_FIELD_LFI_N1(TPFIELD,KFLU,KFIELD,KRESP) SUBROUTINE IO_WRITE_FIELD_LFI_N1(TPFILE,TPFIELD,KFIELD,KRESP)
! !
IMPLICIT NONE IMPLICIT NONE
! !
!* 0.1 Declarations of arguments !* 0.1 Declarations of arguments
! !
TYPE(TFILEDATA), INTENT(IN) :: TPFILE
TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD
INTEGER, INTENT(IN) :: KFLU ! Fortran Logical Unit
INTEGER,DIMENSION(:), INTENT(IN) :: KFIELD ! array containing the data field INTEGER,DIMENSION(:), INTENT(IN) :: KFIELD ! array containing the data field
INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised
! !
...@@ -1075,7 +1075,7 @@ IF (IRESP==0) THEN ...@@ -1075,7 +1075,7 @@ IF (IRESP==0) THEN
IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) & IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) &
CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_N1','field name was truncated to '& CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_N1','field name was truncated to '&
//YRECFM//' for '//TRIM(TPFIELD%CMNHNAME)) //YRECFM//' for '//TRIM(TPFIELD%CMNHNAME))
CALL LFIECR(IRESP,KFLU,YRECFM,IWORK,ITOTAL) CALL LFIECR(IRESP,TPFILE%NLFIFLU,YRECFM,IWORK,ITOTAL)
ENDIF ENDIF
! !
KRESP=IRESP KRESP=IRESP
...@@ -1084,14 +1084,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK) ...@@ -1084,14 +1084,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK)
! !
END SUBROUTINE IO_WRITE_FIELD_LFI_N1 END SUBROUTINE IO_WRITE_FIELD_LFI_N1
! !
SUBROUTINE IO_WRITE_FIELD_LFI_N2(TPFIELD,KFLU,KFIELD,KRESP) SUBROUTINE IO_WRITE_FIELD_LFI_N2(TPFILE,TPFIELD,KFIELD,KRESP)
! !
IMPLICIT NONE IMPLICIT NONE
! !
!* 0.1 Declarations of arguments !* 0.1 Declarations of arguments
! !
TYPE(TFILEDATA), INTENT(IN) :: TPFILE
TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD
INTEGER, INTENT(IN) :: KFLU ! Fortran Logical Unit
INTEGER,DIMENSION(:,:),INTENT(IN) :: KFIELD ! array containing the data field INTEGER,DIMENSION(:,:),INTENT(IN) :: KFIELD ! array containing the data field
INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised
! !
...@@ -1114,7 +1114,7 @@ IF (IRESP==0) THEN ...@@ -1114,7 +1114,7 @@ IF (IRESP==0) THEN
IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) & IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) &
CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_N2','field name was truncated to '& CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_N2','field name was truncated to '&
//YRECFM//' for '//TRIM(TPFIELD%CMNHNAME)) //YRECFM//' for '//TRIM(TPFIELD%CMNHNAME))
CALL LFIECR(IRESP,KFLU,YRECFM,IWORK,ITOTAL) CALL LFIECR(IRESP,TPFILE%NLFIFLU,YRECFM,IWORK,ITOTAL)
ENDIF ENDIF
! !
KRESP=IRESP KRESP=IRESP
...@@ -1123,14 +1123,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK) ...@@ -1123,14 +1123,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK)
! !
END SUBROUTINE IO_WRITE_FIELD_LFI_N2 END SUBROUTINE IO_WRITE_FIELD_LFI_N2
! !
SUBROUTINE IO_WRITE_FIELD_LFI_N3(TPFIELD,KFLU,KFIELD,KRESP) SUBROUTINE IO_WRITE_FIELD_LFI_N3(TPFILE,TPFIELD,KFIELD,KRESP)
! !
IMPLICIT NONE IMPLICIT NONE
! !
!* 0.1 Declarations of arguments !* 0.1 Declarations of arguments
! !
TYPE(TFILEDATA), INTENT(IN) :: TPFILE
TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD
INTEGER, INTENT(IN) :: KFLU ! Fortran Logical Unit
INTEGER,DIMENSION(:,:,:),INTENT(IN) :: KFIELD ! array containing the data field INTEGER,DIMENSION(:,:,:),INTENT(IN) :: KFIELD ! array containing the data field
INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised
! !
...@@ -1153,7 +1153,7 @@ IF (IRESP==0) THEN ...@@ -1153,7 +1153,7 @@ IF (IRESP==0) THEN
IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) & IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) &
CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_N3','field name was truncated to '& CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_N3','field name was truncated to '&
//YRECFM//' for '//TRIM(TPFIELD%CMNHNAME)) //YRECFM//' for '//TRIM(TPFIELD%CMNHNAME))
CALL LFIECR(IRESP,KFLU,YRECFM,IWORK,ITOTAL) CALL LFIECR(IRESP,TPFILE%NLFIFLU,YRECFM,IWORK,ITOTAL)
ENDIF ENDIF
! !
KRESP=IRESP KRESP=IRESP
...@@ -1162,14 +1162,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK) ...@@ -1162,14 +1162,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK)
! !
END SUBROUTINE IO_WRITE_FIELD_LFI_N3 END SUBROUTINE IO_WRITE_FIELD_LFI_N3
! !
SUBROUTINE IO_WRITE_FIELD_LFI_L0(TPFIELD,KFLU,OFIELD,KRESP) SUBROUTINE IO_WRITE_FIELD_LFI_L0(TPFILE,TPFIELD,OFIELD,KRESP)
! !
IMPLICIT NONE IMPLICIT NONE
! !
!* 0.1 Declarations of arguments !* 0.1 Declarations of arguments
! !
TYPE(TFILEDATA), INTENT(IN) :: TPFILE
TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD
INTEGER, INTENT(IN) :: KFLU ! Fortran Logical Unit
LOGICAL, INTENT(IN) :: OFIELD ! array containing the data field LOGICAL, INTENT(IN) :: OFIELD ! array containing the data field
INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised
! !
...@@ -1200,7 +1200,7 @@ IF (IRESP==0) THEN ...@@ -1200,7 +1200,7 @@ IF (IRESP==0) THEN
IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) & IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) &
CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_L0','field name was truncated to '& CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_L0','field name was truncated to '&
//YRECFM//' for '//TRIM(TPFIELD%CMNHNAME)) //YRECFM//' for '//TRIM(TPFIELD%CMNHNAME))
CALL LFIECR(IRESP,KFLU,YRECFM,IWORK,ITOTAL) CALL LFIECR(IRESP,TPFILE%NLFIFLU,YRECFM,IWORK,ITOTAL)
ENDIF ENDIF
! !
KRESP=IRESP KRESP=IRESP
...@@ -1209,14 +1209,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK) ...@@ -1209,14 +1209,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK)
! !
END SUBROUTINE IO_WRITE_FIELD_LFI_L0 END SUBROUTINE IO_WRITE_FIELD_LFI_L0
! !
SUBROUTINE IO_WRITE_FIELD_LFI_L1(TPFIELD,KFLU,OFIELD,KRESP) SUBROUTINE IO_WRITE_FIELD_LFI_L1(TPFILE,TPFIELD,OFIELD,KRESP)
! !
IMPLICIT NONE IMPLICIT NONE
! !
!* 0.1 Declarations of arguments !* 0.1 Declarations of arguments
! !
TYPE(TFILEDATA), INTENT(IN) :: TPFILE
TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD
INTEGER, INTENT(IN) :: KFLU ! Fortran Logical Unit
LOGICAL,DIMENSION(:), INTENT(IN) :: OFIELD ! array containing the data field LOGICAL,DIMENSION(:), INTENT(IN) :: OFIELD ! array containing the data field
INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised
! !
...@@ -1247,7 +1247,7 @@ IF (IRESP==0) THEN ...@@ -1247,7 +1247,7 @@ IF (IRESP==0) THEN
IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) & IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) &
CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_L1','field name was truncated to '& CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_L1','field name was truncated to '&
//YRECFM//' for '//TRIM(TPFIELD%CMNHNAME)) //YRECFM//' for '//TRIM(TPFIELD%CMNHNAME))
CALL LFIECR(IRESP,KFLU,YRECFM,IWORK,ITOTAL) CALL LFIECR(IRESP,TPFILE%NLFIFLU,YRECFM,IWORK,ITOTAL)
ENDIF ENDIF
! !
KRESP=IRESP KRESP=IRESP
...@@ -1256,14 +1256,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK) ...@@ -1256,14 +1256,14 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK)
! !
END SUBROUTINE IO_WRITE_FIELD_LFI_L1 END SUBROUTINE IO_WRITE_FIELD_LFI_L1
! !
SUBROUTINE IO_WRITE_FIELD_LFI_C0(TPFIELD,KFLU,HFIELD,KRESP) SUBROUTINE IO_WRITE_FIELD_LFI_C0(TPFILE,TPFIELD,HFIELD,KRESP)
! !
IMPLICIT NONE IMPLICIT NONE
! !
!* 0.1 Declarations of arguments !* 0.1 Declarations of arguments
! !
TYPE(TFILEDATA), INTENT(IN) :: TPFILE
TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD
INTEGER, INTENT(IN) :: KFLU ! Fortran Logical Unit
CHARACTER(LEN=*), INTENT(IN) :: HFIELD ! array containing the data field CHARACTER(LEN=*), INTENT(IN) :: HFIELD ! array containing the data field
INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised
! !
...@@ -1293,7 +1293,7 @@ IF (IRESP==0) THEN ...@@ -1293,7 +1293,7 @@ IF (IRESP==0) THEN
IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) & IF( LEN_TRIM(TPFIELD%CMNHNAME) > LEN(YRECFM) ) &
CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_C0','field name was truncated to '& CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_C0','field name was truncated to '&
//YRECFM//' for '//TRIM(TPFIELD%CMNHNAME)) //YRECFM//' for '//TRIM(TPFIELD%CMNHNAME))
CALL LFIECR(IRESP,KFLU,YRECFM,IWORK,ITOTAL) CALL LFIECR(IRESP,TPFILE%NLFIFLU,YRECFM,IWORK,ITOTAL)
ENDIF ENDIF
! !
KRESP=IRESP KRESP=IRESP
...@@ -1302,7 +1302,7 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK) ...@@ -1302,7 +1302,7 @@ IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK)
! !
END SUBROUTINE IO_WRITE_FIELD_LFI_C0 END SUBROUTINE IO_WRITE_FIELD_LFI_C0
! !
SUBROUTINE IO_WRITE_FIELD_LFI_T0(TPFIELD,KFLU,TPDATA,KRESP) SUBROUTINE IO_WRITE_FIELD_LFI_T0(TPFILE,TPFIELD,TPDATA,KRESP)
! !
USE MODD_TYPE_DATE USE MODD_TYPE_DATE
! !
...@@ -1310,8 +1310,8 @@ IMPLICIT NONE ...@@ -1310,8 +1310,8 @@ IMPLICIT NONE
! !
!* 0.1 Declarations of arguments !* 0.1 Declarations of arguments
! !
TYPE(TFILEDATA), INTENT(IN) :: TPFILE
TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD TYPE(TFIELDDATA), INTENT(IN) :: TPFIELD
INTEGER, INTENT(IN) :: KFLU ! Fortran Logical Unit
TYPE (DATE_TIME), INTENT(IN) :: TPDATA ! array containing the data field TYPE (DATE_TIME), INTENT(IN) :: TPDATA ! array containing the data field
INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised INTEGER, INTENT(OUT):: KRESP ! return-code if problems araised
! !
...@@ -1345,7 +1345,7 @@ IF (IRESP==0) THEN ...@@ -1345,7 +1345,7 @@ IF (IRESP==0) THEN
IF( LEN_TRIM(TZFIELD%CMNHNAME) > LEN(YRECFM) ) & IF( LEN_TRIM(TZFIELD%CMNHNAME) > LEN(YRECFM) ) &
CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_T0','field name was truncated to '& CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_T0','field name was truncated to '&
//YRECFM//' for '//TRIM(TZFIELD%CMNHNAME)) //YRECFM//' for '//TRIM(TZFIELD%CMNHNAME))
CALL LFIECR(IRESP,KFLU,YRECFM,IWORK,ITOTAL) CALL LFIECR(IRESP,TPFILE%NLFIFLU,YRECFM,IWORK,ITOTAL)
ENDIF ENDIF
! !
IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK) IF (ALLOCATED(IWORK)) DEALLOCATE(IWORK)
...@@ -1369,7 +1369,7 @@ IF (IRESP==0) THEN ...@@ -1369,7 +1369,7 @@ IF (IRESP==0) THEN
IF( LEN_TRIM(TZFIELD%CMNHNAME) > LEN(YRECFM) ) & IF( LEN_TRIM(TZFIELD%CMNHNAME) > LEN(YRECFM) ) &
CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_T0','field name was truncated to '& CALL PRINT_MSG(NVERB_WARNING,'IO','IO_WRITE_FIELD_LFI_T0','field name was truncated to '&
//YRECFM//' for '//TRIM(TZFIELD%CMNHNAME)) //YRECFM//' for '//TRIM(TZFIELD%CMNHNAME))
CALL LFIECR(IRESP,KFLU,YRECFM,IWORK,ITOTAL) CALL LFIECR(IRESP,TPFILE%NLFIFLU,YRECFM,IWORK,ITOTAL)
ENDIF ENDIF
! !
KRESP=IRESP KRESP=IRESP
......
This diff is collapsed.
...@@ -82,7 +82,7 @@ TYPE TFILEDATA ...@@ -82,7 +82,7 @@ TYPE TFILEDATA
INTEGER :: NLFINPRAR = 0 !Number of predicted articles of the LFI file (non crucial) INTEGER :: NLFINPRAR = 0 !Number of predicted articles of the LFI file (non crucial)
INTEGER :: NLFITYPE = -1 !Type of the file (used to generate list of files to transfers) INTEGER :: NLFITYPE = -1 !Type of the file (used to generate list of files to transfers)
INTEGER :: NLFIVERB = 1 !LFI verbosity level INTEGER :: NLFIVERB = 1 !LFI verbosity level
INTEGER :: NLFIFLU = -1 !File identifier INTEGER(KIND=LFI_INT) :: NLFIFLU = -1 !File identifier
! !
! Fields for netCDF files ! Fields for netCDF files
INTEGER(KIND=IDCDF_KIND) :: NNCID = -1 !File identifier INTEGER(KIND=IDCDF_KIND) :: NNCID = -1 !File identifier
......
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