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

32-bit physics with FV3_RAP #534

Merged
merged 42 commits into from
Jul 19, 2022

Conversation

SamuelTrahanNOAA
Copy link
Contributor

@SamuelTrahanNOAA SamuelTrahanNOAA commented May 12, 2022

This adds support for 32-bit physics to the FV3, based on prior work on the Neptune model. The 64-bit physics should not change results. Presently, the 32-bit physics are incompatible with MOM6 because it has conflicting stochastic_physics precision requirements, so MOM6-coupled configurations must use 64-bit physics.

Issues

ufs-community/ufs-weather-model#1288

Dependencies

NCAR/ccpp-physics#930
NOAA-GFDL/GFDL_atmos_cubed_sphere#193
earth-system-radiation/rte-rrtmgp#180 this was already merged

@junwang-noaa
Copy link
Collaborator

@SamuelTrahanNOAA For the overloading capability, would you like to try the Fortran polymorphic class? Please see example:

https://github.com/NOAA-GFDL/FMS/pull/962/files#diff-e76bad5442df93e413ddc44d0e23dd628f667843a955bb471d5ff5ea036cd944

@SamuelTrahanNOAA
Copy link
Contributor Author

@SamuelTrahanNOAA For the overloading capability, would you like to try the Fortran polymorphic class? Please see example:

https://github.com/NOAA-GFDL/FMS/pull/962/files#diff-e76bad5442df93e413ddc44d0e23dd628f667843a955bb471d5ff5ea036cd944

I think the resulting code would be just as complex, and would use features many developers don't know. If Fortran had templates or generics, I would use that, but it doesn't.

SamuelTrahanNOAA pushed a commit to SamuelTrahanNOAA/fv3atm that referenced this pull request Jun 13, 2022
* Remove FMS git submodule
* Update module files and top-level CMakeLists.txt to use fms module (library) built by hpc-stack.
* Update ci for fms library NOAA-EMC#575 (NCAR#13)

Co-authored-by: Minsuk Ji <[email protected]>
@SamuelTrahanNOAA SamuelTrahanNOAA marked this pull request as ready for review June 24, 2022 11:46
@SamuelTrahanNOAA
Copy link
Contributor Author

@SamuelTrahanNOAA For the overloading capability, would you like to try the Fortran polymorphic class? Please see example:
https://github.com/NOAA-GFDL/FMS/pull/962/files#diff-e76bad5442df93e413ddc44d0e23dd628f667843a955bb471d5ff5ea036cd944

I think the resulting code would be just as complex, and would use features many developers don't know. If Fortran had templates or generics, I would use that, but it doesn't.

I see no obvious "best way" of cleaning up this code, so I made an issue here:

#559

We can discuss a better option in that issue.

@jkbk2004
Copy link
Collaborator

@SamuelTrahanNOAA so its this pr's turn to update and merge.

@SamuelTrahanNOAA
Copy link
Contributor Author

The atmos_cubed_sphere and ccpp/physics point to the authoritative branches now. This PR is ready for final review and merge.

@SamuelTrahanNOAA
Copy link
Contributor Author

I need a second review before this can be merged.

@DusanJovic-NOAA DusanJovic-NOAA merged commit 9743346 into NOAA-EMC:develop Jul 19, 2022
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.

5 participants