The Grand Canyon DEM colored by topographic gradient (based on SRTM-3 downloaded from

What is TopoToolbox?

TopoToolbox provides a set of MATLAB functions that support the analysis of relief and flow pathways in digital elevation models. The major aim of TopoToolbox is to offer helpful analytical GIS utilities in a non-GIS environment in order to support the simultaneous application of GIS-specific and other quantitative methods.

Who should use TopoToolbox?

TopoToolbox is not a click & go software. You should be familiar with MATLAB and its programming syntax. If you feel well versed in Matlab, you will like TopoToolbox for its versatility, functionality and ability to be customized.

How do I install TopoToolbox?

The folder with TopoToolbox as well as its subfolders (e.g. utilities, GIStools) must be on the MATLAB search path. Unzip the TopoToolbox file and add the folder and its subfolders to the search path with the function addpath (see readme file) or the Set Path dialog box.

Where can I find a documentation?

“What makes code bad?” “No comment!” Your job as a programmer is only half done if there is no documentation. We have done our job and there is a documentation that you’ll find by typing

doc topotoolbox

in the command window. This will open TopoToolbox help pages in the MATLAB’s documentation browser. This help features a Getting Started with TopoToolbox section, a user guide, and a function reference.

In addition, you will find a help section in each function including syntax, input and output arguments, and an example. For example, to access the help of the function gradient8, just type

help gradient8

in the command line.

This blog is intended as an additional resource of more comprehensive examples. An overview on the topics covered is here.

In addition, you might want to take a look at two papers about TopoToolbox published in Environmental Modelling and Software and Earth Surface Dynamics.

Where can I report bugs or suggestions for enhancement?

You found a bug? Sorry for the inconvenience. Please tell me more about it here. The same holds for enhancement requests. I cannot guarantee that I’ll have the time to deliver, but I’ll do my best to keep TopoToolbox up-to-date.

How can I stay informed about updates?

There is no mailing list. All news about TopoToolbox will be posted in this blog and sometimes on Twitter. In addition, you may want to follow the software on GitHub.


120 thoughts on “TopoToolbox

    YASMINE said:
    June 7, 2022 at 7:42 am

    Dear Dr.Schwanghart,
    I have a problem, everytime I run the flow accumulation function flowacc() , Matlab crashes and It doesn’t give any output, I talked to the Technical support of MathWork but they mentionned that “flowacc” function is contained in the third-party toolbox TopoToolbox, which they don’t maintain the code. Can you help me please in this problem? (of course and reinstalled matlab many times).
    Best regards,

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.