Introduction to HEC-RAS

Prepared by Eric Tate
Center for Research in Water Resources
April 1999

Table of Contents

Goals of the Exercise

The primary goal of this exercise is to introduce you to channel flow using the HEC River Analysis System (HEC-RAS). By the end of this exercise, you should be able to:

Software and Data Requirements

The HEC-RAS program can be downloaded free of charge from the Hydrologic Engineering Center's home page at: A user's manual is also available at this location. The program runs on Windows 95 & 98, NT, and Unix platforms. This tutorial requires that you have running HEC-RAS version 2.2. The data required for the tutorial consist of HEC-RAS input files. These data can be downloaded from this website as the file The files included are: Select a working directory on your computer and download these files into it.

HEC-RAS Hydraulics

HEC-RAS is a one-dimensional steady flow hydraulic model designed to aid hydraulic engineers in channel flow analysis and floodplain determination. The results of the model can be applied in floodplain management and flood insurance studies. If you recall from hydraulics, steady flow describes conditions in which depth and velocity at a given channel location do not change with time. Gradually varied flow is characterized by minor changes in water depth and velocity from cross-section to cross-section. The primary procedure used by HEC-RAS to compute water surface profiles assumes a steady, gradually varied flow scenario, and is called the direct step method. The basic computational procedure is based on an iterative solution of the energy equation:    , which states that the total energy (H) at any given location along the stream is the sum of potential energy (Z + Y) and kinetic energy (aV2/2g). The change in energy between two cross-sections is called head loss (hL). The energy equation parameters are illustrated in the following graphic:

Given the flow and water surface elevation at one cross-section, the goal of the direct step method is to compute the water surface elevation at the adjacent cross-section. Whether the computations proceed from upstream to downstream or vice versa, depends on the flow regime. The dimensionless Froude number (Fr) is used to characterize flow regime, where:

For a subcritical flow scenario, which is very common in natural and man-made channels, direct step computations would begin at the downstream end of the reach, and progress upstream between adjacent cross-sections. For supercritical flow, the computations would begin at the upstream end of the reach and proceed downstream.

Starting a Project

You may start the HEC-RAS program by clicking Start/Programs/Hec/HEC-RAS 2.2. The following window should subsequently appear:

Henceforth, this window will be referred to as the main project window.  A Project in RAS refers to all of the data sets associated with a particular river system. To define a new project, select File/New Project to bring up the main project window:

You will first need to select your working directory, and then a title (Waller Creek), and file name (Waller.prj). All project filenames for HEC-RAS are assinged the extension ".prj". Click on the OK button and a window will open confirming the information you just entered. Again click the OK button. The project line in your main project window should now be filled in. The Project Description line at the bottom of the main project window allows you to type a detailed name for the actual short Project name. If desired, you may click on the ellipsis to the right of the Description bar, and additional space for you to type a lengthy Description will appear. Any time you see an ellipsis in a window in HEC-RAS, it means you may access additional space for writing descriptive text.

For each HEC-RAS project, there are three required components--the Geometry data, Flow data, and Plan data. The Geometry data, for instance, consists of a description of the size, shape, and connectivity of stream cross-sections. Likewise, the Flow data contains discharge rates. Finally, Plan data contains information pertinent to the run specifications of the model, including a description of the flow regime. Each of these components is explored below individually.

Importing and Editing Geometric Data

The first of the components we will consider is the channel geometry. To analyze stream flow, HEC-RAS represents a stream channel and floodplain as a series of cross-sections along the channel. To create our geometric model of Waller Creek for example, we need to import the geometry file that you just downloaded. In HEC-RAS main project window, use File/Import HEC-RAS Data and choose the file Waller.g01. This HEC-RAS geometry file contains physical parameters describing Waller Creek cross-sections. To view the data, select Edit/Geometric Data from the project window.

The resulting view shows a schematic of Waller Creek from near Highland Mall to the Colorado River. This is the main geometric data editing window. The tick marks and corresponding numbers denote individual cross-sections. Choices under the View menu provide for zoom and pan tools. The six buttons on the left side of the screen are used to input and edit geometric data. The and buttons are used to create the reach schematic. A reach is simply a subsection of a river, and a junction occurs at the confluence of two rivers. Since our reach schematic is already defined, we have no need to use these buttons. The , , and buttons are used to input and edit geometric descriptions for cross-sections, and hydraulic structures such as bridges, culverts, and weirs. The allows you to associate an image file (photograph) with a particular cross-section. Click on the button to open the cross-section data window:

