5. Regresson Test Configurations
The UFS Weather Model (WM) can be run in any of several configurations, from a single-component atmospheric model to a fully coupled model with multiple earth system components (e.g., atmosphere, ocean, sea-ice, land, and mediator). This chapter documents a few of the supported regression test (RT) configurations. For a full list of supported RT configurations, view the rt.conf file.
Attention
This chapter is a work in progress. There are a multitude of options for configuring the UFS WM, and this chapter merely details a few supported configurations. It will be expanded over time to include the full set of configurations supported for WM regression tests (RTs).
Configuration Category |
Description |
---|---|
Standalone Atmospheric Model (ATM) |
|
ATM with data assimilation |
|
Coupled components may include CDEPS - ATM - HYCOM - WW3 - MOM6 - CMEPS |
This chapter details the supported build/run options for each supported configuration.
Click on the configuration category in Table 5.1
to go to that section. Each configuration category includes sample code for setting CMAKE_FLAGS
and CCPP_SUITES
.
Additionally, there is a list of preferred physics suites, examples of ufs.configure
files,
and links to information on other input files required to run the model.
5.1. Background
Each RT configuration file (located in the ufs-weather-model/tests/tests
directory)
sets default variables by calling setup functions from ufs-weather-model/tests/default_vars.sh
(see defaults here).
Then, the RT configuration file sets test-specific variablesthese values will override
the defaults. For example, the control_c48
test file sets a list of files that
it will use, calls the export_fv3
function from default_vars.sh
, and then exports
test-specific variables. An excerpt is included below (...
indicates omitted lines):
export LIST_FILES="sfcf000.nc \
sfcf024.nc \
atmf000.nc \
atmf024.nc \
RESTART/20210323.060000.coupler.res \
RESTART/20210323.060000.fv_core.res.nc \
...
RESTART/20210323.060000.sfc_data.tile5.nc \
RESTART/20210323.060000.sfc_data.tile6.nc"
export_fv3
export INPES=1
export JNPES=1
export WRTTASK_PER_GROUP=2
export NPZ=127
export NPZP=128
export NPX=49
export NPY=49
export DT_ATMOS=1200
...
default_vars.sh
contains eight functions that set defaults for different types of tests. Table 5.2 describes what each function does.
Function Name |
Description |
---|---|
export_fv3 |
Set variables to the FV3 default values (first common variables, then model-specific ones). Different machines may have different defaults for some variables. |
export_cpl |
Set variables to the default values for coupled / S2S configurations. |
export_35d_run |
Set variables to the default values for EMC’s weekly coupled benchmark 35d tests (see rt_35d.conf). |
export_datm_cdeps |
Set variables to the default values for configurations that use the data atmosphere (DATM) component. |
export_hafs_datm_cdeps |
Set variables to the default values for HAFS configurations that use the data atmosphere (DATM) component. |
export_hafs_docn_cdeps |
Set variables to the default values for HAFS configurations that use the data ocean (DOCN) component. |
export_hafs_regional |
Set variables to the default values for regional HAFS configurations. |
export_hafs |
Set variables to the default values for HAFS configurations. |
Multiple default_vars.sh
functions may be called in a given test. Values set in one
function will be overridden when the same values are set in a subsequent function.
The most up-to-date list of develop
branch data required for each test is available in
the UFS WM RT Data Bucket.
Users should click on “Browse Bucket” and navigate to the most recent date (in develop-YYYY-MM-DD
format).
Then, users should select Intel or GNU based on the compiler used in the test they
want to run and then select the test name to see the required data.
5.2. Atmospheric Model Configurations
The atmospheric model configurations all use the UFS WM atmospheric component and may couple it with other models (e.g., a wave or aerosol model).
5.2.1. ATM - Standalone Atmospheric Model
The standalone atmospheric model (ATM) is an FV3-based prognostic
atmospheric model that can be used for short- and medium-range research and operational
forecasts. In standalone mode, ATM
is not coupled to any other model.
Current ATM regression tests cover a wide variety of functionality and involve several physics tests. Table 5.3 contains a small selection of ATM-only RTs; it will be expanded to cover the full range of ATM-only supported configurations in time:
Test Name |
Description |
Physics Suite (see namelist options) |
DT_ATMOS |
Start Date |
Forecast Length (hours) |
---|---|---|---|---|---|
Compare global control C48L127 results with previous trunk version |
FV3_GFS_v16 |
1200 |
2021-03-22 06:00:00 |
24 |
|
Compare global control results with previous trunk version |
FV3_GFS_v17_p8 |
720 |
2021-03-22 06:00:00 |
24 |
|
FV3 regional control (hi-res 3km, small domain) test |
FV3_GFS_v15_thompson_mynn_lam3km |
1800 |
2016-10-03 00:00:00 |
6 |
Sample CMAKE_FLAGS
Setting
export CMAKE_FLAGS="-DAPP=ATM -DCCPP_SUITES=FV3_GFS_v16,FV3_GFS_v17_p8,FV3_GFS_v15_thompson_mynn_lam3km -D32BIT=ON"
Supported Physics Suites
Physics Suite |
Description |
---|---|
FV3_GFS_v16 |
The CCPP GFS_v16 physics suite is described in the CCPP documentation here. |
FV3_GFS_v17_p8 |
The CCPP GFS_v17_p8 physics suite is described in the CCPP documentation here. |
FV3_GFS_v15_thompson_mynn_lam3km |
The CCPP GFS_v15 physics suite with the Thompson Aerosol-Aware Cloud Microphysics Scheme (see here) and Mynn Surface Layer Module (see here) tailored for a limited area model (LAM) 3-km resolution grid. |
Additional Information
Input files required for ATM configurations can be viewed in Section 4.1.1
or in the UFS WM RT Data Bucket.
Information on ufs.configure
files is available in Section 4.2.4,
and a sample ATM ufs.configure
file (ufs.configure.atm.IN
) is available
here.
5.2.2. ATMW
The ATMW configuration couples ATM with WaveWatch III.
These tests use default values set in the export_fv3
function of default_vars.sh
.
Test Name |
Description |
General Physics Parameters |
Detailed Physics Parameters (see namelist options here for variable definitions) |
Start Date |
Fcst Length (hours) |
Output Grid |
Configuration Files |
Other |
---|---|---|---|---|---|---|---|---|
Compare global control results with previous trunk version |
Suite: CCPP_SUITE=”FV3_GFS_v16” Microphysics: IMP_PHYSICS=8 Time Step: DT_ATMOS=720 |
Set to FALSE: LHEATSTRG, DO_UGWP_V1, DO_GSL_DRAG_LS_BL, DO_GSL_DRAG_TOFD, DO_UGWP_V1_OROG_ONLY, DO_UGWP_V0_NST_ONLY, LDIAG_UGWP, CA_GLOBAL, LANDICE, LGFDLMPRAD, DO_SAT_ADJ, MULTIGRID, USE_CICE_ALB, DO_RRTMGP |
2021-03-22 06:00:00 |
12 |
OUTPUT_GRID=gaussian_grid |
FIELD_TABLE=field_table_thompson_noaero_tke DIAG_TABLE=diag_table_p8_template INPUT_NML=cpld_control.nml.IN UFS_CONFIGURE=ufs.configure.atmw.IN FV3_RUN=control_run.IN |
RUNTYPE=startup, med_model=cmeps, atm_model=fv3, wav_model=ww3 |
5.2.3. ATMAERO
The ATMAERO configuration couples ATM with GOCART.
These tests use default values set in the export_fv3
function of default_vars.sh
.
Attention
Certain physics-related settings are common to all of the supported RRFS configurations. These values are set in each test’s configuration file because they differ from the default_vars.sh
values:
- General Physics Parameters:
Suite: CCPP_SUITE= FV3_GFS_v17_p8
Microphysics: IMP_PHYSICS=8
Time Step: DT_ATMOS=720
- Detailed Physics Parameters:
Set to FALSE: DO_UGWP_V1, DO_GSL_DRAG_LS_BL, DO_GSL_DRAG_TOFD, DO_UGWP_V1_OROG_ONLY, DO_UGWP_V0_NST_ONLY, LDIAG_UGWP, CA_GLOBAL, LANDICE, LGFDLMPRAD, DO_SAT_ADJ, USE_CICE_ALB, DO_RRTMGP
Set to TRUE: WRITE_DOPOST, CPL, CPLCHM, USE_MERRA2, LSEASPRAY, DO_UGWP_V0, DO_GSL_DRAG_SS, DO_CA, CA_SGS, CA_TRIGGER, TILEDFIX, FRAC_GRID, WRITE_NSFLIP, DOGP_CLDOPTICS_LUT, DOGP_LWSCAT, DOGP_SGS_CNV, SATMEDMF
Set to VALUE: NSTF_NAME=’2,0,0,0,0’, atm_model=’fv3’, chm_model=’gocart’, DOMAINS_STACK_SIZE=8000000, IALB=2, IEMS=2, LSM=2, IOPT_DVEG=4, IOPT_CRS=2, IOPT_RAD=3, IOPT_ALB=1, IOPT_STC=3, IOPT_SFC=3, IOPT_TRS=2, IOPT_DIAG=2, D2_BG_K1=0.20, D2_BG_K2=0.04, PSM_BC=1, DDDMP=0.1, GWD_OPT=2, KNOB_UGWP_VERSION=0, KNOB_UGWP_NSLOPE=1, NCA=1, NCELLS=5, NLIVES=12, NTHRESH=18, NSEED=1, NFRACSEED=0.5, NSPINUP=1, ISEED_CA=12345, FSICL=0, FSICS=0, DZ_MIN=6, MIN_SEAICE=0.15
5.2.4. ATMAQ
COMING SOON!
5.2.5. ATML
The ATML configuration couples ATM with LND.
These tests use default values set in the export_fv3
function of default_vars.sh
.
Attention
There is an issue with -D32BIT=ON
in the ATM-LND tests, and NoahMP requires r8 libraries.
Test Name |
Description |
Physics Suite (see namelist options) |
DT_ATMOS |
Start Date |
Forecast Length (hours) |
---|---|---|---|---|---|
control_p8_atmlnd_sbs |
Compare global control results with previous trunk version |
FV3_GFS_v17_p8 |
720 |
2021-03-22 06:00:00 |
24 |
Sample CMAKE_FLAGS
Setting
export CMAKE_FLAGS="-DAPP=ATML -DCCPP_SUITES=FV3_GFS_v17_p8"
Supported Physics Suites
Physics Suite |
Description |
---|---|
FV3_GFS_v17_p8 |
The CCPP GFS_v17_p8 physics suite is described in the CCPP documentation here. |
Additional Information
Input files required for ATML configurations can be viewed in Section 4.1.1 (ATM)
and Section 4.1.9 (LND) or in the UFS WM RT Data Bucket.
Information on ufs.configure
files is available in Section 4.2.4,
and a sample ATML ufs.configure
file (ufs.configure.atm_lnd.IN
) is available
here.
5.3. Rapid Refresh Forecast System (RRFS)
The RRFS configurations use an ATM-only configuration on a high-resolution
regional grid with data assimilation capabilities.
These tests use the default values set in the export_fv3
, export_rap_common
, export_rrfs_v1
, and/or export_hrrr_conus13km
functions of default_vars.sh
unless other values are explicitly set in a given test file. In all tests, the values in export_fv3
are set first. Depending on the test, some of these values may be overriden by export_rrfs_v1
(which includes values from export_rap_common
) or export_hrrr_conus13km
. Table 5.8 compares the values set in export_fv3
to the values set in the other functions.
Note
export_rrfs_v1
calls export_rap_common
, which calls export_fv3
. Values from export_fv3
are set first, followed by values in export_rap_common
and then values in export_rrfs_v1
. Values in italics indicate that the value is inherited from a previously-called function.
Variable |
|
|
|
|
---|---|---|---|---|
DATE (SYEAR-SMONTH-SDAY SHOUR:00:00) |
2016-10-03 00:00:00 |
2021-03-22 06:00:00 |
2021-03-22 06:00:00 |
2021-05-12 16:00:00 |
Forecast Length in hours (FHMAX) |
24 |
24 |
24 |
2 |
CCPP_SUITE |
None set (set in subsequent functions or test file) |
None set |
FV3_RRFS_v1beta |
FV3_HRRR |
IMP_PHYSICS |
11 |
8 |
8 |
8 |
DT_ATMOS |
1800 |
300 |
300 |
120 |
OUTPUT_GRID |
"’cubed_sphere_grid’" |
‘gaussian_grid’ |
‘gaussian_grid’ |
lambert_conformal |
NTILES |
6 |
6 |
6 |
1 |
WRITE_DOPOST |
.false. |
.true. |
.true. |
.false. |
NSTF_NAME |
2,1,1,0,5 |
‘2,0,0,0,0’ |
‘2,0,0,0,0’ |
‘2,0,0,0,0’ |
IAER |
111 |
5111 |
5111 |
1011 |
NPX |
97 |
97 |
97 |
397 |
NPY |
97 |
97 |
97 |
233 |
NPZ |
64 |
127 |
127 |
65 |
NPZP |
65 |
128 |
128 |
66 |
INPES |
3 ( |
3 |
3 |
12 |
JNPES |
8 ( |
8 |
8 |
12 |
UFS_CONFIGURE |
ufs.configure.atm.IN |
ufs.configure.atm.IN |
ufs.configure.atm.IN |
ufs.configure.atm.IN |
MODEL_CONFIGURE |
model_configure.IN |
model_configure.IN |
model_configure.IN |
model_configure_rrfs_conus13km.IN |
DIAG_TABLE |
diag_table_gfsv16 |
diag_table_gfsv16 |
diag_table_rap_noah |
diag_table_hrrr |
DIAG_TABLE_ADDITIONAL |
Not set |
Not set |
Not set |
diag_additional_rrfs_smoke |
FIELD_TABLE |
field_table_gfsv16 |
field_table_thompson_aero_tke |
field_table_thompson_aero_tke |
field_table_thompson_aero_tke_smoke |
FV3_RUN |
None set |
control_run.IN |
control_run.IN |
rrfs_warm_run.IN |
INPUT_NML |
None set |
rap.nml.IN |
rap.nml.IN |
rrfs_conus13km_hrrr.nml.IN |
MAKE_NH |
.true. |
.true. |
.true. |
.false. |
NA_INIT |
1 |
1 |
1 |
0 |
LHEATSTRG |
.true. |
.false. |
.false. |
.false. |
SEDI_SEMI |
.true. |
.true. |
.true. |
.false. |
DECFL |
10 |
10 |
10 |
8 |
RRFS_SMOKE |
.false. |
.false. |
.false. |
.true. |
SEAS_OPT |
2 |
2 |
2 |
0 |
LKM |
0 |
0 |
0 |
1 |
SFCLAY_COMPUTE_FLUX |
.false. |
.false. |
.false. |
.true. |
ICLIQ_SW |
1 |
1 |
1 |
2 |
IOVR |
1 |
1 |
1 |
3 |
KICE |
2 |
9 |
9 |
9 |
EXTERNAL_IC |
.true. |
.true. |
.true. |
.false. |
NGGPS_IC |
.true. |
.true. |
.true. |
.false. |
MOUNTAIN |
.false. |
.false. |
.false. |
.true. |
WARM_START |
.false. |
.false. |
.false. |
.true. |
RES_LATLON_DYNAMICS |
"’’" |
"’’" |
"’’" |
"’fv3_increment.nc’" |
FHZERO |
6 |
6 |
6 |
1.0 |
PRINT_DIFF_PGR |
.false. |
.false. |
.false. |
.true. |
FHCYC |
24 |
24 |
24 |
0.0 |
CNVCLD |
.true. |
.true. |
.true. |
.false. |
CDMBWD |
‘0.14,1.8,1.0,1.0’ ( |
‘0.14,1.8,1.0,1.0' |
‘0.14,1.8,1.0,1.0' |
‘3.5,1.0’ |
GWD_OPT |
1 |
1 |
1 |
3 |
DO_GSL_DRAG_LS_BL |
.false. |
.false. |
.false. |
.true. |
DO_GSL_DRAG_SS |
.false. |
.false. |
.false. |
.true. |
DO_GSL_DRAG_TOFD |
.false. |
.false. |
.false. |
.true. |
DNATS |
1 |
0 |
0 |
0 |
DO_SAT_ADJ |
.true. |
.false. |
.false. |
.false. |
IALB |
1 |
2 |
2 |
2 |
IEMS |
1 |
2 |
2 |
2 |
HYBEDMF |
.true. |
.false. |
.false. |
.false. |
DO_MYNNEDMF |
.false. |
.true. |
.true. |
.true. |
DO_MYNNSFCLAY |
.false. |
.true. |
.true. |
.true. |
DO_MYJPBL |
.false. |
.false. |
.false. |
.true. |
DO_DEEP |
.true. |
.true. |
.false. |
.false. |
SHAL_CNV |
.true. |
.true. |
.false. |
.false. |
IMFSHALCNV |
2 |
2 |
-1 |
-1 |
IMFDEEPCNV |
2 |
2 |
-1 |
-1 |
LSM |
1 |
1 |
2 |
3 |
LSOIL_LSM |
4 |
4 |
4 |
9 |
RESTART_INTERVAL |
0 |
0 |
0 |
1 |
OUTPUT_FH |
"12 -1" |
"12 -1" |
"12 -1" |
"12 -1" |
Current RRFS regression tests cover a wide variety of functionality and involve several physics tests.
Sample CMAKE_FLAGS
Setting
export CMAKE_FLAGS="-DAPP=ATM -DCCPP_SUITES=FV3_RAP,FV3_HRRR,FV3_RRFS_v1beta,FV3_RRFS_v1nssl -D32BIT=ON"
Supported Physics Suites
Physics Suite |
Description |
---|---|
FV3_HRRR |
The FV3_HRRR physics suite is described in the CCPP documentation here. |
FV3_RRFS_v1beta |
The FV3_RRFS_v1beta physics suite is described in the CCPP documentation here. |
FV3_RRFS_v1nssl |
The FV3_RRFS_v1nssl physics suite is similar to the FV3_RRFS_v1beta suite; however, it uses the NSSL 2-moment microphysics scheme instead of the Thompson microphysics scheme. |
Additional Information
Each test file lists the input files required for a given test. Input files required for RRFS ATM configurations can be downloaded from the UFS WM RT Data Bucket. Users who wish to run additional (unsupported) cases may also find useful data in the NOAA RRFS data bucket.
Information on ufs.configure
files is available in Section 4.2.4. The supported RRFS WM RTs use the same ufs.configure
file that ATM-only tests do (ufs.configure.atm.IN
). This file can be viewed in the ufs-weather-model/tests/parm
directory.
Additionally, users can find examples of various RRFS configuration files in the ufs-weather-model/tests/parm
directory. These files include model_configure_*
, *_run.IN
(input run), *.nml.IN
(input namelist), field_table_*
, and diag_table_*
files.
5.4. LND
The LND configuration couples DATM, CDEPS, and CMEPS with LND. These tests use default values set in the export_datm_cdeps
function of default_vars.sh
.
Test Name |
Description |
Physics Suite |
DT_ATMOS |
Start Date |
Forecast Length (hours) |
---|---|---|---|---|---|
datm_cdeps_lnd_gswp3 |
DATM_CDEPS_NOAHMP_GSWP3 - control |
N/A |
N/A |
2000-01-01 00:00:00 |
24 |
datm_cdeps_lnd_gswp3_rst |
DATM_CDEPS_NOAHMP_GSWP3_RST - control restart |
N/A |
N/A |
2000-01-01 12:00:00 |
12 |
Sample CMAKE_FLAGS
Setting
export CMAKE_FLAGS="-DAPP=LND"
Additional Information
Input files required for LND configurations can be viewed in Section 4.1.9 (LND)
or in the UFS WM RT Data Bucket.
Information on ufs.configure
files is available in Section 4.2.4,
and a sample ATML ufs.configure
file (ufs.configure.atm_lnd.IN
) is available
here.
5.5. Seasonal to Subseasonal (S2S) Configurations
COMING SOON!
5.6. NG-GODAS
COMING SOON!
5.7. Hurricane Analysis and Reforecast System Configurations
The HAFS configuration uses an DATM-only configuration.
These tests use the default values set in the export_fv3
, export_hafs
, export_hafs_regional
, export_hafs_datm_cdeps
, and export_hafs_docn_cdeps
functions of default_vars.sh
unless other values are explicitly set in a given test file. In all tests, the values in export_fv3
are set first.
Note
export_hafs
calls export_hafs_regional
, which calls export_hafs_datm_cdeps
or export_hafs_docn_cdeps
, which calls export_fv3
. Values from export_fv3
are set first, followed by values in export_hafs
, export_hafs_regional
, and then values in export_hafs_datm_cdeps
or export_hafs_docn_cdeps
.
Export Function |
Variables |
---|---|
export_hafs |
Set to FALSE: S2S, AQM, DATM_CDEPS, DOCN_CDEPS, HYBEDMF, CNVGWD, LTAEROSOL, LHEATSTRG, IS_MOVING_NEST |
export_hafs_regional |
Set to FALSE: S2S, AQM, DOCN_CDEPS, WRITE_DOPOST, USE_COLDSTART, MULTIGRID |
export_hafs_datm_cdeps |
Set to FALSE: FV3, S2S, AQM, DOCN_CDEPS |
export_hafs_docn_cdeps |
Set to FALSE: S2S, AQM |
Sample CMAKE_FLAGS
Setting
export CMAKE_FLAGS="-DAPP=HAFS"
Supported Physics Suites
Physics Suite |
Description |
---|---|
FV3_HAFS_v1_gfdlmp_tedmf |
The FV3_HAFS_v1_gfdlmp_tedmf physics suite is described in the CCPP documentation here. |
FV3_HAFS_v1_gfdlmp_tedmf_nonsst |
The FV3_HAFS_v1_gfdlmp_tedmf_nonsst physics suite is described in the CCPP documentation here. |
FV3_HAFS_v1_thompson_tedmf_gfdlsf |
The FV3_HAFS_v1_thompson_tedmf_gfdlsf physics suite is described in the CCPP documentation here. |