From 639a60feff5425ae7002d01d1fa0bf10a8bade31 Mon Sep 17 00:00:00 2001 From: gsketefian <31046882+gsketefian@users.noreply.github.com> Date: Mon, 27 Jun 2022 10:18:48 -0600 Subject: [PATCH] [develop] Rename variables related to GFDLgrid-type grids (#787) ## DESCRIPTION OF CHANGES: For clarity, rename variables related to GFDLgrid-type grids: 1) Rename `GFDLgrid_RES` to `GFDLgrid_NUM_CELLS`. 2) Rename `GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES` to `GFDLgrid_USE_NUM_CELLS_IN_FILENAMES`. 3) Rename WE2E tests on GFDLgrid-type custom grids according to variable renaming above. Related improvements: * In `link_fix.sh`, remove creation of unnecessary symlink when using a GFDLgrid-type grid with `GFDLgrid_USE_NUM_CELLS_IN_FILENAMES` is set to `"FALSE"`. * In WE2E test configuration files that use custom grids, move the definition of the variable `POST_OUTPUT_DOMAIN_NAME` to the beginning of the custom grid definition because it is really the name of the custom native grid, and it's most appropriate to place that at the beginning of the grid definition section. * Reduce `WTIME_MAKE_OROG` from 1 hour to 20 minutes since on Hera, 1 hour causes the task to wait quite a while in the queue. This used to be 20 minutes but was changed to 1 hour because 20 minutes was not sufficient to complete the task on `WCOSS_DELL_P3`. Thus, reset it to 1 hour only in the machine file for `WCOSS_DELL_P3`. * Minor fixes to comments in python plotting scripts. * Edits to other comments. ## TESTS CONDUCTED: Ran the four WE2E tests that use custom grids (listed below) on Hera. All were successful. * `custom_ESGgrid` * `custom_GFDLgrid` * `custom_GFDLgrid__GFDLgrid_USE_NUM_CELLS_IN_FILENAMES_eq_FALSE` (previously `custom_GFDLgrid__GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES_eq_FALSE`) * `custom_GFDLgrid__GFDLgrid_USE_NUM_CELLS_IN_FILENAMES_eq_TRUE` (previously `custom_GFDLgrid__GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES_eq_TRUE`) ## DEPENDENCIES: PR #[310](https://github.com/ufs-community/ufs-srweather-app/pull/310) in `ufs-srweather-app`. ## DOCUMENTATION: Updates to documentation are in PR #[310](https://github.com/ufs-community/ufs-srweather-app/pull/310) in `ufs-srweather-app`. --- scripts/exregional_make_grid.sh | 6 +- scripts/exregional_make_orog.sh | 2 +- scripts/exregional_run_fcst.sh | 4 +- .../WE2E/get_WE2Etest_names_subdirs_descs.sh | 10 +- .../wflow_features/config.custom_ESGgrid.sh | 3 +- .../wflow_features/config.custom_GFDLgrid.sh | 19 ++- ...id_USE_NUM_CELLS_IN_FILENAMES_eq_FALSE.sh} | 17 ++- ...rid_USE_NUM_CELLS_IN_FILENAMES_eq_TRUE.sh} | 17 ++- ush/Python/plot_allvars.py | 2 +- ush/Python/plot_allvars_diff.py | 2 +- ush/config_defaults.sh | 112 +++++++++--------- ush/link_fix.sh | 20 ---- ush/machine/wcoss_dell_p3.sh | 4 + ush/set_predef_grid_params.sh | 48 ++++---- ush/setup.sh | 16 +-- ush/valid_param_vals.sh | 2 +- 16 files changed, 130 insertions(+), 154 deletions(-) rename tests/WE2E/test_configs/wflow_features/{config.custom_GFDLgrid__GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES_eq_FALSE.sh => config.custom_GFDLgrid__GFDLgrid_USE_NUM_CELLS_IN_FILENAMES_eq_FALSE.sh} (82%) rename tests/WE2E/test_configs/wflow_features/{config.custom_GFDLgrid__GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES_eq_TRUE.sh => config.custom_GFDLgrid__GFDLgrid_USE_NUM_CELLS_IN_FILENAMES_eq_TRUE.sh} (81%) diff --git a/scripts/exregional_make_grid.sh b/scripts/exregional_make_grid.sh index 3744638c8d..de27902e32 100755 --- a/scripts/exregional_make_grid.sh +++ b/scripts/exregional_make_grid.sh @@ -246,7 +246,7 @@ if [ "${GRID_GEN_METHOD}" = "GFDLgrid" ]; then # Set local variables needed in the call to the executable that generates # a GFDLgrid-type grid. # - nx_t6sg=$(( 2*GFDLgrid_RES )) + nx_t6sg=$(( 2*GFDLgrid_NUM_CELLS )) grid_name="${GRID_GEN_METHOD}" # # Call the executable that generates the grid file. Note that this call @@ -402,8 +402,8 @@ res_equiv=${res_equiv//$'\n'/} #----------------------------------------------------------------------- # if [ "${GRID_GEN_METHOD}" = "GFDLgrid" ]; then - if [ "${GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES}" = "TRUE" ]; then - CRES="C${GFDLgrid_RES}" + if [ "${GFDLgrid_USE_NUM_CELLS_IN_FILENAMES}" = "TRUE" ]; then + CRES="C${GFDLgrid_NUM_CELLS}" else CRES="C${res_equiv}" fi diff --git a/scripts/exregional_make_orog.sh b/scripts/exregional_make_orog.sh index 1a4d528f24..58e453a97a 100755 --- a/scripts/exregional_make_orog.sh +++ b/scripts/exregional_make_orog.sh @@ -373,7 +373,7 @@ if [ "${GRID_GEN_METHOD}" = "GFDLgrid" ]; then # # Really depends on what EMC wants to do. - res="${GFDLgrid_RES}" + res="${GFDLgrid_NUM_CELLS}" # stretch_fac="${GFDLgrid_STRETCH_FAC}" refine_ratio="${GFDLgrid_REFINE_RATIO}" diff --git a/scripts/exregional_run_fcst.sh b/scripts/exregional_run_fcst.sh index 2f768a6572..8593f9c536 100755 --- a/scripts/exregional_run_fcst.sh +++ b/scripts/exregional_run_fcst.sh @@ -167,8 +167,8 @@ create_symlink_to_file target="$target" symlink="$symlink" \ #target="${FIXLAM}/${CRES}${DOT_OR_USCORE}grid.tile${TILE_RGNL}.halo${NH3}.nc" #if [ "${RUN_TASK_MAKE_SFC_CLIMO}" = "TRUE" ] && \ # [ "${GRID_GEN_METHOD}" = "GFDLgrid" ] && \ -# [ "${GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES}" = "FALSE" ]; then -# symlink="C${GFDLgrid_RES}${DOT_OR_USCORE}grid.tile${TILE_RGNL}.nc" +# [ "${GFDLgrid_USE_NUM_CELLS_IN_FILENAMES}" = "FALSE" ]; then +# symlink="C${GFDLgrid_NUM_CELLS}${DOT_OR_USCORE}grid.tile${TILE_RGNL}.nc" #else # symlink="${CRES}${DOT_OR_USCORE}grid.tile${TILE_RGNL}.nc" #fi diff --git a/tests/WE2E/get_WE2Etest_names_subdirs_descs.sh b/tests/WE2E/get_WE2Etest_names_subdirs_descs.sh index c2a6f72fc6..39dc68f516 100755 --- a/tests/WE2E/get_WE2Etest_names_subdirs_descs.sh +++ b/tests/WE2E/get_WE2Etest_names_subdirs_descs.sh @@ -409,7 +409,7 @@ function get_WE2Etest_names_subdirs_descs() { \ gfdlgrid_lon_t6_ctr \ gfdlgrid_lat_t6_ctr \ - gfdlgrid_res \ + gfdlgrid_num_cells \ gfdlgrid_stretch_fac \ gfdlgrid_refine_ratio \ gfdlgrid_istart_of_rgnl_dom_on_t6g \ @@ -1245,7 +1245,7 @@ ${test_desc}${stripped_line} " outvarname_gfdlgrid_lon_t6_ctr="gfdlgrid_lon_t6_ctr" \ outvarname_gfdlgrid_lat_t6_ctr="gfdlgrid_lat_t6_ctr" \ outvarname_gfdlgrid_stretch_fac="gfdlgrid_stretch_fac" \ - outvarname_gfdlgrid_res="gfdlgrid_res" \ + outvarname_gfdlgrid_num_cells="gfdlgrid_num_cells" \ outvarname_gfdlgrid_refine_ratio="gfdlgrid_refine_ratio" \ outvarname_gfdlgrid_istart_of_rgnl_dom_on_t6g="gfdlgrid_istart_of_rgnl_dom_on_t6g" \ outvarname_gfdlgrid_iend_of_rgnl_dom_on_t6g="gfdlgrid_iend_of_rgnl_dom_on_t6g" \ @@ -1264,7 +1264,7 @@ ${test_desc}${stripped_line} " if [ "${grid_gen_method}" = "GFDLgrid" ]; then gfdlgrid_lon_t6_ctr="${GFDLgrid_LON_T6_CTR}" gfdlgrid_lat_t6_ctr="${GFDLgrid_LAT_T6_CTR}" - gfdlgrid_res="${GFDLgrid_RES}" + gfdlgrid_num_cells="${GFDLgrid_NUM_CELLS}" gfdlgrid_stretch_fac="${GFDLgrid_STRETCH_FAC}" gfdlgrid_refine_ratio="${GFDLgrid_REFINE_RATIO}" gfdlgrid_istart_of_rgnl_dom_on_t6g="${GFDLgrid_ISTART_OF_RGNL_DOM_ON_T6G}" @@ -1305,7 +1305,7 @@ ${test_desc}${stripped_line} " set_gridparams_GFDLgrid \ lon_of_t6_ctr="${gfdlgrid_lon_t6_ctr}" \ lat_of_t6_ctr="${gfdlgrid_lat_t6_ctr}" \ - res_of_t6g="${gfdlgrid_res}" \ + res_of_t6g="${gfdlgrid_num_cells}" \ stretch_factor="${gfdlgrid_stretch_fac}" \ refine_ratio_t6g_to_t7g="${gfdlgrid_refine_ratio}" \ istart_of_t7_on_t6g="${gfdlgrid_istart_of_rgnl_dom_on_t6g}" \ @@ -1353,7 +1353,7 @@ ${test_desc}${stripped_line} " # unset gfdlgrid_lon_t6_ctr \ gfdlgrid_lat_t6_ctr \ - gfdlgrid_res \ + gfdlgrid_num_cells \ gfdlgrid_stretch_fac \ gfdlgrid_refine_ratio \ gfdlgrid_istart_of_rgnl_dom_on_t6g \ diff --git a/tests/WE2E/test_configs/wflow_features/config.custom_ESGgrid.sh b/tests/WE2E/test_configs/wflow_features/config.custom_ESGgrid.sh index f78fdf7e0d..86b3ff0b74 100644 --- a/tests/WE2E/test_configs/wflow_features/config.custom_ESGgrid.sh +++ b/tests/WE2E/test_configs/wflow_features/config.custom_ESGgrid.sh @@ -25,6 +25,7 @@ LBC_SPEC_INTVL_HRS="3" # # Define custom grid. # +POST_OUTPUT_DOMAIN_NAME="custom_ESGgrid" GRID_GEN_METHOD="ESGgrid" ESGgrid_LON_CTR="-97.5" @@ -46,8 +47,6 @@ LAYOUT_X="8" LAYOUT_Y="12" BLOCKSIZE="13" -POST_OUTPUT_DOMAIN_NAME="custom_ESGgrid" - QUILTING="TRUE" if [ "$QUILTING" = "TRUE" ]; then WRTCMP_write_groups="1" diff --git a/tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid.sh b/tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid.sh index 66604a5491..db148e3ab2 100644 --- a/tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid.sh +++ b/tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid.sh @@ -7,14 +7,14 @@ # workflow) of GFDLgrid type. Note that this test sets the workflow # variable # -# GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES +# GFDLgrid_USE_NUM_CELLS_IN_FILENAMES # -# to "TRUE" (which is its default value); see the UFS SRW User's Guide -# for a description of this variable. +# to "TRUE" (which is its default value); see the UFS SRW App's User's +# Guide for a description of this variable. # # The difference between this test and the one named # -# new_GFDLgrid__GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES_eq_TRUE +# new_GFDLgrid__GFDLgrid_USE_NUM_CELLS_IN_FILENAMES_eq_TRUE # # is that this one uses almost no stretching by setting the workflow # variable GFDLgrid_STRETCH_FAC very close to 1. Setting it exactly to @@ -42,12 +42,13 @@ LBC_SPEC_INTVL_HRS="3" # # Define custom grid. # +POST_OUTPUT_DOMAIN_NAME="custom_GFDLgrid" GRID_GEN_METHOD="GFDLgrid" GFDLgrid_LON_T6_CTR="-97.5" GFDLgrid_LAT_T6_CTR="38.5" GFDLgrid_STRETCH_FAC="1.0001" # Cannot be exactly 1.0 because then FV3 thinnks it's a global grid. This needs to be fixed in the ufs_weather_model repo. -GFDLgrid_RES="96" +GFDLgrid_NUM_CELLS="96" GFDLgrid_REFINE_RATIO="2" #num_margin_cells_T6_left="9" @@ -55,7 +56,7 @@ GFDLgrid_REFINE_RATIO="2" GFDLgrid_ISTART_OF_RGNL_DOM_ON_T6G="10" #num_margin_cells_T6_right="9" -#GFDLgrid_IEND_OF_RGNL_DOM_ON_T6G=$(( GFDLgrid_RES - num_margin_cells_T6_right )) +#GFDLgrid_IEND_OF_RGNL_DOM_ON_T6G=$(( GFDLgrid_NUM_CELLS - num_margin_cells_T6_right )) GFDLgrid_IEND_OF_RGNL_DOM_ON_T6G="87" #num_margin_cells_T6_bottom="9" @@ -64,11 +65,11 @@ GFDLgrid_IEND_OF_RGNL_DOM_ON_T6G="87" GFDLgrid_JSTART_OF_RGNL_DOM_ON_T6G="19" #num_margin_cells_T6_top="9" -#GFDLgrid_JEND_OF_RGNL_DOM_ON_T6G=$(( GFDLgrid_RES - num_margin_cells_T6_top )) +#GFDLgrid_JEND_OF_RGNL_DOM_ON_T6G=$(( GFDLgrid_NUM_CELLS - num_margin_cells_T6_top )) #GFDLgrid_JEND_OF_RGNL_DOM_ON_T6G="87" GFDLgrid_JEND_OF_RGNL_DOM_ON_T6G="78" -GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES="TRUE" +GFDLgrid_USE_NUM_CELLS_IN_FILENAMES="TRUE" DT_ATMOS="100" @@ -76,8 +77,6 @@ LAYOUT_X="6" LAYOUT_Y="6" BLOCKSIZE="26" -POST_OUTPUT_DOMAIN_NAME="custom_GFDLgrid" - QUILTING="TRUE" if [ "$QUILTING" = "TRUE" ]; then WRTCMP_write_groups="1" diff --git a/tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid__GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES_eq_FALSE.sh b/tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid__GFDLgrid_USE_NUM_CELLS_IN_FILENAMES_eq_FALSE.sh similarity index 82% rename from tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid__GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES_eq_FALSE.sh rename to tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid__GFDLgrid_USE_NUM_CELLS_IN_FILENAMES_eq_FALSE.sh index 4c4f0d5c75..ff4d928094 100644 --- a/tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid__GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES_eq_FALSE.sh +++ b/tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid__GFDLgrid_USE_NUM_CELLS_IN_FILENAMES_eq_FALSE.sh @@ -7,10 +7,10 @@ # workflow) of GFDLgrid type. Note that this test sets the workflow # variable # -# GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES +# GFDLgrid_USE_NUM_CELLS_IN_FILENAMES # -# to "FALSE"; see the UFS SRW User's Guide for a description of this -# variable. +# to "FALSE"; see the UFS SRW App's User's Guide for a description of +# this variable. # RUN_ENVIR="community" @@ -31,12 +31,13 @@ LBC_SPEC_INTVL_HRS="3" # # Define custom grid. # +POST_OUTPUT_DOMAIN_NAME="custom_GFDLgrid" GRID_GEN_METHOD="GFDLgrid" GFDLgrid_LON_T6_CTR="-97.5" GFDLgrid_LAT_T6_CTR="38.5" GFDLgrid_STRETCH_FAC="1.5" -GFDLgrid_RES="96" +GFDLgrid_NUM_CELLS="96" GFDLgrid_REFINE_RATIO="2" #num_margin_cells_T6_left="9" @@ -44,7 +45,7 @@ GFDLgrid_REFINE_RATIO="2" GFDLgrid_ISTART_OF_RGNL_DOM_ON_T6G="10" #num_margin_cells_T6_right="9" -#GFDLgrid_IEND_OF_RGNL_DOM_ON_T6G=$(( GFDLgrid_RES - num_margin_cells_T6_right )) +#GFDLgrid_IEND_OF_RGNL_DOM_ON_T6G=$(( GFDLgrid_NUM_CELLS - num_margin_cells_T6_right )) GFDLgrid_IEND_OF_RGNL_DOM_ON_T6G="87" #num_margin_cells_T6_bottom="9" @@ -52,10 +53,10 @@ GFDLgrid_IEND_OF_RGNL_DOM_ON_T6G="87" GFDLgrid_JSTART_OF_RGNL_DOM_ON_T6G="10" #num_margin_cells_T6_top="9" -#GFDLgrid_JEND_OF_RGNL_DOM_ON_T6G=$(( GFDLgrid_RES - num_margin_cells_T6_top )) +#GFDLgrid_JEND_OF_RGNL_DOM_ON_T6G=$(( GFDLgrid_NUM_CELLS - num_margin_cells_T6_top )) GFDLgrid_JEND_OF_RGNL_DOM_ON_T6G="87" -GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES="FALSE" +GFDLgrid_USE_NUM_CELLS_IN_FILENAMES="FALSE" DT_ATMOS="100" @@ -63,8 +64,6 @@ LAYOUT_X="6" LAYOUT_Y="6" BLOCKSIZE="26" -POST_OUTPUT_DOMAIN_NAME="custom_GFDLgrid" - QUILTING="TRUE" if [ "$QUILTING" = "TRUE" ]; then WRTCMP_write_groups="1" diff --git a/tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid__GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES_eq_TRUE.sh b/tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid__GFDLgrid_USE_NUM_CELLS_IN_FILENAMES_eq_TRUE.sh similarity index 81% rename from tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid__GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES_eq_TRUE.sh rename to tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid__GFDLgrid_USE_NUM_CELLS_IN_FILENAMES_eq_TRUE.sh index 3e067ee3d2..dc5d79c2ef 100644 --- a/tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid__GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES_eq_TRUE.sh +++ b/tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid__GFDLgrid_USE_NUM_CELLS_IN_FILENAMES_eq_TRUE.sh @@ -7,10 +7,10 @@ # workflow) of GFDLgrid type. Note that this test sets the workflow # variable # -# GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES +# GFDLgrid_USE_NUM_CELLS_IN_FILENAMES # -# to "TRUE" (which is its default value); see the UFS SRW User's Guide -# for a description of this variable. +# to "TRUE" (which is its default value); see the UFS SRW App's User's +# Guide for a description of this variable. # RUN_ENVIR="community" @@ -31,12 +31,13 @@ LBC_SPEC_INTVL_HRS="3" # # Define custom grid. # +POST_OUTPUT_DOMAIN_NAME="custom_GFDLgrid" GRID_GEN_METHOD="GFDLgrid" GFDLgrid_LON_T6_CTR="-97.5" GFDLgrid_LAT_T6_CTR="38.5" GFDLgrid_STRETCH_FAC="1.5" -GFDLgrid_RES="96" +GFDLgrid_NUM_CELLS="96" GFDLgrid_REFINE_RATIO="2" #num_margin_cells_T6_left="9" @@ -44,7 +45,7 @@ GFDLgrid_REFINE_RATIO="2" GFDLgrid_ISTART_OF_RGNL_DOM_ON_T6G="10" #num_margin_cells_T6_right="9" -#GFDLgrid_IEND_OF_RGNL_DOM_ON_T6G=$(( GFDLgrid_RES - num_margin_cells_T6_right )) +#GFDLgrid_IEND_OF_RGNL_DOM_ON_T6G=$(( GFDLgrid_NUM_CELLS - num_margin_cells_T6_right )) GFDLgrid_IEND_OF_RGNL_DOM_ON_T6G="87" #num_margin_cells_T6_bottom="9" @@ -52,10 +53,10 @@ GFDLgrid_IEND_OF_RGNL_DOM_ON_T6G="87" GFDLgrid_JSTART_OF_RGNL_DOM_ON_T6G="10" #num_margin_cells_T6_top="9" -#GFDLgrid_JEND_OF_RGNL_DOM_ON_T6G=$(( GFDLgrid_RES - num_margin_cells_T6_top )) +#GFDLgrid_JEND_OF_RGNL_DOM_ON_T6G=$(( GFDLgrid_NUM_CELLS - num_margin_cells_T6_top )) GFDLgrid_JEND_OF_RGNL_DOM_ON_T6G="87" -GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES="TRUE" +GFDLgrid_USE_NUM_CELLS_IN_FILENAMES="TRUE" DT_ATMOS="100" @@ -63,8 +64,6 @@ LAYOUT_X="6" LAYOUT_Y="6" BLOCKSIZE="26" -POST_OUTPUT_DOMAIN_NAME="custom_GFDLgrid" - QUILTING="TRUE" if [ "$QUILTING" = "TRUE" ]; then WRTCMP_write_groups="1" diff --git a/ush/Python/plot_allvars.py b/ush/Python/plot_allvars.py index 97a9afdbf1..3af564e522 100755 --- a/ush/Python/plot_allvars.py +++ b/ush/Python/plot_allvars.py @@ -9,7 +9,7 @@ # David Wright Org: University of Michigan # # Instructions: Make sure all the necessary modules can be imported. -# Six command line arguments are needed: +# The following command line arguments are needed: # 1. Cycle date/time in YYYYMMDDHH format # 2. Starting forecast hour # 3. Ending forecast hour diff --git a/ush/Python/plot_allvars_diff.py b/ush/Python/plot_allvars_diff.py index fe4cb56ebc..ec85df2e5b 100755 --- a/ush/Python/plot_allvars_diff.py +++ b/ush/Python/plot_allvars_diff.py @@ -9,7 +9,7 @@ # David Wright Org: University of Michigan # # Instructions: Make sure all the necessary modules can be imported. -# Seven command line arguments are needed: +# The following command line arguments are needed: # 1. Cycle date/time in YYYYMMDDHH format # 2. Starting forecast hour # 3. Ending forecast hour diff --git a/ush/config_defaults.sh b/ush/config_defaults.sh index eb04c68be1..6790d66861 100644 --- a/ush/config_defaults.sh +++ b/ush/config_defaults.sh @@ -807,20 +807,20 @@ GRID_GEN_METHOD="" # though the model equations are not integrated on (they are integrated # only on the regional grid). # -# * GFDLgrid_RES is the number of grid cells in either one of the two -# horizontal directions x and y on any one of the 6 tiles of the parent -# global cubed-sphere grid. The mapping from GFDLgrid_RES to a nominal -# resolution (grid cell size) for a uniform global grid (i.e. Schmidt -# stretch factor GFDLgrid_STRETCH_FAC set to 1) for several values of -# GFDLgrid_RES is as follows: -# -# GFDLgrid_RES typical cell size -# ------------ ----------------- -# 192 50 km -# 384 25 km -# 768 13 km -# 1152 8.5 km -# 3072 3.2 km +# * GFDLgrid_NUM_CELLS is the number of grid cells in either one of the +# two horizontal directions x and y on any one of the 6 tiles of the +# parent global cubed-sphere grid. The mapping from GFDLgrid_NUM_CELLS +# to a nominal resolution (grid cell size) for a uniform global grid +# (i.e. Schmidt stretch factor GFDLgrid_STRETCH_FAC set to 1) for +# several values of GFDLgrid_NUM_CELLS is as follows: +# +# GFDLgrid_NUM_CELLS typical cell size +# ------------------ ----------------- +# 192 50 km +# 384 25 km +# 768 13 km +# 1152 8.5 km +# 3072 3.2 km # # Note that these are only typical cell sizes. The actual cell size on # the global grid tiles varies somewhat as we move across a tile. @@ -835,10 +835,10 @@ GRID_GEN_METHOD="" # 1 (but still greater than 0) expands it. The remaining 5 tiles change # shape as necessary to maintain global coverage of the grid. # -# * The cell size on a given global tile depends on both GFDLgrid_RES and -# GFDLgrid_STRETCH_FAC (since changing GFDLgrid_RES changes the number -# of cells in the tile, and changing GFDLgrid_STRETCH_FAC modifies the -# shape and size of the tile). +# * The cell size on a given global tile depends on both GFDLgrid_NUM_CELLS +# and GFDLgrid_STRETCH_FAC (since changing GFDLgrid_NUM_CELLS changes +# the number of cells in the tile, and changing GFDLgrid_STRETCH_FAC +# modifies the shape and size of the tile). # # * The regional grid is embedded within tile 6 (i.e. it doesn't extend # beyond the boundary of tile 6). Its exact location within tile 6 is @@ -861,13 +861,13 @@ GRID_GEN_METHOD="" # # * GFDLgrid_REFINE_RATIO is the refinement ratio of the regional grid # (tile 7) with respect to the grid on its parent tile (tile 6), i.e. -# it is the number of grid cells along the boundary of the regional grid -# that abut one cell on tile 6. Thus, the cell size on the regional -# grid depends not only on GFDLgrid_RES and GFDLgrid_STRETCH_FAC (because -# the cell size on tile 6 depends on these two parameters) but also on -# GFDLgrid_REFINE_RATIO. Note that as on the tiles of the global grid, -# the cell size on the regional grid is not uniform but varies as we -# move across the grid. +# it is the number of grid cells along the boundary of the regional +# grid that abut one cell on tile 6. Thus, the cell size on the regional +# grid depends not only on GFDLgrid_NUM_CELLS and GFDLgrid_STRETCH_FAC +# (because the cell size on tile 6 depends on these two parameters) +# but also on GFDLgrid_REFINE_RATIO. Note that as on the tiles of the +# global grid, the cell size on the regional grid is not uniform but +# varies as we move across the grid. # # Definitions of parameters that need to be specified when GRID_GEN_METHOD # is set to "GFDLgrid": @@ -878,14 +878,9 @@ GRID_GEN_METHOD="" # GFDLgrid_LAT_T6_CTR: # Latitude of the center of tile 6 (in degrees). # -# GFDLgrid_RES: -# Number of points in each of the two horizontal directions (x and y) on -# each tile of the parent global grid. Note that the name of this parameter -# is really a misnomer because although it has the stirng "RES" (for -# "resolution") in its name, it specifies number of grid cells, not grid -# size (in say meters or kilometers). However, we keep this name in order -# to remain consistent with the usage of the word "resolution" in the -# global forecast model and other auxiliary codes. +# GFDLgrid_NUM_CELLS: +# Number of grid cells in each of the two horizontal directions (x and +# y) on each tile of the parent global grid. # # GFDLgrid_STRETCH_FAC: # Stretching factor used in the Schmidt transformation applied to the @@ -908,29 +903,30 @@ GRID_GEN_METHOD="" # GFDLgrid_JEND_OF_RGNL_DOM_ON_T6G: # j-index on tile 6 at which the regional grid (tile 7) ends. # -# GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES: -# Flag that determines the file naming convention to use for grid, orography, -# and surface climatology files (or, if using pregenerated files, the -# naming convention that was used to name these files). These files -# usually start with the string "C${RES}_", where RES is an integer. -# In the global forecast model, RES is the number of points in each of -# the two horizontal directions (x and y) on each tile of the global grid -# (defined here as GFDLgrid_RES). If this flag is set to "TRUE", RES will -# be set to GFDLgrid_RES just as in the global forecast model. If it is -# set to "FALSE", we calculate (in the grid generation task) an "equivalent -# global uniform cubed-sphere resolution" -- call it RES_EQUIV -- and -# then set RES equal to it. RES_EQUIV is the number of grid points in -# each of the x and y directions on each tile that a global UNIFORM (i.e. -# stretch factor of 1) cubed-sphere grid would have to have in order to -# have the same average grid size as the regional grid. This is a more -# useful indicator of the grid size because it takes into account the -# effects of GFDLgrid_RES, GFDLgrid_STRETCH_FAC, and GFDLgrid_REFINE_RATIO -# in determining the regional grid's typical grid size, whereas simply -# setting RES to GFDLgrid_RES doesn't take into account the effects of +# GFDLgrid_USE_NUM_CELLS_IN_FILENAMES: +# Flag that determines the file naming convention to use for grid, +# orography, and surface climatology files (or, if using pregenerated +# files, the naming convention that was used to name these files). +# These files usually start with the string "C${RES}_", where RES is an +# integer. In the global forecast model, RES is the number of grid +# cells in each of the two horizontal directions (x and y) on each tile +# of the global grid (defined here as GFDLgrid_NUM_CELLS). If this flag +# is set to "TRUE", RES will be set to GFDLgrid_NUM_CELLS just as in the +# global forecast model. If it is set to "FALSE", we calculate (in the +# grid generation task) an "equivalent global uniform cubed-sphere +# resolution" -- call it RES_EQUIV -- and then set RES equal to it. +# RES_EQUIV is the number of grid points in each of the x and y directions +# on each tile that a global UNIFORM (i.e. stretch factor of 1) cubed- +# sphere grid would have to have in order to have the same average grid +# size as the regional grid. This is a more useful indicator of the grid +# size because it takes into account the effects of GFDLgrid_NUM_CELLS, +# GFDLgrid_STRETCH_FAC, and GFDLgrid_REFINE_RATIO in determining the +# regional grid's typical grid size, whereas simply setting RES to +# GFDLgrid_NUM_CELLS doesn't take into account the effects of # GFDLgrid_STRETCH_FAC and GFDLgrid_REFINE_RATIO on the regional grid's -# resolution. Nevertheless, some users still prefer to use GFDLgrid_RES -# in the file names, so we allow for that here by setting this flag to -# "TRUE". +# resolution. Nevertheless, some users still prefer to use +# GFDLgrid_NUM_CELLS in the file names, so we allow for that here by +# setting this flag to "TRUE". # # Note that: # @@ -964,14 +960,14 @@ GRID_GEN_METHOD="" # GFDLgrid_LON_T6_CTR="" GFDLgrid_LAT_T6_CTR="" -GFDLgrid_RES="" +GFDLgrid_NUM_CELLS="" GFDLgrid_STRETCH_FAC="" GFDLgrid_REFINE_RATIO="" GFDLgrid_ISTART_OF_RGNL_DOM_ON_T6G="" GFDLgrid_IEND_OF_RGNL_DOM_ON_T6G="" GFDLgrid_JSTART_OF_RGNL_DOM_ON_T6G="" GFDLgrid_JEND_OF_RGNL_DOM_ON_T6G="" -GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES="" +GFDLgrid_USE_NUM_CELLS_IN_FILENAMES="" # #----------------------------------------------------------------------- # @@ -1651,7 +1647,7 @@ PPN_VX_ENSPOINT_PROB="1" # Walltimes. # WTIME_MAKE_GRID="00:20:00" -WTIME_MAKE_OROG="01:00:00" +WTIME_MAKE_OROG="00:20:00" WTIME_MAKE_SFC_CLIMO="00:20:00" WTIME_GET_EXTRN_ICS="00:45:00" WTIME_GET_EXTRN_LBCS="00:45:00" diff --git a/ush/link_fix.sh b/ush/link_fix.sh index 0bfd5c03d8..48bf0ca3f8 100755 --- a/ush/link_fix.sh +++ b/ush/link_fix.sh @@ -398,29 +398,9 @@ Please ensure that all files have the same resolution." #----------------------------------------------------------------------- # if [ "${file_group}" = "grid" ]; then - target="${cres}${DOT_OR_USCORE}grid.tile${TILE_RGNL}.halo${NH4}.nc" symlink="${cres}${DOT_OR_USCORE}grid.tile${TILE_RGNL}.nc" create_symlink_to_file target="$target" symlink="$symlink" relative="TRUE" -# -# The surface climatology file generation code looks for a grid file -# having a name of the form "C${GFDLgrid_RES}_grid.tile7.halo4.nc" (i.e. -# the C-resolution used in the name of this file is the number of grid -# points per horizontal direction per tile, just like in the global model). -# Thus, if we are running the MAKE_SFC_CLIMO_TN task, if the grid is of -# GFDLgrid type, and if we are not using GFDLgrid_RES in filenames (i.e. -# we are using the equivalent global uniform grid resolution instead), -# then create a link whose name uses the GFDLgrid_RES that points to the -# link whose name uses the equivalent global uniform resolution. -# - if [ "${RUN_TASK_MAKE_SFC_CLIMO}" = "TRUE" ] && \ - [ "${GRID_GEN_METHOD}" = "GFDLgrid" ] && \ - [ "${GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES}" = "FALSE" ]; then - target="${cres}${DOT_OR_USCORE}grid.tile${TILE_RGNL}.halo${NH4}.nc" - symlink="C${GFDLgrid_RES}${DOT_OR_USCORE}grid.tile${TILE_RGNL}.nc" - create_symlink_to_file target="$target" symlink="$symlink" relative="TRUE" - fi - fi # #----------------------------------------------------------------------- diff --git a/ush/machine/wcoss_dell_p3.sh b/ush/machine/wcoss_dell_p3.sh index 1794452d16..c4b6b038d7 100644 --- a/ush/machine/wcoss_dell_p3.sh +++ b/ush/machine/wcoss_dell_p3.sh @@ -83,3 +83,7 @@ MET_BIN_EXEC=${MET_BIN_EXEC:-"exec"} TEST_PREGEN_BASEDIR="${staged_data_dir}/FV3LAM_pregen" TEST_COMIN="${staged_data_dir}/COMGFS" TEST_EXTRN_MDL_SOURCE_BASEDIR="${staged_data_dir}/input_model_data" + +# Computational resources +WTIME_MAKE_OROG="01:00:00" + diff --git a/ush/set_predef_grid_params.sh b/ush/set_predef_grid_params.sh index 71c3d12a7e..e0c89644df 100644 --- a/ush/set_predef_grid_params.sh +++ b/ush/set_predef_grid_params.sh @@ -82,13 +82,13 @@ function set_predef_grid_params() { "outvarname_gfdlgrid_lon_t6_ctr" \ "outvarname_gfdlgrid_lat_t6_ctr" \ "outvarname_gfdlgrid_stretch_fac" \ - "outvarname_gfdlgrid_res" \ + "outvarname_gfdlgrid_num_cells" \ "outvarname_gfdlgrid_refine_ratio" \ "outvarname_gfdlgrid_istart_of_rgnl_dom_on_t6g" \ "outvarname_gfdlgrid_iend_of_rgnl_dom_on_t6g" \ "outvarname_gfdlgrid_jstart_of_rgnl_dom_on_t6g" \ "outvarname_gfdlgrid_jend_of_rgnl_dom_on_t6g" \ - "outvarname_gfdlgrid_use_gfdlgrid_res_in_filenames" \ + "outvarname_gfdlgrid_use_num_cells_in_filenames" \ "outvarname_dt_atmos" \ "outvarname_layout_x" \ "outvarname_layout_y" \ @@ -131,13 +131,13 @@ function set_predef_grid_params() { __gfdlgrid_lon_t6_ctr__="" \ __gfdlgrid_lat_t6_ctr__="" \ __gfdlgrid_stretch_fac__="" \ - __gfdlgrid_res__="" \ + __gfdlgrid_num_cells__="" \ __gfdlgrid_refine_ratio__="" \ __gfdlgrid_istart_of_rgnl_dom_on_t6g__="" \ __gfdlgrid_iend_of_rgnl_dom_on_t6g__="" \ __gfdlgrid_jstart_of_rgnl_dom_on_t6g__="" \ __gfdlgrid_jend_of_rgnl_dom_on_t6g__="" \ - __gfdlgrid_use_gfdlgrid_res_in_filenames__="" \ + __gfdlgrid_use_num_cells_in_filenames__="" \ __dt_atmos__="" \ __layout_x__="" \ __layout_y__="" \ @@ -694,22 +694,22 @@ function set_predef_grid_params() { # __gfdlgrid_lon_t6_ctr__="-160.8" # __gfdlgrid_lat_t6_ctr__="63.0" # __gfdlgrid_stretch_fac__="1.161" -# __gfdlgrid_res__="768" +# __gfdlgrid_num_cells__="768" # __gfdlgrid_refine_ratio__="4" # # num_margin_cells_T6_left="204" # __gfdlgrid_istart_of_rgnl_dom_on_t6g__=$(( num_margin_cells_T6_left + 1 )) # # num_margin_cells_T6_right="204" -# __gfdlgrid_iend_of_rgnl_dom_on_t6g__=$(( __gfdlgrid_res__ - num_margin_cells_T6_right )) +# __gfdlgrid_iend_of_rgnl_dom_on_t6g__=$(( __gfdlgrid_num_cells__ - num_margin_cells_T6_right )) # # num_margin_cells_T6_bottom="249" # __gfdlgrid_jstart_of_rgnl_dom_on_t6g__=$(( num_margin_cells_T6_bottom + 1 )) # # num_margin_cells_T6_top="249" -# __gfdlgrid_jend_of_rgnl_dom_on_t6g__=$(( __gfdlgrid_res__ - num_margin_cells_T6_top )) +# __gfdlgrid_jend_of_rgnl_dom_on_t6g__=$(( __gfdlgrid_num_cells__ - num_margin_cells_T6_top )) # -# __gfdlgrid_use_gfdlgrid_res_in_filenames__="FALSE" +# __gfdlgrid_use_num_cells_in_filenames__="FALSE" # # __dt_atmos__="${dt_atmos:-18}" # @@ -845,22 +845,22 @@ function set_predef_grid_params() { __gfdlgrid_lon_t6_ctr__="-97.5" __gfdlgrid_lat_t6_ctr__="38.5" __gfdlgrid_stretch_fac__="1.4" - __gfdlgrid_res__="96" + __gfdlgrid_num_cells__="96" __gfdlgrid_refine_ratio__="3" num_margin_cells_T6_left="12" __gfdlgrid_istart_of_rgnl_dom_on_t6g__=$(( num_margin_cells_T6_left + 1 )) num_margin_cells_T6_right="12" - __gfdlgrid_iend_of_rgnl_dom_on_t6g__=$(( __gfdlgrid_res__ - num_margin_cells_T6_right )) + __gfdlgrid_iend_of_rgnl_dom_on_t6g__=$(( __gfdlgrid_num_cells__ - num_margin_cells_T6_right )) num_margin_cells_T6_bottom="16" __gfdlgrid_jstart_of_rgnl_dom_on_t6g__=$(( num_margin_cells_T6_bottom + 1 )) num_margin_cells_T6_top="16" - __gfdlgrid_jend_of_rgnl_dom_on_t6g__=$(( __gfdlgrid_res__ - num_margin_cells_T6_top )) + __gfdlgrid_jend_of_rgnl_dom_on_t6g__=$(( __gfdlgrid_num_cells__ - num_margin_cells_T6_top )) - __gfdlgrid_use_gfdlgrid_res_in_filenames__="TRUE" + __gfdlgrid_use_num_cells_in_filenames__="TRUE" __dt_atmos__="${dt_atmos:-225}" @@ -900,22 +900,22 @@ function set_predef_grid_params() { __gfdlgrid_lon_t6_ctr__="-97.5" __gfdlgrid_lat_t6_ctr__="38.5" __gfdlgrid_stretch_fac__="1.5" - __gfdlgrid_res__="768" + __gfdlgrid_num_cells__="768" __gfdlgrid_refine_ratio__="3" num_margin_cells_T6_left="69" __gfdlgrid_istart_of_rgnl_dom_on_t6g__=$(( num_margin_cells_T6_left + 1 )) num_margin_cells_T6_right="69" - __gfdlgrid_iend_of_rgnl_dom_on_t6g__=$(( __gfdlgrid_res__ - num_margin_cells_T6_right )) + __gfdlgrid_iend_of_rgnl_dom_on_t6g__=$(( __gfdlgrid_num_cells__ - num_margin_cells_T6_right )) num_margin_cells_T6_bottom="164" __gfdlgrid_jstart_of_rgnl_dom_on_t6g__=$(( num_margin_cells_T6_bottom + 1 )) num_margin_cells_T6_top="164" - __gfdlgrid_jend_of_rgnl_dom_on_t6g__=$(( __gfdlgrid_res__ - num_margin_cells_T6_top )) + __gfdlgrid_jend_of_rgnl_dom_on_t6g__=$(( __gfdlgrid_num_cells__ - num_margin_cells_T6_top )) - __gfdlgrid_use_gfdlgrid_res_in_filenames__="TRUE" + __gfdlgrid_use_num_cells_in_filenames__="TRUE" __dt_atmos__="${dt_atmos:-18}" @@ -985,22 +985,22 @@ function set_predef_grid_params() { # __gfdlgrid_lon_t6_ctr__="-153.0" # __gfdlgrid_lat_t6_ctr__="61.0" # __gfdlgrid_stretch_fac__="1.0" # ??? -# __gfdlgrid_res__="768" +# __gfdlgrid_num_cells__="768" # __gfdlgrid_refine_ratio__="3" # ??? # # num_margin_cells_T6_left="61" # __gfdlgrid_istart_of_rgnl_dom_on_t6g__=$(( num_margin_cells_T6_left + 1 )) # # num_margin_cells_T6_right="67" -# __gfdlgrid_iend_of_rgnl_dom_on_t6g__=$(( __gfdlgrid_res__ - num_margin_cells_T6_right )) +# __gfdlgrid_iend_of_rgnl_dom_on_t6g__=$(( __gfdlgrid_num_cells__ - num_margin_cells_T6_right )) # # num_margin_cells_T6_bottom="165" # __gfdlgrid_jstart_of_rgnl_dom_on_t6g__=$(( num_margin_cells_T6_bottom + 1 )) # # num_margin_cells_T6_top="171" -# __gfdlgrid_jend_of_rgnl_dom_on_t6g__=$(( __gfdlgrid_res__ - num_margin_cells_T6_top )) +# __gfdlgrid_jend_of_rgnl_dom_on_t6g__=$(( __gfdlgrid_num_cells__ - num_margin_cells_T6_top )) # -# __gfdlgrid_use_gfdlgrid_res_in_filenames__="TRUE" +# __gfdlgrid_use_num_cells_in_filenames__="TRUE" # # __dt_atmos__="${dt_atmos:-18}" # @@ -1641,8 +1641,8 @@ function set_predef_grid_params() { printf -v ${outvarname_gfdlgrid_stretch_fac} "%s" "${__gfdlgrid_stretch_fac__}" fi - if [ ! -z "${outvarname_gfdlgrid_res}" ]; then - printf -v ${outvarname_gfdlgrid_res} "%s" "${__gfdlgrid_res__}" + if [ ! -z "${outvarname_gfdlgrid_num_cells}" ]; then + printf -v ${outvarname_gfdlgrid_num_cells} "%s" "${__gfdlgrid_num_cells__}" fi if [ ! -z "${outvarname_gfdlgrid_refine_ratio}" ]; then @@ -1665,8 +1665,8 @@ function set_predef_grid_params() { printf -v ${outvarname_gfdlgrid_jend_of_rgnl_dom_on_t6g} "%s" "${__gfdlgrid_jend_of_rgnl_dom_on_t6g__}" fi - if [ ! -z "${outvarname_gfdlgrid_use_gfdlgrid_res_in_filenames}" ]; then - printf -v ${outvarname_gfdlgrid_use_gfdlgrid_res_in_filenames} "%s" "${__gfdlgrid_use_gfdlgrid_res_in_filenames__}" + if [ ! -z "${outvarname_gfdlgrid_use_num_cells_in_filenames}" ]; then + printf -v ${outvarname_gfdlgrid_use_num_cells_in_filenames} "%s" "${__gfdlgrid_use_num_cells_in_filenames__}" fi if [ ! -z "${outvarname_dt_atmos}" ]; then diff --git a/ush/setup.sh b/ush/setup.sh index 108080db23..8ba9eab852 100755 --- a/ush/setup.sh +++ b/ush/setup.sh @@ -951,13 +951,13 @@ if [ ! -z "${PREDEF_GRID_NAME}" ]; then outvarname_gfdlgrid_lon_t6_ctr="GFDLgrid_LON_T6_CTR" \ outvarname_gfdlgrid_lat_t6_ctr="GFDLgrid_LAT_T6_CTR" \ outvarname_gfdlgrid_stretch_fac="GFDLgrid_STRETCH_FAC" \ - outvarname_gfdlgrid_res="GFDLgrid_RES" \ + outvarname_gfdlgrid_num_cells="GFDLgrid_NUM_CELLS" \ outvarname_gfdlgrid_refine_ratio="GFDLgrid_REFINE_RATIO" \ outvarname_gfdlgrid_istart_of_rgnl_dom_on_t6g="GFDLgrid_ISTART_OF_RGNL_DOM_ON_T6G" \ outvarname_gfdlgrid_iend_of_rgnl_dom_on_t6g="GFDLgrid_IEND_OF_RGNL_DOM_ON_T6G" \ outvarname_gfdlgrid_jstart_of_rgnl_dom_on_t6g="GFDLgrid_JSTART_OF_RGNL_DOM_ON_T6G" \ outvarname_gfdlgrid_jend_of_rgnl_dom_on_t6g="GFDLgrid_JEND_OF_RGNL_DOM_ON_T6G" \ - outvarname_gfdlgrid_use_gfdlgrid_res_in_filenames="GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES" \ + outvarname_gfdlgrid_use_num_cells_in_filenames="GFDLgrid_USE_NUM_CELLS_IN_FILENAMES" \ outvarname_dt_atmos="DT_ATMOS" \ outvarname_layout_x="LAYOUT_X" \ outvarname_layout_y="LAYOUT_Y" \ @@ -997,17 +997,17 @@ check_var_valid_value \ # #----------------------------------------------------------------------- # -# For a "GFDLgrid" type of grid, make sure GFDLgrid_RES is set to a valid -# value. +# For a "GFDLgrid" type of grid, make sure GFDLgrid_NUM_CELLS is set to +# a valid value. # #----------------------------------------------------------------------- # if [ "${GRID_GEN_METHOD}" = "GFDLgrid" ]; then err_msg="\ The number of grid cells per tile in each horizontal direction specified -in GFDLgrid_RES is not supported: - GFDLgrid_RES = \"${GFDLgrid_RES}\"" - check_var_valid_value "GFDLgrid_RES" "valid_vals_GFDLgrid_RES" "${err_msg}" +in GFDLgrid_NUM_CELLS is not supported: + GFDLgrid_NUM_CELLS = \"${GFDLgrid_NUM_CELLS}\"" + check_var_valid_value "GFDLgrid_NUM_CELLS" "valid_vals_GFDLgrid_NUM_CELLS" "${err_msg}" fi # #----------------------------------------------------------------------- @@ -1903,7 +1903,7 @@ if [ "${GRID_GEN_METHOD}" = "GFDLgrid" ]; then set_gridparams_GFDLgrid \ lon_of_t6_ctr="${GFDLgrid_LON_T6_CTR}" \ lat_of_t6_ctr="${GFDLgrid_LAT_T6_CTR}" \ - res_of_t6g="${GFDLgrid_RES}" \ + res_of_t6g="${GFDLgrid_NUM_CELLS}" \ stretch_factor="${GFDLgrid_STRETCH_FAC}" \ refine_ratio_t6g_to_t7g="${GFDLgrid_REFINE_RATIO}" \ istart_of_t7_on_t6g="${GFDLgrid_ISTART_OF_RGNL_DOM_ON_T6G}" \ diff --git a/ush/valid_param_vals.sh b/ush/valid_param_vals.sh index c3b0fe8f9d..cd765cb2b3 100644 --- a/ush/valid_param_vals.sh +++ b/ush/valid_param_vals.sh @@ -45,7 +45,7 @@ valid_vals_CCPP_PHYS_SUITE=( \ "FV3_RRFS_v1alpha" \ "FV3_HRRR" \ ) -valid_vals_GFDLgrid_RES=("48" "96" "192" "384" "768" "1152" "3072") +valid_vals_GFDLgrid_NUM_CELLS=("48" "96" "192" "384" "768" "1152" "3072") valid_vals_EXTRN_MDL_NAME_ICS=("GSMGFS" "FV3GFS" "RAP" "HRRR" "NAM") valid_vals_EXTRN_MDL_NAME_LBCS=("GSMGFS" "FV3GFS" "RAP" "HRRR" "NAM") valid_vals_FV3GFS_FILE_FMT_ICS=("nemsio" "grib2" "netcdf")