[GRASS-user] r.stream.basins error

Jarosław Jasiewicz jarekj at amu.edu.pl
Tue Oct 12 07:20:13 EDT 2010


Francesco Mirabella pisze:
> Hi,
> more detailes are these,  I can not reproduce it on speafish,
>
> Grass 6.4 rc6 compiled on debian testing
> The dem is the srtm 90 m dem, cut on an area of 12064631712 Square 
> meters (1206463 hectars).
> The region was set to the dem raster, I provided a minimum flow 
> accumulation of 100 to get a "reasonable" river network.
> Hope this can help
>
> Francesco
>
> J
It looks very strange:

if your 90 m srtm has 12064631712 m2 it means it has more or less 
1.500.000 number of cells (depending on latitude). It also means that it 
is more or less 1250x1250 cells DEM. If you have used 100 cells 
accumulation threshold you shouldn't receive such dense network with 
7500 streams. With DEM of such size and such threshold expected number 
of streams is about 1000-2000.

However if you created 7500 network on such small dem it shouldn't work 
indeed.
r.stream.basins is not prepared for calculation of direct basins (half 
basins) it it rather expanded version of r.water.outlet. If you however 
need direct basins for such dense network you can do it "hacking" source 
code.
find this fragment of code:
(catchment.c, line 24)

 int out_max = ncols + nrows;

and change it into this:

 int out_max = (ncols + nrows)*10;

and recompile program again.

If this is the reason (however values you wrote are not consistent) I 
will not change the source code because as I wrote it is not prepared 
for that what you're try to do

hth
Jarek


More information about the grass-user mailing list