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

Modularization of moving nest and storm tracker functionality. #182

Closed
wramstrom opened this issue Apr 1, 2022 · 4 comments · Fixed by NOAA-EMC/fv3atm#610 or ufs-community/ufs-weather-model#1518
Labels
enhancement New feature or request

Comments

@wramstrom
Copy link

Is your feature request related to a problem? Please describe.
Modularization of moving nest and storm tracker functionality

Describe the solution you'd like
GFDL requests a code update with the following features:

  1. Take moving nested grid code and move it into its own component (at the same level as atmos_cubed_sphere).
  2. Physics code must be moved out of FV3 or its submodules.
  3. Access FV3 exclusively through APIs defined in atmosphere.F90

Describe alternatives you've considered
AOML and GFDL agreed to initial changes for PR 179, and these additional steps to be accomplished in an upcoming release.

Additional context
Additional comments from GFDL:

You may consider promoting the moving nested grid to be a separate
component, on the same level as atmos_cubed_sphere. This would be similar to the implementation of stochastic physics. In this case, the moving nest implementation would still be dependent upon FV3 but not necessarily a part of it, and communicates with FV3 through the APIs defined in atmosphere.F90. Additionally, the vortex tracker could also be separate from the moving nest code.

While many others have implemented new capabilities within #ifdef/#endif blocks, there is a tendency to overuse this approach to mask out features which may have limited adoption. Along with the modularization recommended above, it may be acceptable to include moving nest options directly within the model without an #ifdef block.

Please note that the vast majority of FV3-based model users will not be concerned with the moving nested grids. This is especially true for our many users outside of the UFS (NASA, GFDL, NCAR, etc.) and we need to ensure the unified codebase is useful for all of our users.

Other notes:

Have computational performance (and repro?) baselines been performed to ensure other applications have not seen degraded performance?

If the simplified version of Tim’s GFDL Hurricane Tracker is useful outside of this context maybe it is better to separate it from the moving nest code

Will GFDL be responsible for maintaining the moving nested-grid code once the merge is complete? If so, it would be useful if AOML could provide some sort of documentation to explain how this works.

@wramstrom wramstrom added the enhancement New feature or request label Apr 1, 2022
@wramstrom wramstrom mentioned this issue Apr 1, 2022
6 tasks
@lharris4
Copy link
Contributor

lharris4 commented Apr 1, 2022 via email

@DusanJovic-NOAA
Copy link
Contributor

Can somebody list which specific files from this repository should be moved out to fv3atm.

@wramstrom
Copy link
Author

wramstrom commented Sep 23, 2022 via email

@laurenchilutti
Copy link
Contributor

Closing this issue as PR #227 has been merged to address this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
4 participants