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
alternative way to include new pkg/steep_icecavity #772
Conversation
- make ALLOW_STEEP_ICECAVITY a CPP flag in SHELFICE_OPTIONS.h and change useSTIC to SHEFICEuseSTIC to be set in data.shelfice - the most pain was caused by the flag ALLOW_SHITRANSCOEFF_3D, which is only indirectly related to the merge. forward verification experiments: - compiles and does not break isomip reference experiments as long as ALLOW_STEEP_ICECAVITY is undefined - with ALLOW_STEEP_ICECAVITY defined, there are naming conflicts with pkg/icefront (naturally), but when icefront is disabled in packkages.conf, the remaining verification experiments do not break - new verification experiment isomip.stic TAF-AD verification experiments: - isomip does not break when ALLOW_STEEP_ICECAVITY is undefined - no additional recomputations when ALLOW_STEEP_ICECAVITY is defined - does not yet work with ALLOW_SHITRANSCOEFF_3D (unclear) - new AD-verification experiment isomip.stic TODO: - rename icefront variables to given them unique names so that shelfice and icefront can be compiled together - in SHELFICE.h separate icefront and shelfice code (separate common blocks) - sort out use of ALLOW_STEEP_ICECAVITY (define fields only when necessary) - formatting, details ...
- restore do_oceanic_phys.F - strangely this requires new store directives for shiTransCoeffS and addMass
I summarise a conversation with @jm-c and @owang01
before I work on step ii., there's time to comment on 3f598e3 |
- rename K_icefront -> kIcf
for anticipated pkg-name STEEP_ICECAVITY and steep icecavity front and sometimes icf for iceFront. All of these names can be changed, I guess. This allows compiling pkg/shelfice together with pkg/icefront again.
With the latest commit, I can use both 2D and 3D
with
with |
- 3D shiTransCoeffs do not make any sense for pkg/shelfice, where everything is 2d - keeps pkg/sheflice and pkg/steep_icecavity appart even more
b82bbc3 fixes the problem with ALLOW_SHITRANSCOEFF_3D, because
|
- add check and soft warning, if they are ever different - (hopefully) improved error messages - rename diagnostics to be unique - cleanup
- fix a cpp-flag name for store directive - move call to stic_init_depths to where it belongs (ini_masks_etc.F) - fix cpp-flag and include files in pkg/ecco
I think this is now (nearly) ready for review. There a few things to do:
|
@mjlosch Just one comment regarding the call to |
Closing this PR since this got moved to PR #789 (which is now merged). |
What changes does this PR introduce?
Suggestion instead of PR #368. I am opening this PR only to support my review of PR #368: Starting from Ou's careful work, it pretty is straightforward to include the innovations of #368 into pkg/shelfice without breaking anything. Note that only 33 files change plus 10 new verification experiment files. See commit message of first commit, repeated below.
One issue remains with the 3D transfer coefficients, but I am confident, that this is simple to fix. I am sure that there are still more issues that I didn't see, but as this is for now only intended as a basis for discussion, I am not going to check this any further until we have reached a decision about #368.
What is the current behaviour?
(You can also link to an open issue here)
What is the new behaviour
(if this is a feature change)?
Does this PR introduce a breaking change?
(What changes might users need to make in their application due to this PR?)
Other information:
change useSTIC to SHEFICEuseSTIC to be set in data.shelfice
is only indirectly related to the merge.
forward verification experiments:
ALLOW_STEEP_ICECAVITY is undefined
pkg/icefront (naturally), but when icefront is disabled in
packkages.conf, the remaining verification experiments do not break
TAF-AD verification experiments:
defined
TODO:
shelfice and icefront can be compiled together
blocks)
necessary)
Suggested addition to
tag-index
(To avoid unnecessary merge conflicts, please don't update
tag-index
. One of the admins will do that when merging your pull request.)