Skip to content

Commit

Permalink
Merge branch 'develop' into fuel-moisture-model-jm
Browse files Browse the repository at this point in the history
  • Loading branch information
janmandel committed Feb 6, 2019
2 parents 8b3acf7 + fb02002 commit 191b79f
Show file tree
Hide file tree
Showing 50 changed files with 9,965 additions and 2,617 deletions.
2 changes: 1 addition & 1 deletion Registry/Registry.EM
Expand Up @@ -38,6 +38,6 @@ package tracer_test1 tracer_opt==2 - tracer:tr17_1,tr17_2,t

package restofwrf use_wps_input==0 - -

package realonly use_wps_input==1 - state:u_gc,v_gc,t_gc,rh_gc,ght_gc,p_gc,xlat_gc,xlong_gc,ht_gc,tsk_gc,tavgsfc,tmn_gc,pslv_gc,sct_dom_gc,scb_dom_gc,greenfrac,albedo12m,lai12m,pd_gc,psfc_gc,intq_gc,pdhs,sh_gc,cl_gc,cf_gc,qv_gc,qr_gc,qc_gc,qs_gc,qi_gc,qg_gc,qh_gc,qni_gc,qnc_gc,icefrac_gc,prho_gc,pdrho_gc,qnr_gc,qns_gc,qng_gc,qnh_gc,soil_layers,soil_levels,st,sm,sw,soilt,soilm,sm000007,sm007028,sm028100,sm100255,st000007,st007028,st028100,st100255,sm000010,sm010040,sm040100,sm100200,sm010200,soilm000,soilm005,soilm020,soilm040,soilm160,soilm300,sw000010,sw010040,sw040100,sw100200,sw010200,soilw000,soilw005,soilw020,soilw040,soilw160,soilw300,st000010,st010040,st040100,st100200,st010200,soilt000,soilt005,soilt020,soilt040,soilt160,soilt300,fad0_urb2d,fad135_urb2d,fad45_urb2d,pad_urb2d,fad90_urb2d,rad_urb2d,car_urb2d,h2w_urb2d,svf_urb2d,z0s_urb2d,z0r_urb2d,z0m_urb2d,zds_urb2d,zdm_urb2d,zdr_urb2d,qnwfa_gc,qnwfa_now,qnwfa_jan,qnwfa_feb,qnwfa_mar,qnwfa_apr,qnwfa_may,qnwfa_jun,qnwfa_jul,qnwfa_aug,qnwfa_sep,qnwfa_oct,qnwfa_nov,qnwfa_dec,qnifa_gc,qnifa_now,qnifa_jan,qnifa_feb,qnifa_mar,qnifa_apr,qnifa_may,qnifa_jun,qnifa_jul,qnifa_aug,qnifa_sep,qnifa_oct,qnifa_nov,qnifa_dec,qntemp,qntemp2,hgtmaxw,pmaxw,tmaxw,umaxw,vmaxw,hgttrop,ptrop,ttrop,utrop,vtrop,urb_param
package realonly use_wps_input==1 - state:u_gc,v_gc,t_gc,rh_gc,ght_gc,p_gc,xlat_gc,xlong_gc,ht_gc,tsk_gc,tavgsfc,tmn_gc,pslv_gc,sct_dom_gc,scb_dom_gc,greenfrac,albedo12m,lai12m,pd_gc,psfc_gc,intq_gc,pdhs,sh_gc,cl_gc,cf_gc,qv_gc,qr_gc,qc_gc,qs_gc,qi_gc,qg_gc,qh_gc,qni_gc,qnc_gc,icefrac_gc,prho_gc,pdrho_gc,qnr_gc,qns_gc,qng_gc,qnh_gc,soil_layers,soil_levels,st,sm,sw,soilt,soilm,sm000007,sm007028,sm028100,sm100255,st000007,st007028,st028100,st100255,sm000010,sm010040,sm040100,sm100200,sm010200,soilm000,soilm005,soilm020,soilm040,soilm160,soilm300,sw000010,sw010040,sw040100,sw100200,sw010200,soilw000,soilw005,soilw020,soilw040,soilw160,soilw300,st000010,st010040,st040100,st100200,st010200,soilt000,soilt005,soilt020,soilt040,soilt160,soilt300,qnwfa_gc,qnwfa_now,qnwfa_jan,qnwfa_feb,qnwfa_mar,qnwfa_apr,qnwfa_may,qnwfa_jun,qnwfa_jul,qnwfa_aug,qnwfa_sep,qnwfa_oct,qnwfa_nov,qnwfa_dec,qnifa_gc,qnifa_now,qnifa_jan,qnifa_feb,qnifa_mar,qnifa_apr,qnifa_may,qnifa_jun,qnifa_jul,qnifa_aug,qnifa_sep,qnifa_oct,qnifa_nov,qnifa_dec,qntemp,qntemp2,hgtmaxw,pmaxw,tmaxw,umaxw,vmaxw,hgttrop,ptrop,ttrop,utrop,vtrop,urb_param

