United States Office of Water EPA-823-R-99-006

Environmental Protection 4305 January 1999

Agency

BASINS Technical Note 1

Creating Hydraulic Function Tables

(FTABLES) for Reservoirs in BASINS
Page 1 of 11

Technical Note 1

Creating Hydraulic Function Tables (FTABLES) for Reservoirs in BASINS

January 13, 1999

INTRODUCTION

The HSPF model (Bicknell, et al, 1996) uses a hydraulic function table, called an FTABLE, to

represent the geometric and hydraulic properties of both stream reaches and fully mixed reservoirs. 

When the NPSM module of the BASINS program constructs the NPSM project (.PRJ) file, it

automatically derives the FTABLEs from data contained in the reach file (RF1) companion file. 

Unfortunately, the RF1 data table contains only rudimentary channel characteristics and does not

adequately describe the hydraulic behavior of reservoirs. This technical memo describes a procedure

that BASINS users can follow to manually create FTABLEs appropriate for reservoirs. 

The FTABLE in HSPF

The FTABLE describes the hydrology of a river reach or reservoir (RCHRES) segment by defining

the functional relationship between water depth, surface area, water volume, and outflow in the

segment (see Figure 1). The relationship described in the FTABLE is independent of the shape of the

reach or waterbody in that waterbodies with different shapes could have the same FTABLE. That is,

HSPF makes no assumptions regarding the shape of a stream channel (e.g. that the cross-section be

trapezoidal or even that the shape be prismoidal). The assumption of a fixed depth, area, volume,

outflow relationship rules out cases where the flow reverses direction or where one RCHRES

influences another upstream of it in a time-dependent way. The routing technique falls in the class

known as "storage routing" or "kinematic wave" methods. In these methods, momentum is not

considered.

The user specifies the properties of a RCHRES in the FTABLE, which is a piecewise linear function

table (see Example 1). It has columns for the depth, surface area, and volume, plus up to five

columns for volume-dependent outflows. Each row contains values corresponding to a specified

water surface elevation. The system obtains intermediate values by interpolation. Thus, the number

of rows in the FTABLE depends on the size of the cross section and the desired resolution. The

stage-discharge relationship, specified in FTABLE columns, defines volume-dependent outflows. If

only time-dependent releases are to be used, then no discharge column is necessary. The HSPF

manual (Bicknell et al, 1996) describes several ways to specify more complex outflow situations,

such as time-dependent releases, seasonal rating curve variability, and combinations of volumedependent rule curves with time-dependent release demands.
Page 2 of 11

The FTABLE in NPSM

The NPSM automatically creates FTABLEs, using data from the EPA RF1 data table, by assuming a

pre-set channel and flood plain geometry and by calculating outflow using Manning’s equation. The

NPSM extracts the following four values from the BASINS RF1 data table:

• Pdepth - mean channel depth;

• Pwidth - mean channel width;

• Pmann - Manning’s n; and

• Pslope - longitudinal slope of the channel. 

The NPSM derives the channel cross-section geometry using the Pdepth and Pwidth values along

with the following assumptions (see Figure 3):

• the channel cross-section is trapezoidal

• the channel sides have slopes of 1:1

• the channel depth is 1.5 times the mean channel depth

• the flood plain width, on each side of the reach, is equal to the mean channel width

• the depth at which the flood plain slope changes is 1.5 times the channel depth

• the default slopes of the upper and lower flood plain are 0.5:1

• the maximum depth in the FTABLE is set to 100 times the depth of the flood plain slope

break

The NPSM then uses the above cross-sectional geometry, the Manning’s n and slope from the RF1

table, and Manning’s equation, to calculate outflow for different depths. The user can specify

additional volume dependent outflows by adjusting the FTABLE size and increasing the number of

outflows. To change the number of rows or outflow columns in the FTABLE, click on the “Adjust

Table Size” button and change the values for “Number of rows” and/or “Number of outflows.” Also,

