Opened 9 years ago

Last modified 5 years ago

#2719 closed defect

r.watershed + D8 (unexpected results) — at Initial Version

Reported by: 180875 Owned by: grass-dev@…
Priority: normal Milestone: 7.0.7
Component: Raster Version: svn-trunk
Keywords: r.watershed Cc: Jörg, Robl
CPU: x86-64 Platform: Linux

Description

Dear GRASS Gurus,

During the last days I've discovered a strange behaviour of r.watershed and D8. The used DEM is the result from a landscape evolution model and there are no depressions. I cannot use MFD as the D8-FlowDirections input data of a variety of tools I’ve written during the last years.

I got obviously wrong values for the flow accumulation of r.watershed and D8. The number of cells in the Flow Accumulation grid at the outlet point was significantly smaller than the area of the analyzed catchment (spatial resolution in north south and east west direction is 1) also computed with GRASS using r.water.outlet and a conversion to Vector (Area). I checked Flow Accumulation at the the outlet with an alternative code of a colleague and the contributing drainage area was exactly the value of the catchment size computed with r.water.outlet.

I further found some deviations in the flow direction grid. In some cases the flow routing leads to the lowest neighbouring cell which however might not be the steepest decent. r.watershed chooses sometimes a diagonal flow direction while the local channel gradient would be greater in horizontal direction. I started some test runs with very simple geometries. I've defined a ramp with r.mapcalc that dips in north direction and I expected that this will also be shown by the flow direction of r.watershed. However, this is not the case. The synthetic DEM features a watershed!!! See attachment. It seems that r.watershed fills the region (without need). This strange behavior disappears by applying the "multiple flow direction" algorithm.

I have tested with the latest versions grass70 , grass71 and grass645. Here is a test simple test case (grass71) that documents the misbehavior of r.watershed and D8. g.region w=0 e=1000 s=0 n=1000 res=1 -p r.mapcalc "DEM = 1000 - y()" r.watershed -s elevation=DEM@PERMANENT accumulation=ACC drainage=DIR

Change History (1)

by 180875, 9 years ago

Attachment: acc.png added

Flow Accumulation of the case (ramp)

Note: See TracTickets for help on using tickets.