This PR adds the ability for the Pace driver to handle doubly-periodic domains. The grid_type setting is specified in the grid config section and is copied to the dycore config (as opposed to Fortran, which specifies grid_config in the dycore config)
Code changes:
driver/examples/configs/baroclinic_c12_dp.yaml: Added to test the doubly-periodic configuration handling
driver/pace/driver/driver.py: grid_type copied from grid_config to dycore_config if nonzero
driver/pace/driver/grid.py: Added grid_type, dx_const, dy_const, and deglat to the GeneratedGridConfig class, pass them to MetricTerms generation
fv3core/pace/fv3core/_config.py: added u_max to dycore config
tests/main/driver/test_example_configs.py: Added baroclinic_c12_dp config to tests
util/pace/util/grid/generation.py: Added grid_type, dx_const, dy_const, and deglat as input args for doubly-periodic grid generation
util/pace/util/namelist.py: Added dx_const, dy_const, deglat, and u_max as namelist settings for doubly periodic runs
util/HISTORY.md: Updated with latest additions to the utils
Checklist
Before submitting this PR, please make sure:
[x] You have followed the coding standards guidelines established at Code Review Checklist.
[x] Docstrings and type hints are added to new and updated routines, as appropriate
[x] All relevant documentation has been updated or added (e.g. README, CONTRIBUTING docs)
[x] For each public change and fix in pace-util, HISTORY has been updated
[x] Unit tests are added or updated for non-stencil code changes
Purpose
This PR adds the ability for the Pace driver to handle doubly-periodic domains. The grid_type setting is specified in the grid config section and is copied to the dycore config (as opposed to Fortran, which specifies grid_config in the dycore config)
Code changes:
driver/examples/configs/baroclinic_c12_dp.yaml
: Added to test the doubly-periodic configuration handlingdriver/pace/driver/driver.py
: grid_type copied from grid_config to dycore_config if nonzerodriver/pace/driver/grid.py
: Added grid_type, dx_const, dy_const, and deglat to the GeneratedGridConfig class, pass them to MetricTerms generationfv3core/pace/fv3core/_config.py
: added u_max to dycore configtests/main/driver/test_example_configs.py
: Added baroclinic_c12_dp config to testsutil/pace/util/grid/generation.py
: Added grid_type, dx_const, dy_const, and deglat as input args for doubly-periodic grid generationutil/pace/util/namelist.py
: Added dx_const, dy_const, deglat, and u_max as namelist settings for doubly periodic runsutil/HISTORY.md
: Updated with latest additions to the utilsChecklist
Before submitting this PR, please make sure:
pace-util
, HISTORY has been updated