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

Philippe 20/12/2023: series: modify string lengths (to be more coherent with TFIELDATA)

parent 3efd171c
No related branches found
No related tags found
No related merge requests found
!MNH_LIC Copyright 2002-2021 CNRS, Meteo-France and Universite Paul Sabatier
!MNH_LIC Copyright 2002-2023 CNRS, Meteo-France and Universite Paul Sabatier
!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
!MNH_LIC for details. version 1.
......@@ -93,12 +93,14 @@ CHARACTER (LEN=5), DIMENSION(3) :: YSUF
INTEGER :: ILUOUT ! Logical unit number for output-listing
INTEGER :: IRESP ! Return code of FM-routines
INTEGER :: IMI ! Current model index
INTEGER :: IDIGITS, ISIZE ! Length of character string
!-------------------------------------------------------------------------------
!
!* 1. INITIALIZATIONS
! ---------------
!
IMI = GET_CURRENT_MODEL_INDEX()
IDIGITS = INT( LOG10(REAL(IMI)+0.1) + 1 ) !Get the number of digits of IMI
!
CALL GET_INDICE_ll (IIB,IJB,IIE,IJE)
IKE = NKMAX + JPVEXT
......@@ -317,7 +319,9 @@ YMASK(3) = 'SEA'
! -----------------
!
DO JI=1,NSTEMP_SERIE1
WRITE(CSCOMMENT1(JI),'("TEMPORAL SERIE (t) : ",A,".",I0,".",A)') CEXP,IMI,CSEG
ISIZE = LEN("TEMPORAL SERIES (t) : ") + LEN_TRIM(CEXP) + 1 + IDIGITS + 1 + LEN_TRIM(CSEG)
IF ( ISIZE > LEN(CSCOMMENT1(JI)) ) CALL PRINT_MSG( NVERB_WARNING, 'IO', 'INI_SERIES_n', 'CSCOMMENT1 truncated' )
WRITE(CSCOMMENT1(JI),'("TEMPORAL SERIES (t) : ",A,".",I0,".",A)') TRIM(CEXP), IMI, TRIM(CSEG)
IF (JI==1) WRITE(ILUOUT,FMT=*) CSCOMMENT1(JI)
END DO
!
......@@ -383,7 +387,9 @@ end if
! ---------------------
!
DO JI=1,NSTEMP_SERIE2
WRITE(CSCOMMENT2(JI),'("TEMPORAL SERIE (z,t) : ",A,".",I0,".",A)') CEXP,IMI,CSEG
ISIZE = LEN("TEMPORAL SERIES (z,t): ") + LEN_TRIM(CEXP) + 1 + IDIGITS + 1 + LEN_TRIM(CSEG)
IF ( ISIZE > LEN(CSCOMMENT2(JI)) ) CALL PRINT_MSG( NVERB_WARNING, 'IO', 'INI_SERIES_n', 'CSCOMMENT2 truncated' )
WRITE(CSCOMMENT2(JI),'("TEMPORAL SERIES (z,t): ",A,".",I0,".",A)') TRIM(CEXP), IMI, TRIM(CSEG)
IF (JI==1) WRITE(ILUOUT,FMT=*) CSCOMMENT2(JI)
END DO
!
......@@ -428,7 +434,9 @@ end if
!* 2.3 Temporal series (x,t)
!
DO JI=1,NSTEMP_SERIE3
WRITE(CSCOMMENT3(JI),'("TEMPORAL SERIE (x,t) : ",A,".",I0,".",A)') CEXP,IMI,CSEG
ISIZE = LEN("TEMPORAL SERIES (x,t): ") + LEN_TRIM(CEXP) + 1 + IDIGITS + 1 + LEN_TRIM(CSEG)
IF ( ISIZE > LEN(CSCOMMENT3(JI)) ) CALL PRINT_MSG( NVERB_WARNING, 'IO', 'INI_SERIES_n', 'CSCOMMENT3 truncated' )
WRITE(CSCOMMENT3(JI),'("TEMPORAL SERIES (x,t): ",A,".",I0,".",A)') TRIM(CEXP), IMI, TRIM(CSEG)
IF (JI==1) WRITE(ILUOUT,FMT=*) CSCOMMENT3(JI)
END DO
......
!MNH_LIC Copyright 1998-2021 CNRS, Meteo-France and Universite Paul Sabatier
!MNH_LIC Copyright 1998-2023 CNRS, Meteo-France and Universite Paul Sabatier
!MNH_LIC This is part of the Meso-NH software governed by the CeCILL-C licence
!MNH_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
!MNH_LIC for details. version 1.
......@@ -39,7 +39,7 @@
!* 0. DECLARATIONS
! ------------
!
USE MODD_PARAMETERS, ONLY: JPMODELMAX
USE MODD_PARAMETERS, ONLY: JPMODELMAX, NCOMMENTLGTMAX, NMNHNAMELGTMAX, NUNITLGTMAX
use modd_type_date, only: date_time
IMPLICIT NONE
......@@ -68,18 +68,15 @@ TYPE SERIES_t
REAL, DIMENSION(:,:,:,:,:,:), POINTER :: XSSERIES2=>NULL() ! 2nd group:temporal serie (z,t)
REAL, DIMENSION(:,:,:,:,:,:), POINTER :: XSSERIES3=>NULL() ! 3rd group:temporal serie (x,t)
type(date_time), dimension(:), pointer :: tpsdates => NULL() ! dates
CHARACTER(LEN=50),DIMENSION(:),POINTER :: CSCOMMENT1=>NULL() ! strings
! associated with the 1st group
CHARACTER(LEN=50),DIMENSION(:),POINTER :: CSCOMMENT2=>NULL() ! with the 2nd
CHARACTER(LEN=50),DIMENSION(:),POINTER :: CSCOMMENT3=>NULL() ! with the 3rd
CHARACTER(LEN=100),DIMENSION(:),POINTER :: CSTITLE1=>NULL() ! strings
! associated with the 1st group
CHARACTER(LEN=100),DIMENSION(:),POINTER :: CSTITLE2=>NULL() ! with the 2nd
CHARACTER(LEN=100),DIMENSION(:),POINTER :: CSTITLE3=>NULL() ! with the 3rd
CHARACTER(LEN=100),DIMENSION(:),POINTER :: CSUNIT1=>NULL() ! strings
! associated with the 1st group
CHARACTER(LEN=100),DIMENSION(:),POINTER :: CSUNIT2=>NULL() ! with the 2nd
CHARACTER(LEN=100),DIMENSION(:),POINTER :: CSUNIT3=>NULL() ! with the 3rd
CHARACTER(LEN=NCOMMENTLGTMAX), DIMENSION(:), POINTER :: CSCOMMENT1 => NULL() ! comments associated with the 1st group
CHARACTER(LEN=NCOMMENTLGTMAX), DIMENSION(:), POINTER :: CSCOMMENT2 => NULL() ! with the 2nd
CHARACTER(LEN=NCOMMENTLGTMAX), DIMENSION(:), POINTER :: CSCOMMENT3 => NULL() ! with the 3rd
CHARACTER(LEN=NMNHNAMELGTMAX), DIMENSION(:), POINTER :: CSTITLE1 => NULL() ! titles associated with the 1st group
CHARACTER(LEN=NMNHNAMELGTMAX), DIMENSION(:), POINTER :: CSTITLE2 => NULL() ! with the 2nd
CHARACTER(LEN=NMNHNAMELGTMAX), DIMENSION(:), POINTER :: CSTITLE3 => NULL() ! with the 3rd
CHARACTER(LEN=NUNITLGTMAX), DIMENSION(:), POINTER :: CSUNIT1 => NULL() ! units associated with the 1st group
CHARACTER(LEN=NUNITLGTMAX), DIMENSION(:), POINTER :: CSUNIT2 => NULL() ! with the 2nd
CHARACTER(LEN=NUNITLGTMAX), DIMENSION(:), POINTER :: CSUNIT3 => NULL() ! with the 3rd
CHARACTER(LEN=4), DIMENSION(:),POINTER :: CSMASK1=>NULL()
CHARACTER(LEN=4), DIMENSION(:),POINTER :: CSMASK2=>NULL()
! CHARACTER(LEN=4), DIMENSION(:),POINTER :: CSMASK3=>NULL()
......@@ -130,15 +127,15 @@ REAL, DIMENSION(:,:,:,:,:,:), POINTER :: XSSERIES1=>NULL()
REAL, DIMENSION(:,:,:,:,:,:), POINTER :: XSSERIES2=>NULL()
REAL, DIMENSION(:,:,:,:,:,:), POINTER :: XSSERIES3=>NULL()
type(date_time), dimension(:), pointer :: tpsdates => NULL()
CHARACTER(LEN=50),DIMENSION(:),POINTER :: CSCOMMENT1=>NULL()
CHARACTER(LEN=50),DIMENSION(:),POINTER :: CSCOMMENT2=>NULL()
CHARACTER(LEN=50),DIMENSION(:),POINTER :: CSCOMMENT3=>NULL()
CHARACTER(LEN=100),DIMENSION(:),POINTER :: CSTITLE1=>NULL()
CHARACTER(LEN=100),DIMENSION(:),POINTER :: CSTITLE2=>NULL()
CHARACTER(LEN=100),DIMENSION(:),POINTER :: CSTITLE3=>NULL()
CHARACTER(LEN=100),DIMENSION(:),POINTER :: CSUNIT1=>NULL()
CHARACTER(LEN=100),DIMENSION(:),POINTER :: CSUNIT2=>NULL()
CHARACTER(LEN=100),DIMENSION(:),POINTER :: CSUNIT3=>NULL()
CHARACTER(LEN=NCOMMENTLGTMAX), DIMENSION(:), POINTER :: CSCOMMENT1 => NULL()
CHARACTER(LEN=NCOMMENTLGTMAX), DIMENSION(:), POINTER :: CSCOMMENT2 => NULL()
CHARACTER(LEN=NCOMMENTLGTMAX), DIMENSION(:), POINTER :: CSCOMMENT3 => NULL()
CHARACTER(LEN=NMNHNAMELGTMAX), DIMENSION(:), POINTER :: CSTITLE1 => NULL()
CHARACTER(LEN=NMNHNAMELGTMAX), DIMENSION(:), POINTER :: CSTITLE2 => NULL()
CHARACTER(LEN=NMNHNAMELGTMAX), DIMENSION(:), POINTER :: CSTITLE3 => NULL()
CHARACTER(LEN=NUNITLGTMAX), DIMENSION(:), POINTER :: CSUNIT1 => NULL()
CHARACTER(LEN=NUNITLGTMAX), DIMENSION(:), POINTER :: CSUNIT2 => NULL()
CHARACTER(LEN=NUNITLGTMAX), DIMENSION(:), POINTER :: CSUNIT3 => NULL()
CHARACTER(LEN=4), DIMENSION(:),POINTER :: CSMASK1=>NULL()
CHARACTER(LEN=4), DIMENSION(:),POINTER :: CSMASK2=>NULL()
! CHARACTER(LEN=4), DIMENSION(:),POINTER :: CSMASK3=>NULL()
......
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