package tconly use_wps_input==2 - state:u_gc,v_gc,t_gc,rh_gc,ght_gc,p_gc,xlat_gc,xlong_gc,ht_gc,tsk_gc,tavgsfc,tmn_gc,pslv_gc,sct_dom_gc,scb_dom_gc,greenfrac,albedo12m,pd_gc,psfc_gc,intq_gc,pdhs,sh_gc,qv_gc,qr_gc,qc_gc,qs_gc,qi_gc,qg_gc,qh_gc,qni_gc,qnc_gc,qnr_gc,qns_gc,qng_gc,qnh_gc,icefrac_gc
84 changes: 45 additions & 39 deletions Registry/Registry.EM_COMMON

Large diffs are not rendered by default.

30 changes: 27 additions & 3 deletions Registry/Registry.NMM
Expand Up @@ -460,8 +460,8 @@ state real AKMS_OUT ij dyn_nmm 1 - rh023 "AKMS_OUT" "Outp
#
# module_PHYS
#
state real cd_out ij dyn_nmm 1 - rh0123d=(DownCopy) "CD_OUT" "sfc exch coeff for momentum" "m2 s-1"
state real ch_out ij dyn_nmm 1 - rh0123d=(DownCopy) "CH_OUT" "sfc exch coeff for heat" "m2 s-1"
state real cd_out ij dyn_nmm 1 - rh0123d=(DownCopy) "CD10" "sfc exch coeff for momentum at 10m" "m2 s-1"
state real ch_out ij dyn_nmm 1 - rh0123d=(DownCopy) "CH10" "sfc exch coeff for heat at 10m" "m2 s-1"

state real albase ij dyn_nmm 1 - i01rh023d=(DownCopy) "ALBASE" "Base albedo" ""
state real albedo ij dyn_nmm 1 - irh023 "ALBEDO" "Dynamic albedo" ""
Expand Down Expand Up @@ -1442,10 +1442,29 @@ rconfig integer ISFFLX namelist,physics 1 1
rconfig integer ideal_xland namelist,physics 1 1 rh "IDEAL_XLAND" "land=1(def), water=2, for ideal cases with no land-use" ""
rconfig integer IFSNOW namelist,physics 1 1 irh "IFSNOW" "" ""
rconfig integer ICLOUD namelist,physics 1 1 irh "ICLOUD" "" ""
rconfig integer cldovrlp namelist,physics 1 2 irh "cldovrlp" "1=random, 2=maximum-random, 3=maximum, 4=exponential, 5=exponential-random" ""
rconfig real swrad_scat namelist,physics 1 1 irh "SWRAD_SCAT" "SCATTERING FACTOR IN SWRAD" ""
rconfig integer surface_input_source namelist,physics 1 1 irh "surface_input_source" "1=static (fractional), 2=time dependent (dominant), 3=hybrid (not yet implemented)" ""
rconfig integer num_soil_layers namelist,physics 1 5 irh "num_soil_layers" "" ""
rconfig integer num_urban_layers namelist,physics 1 400 irh "num_urban_layers" "" ""

