Taudem 5.2 Guide To Using The Taudem Command Line Functions For Taudem Multi File
Taudem 5.2 Guide To Using The Taudem Command Line Functions For Taudem Multi File
5.2
GUIDE TO USING THE TAUDEM COMMAND LINE
FUNCTIONS FOR TAUDEM MULTI‐FILE
August 2013
David G. Tarboton
Page | 1
Purpose
The purpose of this document is to introduce Hydrologic Terrain Analysis using the TauDEM command
line functionality for TauDEM multi‐file.
TauDEM (Terrain Analysis Using Digital Elevation Models) is a set of Digital Elevation Model (DEM) tools
for the extraction and analysis of hydrologic information from topography as represented by a DEM.
This is software developed at Utah State University (USU) for hydrologic digital elevation model analysis
and watershed delineation and may be obtained from http://hydrology.usu.edu/taudem/taudem5/.
TauDEM is available in two versions, the single‐file with a graphical user interface to be used in the
ArcGIS toolbox, and the multi‐file command line executable versions. The single file version of TauDEM
allows the user to perform analysis on a single input file. The multi‐file version allows the user to specify
a folder location and perform the analysis on multiple input files. This is beneficial when the area being
processed is too big to fit in to a single TIFF file so needs to be represented using multiple TIFF files that
logically comprise the domain. This guide is written to introduce the user to installation, setup, and
usage of the command line multi‐file version. The multi‐file executables have been coded in C++ with
the intention to be platform independent. It is helpful to have GIS software installed, such as ArcGIS,
GRASS, MapWindow, etc., so that the user can view and inspect the results.
In this guide we assume that you are working on a Windows PC, although much of the functionality is
generic and can be (with knowledge of the other system) be transferred to other systems. To use
TauDEM command line functions you need the TauDEM 5.2 multi‐file software as well as MPI software.
Our current Windows PC precompiled executables have been compiled using the Microsoft HPC Pack
2012 MS‐MPI libraries from http://www.microsoft.com/en‐us/download/details.aspx?id=36045. Earlier
versions used MPICH2 from http://www.mcs.anl.gov/research/projects/mpich2/. MPICH2 libraries are
suggested for non Windows installations.
Versions
TauDEM 5.1.x refers to the single file version
TauDEM 5.2.x refers to the multi file version described here
Page | 2
Unzip TauDEM zip. The contents are:
From the zipfile install the following
o Visual Studio 2010 C++ runtime libraries vcredist_x86_2010.exe
o Visual Studio 2010 C++ runtime libraries vcredist_x64_2010.exe if a 64 bit platform
o Microsoft HPC Pack 2012 MS‐MPI from mpi_x64.msi or mpi_x86.msi depending on your
platform.
Unzip the TauDEM 5.2 Command Line Executable files for your platform (here
TauDEM5MFExex64.zip) and put them in a convenient location.
Page | 3
Add the folder, here " C:\Users\dtarb\TauDEM5MFExex64" to the system PATH environment
variable. (Right click Computer‐>Properties‐>Advanced System Settings‐>Advanced‐
>Environment variables). This should be done as shown below:
Open a command prompt.
1. Execute the following command to change to the directory with the data
cd C:\Users\dtarb\Scratch\loganMF
2. Remove Pits
Page | 4
file and r0co refers to row 0 and column 0 of the multi‐file tiling of the domain into 9 rows and 5
columns (45 files). This output needs to be viewed in a GIS grid viewer, e.g. ArcGIS or MapWindow.
The first time a TauDEM function is run, you may get a firewall warning.
You may select Cancel as TauDEM does not require smpd to use the network. It is used to
communicate between processes on the same computer.
3. Flow Directions
These produce the output folders loganp, logansd8, loganang and loganslp that respectively contain
D8 flow directions, D8 slopes, D‐Infinity flow angles and D‐Infinity slopes.
Note that in this case each of these folders only contains four files. This is because the –mf option
was used. This specifies the number of rows and columns in the domain tiling to be used per
processor. This option directs the programs not to have files overlapping processor boundaries on
output and is useful when multiple processors on a cluster are writing to local disks. Assembly of
the files created in this way into a single folder again results in a grid of tiles that cover the domain.
Note that the files are named sd8p0r0co.tif for example, the sd8 being the TauDEM code, p0
referring to the processor that wrote it, and r0, c0 the row and column in the tiling from that
processor. The two arguments that follow the ‐mf directive specify the number of rows and
Page | 5
columns to output for each processor. Single TIFF files cannot be larger than 4GB, so when
processing very large domains the number of processors, and rows and columns for each processor
should be coordinated so that no one file exceeds the 4GB limit.
4. Contributing area
The first two of these produce the outputs loganad8 and logansca that respectively contain D8 and
D‐Infinity contributing area. The last command produces the folder loganad8o that holds D8
contributing area evaluated upslope of outlets in the loganoutlet.shp shapefile.
Note that here, since the ‐mf 2 2 directive was used each processor output 2 rows and 2 columns of
files, resulting in a total of 8 files in each folder, since there are 2 processors specified.
5. Gridnet
This produces the output folders loganplen, logantlen and logangord, containing respectively (1) the
longest flow path along D8 flow directions to each grid cell, (2) the total length of all flow paths that
end at each grid cell, and (3) the grid network order. This is obtained by applying the Strahler
stream ordering system to the network defined starting at each grid cell.
6. PeukerDouglas
This produces a skeleton of a stream network derived entirely from a local filter applied to the
topography.
7. PeukerDouglas stream delineation
These three commands evaluate the weighted contributing area of the PeukerDouglas stream
network skeleton, then use stream drop analysis to apply a range of thresholds to this weighted
contributing area grids to identify the smallest threshold for which the mean stream drop of first
order streams is not significantly different from the mean stream drop of higher order streams. This
is the constant drop law (Broscoe, 1959), and TauDEM uses it here to identify the highest resolution
Page | 6
stream network that complies with this law as an objective way of identifying the stream delineation
threshold. The output results include a table (logandrp.txt) that reports the stream drop statistics
for each threshold examined.
8. Stream Network
This produces a number of outputs illustrated below. These include a shapefile of the stream
network and subwatersheds draining to each link of the stream network shapefile. This is one a
key output from TauDEM. Each link in the stream network has a unique identifier that is linked
to downstream and upstream links. Each subwatershed also has a unique identifier that allows
it to be cross‐referenced to the stream network link that it drains to. This information enables
construction of a subwatershed based distributed hydrologic model with flow from
subwatersheds being connected to, accumulated in, and routed along the appropriate stream
reaches.
Note in the output illustrated below that the tiling due to the presence of multiple files is
evident in the color symbolization. This is because the colors assigned to each file were random
and not consistent across files. However the underlying grid values are consistent across the
files to support the cross referencing mentioned above.
Page | 7
These examples have illustrated the use of key TauDEM multi‐file command line functions to delineate
watersheds. A summary of TauDEM command line functions with brief descriptions of their
functionality is given below. Refer also to the TauDEM ArcGIS toolbox CHM help which provides more
comprehensive information on what each function does and the full command line input specifications
below.
Page | 8
Function Description
1. Basic Grid Analysis Functions
PitRemove Pits are grid cells surrounded by higher terrain. A hydrologically
correct DEM has no pits so that a drainage path can be defined from
each grid cell to the edge of the domain. PitRemove takes as input
elevation data grids and outputs hydrologically correct elevation grids
with pits filled, using the flooding algorithm.
D8FlowDir Takes as input the hydrologically correct elevation grids and outputs
D8 flow direction and slope for each grid cell. In flat areas flow
directions are assigned away from higher ground and towards lower
ground.
DinfFlowDir Assigns a flow direction based on steepest slope on a triangular facet
following the D model. This is recorded as an angle in radians anti‐
clockwise from east.
AreaD8 Takes as input a D8 flow direction grids and outputs the contributing
area as the number of grid cells draining through each grid cell.
(Optionally accumulates input weight grids)
AreaDinf Takes as input D flow direction grids and outputs the specific
catchment area(s). Specific catchment area is defined as contributing
area per unit contour length. (Optionally accumulates input weight
grids)
GridNet Takes as input a D8 flow directions files and outputs three grid files:
‐ plen contains the path length from the furthest cell that drains to
each cell.
‐ tlen contains the total length of all paths draining to each cell.
‐ gord contains the Strahler order associated with that cell for a flow
network defined using the D8 flow directions and including each grid
cell.
2. Stream Network Functions
PeukerDouglas Takes as input elevation grids and outputs an indicator (1,0) grid of
candidate stream cells according to the Peuker and Douglas
algorithm.
Threshold Takes as any grid and outputs an indicator (1,0) grid of grid cells that
have values >= the input threshold. This is used to delineate stream
networks from contributing area and similar grids.
D8FlowPathExtremeUp Evaluates the extreme (either maximum or minimum) upslope value
from input grids based on the D8 flow directions. Used in some
stream delineation methods.
SlopeArea Evaluates Sman based on slope and specific catchment area grid
inputs, and parameters m and n. Uses with slope‐area stream
delineation.
Page | 9
LengthArea Evaluates A >= M Ly and outputs an indicator (1,0) grid based on
upslope path length and D8 contributing area grid inputs, and
parameters M and y. Used with length‐area stream delineation.
DropAnalysis Applies a series of thresholds and outputs a table of stream statistics
used in objectively selecting the stream delineation threshold.
StreamNet Produces a vector network (shapefile) from stream raster grids.
Outputs grids of subwatersheds draining to each stream network link
MoveOutletsToStreams Adjusts the position of outlets by moving them downslope along D8
flow directions until they reach a stream.
3. Specialized grid analysis functions
SlopeAreaRatio Calculates ratio S/A where S is slope and A contributing area
D8HDistToStrm Calculates horizontal distance to stream along D8 flow directions
DinfUpDependence Calculates upslope dependence
DinfDecayAccum Calculates decay limited accumulation
DinfConcLimAccum Calculates concentration limited accumulation
DinfTransLimAccum Calculates transport limited accumulation
DinfRevAccum Calculates reverse accumulation
DinfDistDown Calculates distance downslope to a target zone (typically stream)
using Dinf flow directions. Options include vertical, horizontal, along
slope and pythagorus distances , computed using minimum,
maximum, or flow weighted averaging along multiple Dinf flow paths.
DinfDistUp Calculates distance upslope to a ridge (grid cell with no inflow) using
Dinf flow directions. Options include vertical, horizontal, along slope
and pythagorus distances , computed using minimum, maximum, or
flow weighted averaging along multiple Dinf flow paths.
DinfAvalanche Calculates avalanche runout zone and distance to avalanche source in
avalanche runout zone
SlopeAveDown Calculates slope averaged over specified distance down D8 flow
directions
TauDEM Codes
TauDEM works with numerous input and output file types, each of which contains data that needs to be
interpreted differently. To manage this, a set of character TauDEM codes has been developed. The
TauDEM codes are used both as suffixes in TauDEM’s default file names and as flags in the syntax of the
command line functions.
Page | 10
Naming Convention
In TauDEM’s default naming convention, the name of the base digital elevation model is used as the
base folder name for the default folder names of all of the different files generated based on that DEM.
Many of the TauDEM codes are used as suffixes, where they are combined with the base folder name,
followed by the extension, to identify each of the various file types used by TauDEM. For example, if
“sss” is the TauDEM code for a particular type of file, and “dem” is the folder for base elevation grids,
then the default folder name for grids of that type would be “demsss”, the default file name of a
shapefile would be “demsss.shp”, and the default file name of a text file would be “demsss.dat”.
For the most part, the suffix codes and the flag codes are the same for each type of data file, but there
are a few exceptions. Table 1 lists the TauDEM codes used for grid data in TauDEM. The initial elevation
folder does not have a suffix, however the code “z” is used on the command line as flag. Table 2 lists
the TauDEM codes used for shapefile and text data. Table 3 lists the non‐file related TauDEM code
flags.
Table 1 TauDEM codes for grids, their descriptions and input and output functions
Page | 11
Code Description Function Input Function Output
cs Concentration in supply grid, a DinfTransLimAccum
grid giving the concentration of
a compound of interest in the
supply to the transport limited
accumulation function
ctpt Concentration grid, a grid DinfConcLimAccum,
giving the concentration of a DinfTransLimAccum
compound of interest
dd D‐infinity distance to stream DinfDistDown
which can be average,
minimum or maximum of
horizontal, vertical, surface or
Pythagoras distances to the
stream.
dep Upslope dependence grid, a DinfUpDependence
grid giving at each grid cell the
fraction of flow that
contributes to any part of the
target disturbance grid
dfs Distance from source grid DinfAvalanche
dg Disturbance indicator grid, an DinfUpDependence,
indicator grid that marks the DinfConcLimAccum
target domain for various
functions
dist D8 distance to stream grid D8HDistDown
dm Decay multiplier grid, a grid DinfDecayAccum,
giving the factor by which flow DinfConcLimAccum
leaving each grid cell is
multiplied before accumulation
on downslope grid cells. This
may be used to simulate the
movement of an attenuating
substance.
dmax Maximum downslope grid, a DinfRevAccum
grid giving the maximum of the
weight loading grid downslope
from each grid cell
Page | 12
Code Description Function Input Function Output
dsca Decayed specific catchment DinfDecayAccum
area grid (specific catchment
area calculated by
accumulating area but using
the decay multipliers)
du D‐infinity distance to ridge DinfDistUp
which can be average,
minimum or maximum of
horizontal, vertical, surface or
Pythagoras distances to the
ridge.
fel Hydrologically correct elevation D8FlowDir, DinfFlowDir, PitRemove
grid with pits removed either StreanRaster,
by filling or carving DropAnalysis,
StreamNet, DinfDistUp,
DinfDistDown,
PeukerDouglas,
DinfAvalanche
gord Stahler network order grid Threshold, DropAnalysis Gridnet
(Strahler order for grid network
defined from D8 flow
directions)
ord Network order grid, a grid StreamNet
giving the Strahler stream
order for each delineated
stream grid cell
p D8 flow direction grid obtained AreaD8, D8HDistToStrm, D8FlowDir
from the D8 flow direction D8FlowPathExtremeUp,
function PeukerDouglas,
DropAnalysis,
StreamNet,, Gridnet,
SlopeAveDown
plen Longest upslope length grid, a Threshold, Gridnet
grid that gives the length of the DropAnalysis,
longest upslope flow path LengthArea
terminating at each grid cell
q Specific discharge of the flow DinfConcLimAccum
carrying the constituent being
loaded at the concentration
threshold specified
Page | 13
Code Description Function Input Function Output
racc Reverse accumulation grid, a DinfRevAccum
grid giving the result of the
"Reverse Accumulation"
function
rz Runout zone grid, a runout DinfAvalanche
zone indicator grid with value 0
to indicate that this grid cell is
not in the runout zone and
value > 0 to indicate that this
grid cell is in the runout zone.
sa Slope‐Area function output grid D8FlowPathExtremeUp SlopeArea
containing slope and area
combined using SmAn
sar Slope/Area ratio grid used to SlopeAreaRatio
evaluate wetness index
sca D‐infinity contributing area grid SlopeAreaRatio, AreaDinf
(units in specific catchment SlopeArea, Threshold,
area, i.e. area per unit contour StreamNet
width, using grid cell as the unit
width and grid cell size squared
as grid cell area)
sd8 D8 slope grid (slope measured D8FlowDir
as drop/distance)
slp D‐infinity slope grid SlopeAreaRatio, DinfFlowDir
SlopeArea,
DinfDistDown,
DinfDistUp
slpd D8 averaged slope distance SlopeAveDown
grid, a grid of slope averaged
over downslope distance
src Computed stream raster grid, a DinfDistDown, Threshold
grid indicating streams, grid cell DropAnalysis,
value 1 on streams and 0 off D8HDistDown,
streams StreamNet
Page | 14
Code Description Function Input Function Output
ss A stream source grid derived AreaD8 PeukerDouglas,
through application of a LengthArea
function to identify potential
stream sources to a set of
inputs. Values should be 0 on
non potential stream sources
and >0, with a value that has
relevance to the method being
used for potential stream
sources.
ssa An accumulated stream source Threshold, DropAnalysis D8FlowPathExtreme
grid derived from a ss grid and Up, AreaD8
is suitable for drop analysis.
This needs to have the
property that it is
monotonically increasing
downslope along D8 flow
directions. This may be from
an accumulation or maximum
upslope function.
tc Transport capacity grid, a grid DinfTransLimAccum
giving the transport capacity at
each grid cell for the transport
limited accumulation function
tdep Deposition grid, a grid giving DinfTransLimAccum
the deposition resulting from
the transport limited
accumulation
tla Transport limited accumulation DinfTransLimAccum
grid
tlen Total upslope length grid, a grid Gridnet
that gives the total length of
upslope flow paths terminating
at each grid cell
tsup Transport supply grid, a grid DinfTransLimAccum
giving the supply (loading) of
material to a transport limited
accumulation function
Page | 15
Code Description Function Input Function Output
w Watershed grid demarcating Streamnet
each reach watershed mapped
using Streamnet function
wg Flag used to show weight grid, AreaD8, AreaDinf,
with the name of the weight DinfDecayAccum,
grid as argument. DinfConcLimAccum,
DinfRevAccum,
DinfDistDown,
DinfDistUp
The following codes are used as command line flags but not necessarily as file suffixes because
they only pertain to files used for input
‐mask Flag used to show mask file, Threshold, Gridnet
with the name of the mask file
as argument.
‐z Flag used to show elevation PitRemove
data before pit filling, with the
name of the elevation file as
argument
Table 2 TauDEM codes for shape and text files their descriptions and input and output functions
Table 3 Non‐file TauDEM codes and their descriptions
Page | 16
Flags Description Arguments
‐alpha Flag for user selected input angle threshold Angle (degrees)
used in avalanche runout function
‐csol Solubility threshold in concentration limited Numeric value indicating substance
accumulation function solubility threshold
‐direct Flag to indicate direct rather than path No argument
distance to be used in avalanche runout
function
‐dn Flag for user selected distance input in Downslope distance (in horizontal
SlopeAveDown function linear units of the DEM grid)
‐m Flag used as method indicator for computing Two arguments are used with this
horizontal, vertical, surface or Pythagoras flag: (1) The method type (horizontal
distances to ridge and stream. as h, vertical as v, surface as s and
Pythagoras as p); and (2) the method
statistic (average as ave, minimum as
min, and maximum as max). The
default is h ave. (e.g. ‐m v ave)
‐md Flag used to indicate the maximum distance Integer numeric value indicating the
(in number of grid cells traversed) to move an maximum number of grid cells to
outlet in the MoveOutletsToStreams function traverse when moving outlets
‐mf Flag used to indicate process specific multi‐ Two integer numeric values
file output specifying the number of rows and
columns of files to be output from
each processor
‐nc Flag for not checking edge contamination. The No argument
default is to check edge contamination.
‐par Flag to indicate that method parameters Numerical method parameters, with
follow on the command line input. method dependent interpretation
and number
‐sw Flag used to indicate delineate single No argument
watershed only. Without the flag the default
is to delineate multiple watersheds.
‐thresh Flag used to show threshold Threshold value (number)
Page | 17
function names are in italics; the required parameters are in normal font; the optional parameters are in
normal font but in brackets []; outputs are underlined, and the flags and suffixes are in bold italics.
Page | 18
optional weight grid input results in the output being the accumulation (sum) of the weights from
upstream grid cells draining through each grid cell. By default the program checks for edge
contamination. The edge contamination checking may be overridden with the optional command line
argument ‐nc.
Command line interfaces
Simple:
AreaD8 dem (assume no outlets, no weight grid)
Specific file and folder names used:
AreaD8 ‐p demp.tif ‐ad8 demad8 [‐o outletfile.shp] [‐wg demwg] [‐nc]
pfile input flow directions grids
ad8file output contributing area grids
wgfile input weight grid files
Outletfile input outlets shapefile
AreaDinf
This function takes as input Dinf angle files and outputs the specific catchment area. Specific catchment
area is defined as contributing area per unit contour length. Here the contour length is taken as the grid
cell size. The result has length units the same as grid cell size. The optional command line argument for
the outlet shapefile results in only the area contributing to outlet points in the shapefile being
calculated. The optional weight grid input results in the output being the accumulation (sum) of the
weights from upstream grid cells draining through each grid cell. By default the program checks for
edge contamination. The edge contamination checking may be overridden with the optional command
line argument ‐nc.
Command line interfaces
Simple:
AreaDinf dem (assume no outlets, without weight grid)
Specific file and folder names used:
AreaDinf ‐ang demang ‐sca demsca [‐o outletfile.shp] [‐wg demwg] [‐nc]
scafile Dinf contributing areas output files
angfile Dinf angles input files
outletfile Shapefile with outlet coordinates
wgfile an optional weight file for area computations
Gridnet
This function takes as input a D8 flow directions file and outputs three grid files:
- plen Each grid cell contains the path length from the furthest cell that drains to each cell.
- tlen Each grid cell contains the total length of all paths draining to each cell.
- gord Each grid cell contains the Strahler order associated with that cell for a flow network
defined using the D8 flow directions and including each grid cell.
Strahler order is defined as follows. Cells that don't have any other grid cells draining in to them are
order 1. For grid cells that have other cells draining into them the order of inflowing cells is used to
determine the order, according to Strahler ordering rules. Because more than two flow paths may join
at any grid cell, these are extended as follows. The order of inflowing grid cells is ranked from largest to
smallest. Where there is one highest rank inflowing grid cell, the order is taken as the order of that
inflowing grid cell. Where there are two or more inflowing grid cells with order equal to the order of the
highest rank inflowing grid cell, then the order is taken as one plus the order of the highest rank
inflowing grid cell. The optional mask file and threshold input results in lengths and order being
Page | 19
computed using only the domain defined by the mask grid greater than or equal to the threshold. The
optional outlet shapefile input gives results only for the area contributing to the outlet points. [This
function does not at present support edge contamination. This could be added in the future, but at
present if edge contamination is needed a mask using output from a function like AreaD8 that does
support edge contamination can be used.]
Command line interfaces
Simple:
Gridnet dem (assume no outlets, default folder suffixes used, no mask and threshold used)
Specific file and folder names used:
Gridnet ‐p demp ‐plen demplen ‐tlen demtlen ‐gord demgord [‐o outletsfile.shp] [‐mask
demmask ‐thresh 100]
pfile D8 flow directions input files
plenfile grid of longest flow length upstream of each point output file
tlenfile grid of total path length upstream of each point output file
gordfile grid of strahler order output file
maskfile mask file
outletsfile Shapefile with outlet coordinates
thresh the mask threshold used in >= test
Page | 20
maskfile Folder names for grid used to mask the output stream raster, or general thresholded grids.
thresh Threshold parameter.
usemask Flag to indicate whether maskfile has been input and is to be used (1 yes, 0 no)
D8FlowPathExtremeUp
This is a function that evaluates the extreme (either maximum or minimum) upslope value from an input
grid based on the D8 flow directions. This is intended for use in stream raster generation to identify a
threshold of slope x area product that results in an optimum (according to drop analysis) stream
network. If an outlets shapefile is provided the function outputs results for the area upslope of the
outlets.
Command line interfaces
Simple:
D8FlowPathExtremeUp dem (default file suffixes automatically appended and maximum used, no
outlets, edge contamination checking)
Specific file and folder names used:
D8FlowPathExtremeUp ‐p demp ‐sa demsa ‐ssa demssa [‐min] [‐nc] [‐o outlets.shp]
The default is maximum, that is switched to minimum if ‐min is specified.
pfile File name for D8 flow direction grid (input)
safile File name for slopearea file (input).
ssafile File name for output grid with extreme upslope value
outletfile File name for outlets shapefile (optional input)
SlopeArea
This is a function that evaluates Sman based on slope and specific catchment area grid inputs, and
parameters m and n. This is intended for use with the slope‐area stream raster delineation method.
Command line interfaces
Simple:
SlopeArea dem. (default file suffixes automatically appended and m=2, n=1 defaults used)
Specific folder names used:
SlopeArea ‐slp demslp ‐sca demsca ‐sa demsa [‐par 2 1]
The default parameter values of 2 and 1 are assumed unless ‐par is specified.
slopefile Folder name for slope grids (generally from DinfFlowDir) (input)
scafile Folder name for contributing area files (generally from AreaDinf) (input).
safile Folder name for output grids with SmAn. Float. (output)
par Array of input parameters with p[0] being the slope exponent and p[1] being the area exponent
LengthArea
This is a function that evaluates A >= M L^y ? 1:0 based on upslope path length and D8 contributing area
grid inputs, and parameters M and y. This is intended for use with the length‐area stream raster
delineation method.
Command line interfaces
Simple:
LengthArea dem (default file suffixes automatically appended and M=0.03, y=1.3 defaults used)
Specific folder names used:
LengthArea ‐plen demplen ‐ad8 demad8 ‐ss demss [‐par 0.03 1.3]
The default parameter values of 0.03 and 1.3 are assumed unless ‐par is specified.
plenfile Folder location for longest upslope path grids (generally from Gridnet) (input)
Page | 21
ad8file Folder location for contributing area files (generally from AreaD8) (input).
ssfile File name for indicator (1,0) output grid with A >= M L^y. Short. (output)
par Array of input parameters with p[0] being M coefficient and p[1] being the y exponent on length
DropAnalysis
This function to be based on code in tardemlib.cpp/dropan. Applies a series of thresholds (determined
from the input parameters) to the input ssa grid and outputs in the drp.txt file the stream drop statistics
table.
Command line interfaces.
No simple interface because we do not have a default outlets shapefile name, and an outlets shapefile is
required.
Specific file and folder names used:
DropAnalysis ‐ad8 demad8 ‐p dem ‐fel demfel ‐ssa demssa ‐o outlets.shp ‐drp demdrp.txt [‐par 5 500 10
0]
The default parameter values of min=5, max=500, nthresh=10, steptype=0 are assumed unless ‐par is
specified.
ad8file Folder location for D8 contributing area grids 'ad8'
pfile Folder location for D8 flow direction grids 'p'
felfile Folder location for hydrologically correct elevation grids 'fel'
ssafile Folder location for an accumulated stream source grids suitable for drop analysis. These need
to have the property that it is monotonically increasing downslope along D8 flow directions.
dropfile File name where stream drop analysis output is to be written as txt
outletfile File name of outlets shape file (input). Note that unlike some other functions, for this
function the outletfile is required.
par Array of parameters consisting of:
- threshmin Minimum value of threshold to be used in drop analysis
- threshmax Maximum value of threshold to be used in drop analysis
- nthresh Number of drop thresholds to be used in drop analysis
- steptype Type of threshold step to be used in drop analysis (0 = log, 1=arithmetic)
StreamNet
This function produces a vector network from the Stream Raster grid by tracing down from each source
grid cell. The network topological connectivity is stored in the output Stream Network Tree file, (suffix
*tree.dat) and coordinates and attributes from each grid cell along the network are stored in the output
Stream Network Coordinates file (suffix *coord.dat). A Strahler stream order grid is also produced as
output. When an outlet shapefile is given, results are limited to the domain upslope of these outlets.
Furthermore, internal “outlets”, defined as points that have other outlets downstream of them are used
to segment stream links. This function is also used to write a stream network shapefile and define
subwatersheds draining to each link (stream segment) in a channel network. Output is a stream
network shapefile (suffix 'net') and subwatershed grid (suffix 'w') that has a separate value for each
subwatershed. The optional flag ‐sw is used to indicate that a single watershed, rather than separate
subwatershed draining to each stream segment is to be delineated.
Command line interfaces
Simple:
StreamNet dem (assume no outlets)
Specific file and folder names used:
StreamNet ‐fel demfel ‐p demp ‐ad8 demad8 ‐src demsrc ‐ord demord ‐tree demtree.dat ‐coord
demcoord.dat ‐net demnet.shp ‐w demw [‐o outletfile.shp] [‐sw]
Page | 22
pfile Input D8 flow directions folder 'p'
srcfile Input stream raster folder 'src'
ordfile Output folder of channel network Strahler order 'ord'
ad8file Input folder with D8 contributing area 'ad8'
felfile Input pit filled elevation data folder 'fel'
treefile Output textfile with list of links in channel network tree
coordfile Output textfile with list of coordinates in channel network tree
outletshapefile Input shapefile with outlet locations. This must contain a field named "id" that is
used to identify the links upstream of outlet points
wfile Output folder of watershed identifiers 'w'
demnetshp Output shape file of resultant channel network '*.shp'
MoveOutletsToStreams
This function moves outlet point that are off a stream raster grid down D8 flow directions until a stream
raster grid is encountered. Input is a flow direction grid, stream raster grid and outlets shapefile.
Output is a new outlets shapefile where each point has been moved to coincide with the stream raster
grid if possible. A field 'dist_moved' is added to the new outlets shapefile to indicate the changes made
to each point. Points that are already on the stream raster (src) grid are not moved and their
'dist_moved' field is assigned a value 0. Points that are initially not on the stream raster grid are moved
by sliding them along D8 flow directions until one of the following occurs:
a. A stream raster grid cell is encountered before traversing the max_dist number of grid cells. The
point is moved and 'dist_moved' field is assigned a value indicating how many grid cells the
point was moved.
b. More than the max_number of grid cells are traversed, or the traversal ends up going out of the
domain (encountering a no data D8 flow direction value). The point is not moved and the
'dist_moved' field is assigned a value of ‐1.
Command line interfaces
No simple interface because we have no outlet shape file default suffixes.
Specific file and folder names used:
MoveOutletsToStreams ‐p dem ‐src demsrc ‐o outlets.shp ‐om outletsmoved.shp [‐md 50]
Note that if the ‐md flag and max_dist parameter is not given, the default of 50 is used.
pfile Folder location for D8 flow direction grids (input)
srcfile Folder location for stream raster grids (input)
maxdist maximum number of grid cells to traverse in moving outlet points (input)
outletshapefile File name for outlets shapefile (input)
movedoutletshapefile File name for new shapefile where outlets have been moved
Page | 23
areafile input specific catchment area files
sarfile output slope area ratio files
D8HDistToStrm
This function computes the distance from each grid cell moving downstream until a stream grid cell as
defined by the Stream Raster grid is encountered. The optional threshold input is to specify a threshold
to be applied to the Stream Raster grids (src). Stream grid cells are defined as having src value >= the
threshold, or >=1 if a threshold is not specified.
Command line interfaces
Simple:
D8HDistToStrm dem (default file suffixes used, without threshold)
Specific folder names used:
D8HDistToStrm ‐p dem ‐src demsrc ‐dist demdist [‐thresh 50]
pfile D8 flow direction input files
srcfile stream channel definition input files
distfile distance to stream channel output files
thresh integer value used to define channels in srcfile (a greater or equal to test is used)
DinfUpDependence
This function calculates the amount of flow a cell contributes to a subset of cells using the Dinf flow
model.
Command line interfaces
Simple:
DinfUpDependence dem (default file suffixes used)
Specific folder names used:
DinfUpDependence ‐ang demang ‐dg demdg ‐dep demdep
angfile Dinf flow direction input files
dgfile disturbance grid input files
depfile flow dependence output files
DinfDecayAccum
This function calculates the weighted Dinf flow accumulation at each grid cell, where the flow is subject
to first order decay.
Command line interfaces
Simple:
DinfDecayAccum dem (default folder suffixes used; without outlet shapefile and weight grid)
Specific folder names used:
DinfDecayAccum ‐ang demang ‐dm demdm [‐o outletfile.shp] [‐wg demwg] ‐dsca demdsca [‐nc]
angfile Folder of Dinf flow direction input fs
adecfile Output decayed specific catchment area folder
dmfile Input decay multiplier grids (distance down grid)
wgfile Input weight files
outletshapefile Outlet shape file.
DinfConcLimAccum
This function applies to the situation where an unlimited supply of a substance is loaded into flow at a
concentration or solubility threshold Csol over an area demarcated by the (0,1) indicator grid (dg) that
identifies (value 1) the area of the substance supply. The specific discharge grid gives the overland flow
Page | 24
calculated apriori (e.g. using the AreaDinf function) into which the substance is loaded at a solubility
threshold over the area of the indicator grid. The concentration in the flow leaving the disturbance area
is Csol. This is then attenuated due to decay and dilution downslope.
Command line interfaces
Simple:
DinfConcLimAccum dem (assume no outlets, default folder suffixes and solubility threshold of
1.0 used)
Specific file and folder names used:
DinfConcLimAccum ‐ang demang ‐dg demdg ‐dm demdm ‐ctpt demctpt ‐q demq [‐o
outletfile.shp] [‐csol 1] [‐nc]
angfile Dinf flow direction input grids
ctptfile Output concentration grids.
dmfile decay multiplier grids
wgfile Specific discharge grids
dgfile Input disturbance indicator grids.
cSol Concentration threshold
qfile Specific discharge grids.
outletfile Outlet shapefile.
DinfTransLimAccum
This function applies to the situation where there is a supply of substance (e.g. erosion) and capacity for
transport of the substance (e.g. sediment transport capacity). This function accumulates the substance
flux subject to the rule that the transport out of any grid cell is the minimum of the transport in to that
grid cell and the transport capacity.
Command line interfaces
Simple:
DinfTransLimAccum dem (assume no outlets, no input concentration files, default folder
suffixes used)
Specific file and folder names used:
DinfTransLimAccum ‐ang demang ‐tsup demtsup ‐tc demtc [‐cs demcs ‐ctpt demctpt] ‐tla
demtla ‐tdep demtdep [‐o outletfile.shp] [‐nc]
angfile Dinf flow direction input grids
tsupfile Input transport supply grids
tcfile Input transport capacity grids
tlafile Output transport limited accumulation grids
depfile Output deposition grids
csfile Input concentration grids (optional)
ctptfile Output concentration grids (optional)
outletfile Outlet shapefile.
DinfRevAccum
This works in a similar way to evaluation of weighted Contributing area (AreaDinf), except that the
accumulation is by propagating the weight loadings upslope along the reverse of the flow directions to
accumulate the quantity of weight loading downslope from each grid cell. The function also reports the
maximum value of the weight loading downslope from each grid cell in the Maximum Downslope grid.
Command line interfaces
Simple:
DinfRevAccum dem.tif (default file suffixes used without threshold value)
Page | 25
Specific folder names used:
DinfRevAccum ‐ang demang ‐wg demwg ‐racc demracc ‐dmax demdmax
angfile Input Dinf flow direction grids
wgfile Input weight grids
raccfile Output reverse accumulation grids
dmaxfile Output maximum downslope grids
DinfDistDown
This function was developed to calculate distance to stream using multiple methods: horizontal, vertical,
Pythagoras and surface, each distance with average, maximum and minimum options, using the Dinf
flow model. The distance between grid cells is defined as either:
- horizontal. The horizontal distance between grid cells, h.
- vertical. The difference in elevation between grid cells, v
- surface. The along the surface difference in elevation between grid cells defined as
s=h*sqrt(1+slope2)
These are then accumulated downslope from each point to the stream as defined by the stream raster
grid. Since the flow from each grid cell is proportioned between multiple downslope cells the following
options are used in accumulating distance between a grid cell and the stream.
- Average (ave). Here the proportions of flow going from one grid cell to the next are used as
weights for weighted averaging
- Minimum (min). Here the shortest distance over multiple flow paths is accumulated.
- Maximum (max). Here the longest distance over multiple flow paths is accumulated.
In addition, a Pythagoras distance from the point in question to the stream calculated as p=sqrt(hs2+vs2)
where hs is the horizontal distance to the stream and vs is the vertical distance to the stream is defined.
Further there is the option to specify a weight grid as input. If this is specified, the distance between
grid cells indicated above is multiplied by (w+wd)/2, the average of the weight along the path from a grid
cell to its downslope neighbor.
Command line interfaces
Simple:
DinfDistDown dem (default folder suffixes used, default method = ave h, and without weight
grid)
Specific folder names used:
DinfDistDown ‐ang demang ‐fel demfel ‐src demsrc [‐wg demwg] ‐dd demdd [‐m ave h] [‐nc]
Note that two parameters need to follow ‐m, the first from ave, min, max to indicate the method
statistic, and the second from h, v, s, p to indicate the method type. The default method 'ave' and 'h'
are used if method is not specified.
angfile Input Dinf flow direction grids
felfile Input pit filled elevation grids
wgfile Input weight path grids
srcfile Input stream raster grids
ddfile Output distance down grids
method Method to be used (Encoding is h = horizontal, v = vertical, p = Pythagoras, s = surface, ave =
average, min = minimum, and max = maximum)
DinfDistUp
This function was developed to calculate distance to ridge using four methods: horizontal, vertical,
Pythagoras and surface, each distance with average, maximum and minimum variations, using the Dinf
flow model. Distances between cells are defined the same as for the DinfDistDown function. Grid cells
Page | 26
that have no flow contribution from upslope grid cells are defined to be ridge grid cell and this function
reports the distance from ridge cells to each grid cell. There is no weighting option, unlike DinfDistUp.
There is an option to input a threshold, which if specified considers only grid cells with proportion more
than the specified threshold contributing to a grid cell as being upslope of a grid cell for the calculation
of distances to the ridge.
Command line interfaces
Simple:
DinfDistUp dem (default folder suffixes used, default method = ave h, without threshold)
Specific folder names used:
DinfDistUp ‐ang demang ‐fel demfel ‐du demdu [‐m ave h] [‐thresh 0.5] [‐nc]
Note that two parameters need to follow ‐m, the first from ave, min, max to indicate the method
statistic, and the second from h, v, s, p to indicate the method type. The default method 'ave' and 'h'
are used if method is not specified.
angfile Input Dinf flow direction grids
felfile Input pit filled elevation grids
wgfile Input weight path grids
dufile Output Dinf rise to ridge grids
method Method to be used (Encoding is h = horizontal, v = vertical, p = Pythagoras, s = surface, ave =
average, min = minimum, and max = maximum)
thresh Used to consider only grid cells that contribute flow with a proportion greater than a user
specified threshold.
DinfAvalanche
In this function, avalanche runout zones are computed from input avalanche source zones. The rule for
identifying runout zones is that all locations downslope from a source zone are potentially affected up
until the energy from the avalanche is depleted. This depletion point is estimated when the slope
between the source and the affected area is less than a threshold angle (alpha). The alpha angle is
calculated using the distance from the highest point in the source zone to points within the potential
runout zone. Distance may be measured either along a straight line or along a flow path. This alpha‐
angle model is a simple model for avalanche or debris flow runout that is used in practice to evaluate
potential hazards (e.g. Schaerer, 1981; McClung and Schaerer, 1993; Iverson, 1997; Toyos et al., 2007).
Command line interfaces
Simple:
DinfAvalanche dem (default folder suffixes used, default path=1, default threshold=0.2, and
default angle=18)
Specific folder names used:
DinfAvalanche ‐ang demang ‐fel demfel ‐ass demass ‐rz demrz –dfs demdfs [‐thresh 0.2] [‐alpha
20] [‐direct]
angfile Input Dinf flow direction grids
felfile Input pit filled elevation grids
assfile Input avalanche source site grids
rzfile Output avalanche runout zone grids. The values output are actually the alpha angles from the
source zone to each grid cell. All will be greater than the input alpha threshold angle.
dfsfile Output distance down (path distance) grids
thresh Input proportion threshold
alpha Input angle threshold
Page | 27
directh Flag to indicate whether distance is measured along flow path (default) or as a straight line
from source to grid cell (if direct is given). Distances are horizontal distances in both cases.
SlopeAveDown
This function computes slope in a D8 downslope direction averaged over a user selected distance.
Command line interfaces
Simple:
SlopeAveDown dem (default folder suffixes used, default downslope distance taken as 50)
Specific folder names used:
SlopeAveDown ‐p dem ‐fel demfel ‐slpd demslpd [‐dn 50]
pfile Input D8 flow direction grids
felfile Input pit filled elevation grids
slpdfile Output D8 slope distance averaged grids
dn User selected downslope distance
References
Broscoe, A. J., (1959), "Quantitative analysis of longitudinal stream profiles of small watersheds," Office
of Naval Research, Project NR 389‐042, Technical Report No. 18, Department of Geology,
Columbia University, New York.
Garbrecht, J. and L. W. Martz, (1997), "The Assignment of Drainage Direction Over Flat Surfaces in Raster
Digital Elevation Models," Journal of Hydrology, 193: 204‐213.
Iverson, R. M., (1997), "The Physics of Debris Flows," Reviews of Geophysics, 35, No. 3(August 1997):
245‐296.
McClung, D. and P. Schaerer, (1993), The Avalanche Handbook, 2nd Edition, Mountaineers Books, 271 p.
Schaerer, P. A., (1981), "Avalanches," in Handbook of Snow, Edited by D. M. Gray and D. H. Male,
Pergamon press, Willowdale, Canada, p.776.
Toyos, G., D. Oramas Dorta, C. Oppenheimer, M. T. Pareschi, R. Sulpizio and G. Zanchetta, (2007), "GIS‐
assisted modelling for debris flow hazard assessment based on the events of May 1998 in the
area of Sarno, Southern Italy: Part I. Maximum run‐out," Earth Surface Processes and Landforms,
32(10): 1491‐1502, http://dx.doi.org/10.1002/esp.1472
Page | 28