From XMS Wiki
Jump to navigationJump to search
SRH-2D Screenshot
Model Info
Model type Two-dimensional (2D) hydraulic, sediment, temperature, and vegetation model for river systems

Yong Lai

Bureau of Reclamation
Web site Bureau of Reclamation

General Section

  • Data Visualization
  • Mesh Editing
  • Observation

Models Section

  • SRH-2D
  • Boundary Conditions
  • Post Processing
  • Simulations
  • FHWA Tutorials

SRH-2D, or the Sedimentation and River Hydraulics – Two-Dimensional model, is a two-dimensional (2D) hydraulic, sediment, temperature, and vegetation model for river systems under development at the Bureau of Reclamation. It was known as SRH-W in version 1, and the name was changed to the current SRH-2D from version 2 onward.

The SRH-2D model is included in the Community Version of SMS. however, it is limited to a single simulation. For multiple simulation management, full post processing capabilities, and a complete suite of tools, the interface can be added to a paid edition of SMS.


SRH-2D is a 2D model that is particularly useful for problems where 2D effects are important. Examples include flows with in-stream structures, through bends, with perched rivers, with multiple channel systems, and with complex floodplains. A 2D model may also be needed for local flow velocities, eddy patterns and flow recirculation, lateral variations, flow spills over banks and levees, and flow diversion and bifurcation.

  • Both steady or unsteady flows may be simulated.
  • All flow regimes (i.e. subcritical, transcritical, and supercritical flows) may be simulated simultaneously without the need of a special treatment.
  • Solution domain may include a combination of main channels, side channels, floodplains, and overland flow areas.
  • Solved variables include water surface elevation, water depth and depth averaged velocity, magnitude, and vector. Output information includes above variables, plus Froude number, and bed shear stress.
  • SRH-2D can also be used to simulate sediment transport conditions, including erosion and deposition of cohesive and non-cohesive sediments. Simulations can include bed load, suspended load, and total load using a variety of sediment transport and erosion equations.
    • Limitation: SRH-2D does not simulate bank erosion and channel migration processes other than what would be computed based only on the sediment transport relationships.
    • Limitation: SRH-2D sediment transport does not work with 1D hydraulic structures (e.g. culverts and 1D weir over topping), nor does the current version work with bridge pressure flow internal boundary conditions.
  • The additional solved variables for a sediment transport simulation include sediment transport by size fraction, bed elevation, bed elevation change (erosion and deposition), sediment concentration, changes to bed gradation, and D50 particle size.

The Bureau of Reclamation does not provide technical support for SRH-2D.

Graphical Interface

SRH-2D uses a custom interface to specify boundary conditions, model parameters, model control, and material parameters. The interface includes the following:

  • SRH-2D Simulation
  • SRH-2D Menu
  • SRH-2D Model Control
  • SRH-2D Material Properties – SRH-2D is able to work with a number of material zones. Materials may be created from a Materials coverage, an SRH-2D coverage, or directly from the mesh.
  • SRH-2D Sediment Material Properties – Similar to Material Properties, a number of sediment material zones are required to describe the bed material thickness, particle sizes, and bulk densities for multiple sediment layers.
  • SRH-2D Coverages
  • SRH-2D input and output files – When wanting to execute an SRH-2D model, export the model native files using the Export SRH-2D Files or Save, Export, and Launch SRH-2D commands in the SRH-2D menu. The native files include:
    • SRHHYDRO – Contains key information about the simulation while acting as a directory to other files for SRH-2D to use.
    • SRHGEOM – Tells SRH-2D where each element is located and the characteristics of that element.
    • SRHMAT – Gives each element a material type.
    • SRHSEDMAT – Gives each element a sediment material type.
    • SRHMPOINTS – Tells SRH-2D that there are monitor points to watch and where those points are located.

In the past, this model has been utilized through the Generic Model graphical interface. The SRH-2D version 2.0 Distribution included SRH-2D template files for both SMS 8.0 and SMS 10.0. These are no longer needed with the custom interface.

Steps to Create an SRH-2D Model

SRH-2D Model Development