rconfig integer num_urban_ndm namelist,physics 1 1 irh "num_urban_ndm" "maximum number of street dimensions (ndm in BEP or BEM header)" ""
rconfig integer num_urban_ng namelist,physics 1 1 irh "num_urban_ng" "number of grid levels in the ground (ng_u in BEP or BEM header)" ""
rconfig integer num_urban_nwr namelist,physics 1 1 irh "num_urban_nwr" "number of grid levels in the walls or roof (nwr_u in BEP or BEM header)" ""
rconfig integer num_urban_ngb namelist,physics 1 1 irh "num_urban_ngb" "number of grid levels in the ground below building (ngb_u in BEM header)" ""
rconfig integer num_urban_nf namelist,physics 1 1 irh "num_urban_nf" "number of grid levels in the floors (nf_u in BEM header)" ""
rconfig integer num_urban_nz namelist,physics 1 1 irh "num_urban_nz" "maximum number of vertical levels in the urban grid (nz_um in BEP or BEM header)" ""
rconfig integer num_urban_nbui namelist,physics 1 1 irh "num_urban_nbui" "maximum number of types of buildings in an urban class (nbui_max in BEM header)" ""

rconfig integer urban_map_zrd derived 1 1 rh "urban_map_zrd" "urban mapping 1: ind_zrd" ""
rconfig integer urban_map_zwd derived 1 1 rh "urban_map_zwd" "urban mapping 2: ind_zwd" ""
rconfig integer urban_map_gd derived 1 1 rh "urban_map_gd" "urban mapping 3: ind_gd" ""
rconfig integer urban_map_zd derived 1 1 rh "urban_map_zd" "urban mapping 4: ind_zd" ""
rconfig integer urban_map_zdf derived 1 1 rh "urban_map_zdf" "urban mapping 5: ind_zdf" ""
rconfig integer urban_map_bd derived 1 1 rh "urban_map_bd" "urban mapping 6: ind_bd" ""
rconfig integer urban_map_wd derived 1 1 rh "urban_map_wd" "urban mapping 7: ind_wd" ""
rconfig integer urban_map_gbd derived 1 1 rh "urban_map_gbd" "urban mapping 8: ind_gbd" ""
rconfig integer urban_map_fbd derived 1 1 rh "urban_map_fbd" "urban mapping 9: ind_fbd" ""

