-
Notifications
You must be signed in to change notification settings - Fork 0
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
A version to compute emissivity for different scenarios with fractional grid in coupled/uncoupled models #5
base: SM_Sept21_PR
Are you sure you want to change the base?
Conversation
for different scenarios. It checks of semis_ice(i) has non-zero values (could come from RUC LSM for uncoupled model, or CICE for coupled model), then use it over ice fraction. If not, then compute it using either snow cover fraction (sncovr_ice) or snow depth.
hrgh = min(f_one,max(0.20,1.0577-1.1538e-3*hprif(i))) | ||
fsno = asnow / (argh + asnow) * hrgh | ||
fsnoi = min(f_one, fsno / (fraci(i)+fracl(i))) | ||
sfcemis_ice = emsref(7)*(f_one-fsnoi) + emsref(8)*fsnoi |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tanya,
There is one problem here. Note that in my version I save "sfcemis_ice" into semis_ice(i), as it is needed elsewhere. When we do this, it could potentially go through a different path in the above "if" loop when it is called another time.
Moorthi
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Moorthi,
I have changed the if statement to use semis_ice(i) with RUC lsm and CICE (for now other ice schemes or lake models do not provide semis_ice), and compute it in all other scenarios. Will this work now?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tanya,
It won't work. I think my original version is fine. The reason it won't work is because, when it is coupled to CICE6, it only takes care of sea-ice, not lake ice. That is the reason I was adding "lakefrac" in the logic so that if it is coupled and not RUClsm, then to compute emissivity for the lake ice the default way.
Moorthi
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, let's go with your version. Thank you for merging RUC LSM clean-up version into your PR.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@SMoorthi-emc I forgot to tell you that one thing will not work in your version with RUC LSM. The RUC ice model is turned on for ice on the ocean and lakes only when uncoupled from CICE or the lake model. Thus, if coupled to the lake model semis_ice(i) is not defined unless it is computed in the lake model (I think it is not the case for Flake). Therefore, with RUC LSM the "standard" method to compute semis_ice from snow depth should be applied it the lake model is turned on.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tanya,
If the model is coupled to CICE6, then with RUC LSM, the emissivity from CICE6 used? In this case, if "flake" is called for lake, then RUC LSM does not update emissivity right? If no lake model is used, the RUC LSM will calculate lake ice emissivity. If this is the case, I think I need to update the code (for now assuming that "flake" does not update ice emissivity)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Moorthi, Yes to both questions. And yes, RUC LSM will calculate lake ice emissivity only if no lake model is used. Thank you!
Tanya,
Please check if my updates are fine.
Thanks
Moorthi
…On Mon, Oct 4, 2021 at 1:22 PM tanyasmirnova ***@***.***> wrote:
***@***.**** commented on this pull request.
------------------------------
In physics/radiation_surface.f
<#5 (comment)>
:
> - argh = min(0.50, max(.025,0.01*zorlf(i)))
- hrgh = min(f_one,max(0.20,1.0577-1.1538e-3*hprif(i)))
- fsno = asnow / (argh + asnow) * hrgh
- fsnoi = min(f_one, fsno / (fraci(i)+fracl(i)))
- sfcemis_ice = emsref(7)*(f_one-fsnoi) + emsref(8)*fsnoi
- endif
- semis_ice(i) = sfcemis_ice
- else
- sfcemis_ice = semis_ice(i) ! output from CICE
+ elseif (snowf(i) > f_zero) then
+ asnow = 0.02*snowf(i)
+ argh = min(0.50, max(.025,0.01*zorlf(i)))
+ hrgh = min(f_one,max(0.20,1.0577-1.1538e-3*hprif(i)))
+ fsno = asnow / (argh + asnow) * hrgh
+ fsnoi = min(f_one, fsno / (fraci(i)+fracl(i)))
+ sfcemis_ice = emsref(7)*(f_one-fsnoi) + emsref(8)*fsnoi
Moorthi, Yes to both questions. And yes, RUC LSM will calculate lake ice
emissivity only if no lake model is used. Thank you!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#5 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ALLVRYRVKTHXCW4DO5MWCJDUFHPDFANCNFSM5FC54RHA>
.
Triage notifications on the go with GitHub Mobile for iOS
<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675>
or Android
<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
--
Dr. Shrinivas Moorthi
Research Meteorologist
Modeling and Data Assimilation Branch
Environmental Modeling Center / National Centers for Environmental
Prediction
5830 University Research Court - (W/NP23), College Park MD 20740 USA
Tel: (301)683-3718
e-mail: ***@***.***
Phone: (301) 683-3718 Fax: (301) 683-3718
|
This PR proposes an alternative solution on emissivity computation for different scenarios.
It checks if semis_ice(i) has non-zero values
(could come from RUC LSM for uncoupled model, or CICE for coupled
model). If yes, then uses them over ice fraction. If not, then computes ice emissivity using
either snow cover fraction (sncovr_ice) or snow depth.