Skip to content

Commit

Permalink
per #1402, rearrange and clean up config files for tc_and_extra_tc us…
Browse files Browse the repository at this point in the history
…e cases. ci-run-all-diff
  • Loading branch information
georgemccabe committed Jul 22, 2022
1 parent dcc8028 commit 40ee888
Show file tree
Hide file tree
Showing 7 changed files with 392 additions and 659 deletions.
Original file line number Diff line number Diff line change
@@ -1,185 +1,100 @@
# GridStat METplus Configuration

# section heading for [config] variables - all items below this line and
# before the next section heading correspond to the [config] section
[config]

# List of applications to run - only GridStat for this case
# Documentation for this use case can be found at
# https://metplus.readthedocs.io/en/latest/generated/model_applications/tc_and_extra_tc/GridStat_fcstHAFS_obsTDR_NetCDF.html

# For additional information, please see the METplus Users Guide.
# https://metplus.readthedocs.io/en/latest/Users_Guide

###
# Processes to run
# https://metplus.readthedocs.io/en/latest/Users_Guide/systemconfiguration.html#process-list
###

PROCESS_LIST = GridStat

# time looping - options are INIT, VALID, RETRO, and REALTIME

###
# Time Info
# LOOP_BY options are INIT, VALID, RETRO, and REALTIME
# If set to INIT or RETRO:
# INIT_TIME_FMT, INIT_BEG, INIT_END, and INIT_INCREMENT must also be set
# If set to VALID or REALTIME:
# VALID_TIME_FMT, VALID_BEG, VALID_END, and VALID_INCREMENT must also be set
LOOP_BY = VALID
# LEAD_SEQ is the list of forecast leads to process
# https://metplus.readthedocs.io/en/latest/Users_Guide/systemconfiguration.html#timing-control
###

# Format of INIT_BEG and INT_END using % items
# %Y = 4 digit year, %m = 2 digit month, %d = 2 digit day, etc.
# see www.strftime.org for more information
# %Y%m%d%H expands to YYYYMMDDHH
LOOP_BY = VALID
VALID_TIME_FMT = %Y%m%d%H

# Start time for METplus run - must match INIT_TIME_FMT
VALID_BEG = 2019082912

# End time for METplus run - must match INIT_TIME_FMT
VALID_END = 2019082912
VALID_INCREMENT = 21600

# Increment between METplus runs (in seconds if no units are specified)
# Must be >= 60 seconds
VALID_INCREMENT = 21600

# List of forecast leads to process for each run time (init or valid)
# In hours if units are not specified
# If unset, defaults to 0 (don't loop through forecast leads)
LEAD_SEQ = 0,6,12,18

# Order of loops to process data - Options are times, processes
# Not relevant if only one item is in the PROCESS_LIST
# times = run all wrappers in the PROCESS_LIST for a single run time, then
# increment the run time and run all wrappers again until all times have
# been evaluated.
# processes = run the first wrapper in the PROCESS_LIST for all times
# specified, then repeat for the next item in the PROCESS_LIST until all
# wrappers have been run
LOOP_ORDER = times


# Verbosity of MET output - overrides LOG_VERBOSITY for GridStat only
LOG_GRID_STAT_VERBOSITY = 200
CUSTOM_LOOP_LIST = 190829H1

# Location of MET config file to pass to GridStat
# References CONFIG_DIR from the [dir] section
GRID_STAT_CONFIG_FILE = {CONFIG_DIR}/GridStatConfig_wrapped
GRID_STAT_OUTPUT_FLAG_FHO = BOTH
GRID_STAT_OUTPUT_FLAG_CTC = STAT
GRID_STAT_OUTPUT_FLAG_CTS = STAT
GRID_STAT_OUTPUT_FLAG_CNT = STAT
GRID_STAT_OUTPUT_FLAG_SL1L2 = STAT
GRID_STAT_OUTPUT_FLAG_ECLV = NONE
LOOP_ORDER = times

# grid to remap data. Value is set as the 'to_grid' variable in the 'regrid' dictionary
# See MET User's Guide for more information
GRID_STAT_REGRID_TO_GRID = OBS

# Name to identify model (forecast) data in output
MODEL = HAFS
###
# File I/O
# https://metplus.readthedocs.io/en/latest/Users_Guide/systemconfiguration.html#directory-and-filename-template-info
###

