SDR outputs showing null values in part of watershed

Hi everyone,

I am applying the SDR model in watersheds located in southeastern Brazil, specifically in the Serra da Mantiqueira region. These watersheds are mountainous, with predominantly native vegetation cover and relatively high slopes.

For the analysis, I used the ALOS PALSAR DEM (12.5 m resolution), based on recommendations that it performs better in steep and vegetated areas. The DEM was preprocessed (sink filling), and the watershed delineation was derived from this dataset.

However, when running the SDR model, I noticed that the outputs related to SDR (sed_export, sed_deposition, and avoided_export) present null or empty values in the southern portion of the watershed, which corresponds to a lower elevation area.

Looking into intermediate outputs:

  • The stream.tif layer appears consistent and correctly represents the drainage network.

  • However, the what_drains_to_stream.tif output shows values of 0 in this same region, indicating that these pixels are not contributing flow to any stream.

Given that this is a downslope area, I would expect it to contribute to the drainage network.

Has anyone encountered a similar issue or could suggest possible causes for this behavior? Could this be related to DEM preprocessing, flow direction (D8 vs MFD), or stream definition thresholds?

Any insights would be greatly appreciated.

Thank you!

Hi @isabelammartins , I’m not sure how to explain this issue, but it could help to see the results you are looking at. If you are running at least version 3.18.0, then a good way to share images of your results is by sharing the model report: Sharing InVEST Reports

Hi @dave

I’m using version 3.16.0, with TFA = 200 (after comparing with the hydrography), and the other parameters are set to default values. The watershed was delineated using the same DEM that is being used as input, but in a different software.

Some intermediate outputs caught my attention:

  • what_drains_to_stream.tif: shows a value of 0 in this region;

  • d_dn.tif: it seems that the “gap” starts in the d_dn calculation;

  • flow_direction.tif: shows a value of 7 in this region;

Could you help me understand what might be causing this?

sed_export_c1b1b_10.tif (198.8 KB)

d_dn_c1b1b_10.tif (281.1 KB)

Sorry, I forgot to attach the log file.

InVEST-sdr-log-2026-02-17–18_52_11.txt (20.8 KB)

Thanks for the images @isabelammartins . Looking at the basemap that shows the underlying topography, is it possible that those grey pixels actually do drain to the south rather than to the north? I think in order to get reasonable results from this model your input DEM needs to entirely cover the watershed that you wish to evaluate. From this image it’s hard to tell, but it looks like this may not be the case.

It is also possible that one of your other input layers has nodata over part of the watershed because all raster inputs are mutually masked so that the model only computes in the region where all pixels in all input rasters are non-nodata.

As always, it’s also a good idea to upgrade to the latest version. The report really can help identify these data issues more quickly.

Thank you for your response, @dave

I am using a DEM with a 1 km buffer around the watershed boundary. Is this buffer sufficient?
In the image, we can see that the clipped area starts at a hilltop.

According to the flow direction, pixels with value 7 drain to the southeast and therefore remain within the watershed, correct?

All other input layers are valid. I ran the same analysis using the NASADEM (30 m), and the results were complete, with no gaps like those observed with the ALOS PALSAR DEM.

Additionally, when using NASADEM, the flow direction is very similar, with differences only due to the change in resolution.

I performed a few tests using the ALOS PALSAR data (12.5 m):

  1. I ran the model with a lower TFA (100), and the area with gaps decreased. However, the resulting stream network showed some unusual flow paths.

In this situation, would it be appropriate to further decrease the TFA, or should I keep the TFA that best matches the observed stream network despite the gaps observed in the other results?

Another question: does the observed gap indicate that the watershed is hydrologically inconsistent?

  1. I ran the model with TFA = 200, but using the MFD algorithm. In this case, all pixels drained to a stream, and no gaps were observed.

It is important to highlight that in all tests, the aggregated, maximum, and minimum values were very similar.

I would appreciate any guidance on how to choose the most appropriate approach in this case.

Thank you.

Correct. D8 flow direction conventions encode the flow direction as::

 3 2 1
 4 x 0
 5 6 7

Based on your flow direction maps it does look like some pixels flow out of bounds before meeting a stream. That’s also what the what_drains_to_stream layer tells us. To me that indicates that the DEM does not cover the entirety of the watershed.

I think you probably want to choose the TFA value based on what generates the most realistic streams.

What do you think @swolny ?