Riparian buffer values issues because of NDR output streams wider than in reality

Hello InVEST team,

I’m currently working on two riparian buffer scenarios.
To make it simple the first one is my base line.
The second scenario is with some reforested riparian buffers which improve nutrient retention.
I’ve a shapefile of the riparian buffers of interest which I use to summarize the nutrient retention across the pixels falling inside of the polygon.
However my problem is that the NDR model`s raster layer output creates streams that are wider than in reality which has as a consequence to place some of my reforested riparian buffer inside the streams and to provide no estimates for these landcovers and pixels in the output.
Do you have an idea of how could I overcome this issue? i.e. ensuring the model estimates NDR for all terrestrial pixels up to the rivers edge (I already tried to increase the threshold flow accumulation parameter but it’s not accurate enough).

Thanks in advance for you answer! :slightly_smiling_face:


Hi @Olivier -

Yes, this is definitely a problem with how the water models currently create streams, and it’s specifically related to the Multiple Flow Direction algorithm used. On one hand, MFD may more realistically route water, but on the other hand it can create these wide streams that erase an important part of the landscape, giving NoData in the results, and causes problems for modeling riparian buffers.

We’ve had a lot of internal discussions about it, and personally I’d like to see an option for creating streams with either MFD or the standard D8 algorithm. D8 is limited by forcing all water to flow in one of 8 directions, but also tends to produce narrow streams that are more like what we expect, especially when each pixel might represent 10, 30 or 90 meters, and having those wide streams is just unrealistic (except perhaps in a flood situation). Another option would be for us to include a “drainage” layer in NDR like we do in SDR, which can be used as a workaround for forcing the model to use a stream layer that we define.

While we continue to work this out, you could try burning narrow streams into your DEM, which might cause NDR to create the narrow streams in its output. One quick and dirty way is to use the InVEST tool RouteDEM to create streams using the D8 algorithm, burn the D8 streams into your DEM, then use that burned DEM as input to NDR. I’ve had this help some times, but not others, since stream burning is generally messy and non-trivial to do well. Then you’d need to create your riparian buffers around the burned stream layer, and add them to the land use map.

If it’s not horribly incorrect, you could instead use the default NDR stream network (where the streams are too wide) as the basis for defining the riparian buffers. The problem there is that then you’re over-writing whatever land cover is along the streams in real life, which is incorrect and leads to problems of interpretation and utility.

I’d be interested to hear other people’s take on this…

~ Stacie


Thanks for your long answer @swolny

The D8 algorithm seems a good option indeed.

In my case, as you recommended I burned my DEM using QGIS.
I used the “OSM Standard” layer, then extracted the rivers network with the plugin “Quick OSM” and transformed it to a vector layer. Finally I used the tool “r.carve” (from GRASS toolbox) on my DEM with the rivers network vector layer. The result produced a DEM with deeper streams and when I used this burned_DEM for the NDR model it narrowed the rivers which made it possible to get values for most of my reforested riparian buffers :smiley:. (I might also use a “fill sinks” tool to be sure drainage is good).
There is a really good tutorial on YouTube to explain more in details what I’ve done (search for “Burning stream network into DEM layer in QGIS”) (I’m not sure I’m allowed to share links in here :slight_smile: )

Hope it helps others!


1 Like

Thanks @Olivier for sharing the method you used, and the QGIS tutorial. It’s interesting that it worked pretty well for you, I’m sure that it will be useful for others (and yes, you should be able to share links in forum posts).

~ Stacie

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.