Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RCON Microphysics #2144

Open
wants to merge 6 commits into
base: develop
Choose a base branch
from
Open

Conversation

rconrick
Copy link

@rconrick rconrick commented Dec 16, 2024

Release of the RCON Microphysics package into WRF.

TYPE: new feature

KEYWORDS: microphysics, physics, rainfall, warm rain, cloud water

SOURCE: Robert Conrick (U. of Washington); [email protected]

DESCRIPTION OF CHANGES:
This is the release of the RCON microphysics scheme, the intent of which is to improve warm rain representation within the Thompson-Eidhammer scheme.

LIST OF MODIFIED FILES:
modified: Registry/Registry.EM_COMMON
modified: Registry/registry.var
modified: dyn_em/solve_em.F
modified: phys/Makefile
modified: phys/module_microphysics_driver.F
new file: phys/module_mp_rcon.F
modified: phys/module_physics_init.F

RELEASE NOTE:
Release of the RCON Microphysics package into WRF, which improves upon the warm rain representation of the Thompson-Eidhammer scheme.

RCON is based heavily on the Thompson-Eidhammer scheme with a couple significant changes that improve upon the code in module_mp_rcon.F to generate more realistic rainfall during warm rain events with additional benefits for cold rain, especially warm processes during cold rain events.

Among the most significant changes for rain productions are 1) the use of a wider cloud water DSD of lognormal shape instead of the gamma DSD used by the Thompson-Eidhammer parameterization and 2) enhancement of the cloud-to-rain autoconversion parameterization to accommodate the new shape. The changes here also allow for sedimentation of cloud water within the lowest model layer, which effectively creates a drizzle mode in the scheme.

Accompanying published reference:
Conrick, R., C. F. Mass, and L. McMurdie, 2023: Improving Simulations of Warm Rain in a Bulk Microphysics Scheme. Mon. Wea. Rev., 152, 169-185, https://doi.org/10.1175/MWR-D-23-0035.1.

@rconrick rconrick requested review from a team as code owners December 16, 2024 05:31
@weiwangncar
Copy link
Collaborator

The regression test results:

Test Type              | Expected  | Received |  Failed
= = = = = = = = = = = = = = = = = = = = = = = =  = = = =
Number of Tests        : 23           24
Number of Builds       : 60           57
Number of Simulations  : 158           150        0
Number of Comparisons  : 95           86        0

Failed Simulations are: 
None
Which comparisons are not bit-for-bit: 
None

@weiwangncar
Copy link
Collaborator

@rconrick You may also need to add some dependencies in main/depend.common file. Search for 'mp_thompson' and you can add a section for your scheme. Note that the second line and later begin with a tab.

@rconrick
Copy link
Author

@rconrick You may also need to add some dependencies in main/depend.common file. Search for 'mp_thompson' and you can add a section for your scheme. Note that the second line and later begin with a tab.

Thank you for this information. I went through depend.common and made a few changes to add my scheme into it.

…es, but also change to output vars and depend.common
@dudhia
Copy link
Collaborator

dudhia commented Jan 2, 2025

@rconrick I see 8 3d diagnostic arrays that are optional inside the code. For general use can we just not have these outside the scheme, or at least add them to the package list. I am not sure many users would want this output.

@weiwangncar
Copy link
Collaborator

@rconrick I see 8 3d diagnostic arrays that are optional inside the code. For general use can we just not have these outside the scheme, or at least add them to the package list. I am not sure many users would want this output.

These extra diagnostic output variables are packaged.

@weiwangncar
Copy link
Collaborator

@rconrick See if you can address the latest comments by pushing up more changes. We need to get this merged to the repository soon. Thanks!

…variables that were being passed out of the scheme, keeping only CLOUDNC. I also performed some cosmetic changes per Wei's suggestions, though I'm sure I missed something in there.

I also reverted io_netcdf/makefile to its original format.
dudhia
dudhia previously approved these changes Jan 16, 2025
@rconrick
Copy link
Author

rconrick commented Jan 16, 2025 via email

@dudhia
Copy link
Collaborator

dudhia commented Jan 16, 2025 via email

To return to the original macro.
@weiwangncar
Copy link
Collaborator

@rconrick I have made one change to return the external/io_netcdf/makefile to the original state. Regarding Jimy's comment, you can make a change after the release branch is cut out and before 4.7 is officially released. The purpose of the release branch is to test and fix small things.
Another question for you: Can you run this scheme without climatological aerosols? The original Thompson scheme can be run without aerosols (mp_physics = 8), with aerosols (28) and with hail (38).

@rconrick
Copy link
Author

rconrick commented Jan 17, 2025 via email

@rconrick
Copy link
Author

rconrick commented Jan 17, 2025 via email

@weiwangncar
Copy link
Collaborator

@rconrick What version of the Thompson scheme is yours based on? Is it the latest in, say, 4.6? If so, your package list is missing a few variables, such as qng, and qnbca (the latest aerosol input).

@dudhia
Copy link
Collaborator

dudhia commented Jan 17, 2025

I think it is OK to keep CLOUDNC as a diagnostic. it is only 2d.

@weiwangncar
Copy link
Collaborator

The last changes have passed the regression tests.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants