5.1.14.6. PCPCombine: SUBTRACT Use Case

met_tools_wrapper/PCPCombine/PCPCombine_subtract.conf

Scientific Objective

Extract a 3 hour precipitation accumulation field by subtracting a 15 hour accumulation field from an 18 hour accumulation field.

Datasets

Forecast: WRF precipitation accumulation fields (18 hour and 15 hour forecast leads)
Location: All of the input data required for this use case can be found in the met_test sample data tarball. Click here to the METplus releases page and download sample data for the appropriate release: https://github.com/dtcenter/METplus/releases
This tarball should be unpacked into the directory that you will set the value of INPUT_BASE. See Running METplus section for more information.
Data Source: WRF

METplus Components

This use case utilizes the METplus PCPCombine wrapper to search for files to extract the desired accumulation for a given run time using a filename template, forecast lead, and output accumulation. It will a generate a command to run PCPCombine to subtract a field from another field to extract the desired accumulation.

METplus Workflow

PCPCombine is the only tool called in this example. It processes the following run times:

Valid: 2005-08-07_00Z
Forecast lead: 18 hour

METplus Configuration

METplus first loads all of the configuration files found in parm/metplus_config, then it loads any configuration files passed to METplus via the command line with the -c option, i.e. -c parm/use_cases/met_tool_wrapper/PCPCombine/PCPCombine_subtract.conf

# PCPCombine Subtract Method Example

[config]
# List of applications to run - only PCPCombine for this case
PROCESS_LIST = PCPCombine

# 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 = INIT

# 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
INIT_TIME_FMT = %Y%m%d%H

# Start time for METplus run - must match INIT_TIME_FMT
INIT_BEG = 2005080700

# End time for METplus run - must match INIT_TIME_FMT
INIT_END = 2005080700

# Increment between METplus runs (in seconds if no units are specified)
#  Must be >= 60 seconds
INIT_INCREMENT = 1M

# 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 = 18H

# 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 PCPCombine MET output
#LOG_PCP_COMBINE_VERBOSITY = 2

# If True, run PCPCombine on forecast data
# observation equivalent OBS_PCP_COMBINE_RUN also exists
FCST_PCP_COMBINE_RUN = True

# mode of PCPCombine to use (SUM, ADD, SUBTRACT, DERIVE, or CUSTOM)
FCST_PCP_COMBINE_METHOD = SUBTRACT

# maximum forecast lead to allow when searching for model data to use in PCPCombine
# Default is a very large time (4000 years) so setting this to a valid maximum value can
# speed up execution time of numerous runs
FCST_PCP_COMBINE_MAX_FORECAST = 2d

# description of data to be processed
# used in output file path
MODEL = GFS
OBTYPE = ANLYS

# set to True if forecast input is probabilistic
FCST_IS_PROB = false

# Input data type of forecast input, only used if data is probabilistic to determine
# how to extract data from file
FCST_PCP_COMBINE_INPUT_DATATYPE = GRIB

# desired output accumulation to build with forecast input
# Units are in hours if not specified
# Corresponds to *_OUTPUT_NAME
FCST_PCP_COMBINE_OUTPUT_ACCUM = 3H

# Name of output field name to write
FCST_PCP_COMBINE_OUTPUT_NAME = APCP

# If running a MET tool comparison tool after PCPCombine, one can instead set FCST_VAR1_[NAME/LEVELS] to
# a value starting with A that corresponds to the desired accumulation to use in the comparison
# this value will be used to determine the accumulation to build with PCPCombine as well
# If FCST_PCP_COMBINE_OUTPUT_[NAME/ACCUM] are set, these variables take priority over
# FCST_VAR<n>_[NAME/LEVELS]
#FCST_VAR1_NAME = APCP
#FCST_VAR1_LEVELS = 3H

# End of [config] section and start of [dir] section
[dir]
# input and output data directories
FCST_PCP_COMBINE_INPUT_DIR = {INPUT_BASE}/met_test/data/sample_fcst
FCST_PCP_COMBINE_OUTPUT_DIR = {OUTPUT_BASE}/met_tool_wrapper/PCPCombine/PCPCombine_subtract


# End of [dir] section and start of [filename_templates] section
[filename_templates]
# format of filenames
FCST_PCP_COMBINE_INPUT_TEMPLATE = {init?fmt=%Y%m%d%H}/wrfprs_ruc13_{lead?fmt=%HH}.tm00_G212
FCST_PCP_COMBINE_OUTPUT_TEMPLATE = wrfprs_ruc13_{init?fmt=%Y%m%d%H}_f{lead?fmt=%HH}_A03.nc

MET Configuration

None. PCPCombine does not use configuration files.

Running METplus

This use case can be run two ways:

  1. Passing in PCPCombine_subtract.conf then a user-specific system configuration file:

    run_metplus.py -c /path/to/METplus/parm/use_cases/met_tool_wrapper/PCPCombine/PCPCombine_subtract.conf -c /path/to/user_system.conf
    
  2. Modifying the configurations in parm/metplus_config, then passing in PCPCombine_subtract.conf:

    run_metplus.py -c /path/to/METplus/parm/use_cases/met_tool_wrapper/PCPCombine/PCPCombine_subtract.conf
    

The former method is recommended. Whether you add them to a user-specific configuration file or modify the metplus_config files, the following variables must be set correctly:

  • INPUT_BASE - Path to directory where sample data tarballs are unpacked (See Datasets section to obtain tarballs). This is not required to run METplus, but it is required to run the examples in parm/use_cases

  • OUTPUT_BASE - Path where METplus output will be written. This must be in a location where you have write permissions

  • MET_INSTALL_DIR - Path to location where MET is installed locally

Example User Configuration File:

[dir]
INPUT_BASE = /path/to/sample/input/data
OUTPUT_BASE = /path/to/output/dir
MET_INSTALL_DIR = /path/to/met-X.Y

NOTE: All of these items must be found under the [dir] section.

Expected Output

A successful run will output the following both to the screen and to the logfile:

INFO: METplus has successfully finished running.

Refer to the value set for OUTPUT_BASE to find where the output data was generated. Output for this use case will be found in met_tool_wrapper/PCPCombine/PCPCombine_subtract (relative to OUTPUT_BASE) and will contain the following files:

  • wrfprs_ruc13_2005080700_f24_A18.nc

Keywords

sphinx_gallery_thumbnail_path = ‘_static/met_tool_wrapper-PCPCombine.png’

Total running time of the script: ( 0 minutes 0.000 seconds)

Gallery generated by Sphinx-Gallery