# Name to identify observation data in output
OBTYPE = TDR
FCST_GRID_STAT_INPUT_DIR = {INPUT_BASE}/model_applications/tc_and_extra_tc/GridStat_fcstHAFS_obsTDR_NetCDF/hafs_height
FCST_GRID_STAT_INPUT_TEMPLATE = dorian05l.{init?fmt=%Y%m%d%H}.hafsprs.synoptic.0p03.f{lead?fmt=%HHH}.nc4

# add list of missions separated by commas
CUSTOM_LOOP_LIST = 190829H1
OBS_GRID_STAT_INPUT_DIR = {INPUT_BASE}/model_applications/tc_and_extra_tc/GridStat_fcstHAFS_obsTDR_NetCDF/obs
OBS_GRID_STAT_INPUT_TEMPLATE = PYTHON_NUMPY

# List of variables to compare in GridStat - FCST_VAR1 variables correspond
# to OBS_VAR1 variables
# Note [FCST/OBS/BOTH]_GRID_STAT_VAR<n>_NAME can be used instead if different evaluations
# are needed for different tools
GRID_STAT_OUTPUT_DIR = {OUTPUT_BASE}/model_applications/tc_and_extra_tc/tdr
GRID_STAT_OUTPUT_TEMPLATE = {init?fmt=%Y%m%d%H}

FCST_VAR1_NAME = u
FCST_VAR1_OPTIONS = set_attr_init="{init?fmt=%Y%m%d_%H%M%S}"; set_attr_valid="{valid?fmt=%Y%m%d_%H%M%S}"; set_attr_lead="{lead?fmt=%H}";

# FCST_VAR<n>_LEVELS dimensions are (valid_time, lev, latitude, longitude)
FCST_VAR1_LEVELS = "(0,1,*,*)"
FCST_GRID_STAT_INPUT_DATATYPE = NETCDF_NCCF
###
# Field Info
# https://metplus.readthedocs.io/en/latest/Users_Guide/systemconfiguration.html#field-info
###

# Location of the TDR file
TC_RADAR_FILE = {OBS_GRID_STAT_INPUT_DIR}/merged_zonal_wind_tdr.nc

# Obs vertical level in km
OBS_VERT_LEVEL_KM = 2

MODEL = HAFS
OBTYPE = TDR

# Name of observation variable 1
# In this example the variable is merged_zonal_wind
#
OBS_VAR1_NAME = {PARM_BASE}/use_cases/model_applications/tc_and_extra_tc/GridStat_fcstHAFS_obsTDR_NetCDF/read_tdr.py {TC_RADAR_FILE} merged_zonal_wind {custom?fmt=%s} {OBS_VERT_LEVEL_KM}

#Thresholds for categorical statistics
FCST_VAR1_NAME = u
FCST_VAR1_LEVELS = "(0,1,*,*)"
FCST_VAR1_THRESH = gt10.0, gt20.0, lt-10.0, lt-20.0
FCST_VAR1_OPTIONS = set_attr_init="{init?fmt=%Y%m%d_%H%M%S}"; set_attr_valid="{valid?fmt=%Y%m%d_%H%M%S}"; set_attr_lead="{lead?fmt=%H}";
FCST_GRID_STAT_INPUT_DATATYPE = NETCDF_NCCF

OBS_VAR1_NAME = {PARM_BASE}/use_cases/model_applications/tc_and_extra_tc/GridStat_fcstHAFS_obsTDR_NetCDF/read_tdr.py {TC_RADAR_FILE} merged_zonal_wind {custom?fmt=%s} {OBS_VERT_LEVEL_KM}
OBS_VAR1_THRESH = gt10.0, gt20.0, lt-10.0, lt-20.0

# Time relative to valid time (in seconds) to allow files to be considered
# valid. Set both BEGIN and END to 0 to require the exact time in the filename
FCST_GRID_STAT_FILE_WINDOW_BEGIN = 0
FCST_GRID_STAT_FILE_WINDOW_END = 0

# MET GridStat neighborhood values
# See the MET User's Guide GridStat section for more information
# width value passed to nbrhd dictionary in the MET config file
GRID_STAT_NEIGHBORHOOD_WIDTH = 1
###
# GridStat Settings
# https://metplus.readthedocs.io/en/latest/Users_Guide/wrappers.html#gridstat
###