change the number of exits in the “Add/Remove Reaches” screen in the reach editor. See also

Section 10.4 in the BASINS User’s Manual for examples and figures.

The NPSM also allows the user to create FTABLEs manually as one would in HSPF, with the added

benefit of being in a Windows interface. For reservoirs, the combination of default data and

assumptions used by the NPSM provide an inadequate representation; the user instead should

manually input a customized FTABLE to describe the reservoir. Edit the FTABLEs in NPSM by

selecting the FTABLE button from the Reach Editor window, select the reach of interest, and type

values in the table.
Page 3 of 11

POPULATING RESERVOIR FTABLES IN NPSM

Reservoir Geometry

Figure 1 shows a conceptual free-flowing reach and a multi-purpose reservoir. FTABLEs describe

how water volume and surface area change as a function of depth in the reach or reservoir

(RCHRES) segments. Data tables or graphs describing the depth-area and depth-volume

relationships are generally available from the agency managing the reservoir. When depth-area and/or

depth-volume data not available, a bathymetric map of the lake must be created. Bathymetric

methods can be found in texts such as Welsch, 1948. The surface area can then be calculated from

planimetry; the volume of the lake at a given depth is then:

Vm Az dz

z

z zm

= •

=

=

∫

0

where Vm is the volume at depth zm of interest, Az is the surface area of the lake at depth z, and dz is

the incremental depth (Hutchinson, 1975). 

Tables of depth-area and depth-volume data can be used directly to create the first three columns of

the FTABLE. The depth values may be given in terms of stage or elevation rather than depth, in

which case the depth is the stage minus the elevation of the deepest point of the reservoir (parameter

STCOR in HSPF section HYDR). Additionally, where depths on the depth-area and depth-volume

tables do not correspond exactly, the user must interpolate on one table such that the depth, surface

area, and volume data are complete for each row in the FTABLE. Graphical data must be linearized

by selecting points which define linear sections of the curve, again using the same depth values on

both plots. Since HSPF linearly interpolates between rows in the FTABLE, regions of the curve

where the slope changes rapidly should be sampled more closely than relatively flat portions. There

is an upper limit of 100 on the number of entries (rows times columns) in the FTABLE. Important

elevations such as the gate invert and the spillway crest should be among those chosen. Finally, the

depth (and therefore storage) for the last row should exceed the highest level ever expected, to

prevent the program from crashing.

Reservoir Releases

The final step is to add any necessary discharge columns. Historical gage station data is available

from the United States National Water Information System Data Retrieval web page (NWIS-W) at: 

http://waterdata.usgs.gov/nwis-w/US/. Methods for measuring stage and discharge is discussed in

USGS Circular 1123: Stream-Gaging Program of the U.S. Geological Survey (Wahl, et al, 1995) at: 

http://water.usgs.gov/pubs/circ/circ1123/index.html. 

Up to five outflows may be specified, each of which may be routed to a downstream reach (in

HSPF), or may be assumed to leave the system (i.e.a diversion out of the watershed). While HSPF

can model two or more reservoir outflows separately (e.g. gate and spillway) and still route them to

the same downstream reach, NPSM currently is capable of simulating only one outflow. All other
Page 4 of 11

outflows defined in the FTABLE are ignored in the NPSM. To work around this, the user can

modify the outflow column to include the sum of all outflows. Alternatively, and for more complex

flow routing scenarios, the user must modify the HSPF User’s Control Input (or UCI) file and run

HSPF in dos mode. Example 2, below, describes modifications to the UCI file required to route

multiple outflows (as defined in the FTABLE) to the downstream reach. Example 3 describes

additional UCI file modifications required to route a specific outflow to the downstream reach while

allowing other outflows to be removed from the system. The UCI file, which can be modified in any

text editor, is created upon running the NPSM; NPSM creates the file and then runs the HSPF v. 11

in dos mode using the UCI file as input. NPSM puts the UCI file in the modelout/<proj_name> subdirectory. The dos version of NPSM (i.e. XNPSM11x.exe) is found in the directory:

