From 29ad1a9e9a45b2f8d1791dcfe6ae60dcc7f014f4 Mon Sep 17 00:00:00 2001 From: gerard ketefian Date: Sun, 5 Jun 2022 01:20:58 -0600 Subject: [PATCH 1/7] In WE2E test configuration files that use custom grids, move the definition of the variable POST_OUTPUT_DOMAIN_NAME to at the beginning of the custom grid definition because it is really the name of the custom native grid. --- .../WE2E/test_configs/wflow_features/config.custom_ESGgrid.sh | 3 +-- .../WE2E/test_configs/wflow_features/config.custom_GFDLgrid.sh | 3 +-- ...FDLgrid__GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES_eq_FALSE.sh | 3 +-- ...GFDLgrid__GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES_eq_TRUE.sh | 3 +-- 4 files changed, 4 insertions(+), 8 deletions(-) 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 f78fdf7e0..86b3ff0b7 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 66604a549..b6b245fda 100644 --- a/tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid.sh +++ b/tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid.sh @@ -42,6 +42,7 @@ LBC_SPEC_INTVL_HRS="3" # # Define custom grid. # +POST_OUTPUT_DOMAIN_NAME="custom_GFDLgrid" GRID_GEN_METHOD="GFDLgrid" GFDLgrid_LON_T6_CTR="-97.5" @@ -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_GFDLgrid_RES_IN_FILENAMES_eq_FALSE.sh index 4c4f0d5c7..54ac2b52d 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_GFDLgrid_RES_IN_FILENAMES_eq_FALSE.sh @@ -31,6 +31,7 @@ LBC_SPEC_INTVL_HRS="3" # # Define custom grid. # +POST_OUTPUT_DOMAIN_NAME="custom_GFDLgrid" GRID_GEN_METHOD="GFDLgrid" GFDLgrid_LON_T6_CTR="-97.5" @@ -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_GFDLgrid_RES_IN_FILENAMES_eq_TRUE.sh index 3e067ee3d..573860610 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_GFDLgrid_RES_IN_FILENAMES_eq_TRUE.sh @@ -31,6 +31,7 @@ LBC_SPEC_INTVL_HRS="3" # # Define custom grid. # +POST_OUTPUT_DOMAIN_NAME="custom_GFDLgrid" GRID_GEN_METHOD="GFDLgrid" GFDLgrid_LON_T6_CTR="-97.5" @@ -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" From 8050d4b25639389afefdeb2634c20f769fda4ec6 Mon Sep 17 00:00:00 2001 From: gerard ketefian Date: Sun, 5 Jun 2022 01:23:17 -0600 Subject: [PATCH 2/7] Corrections to comments in python plotting scripts. --- ush/Python/plot_allvars.py | 2 +- ush/Python/plot_allvars_diff.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ush/Python/plot_allvars.py b/ush/Python/plot_allvars.py index 97a9afdbf..3af564e52 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 fe4cb56eb..ec85df2e5 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 From 5ceb281e0a498232aded2f1954617e48eef166f0 Mon Sep 17 00:00:00 2001 From: gerard ketefian Date: Mon, 13 Jun 2022 15:51:45 -0600 Subject: [PATCH 3/7] Rename GFDLgrid-related variables for clarity. Details below. 1) Rename GFDLgrid_USE_GFDLgrid_RES_IN_FILENAMES to GFDLgrid_USE_NUM_CELLS_IN_FILENAMES. 2) Rename GFDLgrid_RES to GFDLgrid_NUM_CELLS. --- 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_GFDLgrid.sh | 12 +- ..._USE_GFDLgrid_RES_IN_FILENAMES_eq_FALSE.sh | 10 +- ...d_USE_GFDLgrid_RES_IN_FILENAMES_eq_TRUE.sh | 10 +- ush/config_defaults.sh | 115 +++++++++--------- ush/link_fix.sh | 30 +++-- ush/set_predef_grid_params.sh | 48 ++++---- ush/setup.sh | 16 +-- ush/valid_param_vals.sh | 2 +- 12 files changed, 137 insertions(+), 128 deletions(-) diff --git a/scripts/exregional_make_grid.sh b/scripts/exregional_make_grid.sh index 3744638c8..de27902e3 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 1a4d528f2..58e453a97 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 2f768a657..8593f9c53 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 c2a6f72fc..39dc68f51 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_GFDLgrid.sh b/tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid.sh index b6b245fda..8b429d4e0 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. # # 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 @@ -48,7 +48,7 @@ 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" @@ -56,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" @@ -65,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" 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_GFDLgrid_RES_IN_FILENAMES_eq_FALSE.sh index 54ac2b52d..e7b2f45d3 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_GFDLgrid_RES_IN_FILENAMES_eq_FALSE.sh @@ -7,7 +7,7 @@ # 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. @@ -37,7 +37,7 @@ 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" @@ -45,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" @@ -53,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" 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_GFDLgrid_RES_IN_FILENAMES_eq_TRUE.sh index 573860610..0ee63b02f 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_GFDLgrid_RES_IN_FILENAMES_eq_TRUE.sh @@ -7,7 +7,7 @@ # 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. @@ -37,7 +37,7 @@ 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" @@ -45,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" @@ -53,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" diff --git a/ush/config_defaults.sh b/ush/config_defaults.sh index 59a1dafde..4f326ea87 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,14 @@ 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. 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_STRETCH_FAC: # Stretching factor used in the Schmidt transformation applied to the @@ -908,29 +908,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 +965,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="" # #----------------------------------------------------------------------- # diff --git a/ush/link_fix.sh b/ush/link_fix.sh index 0bfd5c03d..3da232894 100755 --- a/ush/link_fix.sh +++ b/ush/link_fix.sh @@ -403,21 +403,29 @@ Please ensure that all files have the same resolution." 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. +# The surface climatology file generation code looks for a grid file with +# a name of the form +# +# C${GFDLgrid_NUM_CELLS}${DOT_OR_USCORE}grid.tile${TILE_RGNL}.halo${NH4}.nc +# +# Note that the C-resolution used in the name of this file is the number +# of grid cells per horizontal direction per tile, just like in the +# global model). Thus, if: +# +# 1) we are running the MAKE_SFC_CLIMO_TN task, and +# 2) the grid is of GFDLgrid type, and +# 3) we are NOT using GFDLgrid_NUM_CELLS in filenames (i.e. we are +# instead using the equivalent global uniform grid resolution), +# +# then create a symlink with the above name (i.e one whose name uses +# GFDLgrid_NUM_CELLS) that points to the symlink 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 + [ "${GFDLgrid_USE_NUM_CELLS_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" + symlink="C${GFDLgrid_NUM_CELLS}${DOT_OR_USCORE}grid.tile${TILE_RGNL}.nc" create_symlink_to_file target="$target" symlink="$symlink" relative="TRUE" fi diff --git a/ush/set_predef_grid_params.sh b/ush/set_predef_grid_params.sh index 71c3d12a7..e0c89644d 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 49153fc68..63a5cae12 100755 --- a/ush/setup.sh +++ b/ush/setup.sh @@ -949,13 +949,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" \ @@ -995,17 +995,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 # #----------------------------------------------------------------------- @@ -1901,7 +1901,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 c3b0fe8f9..cd765cb2b 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") From 6e441494348c028ab6c96e8e9a25214888bdac27 Mon Sep 17 00:00:00 2001 From: gerard ketefian Date: Mon, 13 Jun 2022 15:56:23 -0600 Subject: [PATCH 4/7] Rename files to reflect renaming of variables; edit comments for clarity. --- .../test_configs/wflow_features/config.custom_GFDLgrid.sh | 4 ++-- ...GFDLgrid__GFDLgrid_USE_NUM_CELLS_IN_FILENAMES_eq_FALSE.sh} | 4 ++-- ..._GFDLgrid__GFDLgrid_USE_NUM_CELLS_IN_FILENAMES_eq_TRUE.sh} | 4 ++-- 3 files changed, 6 insertions(+), 6 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} (95%) 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} (94%) 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 8b429d4e0..db148e3ab 100644 --- a/tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid.sh +++ b/tests/WE2E/test_configs/wflow_features/config.custom_GFDLgrid.sh @@ -9,8 +9,8 @@ # # 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 # 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 95% 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 e7b2f45d3..ff4d92809 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 @@ -9,8 +9,8 @@ # # 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" 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 94% 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 0ee63b02f..dc5d79c2e 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 @@ -9,8 +9,8 @@ # # 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" From cd2e6ae39c1548d057001b73607ea1f5580438be Mon Sep 17 00:00:00 2001 From: gerard ketefian Date: Tue, 14 Jun 2022 16:51:56 -0600 Subject: [PATCH 5/7] Remove unnecessary symlink. --- ush/link_fix.sh | 28 ---------------------------- 1 file changed, 28 deletions(-) diff --git a/ush/link_fix.sh b/ush/link_fix.sh index 3da232894..48bf0ca3f 100755 --- a/ush/link_fix.sh +++ b/ush/link_fix.sh @@ -398,37 +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 with -# a name of the form -# -# C${GFDLgrid_NUM_CELLS}${DOT_OR_USCORE}grid.tile${TILE_RGNL}.halo${NH4}.nc -# -# Note that the C-resolution used in the name of this file is the number -# of grid cells per horizontal direction per tile, just like in the -# global model). Thus, if: -# -# 1) we are running the MAKE_SFC_CLIMO_TN task, and -# 2) the grid is of GFDLgrid type, and -# 3) we are NOT using GFDLgrid_NUM_CELLS in filenames (i.e. we are -# instead using the equivalent global uniform grid resolution), -# -# then create a symlink with the above name (i.e one whose name uses -# GFDLgrid_NUM_CELLS) that points to the symlink whose name uses the -# equivalent global uniform resolution. -# - if [ "${RUN_TASK_MAKE_SFC_CLIMO}" = "TRUE" ] && \ - [ "${GRID_GEN_METHOD}" = "GFDLgrid" ] && \ - [ "${GFDLgrid_USE_NUM_CELLS_IN_FILENAMES}" = "FALSE" ]; then - target="${cres}${DOT_OR_USCORE}grid.tile${TILE_RGNL}.halo${NH4}.nc" - symlink="C${GFDLgrid_NUM_CELLS}${DOT_OR_USCORE}grid.tile${TILE_RGNL}.nc" - create_symlink_to_file target="$target" symlink="$symlink" relative="TRUE" - fi - fi # #----------------------------------------------------------------------- From b4f5b7ee15844f1fa5803daea9fb4fe43f70b9f5 Mon Sep 17 00:00:00 2001 From: gerard ketefian Date: Tue, 14 Jun 2022 16:53:30 -0600 Subject: [PATCH 6/7] Reduce the default wallclock time for the make_orog task. Details below. 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. --- ush/config_defaults.sh | 2 +- ush/machine/wcoss_dell_p3.sh | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/ush/config_defaults.sh b/ush/config_defaults.sh index 4f326ea87..429d7cfeb 100644 --- a/ush/config_defaults.sh +++ b/ush/config_defaults.sh @@ -1652,7 +1652,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/machine/wcoss_dell_p3.sh b/ush/machine/wcoss_dell_p3.sh index 9bf525a35..4556fba83 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" + From fc69f02865f087b6d0489dd0a5c18dbe69cb60f7 Mon Sep 17 00:00:00 2001 From: gerard ketefian Date: Wed, 22 Jun 2022 15:44:22 -0600 Subject: [PATCH 7/7] Remove outdated comments. --- ush/config_defaults.sh | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/ush/config_defaults.sh b/ush/config_defaults.sh index 429d7cfeb..103ff2b1d 100644 --- a/ush/config_defaults.sh +++ b/ush/config_defaults.sh @@ -880,12 +880,7 @@ GRID_GEN_METHOD="" # # 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. 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. +# y) on each tile of the parent global grid. # # GFDLgrid_STRETCH_FAC: # Stretching factor used in the Schmidt transformation applied to the