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

Quartet of bug fixes for: c3 scheme, quilting restart with 32-bit physics, and string length mismatch in dycore plus PR #705 and #699 #695

Merged
merged 32 commits into from
Oct 3, 2023

Conversation

SamuelTrahanNOAA
Copy link
Contributor

@SamuelTrahanNOAA SamuelTrahanNOAA commented Sep 8, 2023

Description

Bug fixes:

  1. The write component no longer calls recover_fields for restart files. (From @DusanJovic-NOAA.) Doing so causes sporadic crashes due to corrupted longitudes when 32-bit physics is used. This only happens for restart files, who don't need recover_fields anyway. Hence, this PR restricts that call to history files.
  2. Correct a string length mismatch in the dycore. This causes an abort when the gnu compiler is run with debug flags turned on. One of the checks enabled is to abort on standard violations of this type.
  3. Changes some subroutine array argument declarations so the c3 scheme can handle null pointers. This is required by the CCPP coding standards anyway, for that very reason. Without this change, the FV3_HRRR_c3 suite crashes with the gnu compiler.
  4. Initialize arrays in dycore. (From @DusanJovic-NOAA.) Two arrays in the dycore were not initialized. That caused crashes in the quilting restart when 32-bit physics is used.

Included in this PR are:

Issue(s) addressed

Testing

How were these changes tested?

New or improved ufs-weather-model regression tests

What compilers / HPCs was it tested with?

jet, hera, cheyenne, hercules, orion, and cactus (wcoss2)

Are the changes covered by regression tests?

Some ufs-weather-model regression tests are added or modified.

Have the ufs-weather-model regression test been run? On what platform?

jet, hera, cheyenne, hercules, orion, and cactus (wcoss2)

Will the code updates change regression test baseline? If yes, why? Please show the baseline directory below.

Yes. All tests with FV3 will change due to NOAA-GFDL/GFDL_atmos_cubed_sphere#276

Please commit the regression test log files in your ufs-weather-model branch

Will do.

Dependencies

@SamuelTrahanNOAA SamuelTrahanNOAA changed the title Triad of bug fixes for: c3 scheme, quilting restart with 32-bit physics, and string length mismatch in dycore Quartet of bug fixes for: c3 scheme, quilting restart with 32-bit physics, and string length mismatch in dycore Sep 9, 2023
@SamuelTrahanNOAA
Copy link
Contributor Author

I've merged #701 into this PR since the UFS code managers plan to merge both simultaneously.

Also, I've merged #697 into this PR since that one is expected to go in first.

@SamuelTrahanNOAA SamuelTrahanNOAA changed the title Quartet of bug fixes for: c3 scheme, quilting restart with 32-bit physics, and string length mismatch in dycore Quartet of bug fixes for: c3 scheme, quilting restart with 32-bit physics, and string length mismatch in dycore plus PR #705 Sep 29, 2023
@SamuelTrahanNOAA
Copy link
Contributor Author

@haiqinli - Please confirm I merged your changes correctly.

@SamuelTrahanNOAA SamuelTrahanNOAA changed the title Quartet of bug fixes for: c3 scheme, quilting restart with 32-bit physics, and string length mismatch in dycore plus PR #705 Quartet of bug fixes for: c3 scheme, quilting restart with 32-bit physics, and string length mismatch in dycore plus PR #705 and #699 Sep 29, 2023
@haiqinli
Copy link
Contributor

@SamuelTrahanNOAA Your merging looks good to me. Thank you very much!

@grantfirl
Copy link
Collaborator

@SamuelTrahanNOAA ufs-community/ccpp-physics#102 was merged. Please prepare this one for merge.

@SamuelTrahanNOAA
Copy link
Contributor Author

This PR is ready for merge.

  • atmos_cubed_sphere is the head of the dev/emc branch of GFDL_atmos_cubed_sphere
  • ccpp/physics is the head of the ufs/dev branch of ccpp-physics
  • .gitmodules matches the current HEAD of develop

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
7 participants