\BASINS\models\Npsm\. 
Page 5 of 11

EXAMPLES

Example 1: The sample FTABLE shown in Table 1 (for HSPF) and in Figure 2 (for NPSM) is for a

moderate-sized reservoir with two exits. The first three columns were taken from a tabular summary

of the stage-area and stage-volume curves. The first discharge column is the rule curve for the gate

based on the storage in the reservoir. The second is the spillway rating curve. Both exits will be

routed to the same downstream reach (in the NETWORK block in HSPF). The gate invert lies 38 ft

above the lowest point in the reservoir, with a dead storage capacity of 1,148 acre-feet. There is no

outflow below this elevation. The spillway crest is at 123 feet, giving a total storage capacity of

28,949 acre feet. Remember that the actual elevations of the gate invert and spillway crest are the

respective depths plus the stage correction parameter STCOR.

Table 1 - Example Reservoir FTABLE 

 FTABLE 1

 ROWS COLS ***

 14 5

 DEPTH AREA VOLUME GATE SPILLWAY ***

 (FT) (ACRES) (AC-FT) (CFS) (CFS) ***

 0.0 0.0 0.0 0.00 0.00

 8.0 4.0 17.0 0.00 0.00

 18.0 24.0 143.0 0.00 0.00

 28.0 47.0 491.0 0.00 0.00

 38.0 86.0 1148.0 0.00 0.00

 48.0 132.0 2230.0 100.00 0.00

 58.0 182.0 3791.0 750.00 0.00

 78.0 307.0 8636.0 945.00 0.00

 98.0 504.0 16643.0 1245.00 0.00

 113.0 640.0 24020.0 1450.00 0.00

 123.0 734.0 28949.0 1650.00 0.00

 126.0 810.0 33040.0 1750.00 800.00

 129.0 891.0 37120.0 1850.00 1750.00

 132.0 977.0 41221.0 2000.00 2740.00

 END FTABLE 1

*** Note that all lines containing three consecutive asterisks are comment lines,

which are ignored by the program. They may be included anywhere in the

UCI file, often to assist the user in aligning data fields. Numeric entries are

generally right-justified within the field. 
Page 6 of 11

Example 2: In Table 2, the Conemaugh Reservoir is at the base of the Conemaugh basin between upper and

lower reaches of the Conemaugh River (from the BASINS tutorial data set). Notice the number of exits

(NEXITS) for the Conemaugh Reservoir is set to 2. This value, which corresponds to the number of

outflows in the Conemaugh Reservoir outflow, is specified in the NPSM Reach Editor. In the HYDRPARM1 block, the ODFVFG(2) value for reach 3 (Conemaugh Reservoir) was changed (in the text editor)

from 0 to 5 to indicate that the fifth column of the Conemaugh Reservoir FTABLE should be used to

determine its second outflow. Up to three additional outflows could be identified here as necessary. With

the above two minor modifications, the model will now remove flow from the reservoir as per the second

outflow column in the FTABLE (FTABLE column 5) as well as the primary outflow; the total flow will be

routed to the downstream reach. 

Table 2 - Modifications to UCI file for Multiple Outflows

(Original)

 GEN-INFO

 RCHRES Name Nexits Unit Systems Printer ***

 # - # user t-series Engl Metr LKFG***

 in out ***

 1 Lower Conemaugh 1 1 1 1 34 0 0

 2 Upper Conemaugh 1 1 1 1 34 0 0

 3 Conegmaugh Reservoi 2 1 1 1 34 0 1

 END GEN-INFO

 HYDR-PARM1

 RCHRES Flags for HYDR section***

 # - # VC A1 A2 A3 ODFVFG for each *** ODGTFG for each FUNCT for each

 FG FG FG FG possible exit *** possible exit possible exit

 1 0 1 1 1 4 0 0 0 0 0 0 0 0 0 1 0 0 0 0

 2 0 1 1 1 4 0 0 0 0 0 0 0 0 0 1 0 0 0 0

 3 0 1 1 1 4 0 0 0 0 0 0 0 0 0 1 1 0 0 0

