From c1af72d1002cb95cae77187f1fda914b33f5d74e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Riette?= <sebastien.riette@meteo.fr> Date: Thu, 15 Dec 2022 16:39:26 +0100 Subject: [PATCH] Merge with last commit --- src/common/turb/modi_les_mean_subgrid.F90 | 30 --------------------- src/testprogs/rain_ice/main_rain_ice.F90 | 2 -- src/testprogs/turb_mnh/getdata_turb_mod.F90 | 7 +++++ src/testprogs/turb_mnh/main_turb.F90 | 28 +++++++++++++------ 4 files changed, 27 insertions(+), 40 deletions(-) delete mode 100644 src/common/turb/modi_les_mean_subgrid.F90 diff --git a/src/common/turb/modi_les_mean_subgrid.F90 b/src/common/turb/modi_les_mean_subgrid.F90 deleted file mode 100644 index 9459d3d81..000000000 --- a/src/common/turb/modi_les_mean_subgrid.F90 +++ /dev/null @@ -1,30 +0,0 @@ -! ######spl -MODULE MODI_LES_MEAN_SUBGRID -! ##################### -! -INTERFACE LES_MEAN_SUBGRID -! - SUBROUTINE LES_MEAN_SUBGRID_3D(PA, PA_MEAN, OSUM) - -REAL, DIMENSION(:,:,:), INTENT(IN) :: PA -! -REAL, DIMENSION(:,:,:), INTENT(INOUT) :: PA_MEAN -! -LOGICAL, OPTIONAL, INTENT(IN) :: OSUM -! -END SUBROUTINE LES_MEAN_SUBGRID_3D -! - - SUBROUTINE LES_MEAN_SUBGRID_SURF(PA, PA_MEAN, OSUM) - -REAL, DIMENSION(:,:), INTENT(IN) :: PA -! -REAL, DIMENSION(:), INTENT(INOUT) :: PA_MEAN -! -LOGICAL, OPTIONAL, INTENT(IN) :: OSUM -! -END SUBROUTINE LES_MEAN_SUBGRID_SURF -! -END INTERFACE -! -END MODULE MODI_LES_MEAN_SUBGRID diff --git a/src/testprogs/rain_ice/main_rain_ice.F90 b/src/testprogs/rain_ice/main_rain_ice.F90 index 1948e8166..b9c3522f2 100644 --- a/src/testprogs/rain_ice/main_rain_ice.F90 +++ b/src/testprogs/rain_ice/main_rain_ice.F90 @@ -342,7 +342,6 @@ USE MODD_RAIN_ICE_PARAM USE MODD_PARAM_ICE USE MODD_TURB_N, ONLY: TURB_GOTO_MODEL, CSUBG_MF_PDF -USE MODD_REF USE MODI_INI_RAIN_ICE IMPLICIT NONE @@ -411,7 +410,6 @@ XVDEPOSC=0.02 ! deposition speed (2 cm.s-1) ! ! 2. Set implicit default values for MODD_RAIN_ICE_DESCR ! et MODD_RAIN_ICE_PARAM -XTHVREFZ=300. ! CALL INI_RAIN_ICE (KULOUT, CMICRO) !update values from namparar diff --git a/src/testprogs/turb_mnh/getdata_turb_mod.F90 b/src/testprogs/turb_mnh/getdata_turb_mod.F90 index ecdc7fb25..30fa20586 100644 --- a/src/testprogs/turb_mnh/getdata_turb_mod.F90 +++ b/src/testprogs/turb_mnh/getdata_turb_mod.F90 @@ -17,6 +17,7 @@ SUBROUTINE GETDATA_TURB (NPROMA, NGPBLKS, NFLEVG, KRR, KRRL, KRRI, KSV, KLEV, & &PTHM_B, ZRM_B, & &PRUS_B, PRVS_B, PRWS_B, PRTHS_B, ZRRS_B, ZRSVS_B, PRTKES_OUT_B, & &PFLXZTHVMF_B, & + &PHGRAD_B, PZS_B, & !OUT (allocation) &PSIGS_B, & &ZWTH_B,ZWRC_B,ZWSV_B,PDP_B,PTP_B,PTDIFF_B,PTDISS_B, & @@ -89,6 +90,8 @@ REAL, ALLOCATABLE :: ZRRS_B (:,:,:,:,:) !(KLON,1,KLEV+2,KRR) REAL, ALLOCATABLE :: ZRSVS_B (:,:,:,:,:) !(KLON,1,KLEV+2,KSV) REAL, ALLOCATABLE :: PRTKES_OUT_B (:,:,:,:) REAL, ALLOCATABLE :: PFLXZTHVMF_B (:,:,:,:) +REAL, ALLOCATABLE :: PHGRAD_B (:,:,:,:,:) !(KLON,1,KLEV+2,KGRADIENTS) +REAL, ALLOCATABLE :: PZS_B (:,:,:) !OUT REAL, ALLOCATABLE :: PSIGS_B (:,:,:,:) @@ -264,6 +267,8 @@ ALLOCATE (ZRRS_B (NPROMA,1,NFLEVG,KRR,NGPBLKS)) ALLOCATE (ZRSVS_B (NPROMA,1,NFLEVG,KSV,NGPBLKS)) ALLOCATE (PRTKES_OUT_B (NPROMA,1,NFLEVG,NGPBLKS)) ALLOCATE (PFLXZTHVMF_B (NPROMA,1,NFLEVG,NGPBLKS)) +ALLOCATE (PHGRAD_B (NPROMA,1,NFLEVG,0,NGPBLKS)) +ALLOCATE (PZS_B (NPROMA,1,NGPBLKS)) ALLOCATE (PSIGS_B (NPROMA,1,NFLEVG,NGPBLKS)) ALLOCATE (ZWTH_B (NPROMA,1,NFLEVG,NGPBLKS)) @@ -349,6 +354,8 @@ CALL SET (ZRRS_B ) CALL SET (ZRSVS_B ) CALL SET (PRTKES_OUT_B ) CALL SET (PFLXZTHVMF_B ) +CALL SET (PHGRAD_B ) +CALL SET (PZS_B ) CALL SET (PSIGS_B ) CALL SET (ZWTH_B ) diff --git a/src/testprogs/turb_mnh/main_turb.F90 b/src/testprogs/turb_mnh/main_turb.F90 index be441426a..214a91a11 100644 --- a/src/testprogs/turb_mnh/main_turb.F90 +++ b/src/testprogs/turb_mnh/main_turb.F90 @@ -6,6 +6,7 @@ USE COMPUTE_DIFF USE MODD_DIMPHYEX, ONLY: DIMPHYEX_t USE MODD_CST, ONLY: CST USE MODD_CTURB +USE MODD_LES, ONLY: TLES USE MODD_TURB_n, ONLY: TURBN USE MODD_IO, ONLY: TFILEDATA USE MODI_TURB @@ -66,6 +67,8 @@ REAL, ALLOCATABLE :: ZRRS (:,:,:,:,:) !(KLON,1,KLEV+2,KRR) REAL, ALLOCATABLE :: ZRSVS (:,:,:,:,:) !(KLON,1,KLEV+2,KSV) REAL, ALLOCATABLE :: PRTKES_OUT (:,:,:,:) REAL, ALLOCATABLE :: PFLXZTHVMF (:,:,:,:) +REAL, ALLOCATABLE :: PHGRAD (:,:,:,:,:) !(KLON,1,KLEV+2,KGRADIENTS) +REAL, ALLOCATABLE :: PZS (:,:,:) !OUT REAL, ALLOCATABLE :: PSIGS (:,:,:,:) @@ -116,10 +119,11 @@ INTEGER :: NPROMA, NGPBLKS, NFLEVG INTEGER :: IBL, JLON, JLEV TYPE(DIMPHYEX_t) :: D, D0 -INTEGER :: IMI, ISPLIT, KSV_LGBEG, KSV_LGEND +INTEGER :: IMI, ISPLIT, KSV_LGBEG, KSV_LGEND, KGRADIENTS +INTEGER :: KSV_LIMA_NR, KSV_LIMA_NS, KSV_LIMA_NG, KSV_LIMA_NH CHARACTER(LEN=4),DIMENSION(2) :: HLBCX, HLBCY CHARACTER(LEN=6) :: HPROGRAM -LOGICAL :: O2D, ONOMIXLG, OFLAT, LLES_CALL, OCOUPLES, OBLOWSNOW, OCOMPUTE_SRC, OOCEAN, ODEEPOC +LOGICAL :: O2D, ONOMIXLG, OFLAT, OCOUPLES, OBLOWSNOW, OCOMPUTE_SRC, OOCEAN, ODEEPOC TYPE(TFILEDATA) :: ZTFILE REAL :: ZCEI_MAX, ZCEI_MIN, ZCOEF_AMPL_SAT CHARACTER (LEN=4) :: CMICRO @@ -187,6 +191,7 @@ CALL GETDATA_TURB (NPROMA, NGPBLKS, NFLEVG, KRR, KRRL, KRRI, KSV, KLEV, & &PTHM, ZRM, & &PRUS, PRVS, PRWS, PRTHS, ZRRS, ZRSVS, PRTKES_OUT, & &PFLXZTHVMF, & + &PHGRAD, PZS, & !OUT only (needed to allocate the array to be passed to the subroutine) &PSIGS, & &ZWTH,ZWRC,ZWSV,PDP,PTP,PTDIFF,PTDISS, & @@ -217,7 +222,6 @@ HPROGRAM='AROME ' O2D=.FALSE. ONOMIXLG=.FALSE. OFLAT=.FALSE. -LLES_CALL=.FALSE. OCOUPLES=.FALSE. OBLOWSNOW=.FALSE. OCOMPUTE_SRC=SIZE(PSIGS, 3)/=0 @@ -228,6 +232,12 @@ ZTFILE%LOPENED=.FALSE. ZCEI_MAX=1.0 ZCEI_MIN=0.0 ZCOEF_AMPL_SAT=0.0 +KGRADIENTS=0 +KSV_LIMA_NR=0 +KSV_LIMA_NS=0 +KSV_LIMA_NG=0 +KSV_LIMA_NH=0 +TLES%LLES=.FALSE. ! PTSTEP = 25.0000000000000 @@ -330,17 +340,19 @@ JBLK2 = (NGPBLKS * (ITID+1)) / NTID YLSTACK%U = 0 #endif -CALL TURB (CST,CSTURB,TBUCONF,TURBN, D,& - & IMI, KRR, KRRL, KRRI, HLBCX, HLBCY,& +CALL TURB (CST,CSTURB,TBUCONF,TURBN, D, TLES,& + & IMI, KRR, KRRL, KRRI, HLBCX, HLBCY, KGRADIENTS, 1,& & ISPLIT,IMI, KSV, KSV_LGBEG, KSV_LGEND, & - & HPROGRAM, O2D, ONOMIXLG, OFLAT, LLES_CALL,OCOUPLES,OBLOWSNOW,& + & HPROGRAM, & + & KSV_LIMA_NR, KSV_LIMA_NS, KSV_LIMA_NG, KSV_LIMA_NH,& + & O2D, ONOMIXLG, OFLAT, OCOUPLES,OBLOWSNOW,.FALSE.,& & OCOMPUTE_SRC, 1.0, & & OOCEAN,ODEEPOC, .FALSE., & & 'NONE',CMICRO, & & 2*PTSTEP,ZTFILE, & & ZDXX(:,:,:,IBL),ZDYY(:,:,:,IBL),ZDZZ(:,:,:,IBL),ZDZX(:,:,:,IBL),ZDZY(:,:,:,IBL),ZZZ(:,:,:,IBL), & & ZDIRCOSXW,ZDIRCOSYW,ZDIRCOSZW,ZCOSSLOPE,ZSINSLOPE, & - & PRHODJ(:,:,:,IBL),PTHVREF(:,:,:,IBL), & + & PRHODJ(:,:,:,IBL),PTHVREF(:,:,:,IBL), PHGRAD, PZS, & & PSFTH(:,:,IBL),PSFRV(:,:,IBL),PSFSV(:,:,:,IBL),PSFU(:,:,IBL),PSFV(:,:,IBL), & & PPABSM(:,:,:,IBL),PUM(:,:,:,IBL),PVM(:,:,:,IBL),PWM(:,:,:,IBL),PTKEM(:,:,:,IBL),ZSVM(:,:,:,:,IBL),PSRCM(:,:,:,IBL), & & PLENGTHM(:,:,:,IBL),PLENGTHH(:,:,:,IBL),MFMOIST(:,:,:,IBL), & @@ -462,10 +474,10 @@ TURBN%CTURBLEN='BL89' TURBN%LSTATNW=.FALSE. TURBN%LTURB_DIAG=.FALSE. TURBN%LTURB_FLX=.FALSE. -TURBN%LHGRAD=.FALSE. TURBN%LSUBG_COND=.TRUE. TURBN%LRMC01=.FALSE. TURBN%CTOM='NONE' +TURBN%LLEONARD=.FALSE. XCED = 0.85 XCEP = 2.11 -- GitLab