# 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 PROCESS_LIST = GridStat # time looping - 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 # Format of VALID_BEG and VALID_END using % items # %Y = 4 digit year, %m = 2 digit month, %d = 2 digit day, etc. # %Y%m%d%H expands to YYYYMMDDHH VALID_TIME_FMT = %Y%m%d # Start time for METplus run - must match VALID_TIME_FMT VALID_BEG={ENV[VDATE]} # End time for METplus run - must match VALID_TIME_FMT VALID_END={ENV[VDATE]} # Increment between METplus runs (in seconds if no units are specified) # Must be >= 60 seconds VALID_INCREMENT = 24H # 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 = {ENV[fhr3]} # 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 # Location of MET config file to pass to GridStat GRID_STAT_CONFIG_FILE = {PARM_BASE}/met_config/GridStatConfig_wrapped # Name to identify model (forecast) data in output MODEL = RTOFS # Name to identify observation data in output OBTYPE = GHRSST # set the desc value in the GridStat MET config file GRID_STAT_DESC = NA GRID_STAT_OUTPUT_PREFIX = {MODEL}_{OBTYPE}_SST # List of variables to compare in GridStat - FCST_VAR1 variables correspond # to OBS_VAR1 variables # Note [FCST/OBS/BOTH]_GRID_STAT_VAR_NAME can be used instead if different evaluations # are needed for different tools # Name of forecast variable 1 FCST_VAR1_NAME = sst # List of levels to evaluate for forecast variable 1 # (*,*) is NetCDF notation - must include quotes around these values! FCST_VAR1_LEVELS = "(0,*,*)" # Set forecast lead and level information for the stat files FCST_VAR1_OPTIONS = set_attr_lead = "{lead?fmt=%3H}"; set_attr_level = "Z0"; # List of thresholds to evaluate for each name/level combination for both # forecast and observation variable 1 BOTH_VAR1_THRESH = >=0, >=26.5 # Name of observation variable 1 OBS_VAR1_NAME = analysed_sst # List of levels to evaluate for observation variable 1 # must be the same length as FCST_VAR1_LEVELS OBS_VAR1_LEVELS = "(0,*,*)" # List of thresholds to evaluate for each name/level combination for # observation variable 1 #OBS_VAR1_THRESH = >=0, >=26.5 # Shift observation valid time from 12Z to 00Z; convert unit from Kelvin to Celsius; and set level information OBS_VAR1_OPTIONS = set_attr_valid = "{valid?fmt=%Y%m%d_000000}"; convert(x) = K_to_C(x); set_attr_units = "degC"; set_attr_level = "Z0"; # 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 OBS_GRID_STAT_FILE_WINDOW_BEGIN = 0 OBS_GRID_STAT_FILE_WINDOW_END = 0 # 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 # 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 = NONE #GRID_STAT_REGRID_TO_GRID = OBS #GRID_STAT_REGRID_METHOD = BILIN #GRID_STAT_REGRID_WIDTH = 2 GRID_STAT_GRID_WEIGHT_FLAG = COS_LAT # Set up verification regions # Keep GRID_STAT_MASK_GRID empty to remove the FULL domain in stat files GRID_STAT_MASK_GRID = GRID_STAT_MASK_POLY = {ENV[COMIN]}/prep/rtofs/rtofs.{valid?fmt=%Y%m%d}/{ENV[RUN]}/mask.global.nc, {ENV[COMIN]}/prep/rtofs/rtofs.{valid?fmt=%Y%m%d}/{ENV[RUN]}/mask.north_atlantic.nc, {ENV[COMIN]}/prep/rtofs/rtofs.{valid?fmt=%Y%m%d}/{ENV[RUN]}/mask.south_atlantic.nc, {ENV[COMIN]}/prep/rtofs/rtofs.{valid?fmt=%Y%m%d}/{ENV[RUN]}/mask.equatorial_atlantic.nc, {ENV[COMIN]}/prep/rtofs/rtofs.{valid?fmt=%Y%m%d}/{ENV[RUN]}/mask.north_pacific.nc, {ENV[COMIN]}/prep/rtofs/rtofs.{valid?fmt=%Y%m%d}/{ENV[RUN]}/mask.south_pacific.nc, {ENV[COMIN]}/prep/rtofs/rtofs.{valid?fmt=%Y%m%d}/{ENV[RUN]}/mask.equatorial_pacific.nc, {ENV[COMIN]}/prep/rtofs/rtofs.{valid?fmt=%Y%m%d}/{ENV[RUN]}/mask.indian.nc, {ENV[COMIN]}/prep/rtofs/rtofs.{valid?fmt=%Y%m%d}/{ENV[RUN]}/mask.southern.nc, {ENV[COMIN]}/prep/rtofs/rtofs.{valid?fmt=%Y%m%d}/{ENV[RUN]}/mask.arctic.nc, {ENV[COMIN]}/prep/rtofs/rtofs.{valid?fmt=%Y%m%d}/{ENV[RUN]}/mask.mediterranean.nc # 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 # shape value passed to nbrhd dictionary in the MET config file GRID_STAT_NEIGHBORHOOD_SHAPE = SQUARE # cov thresh list passed to nbrhd dictionary in the MET config file GRID_STAT_NEIGHBORHOOD_COV_THRESH = >=0.5 # 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 # Set up climatology files and interpolation methods GRID_STAT_CLIMO_MEAN_FILE_NAME = {ENV[FIXevs]}/climos/{ENV[COMPONENT]}/woa23/woa23_decav91C0_t{ENV[SM]}_04.nc, {ENV[FIXevs]}/climos/{ENV[COMPONENT]}/woa23/woa23_decav91C0_t{ENV[EM]}_04.nc GRID_STAT_CLIMO_MEAN_FIELD = {name = "t_an"; level = "(0,0,*,*)";} GRID_STAT_CLIMO_MEAN_REGRID_METHOD = BILIN GRID_STAT_CLIMO_MEAN_REGRID_WIDTH = 2 GRID_STAT_CLIMO_MEAN_REGRID_VLD_THRESH = 0.5 GRID_STAT_CLIMO_MEAN_REGRID_SHAPE = SQUARE GRID_STAT_CLIMO_MEAN_TIME_INTERP_METHOD = DW_MEAN GRID_STAT_CLIMO_MEAN_DAY_INTERVAL = 31 GRID_STAT_CLIMO_MEAN_HOUR_INTERVAL = 6 GRID_STAT_CLIMO_CDF_WRITE_BINS = False # Set up output files 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_SAL1L2 = STAT GRID_STAT_NC_PAIRS_FLAG_LATLON = FALSE GRID_STAT_NC_PAIRS_FLAG_RAW = FALSE GRID_STAT_NC_PAIRS_FLAG_DIFF = FALSE GRID_STAT_NC_PAIRS_FLAG_CLIMO = FALSE GRID_STAT_NC_PAIRS_FLAG_APPLY_MASK = FALSE # End of [config] section and start of [dir] section [dir] # directory containing forecast input to GridStat FCST_GRID_STAT_INPUT_DIR = {ENV[COMIN]}/prep/rtofs # directory containing observation input to GridStat INPUT_BASE = {ENV[DCOMROOT]} OBS_GRID_STAT_INPUT_DIR = {INPUT_BASE}/{ENV[VDATE]}/validation_data/marine/ghrsst # directory to write output from GridStat GRID_STAT_OUTPUT_DIR = {ENV[STATSDIR]} # 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 = rtofs.{init?fmt=%Y%m%d}/{ENV[RUN]}/rtofs_glo_2ds_f{lead?fmt=%3H}_prog.{ENV[RUN]}.nc # Template to look for observation input to GridStat relative to OBS_GRID_STAT_INPUT_DIR OBS_GRID_STAT_INPUT_TEMPLATE = {valid?fmt=%Y%m%d}_OSPO_L4_GHRSST.nc OBS_GRID_STAT_FILE_TYPE = NETCDF_NCCF # Optional subdirectories relative to GRID_STAT_OUTPUT_DIR to write output from GridStat GRID_STAT_OUTPUT_TEMPLATE = {ENV[RUN]}.{valid?fmt=%Y%m%d}/{ENV[VAR]}