From b40ecb82b2204d592e9dab75b5f9c4d47cba12ca Mon Sep 17 00:00:00 2001 From: Philippe WAUTELET <philippe.wautelet@aero.obs-mip.fr> Date: Thu, 11 Mar 2021 14:46:49 +0100 Subject: [PATCH] Philippe 11/03/2021: bugfix: correct name for NSV_LIMA_IMM_NUCL (cherry picked from commit a6a3ddce41ae19a07094e612be32883ef0645333) --- src/MNH/read_field.f90 | 16 +++++++--------- src/MNH/spawn_field2.f90 | 8 +++----- src/MNH/write_aircraft_balloon.f90 | 6 ++---- src/MNH/write_lfifm1_for_diag.f90 | 14 ++++++-------- src/MNH/write_lfin.f90 | 27 ++++++++++++--------------- src/MNH/write_profilern.f90 | 21 +++++++++------------ 6 files changed, 39 insertions(+), 53 deletions(-) diff --git a/src/MNH/read_field.f90 b/src/MNH/read_field.f90 index 3f3fc6382..f0c5686b2 100644 --- a/src/MNH/read_field.f90 +++ b/src/MNH/read_field.f90 @@ -1,4 +1,4 @@ -!MNH_LIC Copyright 1994-2019 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. @@ -240,8 +240,9 @@ END MODULE MODI_READ_FIELD ! P. Wautelet 13/02/2019: removed PPABSM and PTSTEP dummy arguments (bugfix: PPABSM was intent(OUT)) !! Bielli S. 02/2019 Sea salt : significant sea wave height influences salt emission; 5 salt modes ! P. Wautelet 14/03/2019: correct ZWS when variable not present in file -!! M. Leriche 10/06/2019: in restart case read all immersion modes for LIMA -!!------------------------------------------------------------------------------- +! M. Leriche 10/06/2019: in restart case read all immersion modes for LIMA +! P. Wautelet 11/03/2021: bugfix: correct name for NSV_LIMA_IMM_NUCL +!------------------------------------------------------------------------------- ! !* 0. DECLARATIONS ! ------------ @@ -383,7 +384,7 @@ REAL, DIMENSION(:,:,:,:), INTENT(INOUT) :: PRRS_CLD, PRSVS_CLD ! !* 0.2 declarations of local variables ! -INTEGER :: I, IID +INTEGER :: IID INTEGER :: ILUOUT ! Unit number for prints INTEGER :: IRESP INTEGER :: ISV ! total number of scalar variables @@ -716,11 +717,8 @@ DO JSV = NSV_LIMA_BEG,NSV_LIMA_END END IF ! N IMM nucl IF (JSV .GE. NSV_LIMA_IMM_NUCL .AND. JSV .LT. NSV_LIMA_IMM_NUCL + NMOD_IMM) THEN - DO I= 1, NMOD_IMM ! to be supressed - WRITE(INDICE,'(I2.2)')(NINDICE_CCN_IMM(I)) ! to be supressed -! WRITE(INDICE,'(I2.2)')(NINDICE_CCN_IMM(JSV - NSV_LIMA_BEG - NSV_LIMA_IMM_NUCL + 1)) - TZFIELD%CMNHNAME = TRIM(CLIMA_COLD_NAMES(4))//INDICE//'T' - ENDDO + WRITE(INDICE,'(I2.2)')(NINDICE_CCN_IMM(JSV - NSV_LIMA_IMM_NUCL + 1)) + TZFIELD%CMNHNAME = TRIM(CLIMA_COLD_NAMES(4))//INDICE//'T' END IF ! Hom. freez. of CCN IF (JSV .EQ. NSV_LIMA_HOM_HAZE) THEN diff --git a/src/MNH/spawn_field2.f90 b/src/MNH/spawn_field2.f90 index c029da290..7af403245 100644 --- a/src/MNH/spawn_field2.f90 +++ b/src/MNH/spawn_field2.f90 @@ -1,4 +1,4 @@ -!MNH_LIC Copyright 1995-2019 CNRS, Meteo-France and Universite Paul Sabatier +!MNH_LIC Copyright 1995-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. @@ -154,6 +154,7 @@ END MODULE MODI_SPAWN_FIELD2 !! Modification 05/03/2018 (J.Escobar) bypass gridnesting special case KD(X/Y)RATIO == 1 not parallelized !! Bielli S. 02/2019 Sea salt : significant sea wave height influences salt emission; 5 salt modes ! P. Wautelet 14/03/2019: correct ZWS when variable not present in file +! P. Wautelet 11/03/2021: bugfix: correct name for NSV_LIMA_IMM_NUCL !------------------------------------------------------------------------------- ! !* 0. DECLARATIONS @@ -277,7 +278,6 @@ LOGICAL :: GUSERV ! CHARACTER(LEN=15) :: YVAL CHARACTER(LEN=2) :: INDICE -INTEGER :: I TYPE(TFIELDDATA) :: TZFIELD ! !------------------------------------------------------------------------------- @@ -926,10 +926,8 @@ IF (PRESENT(TPSONFILE)) THEN TZFIELD%CMNHNAME = TRIM(CLIMA_COLD_NAMES(3))//INDICE//'T' END IF ! N IMM nucl - I = 0 IF (JSV .GE. NSV_LIMA_IMM_NUCL .AND. JSV .LT. NSV_LIMA_IMM_NUCL + NMOD_IMM) THEN - I = I + 1 - WRITE(INDICE,'(I2.2)')(NINDICE_CCN_IMM(I)) + WRITE(INDICE,'(I2.2)')(NINDICE_CCN_IMM(JSV - NSV_LIMA_IMM_NUCL + 1)) TZFIELD%CMNHNAME = TRIM(CLIMA_COLD_NAMES(4))//INDICE//'T' END IF ! Hom. freez. of CCN diff --git a/src/MNH/write_aircraft_balloon.f90 b/src/MNH/write_aircraft_balloon.f90 index 23e939f60..b0430e908 100644 --- a/src/MNH/write_aircraft_balloon.f90 +++ b/src/MNH/write_aircraft_balloon.f90 @@ -66,6 +66,7 @@ END MODULE MODI_WRITE_AIRCRAFT_BALLOON ! P. Wautelet 29/01/2019: bug: moved an instruction later (to prevent access to a not allocated array) ! P. Wautelet 02/10/2020: bugfix: YGROUP/YGROUPZ were too small ! P. Wautelet 09/10/2020: bugfix: correction on IPROCZ when not LIMA (condition was wrong) +! P. Wautelet 11/03/2021: bugfix: correct name for NSV_LIMA_IMM_NUCL ! -------------------------------------------------------------------------- ! !* 0. DECLARATIONS @@ -207,7 +208,6 @@ INTEGER :: JSV ! loop counter INTEGER :: JPT ! loop counter INTEGER :: IKU, IK CHARACTER(LEN=2) :: INDICE -INTEGER :: I INTEGER :: JLOOP ! !---------------------------------------------------------------------------- @@ -462,10 +462,8 @@ IF (SIZE(TPFLYER%SV,2)>=1) THEN WRITE(INDICE,'(I2.2)')(JSV - NSV_LIMA_IFN_NUCL + 1) YTITLE(JPROC)=TRIM(CLIMA_COLD_NAMES(3))//INDICE//'T' ENDIF - I = 0 IF (JSV .GE. NSV_LIMA_IMM_NUCL .AND. JSV .LT. NSV_LIMA_IMM_NUCL + NMOD_IMM) THEN - I = I + 1 - WRITE(INDICE,'(I2.2)')(NINDICE_CCN_IMM(I)) + WRITE(INDICE,'(I2.2)')(NINDICE_CCN_IMM(JSV - NSV_LIMA_IMM_NUCL + 1)) YTITLE(JPROC)=TRIM(CLIMA_COLD_NAMES(4))//INDICE//'T' ENDIF IF (JSV .EQ. NSV_LIMA_HOM_HAZE) YTITLE(JPROC)=TRIM(CLIMA_COLD_NAMES(5))//'T' diff --git a/src/MNH/write_lfifm1_for_diag.f90 b/src/MNH/write_lfifm1_for_diag.f90 index 1dbff4a57..76342920e 100644 --- a/src/MNH/write_lfifm1_for_diag.f90 +++ b/src/MNH/write_lfifm1_for_diag.f90 @@ -1,4 +1,4 @@ -!MNH_LIC Copyright 1994-2019 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. @@ -143,7 +143,8 @@ END MODULE MODI_WRITE_LFIFM1_FOR_DIAG !! D.Ricard and P.Marquet 2016-2017 : THETAL + THETAS1 POVOS1 or THETAS2 POVOS2 !! if LMOIST_L LMOIST_S1 or LMOIST_S2 ! P. Wautelet 08/02/2019: minor bug: compute ZWORK36 only when needed -!! Bielli S. 02/2019 Sea salt : significant sea wave height influences salt emission; 5 salt modes +! S Bielli 02/2019: sea salt: significant sea wave height influences salt emission; 5 salt modes +! P. Wautelet 11/03/2021: bugfix: correct name for NSV_LIMA_IMM_NUCL !------------------------------------------------------------------------------- ! !* 0. DECLARATIONS @@ -335,7 +336,7 @@ INTEGER :: ILUOUT0 ! Logical unit number for output-listing ! CHARACTER(LEN=2) :: INDICE CHARACTER(LEN=100) :: YMSG -INTEGER :: I,IID +INTEGER :: IID TYPE(TFIELDDATA) :: TZFIELD TYPE(TFIELDDATA),DIMENSION(2) :: TZFIELD2 ! @@ -1149,11 +1150,8 @@ IF (LLIMA_DIAG) THEN END IF ! N IMM nucl IF (JSV .GE. NSV_LIMA_IMM_NUCL .AND. JSV .LT. NSV_LIMA_IMM_NUCL + NMOD_IMM) THEN - DO I = 1, NMOD_IMM ! to be supressed -! WRITE(INDICE,'(I2.2)')(NINDICE_CCN_IMM(JSV - NSV_LIMA_BEG - NSV_LIMA_IMM_NUCL + 1)) - WRITE(INDICE,'(I2.2)')(NINDICE_CCN_IMM(I)) ! to be supressed - TZFIELD%CMNHNAME = TRIM(CLIMA_COLD_CONC(4))//INDICE//'T' - ENDDO + WRITE(INDICE,'(I2.2)')(NINDICE_CCN_IMM(JSV - NSV_LIMA_IMM_NUCL + 1)) + TZFIELD%CMNHNAME = TRIM(CLIMA_COLD_CONC(4))//INDICE//'T' END IF ! Hom. freez. of CCN IF (JSV .EQ. NSV_LIMA_HOM_HAZE) THEN diff --git a/src/MNH/write_lfin.f90 b/src/MNH/write_lfin.f90 index 3978a24d0..625b32fc5 100644 --- a/src/MNH/write_lfin.f90 +++ b/src/MNH/write_lfin.f90 @@ -163,15 +163,16 @@ END MODULE MODI_WRITE_LFIFM_n !! J.escobar 04/08/2015 suit Pb with writ_lfin JSA increment , modif in ini_nsv to have good order initialization !! Modification 01/2016 (JP Pinty) Add LIMA !! M.Mazoyer 04/16 : Add supersaturation fields -!! P.Wautelet 11/07/2016 removed MNH_NCWRIT define -!! JP Chaboureau 27/11/2017 add wind tendency forcing -!! 02/2018 Q.Libois move Diagnostic related to the radiations in radiations.f90 -!! Philippe Wautelet: 05/2016-04/2018: new data structures and calls for I/O -!! V. Vionnet 07/2017, add blowing snow variables -!! P.Wautelet 11/01/2019: bug correction in write XBL_DEPTH->XSBL_DEPTH -!! C.Lac 18/02/2019: add rain fraction as an output field -!! Bielli S. 02/2019 Sea salt : significant sea wave height influences salt emission; 5 salt modes -!! P.Tulet 02/2020 : correction for dust and sea salts +! P. Wautelet 05/2016-04/2018: new data structures and calls for I/O +! P. Wautelet 11/07/2016: remove MNH_NCWRIT define +! V. Vionnet 07/2017: add blowing snow variables +! JP Chaboureau 27/11/2017: add wind tendency forcing +! Q. Libois 02/2018: move Diagnostic related to the radiations in radiations.f90 +! P. Wautelet 11/01/2019: bug correction in write XBL_DEPTH->XSBL_DEPTH +! C. Lac 18/02/2019: add rain fraction as an output field +! S. Bielli 02/2019: Sea salt: significant sea wave height influences salt emission; 5 salt modes +! P. Tulet 02/2020: correction for dust and sea salts +! P. Wautelet 11/03/2021: bugfix: correct name for NSV_LIMA_IMM_NUCL !------------------------------------------------------------------------------- ! !* 0. DECLARATIONS @@ -318,7 +319,7 @@ INTEGER :: JI,JJ,JK ! loop index INTEGER :: IIU,IJU,IKU,IIB,IJB,IKB,IIE,IJE,IKE ! Arrays bounds ! CHARACTER(LEN=2) :: INDICE -INTEGER :: I, IID +INTEGER :: IID TYPE(TFIELDDATA) :: TZFIELD !------------------------------------------------------------------------------- ! @@ -763,12 +764,8 @@ IF (NSV >=1) THEN END IF ! N IMM nucl IF (JSV .GE. NSV_LIMA_IMM_NUCL .AND. JSV .LT. NSV_LIMA_IMM_NUCL + NMOD_IMM) THEN - DO I = 1, NMOD_IMM ! to be supressed -! ML start to 1 to get the CCN mode indice acting as IN by immersion -! WRITE(INDICE,'(I2.2)')(NINDICE_CCN_IMM(JSV - NSV_LIMA_BEG - NSV_LIMA_IMM_NUCL + 1)) - WRITE(INDICE,'(I2.2)')(NINDICE_CCN_IMM(I)) ! to be supresses + WRITE(INDICE,'(I2.2)')(NINDICE_CCN_IMM(JSV - NSV_LIMA_IMM_NUCL + 1)) TZFIELD%CMNHNAME = TRIM(CLIMA_COLD_NAMES(4))//INDICE//'T' - ENDDO END IF ! Hom. freez. of CCN IF (JSV .EQ. NSV_LIMA_HOM_HAZE) THEN diff --git a/src/MNH/write_profilern.f90 b/src/MNH/write_profilern.f90 index f5ca19940..55ed04e3a 100644 --- a/src/MNH/write_profilern.f90 +++ b/src/MNH/write_profilern.f90 @@ -56,13 +56,13 @@ END MODULE MODI_WRITE_PROFILER_n !! MODIFICATIONS !! ------------- !! Original 15/02/2002 -!! 2016 : G.DELAUTIER : LIMA -!! Oct, 2016 (C.Lac) Add visibility diagnostics for fog -!! Philippe Wautelet: 05/2016-04/2018: new data structures and calls for I/O -!! J. Escobar : 16/08/2018: From Pierre & Maud , correction use CNAMES(JSV-NSV_CHEMBEG+1) -!! -!! -------------------------------------------------------------------------- -! +! G. Delautier 2016: LIMA +! C. Lac 10/2016: add visibility diagnostics for fog +! P. Wautelet 05/2016-04/2018: new data structures and calls for I/O +! J. Escobar 16/08/2018: From Pierre & Maud , correction use CNAMES(JSV-NSV_CHEMBEG+1) +! P. Wautelet 11/03/2021: bugfix: correct name for NSV_LIMA_IMM_NUCL +! -------------------------------------------------------------------------- +! !* 0. DECLARATIONS ! ------------ ! @@ -147,7 +147,6 @@ INTEGER :: JRR ! loop counter INTEGER :: JSV ! loop counter INTEGER :: IKU, IK ! loop counter CHARACTER(LEN=2) :: INDICE -INTEGER :: I ! !---------------------------------------------------------------------------- ! @@ -483,11 +482,9 @@ IF (SIZE(TPROFILER%SV,4)>=1) THEN WRITE(INDICE,'(I2.2)')(JSV - NSV_LIMA_IFN_NUCL + 1) YTITLE(JPROC)=TRIM(CLIMA_COLD_NAMES(3))//INDICE//'T' ENDIF - I = 0 IF (JSV .GE. NSV_LIMA_IMM_NUCL .AND. JSV .LT. NSV_LIMA_IMM_NUCL + NMOD_IMM) THEN - I = I + 1 - WRITE(INDICE,'(I2.2)')(NINDICE_CCN_IMM(I)) - YTITLE(JPROC)=TRIM(CLIMA_COLD_NAMES(4))//INDICE//'T' + WRITE(INDICE,'(I2.2)')(NINDICE_CCN_IMM(JSV - NSV_LIMA_IMM_NUCL + 1)) + YTITLE(JPROC)=TRIM(CLIMA_COLD_NAMES(4))//INDICE//'T' ENDIF IF (JSV .EQ. NSV_LIMA_HOM_HAZE) YTITLE(JPROC)=TRIM(CLIMA_COLD_NAMES(5))//'T' -- GitLab