**Ensemble Preprocessor (EPP) GFS Subsystem**

**Instructions for software installation and data file configuration**

**Introduction**

The objective of the EPP GFS Subsystem is to develop ensembles of
precipitation and temperature that can use RFC and GFS single-value
precipitation and temperature forecasts to generate ensemble forcing for
input to the ESP processor. RFC forecasts are generally available for
the short-term (1-5 days). GFS forecasts are available for the short and
medium term (1-14) days. The EPP GFS Subsystem can be used to generate
climate traces (using either raw historical observations directly or
using smoothed climate statistics together with a re-sampling process)
for forecast periods out to 1-year lead time.

The purpose of these instructions is to document how to set-up the GFS
Subsystem at a River Forecast Center. First an overview is presented in
this Introduction. Then, details of the system components are presented
is subsequent sections.

Figure 1 presents a flow chart of the GFS Subsystem.

![](media/image1.wmf){width="5.9840277777777775in"
height="4.489583333333333in"}

**Figure 1** -- Flow Chart of the GFS Subsystem

The main components shown in Figure 1 include:

-   Programs

    -   Utility

    -   Parameter estimation

    -   Ensemble generation

    -   Validation/evaluation

-   Index Files

-   Raw Historical Data Files

    -   RFC short term 6-hr MAP forecasts

    -   Corresponding 6-hr MAP observations

    -   RFC Tmax and Tmin forecasts. These may be for stations used to
        compute the FMAT. If so, this will be dealt with later.

    -   Corresponding RFC Tmax and Tmin observations

    -   MOS Tmax and Tmin forecasts if a longer period of forecasts
        and/or longer forecast lead times (out to 7 days) are wanted

-   GFS Processor Historical Data Sets

    -   GFS Processor Historical Data Sets (PRCP.MEAN.yy.xxx and
        TAIR.MEAN.yy.xxx). Note: yy is a latitude index and xxx is a
        longitude index (see Appendix C).

    -   RFC short term 6-hr MAP forecasts (\*.pfcst06)

    -   RFC short term 6-hr MAP observations (\*.pobs06)

    -   RFC Tmax and Tmin forecasts (\*rfctmnfcst, \*.rfctmxfcst)

    -   RFC Tmax and Tmin observations (\*rfctmnfcst, \*.rfctmxfcst)

    -   MOS Tmax and Tmin forecasts (\*mostmnfcst, \*.mostmxfcst)

-   Parameter Files

-   Operational Forecast Files

-   Command Line instructions (command + arguments) to execute the
    programs

-   Input Control Files

-   Output Log Files

All of the files used by the GFS Subsystem are organized in directories.
The directory structure makes use of .Apps defaults. This enables the
GFS Subsystem to access files using symbolic names (apps default tokens)
that correspond to directory paths that are defined specifically for
each RFC installation.

GFS Subsystem installation involves the following steps:

1.  Install executable GFS Subsytem files

2.  Set-up .Apps defaults site tokens (see Section 1)

3.  Set-up directories referred to by .Apps defaults site tokens

4.  Set-up Index Files (see Section 2)

5.  Set-up Raw Historical Data files

-   RFC Historical Data files (see Sections 3.1.A and 3.2.A-B)

-   MOS Historical Data files (see Section 3.2.B)

-   GFS Historical Data files (see Sections 3.1.C and 3.2.F)

6.  Set-up and run data utility programs to create data files required
    by GFS Subsystem parameter estimator programs and ensemble generator
    programs (see Sections 3.1.B and 3.2.C-E)

7.  Set-up and run GFS Subsystem parameter estimator programs (see
    Sections 3.1.D and 3.2.G)

8.  Set-up and run GFS Subsystem ensemble generator programs (see
    Sections 4.2 and 4.3)

9.  Set-up and run GFS Subsystem ensemble verification programs (see
    Sections 5.1 and 5.2)

**Sections:**

**1. .Apps_defaults_site tokens**

**2. Index Files**

**3. Preprocessing steps**

**1. MAP**

**A. Conversion of RFC QPF verification files**

**B. Conversion of calibration MAPs**

**C. Acquire GFS ensemble mean precipitation forecast archive files**

**D. Parameter generation**

**2. MAT**

**A. Conversion of RFC temperature verification files**

**B. Conversion of MOS temperature verification files**

**C. MAT analysis**

**D. Conversion of calibration MATs to tmax/tmin**

**E. Conversion of calibration tmax/tmin to sequential binary**

**F. Acquire GFS ensemble mean temperature forecast archive files**

**G. Parameter generation**

**4. Ensemble Generation**

**1. Frozen Version GFS Model output acquisition, processing, and
storage**

**2. MAP ensemble generation**

**3. MAT ensemble generation**

**5. Ensemble Verification**

**1. MAP ensemble verification**

**2. MAT ensemble verification**

**Appendix A. Index file contents and formats**

**Appendix B. GFS Processor Historical Data Sets File Formats**

**Appendix C. GFS Grid Point Locations**

**Appendix D. Control file contents**

**Appendix E. GFS Subsystem Set-up Check List**

**1. .Apps_defaults_site tokens**

The processing structure makes use of .Apps_defaults. The GFS
preprocessor functions require the following tokens.

\# ens_short tokens

sbmap_ts_dir : \$(calb_area_ts_dir)/epp/sbmap/

sbtxtn_ts_dir : \$(calb_area_ts_dir)/epp/sbtxtn/

rfc_praw_dir : \$(calb_area_ts_dir)/epp/rfc_praw/

rfc_traw_dir : \$(calb_area_ts_dir)/epp/rfc_traw/

mos_traw_dir : \$(calb_area_ts_dir)/epp/mos_traw/

#gfs_epp_ts_dir : \$(calb_area_ts_dir)/epp/esp/

gfs_epp_ts_dir : \$(calb_area_ts_dir)/pre/esp/

gfs_epp_hindcast_ts_dir : \$(calb_area_ts_dir)/epp/\_hindcast/esp/

gfs_oper_dir : \$(calb_area_ts_dir)/epp/zgfs_ens/

gfs_control_dir : \$(ens_dir)/epp/gfs/control/

gfs_index_dir : \$(ens_dir)/epp/gfs/index/

gfs_logs_dir : \$(ens_dir)/epp/gfs/logs/

gfs_log_dir : \$(ens_dir)/epp/gfs/logs/

rfc_pobs06_dir : \$(ens_dir)/epp/gfs/rfc_pobs06/

rfc_pfcst06_dir : \$(ens_dir)/epp/gfs/rfc_pfcst06/

rfc_tobs_dir : \$(ens_dir)/epp/gfs/rfc_tobs/

rfc_tfcst_dir : \$(ens_dir)/epp/gfs/rfc_tfcst/

mos_tfcst_dir : \$(ens_dir)/epp/gfs/mos_tfcst/

gfs_pfcst24_ensmean_dir : \$(ens_dir)/epp/gfs/gfs_pfcst24_ensmean/

gfs_tfcst12_ensmean_dir : \$(ens_dir)/epp/gfs/gfs_tfcst12_ensmean/

gfs_epp_precip_parms_dir : \$(ens_dir)/epp/gfs/precip_parms/

gfs_epp_temp_parms_dir : \$(ens_dir)/epp/gfs/temp_parms/

gfs_temp_verify_dir : \$(ens_dir)/epp/gfs/verify/temp/

gfs_precip_verify_dir : \$(ens_dir)/epp/gfs/verify/precip/

\# cuz John said we had to do this!

calb_data_grp : oper

calb_area_ts_dir : \$(calb_dir)/data/area_ts/\$(calb_data_grp)/

**2. Index Files**

The GFS preprocessor functions require the following index files. All
index files are located in \<gfs_index_dir\>. The content and format of
each index file is provided in Appendix A.

[name]{.underline} [used by]{.underline}

map_ts_index.txt map_06_sbmap06

gfs_precip_epp

map_area_loc.txt gfs_precip_parms

gfs_precip_epp

mat_ts_index.txt runcalbmap

sbtxtn

gfs_temp_parms

gfs_temp_epp

matanal_stations.txt matanalysis

temp_stn_normals.txt matanalysis

mat_area_loc.txt gfs_temp_parms

