Skip to content
Merged
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
11 changes: 9 additions & 2 deletions Registry/Registry.EM_COMMON
Original file line number Diff line number Diff line change
Expand Up @@ -486,8 +486,11 @@ state real dfi_qh ikjftb dfi_moist 1 - \
rusdf=(bdy_interp:dt) "DFI_QHAIL" "Hail mixing ratio" "kg kg-1"
state real qvold ikj misc 1 - rdu "QVOLD" "Water vapor mixing ratio, old time step" "kg kg-1"
state real rimi ikj misc 1 - irh "RIMI" "riming intensity" "fraction"
state real qnwfa2d ij misc 1 - i014rhdu "QNWFA2D" "Surface aerosol number conc emission" "kg-1 s-1"
state real qnifa2d ij misc 1 - i014rhdu "QNIFA2D" "Surface dust number conc emission" "kg-1 s-1"
state real qnwfa2d ij misc 1 - i014{17}rhdu "QNWFA2D" "Surface aerosol number conc emission" "kg-1 s-1"
state real qnifa2d ij misc 1 - i014{17}rhdu "QNIFA2D" "Surface dust number conc emission" "kg-1 s-1"
state real qnbca2d ij misc 1 - i014{17}rhdu "QNBCA2D" "Surface black carbon number conc emission" "kg-1 s-1"
state real qnocbb2d ij misc 1 - i014{17}rhdu "QNOCBB2D" "Surface organic carbon biomass burning number conc emission" "kg-1 s-1"
state real qnbcbb2d ij misc 1 - i014{17}rhdu "QNBCBB2D" "Surface black carbon biomass burning number conc emission" "kg-1 s-1"
Comment on lines +489 to +493
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@twjuliano
Since these are i4 and i1, that means that we need these variables in WPS. Have mods to the WPS tables been provided, and where is this global static data?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@davegill Yes, I have added the mods for METGRID.TBL to the previous WPS PR (wrf-model/WPS#190). The update global static file (GOCART climatology) is available in the Google Drive link posted in this PR as well as the WPS PR (https://drive.google.com/file/d/1BYflyu65kP5giRYbTzKo6y4iSnTfb1Fw/view?usp=sharing).

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@twjuliano If you place these fields in stream 17, perhaps you should remove '4' from the group.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@weiwangncar OK, I can do that. I maintained what was there previously just in case...

Copy link
Collaborator

@weiwangncar weiwangncar Dec 28, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@twjuliano When you remove stream 4 from these lines, perhaps you could also line up the columns? This is just for easy viewing and tidiness of the code. That is if they are not lined up already.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@weiwangncar Sure thing, will do.

state real re_cloud ikj misc 1 - r "RE_CLOUD" "Effective radius cloud water" "m"
state real re_ice ikj misc 1 - r "RE_ICE" "Effective radius cloud ice" "m"
state real re_snow ikj misc 1 - r "RE_SNOW" "Effective radius snow" "m"
Expand Down Expand Up @@ -2499,6 +2502,7 @@ rconfig real mp_zero_out_thresh namelist,physics 1 1.e-8
rconfig real seaice_threshold namelist,physics 1 100 h "seaice_threshold" "tsk below which which water points are set to sea ice for slab scheme" "K"
rconfig logical bmj_rad_feedback namelist,physics max_domains .false. - "if true include radiative effects of bmj clouds" ""
rconfig integer sst_update namelist,physics 1 0 h "sst_update" "update sst from wrflowinp file 0=no, 1=yes" ""
rconfig integer qna_update namelist,physics 1 0 h "qna_update" "update aerosol in Thompson-MP-Aero from wrfqnainp file 0=no, 1=yes" ""

rconfig integer sst_skin namelist,physics 1 0 h "sst_skin" "calculate sst skin temperature 0=no, 1=yes" ""
rconfig integer tmn_update namelist,physics 1 0 h "tmn_update" "update tmn from calculation 0=no, 1=yes" ""
Expand Down Expand Up @@ -2593,6 +2597,9 @@ rconfig integer tracer_pblmix namelist,physics max_domains 1
rconfig logical use_aero_icbc namelist,physics 1 .false. rh "use_aero_icbc" "Use GOCART climo 3D aerosols IC/BC data in Thompson-MP-Aero" "logical flag"
rconfig logical use_rap_aero_icbc namelist,physics 1 .false. r "use_rap_aero_icbc" "Use GOCART climo 3D aerosols IC/BC data in Thompson-MP-Aero from RAP" "logical flag"
rconfig integer aer_init_opt derived 1 0 irh "aer_init_opt" "surrogate to handle aerosol IC/BC data in Thompson-MP-Aero: 0=no IC/BC aerosol, 1=climo, 2=first guess"
rconfig logical wif_fire_emit namelist,physics 1 .false. irh "wif_fire_emit" "Activate biomass burning emissionsu in Thompson-MP-Aero" " "
rconfig integer aer_fire_emit_opt derived 1 0 irh "aer_fire_emit_opt" "surrogate to handle aerosol fire emissions in Thompson-MP-Aero: 0=no fire emissions, 1=OC only, 2=OC+BC" " "
rconfig integer wif_fire_inj namelist,physics max_domains 1 irh "wif_fire_inj" "Vertically distribute biomass burning emissions in Thompson-MP-Aero" " "
rconfig integer use_mp_re namelist,physics 1 1 h "use_mp_re" "use effective radii computed in some mp schemes in RRTMG" "flag"
rconfig logical insert_init_cloud namelist,physics 1 .false. irh "insert_init_cloud" "Insert diagnostic initial cloud using icloud=3 method (Thompson)" "logical flag"

Expand Down
24 changes: 24 additions & 0 deletions Registry/registry.new3d_wif
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ rconfig integer wif_input_opt namelist,domains 1 1

state real qnwfa_gc i{wif}j dyn_em 1 Z i1 "QNWFA" "water-friendly aerosol num concentration" "# kg-1"
state real qnifa_gc i{wif}j dyn_em 1 Z i1 "QNIFA" "water-friendly aerosol num concentration" "# kg-1"
state real qnbca_gc i{wif}j dyn_em 1 Z i1 "QNBCA" "black carbon aerosol num concentration" "# kg-1"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@twjuliano
Tim,
Where do the fields for organic carbon biomass burning and black carbon biomass burning come from? This is only black carbon.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@davegill The organic carbon and black carbon biomass burning emissions are 2D fields that are added to the 3D QNWFA and QNBCA scalars, respectively, in mp_thompson.

state real p_wif_gc i{wif}j dyn_em 1 Z i1 "P_WIF" "Pressure for first guess aerosol fields from metgrid" "Pa"

state real p_wif_now i{wif}j dyn_em 1 Z - "P_WIF_NOW" "Pressure for Water Ice Friendly Aerosols Now" "Pa"
Expand Down Expand Up @@ -62,15 +63,38 @@ state real i_wif_oct i{wif}j dyn_em 1 Z i1
state real i_wif_nov i{wif}j dyn_em 1 Z i1 "I_WIF_NOV" "Background Ice Friendly Aerosol option Nov" "# kg-1"
state real i_wif_dec i{wif}j dyn_em 1 Z i1 "I_WIF_DEC" "Background Ice Friendly Aerosol option Dec" "# kg-1"

state real b_wif_now i{wif}j dyn_em 1 Z - "B_WIF_NOW" "Background Black Carbon Aerosol option Now" "# kg-1"
state real b_wif_jan i{wif}j dyn_em 1 Z i1 "B_WIF_JAN" "Background Black Carbon Aerosol option Jan" "# kg-1"
state real b_wif_feb i{wif}j dyn_em 1 Z i1 "B_WIF_FEB" "Background Black Carbon Aerosol option Feb" "# kg-1"
state real b_wif_mar i{wif}j dyn_em 1 Z i1 "B_WIF_MAR" "Background Black Carbon Aerosol option Mar" "# kg-1"
state real b_wif_apr i{wif}j dyn_em 1 Z i1 "B_WIF_APR" "Background Black Carbon Aerosol option Apr" "# kg-1"
state real b_wif_may i{wif}j dyn_em 1 Z i1 "B_WIF_MAY" "Background Black Carbon Aerosol option May" "# kg-1"
state real b_wif_jun i{wif}j dyn_em 1 Z i1 "B_WIF_JUN" "Background Black Carbon Aerosol option Jun" "# kg-1"
state real b_wif_jul i{wif}j dyn_em 1 Z i1 "B_WIF_JUL" "Background Black Carbon Aerosol option Jul" "# kg-1"
state real b_wif_aug i{wif}j dyn_em 1 Z i1 "B_WIF_AUG" "Background Black Carbon Aerosol option Aug" "# kg-1"
state real b_wif_sep i{wif}j dyn_em 1 Z i1 "B_WIF_SEP" "Background Black Carbon Aerosol option Sep" "# kg-1"
state real b_wif_oct i{wif}j dyn_em 1 Z i1 "B_WIF_OCT" "Background Black Carbon Aerosol option Oct" "# kg-1"
state real b_wif_nov i{wif}j dyn_em 1 Z i1 "B_WIF_NOV" "Background Black Carbon Aerosol option Nov" "# kg-1"
state real b_wif_dec i{wif}j dyn_em 1 Z i1 "B_WIF_DEC" "Background Black Carbon Aerosol option Dec" "# kg-1"

package use_wif_input wif_input_opt==1 - state:p_wif_gc,p_wif_now,p_wif_jan,p_wif_feb,p_wif_mar,p_wif_apr,p_wif_may,p_wif_jun,p_wif_jul,p_wif_aug,p_wif_sep,p_wif_oct,p_wif_nov,p_wif_dec,qnwfa_gc,w_wif_now,w_wif_jan,w_wif_feb,w_wif_mar,w_wif_apr,w_wif_may,w_wif_jun,w_wif_jul,w_wif_aug,w_wif_sep,w_wif_oct,w_wif_nov,w_wif_dec,qnifa_gc,i_wif_now,i_wif_jan,i_wif_feb,i_wif_mar,i_wif_apr,i_wif_may,i_wif_jun,i_wif_jul,i_wif_aug,i_wif_sep,i_wif_oct,i_wif_nov,i_wif_dec

package use_wif_input_bc wif_input_opt==2 - scalar:qnbca;state:qnbca2d,p_wif_gc,p_wif_now,p_wif_jan,p_wif_feb,p_wif_mar,p_wif_apr,p_wif_may,p_wif_jun,p_wif_jul,p_wif_aug,p_wif_sep,p_wif_oct,p_wif_nov,p_wif_dec,qnwfa_gc,w_wif_now,w_wif_jan,w_wif_feb,w_wif_mar,w_wif_apr,w_wif_may,w_wif_jun,w_wif_jul,w_wif_aug,w_wif_sep,w_wif_oct,w_wif_nov,w_wif_dec,qnifa_gc,i_wif_now,i_wif_jan,i_wif_feb,i_wif_mar,i_wif_apr,i_wif_may,i_wif_jun,i_wif_jul,i_wif_aug,i_wif_sep,i_wif_oct,i_wif_nov,i_wif_dec,b_wif_now,b_wif_jan,b_wif_feb,b_wif_mar,b_wif_apr,b_wif_may,b_wif_jun,b_wif_jul,b_wif_aug,b_wif_sep,b_wif_oct,b_wif_nov,b_wif_dec

package emit_oc_bb aer_fire_emit_opt==1 - state:qnocbb2d
package emit_ocbc_bb aer_fire_emit_opt==2 - state:qnocbb2d,qnbcbb2d

state real qnwfa ikjftb scalar 1 - \
i0rhusdf=(bdy_interp:dt) "QNWFA" "water-friendly aerosol number con" "# kg(-1)"
state real qnifa ikjftb scalar 1 - \
i0rhusdf=(bdy_interp:dt) "QNIFA" "ice-friendly aerosol number con" "# kg(-1)"
state real qnbca ikjftb scalar 1 - \
i0rhusdf=(bdy_interp:dt) "QNBCA" "black carbon aerosol number con" "# kg(-1)"

state real dfi_qnwfa ikjftb dfi_scalar 1 - \
i0rhusdf=(bdy_interp:dt) "DFI_QNWFA" "DFI water-friendly aerosol number con" "# kg(-1)"
state real dfi_qnifa ikjftb dfi_scalar 1 - \
i0rhusdf=(bdy_interp:dt) "DFI_QNIFA" "DFI ice-friendly aerosol number con" "# kg(-1)"
state real dfi_qnbca ikjftb dfi_scalar 1 - \
i0rhusdf=(bdy_interp:dt) "DFI_QNBCA" "DFI black carbon aerosol number con" "# kg(-1)"

33 changes: 33 additions & 0 deletions dyn_em/module_em.F
Original file line number Diff line number Diff line change
Expand Up @@ -2519,6 +2519,39 @@ SUBROUTINE bound_tke ( tke, tke_upper_bound, &

END SUBROUTINE bound_tke

!-----------------------------------------------------------------------

SUBROUTINE bound_qna ( qna, &
ids,ide, jds,jde, kds,kde, &
ims,ime, jms,jme, kms,kme, &
its,ite, jts,jte, kts,kte )

IMPLICIT NONE

INTEGER, INTENT(IN ) :: ids,ide, jds,jde, kds,kde, &
ims,ime, jms,jme, kms,kme, &
its,ite, jts,jte, kts,kte

REAL, DIMENSION( ims:ime , kms:kme , jms:jme ), INTENT(INOUT) :: qna

INTEGER :: i,k,j

!<DESCRIPTION>
!
! bounds aerosol between zero and current value
!
!</DESCRIPTION>

DO j=jts,min(jte,jde-1)
DO k=kts,kte-1
DO i=its,min(ite,ide-1)
qna(i,k,j) = max(qna(i,k,j),0.)
ENDDO
ENDDO
ENDDO

END SUBROUTINE bound_qna

!----------------------------------------------------------------------------------
!cyl: Implement the forward Lagrangian trajectory calculation in WRF
!Chiaying Lee RSMAS/UM
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 @@ -390,6 +390,8 @@ SUBROUTINE first_rk_step_part1 ( grid , config_flags &
& , QNDROP=scalar(ims,kms,jms,P_QNDROP), F_QNDROP=F_QNDROP &
& ,QNIFA=scalar(ims,kms,jms,P_QNIFA),F_QNIFA=F_QNIFA & !Trude
& ,QNWFA=scalar(ims,kms,jms,P_QNWFA),F_QNWFA=F_QNWFA & !Trude
& ,QNBCA=scalar(ims,kms,jms,P_QNBCA) &
& ,wif_input_opt=config_flags%wif_input_opt &
& ,qc_tot=grid%qc_tot, qi_tot=grid%qi_tot & ! Solar diag
& ,ACSWUPT=grid%acswupt ,ACSWUPTC=grid%acswuptc &
& ,ACSWDNT=grid%acswdnt ,ACSWDNTC=grid%acswdntc &
Expand Down Expand Up @@ -1075,6 +1077,7 @@ SUBROUTINE first_rk_step_part1 ( grid , config_flags &
& ,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 &
& ,QNBCA_CURR=scalar(ims,kms,jms,P_QNBCA),F_QNBCA=F_QNBCA &
& ,HOL=HOL, MOL=grid%mol, REGIME=grid%REGIME &
!mynn mp@
& ,QKE=grid%qke, Sh3d=grid%sh3d &
Expand Down
Loading