Also known as
Model type Tool
Model part of larger framework
Note on status model
Date note status model
Incorporated models or components:
Spatial dimensions 2D
Spatial extent Watershed-Scale
Model domain Terrestrial, Hydrology
One-line model description This python code can be used to find knickpoints and extract information about streams, it utilizes built-in functions of ArcGIS.
Extended model description This is a tool that I created to help find knickpoints based on the curvature of a landscape. It provides information about a stream including, knickpoint locations, Elevation/distance that can be used to create longitudinal profiles, XYvalues of all the cells in a stream path, etc. The tool uses built-in tools for ArcGIS 10.x (so you must run this on a machine with ArcGIS 10.x installed), but it is written in python. I used it with a 1m LiDAR DEM, so I'm not totally sure how well it will pick out knickpoints on coarser gridded DEMs.


Name Francis Rengers
Type of contact Model developer
Institute / Organization University of Colorado
Postal address 1 2200 Colorado Ave.
Postal address 2 UCB 399
Town / City Boulder
Postal code 80309
State Colorado
Country United States
Email address

Supported platforms
Mac OS, Windows
Other platform
Programming language


Other program language
Code optimized Single Processor
Multiple processors implemented
Nr of distributed processors
Nr of shared processors
Start year development 2012
Does model development still take place? No
If above answer is no, provide end year model development 2012
Code development status As is, no updates are provided
When did you indicate the 'code development status'? 2020
Model availability As code
Source code availability
(Or provide future intension)
Through CSDMS repository
Source web address
Source csdms web address
Program license type GPL v2
Program license type other
Memory requirements
Typical run time

Describe input parameters You need a DEM, a watershed outline (shapefile), and a point shapefile identifying the top of the streams you are interested in. You also need to input a curvature threshold value and a drainage area threshold value. The curvature threshold is the key to identifying knickpoints (if it is too low you will not see very many knicks, and if it is too high you will identify too many). The drainage area threshold is used to exclude knickpoints that are not in the main channel you are interested in.
Input format
Other input format ArcGIS shapefile and Raster
Describe output parameters
Output format
Other output format Python list
Pre-processing software needed? Yes
Describe pre-processing software
Post-processing software needed? No
Describe post-processing software
Visualization software needed? No
If above answer is yes
Other visualization software

Describe processes represented by the model This tool is used to identify knickpoints using a drainage area threshold and a curvature threshold value
Describe key physical parameters and equations
Describe length scale and resolution constraints This code currently only works on a single watershed.
Describe time scale and resolution constraints
Describe any numerical limitations and issues

Describe available calibration data sets
Upload calibration data sets if available:
Describe available test data sets
Upload test data sets if available:
Describe ideal data for testing

Do you have current or future plans for collaborating with other researchers? No
Is there a manual available? No
Upload manual if available:
Model website if any
Model forum / discussion board

This part will be filled out by CSDMS staff

OpenMI compliant No but possible
BMI compliant No but possible
WMT component No but possible
PyMT component
Is this a data component
Can be coupled with:
Model info
Nr. of publications: --
Total citations: 0
h-index: --"--" is not a number.
m-quotient: 0
Qrcode GISKnickFinder.png
Link to this page




Nr. of publications: --
Total citations: 0
h-index: --"--" is not a number.
m-quotient: 0

See more publications of GISKnickFinder



Input Files

Output Files