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

New ridging options not all that stable in SIS2 #178

Open
kshedstrom opened this issue Jul 28, 2022 · 9 comments
Open

New ridging options not all that stable in SIS2 #178

kshedstrom opened this issue Jul 28, 2022 · 9 comments

Comments

@kshedstrom
Copy link
Contributor

I bring this up because the old ridging options are being obsoleted in Icepack. In my experience, both NEW_RIDGE_REDISTRIBUTION and NEW_RIDGE_PARTICIPATION can lead to random blow-ups. For example:

WARNING from PE     4: Negative ice volume after ridging:    181    13    9.2766E-57 -7.3863E-67
FATAL from PE     4: Input to adjust_ice_categories, non-zero snow mass rests atop no ice.
@kshedstrom
Copy link
Contributor Author

I talked them out of obsoleting it for now.

@MitchBushuk
Copy link

Thank you Kate, much appreciated. I have also been running into the same issue in SIS2/MOM6 experiments, generally with the following error:
WARNING from PE 513: Negative ice thickness at: 92 237 4 -1.0998E-65
FATAL from PE 513: Negative thickness input to ice_continuity().

I have found that the model runs successfully with NEW_RIDGE_PARTICIPATION=true and NEW_RIDGE_REDISTRIBUTION=false. But any configuration with NEW_RIDGE_REDISTRIBUTION=true has been crashing due to tiny negative thickness values. I tried setting the CONTINUITY_H_NEGLECT parameter to a small positive value (1e-20), but this did not prevent the error. I also tried some different options for SIS_THICKNESS_ADVECTION_SCHEME and SIS_CONTINUITY_SCHEME but those also didn't seem to help.

@kshedstrom
Copy link
Contributor Author

In my code, there's a max function so that vicen coming out of the ridging can't be negative. Then I've got an ice category with no ice, but some remnant snow. That should be fixable.

Yes, one of those options is more troublesome than the other, but I did have them both independently go bad on me at least once.

@kshedstrom
Copy link
Contributor Author

I added this to the if block on negative ice:

            vicen(k) = 0.0 
            vsnon(k) = 0.0

With both:

#override NEW_RIDGE_REDISTRIBUTION = True
#override NEW_RIDGE_PARTICIPATION = True

My Bering domain runs through the winter (with plenty of warnings), then dies in June with:

FATAL from PE    22: Negative thickness input to ice_continuity().

@MJHarrison-GFDL
Copy link
Contributor

May be worth merging the latest SIS2 code on the dev/gfdl branch where I corrected an error in the "trcrn" stack for SST which isn't used in the ridging scheme, but can cause a problem due to unitialized array access. @kshedstrom - what about aicen ?

@kshedstrom
Copy link
Contributor Author

Good idea, @MJHarrison-GFDL, but it didn't change what happened.

@MJHarrison-GFDL
Copy link
Contributor

I updated Mitch's case, which failed previously, with the latest MOM6/SIS2 code. containing #179 . The error remains, so that is not the problem. DDT next ...

MJHarrison-GFDL added a commit to MJHarrison-GFDL/SIS2 that referenced this issue Sep 29, 2022
@MJHarrison-GFDL
Copy link
Contributor

@kshedstrom @MitchBushuk #184 addresses this issue and appears to work based on my tests with Mitch's SPEAR configuration.

marshallward pushed a commit that referenced this issue Oct 4, 2022
New parameter RIDGE_AREA_UNDERFLOW is introduced in order to avoid the occurrence of undetectably small fractional area and negative ice volume following ridging adjustments from Icepack. The default is 0.0, which does not introduce changes in existing runs. A reasonable value would be 10^-26 which would correspond to an Angstrom-scale ice patch within a km-scale grid cell. This addresses #178 and #183
@Hallberg-NOAA
Copy link
Member

@kshedstrom, can you confirm that this issue was addressed by #184, and hence can be closed?

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

No branches or pull requests

4 participants