Article Title: Overview of methods for computing slopes
Article Name: GENERAL9
OS Platforms: All
Last Updated: 12/16/2005


This Tech Tip provides an overview of many different ways to compute slopes with RiverTools 3.0, and explains the advantages and limitations of each method.


RiverTools 3.0 provides many different tools and methods for computing slopes of channels and hillslopes. In order to get the best results for a particular application, it is important to understand the underlying issues and various limitations of commonly-used elevation data sets.

Slopes as measured between adjacent grid cells are notorious for being inaccurate when the grid cells are in the bottom of a valley. This is especially true when elevations have been rounded to the nearest meter or foot (as with many commonly-used DEMs), because then the minimum (nonzero) cell-to-cell or local slope is given by 1/cellsize. For example, DEMs with grid cell sizes of 10 meters and 30 meters have minimum resolvable nonzero slopes of 0.1 and 0.0333, even though real channel slopes are often much smaller, say between 10-7 and 10-3. This represents an enormous error that is unacceptable for most applications. Notice that the minimum resolvable slope actually increases as cellsize decreases if the vertical resolution is 1 meter. Due to this constraint, cell-to-cell slopes in valley bottoms are often zero for a considerable distance and then too steep when there is finally a 1-meter drop in elevation. The key then to getting a more accurate measurement of channel or valley slope is to consider a reach that spans enough grid cells to get around the vertical resolution issue but few enough cells that a single slope value for the reach is reasonable.

The Extract > River Network dialog automatically creates two RTV files (RiverTools Vector files) called a linkfile and a streamfile, and these have the compound extensions "_links.rtv" and "_streams.rtv". These files store numerous attributes for every link and Horton-Strahler stream in an extracted river network or set of networks. Straight-line and along-channel slopes are among this set of attributes, and since links and Horton-Strahler streams typically span multiple grid cells, the associated slopes are often much more representative of actual channel slopes than cell-to-cell slopes. These channel slopes are optional attributes that can be exported to an ESRI shapefile using the Export Vector > Channels dialog in the File menu. They are also used within RiverTools by the various tools in the Analyze menu. In the Strahler Streams menu, for example, statistics for channel slopes are listed in the Data Summary under the headings "Straight-line Slope" and "Along-channel Slope". A convenient way to explore the relationship between channel slope and contributing area is to use the Strahler Streams > Horton Plots dialog with an X-axis choice of "Drainage area" and a Y-axis choice of "Along-channel slope".

RiverTools 3.0 also offers a unique interactive window tool in the Tools menu of master windows called the Reach Info tool. This tool allows you to graphically select a channel reach of any desired length and location and then computes the slope across the reach as the elevation drop between the reach endpoints divided by the along-channel length of the reach. This tool also computes absolute sinuosity and the side contributing area to the reach. However, this tool requires user intervention and judgement to decide on an appropriate balance between using too short or too long of a reach to compute the channel slope.

In addition to the Reach Info tool, RiverTools has another interactive window tool called the Channel Profile tool. The Options menu of the channel profile plot window has a Fit Curve to Profile option that allows you to fit a smooth curve through the elevations along the profile by choosing from several different functional forms. The best-fit parameters are determined by nonlinear regression and are displayed in the Output Log window. These smooth curves provide another means of estimating channel and valley slopes.

In order to automatically create a slope grid that has more accurate channel slopes, RIVIX has developed a new algorithm for "profile smoothing" in support of the TopoFlow spatial hydrologic model project. This new tool will be available in the next release of TopoFlow. The idea is to create a new, floating-point DEM from an (often integer-valued) input DEM such that the new elevations are close to the old ones but constructed so that slopes increase smoothly upstream as contributing area decreases. It turns out that contributing areas can be measured much more accurately with raster methods than channel slopes. This new algorithm exploits this fact and uses an approximate slope-area relationship determined from the input DEM to create a new "profile-smoothed" DEM. The resulting slope grid can then be used to drive kinematic wave routing in a spatial hydrologic model.

Despite their limitations for computing channel slopes, cell-to-cell or local methods typically give good results when used to compute slopes on hillslopes or in low-order basins. RiverTools 3.0 offers many different methods for computing local slopes in the Extract menu. If you choose D8-based Grid > Downstream Slopes from the Extract menu, the slope is computed between each grid cell and the grid cell that it flows to according to the D8 method. If you choose D-Infinity Grid > Flow Angles and Slopes, then the slope is computed as the "maximum facet slope" according to the D-Infinity method. If you choose Finite-Difference Grid > Slope, then a "partial quartic" surface is fitted locally to determine the slope according to the method described by Zevenbergen and Thorne (1987).

The preceding discussion has been focused on slope as defined as a nondimensional ratio of lengths, or "rise over run". Some applications instead require a "slope angle grid", which can be computed as the arctangent of the nondimensional slope. Such a grid can easily be computed using the Grid Calculator in RiverTools 3.0, which is accessed by choosing Derived Grid > Grid Calculator from the Extract menu. A unit conversion from radians to degrees can also be applied using this tool, if necessary.

If you have any additional questions or comments, please contact Rivix Technical Support for assistance.

Copyright (C) RIVIX, LLC. 1998-2021