Your First HEC-RAS Model: Steady Flow Analysis
This tutorial guides you through creating a complete HEC-RAS steady flow model from scratch. You will model a 1-mile stream reach with five cross-sections and analyze the 100-year flood profile. By the end, you will understand the complete workflow from project creation to results interpretation.
Overview of Steady Flow Analysis
Steady flow analysis computes water surface profiles for constant discharge conditions. HEC-RAS solves the one-dimensional energy equation between cross-sections to determine water surface elevations throughout the system.
The Energy Equation
HEC-RAS uses the energy equation to compute water surface profiles:
Where:
- Z = channel invert elevation
- Y = water depth
- V = average velocity
- alpha = velocity weighting coefficient
- g = gravitational acceleration
- h_e = energy head loss between sections
The energy head loss includes friction losses (calculated using Manning’s equation) and contraction/expansion losses.
When to Use Steady Flow Analysis
Steady flow analysis is appropriate when:
- Discharge does not change significantly over time
- You need design flood elevations (e.g., 100-year flood)
- Storage effects in the floodplain are negligible
- You are conducting FEMA flood studies
- You want a simpler, faster analysis than unsteady flow
Example Project Setup
For this tutorial, you will model Big Creek, a hypothetical stream with the following characteristics:
| Parameter | Value |
|---|---|
| Reach Length | 1 mile (5,280 feet) |
| Number of Cross-Sections | 5 |
| Average Slope | 0.002 ft/ft |
| Channel Width | 30 feet |
| Channel Depth | 6 feet |
| 100-year Discharge | 1,500 cfs |
The stream is a natural channel with grass overbanks and a gravel/cobble bed.
Step 1: Create a New Project
- Launch HEC-RAS
- Go to File > New Project
- Navigate to your working folder
- Enter project name:
BigCreek - Enter title:
Big Creek 100-Year Flood Analysis - Select US Customary units
- Click OK
The project is now created with the name “BigCreek.prj” in your selected folder.
Step 2: Enter Geometric Data
Opening the Geometric Data Editor
- Click the Geometric Data toolbar button, or
- Go to Edit > Geometric Data
The Geometric Data window opens showing an empty schematic.
Drawing the River Reach
- Click the River Reach button in the toolbar
- Click in the upper portion of the schematic window (upstream end)
- Move the mouse down and click again (downstream end)
- When prompted, enter:
- River Name:
Big Creek - Reach Name:
Main Stem
- River Name:
- Click OK
The schematic now shows a line representing your river reach. The upstream end is at the top (higher station numbers), and the downstream end is at the bottom (lower station numbers).
Saving the Geometry
- Go to File > Save Geometry Data
- Enter title:
Existing Conditions - Click OK
The geometry is saved as BigCreek.g01.
Step 3: Enter Cross-Section Data
You will enter five cross-sections, spaced approximately 1,320 feet apart (1 mile total reach length).
Cross-Section Locations and River Stations
| River Station | Description | Distance from Downstream |
|---|---|---|
| 5280 | Upstream section | 5,280 ft |
| 3960 | Upper-middle section | 3,960 ft |
| 2640 | Middle section | 2,640 ft |
| 1320 | Lower-middle section | 1,320 ft |
| 0 | Downstream section | 0 ft |
River stations in HEC-RAS represent distance measured from a reference point (typically the mouth or downstream limit). Larger numbers are upstream.
Adding the First Cross-Section (Station 5280)
- In the Geometric Data window, click the Cross Section button
- The Cross Section Data Editor opens
- Enter the cross-section data as follows:
Header Information:
- River: Big Creek
- Reach: Main Stem
- River Station: 5280
- Description: Upstream Section
Station-Elevation Data:
Enter the following coordinate pairs (station, elevation):
| Station (ft) | Elevation (ft) |
|---|---|
| 0 | 110.0 |
| 50 | 106.0 |
| 80 | 102.0 |
| 90 | 100.5 |
| 95 | 100.0 |
| 105 | 100.0 |
| 115 | 100.5 |
| 125 | 102.0 |
| 155 | 106.0 |
| 200 | 110.0 |
This creates a trapezoidal channel with the following characteristics:
- Total section width: 200 feet
- Channel bottom: from station 95 to 105 (10-ft flat bottom)
- Channel depth: 6 feet (100 to 106 ft elevation)
- Floodplain width: 200 feet total
Downstream Reach Lengths:
- Left Overbank (LOB): 1320
- Main Channel: 1320
- Right Overbank (ROB): 1320
For this simple example with a straight channel, all reach lengths are equal.
Manning’s n Values:
| Zone | Manning’s n | Description |
|---|---|---|
| Left Overbank | 0.050 | Grass floodplain |
| Main Channel | 0.035 | Gravel/cobble bed with some vegetation |
| Right Overbank | 0.050 | Grass floodplain |
Main Channel Bank Stations:
- Left Bank: 80
- Right Bank: 125
The bank stations define where the main channel meets the overbanks.
Contraction/Expansion Coefficients:
- Contraction: 0.1
- Expansion: 0.3
- Click Apply Data to save this cross-section
- Click OK to close and return to the schematic
Adding Remaining Cross-Sections
Create the remaining four cross-sections using similar data. For this simple example, use the same cross-section shape but adjust elevations to maintain the 0.002 ft/ft slope.
Station 3960 (elevations 2.64 ft lower):
| Station | Elevation |
|---|---|
| 0 | 107.36 |
| 50 | 103.36 |
| 80 | 99.36 |
| 90 | 97.86 |
| 95 | 97.36 |
| 105 | 97.36 |
| 115 | 97.86 |
| 125 | 99.36 |
| 155 | 103.36 |
| 200 | 107.36 |
Station 2640 (elevations 5.28 ft lower than Station 5280):
| Station | Elevation |
|---|---|
| 0 | 104.72 |
| 50 | 100.72 |
| 80 | 96.72 |
| 90 | 95.22 |
| 95 | 94.72 |
| 105 | 94.72 |
| 115 | 95.22 |
| 125 | 96.72 |
| 155 | 100.72 |
| 200 | 104.72 |
Station 1320 (elevations 7.92 ft lower than Station 5280):
| Station | Elevation |
|---|---|
| 0 | 102.08 |
| 50 | 98.08 |
| 80 | 94.08 |
| 90 | 92.58 |
| 95 | 92.08 |
| 105 | 92.08 |
| 115 | 92.58 |
| 125 | 94.08 |
| 155 | 98.08 |
| 200 | 102.08 |
Station 0 (elevations 10.56 ft lower than Station 5280):
| Station | Elevation |
|---|---|
| 0 | 99.44 |
| 50 | 95.44 |
| 80 | 91.44 |
| 90 | 89.94 |
| 95 | 89.44 |
| 105 | 89.44 |
| 115 | 89.94 |
| 125 | 91.44 |
| 155 | 95.44 |
| 200 | 99.44 |
For each cross-section:
- Use the same Manning’s n values (0.050, 0.035, 0.050)
- Use the same bank stations (80, 125)
- Set reach lengths to 1320 for all except Station 0 (enter 0 or leave blank for the downstream section)
- Use the same contraction/expansion coefficients (0.1, 0.3)
Verifying the Geometry
After entering all cross-sections:
- In the Geometric Data window, click Tables > Cross Sections
- Review the summary table to verify all data was entered correctly
- Check that river stations are in decreasing order going downstream
- Verify Manning’s n and bank station values
Save the geometry: File > Save Geometry Data
Step 4: Enter Steady Flow Data
Opening the Steady Flow Data Editor
- Click the Steady Flow Data toolbar button, or
- Go to Edit > Steady Flow Data
Setting Up Flow Profiles
- In the Steady Flow Data window, set Number of Profiles to 1
- Click Apply to update
This creates one flow profile for the 100-year flood.
Entering Discharge Values
- Click on the flow data table
- Enter the discharge value: 1500 cfs at River Station 5280
- This flow applies to the entire reach unless changed
For a simple reach with no tributaries, you need only one flow change location (the upstream end).
Setting Boundary Conditions
- Click Reach Boundary Conditions
- The Boundary Conditions window opens
For subcritical flow (which is typical), you need a downstream boundary condition:
- Click on the Downstream column for Big Creek, Main Stem
- Select Normal Depth
- Enter the energy slope: 0.002 (same as bed slope for normal depth assumption)
- Click OK
Saving the Flow Data
- Go to File > Save Flow Data
- Enter title:
100-Year Flood - Click OK
The flow data is saved as BigCreek.f01.
Step 5: Create and Run a Plan
Creating a Steady Flow Plan
- Go to Run > Steady Flow Analysis
- The Steady Flow Analysis window opens
- Go to File > New Plan
- Enter:
- Plan Title:
Existing 100-Year - Short ID:
Exist100
- Plan Title:
- Click OK
Configuring the Plan
- In Geometry File, select:
Existing Conditions (g01) - In Steady Flow File, select:
100-Year Flood (f01) - For Flow Regime, select:
Subcritical
Subcritical flow is appropriate because:
- The channel slope (0.002 ft/ft) is relatively mild
- Natural streams typically have subcritical flow
- Froude numbers are expected to be less than 1.0
Running the Simulation
- Click Compute in the Steady Flow Analysis window
- The computation window opens showing progress
- Watch for error messages (red text) or warnings (yellow text)
- When complete, the window shows “Computations Complete”
- Click Close to close the computation window
If you see the message “Finished Steady Flow Simulation,” your model ran successfully.
Step 6: View and Interpret Results
Viewing the Water Surface Profile
- Go to View > Water Surface Profiles
- The Profile Plot window opens
- Select the profiles to display (PF 1 for our 100-year flood)
- Click Apply
The profile plot shows:
- Channel Invert (Thalweg): Lowest point of each cross-section
- Water Surface (WS): Computed water surface elevation
- Energy Grade Line (EG): Total energy head
- Critical Depth (Crit): Critical depth elevation (if computed)
Understanding the Profile Plot
In the profile plot:
| Line | Meaning |
|---|---|
| Ground | Channel bottom elevation |
| WS (Water Surface) | Computed water surface elevation |
| EG (Energy Grade) | Total energy head (includes velocity head) |
| Crit | Critical depth elevation |
The distance between WS and EG represents the velocity head (V^2/2g). Larger velocity heads indicate higher velocities.
Viewing Cross-Section Output
- Go to View > Cross Sections
- Select a river station from the dropdown
- The plot shows the cross-section with:
- Ground profile (black)
- Water surface (blue)
- Energy grade line (green)
- Bank stations (vertical lines)
Navigate between cross-sections using the dropdown or arrow buttons.
Viewing Output Tables
- Go to View > Detailed Output Tables
- Click Std. Tables for standard output
- Select the Profile Output Table
The output table shows detailed results at each cross-section:
| Column | Description |
|---|---|
| River Sta | Cross-section location |
| Profile | Flow profile name |
| Q Total | Total discharge (cfs) |
| W.S. Elev | Water surface elevation (ft) |
| Crit W.S. | Critical water surface elevation |
| E.G. Elev | Energy grade line elevation |
| Vel Chnl | Channel velocity (ft/s) |
| Flow Area | Total flow area (sq ft) |
| Top Width | Water surface width (ft) |
| Froude | Froude number |
Interpreting Results
For our Big Creek model, examine these key results:
Water Surface Elevations: The WS Elev column shows the computed flood elevation at each cross-section. These values are used for floodplain mapping and flood insurance studies.
Velocity: Channel velocity should be reasonable for natural streams (typically 2-10 ft/s). Very high velocities may indicate erosion concerns.
Froude Number: Values less than 1.0 confirm subcritical flow. Values near 1.0 indicate flow is approaching critical, and you should verify the flow regime assumption.
Flow Area and Top Width: These values help you understand how much of the floodplain is inundated.
Verifying Results with Hand Calculations
You can verify HEC-RAS results using Manning’s equation:
For normal depth in a channel with known discharge, you can use the Normal Depth Calculator on DrainageCalculators to verify the HEC-RAS computed depth.
For the Big Creek example:
- Q = 1,500 cfs
- n = 0.035 (channel)
- S = 0.002 ft/ft
- Channel geometry: trapezoidal with 10-ft bottom, 2:1 side slopes
The normal depth should be approximately 4.5-5 feet in the channel, which you can verify against the HEC-RAS results.
Step 7: Save and Export Results
Saving the Project
- Return to the main HEC-RAS window
- Go to File > Save Project
All project components (geometry, flow data, plan, and output) are saved.
Exporting Results
Exporting Tables:
- Open the output table you want to export
- Go to File > Export Data
- Choose format (Excel, CSV, or text)
- Specify filename and location
- Click Save
Generating Reports:
- Go to File > Generate Report
- Select report type and options
- Reports can be printed or saved as PDF
Common Issues and Troubleshooting
Model Will Not Compute
Check geometry data:
- Ensure all cross-sections have valid station-elevation data
- Verify river stations are in correct order (decreasing downstream)
- Check that reach lengths are entered correctly
Check flow data:
- Ensure discharge values are entered
- Verify boundary conditions are set
Unreasonable Water Surface Elevations
Water surface too high or low:
- Check Manning’s n values (higher n = higher water surface)
- Verify cross-section geometry is correct
- Check reach lengths (too short = higher water surface)
Water surface oscillating:
- Reduce contraction/expansion coefficients
- Check for abrupt changes in cross-section shape
- Add interpolated cross-sections
Critical Depth Defaulting
If HEC-RAS defaults to critical depth at some cross-sections:
- The reach may be steeper than expected
- Check for local contractions or expansions
- Consider using mixed flow regime
Next Steps
Congratulations on completing your first HEC-RAS model. To continue learning:
- Master cross-sections: Cross-Section Geometry - Learn advanced geometry concepts
- Try 2D modeling: 2D Modeling Basics - Two-dimensional flow analysis
- Use calculators: Manning’s Open Channel Calculator - Verify cross-section capacity
References
-
U.S. Army Corps of Engineers, Hydrologic Engineering Center. (2024). HEC-RAS River Analysis System User’s Manual, Version 6.5. Davis, CA: USACE.
-
U.S. Army Corps of Engineers, Hydrologic Engineering Center. (2024). HEC-RAS River Analysis System Hydraulic Reference Manual, Version 6.5. Davis, CA: USACE.
-
Chow, V.T. (1959). Open-Channel Hydraulics. McGraw-Hill.
-
U.S. Army Corps of Engineers, Hydrologic Engineering Center. (2024). HEC-RAS Applications Guide. Davis, CA: USACE.
Summary
You have successfully created and run your first HEC-RAS steady flow model. Key takeaways:
- Steady flow analysis computes water surface profiles for constant discharge
- The workflow involves: project creation, geometry entry, flow data entry, plan creation, and running the simulation
- Cross-sections require station-elevation data, reach lengths, Manning’s n, and bank stations
- Always remember the “looking downstream” convention for geometry entry
- Boundary conditions (typically normal depth for downstream) are required
- Results include water surface profiles, velocities, and hydraulic parameters at each cross-section
- Verify results against hand calculations and check warnings carefully
Continue to Cross-Section Geometry to learn advanced geometry concepts including ineffective areas, levees, and interpolation.