[GRASS-user] minimum basin size for output from r.terraflow

On the topic of watershed basin delineation...

In preparing a small demo for my labmates, I was asked about the best way to
delineate watershed basins at various scales with an algorithm like
r.terraflow. With r.watershed, it is possible to define a minimum basin size,
which can act as a scaling parameter. As a quick hack, I attempted to
replicate this by vectorizing the output from r.terraflow and then using
v.clean to remove basins smaller than some threshold. The results were
largely similar to the basins produced by r.watershed, but in some cases the
purely vector-based approach to "scaling" the basins resulted in questionable
output (not surprisingly).

So is there any logical way to define a minimum basin size for modules like
r.terraflow - or does that construct even make sense for such algorithms [1].

1. noting that the concept of a watershed basin actually occurs at all scales,
and is most likely fractal in nature.

Cheers,

--
Dylan Beaudette
Soils and Biogeochemistry Graduate Group
University of California at Davis
530.754.7341

Dylan Beaudette wrote:

On the topic of watershed basin delineation...

In preparing a small demo for my labmates, I was asked about the best
way to delineate watershed basins at various scales with an algorithm
like r.terraflow. With r.watershed, it is possible to define a
minimum basin size, which can act as a scaling parameter. As a quick
hack, I attempted to replicate this by vectorizing the output from
r.terraflow and then using v.clean to remove basins smaller than some
threshold. The results were largely similar to the basins produced by
r.watershed, but in some cases the purely vector-based approach to
"scaling" the basins resulted in questionable output (not
surprisingly).

So is there any logical way to define a minimum basin size for modules
like r.terraflow - or does that construct even make sense for such
algorithms [1].

1. noting that the concept of a watershed basin actually occurs at all
scales, and is most likely fractal in nature.

it is hierarchical, you have to disolve the correct boundary.

I too find this to be an interesting question (and have r.terraflow
watersheds waiting to be reduced).

idea:
Find center of small vector areas (use centroid) and apply r.drain to
see if they are connected, then reassign cat to larger area's cat and
"v.extract -d"?

r.flow ?
r.water.outlet ?
new raster module?

Hamish