-
Notifications
You must be signed in to change notification settings - Fork 61
Description
Hello dear devs,
I have generated a two use-cases for the Greek domain, in 90m and 1km resolutions respectively expressed in lat/lon degrees. The Static input maps have been meticulously checked to have matching structure, same amount of masked values, values within the value ranges etc.
When attempting to run my first initialization test, I get an "GwLoss.nc has less valid pixels than area or ldd" error. Even though when manually checking through my files, both GwLoss and area and ldd ncdf files have exactly the same amount of nan pixels - spatially the same aswell.
Trying to traceback the error by exploring the outputs of each internal step in the Lisflood source code, I arrived at a dead-end at the 'compressArray()' function located in the app1.py module. By exploring the output of the first line of the function, I've noticed that the "MaskInfo.isinstance()" method returns a mask that completely ignores the input area.nc. More specifically, pixels that have a value equal to NaN in the area.nc should be marked as TRUE in the MaskInfo.info.mask array (that's what happens in the Mekong use case). However, in my case, the entire MaskInfo.info.mask is FALSE values, leading to the above error.
Inspecting the MaskInfo() class inside settings.py lead me nowhere since i cant trace where and if the code is referencing my input area.nc file correctly.
Can you help me understand what's wrong here? Why exactly is MaskInfo.isinstance() initializing a mask full of false values in my case and not in the Mekong case?
EDIT: Added screenshot of full traceback along with a print of the maskinfo.info.mask array values. expected area array values in second screenshot.
error traceback:

expected array values from the boolean mask:
