Skip to content

Commit

Permalink
P3 update for v4.5 (#1821)
Browse files Browse the repository at this point in the history
TYPE: Bug fix + enhancement

KEYWORDS: P3, microphysics

SOURCE: Hugh Morrison (NCAR)

DESCRIPTION OF CHANGES: 

Minor bugs in the change in rain number during ice melting when ice amounts are tiny (almost no impact), 3-moment category interaction and merging (non-answer-changing in WRF), the GEM wrapper (not relevant to WRF), and a minor bug in lookup table 2 (formula for diagnostic mu_i). Inaccurate description of the output qzi variable in the Registry (non-answer-changing). Streamline and code cleanup needed for the lookup table generation codes.

 - P3 module code cleanup (e.g., consistent line spacing, clarifying comments, etc.)
 - Change in the internal P3 module name (thus requiring changes to the "use" statements in module_microphysics_driver.F and module_physics_init.F)
 - Minor bug fixes (addressing bugs noted above)
 - Refactoring of the GEM wrapper
 - Feature change to the lookup table 1 for 3-moment ice (changing number of mu indices from 11 to 10)
 - Cleanup of the lookup table generation codes
 - Fix to description of the output variable "qzi" in Registry.EM_COMMON
 - Link to new lookup table file names in the top-level Makefile

LIST OF MODIFIED FILES: 
	modified:   Makefile
	modified:   phys/module_microphysics_driver.F
	modified:   phys/module_mp_p3.F
	modified:   phys/module_physics_init.F
	deleted:    run/create_p3_lookupTable_1-2mom_v5.3.f90
	deleted:    run/create_p3_lookupTable_1-3mom_v5.1.7.f90
	deleted:    run/create_p3_lookupTable_2-v5.2.3.f90
	deleted:    run/p3_lookupTable_1.dat-3momI_v5.1.7
	deleted:    run/p3_lookupTable_1.dat-5.3-2momI
	deleted:    run/p3_lookupTable_2.dat-2momI_v5.2.3
New files added:
	run/create_p3_lookupTable_1.f90-v5.4
	run/create_p3_lookupTable_2.f90-v5.3
	run/p3_lookupTable_1.dat-v5.4_2momI
	run/p3_lookupTable_1.dat-v5.4_3momI
	run/p3_lookupTable_2.dat-v5.3

TESTS CONDUCTED:
1. All problems and issues have been resolved. P3v4.5.2 has been extensively tested in the GEM model for a large suite of real weather test cases. All four P3 mp options in WRF run successfully and give good results for the idealized supercell test case (with only minor changes form the previous version of P3).
2. Passed regression tests.

RELEASE NOTE: Further enhancements and minor bug fixes to P3 microphysics (updated to P3v4.5.2). Fix minor bugs in the change in rain number during ice melting when ice amounts are tiny (almost no impact), and a minor bug in lookup table 2 (formula for diagnostic mu_i). Update 3-moment category interaction and merging (non-answer-changing in WRF), and refactor the GEM wrapper (not relevant to WRF). Correct an inaccurate description of the output qzi variable in the Registry (non-answer-changing). Streamline and code cleanup for the lookup table generation codes.
  • Loading branch information
hmorrison100 committed Feb 23, 2023
1 parent 6211855 commit 0279ccc
Show file tree
Hide file tree
Showing 11 changed files with 496,641 additions and 498,223 deletions.
12 changes: 6 additions & 6 deletions Makefile
Expand Up @@ -585,9 +585,9 @@ em_real : wrf
ln -sf ../../run/aerosol_plev.formatted . ; \
ln -sf ../../run/eclipse_besselian_elements.dat . ; \
ln -sf ../../run/CCN_ACTIVATE.BIN . ; \
ln -sf ../../run/p3_lookupTable_1.dat-5.3-2momI . ; \
ln -sf ../../run/p3_lookupTable_1.dat-3momI_v5.1.7 . ; \
ln -sf ../../run/p3_lookupTable_2.dat-2momI_v5.2.3 . ; \
ln -sf ../../run/p3_lookupTable_1.dat-v5.4_2momI . ; \
ln -sf ../../run/p3_lookupTable_1.dat-v5.4_3momI . ; \
ln -sf ../../run/p3_lookupTable_2.dat-v5.3 . ; \
ln -sf ../../run/HLC.TBL . ; \
ln -sf ../../run/wind-turbine-1.tbl . ; \
ln -sf ../../run/ishmael-gamma-tab.bin . ; \
Expand Down Expand Up @@ -667,9 +667,9 @@ em_real : wrf
ln -sf ../../run/bulkdens.asc_s_0_03_0_9 . ; \
ln -sf ../../run/bulkradii.asc_s_0_03_0_9 . ; \
ln -sf ../../run/CCN_ACTIVATE.BIN . ; \
ln -sf ../../run/p3_lookupTable_1.dat-5.3-2momI . ; \
ln -sf ../../run/p3_lookupTable_1.dat-3momI_v5.1.7 . ; \
ln -sf ../../run/p3_lookupTable_2.dat-2momI_v5.2.3 . ; \
ln -sf ../../run/p3_lookupTable_1.dat-v5.4_2momI . ; \
ln -sf ../../run/p3_lookupTable_1.dat-v5.4_3momI . ; \
ln -sf ../../run/p3_lookupTable_2.dat-v5.3 . ; \
ln -sf ../../run/HLC.TBL . ; \
ln -sf ../../run/wind-turbine-1.tbl . ; \
ln -sf ../../run/ishmael-gamma-tab.bin . ; \
Expand Down
2 changes: 1 addition & 1 deletion Registry/Registry.EM_COMMON
Expand Up @@ -554,7 +554,7 @@ state real qir2 ikjftb scalar 1 - \
state real qib2 ikjftb scalar 1 - \
i0rhusdf=(bdy_interp:dt) "QIB2" "Rime ice volume-2 mixing ratio" "m(3) kg(-1)"
state real qzi ikjftb scalar 1 - \
i0rhusdf=(bdy_interp:dt) "QZI" "Sixth moment ice mixing ratio" "m(6) kg(-1)"
i0rhusdf=(bdy_interp:dt) "QZI" "Sq root of sixth moment ice mixing ratio times number mixing ratio" "m(3) kg(-1)"
state real qvoli ikjftb scalar 1 - \
i0rhusdf=(bdy_interp:dt) "QVOLI" "Ice volume-1 mixing ratio" "m(3) kg(-1)"
state real qaoli ikjftb scalar 1 - \
Expand Down
2 changes: 1 addition & 1 deletion phys/module_microphysics_driver.F
Expand Up @@ -227,7 +227,7 @@ SUBROUTINE microphysics_driver( &
USE module_mp_gsfcgce
USE module_mp_gsfcgce_4ice_nuwrf, only: gsfcgce_4ice_nuwrf
USE module_mp_morr_two_moment
USE module_mp_p3
USE microphy_p3
USE module_mp_jensen_ishmael
# if (EM_CORE == 1)
USE module_mp_morr_two_moment_aero
Expand Down
860 changes: 550 additions & 310 deletions phys/module_mp_p3.F

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion phys/module_physics_init.F
Expand Up @@ -4418,7 +4418,7 @@ SUBROUTINE mp_init(RAINNC,SNOWNC,GRAUPELNC,config_flags,restart,warm_rain,
USE module_mp_fast_sbm
#endif
USE module_mp_morr_two_moment
USE module_mp_p3
USE microphy_p3
USE module_mp_jensen_ishmael
USE module_mp_milbrandt2mom
! USE module_mp_milbrandt3mom
Expand Down

0 comments on commit 0279ccc

Please sign in to comment.