From a463dd440d48c43236061d48d364f819abdb63e6 Mon Sep 17 00:00:00 2001 From: Quentin Rodier <quentin.rodier@meteo.fr> Date: Thu, 3 Aug 2023 17:46:56 +0200 Subject: [PATCH] Quentin 03/08/2023: bugfix must call ADD3DFIELD_ll instead on 2D in tke_eps_sources: creation of an unpacking interface --- src/common/aux/mode_argslist_ll_phy.F90 | 60 ++++++++++++++++++++++++ src/common/turb/mode_tke_eps_sources.F90 | 3 +- 2 files changed, 62 insertions(+), 1 deletion(-) create mode 100644 src/common/aux/mode_argslist_ll_phy.F90 diff --git a/src/common/aux/mode_argslist_ll_phy.F90 b/src/common/aux/mode_argslist_ll_phy.F90 new file mode 100644 index 000000000..de0a2f3be --- /dev/null +++ b/src/common/aux/mode_argslist_ll_phy.F90 @@ -0,0 +1,60 @@ +!MNH_LIC Copyright 2023-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. +!----------------------------------------------------------------- +! +!! ####################### +MODULE MODE_ARGSLIST_ll_PHY +! + USE MODE_ll + USE MODD_ARGSLIST_ll, ONLY : LIST_ll + USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t +! + CONTAINS +! + SUBROUTINE ADD3DFIELD_ll_PHY(D, TPLIST, PFIELD, HNAME) +!! ############################################### +! +!!**** *ADD3DFIELD_ll_PHY* - +! +!! Purpose +!! ------- +! This routine is used as an interface to ADD3DFIELD_ll for +! unpacking horizontal dimensions +! +!! Reference +!! --------- +! +! see PHYEX documentation +! +!! Implicit Arguments +!! ------------------ +! +! Module MODD_ARGSLIST : +! LIST_ll : list of fields +! DIMPHYEX_t: PHYEX dimensions +! +!! Author +!! ------ +! +! Q.Rodier +! +!! Modifications +!! ------------- +! Original August, 3, 2023 +! +!------------------------------------------------------------------------------- +! + IMPLICIT NONE +! + TYPE(DIMPHYEX_t), INTENT(IN) :: D + TYPE(LIST_ll), POINTER :: TPLIST ! list of fields + REAL, DIMENSION(D%NIT,D%NJT,D%NKT), INTENT(IN) :: PFIELD ! field which is unpaked here +! of fields + CHARACTER(LEN=*), INTENT(IN) :: HNAME ! Name of the field to be added + + CALL ADD3DFIELD_ll(TPLIST, PFIELD, HNAME) + + END SUBROUTINE ADD3DFIELD_ll_PHY +END MODULE MODE_ARGSLIST_ll_PHY diff --git a/src/common/turb/mode_tke_eps_sources.F90 b/src/common/turb/mode_tke_eps_sources.F90 index ad26218eb..1989db9f1 100644 --- a/src/common/turb/mode_tke_eps_sources.F90 +++ b/src/common/turb/mode_tke_eps_sources.F90 @@ -145,6 +145,7 @@ USE MODD_TURB_n, ONLY: TURB_t USE MODE_BUDGET_PHY, ONLY: BUDGET_STORE_ADD_PHY, BUDGET_STORE_END_PHY, BUDGET_STORE_INIT_PHY USE MODE_IO_FIELD_WRITE_PHY, ONLY: IO_FIELD_WRITE_PHY USE MODE_ll +USE MODE_ARGSLIST_ll_PHY, ONLY: ADD3DFIELD_ll_PHY ! USE MODI_GET_HALO USE MODI_LES_MEAN_SUBGRID_PHY @@ -320,7 +321,7 @@ IF (ODIAG_IN_RUN) THEN *(PEXPL*PTKEM(IIJB:IIJE,1:IKT) + TURBN%XIMPL*ZRES(IIJB:IIJE,1:IKT)) !$mnh_end_expand_array(JIJ=IIJB:IIJE,JK=1:IKT) ! - CALL ADD2DFIELD_ll(TZFIELDDISS_ll, PCURRENT_TKE_DISS, 'TKE_EPS_SOURCES::PCURRENT_TKE_DISS' ) + CALL ADD3DFIELD_ll_PHY(D, TZFIELDDISS_ll, PCURRENT_TKE_DISS, 'TKE_EPS_SOURCES::PCURRENT_TKE_DISS' ) CALL UPDATE_HALO_ll(TZFIELDDISS_ll,IINFO_ll) CALL CLEANLIST_ll(TZFIELDDISS_ll) ENDIF -- GitLab