gfs_temp_epp

**3. Preprocessing steps**

**1. MAP Preprocessing**

A. Conversion of RFC QPF verification files

B. Converison of calibration MAPs into sequential binary format

C. Acquire GFS ensemble mean precipitation forecast archive files

D. Map parameter generation

**2. MAT Preprocessing**

A. Conversion of RFC temperature verification files

B. Conversion of MOS temperature forecast files

C. Conversion of calibration MATs into tx and tn

D. Conversion of (calibration) tx and tn into sequential binary format

E. MAT analysis

F. Acquire GFS ensemble mean temperature forecast archive files

G. MAT parameter generation

Processing diagrams are provided for each step.

The diagram key for MAP preprocessing is shown in Figure 2.

The diagram key for MAT preprocessing is shown in Figure 3.

![](media/image2.wmf){width="4.989583333333333in"
height="3.053472222222222in"}

**Figure 2**. GFS Ensemble Precipitation Preprocessor Subsystem Diagram
Key

![](media/image3.wmf){width="4.989583333333333in"
height="3.1131944444444444in"}

**Figure 3**. GFS Ensemble Temperature Preprocessor Diagram Key

**3.1.A. Conversion of RFC QPF verification files**

![](media/image4.wmf){width="4.989583333333333in"
height="2.7381944444444444in"}

Each RFC has a slightly different history of QPF generation and
archival. The system allows an RFC to place their verification files
into a standard location \<rfc_praw_dir\> where they can be accessed and
made compatible with the parameter generation program. Each RFC may need
a unique processing program for this step until a standard verification
file format is established. The conversion program is called
\^\_rfc_praw_conv. Where \^ is the 2 character RFC identifier (i.e. cn).

RFC provided verification files are for operational areas (ie. MAP
areas) and cover a calendar year. The file name convention is
\*.map.yyyy where \* is the operational area identifier and yyyy is the
calendar year. The RFC specific conversion program separates the
observed and forecast values and puts them into a binary format called
\*.pobs06 and \*.pfcst06. located in \<rfc_pobs06_dir\> and
\<rfc_pfcst06_dir\> respectively.

Annual files are used so that the parameters can be updated easily as
additional verification information becomes available. This avoids
having the RFC generate the full period of record each year.

**Sample usage:** cn_rfc_praw_conv nfdc1huf

This will access all nfdc1huf.map.yyyy files in \<rfc_praw_dir\> and
convert them into nfdc1huf.pobs06 and nfdc1huf.pfcst06 files located in
\<rfc_pobs06_dir\> and \<rfc_pfcst06_dir\> respectively.

**Alternative approach**

Alternatively, an RFC may choose to directly generate the \*.pobs06 and
\*.pfcst06 files for each operational area. Place the files in the
location indicated in the diagram and make sure the permissions allow
access. An excepted sample of each follows:

**\*.pobs06**

vtime = 12Z

units = in

dt = 6

end

19970101 -99.99 -99.99 -99.99 -99.99

Values are observed 6-hour precipitation starting with 12Z to18Z on the
date indicated. This is a fixed field file (I4,I2,I2,1X,4F6.2) The
number of lines depends on the duration of the data. Missing values
(-99.99) are not a problem. The CNRFC starts these files on 01/01/1997
and runs them through 12/31/2007 at this time.

**\*.pfcst06**

vtime = 12Z

units = in

dt = 6

nfcstdays = 5

end

19970101 -99.99 -99.99 ... -99.99 (20 fields for nfcstdays=5)

The values represent the 6-hour precipitation forecasts for the next
4\*nfcstdays periods, starting with the period ending at 18Z on the date
indicated. This is a fixed field file (I4,I2,I2,1X,nF6.2). The number of
lines depends on the duration of the data. Missing values (-99.99) are
not a problem. The CNRFC starts these files on 01/01/1997 and runs them
through 12/31/2007 at this time.

**3.1.B. Converison of calibration MAPs into sequential binary format**

![](media/image5.wmf){width="4.989583333333333in"
height="2.3965277777777776in"}

This process is performed by program map06_sbmap06. It reads the
calibration MAP datacard files and converts them into the sequential
binary format. The program also computes statistics.

**Sample usage:** map06_sbmap06 nfdc1huf

The map_ts_index.txt index file is used to relate the operational area
identifier with the location and file name of the calibration MAP. The
identified MAP is then processed into a sequential binary format and
placed in \<sbmap_ts_dir\> (nfdc1huf.sbmap06 in the sample case). A
statistics file is also generated (nfdc1huf.map06.stats) and placed in
the same directory. This is done so that these stats can be compared
with the statistics generated from the sequential binary information.

**Optional Diagnostic Step**

Once the sequential binary files have been generated, the user may
generate monthly statistics for diagnostic/validation purposes.

![](media/image6.wmf){width="4.989583333333333in"
height="1.8756944444444446in"}

**3.1.C Acquire GFS ensemble mean precipitation forecast archive files**

This step does not require running a program. The GFS ensemble mean
precipitation forcast archive files are available via anonymous ftp from
<ftp://hydrology.nws.noaa.gov/pub/gcip/HEPEX/GFS_Archive/Precipitation/>.
This directory contains historical ensemble mean forecasts from a fixed
version of NCEP's GFS ensemble forecast system in a file named
ensmean.zip.

The original GFS ensemble forecast data included 15 members. The
forecasts were made once a day at 0000z. Twice daily data values for
both precipitation and temperature were given for a 15-day lead time
(i.e. 30 values for each member). The forecasts were on a global 2.5 x
2.5 degree grid (144 rows and 73 columns).

The ensemble mean forecast data provided in this directory are for a
domain that only covers the U. S. There are 300 grid points in this
domain. There are 300 files in file ensmean.zip, one file for each grid
point in the U.S. domain. The location of row and column grid point
centroids and the corresponding grid element indices in the global grid
are given in Appendix B. Each ensemble mean precipitation file is named
Prcp.ensmean.yy.xxx where yy is the latitude index of the grid point and
xxx is the longitude index of the grid point. Only a sub-set of the
files contained in ensmean.zip are required for a given RFC.

The file format of GFS ensemble mean precipitation files is documented
in Appendix B.

**3.1.E. MAP parameter generation**

![](media/image7.wmf){width="4.989583333333333in"
height="3.0083333333333333in"}

Program gfs_precip_parms creates the MAP parameter files using
information developed in the previous two steps as well as the ensemble
means from the retrospective GFS runs.

This program requires a control file that must be located in directory
\<gfs_control_dir\>.

The general format and sequence of control file is documented in
Appendix D:

**Sample control file:**

nrfcdays = 5

ngfsdays = 14

iyr_rfc_calib = 1997

lyr_rfc_calib = 2004

obstran_rfc = WEIBULL

fcsttran_rfc = GAMMA

nagg_rfc = 8

1 4

5 8

9 12

13 16

17 20

1 8

9 20

1 20

iyr_gfs_calib = 1979

lyr_gfs_calib = 2004

rho_option = 1

cor_weight = 1.0

obstran_gfs = WEIBULL

fcsttran_gfs = GAMMA

nagg_gfs = 9

1 4

5 8

9 12

13 24

25 56

1 12

9 20

13 40

1 56

adj_rfcfcst_option = 1

verification option = off

par_interval = 5

id = akyc1hof

id = brgc1hof

id = cbdc1luf

id = cbdc1llf

id = crec1hof

end

**Sample usage:** gfs_precip_parms control_file_name

**3.2.A Conversion of RFC temperature verification files into ascii
observed and forecast files**

![](media/image8.wmf){width="4.989583333333333in"
height="3.0722222222222224in"}

Each RFC has a slightly different history of temperature foecast
generation and archival. The system allows an RFC to place their
verification files into a standard location \<rfc_traw_dir\> where they
can be accessed and made compatible with the parameter generation
program. Each RFC may need a unique processing program for this step
until a standard verification file format is established. The conversion
program is called \^\_rfc_traw_conv. Where \^ is the 2 character RFC
identifier (i.e. cn).

