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

updates to MYNN-EDMF and Thompson #120

Merged
merged 36 commits into from
Nov 17, 2023

Conversation

joeolson42
Copy link
Collaborator

@joeolson42 joeolson42 commented Oct 16, 2023

The following PR consists of updates to 3 schemes and related modules:

  1. MYNN-EDMF
  • optimization work: fixed 8-plume model instead of variable number plume. maintains performance
  • bug fix to correct grid mean vs in-cloud mixing ratios. Now requires namelist variable lcnorm (set to true)
  • adjustments to cloud pdf to better fit modified thompson scheme
  1. MYNN surface layer
  • tweak to Czil parameter to improve diurnal cycle of T and wsp.
  1. Thompson aerosol-aware microphysics
  • change to nucleation rates to fix marine drizzle problem
  • minimum effective radii of 7 microns over water

tanyasmirnova and others added 4 commits October 12, 2023 16:27
1. adding a heat source from fires. It is icontrolled by a flag and not turned on yet. Needs more testing.
2. Adding output of surface paramteres: leaf area index (LAI), wilting point and soil field capacity.
@joeolson42
Copy link
Collaborator Author

Here's some supporting documentation for this PR:
Overview of Updates to MYNN_ and Thompson.pdf

1. Removed commented lines in fire feedback to RUC LSM.
2. The coordinates of a test point are passed to the RUC LSM subroutines to make debug printing more manageable.
3. Reverted change in the TRANSF subroutine to original version. The non-linear root distribution needs scientific evaluation in the retro runs.
Copy link
Collaborator

@grantfirl grantfirl left a comment

Choose a reason for hiding this comment

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

Looks fine from CCPP point of view.

joeolson42 and others added 6 commits October 19, 2023 17:19
Copy link
Collaborator

@dustinswales dustinswales left a comment

Choose a reason for hiding this comment

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

Everything looks good, just my normal concerns about precision, which should get resolved (mainly for portability concerns)

