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

NUOPC and MCT drivers should not use FMS directly #1578

Open
Hallberg-NOAA opened this issue Jul 22, 2022 · 0 comments
Open

NUOPC and MCT drivers should not use FMS directly #1578

Hallberg-NOAA opened this issue Jul 22, 2022 · 0 comments

Comments

@Hallberg-NOAA
Copy link
Collaborator

Throughout the MOM6 code, we have tried to route all calls to FMS routines via routines in the config/src/infra/ directories, in most cases going first through interfaces in the src/framework directory. This includes the code in config_src/drivers/FMS_cap and in
config_src/drivers/solo_driver. However, there are several module use statements in the code in config_src/drivers/mct_cap and config_src/drivers/nuopc cap that are instead using FMS code directly.

Calling FMS via MOM6 wrappers allows us to document and extend the interfaces as used by MOM6 (and SIS2), and it is essential for preserving backward compatibility with older versions of FMS and with gracefully allowing the transitions to newer versions of FMS while minimizing the disruption to MOM6 users.

The MCT_cap and NUOPC_cap driver code should be modified to use the MOM6 wrappers for all calls to use FMS routines, similarly to what was already done in the FMS_cap driver code. Doing so should not change any answers, and it should not substantially alter the run-time, but it will allow for the graceful use of newer versions of FMS and prevent disruptions from using interfaces that are being dropped from FMS.

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

No branches or pull requests

1 participant