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

Bug fixes in deng shallow cumulus parameterization #1277

Merged
merged 6 commits into from
Oct 7, 2020

Conversation

pedro-jm
Copy link
Contributor

@pedro-jm pedro-jm commented Aug 25, 2020

TYPE: bug fix

KEYWORDS: Deng shcu, resolved hydrometeors, non-active updrafts, precipitation units, variable initialization, limit NT

SOURCE: Pedro A. Jimenez and Tim Juliano (NCAR/RAL), Eric Grimit and Mattew Wiley (Vaisala), and Xin-Zhong Liang
(University of Maryland)

DESCRIPTION OF CHANGES:
Problem:

  1. The resolved hydrometeors are added to the unresolved hydrometeors inside Deng's parameterization. The radiation
    driver adds the resolved hydrometeors to the unresolved ones causing to double counting the effects of the resolved
    hydrometeors.
  2. The unresolved clouds are not properly removed when the updraft is not active
  3. Incorrect precipitation units
  4. Incorrect initialization of variable radiusc. The variable is initialized inside an #if construct for the 1D model
  5. If dt < 18 s NT is larger than 100 causing the code to look for values outside of array bounds for ainckfsa variable

Solution:

  1. Do not add the resolved hydrometeors to the unresolved ones inside Deng's parameterization
  2. Set cloud fraction and the mixing ratio of the unresolved hydrometeors to 0 if the updraft is not active.
  3. Remove the conversion factor that was leading to the incorrect units.
  4. Initialize radiusc outside of the #if construct so radiusc is always initialized.
  5. Limit the maximum value of DT to 100

The following figure illustrates the impact of corrections 1 and 2. The time series of the mixing ratio now properly goes
to 0 if the updraft is not active.
image

LIST OF MODIFIED FILES:
M phys/module_shcu_deng.F

TESTS CONDUCTED:

  1. We have run simulations with and without the fixes. The figure above illustrates that the clouds are now adequately
    removed if there are not active updrafts.
  2. Jenkins tests are all passing

RELEASE NOTE: Several fixes introduced to the Deng's shallow cumulus parameterization: 1) Do not add the resolved hydrometeors to the unresolved ones to avoid double counting, 2) remove clouds if the updraft is not active, 3) correct conversion factor for precipitation, 4) correct initialization of radiusc variable, and 5) limit variable NT to avoid array out of bounds.

@pedro-jm pedro-jm requested a review from a team as a code owner August 25, 2020 00:27
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.

I am already familiar with these changes.

@davegill
Copy link
Contributor

@dudhia @pedro-jm @weiwangncar
Folks,
Is the original developer OK with these mods?

@weiwangncar
Copy link
Collaborator

@pedro-jm @davegill I have asked AJ Deng about the correction on the rainfall, and he has agreed to the fix (removing the converting factor of 0.1).

@pedro-jm
Copy link
Contributor Author

@davegill @weiwangncar I just sent him an email checking about the other 2.

@davegill
Copy link
Contributor

@dudhia @weiwangncar
Folks,
My requests to clean up the source code were resolved. I am good with the PR (excluding the physical concerns of double counting, for which I am not providing an opinion).

@pedro-jm
Copy link
Contributor Author

@davegill
The original developer agrees to all these changes.

@dudhia dudhia merged commit 3337022 into wrf-model:release-v4.2.2 Oct 7, 2020
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.

4 participants