RFC provided verification files are for forecast temperature locations
(i.e. MOS locations or SYNTHETIC locations) and cover a calendar year.
The file name convention is \*.rfctn.yyyy and \*.rfctx.yyy where \* is
the station identifier and yyyy is the calendar year. The RFC specific
conversion program separates the observed and forecast values and puts
them into a binary format called \*.rfctmxobs, \*.rfctmnobsin located in
\<rfc_tobs_dir\> and \*.rfctmxfcst, and \*.rfctmnfcst located in
\<rfc_tfcst_dir\>.

Annual files are used so that the parameters can be updated easily as
additional verification information becomes available. This avoids
having the RFC generate the full period of record each year.

**Sample usage:** cn_rfc_praw_conv RNO

This will access all RNO.rfctmx.yyyy files in \<rfc_traw_dir\> and
convert them into RNO.rfctmxobs and RNOrfctmnobs located in
\<rfc_tobs_dir\> and RNO.rfctmxfcst and RNO.rfctmnfcst located in
\<rfc_tfcst_dir\>.

**Alternative approach**

Alternatively, an RFC may choose to directly generate the \*..rfctmxobs,
\*.rfctmnobs, \*.rfctmxfcst, and \*.rfctmnfcst files for each MOS or
SYNTHETIC station. Place the files in the location indicated in the
diagram and make sure the permissions allow access. An excepted sample
of each follows:

**\*.rfctmxobs and \*rfctmnobs** (format is the same)

ACV 124.1075 40.9783 223 ARCATA AIRPORT

20001002 20040929

200010 2 12.2

. . .

20040929 15.1

The header information is the location identifier, longitude, latitude,
elevation, and station name. The next line indicated the temporal
content of the data file and the remaining lines contain the date and
temperature in degrees C for either the maximum or minimum as required
by the file name. This file is fixed format.

**\*.rfctmxfcst and \*rfctmnfcst** (format is the same)

ACV 5 124.1075 40.9783 223 ARCATA AIRPORT

20001002 20040929

200010 2 12.2 9.0 8.0 13.0 14.0 -99.99 -99.99

. . .

20040929 15.1 16.5 14.3 10.5 8.0 -99.99 -99.99

The header information is the location identifier, number of forecast
days, longitude, latitude, elevation, and station name. The next line
indicated the temporal content of the data file. The remaining lines
contain the date and (maximum or minimum) temperature forecasts in
degrees C for the next n days. Forecast for days beyond n and up to 7
are indicated as missing (-99.99). This file is fixed format.

**3.2.B Conversion of MOS temperature verification files into ascii
forecast files**

![](media/image9.wmf){width="4.989583333333333in"
height="2.678472222222222in"}

**Sample usage:** cn_rfc_praw_conv RNO

This will access all RNO.mostmx.yyyy files in \<mos_traw_dir\> and
convert them into RNO.mostmxfcst and RNO.mostmnfcst located in
\<mos_tfcst_dir\>.

**Alternative approach**

Alternatively, an RFC may choose to directly generate the

\*..mostmxfcst, \*.mostmnfcst,

\*..mextmxfcst, \*.mextmnfcst,

\*.foxtmxfcst, and \*.foxtmnfcst

files for each MOS or SYNTHETIC station. Place the files in
\<mos_tfcst_dir\> and make sure the permissions allow access. The format
of the files are all the same.

ACV 7 124.1075 40.9783 223 ARCATA AIRPORT

20001002 20040929

200010 2 12.2 9.0 8.0 13.0 14.0 15.2 13.1

. . .

20040929 15.1 16.5 14.3 10.5 8.0 -99.99 -99.99

The header information is the location identifier, number of forecast
days, longitude, latitude, elevation, and station name. The next line
indicated the temporal content of the data file. The remaining lines
contain the date and (maximum or minimum) temperature forecasts in
degrees C for the next n days. Missing forecasts are indicated with
-99.99. This file is fixed format.

**3.2.C Conversion of calibration MATs into tx and tn**

![](media/image10.wmf){width="5.99375in" height="4.497222222222222in"}

This program accesses the historical calibration MATs, estimates the
daily maximum and minimum, backs out the maximum and minimum
temperatures for the SYNTHETIC station, and stores them in directory
\<sbtxtn_ts_dir\>.

The argument for the program is the operational area identifier.

**Sample usage:**

runcalbmat mfac1luf

**3.2.D Conversion of (calibration) tmax and tmin into sequential binary
format**

![](media/image11.wmf){width="5.99375in" height="4.497222222222222in"}

This program transforms the ascii maximum and minimum temperature files
in \<sbtxtn_ts_dir\> generated through the runcalbmat program into
sequential binary format for use by the parameter estimation and
ensemble generation programs.

**Sample usage:**

sbtxtn mfac1luf

**3.2.E MAT analysis**

![](media/image12.wmf){width="4.989583333333333in"
height="2.8847222222222224in"}

The matanalysis program performs a host of analysis using the
temperature and observations files as well as the stations and normals
files to create information needed for the parameter generation step.

**Sample usage:**

matanalysis mfac1luf

**3.2.F Acquire GFS ensemble mean precipitation forecast archive files**

This step does not require running a program. The GFS ensemble mean
precipitation forcast archive files are available via anonymous ftp from
<ftp://hydrology.nws.noaa.gov/pub/gcip/HEPEX/GFS_Archive/Temperature/>.
This directory contains historical ensemble mean forecasts from a fixed
version of NCEP's GFS ensemble forecast system in a file named
ensmean.zip.

The original GFS ensemble forecast data included 15 members. The
forecasts were made once a day at 0000z. Twice daily data values for
both precipitation and temperature were given for a 15-day lead time
(i.e. 30 values for each member). The forecasts were on a global 2.5 x
2.5 degree grid (144 rows and 73 columns).

The ensemble mean forecast data provided in this directory are for a
domain that only covers the U. S. There are 300 grid points in this
domain. There are 300 files in file ensmean.zip, one file for each grid
point in the U.S. domain. The location of row and column grid point
centroids and the corresponding grid element indices in the global grid
are given in Appendix B. Each ensemble mean temperature file is named
TAIR.MEAN.yy.xxx where yy is the latitude index of the grid point and
xxx is the longitude index of the grid point. Only a sub-set of the
files contained in ensmean.zip are required for a given RFC.

The format of the GFS ensemble mean termperature forecast data is
documented in Appendix B.

**3.2.G. MAT Parameter Generation**

![](media/image13.wmf){width="4.989583333333333in"
height="3.0722222222222224in"}

The parameter generation program uses all of the information and data
developed in the previous steps to generate parameters needed by the
ensemble generation process. The program requires the use of a control
file located in the \<gfs_control_dir\>

The control file contains the following information:

format: parameter = value

These records may be in any order, except that: (1.) The last record
must contain \"end\" left justified, (2.) The records immediately before
the last record must contain id = xxxxxxxx where xxxxxxxx is the
operational segment id, (3.) All other control file records must precede
these id records, and (4.) Any number of segments may be processed with
a single input control file. The format of the input control file is
documented in Appendix D.

**Sample control file:**

nrfcdays = 7

ngfsdays = 14

iyr_rfc_calib = 1997

lyr_rfc_calib = 2004

nagg_rfc = 3

1 2

3 5

1 5

iyr_gfs_calib = 1979

lyr_gfs_calib = 2004

nagg_gfs = 7

1 2

3 5

1 5

6 10

3 10

11 14

1 14

adj_rfcfcst_option = 1

verification option = off

id = RUSSYN

id = BRGSYN

id = ARCSYN

id = ONSSYNUP

id = ONSSYNLW

id = CRESYN

end

**Sample usage:**

gfs_temp_parms control_file_name

**4. Ensemble Generation**

Once all of the parameters and files have been computed and established,
the actual ensembles of precipitation and temperature for each subarea
can be computed.

1\. Acquisition, processing and storage of the frozen GFS model output

2\. Precipitation ensemble generation.

3\. Temperature ensemble generation.

**4.1 Acquisition, processing, and storage of frozen GFS model data.**

Documentation pending...

**4.2** **MAP ensemble generation**

![](media/image14.wmf){width="4.997222222222222in"
height="2.936111111111111in"}

The MAP ensemble generation program uses calibration parameters and
current forecasts to develop a set of MAP ensembles for each identified
operational area. The program uses two index files and a control file.

