DESCRIPTION

r.catchment is a module that facilitates modeling "catchments" around point locations according to a walking cost function. The module is particularly aimed at "Site Catchment Analysis" for archaeology, but could be potentially useful in any number of appliations where delimiting an area based on walking-costs is desireable. Although defining a catchment based on a threshold in walking-costs (or time) can be undertaken using r.walk or r.cost alone, this addon module allows the user to enter a pre-determined square meterage (option area) for the resultant catchment, which is a different approach. This is useful for applications where the user wants to make a catchment of a particular size (e.g., certain number of square meters needed for farmed fields), and doesn't want to spend time via trial and error experimenting with different cost radii.

Additionally, this module allows the user to enter a slope threshold (option sigma), which will mask out areas of higher slope. This is useful for delimiting catchments that are of generally flat land (e.g., areas where agriculture are likely).

Important: The user must run g.region first to make sure that the region boundaries and the resolution match the input elevation map.

Options and flags:

r.catchment requires an input elevation map, elevation , and an input vector points map of starting locations, start_points. area is also requited, which is an integer value for the size of the desired catchment (in the map units of the defined location/region). The final required parameter is map_val , wich is the integer value to write to the areas defined as part of the catchment in the output map, buffer. The optional value, sigma is the slope threshold cut off value. Slopes above sigma will be masked out during the determination of the catchment configuration. There are two native flags for r.catchment. -c allows you to keep the interim cost surface maps made. -l allows you to show a list of the cost values in that cost map, along with the size of the catchments they delineate. All other flags and options are inherited from r.walk (see ther.walk help page for more information on these).

NOTES

The module will attempt to find the cost radius that defines an area close to the value of area, but em will likely slightly overestimate the catchement size. The module will display the actual area of the defined catchment in the Command Output. By default, r.catchment will create a friction map of value 0, which, when input into r.walk will yeild a cost surface based on walking times only. The user may optionally create a friction map, however, and, if used, r.walk will consider these costs this as well when determining the cost surface used to determine the catchment. The input vector points map can be manually digitized (with v.digit) over topographic or cultural features, or can be created as a series of random points (with r.random or v.random). In the case of multiple input points, the routine will attempt to equally divide the area (area) between all input points to determine catchments for each point. The total area of all these catchments will sum (close) to area. If two input points are close, their catchments may overlap. In this case, the routine will "meld" the two, and the melded catchment will still be of an area close to area. If truly overlapping catchments are desired, then the routine should be run independantly for each individual start point.

EXAMPLES

Delimit a catchment of 5,000,000 square meters around a single start point, ignoring areas of slope > 15 degrees:
r.catchment elevation=DEM10m start_points=site buffer=test_catchment 
sigma=15 area=5000000 map_val=1

SEE ALSO

r.walk, r.cost

AUTHOR

Isaac Ullah

Updated for GRASS 7, 23, Feb. 2015.

Last changed: $Date$