Update icedrv_init.F90 to read in dynamics_nml - #568
Conversation
The dynamics_nml was defined, but not loaded from icepack_in. Thus, the variables in dynamics_nml were always set to the default parameters.
|
In standalone Icepack, there is no dynamics. That's probably why it's not read in. Are there namelist settings in dyn_nml that matter for standalone Icepack? |
eclare108213
left a comment
There was a problem hiding this comment.
Good catch. It would be helpful to have results from Icepack's base_suite, which includes tests with different values of the dynamics options. If I understand the problem correctly, some of the base_suite results will be non-BFB, indicative of the error. Instructions for running test suites can be found here. Let us know if you have questions or need other help with this. Thank you for finding and fixing the problem!
Icepack owns some dynamics-related things like ice strength, ridging, and surface stress calculations, even though it does not calculate internal stress / momentum / advection. |
|
I'll run a test suite then approve and merge if things go as expected. Thanks! |
|
I ran a full standalone Icepack test suite on derecho, https://github.com/CICE-Consortium/Test-Results/wiki/icepack_by_hash_forks#856974a8d484e22743d5ec11f9e660696e0e0189. All tests pass, but five cases are NOT bit-for-bit, I think this is expected. I have updated the PR notes. I think this is ready to merge. |
apcraig
left a comment
There was a problem hiding this comment.
Just a quick request, could you add
write(nu_diag,*) subname,' Reading dynamics_nml'
as the first line of the new code to provide output and be consistent with output from the other namelists.
Yes, I have added and committed it to the branch. Also, thanks for running the test suite. I assume I do not need to run any test suites anymore now? |
apcraig
left a comment
There was a problem hiding this comment.
Thanks for the update, I reran some tests with this change and as expected, everything compilers and runs. I will merge once github actions completes.
PR checklist
This fixes loading the dynamics_nml, which was defined in icedrv_init.F90, but not loaded from icepack_in (in the stand-alone version).
These changes are not bit-for-bit in standalone Icepack, as expected. The tests that fail are
https://github.com/CICE-Consortium/Test-Results/wiki/icepack_by_hash_forks#856974a8d484e22743d5ec11f9e660696e0e0189
The dynamics_nml was defined, but not loaded from icepack_in (when using icepack in the stand alone version). Thus, the variables in dynamics_nml were always set to the default parameters and flexibility in the code (for example switching between the ice strength parametrisations (kstrength = 1 or 0) and ridging schemes (krdg_redist = 1 or 0) was not possible via icepack_in).
Problem was also mentioned in the Forum (https://bb.cgd.ucar.edu/cesm/threads/icepack-stand-alone-dynamics_nml-from-icepack_in-get-overwritten-by-default-parameters.12290/).