The control file must be located in \<gfs_control_dir\>. It has the
general form:

**Sample usage:** gfs_precip_parms control_file_name

**4.3 MAT Ensemble Generation**

![](media/image15.wmf){width="4.989583333333333in"
height="3.3833333333333333in"}

The MAT ensemble generation program uses calibration parameters and
current forecasts to develop a set of MAT ensembles for each identified
operational area. The program uses two index files and a control file.

The control file must be located in \<gfs_control_dir\> . The format of
the control file is documented in Appendix D.

**Sample control file:**

nrfcdays = 5

ngfsdays = 14

adj_rfcfcst = no

nclimdays = 0

execution_mode = operational

iyr_hindcast = 2001

lyr_hindcast = 2004

forecast_date = 20011212

offset_number = 20

offset_days = 2

climate_option = observed

id = mfac1luf

id = mfac1llf

id = folc1lof

id = onsc1luf

id = onsc1llf

id = arcc1hof

id = crec1hof

id = brgc1hof

id = nvrc1hof

end

5.1 **MAP Ensemble Verification**

Under construction

**MAT Ensemble Verification**

Under Construction

npds = 7

1 1

2 2

3 3

4 4

5 5

6 6

7 7

adate = 1212

id = FOLSYNUP

id = FOLSYNLW

end

**Appendix A**

**Index File Contents and Formats**

**Index file: map_ts_index.txt**

Field Description

1 NWSRFS time series identifier for the MAP

2 operational area identifier

3 location of calibration MAP time series under \<calb_area_ts_dir\>

4 location for generated esp MAP time series under
\<calb_area_ts_dir\>/esp

Last record must be "end"

Sample:

ARCC1 arcc1hof ncoast/arcc1/arcc1.MAP06 arcc1hof/arcc1hof.MAP06

BRGC1 brgc1hof ncoast/brgc1/brgc1.MAP06 brgc1hof/brgc1hof.MAP06

CBDC1UP cbdc1luf fol_04/cbdc1_upr/cbdc1_upr.MAP06
cbdc1luf/cbdc1luf.MAP06

CBDC1LW cbdc1llf fol_04/cbdc1_lwr/cbdc1_lwr.MAP06
cbdc1llf/cbdc1llf.MAP06

CREC1 crec1hof ncoast/crec1/crec1.MAP crec1hof/crec1hof.MAP06

FMDC1 fmdc1hof fol_04/fmdc1/fmdc1.MAP06 fmdc1hof/fmdc1hof.MAP06

HLLC1 hllc1hof fol_04/hllc1/hllc1.MAP06 hllc1hof/hllc1hof.MAP06

FOLC1L folc1lof fol_04/folc1_lcl/folc1_lcl.MAP06 folc1lof/folc1lof.MAP06

MFAC1UP mfac1luf fol_04/mfac1_upr/mfac1_upr.MAP06
mfac1luf/mfac1luf.MAP06

MFAC1LW mfac1llf fol_04/mfac1_lwr/mfac1_lwr.MAP06
mfac1llf/mfac1llf.MAP06

NFDC1UP nfdc1huf fol_04/nfdc1_upr/nfdc1_upr.MAP06
nfdc1huf/nfdc1huf.MAP06

NFDC1LW nfdc1hlf fol_04/nfdc1_lwr/nfdc1_lwr.MAP06
nfdc1hlf/nfdc1hlf.MAP06

NVRC1 nvrc1hof ncoast/nvrc1/nvrc1.MAP06 nvrc1hof/nvrc1hof.MAP06

RRGC1 rrgc1hof fol_04/rrgc1/rrgc1.MAP06 rrgc1hof/rrgc1hof.MAP06

SBRC1UP sbrc1huf ncoast/sbrc1_upr/sbrc1_upr.MAP06
sbrc1huf/sbrc1huf.MAP06

SBRC1LW sbrc1hlf ncoast/sbrc1_lwr/sbrc1_lwr.MAP06
sbrc1hlf/sbrc1hlf.MAP06

UNVC1 unvc1hof fol_04/unvc1/unvc1.MAP06 unvc1hof/unvc1hof.MAP06

AKYC1 akyc1hof fol_04/akyc1/akyc1.MAP06 akyc1hof/akyc1hof.MAP06

UNSJMAT pohc1huf snjoaq/pohc1_upr/pohc1_upr.MAP06 pohc1_upr.MAP

LNSJMAT pohc1hlf snjoaq/pohc1_lwr/pohc1_lwr.MAP06 pohc1_lwr.MAP

end

**Index file: map_area_loc.txt**

Field Description

1 operational area identifier

2 latitude (decimal degrees) of area centroid

3 longitude (decimal degrees) of area centroid

Sample:

arcc1hof 40.5700 -123.6000

akyc1hof 38.7395 -120.1737

brgc1hof 40.5485 -123.9762

cbdc1llf 38.8050 -120.5467

cbdc1luf 38.8050 -120.5467

crec1hof 41.7984 -123.8634

fmdc1hof 39.1589 -120.3718

folc1lof 38.8315 -120.9360

hllc1hof 39.0366 -120.2534

mfac1llf 39.0468 -120.5727

mfac1luf 39.0468 -120.5727

nfdc1hlf 39.1785 -120.7214

nfdc1huf 39.1785 -120.7214

nvrc1hof 39.0291 -120.4008

rrgc1hof 38.9843 -120.3431

sbrc1hlf 41.2889 -123.2017

sbrc1huf 41.2889 -123.2017

unvc1hof 38.8836 -120.3028

pohc1huf 37.7200 -119.6700

pohc1hlf 37.7200 -119.6700

**Index file: mat_ts_index.txt**

Field Description

1 NWSRFS time series identifier for the MAP

2 operational area identifier

3 location of calibration MAT time series under \<calb_area_ts_dir\>

4 location for generated esp MAT time series under
\<calb_area_ts_dir\>/esp

5 NWSRFS time series identifier for SYNTHETIC station (optional)

Sample:

**FOLC1UP mfac1luf fol_04/mfac1_upr/mfac1_upr.MAT mfac1luf/mfac1luf.MAT
FOLSYNUP**

**FOLC1LW mfac1llf fol_04/mfac1_lwr/mfac1_lwr.MAT mfac1llf/mfac1llf.MAT
FOLSYNLW**

**FOLC1L folc1lof fol_04/folc1_lcl/folc1_lcl.MAT folc1lof/folc1lof.MAT
FOLSYNL**

**CREC1 crec1hof ncoast/crec1/crec1.MAT crec1hof/crec1hof.MAT CRESYN**

**ONSC1UP onsc1luf ncoast/onsc1_upr/onsc1_upr.MAT onsc1luf/onsc1luf.MAT
ONSSYNUP**

**ONSC1LW onsc1llf ncoast/onsc1_lwr/onsc1_lwr.MAT onsc1llf/onsc1llf.MAT
ONSSYNLW**

**ARCC1 arcc1hof ncoast/arcc1/arcc1.MAT arcc1hof/arcc1hof.MAT ARCSYN**

**BRGC1 brgc1hof ncoast/brgc1/brgc1.MAT_old brgc1hof/brgc1hof.MAT
BRGSYN**

**NVRC1 nvrc1hof ncoast/nvrc1/nvrc1.MAT nvrc1hof/nvrc1hof.MAT RUSSYN**

**UNSJMAT pohc1huf snjoaq/pohc1_upr/pohc1_upr.MAT pohc1_upr.MAT
NSJSYNUP**

**UNSJMAT pohc1hlf snjoaq/pohc1_lwr/pohc1_lwr.MAT pohc1_lwr.MAT
NSJSYNLW**

**end**

**Index file: matanal_stations.txt**

Field Description

1 NWSRFS time series identifier for the SYNTHETIC station or MAP

2-n station identifiers for MOS temperature locations

Sample:

ARCSYN ACV

BRGSYN ACV UKI

CRESYN ACV SIY

FOLSYNL BLU RNO SAC TVL

FOLSYNLW BLU RNO SAC TVL

FOLSYNUP BLU RNO SAC TVL

ONSSYNLW SIY

ONSSYNUP SIY

RUSSYN STS UKI

NSJSYNLW FAT BFL GNFC1