rconfig integer sf_surface_mosaic namelist,physics 1 0 rh "sf_surface_mosaic" "1= mosaic, 0=no mosaic method, add by danli" ""
rconfig integer mosaic_cat namelist,physics 1 3 rh "mosaic_cat" "works when sf_surface_mosaic=1; it is the number of mosaic tiles" ""
rconfig integer mosaic_cat_soil derived 1 12 rh "mosaic_cat_soil" "should be the number of soil layers times the mosaic_cat" ""
Expand Down Expand Up @@ -1504,6 +1523,7 @@ rconfig logical lcurr_sf namelist,physics max_domains .f
ifdef HWRF=1
#added by Zhan Zhang for perturbings for SAS and PBL
rconfig integer ens_random_seed namelist,physics max_domains -1 irh "ens_random_seed" "ensemble random number generator initial seed"
rconfig integer ensda_physics_pert namelist,physics max_domains 0 irh "ensda_physics_pert" "0: no stochastic phys pert., 1: yes"
rconfig logical pert_sas namelist,physics 1 .false. irh "pert_sas" "ensemble choice:F, no pert, T, pert SAS"
rconfig logical pert_pbl namelist,physics 1 .false. irh "pert_pbl" "ensemble choice:F, no pert, T, pert PBL"
rconfig logical pert_Cd namelist,physics 1 .false. irh "pert_Cd" "ensemble choice:F, no pert, T, pert Cd"
Expand Down Expand Up @@ -1739,6 +1759,8 @@ package nssl_2momccn mp_physics==18 - moist:qv,qc,q
package nssl_1mom mp_physics==19 - moist:qv,qc,qr,qi,qs,qg,qh;scalar:qvolg
package nssl_1momlfo mp_physics==21 - moist:qv,qc,qr,qi,qs,qg
package nssl_2momg mp_physics==22 - moist:qv,qc,qr,qi,qs,qg;scalar:qndrop,qnr,qni,qns,qng,qvolg;state:re_cloud,re_ice,re_snow
package wsm7scheme mp_physics==24 - moist:qv,qc,qr,qi,qs,qg,qh;state:re_cloud,re_ice,re_snow
package wdm7scheme mp_physics==26 - moist:qv,qc,qr,qi,qs,qg,qh;scalar:qnn,qnc,qnr;state:re_cloud,re_ice,re_snow
package nuwrf3icescheme mp_physics==27 - moist:qv,qc,qr,qi,qs,qg
package p3_1category mp_physics==50 - moist:qv
package p3_1category_nc mp_physics==51 - moist:qv
Expand All @@ -1763,6 +1785,8 @@ package morr_two_moment_dfi mp_physics_dfi==10 - dfi_moist:dfi
package sbu_ylinscheme_dfi mp_physics==13 - dfi_moist:dfi_qv,dfi_qc,dfi_qr,dfi_qi,dfi_qs
package wdm5scheme_dfi mp_physics_dfi==14 - dfi_moist:dfi_qv,dfi_qc,dfi_qr,dfi_qi,dfi_qs;dfi_scalar:dfi_qnn,dfi_qnc,dfi_qnr;state:dfi_re_cloud,dfi_re_ice,dfi_re_snow
package wdm6scheme_dfi mp_physics_dfi==16 - dfi_moist:dfi_qv,dfi_qc,dfi_qr,dfi_qi,dfi_qs,dfi_qg;dfi_scalar:dfi_qnn,dfi_qnc,dfi_qnr;state:dfi_re_cloud,dfi_re_ice,dfi_re_snow
package wsm7scheme_dfi mp_physics_dfi==24 - dfi_moist:dfi_qv,dfi_qc,dfi_qr,dfi_qi,dfi_qs,dfi_qg,dfi_qh;state:dfi_re_cloud,dfi_re_ice,dfi_re_snow
package wdm7scheme_dfi mp_physics_dfi==26 - dfi_moist:dfi_qv,dfi_qc,dfi_qr,dfi_qi,dfi_qs,dfi_qg,dfi_qh;dfi_scalar:dfi_qnn,dfi_qnc,dfi_qnr;state:dfi_re_cloud,dfi_re_ice,dfi_re_snow
package nuwrf3icescheme_dfi mp_physics_dfi==27 - dfi_moist:dfi_qv,dfi_qc,dfi_qr,dfi_qi,dfi_qs,dfi_qg
package thompsonaero_dfi mp_physics_dfi==28 - dfi_moist:dfi_qv,dfi_qc,dfi_qr,dfi_qi,dfi_qs,dfi_qg;dfi_scalar:dfi_qni,dfi_qnr,dfi_qnc,dfi_qnwfa,dfi_qnifa;state:dfi_re_cloud,dfi_re_ice,dfi_re_snow
package etampnew_dfi mp_physics_dfi==95 - dfi_moist:dfi_qv,dfi_qc,dfi_qr,dfi_qs
Expand Down
12 changes: 12 additions & 0 deletions Registry/registry.dimspec
Expand Up @@ -52,6 +52,18 @@ dimspec snly 2 namelist=num_snow_layers z snow_layers
dimspec l 2 namelist=num_soil_layers z soil_layers
dimspec snsl 2 namelist=num_snso_layers z snso_layers
dimspec ulay 2 namelist=num_urban_layers z urban_layers

dimspec umap0 2 namelist=num_urban_ndm z num_urban_ndm
dimspec umap1 2 namelist=urban_map_zrd z urban_map_zrd
dimspec umap2 2 namelist=urban_map_zwd z urban_map_zwd
dimspec umap3 2 namelist=urban_map_gd z urban_map_gd
dimspec umap4 2 namelist=urban_map_zd z urban_map_zd
dimspec umap5 2 namelist=urban_map_zdf z urban_map_zdf
dimspec umap6 2 namelist=urban_map_bd z urban_map_bd
dimspec umap7 2 namelist=urban_map_wd z urban_map_wd
dimspec umap8 2 namelist=urban_map_gbd z urban_map_gbd
dimspec umap9 2 namelist=urban_map_fbd z urban_map_fbd

