diff --git a/src/MNH/lima_adjust_split.f90 b/src/MNH/lima_adjust_split.f90 index f5f09e5145e87d555c9cd3de92f1b26a05c7ae3a..8baf17668657c028818b1bc75665b6d712b53f15 100644 --- a/src/MNH/lima_adjust_split.f90 +++ b/src/MNH/lima_adjust_split.f90 @@ -144,6 +144,7 @@ END MODULE MODI_LIMA_ADJUST_SPLIT !! ------------- !! Original 06/2021 forked from lima_adjust.f90 ! P. Wautelet 23/07/2021: replace non-standard FLOAT function by REAL function +! B. Vie 03/2022: Add option for 1-moment pristine ice !------------------------------------------------------------------------------- ! !* 0. DECLARATIONS diff --git a/src/MNH/lima_ice_aggregation_snow.f90 b/src/MNH/lima_ice_aggregation_snow.f90 index cca87089e2b324e1f2f6ea1767c231cd2649d31f..2979bee5b31a944057a7b78360a6505ab58302ee 100644 --- a/src/MNH/lima_ice_aggregation_snow.f90 +++ b/src/MNH/lima_ice_aggregation_snow.f90 @@ -53,7 +53,8 @@ END MODULE MODI_LIMA_ICE_AGGREGATION_SNOW !! ------------- !! Original 15/03/2018 ! J. Wurtz 03/2022: new snow characteristics -!! +! B. Vie 03/2022: Add option for 1-moment pristine ice +! !------------------------------------------------------------------------------- ! !* 0. DECLARATIONS @@ -110,19 +111,19 @@ IF (NMOM_I.EQ.1) THEN P_RI_AGGS(:) = - ZZW1(:) END WHERE ELSE -WHERE ( (PRIT(:)>XRTMIN(4)) .AND. (PRST(:)>XRTMIN(5)) .AND. LDCOMPUTE(:) ) - ZZW1(:) = (PLBDI(:) / PLBDS(:))**3 - ZZW2(:) = (PCIT(:)*(XLBS*PRST(:)*PLBDS(:)**XBS)*EXP(XCOLEXIS*(PT(:)-XTT) )) & - / (PLBDI(:)**3) - ZZW3(:) = ZZW2(:)*(XAGGS_CLARGE1+XAGGS_CLARGE2*ZZW1(:)) + WHERE ( (PRIT(:)>XRTMIN(4)) .AND. (PRST(:)>XRTMIN(5)) .AND. LDCOMPUTE(:) ) + ZZW1(:) = (PLBDI(:) / PLBDS(:))**3 + ZZW2(:) = (PCIT(:)*(XLBS*PRST(:)*PLBDS(:)**XBS)*EXP(XCOLEXIS*(PT(:)-XTT) )) & + / (PLBDI(:)**3) + ZZW3(:) = ZZW2(:)*(XAGGS_CLARGE1+XAGGS_CLARGE2*ZZW1(:)) ! - P_CI_AGGS(:) = - ZZW3(:) + P_CI_AGGS(:) = - ZZW3(:) ! - ZZW2(:) = ZZW2(:) / PLBDI(:)**XBI - ZZW2(:) = ZZW2(:)*(XAGGS_RLARGE1+XAGGS_RLARGE2*ZZW1(:)) + ZZW2(:) = ZZW2(:) / PLBDI(:)**XBI + ZZW2(:) = ZZW2(:)*(XAGGS_RLARGE1+XAGGS_RLARGE2*ZZW1(:)) ! - P_RI_AGGS(:) = - ZZW2(:) -END WHERE + P_RI_AGGS(:) = - ZZW2(:) + END WHERE END IF ! ! diff --git a/src/MNH/lima_ice_deposition.f90 b/src/MNH/lima_ice_deposition.f90 index 0c9bfedda70358e89cc0ffe8604751551d969e48..2b46227b80ded9618b03c77b75eb75ce0a90a458 100644 --- a/src/MNH/lima_ice_deposition.f90 +++ b/src/MNH/lima_ice_deposition.f90 @@ -67,7 +67,7 @@ SUBROUTINE LIMA_ICE_DEPOSITION (PTSTEP, LDCOMPUTE, & !! ------------- !! Original 15/03/2018 !! B. Vié 30/08/2021 Disable CNVS if LSNOW=F -!! +!! B. Vie 03/2022 Add option for 1-moment pristine ice !------------------------------------------------------------------------------- ! !* 0. DECLARATIONS diff --git a/src/MNH/lima_nucleation_procs.f90 b/src/MNH/lima_nucleation_procs.f90 index 11fb8d6c55d31cdd4e37faf3bdc42cc91676ee8b..f3f4e17fd057fde863f393e761a8f98265e1aae1 100644 --- a/src/MNH/lima_nucleation_procs.f90 +++ b/src/MNH/lima_nucleation_procs.f90 @@ -79,6 +79,7 @@ SUBROUTINE LIMA_NUCLEATION_PROCS (PTSTEP, TPFILE, PRHODJ, ! P. Wautelet 27/02/2020: add Z_TH_HINC variable (for budgets) ! P. Wautelet 02/2020: use the new data structures and subroutines for budgets ! B. Vie 03/03/2020: use DTHRAD instead of dT/dt in Smax diagnostic computation +! B. Vie 03/2022: Add option for 1-moment pristine ice !------------------------------------------------------------------------------- ! use modd_budget, only: lbu_enable, lbudget_th, lbudget_rv, lbudget_rc, lbudget_rr, & diff --git a/src/MNH/lima_snow_deposition.f90 b/src/MNH/lima_snow_deposition.f90 index 0362f026c1acefe0c0e3198ae2370fa4821e8eeb..fa96aa705626479d4728dc83192533296bf470a9 100644 --- a/src/MNH/lima_snow_deposition.f90 +++ b/src/MNH/lima_snow_deposition.f90 @@ -64,6 +64,7 @@ SUBROUTINE LIMA_SNOW_DEPOSITION (LDCOMPUTE, & !! Original 15/03/2018 !! ! J. Wurtz 03/2022: new snow characteristics +! B. Vie 03/2022: Add option for 1-moment pristine ice !------------------------------------------------------------------------------- ! !* 0. DECLARATIONS @@ -131,42 +132,42 @@ IF (NMOM_I.EQ.1) THEN P_RS_DEPS(:) = ZZW(:) END WHERE ELSE -WHERE( GMICRO ) + WHERE( GMICRO ) ! !* 2.1 Conversion of snow to r_i: RSCNVI ! ---------------------------------------- ! ! - ZZW2(:) = 0.0 - ZZW(:) = 0.0 - WHERE ( PLBDS(:)<XLBDASCNVI_MAX .AND. (PRST(:)>XRTMIN(5)) & - .AND. (PSSI(:)<0.0) ) - ZZW(:) = (PLBDS(:)*XDSCNVI_LIM)**(XALPHAS) - ZZX(:) = ( -PSSI(:)/PAI(:) ) * (XLBS*PRST(:)*PLBDS(:)**XBS) * (ZZW(:)**XNUS) * EXP(-ZZW(:)) + ZZW2(:) = 0.0 + ZZW(:) = 0.0 + WHERE ( PLBDS(:)<XLBDASCNVI_MAX .AND. (PRST(:)>XRTMIN(5)) & + .AND. (PSSI(:)<0.0) ) + ZZW(:) = (PLBDS(:)*XDSCNVI_LIM)**(XALPHAS) + ZZX(:) = ( -PSSI(:)/PAI(:) ) * (XLBS*PRST(:)*PLBDS(:)**XBS) * (ZZW(:)**XNUS) * EXP(-ZZW(:)) ! - ZZW(:) = ( XR0DEPSI+XR1DEPSI*PCJ(:) )*ZZX(:) + ZZW(:) = ( XR0DEPSI+XR1DEPSI*PCJ(:) )*ZZX(:) ! - ZZW2(:) = ZZW(:)*( XC0DEPSI+XC1DEPSI*PCJ(:) )/( XR0DEPSI+XR1DEPSI*PCJ(:) ) - END WHERE + ZZW2(:) = ZZW(:)*( XC0DEPSI+XC1DEPSI*PCJ(:) )/( XR0DEPSI+XR1DEPSI*PCJ(:) ) + END WHERE ! - P_RI_CNVI(:) = ZZW(:) - P_CI_CNVI(:) = ZZW2(:) + P_RI_CNVI(:) = ZZW(:) + P_CI_CNVI(:) = ZZW2(:) ! ! !* 2.2 Deposition of water vapor on r_s: RVDEPS ! ----------------------------------------------- ! ! - ZZW(:) = 0.0 - WHERE ( (PRST(:)>XRTMIN(5)) ) - ZZW(:) = ( PRST(:)*PSSI(:)/(PAI(:)) ) * & - ( X0DEPS*PLBDS(:)**XEX0DEPS + & - ( X1DEPS*PCJ(:)*(PLBDS(:))**(XBS+XEX1DEPS) * & - (1+(XFVELOS/(2.*PLBDS))**XALPHAS)**(-XNUS+XEX1DEPS/XALPHAS)) ) - ZZW(:) = ZZW(:)*(0.5+SIGN(0.5,ZZW(:))) - ABS(ZZW(:))*(0.5-SIGN(0.5,ZZW(:))) - END WHERE + ZZW(:) = 0.0 + WHERE ( (PRST(:)>XRTMIN(5)) ) + ZZW(:) = ( PRST(:)*PSSI(:)/(PAI(:)) ) * & + ( X0DEPS*PLBDS(:)**XEX0DEPS + & + ( X1DEPS*PCJ(:)*(PLBDS(:))**(XBS+XEX1DEPS) * & + (1+(XFVELOS/(2.*PLBDS))**XALPHAS)**(-XNUS+XEX1DEPS/XALPHAS)) ) + ZZW(:) = ZZW(:)*(0.5+SIGN(0.5,ZZW(:))) - ABS(ZZW(:))*(0.5-SIGN(0.5,ZZW(:))) + END WHERE ! - P_RS_DEPS(:) = ZZW(:) + P_RS_DEPS(:) = ZZW(:) !!$ P_TH_DEPS(:) = P_RS_DEPS(:) * PLSFACT(:) ! END WHERE diff --git a/src/MNH/lima_tendencies.f90 b/src/MNH/lima_tendencies.f90 index 1a48613a6f01b486a2b669a4701aae69d4f9c990..0fce8cb11722c47e66789b940aa8d64127712cc8 100644 --- a/src/MNH/lima_tendencies.f90 +++ b/src/MNH/lima_tendencies.f90 @@ -234,6 +234,7 @@ SUBROUTINE LIMA_TENDENCIES (PTSTEP, LDCOMPUTE, !! ! Delbeke/Vie 03/2022 : KHKO option ! J. Wurtz 03/2022 : new snow characteristics +! B. Vie 03/2022: Add option for 1-moment pristine ice !------------------------------------------------------------------------------- ! !* 0. DECLARATIONS