NSJSYNUP FAT BFL GNFC1

**Index file: temp_stn_normals.txt**

Extracted from standard NWSRFC station characteristics file

Sample:

STAN(ENGL) CRESYN \'SMITH R SYN TEMP\' CA 41.8 123.8 2370.

TEMP MX(46. 49. 53. 59. 69. 77. 85. 87. 79. 67. 49. 46.)

MN(29. 29. 30. 32. 37. 43. 49. 48. 40. 36. 33. 30.)

SYN NFMM FE(20.)

STAN(ENGL) FOLSYNUP \'AMERICAN SYN TMP UPR\' CA 39.06 120.40 6500.

TEMP MX(43 44.5 47 51.5 59 67 74 73 70 61 48 43.5)

MN(25 26 27.5 31 37 42.5 49 48 44 38 31 26)

SYN NFMM FE(20.)

STAN(ENGL) FOLSYNLW \'AMERICAN SYN TMP LWR\' CA 39.04 120.62 3500.

TEMP MX(53 53.5 57 61 70 78 84 83 80 70 57 53)

MN(33 35 36.5 39 45 51 58 57 52.5 46 38 33)

SYN NFMM FE(20.)

STAN(ENGL) FOLSYNL \'AMERICAN SYN TMP LCL\' CA 38.83 120.97 1600.

TEMP MX(57 60 63 68.5 77 85 92 91 86.5 76 62.5 57.5)

MN(37 39 41.5 45 51 57 64 63 57.5 51 43 38)

SYN NFMM FE(20.)

STAN(ENGL) BLU \'BLUE CANYON\' CA 39.28 120.7 5280.

TEMP MX(44. 45. 45. 51. 60. 69. 78. 76. 72. 63. 51. 46.)

MN(31. 31. 31. 35. 43. 51. 59. 57. 53. 47. 37. 33.)

BOTH 6 FMM FE(20.)

STAN(ENGL) RNO \'RENO WFO\' NV 39.5 119.8 4404.

PCPN 6 NORM NMDR D2

CHAR(1.24 .95 .74 .46 .74 .34 .3 .27 .3 .34 .6 1.21)

TEMP MX(45. 51. 56. 63. 72. 82. 91. 89. 81. 70. 56. 46.)

MN(20. 24. 25. 29. 37. 43. 48. 45. 39. 31. 24. 19.)

BOTH 6 FMM FE(20.)

STAN(ENGL) SAC \'SACRAMENTO EXEC AP\' CA 38.52 121.5 18.

TEMP MX(53. 60. 64. 71. 80. 88. 93. 92. 87. 78. 63. 53.)

MN(38. 41. 43. 46. 50. 55. 58. 58. 56. 50. 43. 38.)

BOTH 6 FMM FE(20.)

STAN(ENGL) NSJSYNLW \'LW N SAN JOA SYN TMP\' CA 38.2 120.3 3400.

TEMP MX(52. 54. 56. 62. 69. 79. 88. 87. 79. 71. 58. 53.)

MN(30. 32. 33. 37. 43. 50. 56. 57. 51. 44. 36. 31.)

SYN NFMM FE(20.)

**Index file: mat_area_loc.txt**

Field Description

1 NWSRFS time series identifier for MAP or SYNTHETIC station

2 latitude (decimal degrees) of area centroid

3 longitude (decimal degrees) of area centroid

Sample:

ARCSYN 40.6600 -123.8300

BRGSYN 40.5000 -123.8200

CRESYN 41.8000 -123.8000

FOLSYNL 38.8300 -120.9700

FOLSYNLW 39.0400 -120.6200

FOLSYNUP 39.0600 -120.4000

ONSSYNLW 41.6500 -123.4500

ONSSYNUP 41.6500 -123.4500

RUSSYN 38.8000 -123.0000

NSJSYNLW 37.7200 -119.6700

NSJSYNUP 37.7200 -119.6700

**Appendix B**

**GFS Preprocessor Historical Data Sets File Formats**

**\*.pobs06**

vtime = 12Z

units = in

dt = 6

end

19970101 -99.99 -99.99 -99.99 -99.99

Values are observed 6-hour precipitation starting with 12Z to18Z on the
date indicated. This is a fixed field file (I4,I2,I2,1X,4F6.2) The
number of lines depends on the duration of the data. Missing values
(-99.99) are not a problem. The CNRFC starts these files on 01/01/1997
and runs them through 12/31/2007 at this time.

**\*.pfcst06**

vtime = 12Z

units = in

dt = 6

nfcstdays = 5

end

19970101 -99.99 -99.99 ... -99.99 (20 fields for nfcstdays=5)

The values represent the 6-hour precipitation forecasts for the next
4\*nfcstdays periods, starting with the period ending at 18Z on the date
indicated. This is a fixed field file (I4,I2,I2,1X,nF6.2). The number of
lines depends on the duration of the data. Missing values (-99.99) are
not a problem. The CNRFC starts these files on 01/01/1997 and runs them
through 12/31/2007 at this time.

**GFS Historical Ensemble Mean Temperature Forecasts**