To create an SRH-2D model, the following general steps should be followed:

  1. Gather data pertinent to the project and location. This should include bathymetry data, roughness data (Manning's n value), coordinate system corresponding to the data, and flow data.
  2. Specify a coordinate system. This is done in the Display Projections dialog accessed through the Display menu.
  3. Add bathymetry data. This may come as survey data, Lidar data, or Raster DEM data to name a few.
  4. Check the triangulation or raw data display. It is important to make sure that SMS is reading the data the same way that it was measured. Turning on contours will allow the user to view what SMS sees and make adjustments as needed. Contours may be turned on using the Display Options command. Optionally, the user may use the tools available in SMS for refinement of the data.
  5. Create coverages. A simple SRH-2D project would likely include a Mesh Generator coverage which contains mesh type and bathymetry data, an SRH-2D Boundary Conditions coverage which holds boundary arcs and flow data, an SRH-2D Materials coverage which maps material types defined for a region to each cell/element defined in the mesh, and an SRH-2D Monitor coverage which specifies locations where results are gathered. Coverages may be created by right-clicking on the map data folder from the data tree and selecting New Coverage or by duplicating an existing coverage. The coverage is assigned a type upon creation which can be changed at any time. Changing a coverage type may necessitate other modifications to a simulation. For an SRH-2D model, select the SRH-2D coverages as they relate to the data that will correspond to that type.
    • For sediment transport, an SRH-2D Sediment Materials coverage will be necessary.
    • For sediment transport, set BC Type parameters for the Boundary Conditions coverage.
  6. Outline the workspace with arcs. Here the user is defining regions of the model location that will have unique features. For example, locations of more water interaction will need more detail which equates to more nodes; locations with different roughness values will need to be separated for material type assignments. Create polygons for areas of similar characteristics. Keep in mind that SMS has a variety of tools available to adjust the arcs to meet the modeling needs of the project.
  7. Build polygons in the Mesh Generator, Materials, and Sediment Transport coverages.
  8. Assign attributes to the polygons. Direct SMS to what materials and what mesh type is to be built over that polygon. Specify how SMS should assign elevation data by selecting the bathymetry source.
    • Additional polygon attributes must be set for sediment transport in the Sediment Materials coverage.
  9. In the Boundary Conditions coverage, assign attributes to the arcs by giving the arcs boundary conditions. For interior arcs, the only option is a monitor line. For exterior arcs the user may choose from a variety of inlet conditions, whether subcritical or supercritical, as well as outlet or water surface elevation options. For no-flow boundaries, the options of a wall or symmetry are available.
  10. Prepare to build the mesh. Review the information given to SMS to ensure that the field data matches what is represented virtually for the region. After a review of the inputs for the model, the mesh is ready to be built. The mesh is built by converting the Map coverage to a 2D Mesh.
  11. Build the mesh from the Mesh Generator coverage. If bathymetry data was assigned to the polygons on the Mesh Generator coverage, the mesh will contain the correct data for the project. Otherwise, the bathymetry data must be interpolated to the mesh.
  12. Create an SRH-2D simulation.
  13. Add components to the simulation. Components usually include all coverages and the 2D mesh.
  14. Set the model run parameters in the SRH-2D Model Control dialog.
  15. Run the model. First, be sure that the project is saved. Next, right-click on the SRH-2D simulation and select Export SRH-2D. Finally, right-click on the simulation and select Launch SRH-2D.
  16. Analysis of results and post processing.

Sediment Transport

Sediment transport modeling in SRH-2D follows the same steps outlined above. However, sediment transport modeling requires the following additional data:

  • Bed surface and subsurface samples to determine particle gradation which could vary through the model domain.
  • Sediment transport data of suspended and bed loads over a range of flows.
  • Samples of floodplain materials.
  • Results of erodibility testing on floodplain materials.

To perform a sediment transport simulation, follow these general steps:

  1. Set up and run an SRH-2D hydraulic model. The following should be kept in mind:
    1. Due to the computational expense of sediment transport modeling, if the ultimate goal of a modeling project is to conduct a sediment transport study, the number of elements should be limited to less than 40,000. In fact, we recommend that the number of elements be kept to less than 30,000. When converting an existing hydraulic model into a sediment transport model the same limits apply, meaning the mesh may require coarsening. This can be accomplished by changing the parameters of the Mesh Generation coverage and generating a coarser mesh. Hydraulic results of the coarse mesh should be reviewed to ensure they still retain comparable and adequate results.
    2. A sediment transport simulation must have a representative condition at the beginning of the simulation to avoid unrealistic sediment transport, erosion, and deposition as the model transitions from an initial condition to a convergence condition.
  2. Specify sediment transport properties in a Boundary Condition coverage. Typically this would be created by copying the Boundary Condition coverage and changing the Run Type of the new coverage to "Mobile". This is accessed by right-clicking on the coverage and selecting the BC Types dialog. This allows for the specification of the sediment parameters.
  3. Specify sediment data on the boundary conditions which include inflow. This includes Inlet_Q and Inlet_SC boundary types.
  4. Additional monitor lines (in the Boundary Condition coverage) and monitor points (in the Monitor coverage) may be desired in the sediment transport simulation to monitor the sediment transport rates. In a sediment transport run two output files are create for each point. One focuses on detailed hydraulic results and the other contains detailed sediment transport results. In the "quickwin" version of SRH-2D, bed elevation plots are shown during the sediment transport simulation for the first two monitoring points (ID 1 and ID 2).
  5. A sediment transport simulation also requires the creation of a Sediment Materials coverage. Sediment transport material properties include sediment gradations, bulk densities, and sediment layer thicknesses for each sediment material type. SRH-2D guidance indicates that a minimum of two layers is recommended even if the bed material is vertically uniform. The top layer interacts with the sediment in the water column and is part of the active layer used for computing sediment transport. A zero-thickness layer can also be specified to set the area as non-erodible.”
  6. At the simulation level, the model control parameters for a sediment transport simulation are identical to those of a hydraulic simulation including run times, timestep, restart file location, etc. Note that sediment transport simulations take much longer than hydraulic simulations. A 12-hour sediment transport simulation can take several hours of computer time, so simulation times are often limited to hours or days. A one-year sediment transport simulation can take multiple weeks of computer time.


Consult the SRH-2D Manual for troubleshooting problems in executing the model.

Some common errors in running SRH-2D include:

  • The quality of the 2D mesh and the placement of the boundary conditions arcs will significantly impact how SRH-2D processes the project. Errors frequently occur when a mesh is poorly generated (uneven patches, narrow triangles, extreme size differences between elements, etc.) or boundary arcs are misplaced.
  • When importing SRH-2D projects created in earlier versions of SMS, the project may be slow to open in a current version of SMS. This is common with SRH-2D projects created in SMS 11.2. After the project has been opened in a newer version of SMS, it needs to be saved to prevent the project from having a slow open.
  • Running SRH-2D requires both the pre-SRH-2D executable and the SRH-2D executable. If SMS cannot find these executables, the model run will encounter an error. The File Locations tab in the Preferences dialog can be used to specify the path to these executables if SMS cannot find them.
  • While SRH-2D can handle a large variety of geometries, using a 2D mesh with a large number of elements, poor transition between elements, and other mesh quality issues can cause SRH-2D to become unstable. It is advised that the mesh quality be reviewed before running SRH-2D. When using sediment transport options in a simulation, it is advised that the 2D mesh contain fewer than 50,000 elements.
  • Starting in SMS version 12.3.4, SRH-2D solutions are cell-centered. A post-processor was added to interpolate the solution to the mesh nodes after running SRH-2D.
  • Starting in SMS version 13.0, monitor lines are no longer set on the Boundary Conditions coverage. Because of this change, when importing SRH-2D projects create in earlier version several items will happen:
    • SMS will separate the monitoring lines from other arcs in the boundary conditions coverage. The monitoring lines will be placed in their own Monitor coverage.
    • The former Boundary Condition coverage will be made into two coverages, one for the monitor lines and the other for the existing boundary conditions. The names of these coverages will have either "Boundary Conditions" or "Monitor" attached to designate which coverage contains the boundary condition arcs and which contains the monitor lines.
    • If a Monitor Points coverage existed in the project, this coverage will be changed to a Monitor coverage and the coverage name will have "Monitor" attached.
    • If the imported project had both monitor points and monitor lines, their will now be two Monitor coverages in the project.
    • By default, the Monitor coverage with the monitor lines will be included in any simulations.
    • The monitor points and monitor lines from the previous project will need to be merged into one Monitor coverage and linked to the simulation in order for both points and lines to be included in the simulation run.
    • The default boundary condition for arcs on an SRH-2D boundary condition coverage is now the "Wall" type. The boundary condition arcs should be reviewed to ensure no parameters were lost in the conversion.
  • Note that iTIME is in seconds. If the restart times are in hours, then iTIME values will half the number of seconds for those hours. The TSO file will identify the times corresponding to the restart files based on their ID number. If not needed it can be safely deleted.
  • There is sometimes a disparity between the depth+elevation and the water surface elevation because of how PostSRH-2D processes the data. SRH-2D calculates the values at the centroid, and then PostSRH-2D goes back through and averages to the nodes, which can cause the depth to appear a little bumpy. This generally does not cause an issue for most projects.

See SRH-2D Error Messages for more information.


Version 1

SRH-W, or Sedimentation and River Hydraulics – Watershed, is a two-dimensional (2D) hydraulic model for river systems and watersheds developed at the Bureau of Reclamation. SRH-W was originally developed for Reclamation internal use for various projects, and version 1.1 was released for public use.

SRH-W v1.1 is used for hydraulic flow simulation in rivers and runoff from watersheds, but without the sediment capability. It solves the 2D dynamic wave equations (the standard depth-averaged St. Venant equations) that are mainly used for river simulation. In addition, the diffusive wave solver is used for watershed runoff simulation and river simulation.

Version 1.1 is comparable to many existing models such as RMA-2 (US Army Corps of Engineers, 1996) and MIKE 21 (DHI software, 1996) in its river simulation capability. For watershed applications, SRH-W v1.1 is a distributed model for event based runoff simulation and has capabilities similar to CASC2D (Julien, et al, 1995).

Version 2

In Version 2, SRH-W was renamed to SRH-2D. This is the version that is associated with the users document that is distributed by the United States Bureau of Reclamation.

Version 2 solves the 2D dynamic wave equations, i.e., the depth-averaged St. Venant equations. Its modeling capability is comparable to some existing 2D models but SRH-2D claims a few boasting features. First, SRH-2D uses a flexible mesh that may contain arbitrarily shaped cells. In practice, the hybrid mesh of quadrilateral and triangular cells is recommended though purely quadrilateral or triangular elements may be used. A hybrid mesh may achieve the best compromise between solution accuracy and computing demand. Second, SRH-2D adopts very robust and stable numerical schemes with a seamless wetting-drying algorithm. The resultant outcome is that few tuning parameters are needed to obtain the final solution. SRH-2D was evolved from SRH-W which had the additional capability of watershed runoff modeling. Many features are improved from SRH-W.

Major Features of Version 2

Major SRH-2D capabilities are listed below

  • 2D depth-averaged dynamic wave equations (the standard St. Venant equations) are solved with the finite-volume numerical method
  • Steady state (with constant discharge) or unsteady flows (with flow hydrograph) may be simulated
  • An implicit scheme is used for time integration to achieve solution robustness and efficiency
  • An unstructured arbitrarily-shaped mesh is used which includes the structured quadrilateral mesh, the purely triangular mesh, or a combination of the two. Cartesian or raster mesh may also be used. In most applications, a combination of quadrilateral and triangular meshes is the best in terms of efficiency and accuracy
  • All flow regimes, i.e., subcritical, transcritical, and supercritical flows, may be simulated simultaneously without the need for special treatments
  • Robust and seamless wetting-drying algorithm; an
  • Solved variables include water surface elevation, water depth, and depth averaged velocity. Output variables include the above, plus Froude number, and bed shear stress.

SRH-2D is a 2D model, and it is particularly useful for problems where 2D effects are important. Examples include flows with in-stream structures, through bends, with perched rivers, with side channel and agricultural returns, and with braided channel systems. A 2D model may also be needed if one is interested in local flow velocities, eddy patterns, flow recirculation, lateral velocity variation, and flow over banks and levees.

Version 3

SRH-2D version 3 is essentially Version 2 with Sediment Transport capability added. This version is currently distributed with the SMS package. Additional solved variables include sediment concentration, erosion and deposition, bed elevation, sediment transport rates, bed material D50 size, and bed material gradations.

SRH-2D Files

See the article SRH-2D Files

External Links – SRH-2D Version 3.2

SRH-2D version 3 uses the same user manual as SRH-2D version 2 with some additional papers on sediment transport.

External Links – SRH-2D Version 2.0

Papers / Presentations

Project Reports

Additional References

In the News

External Links – SRH-W

SRH-W Version 1.1

Papers / Presentations

Related Topics