SDR results all '0'

Hello everybody,

I have managed to run an SDR model successfully but all of the results show up as 0. I have looked through all the datasets and I don’t see where this error would be coming from. I checked for past topics on with the same issue, but wasn’t able to find anything. I can only think that there is a problem with some of the attributes of the datasets. Any suggestions would be great!

I have attached my input and results files, and the log. In case replication makes finding a solution easier.
https://drive.google.com/drive/folders/12Y5qBy65qXosDHiNQHEYCCt5F_3UUBaa
InVEST-Sediment-Delivery-Ratio-log-2022-03-07–15_04_44.txt (274.8 KB)

Hi @CTXBrabbs , these data appear to have the same problem with the biophysical table that we discussed over here:

https://community.naturalcapitalproject.org/t/sdr-typeerror-isfinite/2491/10

Hi @dave,

My mistake, I forgot to update the google drive link, I have put in the new data that was used to run the model resulting in ‘0s’.

Hi @CTXBrabbs , thanks for updating the data.

The results are not actually all 0, but a default rendering in GIS might make it look that way because there are some extremely high/low values in the output rasters that skew the distribution and make it difficult to apply a colormap that shows the variation in the values.

One reason for this might be the fact that the input rasters do not have a nodata value defined. For example, if I look at the DEM, all the black areas around the outside should be nodata, but they have a value of 0, which is a valid elevation value, but probably not the true elevation in those areas. Defining the nodata value for each of your raster inputs may the help avoid the extremely high/low outlier values in the output rasters and make it easier to see the patterns in the valid data. Please give it a try.

1 Like

Hi @dave, sorry for not replying, I have been ill.

I have made new exports of the data with a NoData value defined for each input. Either I am not reading the outputs correctly or the issue is still persisting. I looked at the layer stats and they still don’t show any other pixel values apart from just 0s or just 1s.
I needed to find a workaround as there were a lot of pixels in the area of interest that had the same value as the area outside, but it shouldn’t have an effect on the end result.

The google drive has been updated with the new inputs and logs.

Hi @CTXBrabbs,
I ran the model with your data and my results are not all 0, but a lot of them are. For example, all the orange pixels in this image have a USLE value of 0.

This is happening because in your biophysical table, the P factor is 0 for most classes. Because USLE = R * K * LS * C * P, your USLE is 0 anywhere P is 0. Those 0’s propagate to the other outputs that depend on USLE.

A P value of 0 implies that no soil is lost at all, which is usually not realistic. I’m assuming you mean to indicate that there are no erosion control practices in those landcover classes. In that case, the correct P value is 1. Since it’s multiplied not added, P=1 has no effect on the USLE, representing a lack of support practices. I hope that helps!

2 Likes

Hi @esoth

I took your advice and change the P values to 1. The model ran successfully, I have more interesting results the green areas are 0. I feel there is still some work still to be done as they don’t show any of the expected results based on previous research in the area.
I think I was previously also having issues with the disk space on my PC as the files were not being overwritten when I would run a new model.
Just out of curiosity, what Flow Accumulation Threshold value did you use? (I am currently calculating more accurate ones, as I used a standard value)

Thank you for your help!

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