-
Notifications
You must be signed in to change notification settings - Fork 36
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 bathymetry smoothing to global ocean init #310
Conversation
TestingI am running on Anvil with Intel and Intel-MPI through
Update 03-23-2022: I'm retesting now that E3SM-Project/E3SM#4785, #326 #328 and #329 are in. |
@vanroekel and @mark-petersen, following a successful merge of E3SM-Project/E3SM#4785 (in the likely event that occurs), I'd like to revisit bathymetry smoothing before the compass 1.0.0 release. I would like to have consistent bathymetry and smoothing techniques across I think this last option would be my preference. But we definitely do need to turn on some level of smoothing or I can't test the SORRM infrastructure at all. |
@xylar, I agree that no smoothing leads to very rough bathymetry, and that was never the intention. I think that 10 iterations is too much, but setting it to a mid-value between 4 and 6 is fine for now, so that all the COMPASS cases produce reasonable meshes. As @xylar said, when we sign off on our next production mesh, we should run some tests on that value. |
@xylar I agree that the last option seems best for now -- stick with current values and revisit for v3 production meshes. I also agree that we want some level of smoothing in all meshes going forward and we should be consistent amongst them all. |
@mark-petersen, I'm fine with backing off to 6 iterations with a weight of 0.9 if SORRM can be spun up with that value (it couldn't previously, which is how I ended up at 10 iterations with a weight of 0.92). I do want to caution that the number of iterations means very little on its own. The combination of the weight and the number of iterations determines how many effective cell widths the smoothing happens over. But I'll change and retest, since it seems important to you. |
@xylar, thanks for letting me know about the combination of number and weight for smoothing iterations. I'm happy to go with your best judgement on the combination of the two. |
I'd like to wait for E3SM-Project/E3SM#4785 to go in and test with the final result that we end up with. Then, I'll see if I can get away with 6 iterations of smoothing instead of 10, and experiment with the associate weight. |
400b07f
to
1e16295
Compare
@mark-petersen, in retesting this I'm seeing some discouraging results. In the EC30to60 dynamic adjustment (during the second damped step), I see: Temperatures reach 51 C before damping back down. We need to find out if this is still Redi or if it's something else (smoothing, restoring, not enough Rayleigh friction or too small a time step). Output on Anvil is here:
|
I'm running dynamical adjustment for EC30to60 with Update: I didn't look carefully enough. It ends up in a good place but goes through extremes on |
The SORRM mesh is behaving perfectly well with this branch and #309, so I don't know what the deal is with EC. |
Just smoothing is definitely making things worse, with |
Looking back at E3SM-Project/E3SM#4785, I didn't test EC as part of that review. I just can't believe I didn't test all the meshes! That's just supremely negligent! |
The good news is that EC tests with |
Do we understand why the SORRM is better behaved with a lower value of |
I don't think we know that SORRM is better behaved. We only tested WC14 with |
oh sorry, I thought you mentioned that the SORRM was well behaved above? maybe you meant WC14? |
Oh, I see what you're referring to:
I've tested so many things in the last few days that I completely lose track. It could just be a coincidence of where the cells end up at different resolutions. Or it could have to do with different settings. I'm really not sure. Since SORRM spin-up doesn't work without smoothing, it's hard to make a clean comparison but it's true that smoothing alone didn't prevent EC30to60 from going nuts. |
@xylar, reading the comments above, it looks like once you set |
@mark-petersen, I'm about to re-test this and #309 on all the meshes. But I think, yes, 6 iterations of smoothing with a weight of 0.9 will likely be fine for SORRM (which is the mesh that tends to have trouble if there isn't enough smoothing). I'll keep you posted and ask for a review based on my testing later today or tomorrow. |
@mark-petersen and @vanroekel, my updated test results from above are with this smoothing and #309. Could you please take a little time to either review by inspection or let me know when you will have time for a more thorough review? |
@xylar I'm happy to approve this, but have a very small question first in a comment you mention
From the files changed you seem to use 10 iterations though. Is 10 the value you found necessary? I just wanted to confirm. |
@xylar I can't easily find the updated results above. Could you summarize? But generally, I think we are finding that we need to be aware that there is no silver bullet to these spin-up maxima when Redi is on, and be aware of it as we create and spin up new meshes. I think #328 is a huge help for preventing mistakes, and makes it much safer as we go forward. |
@vanroekel, shoot! Thanks for noticing that! I swear I change that but it looks like my changes got lost in one rebase or another. I'll fix that and rerun my tests tomorrow.
@mark-petersen, it's a little unclear to me what you're looking for in a summary. I'll be rerunning anyway after I fix this branch, since @vanroekel pointed out that my changes got lost. But the gist is that I am running If you want some specific summary of what the smoothed meshes look like or something that, I'd be happy to oblige. Maybe a comparison between smoothed and unsmoothed in some reason of interest? I'm honestly a little exhausted by this whole process and not that keen on playing "bring me a rock". |
We perform 6 iterations of smoothing with a weight of 0.9. For more info on the smoothing approach, see: MPAS-Dev/MPAS-Model#440 For more on previously chosen values (related to ice-shelf cavities), see: MPAS-Dev/MPAS-Model#532 (comment)
1e16295
to
be567b6
Compare
Sorry, didn't mean to ask for extra busywork. I just couldn't find the post you meant by "my updated test results from above". If smoothing the bathymetry generally reduces the problem, then it seems like a good idea. |
@mark-petersen, sorry for the confusion. I was referring to #310 (comment), which I have been updating continuously. I will make sure to post the path to my results on Anvil when I update that comment again today.
Unfortunately, smoothing the bathymetry seems to slightly aggravate the problem with temperature extrema. It is necessary for other reasons -- meshes that include ice shelf cavities tend to blow up without any smoothing, typically during the adjustment of the As a side note, I worked pretty hard to design a procedure for smoothing bathymetry before it is sampled to the MPAS mesh, and I know that @dengwirda has an alternative approach for accurately averaging the bathymetry over an MPAS cell. Both of these approaches are clearly preferable to the approach used here -- smoothing after sampling to the MPAS mesh. But these approaches are time consuming and require further investigation and discussion. I think the approach used here will suffice in the interim. |
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.
This looks good @xylar and am happy to approve. I agree with you that this approach is more than sufficient in the near term and that we should be consistent in the smoothing amongst all meshes (and that there should be smoothing).
Thanks @vanroekel. and thanks for approving #309 as well. Much appreciated. |
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.
Thanks @xylar, for your lengthy work testing this. This appears to be the most sensible option right now, despite the drawbacks you describe here.
Thanks @mark-petersen. I'm still waiting for the WC14 test to finish (Anvil was busier than usual today). I'll merge both this and #309 when that's done. |
Just a final note to say that, in my testing, |
At @mark-petersen's request, we perform 6 iterations of smoothing with a weight of 0.9.
For more info on the smoothing approach, see:
MPAS-Dev/MPAS-Model#440
For more on some slightly more aggressive values used previously (related to ice-shelf cavities), see:
MPAS-Dev/MPAS-Model#532 (comment)
Partially addresses #308