Hydropower ufunc 'isfinite' not supported

@sk117815 posted the following, starting a new thread for it :
2020-12-21 12:30:18,173 utils.prepare_workspace(111) INFO Writing log messages to D:/InVEST_output\InVEST-Hydropower-Water-Yield-log-2020-12-21–12_30_18.txt
2020-12-21 12:30:18,178 model. logged_target(1626) Level 100 Starting model with parameters:
Arguments for InVEST natcap.invest.hydropower.hydropower_water_yield 3.8.9:
biophysical_table_path D:/InVEST_input/biophysical_table_gura.csv
depth_to_root_rest_layer_path D:/InVEST_input/soil_depth/soil_depth_mm.tif
do_scarcity_and_valuation False
eto_path D:/InVEST_input/et_dir/et_dir/et_1_2014.tif
lulc_path D:/InVEST_input/lulc/lulc/gaya_lulc.tif
n_workers -1
pawc_path D:/InVEST_input/pawc/pawc/pawc_01.tif
precipitation_path D:/InVEST_input/precip_dir/precip_dir/prec_01.tif
results_suffix z

seasonality_constant 3
sub_watersheds_path
watersheds_path D:/InVEST_input/wshd/watersheds.shp
workspace_dir D:/InVEST_output

2020-12-21 12:30:18,508 hydropower_water_yield.execute(269) INFO Validating arguments
2020-12-21 12:30:18,508 validation. wrapped_validate_func(912) DEBUG Using ARG_SPEC for validation
2020-12-21 12:30:18,508 validation. wrapped_validate_func(916) INFO Starting whole-model validation with ARGS_SPEC
2020-12-21 12:30:18,508 validation.timeout(626) INFO Starting file checking thread with timeout=5
2020-12-21 12:30:18,539 validation.timeout(638) INFO File checking thread completed.
2020-12-21 12:30:18,539 validation.validate(795) DEBUG Provided key do_scarcity_and_valuation does not exist in ARGS_SPEC
2020-12-21 12:30:18,539 validation.timeout(626) INFO Starting file checking thread with timeout=5
2020-12-21 12:30:18,592 validation.timeout(638) INFO File checking thread completed.
2020-12-21 12:30:18,592 validation.timeout(626) INFO Starting file checking thread with timeout=5
2020-12-21 12:30:18,592 validation.timeout(638) INFO File checking thread completed.
2020-12-21 12:30:18,592 validation.timeout(626) INFO Starting file checking thread with timeout=5
2020-12-21 12:30:18,608 validation.timeout(638) INFO File checking thread completed.
2020-12-21 12:30:18,608 validation.timeout(626) INFO Starting file checking thread with timeout=5
2020-12-21 12:30:18,608 validation.timeout(638) INFO File checking thread completed.
2020-12-21 12:30:18,608 validation.timeout(626) INFO Starting file checking thread with timeout=5
2020-12-21 12:30:18,608 validation.timeout(638) INFO File checking thread completed.
2020-12-21 12:30:18,608 validation.timeout(626) INFO Starting file checking thread with timeout=5
2020-12-21 12:30:18,623 validation.timeout(638) INFO File checking thread completed.
2020-12-21 12:30:18,623 validation.timeout(626) INFO Starting file checking thread with timeout=5
2020-12-21 12:30:18,623 validation.timeout(638) INFO File checking thread completed.
2020-12-21 12:30:18,646 validation. wrapped_validate_func(963) DEBUG Validation warnings: []
2020-12-21 12:30:20,008 geoprocessing.align_and_resize_raster_stack(752) INFO 1 of 5 aligned: eto_z
.tif
2020-12-21 12:30:20,595 geoprocessing.align_and_resize_raster_stack(752) INFO 2 of 5 aligned: precip_z
.tif
2020-12-21 12:30:21,171 geoprocessing.align_and_resize_raster_stack(752) INFO 3 of 5 aligned: depth_to_root_rest_layer_z
.tif
2020-12-21 12:30:22,175 geoprocessing.align_and_resize_raster_stack(752) INFO 4 of 5 aligned: pawc_z_.tif
2020-12-21 12:30:22,744 geoprocessing.align_and_resize_raster_stack(752) INFO 5 of 5 aligned: clipped_lulc_z_.tif
2020-12-21 12:30:22,744 geoprocessing.align_and_resize_raster_stack(754) INFO aligned all 5 rasters.
2020-12-21 12:30:22,998 hydropower_water_yield.execute(404) DEBUG bio_lucodes {2, 3, 4, 5, 6, 7, -1.0}
2020-12-21 12:30:23,000 hydropower_water_yield._check_missing_lucodes(904) INFO Checking that input tables have landcover codes for every value in the landcover map.
2020-12-21 12:30:23,508 hydropower_water_yield.execute(458) INFO Reclassifying temp_Kc raster
2020-12-21 12:30:23,515 geoprocessing.raster_calculator(375) INFO starting stats_worker
2020-12-21 12:30:23,517 geoprocessing.raster_calculator(381) INFO started stats_worker <Thread(Thread-1142, started daemon 7164)>
2020-12-21 12:30:24,114 geoprocessing.raster_calculator(454) INFO 100.0%% complete
2020-12-21 12:30:24,115 geoprocessing.raster_calculator(457) INFO signaling stats worker to terminate
2020-12-21 12:30:24,116 geoprocessing.raster_calculator(459) INFO Waiting for raster stats worker result.
2020-12-21 12:30:24,116 threading.run(870) DEBUG payload is None, terminating
2020-12-21 12:30:24,686 hydropower_water_yield.execute(470) INFO Reclassifying tmp_root raster
2020-12-21 12:30:24,693 geoprocessing.raster_calculator(375) INFO starting stats_worker
2020-12-21 12:30:24,694 geoprocessing.raster_calculator(381) INFO started stats_worker <Thread(Thread-1143, started daemon 10872)>
2020-12-21 12:30:25,282 geoprocessing.raster_calculator(454) INFO 100.0%% complete
2020-12-21 12:30:25,283 geoprocessing.raster_calculator(457) INFO signaling stats worker to terminate
2020-12-21 12:30:25,283 geoprocessing.raster_calculator(459) INFO Waiting for raster stats worker result.
2020-12-21 12:30:25,283 threading.run(870) DEBUG payload is None, terminating
2020-12-21 12:30:25,809 hydropower_water_yield.execute(484) INFO Reclassifying tmp_veg raster
2020-12-21 12:30:25,839 geoprocessing.raster_calculator(375) INFO starting stats_worker
2020-12-21 12:30:25,841 geoprocessing.raster_calculator(381) INFO started stats_worker <Thread(Thread-1144, started daemon 3428)>
2020-12-21 12:30:26,432 geoprocessing.raster_calculator(454) INFO 100.0%% complete
2020-12-21 12:30:26,433 geoprocessing.raster_calculator(457) INFO signaling stats worker to terminate
2020-12-21 12:30:26,433 geoprocessing.raster_calculator(459) INFO Waiting for raster stats worker result.
2020-12-21 12:30:26,433 threading.run(870) DEBUG payload is None, terminating
2020-12-21 12:30:26,909 hydropower_water_yield.execute(497) INFO Calculate PET from Ref Evap times Kc
2020-12-21 12:30:26,917 geoprocessing.raster_calculator(375) INFO starting stats_worker
2020-12-21 12:30:26,918 geoprocessing.raster_calculator(381) INFO started stats_worker <Thread(Thread-1145, started daemon 10120)>
2020-12-21 12:30:26,950 threading.run(870) DEBUG payload is None, terminating
2020-12-21 12:30:26,950 geoprocessing.raster_calculator(486) INFO Waiting for raster stats worker result.
2020-12-21 12:30:26,951 threading.run(870) WARNING No valid pixels were received, sending None.
2020-12-21 12:30:26,951 Task.add_task(731) ERROR Something went wrong when adding task calculate_pet (5), terminating taskgraph.
Traceback (most recent call last):
File “site-packages\taskgraph\Task.py”, line 697, in add_task
File “site-packages\taskgraph\Task.py”, line 1174, in _call
File “site-packages\pygeoprocessing\geoprocessing.py”, line 424, in raster_calculator
File “site-packages\natcap\invest\hydropower\hydropower_water_yield.py”, line 874, in pet_op
File “< array_function internals>”, line 6, in isclose
File “site-packages\numpy\core\numeric.py”, line 2288, in isclose
TypeError: ufunc ‘isfinite’ not supported for the input types, and the inputs could not be safely coerced to any supported types according to the casting rule ‘‘safe’’
2020-12-21 12:30:26,952 model._logged_target(1632) ERROR Exception while executing <function execute at 0x0F5F43D8>
Traceback (most recent call last):
File “site-packages\natcap\invest\ui\model.py”, line 1629, in _logged_target
File “site-packages\natcap\invest\hydropower\hydropower_water_yield.py”, line 507, in execute
File “site-packages\taskgraph\Task.py”, line 697, in add_task
File “site-packages\taskgraph\Task.py”, line 1174, in _call
File “site-packages\pygeoprocessing\geoprocessing.py”, line 424, in raster_calculator
File “site-packages\natcap\invest\hydropower\hydropower_water_yield.py”, line 874, in pet_op
File “< array_function internals>”, line 6, in isclose
File “site-packages\numpy\core\numeric.py”, line 2288, in isclose
TypeError: ufunc ‘isfinite’ not supported for the input types, and the inputs could not be safely coerced to any supported types according to the casting rule ‘‘safe’’
2020-12-21 12:30:26,953 model._logged_target(1635) INFO Execution finished
2020-12-21 12:30:26,959 utils.prepare_workspace(117) INFO Elapsed time: 8.78s
“I am getting this error” kindly help me out.

Hi @sk117815,

First of all, I recommend you use our latest release, 3.9.0. There was a bug in the Hydropower/Annual Water Yield model that we fixed in 3.9.0. But I think this is a different error…

It looks like your ET0 data isn’t being read in as a number. Are there any non-numeric characters in your evapotranspiration raster values? If you don’t mind sharing your data, I can debug this further. You can upload it here or email it to me: esoth @ stanford.edu