The data used to describe the cross-sections include the river station/cross-section number (32093 in the figure), lateral and elevation coordinates for each terrain point (station & elevation columns), Manning's roughness coefficients (nVal), reach lengths between adjacent cross-sections, left and right bank station, and channel contraction and expansion coefficients. These data are typically obtained by field surveys. The buttons can be used to toggle between different cross-sections. Use them to scroll to cross-section 26780. To edit data, simply double-click on the field of interest. As an example, double-click on station 779, change the value to 778, and hit the enter key. You may notice that this action caused all of the the data fields to turn red and it enabled the "Apply Data" button. Whenever you see input data colored red in HEC-RAS, it means that you are in edit mode. There are two ways to leave the edit mode (you can do whichever you like):

  1. Click the "Apply Data" button. The data fields will turn black, indicating you're out of edit mode, and the data changes are applied.
  2. Select Edit/Undo Editing. You'll leave the edit mode without changing any of the data.
To actually see what the cross-sections look like, select the Plot/Plot Cross-Section menu item.

The cross-section points appear black and bank stations are denoted with red. Manning roughness coefficients appear across the top of the plot. Again, the buttons can be used to maneuver between different cross-sections. Any solid black areas occuring in a cross-section represent blocked obstructions. These are areas in the cross-section through which no flow can occur. Some cross-sections contain green arrows and gray areas. This symbolism is indicative of the presence of a bridge or culvert. Input data and plots specifically associated with bridges and culverts can be accessed from the main geometric data editor window by clicking on the button. Take a little time to familiarize yourself with the geometric data by flipping through some different cross-sections and bridges/culverts. When you are finished, return to the geometric editor window and select File/Save Geometric Data. Return to the main project window using File/Exit Geometry Data Editor. At this point, save your HEC-RAS project just in case the program crashes for some reason or another.

Importing and Editing Flow Data

Enter the flow editor using Edit/Steady Flow Data from the main project window. Instead of importing an existing HEC-RAS flow file, we'll use stream flow output from an HEC-HMS model run similar to the one completed for the Introduction to HMS Exercise. The resulting flows are based on the 100-year design storm on Waller Creek, between its junction with the Hemphill Branch, and the Colorado River.

Output data from the HEC-HMS model are stored in files with a .dss extension. DSS stands for the HEC Data Storage System, which is essentially a database for storing time-series information. To use these data, select File/Set Locations for DSS Connections from the main flow data window. To open the DSS file, click on the button and select the Waller.dss file from your working directory. The window should now look like this:

The DSS data are stored in table records, each one representing a 24-hour increment of time-series flow data. Each record is described by several parameters, some of which are shown in the columns titled Part A, Part B, etc., as follows:

 Column Description
BHMS hydrologic element (subbasin, junction, etc.) identifier
CFlow type (baseflow, floodflow)
EModel Time Step

HEC-RAS allows you to view the hydrograph of any DSS record. Since the highest flows for our model run occur on February 1, we'll concentrate on the data from this day. Click on any record with Column C = FLOW and Column D = 01FEB1999 and then click on to see the associated hydrograph:

The coordinates of the cursor (time,flow rate) are displayed in the bottom right corner of the plot. Gridlines can be shown by invoking the Options/Grid menu item.

Exit the plot window and return to the "Set Locations for DSS Connections" window. We're now going to link the HEC-RAS cross-sections with their calculated DSS flows from HEC-HMS. The following table shows the relationship between the junctions in the HEC-HMS basin model and cross-sections in the HEC-RAS geometry file:

HEC-HMS Junction HEC-RAS Cross-Section 
Junction with Hemphill Branch12609
MLK Blvd8916
15th Street7089
7th Street3591
1st Street1157
Colorado River0

The procedure for linking the DSS records with their associated cross-sections is as follows:

  1. Choose the river station from the drop-down list
  2. Click on the button "Add selected location to table"
  3. Click on the DSS record in which the Part B corresponds to the selected cross-section. Ensure that Part B column reads "FLOW" and Part C says "01FEB1999". Click on "Select DSS Pathname" to link the data.
  4. Repeat for each of the junctions (click OK when finished with all junctions).

