Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions Registry/Registry.EM_COMMON
Original file line number Diff line number Diff line change
Expand Up @@ -2484,6 +2484,9 @@ rconfig integer bl_pbl_physics namelist,physics max_domains -1
rconfig integer tke_budget namelist,physics max_domains 0 rh "tke_budget" "" ""
rconfig integer ysu_topdown_pblmix namelist,physics 1 1 rh "ysu_topdown_pblmix" "" ""
rconfig integer shinhong_tke_diag namelist,physics max_domains 0 rh "shinhong_tke_diag" "" ""
rconfig logical shinhong_scu_mixing namelist,physics max_domains .false. rh "shinhong_scu_mixing" "strato-cumulus(scu ) downdraft mixing for shinhong pbl" ""
rconfig logical shinhong_nonlocal_flux namelist,physics max_domains .false. rh "shinhong_nonlocal_flux" ".false.:counter-gradient (ysu), .true.:shinhong-LES type nonlocal flux" ""
rconfig logical shinhong_ke_dissipation namelist,physics max_domains .false. rh "shinhong_ke_dissipation" "additional heating due to kinetic energy dissipation" ""
rconfig logical bl_mynn_tkeadvect namelist,physics max_domains .false. rh "bl_mynn_tkeadvect" "" ""
rconfig integer bl_mynn_cloudpdf namelist,physics 1 2 irh "bl_mynn_cloudpdf" "0:original, 1:Kuwano, 2:Chaboreau-Bechtold" ""
rconfig integer bl_mynn_mixlength namelist,physics 1 1 irh "bl_mynn_mixlength" "0:original,1:operational,2:new blending&cloud mix length" ""
Expand Down
3 changes: 3 additions & 0 deletions dyn_em/module_first_rk_step_part1.F
Original file line number Diff line number Diff line change
Expand Up @@ -1195,6 +1195,9 @@ SUBROUTINE first_rk_step_part1 ( grid , config_flags &
& ,ZNT=grid%znt &
& ,ysu_topdown_pblmix=config_flags%ysu_topdown_pblmix &
& ,shinhong_tke_diag=config_flags%shinhong_tke_diag &
& ,shinhong_scu_mixing=config_flags%shinhong_scu_mixing &
& ,shinhong_nonlocal_flux=config_flags%shinhong_nonlocal_flux &
& ,shinhong_ke_dissipation=config_flags%shinhong_ke_dissipation &
! paj: topo_wind
& ,CTOPO=grid%ctopo,CTOPO2=grid%ctopo2 &
! variables added for BEP
Expand Down
4 changes: 4 additions & 0 deletions main/depend.common
Original file line number Diff line number Diff line change
Expand Up @@ -627,6 +627,10 @@ module_madwrf.o: \
module_bl_ysu.o: \
ccpp_kind_types.o \
physics_mmm/bl_ysu.o

module_bl_shinhong.o: \
ccpp_kind_types.o \
physics_mmm/bl_shinhong.o


module_bl_myjpbl.o: \
Expand Down
5 changes: 3 additions & 2 deletions phys/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -255,8 +255,9 @@ PHYSMMM_MODULES = \
physics_mmm/mp_wsm6.o \
physics_mmm/mp_wsm6_effectRad.o \
physics_mmm/mp_radar.o \
physics_mmm/bl_gwdo.o \
physics_mmm/bl_ysu.o
physics_mmm/bl_gwdo.o \
physics_mmm/bl_shinhong.o \
physics_mmm/bl_ysu.o

NOAHMP_MODULES = \
noahmp/drivers/wrf/NoahmpWRFinitMod.o \
Expand Down
2,706 changes: 387 additions & 2,319 deletions phys/module_bl_shinhong.F

Large diffs are not rendered by default.

35 changes: 26 additions & 9 deletions phys/module_pbl_driver.F
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,9 @@ SUBROUTINE pbl_driver( &
,windfarm_wake_model, windfarm_overlap_method &
,ysu_topdown_pblmix &
,shinhong_tke_diag &
,shinhong_scu_mixing &
,shinhong_nonlocal_flux &
,shinhong_ke_dissipation &
! OPTIONAL for TEMF scheme
,te_temf,km_temf,kh_temf &
,shf_temf,qf_temf,uw_temf,vw_temf &
Expand Down Expand Up @@ -428,6 +431,9 @@ SUBROUTINE pbl_driver( &
INTENT(IN ) :: LOWLYR
!
LOGICAL, INTENT(IN ) :: warm_rain
LOGICAL, INTENT(IN ) :: shinhong_scu_mixing
LOGICAL, INTENT(IN ) :: shinhong_nonlocal_flux
LOGICAL, INTENT(IN ) :: shinhong_ke_dissipation
LOGICAL, INTENT(IN ) :: is_CAMMGMP_used !BSINGH:01/31/2013: Added for CAMUWPBL
LOGICAL, OPTIONAL, INTENT(IN ) :: restart,cycling !used by mynn

Expand Down Expand Up @@ -1311,33 +1317,44 @@ SUBROUTINE pbl_driver( &
PRESENT( hol ) ) THEN
!
CALL shinhong( &
U3D=u_phytmp,V3D=v_phytmp,TH3D=th_phy,T3D=t_phy &
U3D=u_phytmp,V3D=v_phytmp,T3D=t_phy &
,QV3D=qv_curr,QC3D=qc_curr,QI3D=qi_curr &
,P3D=p_phy,P3DI=p8w,PI3D=pi_phy &
,RUBLTEN=rublten,RVBLTEN=rvblten &
,RTHBLTEN=rthblten,RQVBLTEN=rqvblten &
,RQCBLTEN=rqcblten,RQIBLTEN=rqiblten &
,FLAG_QI=flag_qi &
,FLAG_QI=flag_qi,FLAG_QC=flag_qc &
,CP=cp,G=g,ROVCP=rcp,RD=r_D,ROVG=rovg &
,DZ8W=dz8w,XLV=XLV,RV=r_v,PSFC=PSFC &
,ZNU=znu,ZNW=znw,P_TOP=p_top &
,ZNT=znt,UST=ust,HPBL=pblh &
,PSIM=fm,PSIH=fhh,XLAND=xland &
,HFX=hfx,QFX=qfx &
,U10=u10,V10=v10 &
,UOCE=uoce,VOCE=voce &
! paj
,CTOPO=ctopo,CTOPO2=ctopo2 &
,SHINHONG_TKE_DIAG=shinhong_tke_diag &
,shinhong_nonlocal_flux=shinhong_nonlocal_flux &
,shinhong_scu_mixing=shinhong_scu_mixing &
,shinhong_dissi_heating=shinhong_ke_dissipation &
,tke=tke_pbl,el=el_pbl,corf=f &
,CTOPO=ctopo,CTOPO2=ctopo2,dx=dx2d &
,WSPD=wspd,BR=br,DT=dtbl,KPBL2D=kpbl &
,EP1=ep_1,EP2=ep_2,KARMAN=karman &
,EXCH_H=exch_h,REGIME=regime &
! for grims shallow convection with shinhongpbl
,EXCH_H=exch_h,EXCH_M=exch_m &
,RTHRATEN=RTHRATEN &
! for multilayer UCM
,IDIFF=idiff,FLAG_BEP=flag_bep,FRC_URB2D=frc_urb2d &
,A_U_BEP=a_u_bep,A_V_BEP=a_v_bep,A_T_BEP=a_t_bep &
,A_Q_BEP=a_q_bep &
,A_E_BEP=a_e_bep,B_U_BEP=b_u_bep,B_V_BEP=b_v_bep &
,B_T_BEP=b_t_bep,B_Q_BEP=b_q_bep &
,B_E_BEP=b_e_bep,DLG_BEP=dlg_bep &
,DL_U_BEP=dl_u_bep,SF_BEP=sf_bep,VL_BEP=vl_bep &
! for grims shallow convection
,WSTAR=wstar,DELTA=delta &
,TKE_PBL=tke_pbl,EL_PBL=el_pbl,CORF=f &
,errmsg=errmsg,errflg=errflg &
,IDS=ids,IDE=ide,JDS=jds,JDE=jde,KDS=kds,KDE=kde &
,IMS=ims,IME=ime,JMS=jms,JME=jme,KMS=kms,KME=kme &
,ITS=its,ITE=ite,JTS=jts,JTE=jte,KTS=kts,KTE=kte &
,DX=dx,DY=dy &
)
ELSE
WRITE ( message , FMT = '(A,7(L1,1X))' ) &
Expand Down
22 changes: 12 additions & 10 deletions phys/module_physics_init.F
Original file line number Diff line number Diff line change
Expand Up @@ -3892,16 +3892,18 @@ SUBROUTINE bl_init(STEPBL,BLDT,DT,RUBLTEN,RVBLTEN,RTHBLTEN, &
CASE (SHINHONGSCHEME)
if(isfc .ne. 1)CALL wrf_error_fatal &
( 'module_physics_init: Use sf_sfclay_physics= 1 or 91 for this pbl option' )
IF ((SF_URBAN_PHYSICS.eq.2).OR.(SF_URBAN_PHYSICS.EQ.3)) CALL wrf_error_fatal &
( 'module_physics_init: use ysu (option1), myj (option 2), or boulac (option 8) with BEP/BEM urban scheme' )
CALL shinhonginit(RUBLTEN,RVBLTEN,RTHBLTEN,RQVBLTEN,&
RQCBLTEN,RQIBLTEN,TKE_PBL,P_QI, &
PARAM_FIRST_SCALAR, &
restart, &
allowed_to_read , &
ids, ide, jds, jde, kds, kde, &
ims, ime, jms, jme, kms, kme, &
its, ite, jts, jte, kts, kte )
! if(isfc .ne. 1)CALL wrf_error_fatal &
! ( 'module_physics_init: Use sf_sfclay_physics= 1 or 91 for this pbl option' )
! IF ((SF_URBAN_PHYSICS.eq.2).OR.(SF_URBAN_PHYSICS.EQ.3)) CALL wrf_error_fatal &
! ( 'module_physics_init: use ysu (option1), myj (option 2), or boulac (option 8) with BEP/BEM urban scheme' )
! CALL shinhonginit(RUBLTEN,RVBLTEN,RTHBLTEN,RQVBLTEN,&
! RQCBLTEN,RQIBLTEN,TKE_PBL,P_QI, &
! PARAM_FIRST_SCALAR, &
! restart, &
! allowed_to_read , &
! ids, ide, jds, jde, kds, kde, &
! ims, ime, jms, jme, kms, kme, &
! its, ite, jts, jte, kts, kte )
CASE (MRFSCHEME)
if(isfc .ne. 1)CALL wrf_error_fatal &
( 'module_physics_init: Use sf_sfclay_physics= 1 or 91 for this pbl option' )
Expand Down
2 changes: 1 addition & 1 deletion phys/physics_mmm
Submodule physics_mmm updated 3 files
+5 −0 Makefile.mpas
+2,610 −0 bl_shinhong.F90
+2 −2 sf_mynn.F90