# shape value passed to nbrhd dictionary in the MET config file
GRID_STAT_NEIGHBORHOOD_SHAPE = SQUARE
GRID_STAT_OUTPUT_FLAG_FHO = BOTH
GRID_STAT_OUTPUT_FLAG_CTC = STAT
GRID_STAT_OUTPUT_FLAG_CTS = STAT
GRID_STAT_OUTPUT_FLAG_CNT = STAT
GRID_STAT_OUTPUT_FLAG_SL1L2 = STAT
GRID_STAT_OUTPUT_FLAG_ECLV = NONE

GRID_STAT_REGRID_TO_GRID = OBS

# cov thresh list passed to nbrhd dictionary in the MET config file
GRID_STAT_NEIGHBORHOOD_WIDTH = 1
GRID_STAT_NEIGHBORHOOD_SHAPE = SQUARE
GRID_STAT_NEIGHBORHOOD_COV_THRESH = >=0.5

# Set to true to run GridStat separately for each field specified
# Set to false to create one run of GridStat per run time that
# includes all fields specified.
GRID_STAT_ONCE_PER_FIELD = False

# Set to true if forecast data is probabilistic
FCST_IS_PROB = false

# Only used if FCST_IS_PROB is true - sets probabilistic threshold
FCST_GRID_STAT_PROB_THRESH = ==0.1

# Set to true if observation data is probabilistic
# Only used if configuring forecast data as the 'OBS' input
OBS_IS_PROB = false

# Only used if OBS_IS_PROB is true - sets probabilistic threshold
OBS_GRID_STAT_PROB_THRESH = ==0.1

GRID_STAT_OUTPUT_PREFIX = {MODEL}_vs_{OBTYPE}

# End of [config] section and start of [dir] section
[dir]

# location of configuration files used by MET applications
CONFIG_DIR={PARM_BASE}/met_config

# directory containing forecast input to GridStat
FCST_GRID_STAT_INPUT_DIR = {INPUT_BASE}/model_applications/tc_and_extra_tc/GridStat_fcstHAFS_obsTDR_NetCDF/hafs_height

# directory containing observation input to GridStat
OBS_GRID_STAT_INPUT_DIR = {INPUT_BASE}/model_applications/tc_and_extra_tc/GridStat_fcstHAFS_obsTDR_NetCDF/obs

# directory containing climatology mean input to GridStat
# Not used in this example
GRID_STAT_CLIMO_MEAN_INPUT_DIR =

# directory containing climatology mean input to GridStat
# Not used in this example
GRID_STAT_CLIMO_STDEV_INPUT_DIR =

# directory to write output from GridStat
GRID_STAT_OUTPUT_DIR = {OUTPUT_BASE}/model_applications/tc_and_extra_tc/tdr

# End of [dir] section and start of [filename_templates] section
[filename_templates]

# Template to look for forecast input to GridStat relative to FCST_GRID_STAT_INPUT_DIR
FCST_GRID_STAT_INPUT_TEMPLATE = dorian05l.{init?fmt=%Y%m%d%H}.hafsprs.synoptic.0p03.f{lead?fmt=%HHH}.nc4

# Template to look for observation input to GridStat relative to OBS_GRID_STAT_INPUT_DIR
OBS_GRID_STAT_INPUT_TEMPLATE = PYTHON_NUMPY


# Optional subdirectories relative to GRID_STAT_OUTPUT_DIR to write output from GridStat
GRID_STAT_OUTPUT_TEMPLATE = {init?fmt=%Y%m%d%H}

# Template to look for climatology input to GridStat relative to GRID_STAT_CLIMO_MEAN_INPUT_DIR
# Not used in this example
GRID_STAT_CLIMO_MEAN_INPUT_TEMPLATE =

# Template to look for climatology input to GridStat relative to GRID_STAT_CLIMO_STDEV_INPUT_DIR
# Not used in this example
GRID_STAT_CLIMO_STDEV_INPUT_TEMPLATE =

# Used to specify one or more verification mask files for GridStat
# Not used for this example
GRID_STAT_VERIFICATION_MASK_TEMPLATE =
Loading

0 comments on commit 40ee888

Please sign in to comment.