[GRASS-user] r.basins.fill usage

Achim Kisseler ak7 at jupiter.uni-freiburg.de
Fri Oct 16 06:08:19 EDT 2009


> Based on this excerpt from the manual, it seems the main
> external/perimeter watershed boundary, as well as the internal ridges
> need inputted?  "The raster map layer depicting ridges should include
> the ridge which defines the perimeter of the watershed. The coded
> stream network can be generated as part of the r.watershed program,
> but the map layer of ridges will need to be created by hand"
> 
> My question is really about the need to manually digitize ridges
> inside the watershed boundary delineated by r.watershed.  As opposed
> to running r.watershed with a smaller threshold to get these smaller
> basin delineations within a given study area.
> 
> If one has to manually digitize the internal ridges in a watershed, I
> wondered what the point of the module was.  It obviously has
> application, but it seems I am missing something obvious.
> 
> Hope that is more clear.

Now its much clearer to me. Thanks.

In my opinion the description ao r.basins.fill is now very detailed. I
don't really understand it. So maybe someone else can help and maybe we
could find out and enhance the description:


I think this one:
"r.basins.fill generates a raster map layer depicting subbasins, based
on input raster map layers for the coded stream network (where each
channel segment has been "coded" with a unique category value).."
is clear.
Input is: raster map X from "r.watershed stream=X"

Not clear to me is:
"...and for the ridges within a given watershed."
which is explained as:
"The raster map layer depicting ridges should include the ridge which
defines the perimeter of the watershed."
What should the parameter mean? How should that be stored in a raster-map?
So try out:
-> take the stream-network and run r.mapcalc:
 r.mapcalc "perimeter=if(X,5,null)"
Resulting map is a rastermap with value 5, where stream-network is not
null. The five is raster-cells or map units or what else?
-> run r.basins.fill with that and see what happens.

I guess: from each network-segment the subbasin is created which has a
minimum distance of 5 (cells?) to the stream. So its something like a
buffer.

...in contrast to:
"...but the map layer of ridges will need to be created by hand (for
example, through digitizing done in v.digit)"
=> the ridges-map here is a vector-file!


Achim


PS:
--%<--
DESCRIPTION
r.basins.fill generates a raster map layer depicting subbasins, based on
input raster map layers for the coded stream network (where each channel
segment has been "coded" with a unique category value) and for the
ridges within a given watershed. The raster map layer depicting ridges
should include the ridge which defines the perimeter of the watershed.
The coded stream network can be generated as part of the r.watershed
program, but the map layer of ridges will need to be created by hand
(for example, through digitizing done in v.digit).

The resulting output raster map layer will code the subbasins with
category values matching those of the channel segments passing through
them. A user-supplied number of passes through the data is made in an
attempt to fill in these subbasins. If the resulting map layer from this
program appears to have holes within a subbasin, the program should be
rerun with a higher number of passes.
--%<--


More information about the grass-user mailing list