-
Notifications
You must be signed in to change notification settings - Fork 371
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
Add wetting and drying capability to local time-stepping scheme #6074
Conversation
components/mpas-ocean/src/mode_forward/mpas_ocn_time_integration_lts.F
Outdated
Show resolved
Hide resolved
components/mpas-ocean/src/mode_forward/mpas_ocn_time_integration_lts.F
Outdated
Show resolved
Hide resolved
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.
@gcapodag Exciting work!
I posted a few questions here because I found it hard to keep track of where you're scaling normalVelocityTend
terms by wettingVelocityFactor
and where you're scaling normalVelocity
terms. In previous implementations of wetting and drying, we scale each of these only once (here, I guess it would be once per stage). Can you clarify for me how this is working here or point me to a design doc?
I haven't done any testing yet. Let me know when the compass LTS PR is ready.
@mark-petersen, an interactive rebase in which you pick the commits you want and remove the rest from the list is an easier way to cherry-pick several commits. |
Thank you for your input @cbegeman , I replied to your comments, hopefully my replies make sense. As soon as MPAS-Dev/compass#716 goes in, I will submit the compass PR as well. |
3e92a31
to
e3212ec
Compare
@mark-petersen @xylar please let me know if the "rebase" has gone through. thanks! |
@cbegeman I might get the compass PR going so it will be possible to test this, and when the init mode changes to the drying slope will be merged, I will add those as well. How does this sound? |
Yes, that sounds great. Once you post the PR then I will review it along with this PR. Merging the compass PR after the E3SM PR is merged is the way to go. Thanks! |
Testing for this PR can be done from this Compass PR: MPAS-Dev/compass#738 |
@gcapodag this code rebase looks correct, thanks. I will review this week. |
Compiled with gnu on chicoma and intel in chrysalis. With the later, results are bfb against master branch point using nightly compass suite with default flags. That is a sanity test, as I'm not running LTS. But so far so good... |
Needs an approval. |
Since I last looked at this Dec 5, I started with this branch and merged in 09491ec, which is master from Dec 21 just before the stand-alone bug in #6133. I then recompiled stand-alone with intel on chrysalis, and also ran the E3SM tests:
These both pass the compile and smoke test. |
@gcapodag thank you for the substantial testing shown in MPAS-Dev/compass#738. I will try to reproduce those tests and approve this PR soon. |
@mark-petersen sounds good, thanks! |
@cbegeman the compass PR should be ready for you try out with this one as well |
@cbegeman does this PR have a green light on your end? |
@gcapodag Thanks for reminding me to approve this. I'll do it now, given that my compass tests were successful. Great work! |
@cbegeman thank you! |
Tested current head and rebased locally onto master. Compiled with intel on chrysalis and gnu on chicoma, with both debug and optimized. Ran nightly compass test suite with all (that does not test this feature, of course). Both gnu and intel are bfb on all tests against master branch point. Also tested and passed E3SM
|
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.
I tested with the associated compass test cases at MPAS-Dev/compass#738 (comment). Approving based on the beautiful results in these test cases, and that there is no alterations of the mainline model results for this stealth feature.
Thank you very much @mark-petersen! |
Add LTS option to dam_break and parabolic_bowl test cases This PR enhances the dam_break and parabolic_bowl test cases with the option to run using the local time-stepping (LTS) time integrator. Note that LTS only works in a single layer setting. Please also see the companion PR E3SM-Project/E3SM#6074
FYI for the E3SM review, the Local Time Stepping feature that is altered here is only used in MPAS-Ocean standalone for single layer simulations right now. |
Notes: should be done next week. |
Add wetting and drying capability to local time-stepping scheme This PR adds a wetting and drying capability to the local time-stepping (LTS) scheme for the barotropic ocean already available in master. The PR also adds several improvements for the LTS scheme not related to wetting and drying like for instance the upwind option for the layerThickEdgeFlux and inline tidal boundary conditions needed to run the drying slope test case from Compass. A separate PR on Compass will include drying slope, dam break, and parabolic bowl test cases for LTS. [BFB] - MPAS-Ocean standalone only
Passes:
merged to next |
merged to master |
This PR adds a wetting and drying capability to the local time-stepping (LTS) scheme for the barotropic ocean already available in master. The PR also adds several improvements for the LTS scheme not related to wetting and drying like for instance the
upwind
option for thelayerThickEdgeFlux
and inline tidal boundary conditions needed to run the drying slope test case from Compass. A separate PR on Compass will include drying slope, dam break, and parabolic bowl test cases for LTS.This PR is bit-for-bit for E3SM mainline simulations, which do not include LTS or wetting and drying.
[BFB]