dimspec mocat 2 namelist=mosaic_cat z mosaic categories # danli
dimspec mocat2 2 namelist=mosaic_cat_soil z mosaic categories * soil layers # danli
dimspec uhi 2 namelist=num_urban_hi z urban_vertical_layers
Expand Down
16 changes: 14 additions & 2 deletions dyn_em/module_first_rk_step_part1.F
Expand Up @@ -351,6 +351,7 @@ SUBROUTINE first_rk_step_part1 ( grid , config_flags &
& , CLDFRA_DP=grid%cldfra_dp & ! ckay for subgrid cloud
& , CLDFRA_SH=grid%cldfra_sh &
& , icloud_bl=config_flags%icloud_bl & !JOE: subgrid BL clouds
& , cldovrlp=config_flags%cldovrlp & ! J. Henderson AER: cldovrlp namelist value
& , qc_bl=grid%qc_bl,cldfra_bl=grid%cldfra_bl & !JOE: subgrid bl clouds
& , re_cloud=grid%re_cloud, re_ice=grid%re_ice, re_snow=grid%re_snow & ! G. Thompson
& , has_reqc=grid%has_reqc, has_reqi=grid%has_reqi, has_reqs=grid%has_reqs & ! G. Thompson
Expand Down Expand Up @@ -645,7 +646,16 @@ SUBROUTINE first_rk_step_part1 ( grid , config_flags &
& ,UTYPE_URB2D=grid%utype_urb2d & !H urban
! Optional urban for BEP scheme
& ,SF_URBAN_PHYSICS=config_flags%sf_urban_physics &
& ,NUM_URBAN_LAYERS=config_flags%num_urban_layers & !multi-layer urban
& ,num_urban_ndm = config_flags%num_urban_ndm & !multi-layer urban
& ,urban_map_zrd = config_flags%urban_map_zrd & !multi-layer urban
& ,urban_map_zwd = config_flags%urban_map_zwd & !multi-layer urban
& ,urban_map_gd = config_flags%urban_map_gd & !multi-layer urban
& ,urban_map_zd = config_flags%urban_map_zd & !multi-layer urban
& ,urban_map_zdf = config_flags%urban_map_zdf & !multi-layer urban
& ,urban_map_bd = config_flags%urban_map_bd & !multi-layer urban
& ,urban_map_wd = config_flags%urban_map_wd & !multi-layer urban
& ,urban_map_gbd = config_flags%urban_map_gbd & !multi-layer urban
& ,urban_map_fbd = config_flags%urban_map_fbd & !multi-layer urban
& ,NUM_URBAN_HI=config_flags%num_urban_hi & !multi-layer urban
& ,TSK_RURAL=grid%tsk_rural & !multi-layer urban
& ,TRB_URB4D=grid%trb_urb4d,TW1_URB4D=grid%tw1_urb4d & !multi-layer urban
Expand Down Expand Up @@ -974,6 +984,8 @@ SUBROUTINE first_rk_step_part1 ( grid , config_flags &
& ,QI_CURR=moist(ims,kms,jms,P_QI), F_QI=F_QI &
& ,QS_CURR=moist(ims,kms,jms,P_QS), F_QS=F_QS &
& ,QG_CURR=moist(ims,kms,jms,P_QG), F_QG=F_QG &
& ,QNIFA_CURR=scalar(ims,kms,jms,P_QNIFA),F_QNIFA=F_QNIFA &
& ,QNWFA_CURR=scalar(ims,kms,jms,P_QNWFA),F_QNWFA=F_QNWFA &
& ,HOL=HOL, MOL=grid%mol, REGIME=grid%REGIME &
!mynn mp@
& ,QKE=grid%qke, Sh3d=grid%sh3d &
Expand All @@ -990,7 +1002,7 @@ SUBROUTINE first_rk_step_part1 ( grid , config_flags &
& ,bl_mynn_edmf=config_flags%bl_mynn_edmf &
& ,bl_mynn_edmf_mom=config_flags%bl_mynn_edmf_mom &
& ,bl_mynn_edmf_tke=config_flags%bl_mynn_edmf_tke &
& ,bl_mynn_edmf_part=config_flags%bl_mynn_edmf_part &
& ,bl_mynn_mixscalars=config_flags%bl_mynn_mixscalars &
& ,bl_mynn_cloudmix=config_flags%bl_mynn_cloudmix &
& ,bl_mynn_mixqt=config_flags%bl_mynn_mixqt &
& ,edmf_a=grid%edmf_a,edmf_w=grid%edmf_w &
Expand Down
43 changes: 0 additions & 43 deletions dyn_em/module_initialize_real.F
Expand Up @@ -3068,34 +3068,6 @@ SUBROUTINE init_domain_rk ( grid &
grid%MH_URB2D(i,j) = grid%URB_PARAM(i,92,j)
grid%STDH_URB2D(i,j) = grid%URB_PARAM(i,93,j)
ENDIF
grid%H2W_URB2D(i,j) = grid%URB_PARAM(i,101,j)
grid%Z0S_URB2D(i,j) = grid%URB_PARAM(i,103,j)
grid%ZDS_URB2D(i,j) = grid%URB_PARAM(i,104,j)
grid%ZDM_URB2D(i,j) = grid%URB_PARAM(i,117,j)
IF(grid%URB_PARAM(i,100,j).eq.0)THEN
grid%CAR_URB2D(i,j) = 1.0
ELSE
grid%CAR_URB2D(i,j) = grid%URB_PARAM(i,100,j)
END IF
IF(grid%URB_PARAM(i,102,j).eq.0)THEN
grid%SVF_URB2D(i,j) = 1.0
ELSE
grid%SVF_URB2D(i,j) = grid%URB_PARAM(i,102,j)
END IF
END DO
END DO

DO j = jts , MIN(jde-1,jte)
DO i = its , MIN(ide-1,ite)
IF ( skip_middle_points_t ( ids , ide , jds , jde , i , j , em_width , hold_ups ) ) CYCLE
DO k = 1, 15
grid%FAD0_URB2D(i,k,j) = grid%URB_PARAM(i,k,j)
grid%FAD135_URB2D(i,k,j) = grid%URB_PARAM(i,k+15,j)
grid%FAD45_URB2D(i,k,j) = grid%URB_PARAM(i,k+30,j)
grid%FAD90_URB2D(i,k,j) = grid%URB_PARAM(i,k+45,j)
grid%PAD_URB2D(i,k,j) = grid%URB_PARAM(i,k+60,j)
grid%RAD_URB2D(i,k,j) = grid%URB_PARAM(i,k+75,j)
END DO
END DO
END DO

Expand All @@ -3106,25 +3078,10 @@ SUBROUTINE init_domain_rk ( grid &
IF ( config_flags%sf_urban_physics==1 ) THEN
grid%LF_URB2D(i,k,j) = grid%URB_PARAM(i,k+95,j)
ENDIF
grid%Z0M_URB2D(i,k,j) = grid%URB_PARAM(i,k+112,j)
END DO
END DO
END DO

DO j = jts , MIN(jde-1,jte)
DO i = its , MIN(ide-1,ite)
IF ( skip_middle_points_t ( ids , ide , jds , jde , i , j , em_width , hold_ups ) ) CYCLE
grid%Z0R_URB2D(i,1,j) = grid%URB_PARAM(i,105,j)
grid%Z0R_URB2D(i,2,j) = grid%URB_PARAM(i,107,j)
grid%Z0R_URB2D(i,3,j) = grid%URB_PARAM(i,109,j)
grid%Z0R_URB2D(i,4,j) = grid%URB_PARAM(i,111,j)
grid%ZDR_URB2D(i,1,j) = grid%URB_PARAM(i,106,j)
grid%ZDR_URB2D(i,2,j) = grid%URB_PARAM(i,108,j)
grid%ZDR_URB2D(i,3,j) = grid%URB_PARAM(i,110,j)
grid%ZDR_URB2D(i,4,j) = grid%URB_PARAM(i,112,j)
END DO
END DO

END IF

! Adjustments for the seaice field PRIOR to the grid%tslb computations. This is
Expand Down

0 comments on commit 191b79f

Please sign in to comment.