After the DSS records for the six junctions have been set, return to the main steady flow data window and select File/DSS Import. Fill in the fields as shown below:

Click on the "Import Data" button, and the flows from HEC-HMS will be imported into your HEC-RAS model.

As discussed earlier, the direct step method uses a known water surface elevation (and several hydraulic parameters) to calculate the water surface elevation at an adjacent cross-section. We'll assume a subcritical flow regime for our model, so the computations will begin at the downstream end. As such, the water surface elevation at the downstream boundary must be known. To establish this value, click on the button from the steady flow data window. HEC-RAS allows the user to set the water surface elevation boundary condition by four methods:

  1. Known water surface - based on observed data
  2. Critical depth - the program will calculate critical depth
  3. Normal depth - the program will calculate normal depth
  4. Rating curve - elevation determined from an existing stage-discharge relationship curve
For this tutorial, we'll use the critical depth option. Click in the box in the "Downstream" column and then click on the critical depth button.

Click OK to return to the main steady flow window. You'll notice that each of the junctions have now been assigned peak flow values from the HMS DSS output. For cross-sections falling between HMS junctions, the flow value of the upstream junction is applied. However, the most upstream cross-section, number 32093, hasn't been assigned a flow value. You will need to input a number here, but its magnitude is really inconsequential because the computations will proceed from downstream to upstream (subcritical flow). And for this tutorial, we are mainly interested in water surface profiles between U.T. and the Colorado River. Input a value of 2700. All of the required flow parameters have now been entered into the model! From the file menu, select Save Flow Data and save the flow data under the name "100 year flows." To leave the flow data editor and return to the HEC-RAS project window, choose File/Exit Flow Data Editor.

Executing the Model

With the geometry and flow files established, the HEC-RAS model can be executed. Select Simulate/ Steady Flow Analysis from the project window. But before running the model, one final step is required: definition of a plan. The plan specifies the geometry and flow files to be used in the simulation. To define a plan, select File/New Plan. You'll be subsequently asked to provide a plan title and a 12 character short identifier.

To execute the model, first ensure that the flow regime radio button is set to "Subcritical" and then click the compute button. All of the HEC-RAS windows you've used to this point are simply graphical user interfaces used to input data for the model. The computations are actually performed by a FORTRAN program named SNET. Clicking the compute button starts SNET and opens a DOS window that shows the progress of the simulation. When the computations are complete, the PROGRAM TERMINATED NORMALLY message should appear.

Dismiss the DOS window by clicking the X in the upper right corner.

Viewing the Results

There are several methods available with which to view HEC-RAS output, including cross-section profiles, perspective plots, and data tables. From the project window, select View/Cross-Sections.

The cross-section view is similar to the one shown when we edited the cross-section data. However, the output view also shows the elevation of the total energy head line (shown in the legend as "EG Peak Flows"), the water surface ("WS Peak Flows"), and critical depth ("Crit Peak Flows"). As with the cross-section geometry editor, you can use the to scroll to other cross-sections. For a profile of the entire reach, select View/Water Surface Profiles from the project window.

Using the Options/Zoom In menu option, you can focus on a particular stretch of reach to see how the water surface relates to structures in the channel such as bridges. Other available options for graphical display of output data include plots of velocity distribution (View/Cross-Sections/Options/Velocity Distribution) and pseudo 3D plots (View/X-Y-Z Perspective Plots). Spend a little time playing around with some of the display options.

For hydraulic design, it is often useful to know the calculated values of various hydraulic parameters. HEC-RAS offers numerous options for tabular output data display. From project window, choose View/ Cross Section Table.

The resulting table includes a number of hydraulic parameters, including water surface elevation, head losses, and cross-sectional area. At the bottom of the window, error and notes (if any) resulting from the steady flow computations are shown. As you scroll through the cross-sections, take a look at some of the error messages. For our model, it looks like the primary areas of concern is too few cross-sections. Additional tabular output data can be accessed from the invoking View/Profile Table from the main project window. Numerous formats and data types can be viewed by selecting different tables from the Std. Tables menu.

Cleaning Up

Welcome to the end of what I hope gave you more of an insight to hydraulic river modeling. Go ahead and close HEC-RAS by selecting Exit from the File menu in the main project window. If you're working from a temp directory, it would be a good idea to delete your files.

Return to Eric Tate's home page