Seasonal Water Yield Not Working - No Output Files Generated, Previously Used Crop Pollination Successfully

Hi everyone,

I’m running into an issue with the InVEST Seasonal Water Yield model (version 3.14.3) on my Mac, and I’d really appreciate some help. Previously, I used the Crop Pollination model without any problems—it ran fine, generated log files, error files (if needed), and all expected outputs. But now, with Seasonal Water Yield, it’s failing early, showing an error, and not generating any files—not even logs or intermediate results. I’m not sure what’s going wrong or how to fix it.

Here’s what’s happening:

  • I set up all the input parameters (e.g., AOI, DEM, LULC raster, biophysical table, precipitation, etc.) and ran the model.
  • It starts but crashes almost immediately with an error (see below).
  • Unlike Crop Pollination, it doesn’t create a log file, workspace outputs, or intermediate results. The workspace folder stays empty.

What I’ve Tried:

  • Checked that all input files exist and paths are correct.

Questions:

  1. Why is Seasonal Water Yield not generating any files (logs, intermediates, etc.)
  2. Any ideas on how to troubleshoot this further?

Hi @sachinshukla , thanks for posting your question here.

Do you see the error? Are you able to share it with us here?

In the Workbench, please go to the “About > Report a Problem” menu and follow the instructions there to find the logfile for the Workbench and share that file here please.

Thank you,

main.log (277.9 KB)
Hi @dave So I went and followed the suggestion and navigated to ‘About > Report a Problem’ in the Workbench as you mentioned. I was able to pull up the logfile from there which should have the details on what’s going on. The program remains the same and I’m seeing an error pop up
main.log (277.9 KB)

@sachinshukla , thank you for reporting this problem and sharing your log. There was an error during the input data validation. This is the error:

[11:30:35.473] [undefined] 03/25/2025 11:30:35  natcap.invest.ui_server ERROR    Exception on /api/validate [POST]
Traceback (most recent call last):
  File "flask/app.py", line 1511, in wsgi_app
  File "flask/app.py", line 919, in full_dispatch_request
  File "flask_cors/extension.py", line 176, in wrapped_function
  File "flask/app.py", line 917, in full_dispatch_request
  File "flask/app.py", line 902, in dispatch_request
  File "natcap/invest/ui_server.py", line 105, in get_invest_validate
  File "natcap/invest/validation.py", line 1146, in _wrapped_validate_func
  File "natcap/invest/seasonal_water_yield/seasonal_water_yield.py", line 1421, in validate
  File "natcap/invest/validation.py", line 1070, in validate
  File "natcap/invest/validation.py", line 808, in check_spatial_overlap
  File "src/pygeoprocessing/geoprocessing_core.pyx", line 77, in pygeoprocessing.geoprocessing_core.gdal_use_exceptions.wrapper
  File "src/pygeoprocessing/geoprocessing_core.pyx", line 78, in pygeoprocessing.geoprocessing_core.gdal_use_exceptions.wrapper
  File "pygeoprocessing/geoprocessing.py", line 3594, in transform_bounding_box
  File "pygeoprocessing/geoprocessing.py", line 3574, in _transform_point
  File "osgeo/osr.py", line 2112, in TransformPoint
RuntimeError: Point outside of projection domain

I’m not sure which dataset cause the problem, but one of the spatial datasets could not be transformed into a global geographic coordinate system (WGS84 / EPSG 4326). It is strange that a point is “outside of the projection domain”, since the domain for 4326 is global. I would interrogate your input data in GIS and make sure they all have a well-defined and correct coordinate system.

If you figure out which dataset was causing the problem, could you share it with us here so that we can reproduce the problem? Or if you need help figuring it out, you may share all of your input data with us here.

In the future, we will fix this bug so that the Workbench does not crash and gives a more helpful feedback message in this case.