From 0e0491f953386d36fc70edae14a7d2e7bd2e8278 Mon Sep 17 00:00:00 2001 From: Philippe WAUTELET <philippe.wautelet@aero.obs-mip.fr> Date: Fri, 24 Sep 2021 13:59:51 +0200 Subject: [PATCH] Philippe 24/09/2021: add NLONGNAMELGTMAX and NUNITLGTMAX parameters + use them --- src/LIB/SURCOUCHE/src/modd_field.f90 | 14 +++++++------- src/MNH/ini_budget.f90 | 8 ++++---- src/MNH/modd_parameters.f90 | 21 ++++++++++++--------- 3 files changed, 23 insertions(+), 20 deletions(-) diff --git a/src/LIB/SURCOUCHE/src/modd_field.f90 b/src/LIB/SURCOUCHE/src/modd_field.f90 index b81b59f1f..9c7f50c90 100644 --- a/src/LIB/SURCOUCHE/src/modd_field.f90 +++ b/src/LIB/SURCOUCHE/src/modd_field.f90 @@ -1,4 +1,4 @@ -!MNH_LIC Copyright 2016-2020 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC Copyright 2016-2021 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. @@ -15,7 +15,7 @@ !----------------------------------------------------------------- module modd_field -use modd_parameters, only: NGRIDUNKNOWN, NMNHNAMELGTMAX, NSTDNAMELGTMAX +use modd_parameters, only: NGRIDUNKNOWN, NMNHNAMELGTMAX, NSTDNAMELGTMAX, NLONGNAMELGTMAX, NUNITLGTMAX, NCOMMENTLGTMAX use modd_type_date, only: date_time #ifdef MNH_IOCDF4 use NETCDF, only: NF90_FILL_INT, NF90_FILL_REAL @@ -179,11 +179,11 @@ TYPE TFIELDPTR_T1D END TYPE TFIELDPTR_T1D ! type :: tfield_metadata_base - CHARACTER(LEN=NMNHNAMELGTMAX) :: CMNHNAME = '' !Name of the field (for MesoNH, non CF convention) - CHARACTER(LEN=NSTDNAMELGTMAX) :: CSTDNAME = '' !Standard name (CF convention) - CHARACTER(LEN=32) :: CLONGNAME = '' !Long name (CF convention) - CHARACTER(LEN=40) :: CUNITS = '' !Canonical units (CF convention) - CHARACTER(LEN=100) :: CCOMMENT = '' !Comment (for MesoNH, non CF convention) + CHARACTER(LEN=NMNHNAMELGTMAX) :: CMNHNAME = '' !Name of the field (for MesoNH, non CF convention) + CHARACTER(LEN=NSTDNAMELGTMAX) :: CSTDNAME = '' !Standard name (CF convention) + CHARACTER(LEN=NLONGNAMELGTMAX) :: CLONGNAME = '' !Long name (CF convention) + CHARACTER(LEN=NUNITLGTMAX) :: CUNITS = '' !Canonical units (CF convention) + CHARACTER(LEN=NCOMMENTLGTMAX) :: CCOMMENT = '' !Comment (for MesoNH, non CF convention) INTEGER :: NGRID = NGRIDUNKNOWN !Localization on the model grid INTEGER :: NTYPE = TYPEUNDEF !Datatype INTEGER :: NDIMS = 0 !Number of dimensions diff --git a/src/MNH/ini_budget.f90 b/src/MNH/ini_budget.f90 index 3152cb6e5..cff4e82db 100644 --- a/src/MNH/ini_budget.f90 +++ b/src/MNH/ini_budget.f90 @@ -4148,7 +4148,7 @@ end subroutine Budget_source_add subroutine Ini_budget_groups( tpbudgets, kbudim1, kbudim2, kbudim3 ) use modd_budget, only: tbudgetdata use modd_field, only: TYPEINT, TYPEREAL - use modd_parameters, only: NMNHNAMELGTMAX, NSTDNAMELGTMAX + use modd_parameters, only: NMNHNAMELGTMAX, NSTDNAMELGTMAX, NLONGNAMELGTMAX, NUNITLGTMAX, NCOMMENTLGTMAX use mode_tools, only: Quicksort @@ -4159,9 +4159,9 @@ subroutine Ini_budget_groups( tpbudgets, kbudim1, kbudim2, kbudim3 ) character(len=NMNHNAMELGTMAX) :: ymnhname character(len=NSTDNAMELGTMAX) :: ystdname - character(len=32) :: ylongname - character(len=40) :: yunits - character(len=100) :: ycomment + character(len=NLONGNAMELGTMAX) :: ylongname + character(len=NUNITLGTMAX) :: yunits + character(len=NCOMMENTLGTMAX) :: ycomment integer :: ji, jj, jk integer :: isources ! Number of source terms in a budget integer :: inbgroups ! Number of budget groups diff --git a/src/MNH/modd_parameters.f90 b/src/MNH/modd_parameters.f90 index c21c6e709..f4849d401 100644 --- a/src/MNH/modd_parameters.f90 +++ b/src/MNH/modd_parameters.f90 @@ -1,4 +1,4 @@ -!MNH_LIC Copyright 1994-2020 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC Copyright 1994-2021 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,10 +39,11 @@ !! Modification 17/05/04 (P.Jabouille) add JPOUTMAX !! J.Escobar : 15/09/2015 : WENO5 & JPHEXT <> 1 !! B.VIE 2016 LIMA -! P. Wautelet: 05/2016-04/2018: new data structures and calls for I/O -! Q. Rodier 29/03/2019: increase maximum number of outputs to 999 -! P. Wautelet 17/01/2020: add NBUNAMELGTMAX and NCOMMENTLGTMAX parameters -! P. Wautelet 13/03/2020: remove JPBUMAX and JPBUPROMAX +! P. Wautelet: 05/2016-04/2018: new data structures and calls for I/O +! Q. Rodier 29/03/2019: increase maximum number of outputs to 999 +! P. Wautelet 17/01/2020: add NBUNAMELGTMAX and NCOMMENTLGTMAX parameters +! P. Wautelet 13/03/2020: remove JPBUMAX and JPBUPROMAX +! P. Wautelet 24/09/2021: add NLONGNAMELGTMAX and NUNITLGTMAX parameters !------------------------------------------------------------------------------- ! !* 0. DECLARATIONS @@ -78,10 +79,12 @@ INTEGER, PARAMETER :: JPDUMMY = 20 ! Size of dummy array INTEGER, PARAMETER :: JPOUTMAX = 999 ! Maximum allowed number of OUTput files INTEGER, PARAMETER :: JPOUTVARMAX = 192 ! Maximum allowed number of variables in an output file ! -INTEGER, PARAMETER :: NBUNAMELGTMAX = 32 ! Maximum length of a budget name -INTEGER, PARAMETER :: NCOMMENTLGTMAX = 100 ! Maximum length of a comment -INTEGER, PARAMETER :: NMNHNAMELGTMAX = 32 ! Maximum length of a MNH variable name -INTEGER, PARAMETER :: NSTDNAMELGTMAX = 64 ! Maximum length of the standard name of a variable (CF convention) +INTEGER, PARAMETER :: NBUNAMELGTMAX = 32 ! Maximum length of a budget name +INTEGER, PARAMETER :: NCOMMENTLGTMAX = 100 ! Maximum length of a comment +INTEGER, PARAMETER :: NMNHNAMELGTMAX = 32 ! Maximum length of a MNH variable name +INTEGER, PARAMETER :: NSTDNAMELGTMAX = 64 ! Maximum length of the standard name of a variable (CF convention) +INTEGER, PARAMETER :: NLONGNAMELGTMAX = 32 ! Maximum length of the long name of a variable (CF convention) +INTEGER, PARAMETER :: NUNITLGTMAX = 40 ! Maximum length of the canonical units of a variable (CF convention) ! INTEGER, PARAMETER :: NDIRNAMELGTMAX = 512 ! Maximum length of a directory name INTEGER, PARAMETER :: NFILENAMELGTMAX = 32 ! Maximum length of a file name (must be at least NFILENAMELGTMAXLFI) -- GitLab