**RUNNING VERIFICATION SOFTWARE**

**Jeff McQueen & Perry Shafran**

Updated 11/14/2023

**Introduction**

FVS Verification software has been developed that allows users to input
choices for models to verify, output grids to verify, variables to
verify, types of plots to be created, and other items. With a few user
inputs, the software will bring over VSDB (Verification Statistical Data
Base) files, create its own trace.ctl file (as documented in the FVS
Made Easy documentation), and then create the plots. This documentation
will explain how it works and how to enter in user inputs in driver
scripts, both in the launcher system (launch-fvs.sh) and for
non-launcher verification (runfvs.sh).

The software is available at :

**tempest: /export-4/tempest/wd22jm/fvs/scripts**

**dew: /meso/save/wx22mc/jeff/FVS-SCRIPTS**

The following scripts and files should be copied:

runfvs.sh

make-fvs.sh

cr8trace.sh

cr8cfg.sh

FVS.CTL

SLBL.CFG

RLBL.CFG

**The make-fvs.sh software**

The make-fvs.sh software is the core script that creates an FVS
(Forecast Verification System) *trace.ctl* control file. It also takes
the partial sum statistics and then produces plots of any number of
traces. The trace.ctl file is produced automatically in the cr8trace.sh
sub-script.

The make-fvs.sh script reads in a specified configuration file, FVS.CTL.
The FVS.CTL file can be created manually or can be created from the
input selected in the driver script (eg: runfvs.sh). The user specifies
the models, variable, regions, forecast hours, statistics, and starting
and end dates. The make-fvs.sh software then reads in this control file
and does the plot.

To run make-fvs.sh, execute this command

make-fvs.sh PLOTTYPE cycle-hr

where PLOTTYPE is either:

DTS: a daily time series

DIU: a diurnal cycle plot from beginning forecast hour to end forecast
hour

UPA: an upper-air plot

FHO: an FHO type plot with binned thresholds

Cycle-hr is the model run to evaluate (e.g. 00, 06, 12, 18, etc), or
this is left blank to run all cycles in the combine statistics.

**The runfvs.sh script**

This script is where users enter export statement variables. Then a
script cr8cfg.sh is run, which creates the FVS.CTL files mentioned
above. Below are the items to enter:

strdate: The starting time of the verification period (YYYYMMDDHHMM)

endate: The ending time of the verification period (YYYYMMDDHHMM)

TRACES: Models to verify

RGN: Verification region(s)

plothrs: Forecast hour(s) to plot

stno: FVS statistics plotting codes (e.g. 1101 for bias, 1102 for RMS)

cycle: The model cycle time

appstat: 1=all stats on one graph, 0=one stat per graph

sfcvarbs: Surface variables to plot (e.g. : T, DPT, RH, VWND, SLP...)

upavarbs: Upper-air variables to plot (e.g.: T, DPT, RH, VWND, Z...)

plvl: upper-air levels to plot for each upavarb defined

The fields listed above and set in the runfvs.sh master cript should be
exported as follows cr8cfg.sh should also be called before calling
make-fvs.sh :

export strdate=200802010000

export endate=200802102359

export cycle=12

export appestat=1

export TRACES="NAM/218 NAMY/218 GFS/212"

export RGN=G236

export plothrs=12

export VARB=DPT (or set a list of sfcvarbs and upavarbs as described
above)

export PLVL=SFC (or set a list of levels to plot as described above)

export stno="1101 1102"

*cr8cfg.sh*

*make-fvs.sh DIU \$cycle*

**[The FVS.CTL file]{.underline}**

Here is the format of the FVS.CTL file:

NAM/218 NAMY/218 GFS/212 = Model/grid number per fhour

G236 G236 G236 = Verification domain

DPT DPT DPT = Variable

SFC SFC SFC = Variable level

12 12 12 = Forecast hour

1 1101 1102 = APPSTAT and stat types

200801010000 200801312359 = Starting and ending times

Note that we only need to set the models and regions to be plotted per
forecast. The configuration here will plot the surface dewpoint bias
(1101) and RMS (1102) for the NAM, NAMY, and GFS models for the 12-hr
forecast.

Here is a more detailed example of what is available to put in each
line:

1: Any valid model designator in the VSDB database: e.g. *NAM/218,
GFS/212, SRMEAN/212, RUC/236, etc.*

2: Any valid region: e.g*. G236, G245, G216, G148*, etc, for each model
in line 1.

3: Any FVS variable: e.g*. T, VWND, RH, DPT, TOTCLD, SMOKE*, etc, for
each forecast hour in line 5.

4: Variable level or range: e.g. *SFC, P850, P500*, etc.

5: Forecast hour traces to plot for each model: e.g. *00, 12, 24*, etc.

6: Any FVS valid statistic: *RMSE, BIAS, correlation, RHET, RHNT,* etc.
Refer to FVS Made Easy documentation for complete listings for each
statistic type. It is the number of type that belongs here. The first
parameter, *APPSTAT*, is as defined above.

7: Starting and ending date and time for all traces (*YYYYMMDDHHMM*)

Two Configuration files (SLBL.CFG and RLBL.CFG) are also provided to aid
in setting tatistics and region labels for your model trace labels on
the FVS plot. This description and a detailed power-point with plot
examples can be found on the EMC contributions at

http://www.emc.ncep.noaa.gov/mmb/papers/index.html

.