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

Merged
merged 6 commits into from
Jan 23, 2025
Merged

RCON Microphysics #2144

merged 6 commits into from
Jan 23, 2025

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

The code has passed the regression tests.

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.

Copy link
Collaborator

@dudhia dudhia left a comment

Choose a reason for hiding this comment

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

Not seeing any problems.

@weiwangncar weiwangncar merged commit de213c9 into wrf-model:develop Jan 23, 2025
1 check was pending
islas added a commit that referenced this pull request Jan 29, 2025
TYPE: bug fix

KEYWORDS: cmake, compilation

SOURCE: internal

DESCRIPTION OF CHANGES:
Problem:
PR #2144 added a new microphysics file `phys/module_mp_rcon.F` which
only added it to the make build

Solution:
Add new RCON file to CMake build

TESTS CONDUCTED: 
1. Develop branch at merge of #2144 fails to build CMake build. These
changes fix the build issues
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