# PrepBufr to NetCDF Configurations # section heading for [config] variables - all items below this line and # before the next section heading correspond to the [config] section [config] # Redirect final configuration file # MET_INSTALL_DIR, MET_BIN_DIR, OUTPUT_BASE are defined in machine.conf INPUT_BASE = {ENV[COMINobsproc]} OUTPUT_BASE = {ENV[DATA]} TMP_DIR = {OUTPUT_BASE}/tmp METPLUS_CONF = {ENV[DATA]}/confs/metplus_final_PB2NC_obsPrepbufrGDAS_valid{ENV[VDATE]}{ENV[valid_hour2]}.conf LOG_METPLUS = {ENV[DATA]}/logs/PB2NC_obsPrepbufrGDAS_valid{ENV[VDATE]}{ENV[valid_hour2]}.log # List of applications to run - only PB2NC for this case PROCESS_LIST = PB2NC # 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%H # Start time for METplus run - must match VALID_TIME_FMT VALID_BEG = {ENV[VDATE]}{ENV[valid_hour2]} # End time for METplus run - must match VALID_TIME_FMT VALID_END = {ENV[VDATE]}{ENV[valid_hour2]} # Increment between METplus runs (in seconds if no units are specified) # Must be >= 60 seconds # these will be the output files times too VALID_INCREMENT = 6H # 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 INIT_SEQ = # list of offsets in the prepBUFR input filenames to allow. List is in order of preference # i.e. if 12, 6 is listed, it will try to use a 12 offset file and then try to use a 6 offset # if the 12 does not exist PB2NC_OFFSETS = 0 # 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 PB2NC PB2NC_CONFIG_FILE = {PARM_BASE}/met_config/PB2NCConfig_wrapped # If set to True, skip run if the output file determined by the output directory and # filename template already exists PB2NC_SKIP_IF_OUTPUT_EXISTS = True PB2NC_SKIP_TIMES = SKIP_TIMES = PB2NC_MANDATORY = True INPUT_MUST_EXIST = True USER_SHELL = bash DO_NOT_RUN_EXE = PB2NC_INPUT_DATATYPE = # Time relative to each input file's valid time (in seconds if no units are specified) for # data within the file to be considered valid. Values are set in the 'obs_window' # dictionary in the PB2NC config file #PB2NC_OBS_WINDOW_BEGIN = -10800 #PB2NC_OBS_WINDOW_END = 21600 PB2NC_OBS_WINDOW_BEGIN = -1800 PB2NC_OBS_WINDOW_END = 1800 # controls the window of time around the current run time to be considered to be valid for all # input files, not just relative to each input files valid time # if set, these values are substituted with the times from the current run time and passed to # PB2NC on the command line with -valid_beg and -valid_end arguments. # Not used if unset or set to an empty string #PB2NC_VALID_BEGIN = {valid?fmt=%Y%m%d_%H} #PB2NC_VALID_END = {valid?fmt=%Y%m%d_%H?shift=1d} PB2NC_VALID_BEGIN = PB2NC_VALID_END = # Values to pass to pb2nc config file using environment variables of the same name. # See MET User's Guide for more information #PB2NC_GRID = G193 PB2NC_GRID = PB2NC_POLY = PB2NC_STATION_ID = PB2NC_MESSAGE_TYPE = #PB2NC_MESSAGE_TYPE = ADPSFC , SFCSHP # Leave empty to process all PB2NC_OBS_BUFR_VAR_LIST = UOB, VOB, D_WIND, D_WDIR,HOWV, POWV, HOWW, POWW, HOSW, POSW PB2NC_QUALITY_MARK_THRESH = 2 # Make sure to set obs_quality=["1","2","3","9"]; # For defining the time periods for summarization # False for no time summary, True otherwise # The rest of the PB2NC_TIME_SUMMARY variables are ignored if set to False PB2NC_TIME_SUMMARY_FLAG = False # start time of time summary in HHMMSS format PB2NC_TIME_SUMMARY_BEG = 000000 PB2NC_TIME_SUMMARY_END = 235959 PB2NC_TIME_SUMMARY_STEP = 86400 ;; every day PB2NC_TIME_SUMMARY_WIDTH = 43200 ;; everything in that day #PB2NC_TIME_SUMMARY_VAR_NAMES = HOWV, POWV, HOWW, POWW, HOSW, POSW, D_WIND, D_WDIR PB2NC_TIME_SUMMARY_VAR_NAMES = D_WIND, D_WDIR, HOWV, POWV, HOWW, POWW, HOSW, POSW PB2NC_TIME_SUMMARY_TYPES = min, max, range, mean, stdev, median, p95 ;; a list of the statistics to summarize PB2NC_OBS_BUFR_MAP = { key = "HOWV"; val="HTSGW"; }, { key = "POWV"; val="PERPW"; }, { key = "HOWW"; val="WVHGT"; }, { key = "POWW"; val="WVPER"; }, { key = "HOSW"; val="SWELL"; }, { key = "POSW"; val="SWPER"; }, { key = "D_WIND"; val="WIND"; }, { key = "D_WDIR"; val="WDIR"; } ## D_WIND and D_WDIR defined in obs_prefbufr_map in PB2NCConfig_wrapped, but ## still have to be listed here. # directory containing input to PB2NC PB2NC_INPUT_DIR = {INPUT_BASE} # directory to write output from PB2NC PB2NC_OUTPUT_DIR = {OUTPUT_BASE}/ncfiles # Template to look for forecast input to PB2NC relative to PB2NC_INPUT_DIR PB2NC_INPUT_TEMPLATE = gdas.{valid?fmt=%Y%m%d}/{valid?fmt=%H}/atmos/gdas.t{valid?fmt=%H}z.prepbufr # Template to use to write output from PB2NC PB2NC_OUTPUT_TEMPLATE = gdas.{valid?fmt=%Y%m%d%H}.nc