The original GFS ensemble forecast data included 15 members. The
forecasts were made once a day at 0000z. Twice daily data values for
both precipitation and temperature were given for a 15-day lead time
(i.e. 30 values for each member). There is a record in each file for
each forecast day. The date in the forecast record is the date the
forecast was created. Precipitation data were aggregated to daily values
for the period 12z-12z. (NWS RFC's operate on a 12z-12z forecast day).
Then ensemble mean values of the 15 members for each forecast lead day
were computed. So there are forecasts for 14 days of lead time beginning
at 12z on the date indicated in the record. Precipitation units are mm.

The record format for the GFS historical archive precipitation forecasts
is:

+-----------------------+-------------------------------+--------------+
| Columns               | Description                   | Format       |
+-----------------------+-------------------------------+--------------+
| 1 -- 4                | Year                          | I4           |
+-----------------------+-------------------------------+--------------+
| 5 -- 6                | Month                         | I2           |
+-----------------------+-------------------------------+--------------+
| 7 -- 8                | Day                           | I2           |
+-----------------------+-------------------------------+--------------+
| 9 - 15                | Day 1 Forecast                | F7.2         |
+-----------------------+-------------------------------+--------------+
| 16 -- 22              | Day 2 Forecast                |              |
+-----------------------+-------------------------------+--------------+
| .                     | .                             | .            |
|                       |                               |              |
| .                     | .                             | .            |
|                       |                               |              |
| .                     | .                             | .            |
+-----------------------+-------------------------------+--------------+
| 100 - 106             | Day 14 Forecast               | F7.2         |
+-----------------------+-------------------------------+--------------+

**\*.rfctmxobs and \*rfctmnobs** (format is the same)

ACV 124.1075 40.9783 223 ARCATA AIRPORT

20001002 20040929

200010 2 12.2

. . .

20040929 15.1

The header information is the location identifier, longitude, latitude,
elevation, and station name. The next line indicated the temporal
content of the data file and the remaining lines contain the date and
temperature in degrees C for either the maximum or minimum as required
by the file name. This file is fixed format.

**\*.rfctmxfcst and \*rfctmnfcst** (format is the same)

**\*.mostmxfcst and \*mostmnfcst** (format is the same)

ACV 5 124.1075 40.9783 223 ARCATA AIRPORT

20001002 20040929

200010 2 12.2 9.0 8.0 13.0 14.0 -99.99 -99.99

. . .

20040929 15.1 16.5 14.3 10.5 8.0 -99.99 -99.99

The header information is the location identifier, number of forecast
days, longitude, latitude, elevation, and station name. The next line
indicated the temporal content of the data file. The remaining lines
contain the date and (maximum or minimum) temperature forecasts in
degrees C for the next n days. Forecast for days beyond n and up to 7
are indicated as missing (-99.99). This file is fixed format.

**GFS Historical Ensemble Mean Precipitation Forecasts**

The original GFS ensemble forecast data included 15 members. The
forecasts were made once a day at 0000z. Twice daily data values for
both precipitation and temperature were given for a 15-day lead time
(i.e. 30 values for each member). The twice daily temperature values are
average 12hr temperatures. There is a record in each file for each
forecast day. Each record contains 30 ensemble mean values. The first
value is for the period 0 -- 12z on the day the forecast was created.
The date in the forecast record is the date the forecast was created.
The GFS subsystem only uses temperature forecast values for forecast
periods 2 -- 29 since these correspond to the 14 forecast days beginning
at 12z on the date the forecast was created. Temperature units are
degrees Celsius.

The record format for the GFS historical archive temperature forecasts
is:

+----------------------+---------------------------------+------------+
| Columns              | Description                     | Format     |
+----------------------+---------------------------------+------------+
| 1 -- 4               | Year                            | I4         |
+----------------------+---------------------------------+------------+
| 5 -- 6               | Month                           | I2         |
+----------------------+---------------------------------+------------+
| 7 -- 8               | Day                             | I2         |
+----------------------+---------------------------------+------------+
| 9 - 15               | Not used                        | F7.2       |
+----------------------+---------------------------------+------------+
| 16 -- 22             | Day 1 12z -- 0z Forecast        | F7.2       |
+----------------------+---------------------------------+------------+
| 23 - 29              | Day 1 0z -- 12z Forecast        | F7.2       |
+----------------------+---------------------------------+------------+
| 30 - 36              | Day 2 12z -- 0z Forecast        | F7.2       |
+----------------------+---------------------------------+------------+
| 37 -- 43             | Day 2 0z -- 12z Forecast        | F7.2       |
+----------------------+---------------------------------+------------+
| .                    | .                               | .          |
|                      |                                 |            |
| .                    | .                               | .          |
|                      |                                 |            |
| .                    | .                               | .          |
+----------------------+---------------------------------+------------+
| 198 - 204            | Day 14 12z -- 0z Forecast       | F7.2       |
+----------------------+---------------------------------+------------+
| 205 - 211            | Day 14 0z -- 12z Forecast       | F7.2       |
+----------------------+---------------------------------+------------+
| 212 - 218            | Not used                        | F7.2       |
+----------------------+---------------------------------+------------+

**Appendix C**

**Grid Point Locations**

Latitude Range and Indicies

+-----------------------------------+-----------------------------------+
| **Latitude**                      | **Latitude**                      |
|                                   |                                   |
| **North**                         | **Index**                         |
+-----------------------------------+-----------------------------------+
| 25.0                              | 27                                |
+-----------------------------------+-----------------------------------+
| 27.5                              | 26                                |
+-----------------------------------+-----------------------------------+
| 30.0                              | 25                                |
+-----------------------------------+-----------------------------------+
| 32.5                              | 24                                |
+-----------------------------------+-----------------------------------+
| 35.0                              | 23                                |
+-----------------------------------+-----------------------------------+
| 37.5                              | 22                                |
+-----------------------------------+-----------------------------------+
| 40.0                              | 21                                |
+-----------------------------------+-----------------------------------+
| 42.5                              | 20                                |
+-----------------------------------+-----------------------------------+
| 45.0                              | 19                                |
+-----------------------------------+-----------------------------------+
| 47.5                              | 18                                |
+-----------------------------------+-----------------------------------+
| 50.0                              | 17                                |
+-----------------------------------+-----------------------------------+
| 52.5                              | 16                                |
+-----------------------------------+-----------------------------------+

Longitude Range and Indicies

+-----------------------+-----------------------+-----------------------+
| **Longitude**         | **Longitude**         | **Longitude**         |
|                       |                       |                       |
| **West**              | **East**              | **index**             |
|                       |                       |                       |
|                       | **(CDC)**             |                       |
+-----------------------+-----------------------+-----------------------+
| 127.5                 | 232.5                 |                       |
+-----------------------+-----------------------+-----------------------+
| 125.0                 | 235.0                 | 095                   |
+-----------------------+-----------------------+-----------------------+
| 122.5                 | 237.5                 | 096                   |
+-----------------------+-----------------------+-----------------------+
| 120.0                 | 240                   | 097                   |
+-----------------------+-----------------------+-----------------------+
| 117.5                 | 242.5                 | 098                   |
+-----------------------+-----------------------+-----------------------+
| 115.0                 | 245.0                 | 099                   |
+-----------------------+-----------------------+-----------------------+
| 112.5                 | 247.5                 | 100                   |
+-----------------------+-----------------------+-----------------------+
| 110.0                 | 250.0                 | 101                   |
+-----------------------+-----------------------+-----------------------+
| 107.5                 | 252.5                 | 102                   |
+-----------------------+-----------------------+-----------------------+
| 105.0                 | 255.0                 | 103                   |
+-----------------------+-----------------------+-----------------------+
| 102.5                 | 257.5                 | 104                   |
+-----------------------+-----------------------+-----------------------+
| 100.0                 | 260.0                 | 105                   |
+-----------------------+-----------------------+-----------------------+
| 97.5                  | 262.5                 | 106                   |
+-----------------------+-----------------------+-----------------------+
| 95.0                  | 265.0                 | 107                   |
+-----------------------+-----------------------+-----------------------+
| 92.5                  | 267.5                 | 108                   |
+-----------------------+-----------------------+-----------------------+
| 90.0                  | 270.0                 | 109                   |
+-----------------------+-----------------------+-----------------------+
| 87.5                  | 272.5                 | 110                   |
+-----------------------+-----------------------+-----------------------+
| 85.0                  | 275.0                 | 111                   |
+-----------------------+-----------------------+-----------------------+
| 82.5                  | 277.5                 | 112                   |
+-----------------------+-----------------------+-----------------------+
| 80.0                  | 280.0                 | 113                   |
+-----------------------+-----------------------+-----------------------+
| 77.5                  | 282.5                 | 114                   |
+-----------------------+-----------------------+-----------------------+
| 75.0                  | 285.0                 | 115                   |
+-----------------------+-----------------------+-----------------------+
| 72.5                  | 287.5                 | 116                   |
+-----------------------+-----------------------+-----------------------+
| 70.0                  | 290.0                 | 117                   |
+-----------------------+-----------------------+-----------------------+
| 67.5                  | 292.5                 | 118                   |
+-----------------------+-----------------------+-----------------------+
| 65.0                  | 295.0                 | 119                   |
+-----------------------+-----------------------+-----------------------+

**Appendix D**

**Control File Contents**

# gfs_precip_parms

c

c The control file begins with the following records may be in any
order:

c

c parameter value

c \-\-\-\-\-\-\-\-- \-\-\-\--

c ngfsdays = number of gfs 24hr forecast periods (0 - 14)

c iyr_gfs_calib = initil year of data to estimate parameters

c lyr_gfs_calib = final year of data to calibrate parameters

c obstran_gfs = distribution of positive gfs observations

c fcsttran_gfs = distribution of positive gfs forecasts

c rho_option = option to estimate rfc correlation parameter

c = 1 for untranseformed correlation, including zeroes

c = 2 for quandrant-based estimate

c = 3 for weighted average of 1 and 2

c = 4 for untransformed correlation, positive values

c = 5 for transformed correlation, positive values

c cor_weight = weight given to untransformed correlation coefficient

c nagg_gfs = number of aggregation periods (may be omitted if = 0)

c if nagg_gfs\>0, this record must be followed by

c nagg_gfs records each containing integer values of

c the first and last 6hr periods to be aggregated

c

c nrfcdays = number of days of rfc forecasts (0 - 5)

c iyr_rfc_calib = initil year of data to estimate parameters

c lyr_rfc_calib = final year of data to calibrate parameters

c obstran_rfc = distribution of positive gfs observations

c fcsttran_rfc = distribution of positive gfs forecasts

c rho_option = option to estimate correlation parameter

c = 1 for untranseformed correlation, including zeroes

c = 2 for quandrant-based estimate

c = 3 for weighted average of 1 and 2

c = 4 for untransformed correlation, positive values

c = 5 for transformed correlation, positive values

c cor_weight = weight given to untransformed correlation coefficient

c (default = 1.0)

c nagg_rfc = number of aggregation periods (may be omitted if = 0)

c if nagg_rfc\>0, this record must be followed by

c nagg_rfc records each containing integer values of

c the first and last 6hr periods to be aggregated.

c iadj_rfcfcst = 1, if gfs forecasts are to be used to adjust rfc

c forecast parameters

c minobs = minimum number of observations required to estimate

c parameters (default = 90)

c minposobs = minimum number of positive observations required to

c estimate parameters (default = 30)

c minposfcst = minimum number of positive forecasts required to

c estimate parameters (default = 30)

c minwin = minimum width of data window, days (default = 30)

c maxkwin = maximum number of times data window can be increased

c in 5-day increments to meet data requirements

c (default = 6)

c pthresh = threshold (mm) to define positive precipitation

c (default =)

c pmaxvalue = maximum value of mean precipitation ensemble value

c (mm/6hr)

c cavgmax = maximum conditional mean precipitation value (mm/6hr)

c verification option = \<on\> to compute verification statistics,

c \<off\>, otherwise (default option)

c par_interval = interval (days) between times during year that an

c independent data window is constructed to estimate

c paramters. Default value is 5 days. This value

c should be increased to as much as 30 days if the

c verification option is turned on and if GFS

c forecasts are to be verified.

c

c After all of the above records that are needed have been inluded, the

c next set of records (one for each secment to be processed) must
contain:

c

c id = operational segment id

c

**gfs_precip_epp**

c

c The control file begins with the following records that may be in

c any order:

c

c parameter value

c \-\-\-\-\-\-\-\-- \-\-\-\--

c nrfcdays = number of days of rfc forecasts (0 - 5)

c adj_rfcfcst = yes, if gfs forecasts are to be used to adjust rfc

c forecast parameters

c = no, if gfs forecasts are not to be used to adjust rfc

c forecast parameters

c ngfsdays = number of gfs 24hr forecast periods (0 - 14)

c nclimdays = number of days of climate-based enemble members

c execution_mode = hindcast, if the hindcast mode is to be used -

c ensemble output is in standard card format.

c = operational, if the operational mode is to be used

c = simulated_operational, if the operational mode is

c to be simulated

c forecast_date = yyyymmdd that the forecast is issued

c (the value of yyyy is ignored if

c execution_mode = hindcast)

c offset_number = number of offset traces on each side ot the forecast

c date to be used to create additional ensemble members

c in hindcast mode.

c The total number of memebers created will be

c approximately:

c #\_members = #\_historical_years\*(2\*offset\_# + 1)

c If more than 100 ensemble members

c are created, this exceed the capacity of the standard

c card format for ensemble output. Therefore, only the

c unformatted hindcast ensemble output will be

c generated in that case.

c offset_days = days of offset between historical traces used to

c create ensemble members (reforecast only)

c iyr_hindcast = initial year of forecasts to be used for hindcasts

c lyr_hindcast = last year of forecasts to be used for hindcasts

c hindcast_path = path, within the default ensemble time series

c directory, to the ensemble time series file(s).

c (20 characters max). The complete path

c to the ensemble time series file(s) is:

c \<gfs_epp_ts_dir\>\<hindcast_path\>\<yyyymmdd\>

c climate_option = option to control values of ensemble members for time

c periods beyond the forecast period.

c = observed, to use the historical observations

c = statistics, to use the smoothed climate statistics

c ccv_max = maximum value of ccv to be allowed to generate

c ensemble members

c

c The following sub-set of the above records is required. The rest have

c internal default values that will be used if another value is not
given.

c

c At least one of the followeing must be greater than 0:

c nrfcdays

c ngfsdays

c nclimdays

c

c Values must be given for the following:

c execution_mode

c forecast_date (if execution mode is not \"operational\")

c

c After all of the above records that are needed have been included, the

c next set of records (one for each secment to be processed) must
contain:

c

c id = operational segment id

c

c These records may be in any order, except that:

c 1. The last record must contain \"end\" left justified

c 2. The records immediately before the last record must

c contain the left justified id\'s of the segments for

c which ensemble members are to be created.

c

c At least one id record is required.

c

**gfs_precip_verify**

under construction

**gfs_temp_parms**

c

c The control file begins with the following records may be in any
order:

c

c parameter value

c \-\-\-\-\-\-\-\-- \-\-\-\--

c ngfsdays = number of days gfs forecasts are to be used (0 - 14)

c iyr_gfs_calib = initil year of data to estimate parameters

c lyr_gfs_calib = final year of data to calibrate parameters

c nagg_gfs = number of aggregation periods (may be omitted if = 0)

c if nagg_gfs\>0, this record must be followed by nagg_gfs

c records each containing integer values of the first and last

c 24hr periods to be aggregated

c

c nrfcdays = number of days of rfc forecasts (0 - 5)

c iyr_rfc_calib = initil year of data to estimate parameters

c lyr_rfc_calib = final year of data to calibrate parameters

c nagg_rfc = number of aggregation periods (may be omitted if = 0)

c if nagg_rfc\>0, this record must be followed by

c nagg_rfc records each containing integer values of

c the first and last 6hr periods to be aggregated.

c iadj_rfcfcst = 1, if gfs forecasts are to be used to adjust rfc

c forecast parameters

c

c

c After all of the above records that are needed have been inluded, the
next

c set of records (one for each secment to be processed) must contain:

c

c id = operational area id

c

**gfs_temp_epp**

parameter = value

id = operational area identifier

end

Parameters may be specified in any order followed by any number (\>=1)
of operational area identifiers. Parameters definition and notes are as
follows:

nrfcdays = number of days of rfc forecasts (0 - 5)

adj_rfcfcst = yes, if gfs forecasts are to be used to adjust rfc

forecast parameters

= no, if gfs forecasts are not to be used to adjust rfc

forecast parameters

ngfsdays = number of gfs 24hr forecast periods (0 - 14)

nclimdays = number of days of climate-based enemble members

execution_mode = hindcast, if the hindcast mode is to be used - ensemble
output

is in standard card format.

= operational, if the operational mode is to be used

= simulated_operational, if the operational mode is to be

simulated

forecast_date = yyyymmdd that the forecast is issued

(the value of yyyy is ignored if execution_mode = hindcast)

offset_number = number of offset traces on each side to the forecast
date to be

used to create additional ensemble members in hindcast mode.

The total number of members created will be approximately:

#\_members = #\_historical_years\*(2\*offset\_# + 1)

If more than 100 ensemble members are created, this exceed the

capacity of the standard card format for ensemble output.

Therefore, only the unformatted hindcast ensemble output will

be generated in that case.

offset_days = days of offset between historical traces used to create
ensemble

members (reforecast only)

iyr_hindcast = initial year of forecasts to be used for hindcasts

lyr_hindcast = last year of forecasts to be used for hindcasts

hindcast_path = path, within the default ensemble time series directory,
to the

ensemble time series file(s). (20 characters max).

The complete path to the ensemble time series file(s) is:

\<gfs_epp_ts_dir\>\<hindcast_path\>\<yyyymmdd\>

climate_option = option to control values of ensemble members for time
periods

beyond the forecast period.

= observed, to use the historical observations

= statistics, to use the smoothed climate statistics

ccv_max = maximum value of ccv to be allowed to generate ensemble
members

The following sub-set of the above parameters is required. The rest have
internal default values that will be used if another value is not given.

At least one of the following must be greater than 0:

nrfcdays

ngfsdays

nclimdays

Values must be given for the following:

execution_mode

forecast_date

c

c \...read control file

c

write (ilog,\*) \'Reading Control File\'

iread = .true.

ifound = 0

irec = 0

do while (iread)

irec = irec + 1

write (ilog,\*) \'irec = \',irec

call read_header_line (icntrl,ilog,aname,nname,avalue,nvalue,

x istatus)

write (ilog,\*) \'istatus = \',istatus

write (ilog,\'(a20,i5)\') aname,nname

write (ilog,\'(a20,i5)\') avalue,nvalue

if (istatus.ne.0) then

iread = .false.

write (ilog,\*) \'End of input control file\'

write (ilog,\*) \' irec = \',irec

else

if (aname(1:8).eq.\'nrfcdays\') then

call string (nvalue,2,aval)

afmt = \'(i\'//aval(1:2)//\')\'

nfmt = 5

read (avalue,afmt(1:nfmt)) nrfcdays_exec

if (nrfcdays_exec.gt.maxrfcdays) then

nrfcdays_exec = maxrfcdays

write (ilog,\*) \'Number of rfc days = \',nrfcdays_exec

endif

elseif (aname(1:8).eq.\'ngfsdays\') then

call string (nvalue,2,aval)

afmt = \'(i\'//aval(1:2)//\')\'

nfmt = 5

read (avalue,afmt(1:nfmt)) ngfsdays_exec

if (ngfsdays_exec.gt.maxgfsdays) then

ngfsdays_exec = maxgfsdays

endif

write (ilog,\*) \'Number of gfs days = \',ngfsdays_exec

elseif (aname(1:9).eq.\'nclimdays\') then

call string (nvalue,2,aval)

afmt = \'(i\'//aval(1:2)//\')\'

nfmt = 5

read (avalue,afmt(1:nfmt)) nclimdays_exec

nclimpers_exec = 4\*nclimdays_exec

if (nclimpers_exec.gt.maxclimpers) then

nclimpers_exec = maxclimpers

nclimdays_exec = nclimpers_exec/4

endif

write (ilog,\*) \'Number of climate days = \',nclimdays_exec

elseif (aname(1:12).eq.\'iyr_hindcast\') then

read (avalue(1:4),\'(i4)\') iyr_hindcast

julday1_rfc_calib = julday(1,1,iyr_hindcast)

if (julday1_hindcast.lt.julday1)

x julday1_hindcast = julday1

if (julday1_hindcast.gt.julday2)

x julday1_hindcast = julday2

elseif (aname(1:12).eq.\'lyr_hindcast\') then

read (avalue(1:4),\'(i4)\') lyr_hindcast

julday2_hindcast = julday(12,31,lyr_hindcast)

if (julday2_hindcast.lt.julday1)

x julday2_hindcast = julday1

if (julday2_hindcast.gt.julday2)

x julday2_hindcast = julday2

elseif (aname(1:13).eq.\'forecast_date\') then

if (nvalue.eq.8) then

forecast_date(1:nvalue) = avalue(1:nvalue)

read (forecast_date,\'(i4,2i2)\') jyr_fcst,jmo_fcst,

x jday_fcst

call string (jyr_fcst,4,ayr)

call string (jmo_fcst,2,amo)

call string (jday_fcst,2,aday)

bdate = ayr//amo//aday

write (ilog,\*) \'date = \',bdate

endif

elseif (aname(1:14).eq.\'execution_mode\') then

execution_mode(1:nvalue) = avalue(1:nvalue)

write (ilog,\*) \'execution_mode = \',execution_mode

elseif (aname(1:11).eq.\'offset_days\') then

call string (nvalue,2,aval)

afmt = \'(i\'//aval(1:2)//\')\'

nfmt = 5

read (avalue,afmt(1:nfmt)) noffsetdays

elseif (aname(1:13).eq.\'offset_number\') then

call string (nvalue,2,aval)

afmt = \'(i\'//aval(1:2)//\')\'

nfmt = 5

read (avalue,afmt(1:nfmt)) noffsets

elseif (aname(1:13).eq.\'hindcast_path\') then

hindcast_path = \' \'

hindcast_path(1:nvalue) = avalue(1:nvalue)

nch_hindcast = nvalue

elseif (aname(1:14).eq.\'climate_option\') then

climate_option = \' \'

climate_option(1:nvalue) = avalue(1:nvalue)

elseif (aname(1:14).eq.\'adj_rfcfcst\') then

adj_rfcfcst = \' \'

adj_rfcfcst = avalue(1:nvalue)

elseif (aname(1:2).eq.\'id\') then

id(1:nvalue) = avalue(1:nvalue)

nch = nvalue

iread = .false.

backspace (icntrl)

ifound = 1

irec = irec - 1

elseif (aname(1:7).eq.\'ccv_max\') then

call string (nvalue,2,aval)

afmt = \'(f\'//aval(1:2)//\'.2\'//\')\'

nfmt = 7

read (avalue,afmt(1:nfmt)) ccv_max

endif

endif

enddo

c

c \...check input control information

c

imiss = 0

if (execution_mode.eq.\' \') then

imiss = 1

write (ilog,\*) \'Execution_mode missing = \',execution_mode

endif

if (nrfcdays_exec.eq.0.and.ngfsdays_exec.eq.0.and.

x nclimdays_exec.eq.0) then

imiss = 1

write (ilog,\*) \'No forecast periods\'

write (ilog,\*) \' nrfcdays_exec = \',nrfcsays_exec

write (ilog,\*) \' ngfsdays_exec = \',ngfsdays_exec

write (ilog,\*) \' nclimdays_exec = \',nclimdays_exec

endif

if (iyr_hindcast.eq.0) then

iyr_hindcast = iyrdat

endif

if (lyr_hindcast.eq.0) then

lyr_hindcast = lyrdat

endif

if (forecast_date.eq.\' \') then

if (execution_mode(1:4).ne.\'oper\') then

imiss = 1

write (ilog,\*) \'Missing forecast_date\'

endif

else

read (forecast_date,\'(i4,2i2)\') jyr_fcst,jmo_fcst,jday_fcst

endif

if (imiss.eq.1) then

write (ilog,\*) \' Execution terminated\'

stop

endif

c

**gfs_temp_verify**

under construction

> **Appendix E**
>
> **EPP GFS Subsystem Installation Checklist**

1.  Install executable GFS Subsytem files

2.  Select initial forecast segment

3.  Set-up apps default directory tokens

4.  Set-up directories referred to by the apps default tokens and by the
    index files. The precip_parms and temp_parms directories must also
    contain a subdirectory for each area id in the ts_index files. None
    of the GFS Subsytem programs create directories. If a directory is
    needed but has not been created, the program will write a message to
    a log file that the file could not be opened.

5.  Set-up index files with data for the initial segment

    a.  map_area_loc.txt

    b.  map_ts_index.txt

    c.  mat_ts_index.txt

    d.  matanal_stations.txt

    e.  stationlocs.txt

    f.  Temp_stn_normals.txt

6.  Be sure the historical MAP and MAT files are in the proper directory
    (as indicated in the index files).

7.  Convert the historical MAP and MAT standard card format files to
    unformatted files needed in the "GFS Preprocessor Historical Data
    Sets" as follows:

    a.  Run program *map06_sbmap06* to convert the \*.map file to
        \*.sbmap06

    b.  Run program *runcalbmat* to convert the \*.mat file to
        \*\*\*.txtn

    c.  Run program sbtxtn to convert \*\*\*.txtn to \*\*\*.sbtxtn

8.  Load GFS Ensemble mean precipitation and temperature files (to be
    provided by JCS) into the proper directories.

9.  Set-up procedures to acquire operational GFS precipitation and
    temperature ensemble forecast files

10. Set-up procedures to decode operational GFS precipitation and
    temperature ensemble forecast files and create ensemble mean
    precipitation and temperature files in the proper apps default
    directory

11. If you wish to run short-term RFC forecasts as well as GFS
    forecasts, the follow the following steps (this can be done later):

    a.  Create "raw" ascii files with historical data for:

        i.  RFC short term 6-hr MAP forecasts for the initial segment

        ii. Corresponding 6-hr MAP observations

        iii. RFC Tmax and Tmin forecasts. These may be for stations used
             to compute the FMAT for the initial segment. If so, this
             will be dealt with later.

        iv. Corresponding RFC Tmax and Tmin observations

        v.  MOS Tmax and Tmin forecasts if a longer period of forecasts
            and/or longer forecast lead times (out to 7 days) are wanted

    b.  Using these ascii files, create the following "GFS Preprocessor
        Historical Data Sets" for the initial segment:

        i.  \*.pfcst06

        ii. \*.pobs06

        iii. \*.rfctmxfcst and \*.rfctmnfcst

        iv. \*.rfctmxobs and \*.rfctmnobs

        v.  \*.mostmxfcst and \*.mostmnfcst

12. If the \*.zzztmxfcst and \*.zzztmnfcst files are for stations,
    rather than for the forecast segment area, then program matanalysis
    must be used to process the station data to produce "synthetic
    station" data for the forecast area.

13. Set-up control files for the following programs:

    a.  gfs_precip_parms

    b.  gfs_precip_epp

    c.  gfs_temp_parms

    d.  gfs_temp_epp