Skip to content

Remove zorl interstitial variables#596

Merged
climbfuji merged 8 commits into
NCAR:masterfrom
climbfuji:remove_zorl_interstitial
Apr 15, 2021
Merged

Remove zorl interstitial variables#596
climbfuji merged 8 commits into
NCAR:masterfrom
climbfuji:remove_zorl_interstitial

Conversation

@climbfuji
Copy link
Copy Markdown
Collaborator

@climbfuji climbfuji commented Mar 17, 2021

This PR removes the zorl (surface roughness length) interstitial variables and uses the persistent variables instead. This reduces memory footprint and computational overhead.

In order to maintain b4b reproducibility with all existing regression tests, commit edc9194. Without this change, the two coupled model runs (both fractional and binary mask) using a high-resolution ocean model have slightly different results (all other tests still pass). The b4b mismatch is due to a number of isolated points over open ocean (i.e. far away from the coast) with ice fractions close to one (but not exactly one, around 0.995). I believe that the requirement to reset those points to huge values for zorl is incorrect, that this commit edc9194 should be reverted, and that the baselines for the two coupled, high-res ocean runs should be updated. @DeniseWorthen helped me investigate these differences (thanks!).

Fixes #552

Associated PRs:

#596
NOAA-EMC/ufsatm#261
ufs-community/ufs-weather-model#479

For regression testing, see ufs-community/ufs-weather-model#479.

@climbfuji climbfuji force-pushed the remove_zorl_interstitial branch from 7d739b9 to edc9194 Compare April 2, 2021 16:35
Copy link
Copy Markdown
Collaborator

@ShanSunNOAA ShanSunNOAA left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I approve it. Thanks for cleaning up, -Shan

Copy link
Copy Markdown
Contributor

@llpcarson llpcarson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good to me, approved

Copy link
Copy Markdown
Collaborator

@grantfirl grantfirl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks fine to me. Why the file permissions change on module_sf_exchcoef.f90?

@climbfuji
Copy link
Copy Markdown
Collaborator Author

Looks fine to me. Why the file permissions change on module_sf_exchcoef.f90?

This file had the executable permissions set (755), but a Fortran source file isn't an executable, therefore rw-r-r (=644) is correct.

@grantfirl
Copy link
Copy Markdown
Collaborator

Looks fine to me. Why the file permissions change on module_sf_exchcoef.f90?

This file had the executable permissions set (755), but a Fortran source file isn't an executable, therefore rw-r-r (=644) is correct.

Makes perfect sense. Thanks. I guess the file permissions were set to 755 in error at some time in the past then and this file was the only one in ccpp-physics?

@climbfuji
Copy link
Copy Markdown
Collaborator Author

Looks fine to me. Why the file permissions change on module_sf_exchcoef.f90?

This file had the executable permissions set (755), but a Fortran source file isn't an executable, therefore rw-r-r (=644) is correct.

Makes perfect sense. Thanks. I guess the file permissions were set to 755 in error at some time in the past then and this file was the only one in ccpp-physics?

We fixed several of those over time, but they keep coming back. Assuming that some users have their editors set up wrong and that the files get the executable flags automatically. We need to watch out for this in future PRs.

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

Successfully merging this pull request may close these issues.

Remove zorl interstitial variables

7 participants