(Modified)

 GEN-INFO

 RCHRES Name Nexits Unit Systems Printer ***

 # - # user t-series Engl Metr LKFG***

 in out ***

 1 Lower Conemaugh 1 1 1 1 34 0 0

 2 Upper Conemaugh 1 1 1 1 34 0 0

 3 Conegmaugh Reservoi 2 1 1 1 34 0 1

 END GEN-INFO

 HYDR-PARM1

 RCHRES Flags for HYDR section***

 # - # VC A1 A2 A3 ODFVFG for each *** ODGTFG for each FUNCT for each

 FG FG FG FG possible exit *** possible exit possible exit

 1 0 1 1 1 4 0 0 0 0 0 0 0 0 0 1 0 0 0 0

 2 0 1 1 1 4 0 0 0 0 0 0 0 0 0 1 0 0 0 0

 3 0 1 1 1 4 5 0 0 0 0 0 0 0 0 1 1 0 0 0

Note: Any modification to the UCI file should be performed once all NPSM input parameters are set. 

Modifying the NPSM PRJ file and running the project in NPSM will overwrite the existing UCI file.
Page 7 of 11

Example 3: To modify the link to the downstream reach, modify the NETWORK block in the UCI file. 

Table 3 shows the original block for RCHRES 3 as well as a modified version that will connect only the first

outflow to the downstream reach. The first line in the modified version is the original code commented out

with three asterisks at the end of the line. The second line in the modified block indicates that the first

outflow (OFLOW, member # 1) from the Conemaugh Reservoir (RCHRES 3) should be routed to the inflow

(INFLOW) time series for the Lower Conemaugh (RCHRES 1). The second flow will then exit the model

upon removal from the reservoir. Additional routing options can be found in the HSPF user manual.

Table 3 - Modifications to UCI file to Route Only One Outflow Downstream

(Original)

NETWORK

<-Volume-> <-Grp> <-Member-><--Mult-->Tran <-Target vols> <-Grp> <-Member-> ***

<Name> # <Name> # #<-factor->strg <Name> # # <Name> # # *** 

************ INPUT TO RCHRES # 003 *********

RCHRES 3 ROFLOW RCHRES 1 INFLOW 

(Modified)

NETWORK

<-Volume-> <-Grp> <-Member-><--Mult-->Tran <-Target vols> <-Grp> <-Member-> ***

<Name> # <Name> # #<-factor->strg <Name> # # <Name> # # ***

 ************ INPUT TO RCHRES # 003 *********

RCHRES 3 ROFLOW RCHRES 1 INFLOW *** 

RCHRES 3 OFLOW 1 RCHRES 1 INFLOW 

 
Page 8 of 11

 Figure 1. Typical RCHRES configurations and the method used to represent geometric and 

 hydraulic properties
Page 9 of 11

Figure 2. FTABLE in NPSM for Example Reservoir
Page 10 of 11

Figure 3. Assumed channel cross-section geometry used in the NPSM
Page 11 of 11

References:

Bicknell, Brian R., John C. Imhoff, John L. Kittle, and Anthony S. Donigian. Hydrological Simulation

Program - FORTRAN: User’s Manual for Release 11. US EPA, 1996.

Hutchinson, G. Evelyn. A Treatise on Limnology. Volume I, Part1 - Geography and Physics of Lakes. New

York, John Wiley & Sons, 1975.

Wahl Kenneth L., Wilbert O. Thomas, Jr., and Robert M. Hirsch., et al, 1995, Stream-Gaging Program of

the U.S. Geological Survey: U.S. Geological Survey Circular 123, Reston, Virginia, 1995 (available on the

internet at http://water.usgs.gov/pubs/circ1123/index.html).

Welch, P.S. Limnological Methods. Philadelphia, Blakiston, 381 pp., 1948.