physics/module_bl_mynn.F90 Outdated Show resolved Hide resolved
physics/module_bl_mynn.F90 Outdated Show resolved Hide resolved
physics/module_bl_mynn.F90 Outdated Show resolved Hide resolved
physics/module_bl_mynn.F90 Outdated Show resolved Hide resolved
physics/module_bl_mynn.F90 Outdated Show resolved Hide resolved
physics/module_bl_mynn.F90 Outdated Show resolved Hide resolved
physics/module_bl_mynn.F90 Outdated Show resolved Hide resolved
physics/module_bl_mynn.F90 Outdated Show resolved Hide resolved
physics/module_mp_thompson.F90 Outdated Show resolved Hide resolved
physics/module_sf_mynn.F90 Outdated Show resolved Hide resolved
@@ -2652,7 +2652,7 @@ subroutine snowwater_glacier (nsnow ,nsoil ,imelt ,dt ,sfctmp , & !in

!to obtain equilibrium state of snow in glacier region

if(sneqv > mwd) then ! 100 mm -> maximum water depth
if(sneqv > mwd .and. isnow /= 0) then ! 100 mm -> maximum water depth
Copy link
Collaborator

Choose a reason for hiding this comment

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

@barlage @HelinWei-NOAA Are you both OK with adding this to avoid a floating point exception that is sometimes triggered (e.g. in the rrfs_v1beta_debug_intel test for this PR and in previous PRs: #114)?

Copy link
Collaborator

Choose a reason for hiding this comment

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

@grantfirl yes, I'm good with this change. I was going to suggest bumping the mwd up to a larger number again, but this should fix the issue. It's still puzzling to me as to why this happens. Will look into it more to track down the root cause.

@gthompsnWRF
Copy link
Collaborator

gthompsnWRF commented Nov 9, 2023

@gthompsnWRF @AndersJensen-NOAA @grantfirl Sorry to be slow to respond, but yes, we use progclduni.

EDITED! See 2nd paragraph

This is all wrong. progclduni uses the GFDL microphysics radii for cloud water and ice. This is all wrong, especially for Thompson microphysics. I have a slide deck showing the problems of GFDL's assignment of ice and water sizes. I thought the pre-calculated Thompson MP radii were carried into this subroutine if not module.

Actually, this line of code

      if (effr_in) then

gets the drop and ice sizes from the existing arrays computed by gthompsn's method. However, since the fractional clouds have no cloud water or ice, they will default to the smallest sizes. Hence, what I'm pointing out is that the assumed minimum size of 2.5 microns is being used for the fractional clouds away from places with grid-explicit cloud water.

So as I typed above, the chunk of code in progcld_thompson could be used as a new addition to progclduni to explicitly handle drop/ice sizes in the cloud fraction, non-grid-explicit clouds. This may help alleviate with Anders/Joe are seeing as "too bright" clouds without dramatically affecting the GFS results.

@joeolson42
Copy link
Collaborator Author

joeolson42 commented Nov 9, 2023

@gthompsnWRF @AndersJensen-NOAA @grantfirl

No thanks for bringing this up on the final days of the PR, but I think this is worth looking into for a follow-up PR. This will require more testing an evaluation.

I never saw any 2.5 micron effective radii over water. It was more like 3.5 to 6 range, but a lot of them. Anyway, let's handle this off line. Anders and I are willing to look into this very soon. I'm marking this as resolved for this PR.

@yangfanglin
Copy link
Collaborator

yangfanglin commented Nov 9, 2023 via email

@RuiyuSun
Copy link
Collaborator

RuiyuSun commented Nov 9, 2023

@yangfanglin Yes. In the GFS, when Thomspon MP is used, the radii from the Thompson MP are used in the radiation calculation.

@yangfanglin
Copy link
Collaborator

yangfanglin commented Nov 9, 2023 via email

@yangfanglin
Copy link
Collaborator

yangfanglin commented Nov 9, 2023 via email

Also, added the fraction of grid cell that is burned out.
One more variable is added: fraction of grid cell burned by the fire.
This fraction is used to take into account fire's effect on surface albedo.
Also, added some debug prints.
These changes will change the results only when fire feedback is turned on. The default is .false.
@dustinswales
Copy link
Collaborator

Hi, Fanglin: Effective radius (e.g., re_cloud) is calculated in calc_effectRad of module_mp_thompson.F90, passed into progcld_thompson (e.g., rew assigned to cld_reliq) of radiation_clouds.f. cld_reliq etc. are used for radiation calculation in rrtmgp_lw_main.F90 and rrtmgp_sw_main.F90. Anning On Thu, Nov 9, 2023 at 4:14 PM Fanglin Yang - NOAA Federal < @.> wrote:

Ruiyu and Anning, Could you please take a look at this. I am confident when Thompson MP is called in gfs/gefs, the corresponding radii from Thompson NO are used for radiation calculation. Fanglin Sent from my iPhone On Nov 9, 2023, at 10:30 AM, gthompsnWRF @.
> wrote:  @gthompsnWRF https://github.com/gthompsnWRF @AndersJensen-NOAA https://github.com/AndersJensen-NOAA @grantfirl https://github.com/grantfirl Sorry to be slow to respond, but yes, we use progclduni. This is all wrong. progclduni uses the GFDL microphysics radii for cloud water and ice. This is all wrong, especially for Thompson microphysics. I have a slide deck showing the problems of GFDL's assignment of ice and water sizes. I thought the pre-calculated Thompson MP radii were carried into this subroutine if not module. — Reply to this email directly, view it on GitHub <#120 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKY5N2K7UYTYKM652RFMRDDYDUOLLAVCNFSM6AAAAAA6CZ25KCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMBUGM2DGOBZHE . You are receiving this because you were mentioned.Message ID: @.***>

I think you mean radlw_main and radsw_main?
Let's not drag RRTMGP into this, which treats radiatively active clouds differently. Notice I used "radiatively active clouds" not "fake clouds", they are very real to the radiation

@joeolson42
Copy link
Collaborator Author

I agree about not dragging anything else into this PR. Too much has already been dragged in.

@grantfirl
Copy link
Collaborator

@dustinswales Please re-review when you get a chance since you requested changes.

@jkbk2004
Copy link

All tests are done at ufs-community/ufs-weather-model#1945. @grantfirl @dustinswales Please, go ahead to merge this pr.

@dustinswales dustinswales merged commit d566ea4 into ufs-community:ufs/dev Nov 17, 2023
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.