METplus Use Case: Grid to Obs CONUS Surface

METplus Use Case: Grid to Obs CONUS Surface cindyhg Tue, 06/25/2019 - 09:53

METplus Use Case: Grid to Obs CONUS Surface

The Grid to Obs CONUS Surface use case utilizes the MET PB2NC and Point-Stat tools. 

The default statistics created by this use case only dump the partial sums, so we will be also modifying the METplus "MET" specific configuration file to add the continuous statistics to the output. 

There is a little more setup in this use case, which will be instructive and demonstrate the basic structure, flexibility and setup of METplus configuration.

Optional, Refer to section 4.1 and 7.3 of the MET Users Guide for a description of the MET tools used in this use case. 
Optional, Refer to the METplus 2.0.4 Users Guide for a reference to METplus variables used in this use case.

Setup

Lets start by defining where to send the output by setting the OUTPUT_BASE configuration variable. 

Edit Custom Configuration File

Define a unique directory under output that you will use for this use case. 

Edit ${HOME}/METplus/parm/mycustom.conf
Change OUTPUT_BASE to contain a subdirectory specific to the Grid to Obs use case.

[dir] 
... other entries ...
OUTPUT_BASE = {ENV[HOME]}/metplus_tutorial/output/grid_to_obs

Since pb2nc takes 20 minutes to run on the sample data for this use case, we have pregenerated the netcdf output and will be copying this data to the OUTPUT_BASE directory. 

Run the following commands: 
Note: If you already ran this command in the previous use case and do not need to copy the data again.

mkdir -p ${HOME}/metplus_tutorial/output/grid_to_obs
cp -r /classroom/wrfhelp/METplus_Data/grid_to_obs/netcdf/* ${HOME}/metplus_tutorial/output/grid_to_obs/

We will also need to change the METplus PROCESS_LIST configuration variable for this use case to only run PointStat. 

Edit ${HOME}/METplus/parm/use_cases/grid_to_obs/examples/conus_surface.conf
Note: If you use vi to edit this file, you may receive a modeline complaint opening the file, just hit return and ignore.

Make the following changes to the existing PROCESS_LIST line. Be sure to maintain and keep the changes under the [config]section identifier in the file.

[config] 
... other entries ...
#PROCESS_LIST = PB2NC, PointStat
PROCESS_LIST = PointStat

NOTE : PROCESS_LIST defines the processes that will be run for the use case. 
Consider, Instead of changing the PROCESS_LIST in the conus_surface.conf file you could have added it under a [config]section in your mycustom.conf file. HOWEVER, that would than have applied to all subsequent calls and use cases, so after running this use case, you would than have to comment out that change unless you were running a similar use case and wanted the same PROCESS_LIST.

Lastly, lets add the the continuous statistics to the Point-Stat output. 

Edit the METplus MET Configuration File

Edit ${HOME}/METplus/parm/use_cases/grid_to_obs/met_config/PointStatConfig_conus_sfc
You will need to edit the cnt flag and add the vcnt flag, as follows, in the Statistical Output types section.

output_flag = { 
... other entries ...
cnt = STAT;
vcnt = STAT;

Review: Take a look at the settings in the CONUS Surface configuration file.

less ${HOME}/METplus/parm/use_cases/grid_to_obs/examples/conus_surface.conf

Run METplus: Run Grid to Obs CONUS Surface use case.

Run the following command:

master_metplus.py -c use_cases/grid_to_obs/grid_to_obs.conf -c use_cases/grid_to_obs/examples/conus_surface.conf -c mycustom.conf

Review Output files:

The following is the statistical ouput and files are generated from the command:

$HOME/metplus_tutorial/output/grid_to_obs/nam

  • point_stat_000000L_20170601_000000V.stat 
  • point_stat_000000L_20170602_000000V.stat 
  • point_stat_000000L_20170603_000000V.stat 
  • point_stat_240000L_20170602_000000V.stat 
  • point_stat_240000L_20170603_000000V.stat 
  • point_stat_480000L_20170603_000000V.stat