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

modify the eddy diffusivity for heat at the top of the canopy #21

Conversation

HelinWei-NOAA
Copy link
Owner

Revised sensible heat flux for under-canopy sublayer in Noah-MP land surface model.
-- Modify the eddy diffusivity coefficients for momentum and heat at the top of the canopy.
-- Tune the parameters cd (the drag coefficient of leaves) and lm (mean mixing length).

@barlage
Copy link
Collaborator

barlage commented Mar 21, 2022

@wzzheng90 do you plan additional commits for this PR?

end if

if (mozg < 0.) then
fhgnew = (1. - 15.*mozg)**(-0.25)
fhgnewh = 0.74 * (1. - 9.*mozg)**(-0.5) ! PHIh
Copy link
Collaborator

Choose a reason for hiding this comment

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

can you remove this leading space so they line up?

Copy link
Collaborator

Choose a reason for hiding this comment

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

Done. Thanks.

@@ -4686,7 +4695,7 @@ subroutine ragrb(parameters,iter ,vai ,rhoair ,hg ,tah , & !in

! aerodynamic resistances raw and rah between heights zpd+z0h and z0hg.

kh = max ( vkc*fv*(hcan-zpd), mpe )
kh = max ( vkc*fv*(hcan-zpd)/fhgh, mpe )
Copy link
Collaborator

Choose a reason for hiding this comment

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

do we need protection against divide by zero here?

Copy link
Collaborator

Choose a reason for hiding this comment

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

I add max(fhgh,0.1) to avoid it. Thanks

@wzzheng90
Copy link
Collaborator

I modified cwpvt LUT and modified "cd/lm" parameter (reduced half).

data ( cwpvt_table (i),i=1,mvt) / 0.09, 0.335, 0.09, 0.335, 0.145, 0.50, &
& 1.00, 0.65, 0.50, 2.50, 0.585, 0.835, &
& 0.835, 0.835, 0.09, 0.09, 0.09, 0.335, &
& 0.835, 0.835, 0.09, 0.09, 0.09, 0.335, &
Copy link
Owner Author

Choose a reason for hiding this comment

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

should be 0.5, 0.09, 0.00, 0.00, 0.00, 0.00?

Copy link
Owner Author

Choose a reason for hiding this comment

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

line 516

Copy link
Collaborator

Choose a reason for hiding this comment

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

Yes, Thank you!

@HelinWei-NOAA HelinWei-NOAA merged commit c8d6545 into HelinWei-NOAA:lsm_upgrades_for_p8c Mar 21, 2022
@HelinWei-NOAA
Copy link
Owner Author

@wzzheng90 As you mentioned, the model is very sensitive to the parameter cwpvt. With the latest change, the model didn't complete the case of 20120701. The other cases look fine. My run directory is /scratch1/NCEPDEV/stmp2/Helin.Wei/Prototype8.lsmz/COMROOT

The job log file for the failed case is /scratch1/NCEPDEV/stmp2/Helin.Wei/Prototype8.lsmz/COMROOT/R_20120701/logs/2012070100/gfsfcst.log.0

Any suggestions?

@wzzheng90
Copy link
Collaborator

@HelinWei-NOAA It looks the model failed at "gfdl_cloud_microphys.F90". I had a similar problem about the MP failure when I changed others. Did you run the case with all land changes or just for this cwpvt modification? I did some tests and the model
failed only with large reduction of cwpvt (many times). Here we just reduced half of cwpvt and it may be little possibility to result in the failure.

@HelinWei-NOAA
Copy link
Owner Author

I ran with all Noah-MP changes.

@HelinWei-NOAA It looks the model failed at "gfdl_cloud_microphys.F90". I had a similar problem about the MP failure when I changed others. Did you run the case with all land changes or just for this cwpvt modification? I did some tests and the model failed only with large reduction of cwpvt (many times). Here we just reduced half of cwpvt and it may be little possibility to result in the failure.

else
fhg = 0.5 * (fhg+fhgnew)
fhgh = 0.5 * (fhgh+fhgnewh)
endif

cwpc = (cwp * vai * hcan * fhg)**0.5
Copy link
Collaborator

Choose a reason for hiding this comment

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

I suggest we put in some limits like this: cwpc = max(min(cwpc,5.0),1.0)

@HelinWei-NOAA
Copy link
Owner Author

HelinWei-NOAA commented Mar 23, 2022 via email

@wzzheng90
Copy link
Collaborator

Sounds great! My test with P8a (case: 20120701) also went through, but without the limitation (cwpc = max(min(cwpc,5.0),1.0)). So, it seems that this modification together with other land changes would result in some other issues.

@barlage
Copy link
Collaborator

barlage commented Mar 24, 2022

@HelinWei-NOAA are you planning to put this change in the branch? I'm running the spin up now but just realized I am using the branch directly and haven't added this limit.

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.

3 participants