Skip to content

CPU dispatcher error during run of EFAS subset #205

@StavrosChlorokostas

Description

@StavrosChlorokostas

Hello dear devs,

I have attempted to run a LISFLOOD instance using meteorological data sourced from ICON-EU model and static data sourced from the EFAS ftp. The EFAS static data have been subset over the greek domain using an xarray.where() function. The implemented workflow uses the area mask ncdf as a template to subset and resample the meteorological inputs, runs them successfully through LISVAP and then attempts to run LISFLOOD.

However once LISFLOOD starts solving the first day of the initialization run, it produces the error below:

LisfloodPy  4.3.1   23/01/2024
 
Water balance and flood simulation model for large catchments
 
(C) Institute for Environment and Sustainability
    Joint Research Centre of the European Commission
    TP122, I-21020 Ispra (Va), Italy
 
 
========================== LISFLOOD Simulation Information and Setting =============================
        [X] LISFLOOD is used in the Deterministic
        [X] INITIALISATION RUN
        [X] The simulation output as specified in the settings file can be found in /mnt/c/users/chlorokostas/downloads/Flood_Risk/lisflood-code/axis_EFAS/outputs
        [X] Activated modules: InitLisflood,SplitRouting,TransientWaterDemandChange,drainedIrrigation,gridSizeUserDefined,openwaterevapo,riceIrrigation,useWaterDemandAveYear,wateruse,wateruseRegion
        [X] Report options: reportedmaps
 
 
Start Step - End Step:  1  -  3836
Start Date - End Date:  2015-01-02 00:00:00  -  2025-07-03 00:00:00
1 - 02/01/2015 00:00ZeroDivisionError: division by zero
 
The above exception was the direct cause of the following exception:
 
Traceback (most recent call last):
  File "lisf1.py", line 34, in <module>
    sys.exit(main())
  File "/mnt/c/users/chlorokostas/downloads/Flood_Risk/lisflood-code/src/lisflood/main.py", line 226, in main
    lisfloodexe(lissettings)
  File "/mnt/c/users/chlorokostas/downloads/Flood_Risk/lisflood-code/src/lisflood/main.py", line 157, in lisfloodexe
    model_to_run.run()
  File "/mnt/c/users/chlorokostas/downloads/Flood_Risk/lisflood-code/src/lisflood/global_modules/zusatz.py", line 147, in run
    self._runDynamic()
  File "/home/chlorokostas/miniconda3/envs/lisflood-efas/lib/python3.7/site-packages/pcraster/framework/frameworkBase.py", line 371, in _runDynamic
    self._userModel().dynamic()
  File "/mnt/c/users/chlorokostas/downloads/Flood_Risk/lisflood-code/src/lisflood/Lisflood_dynamic.py", line 123, in dynamic
    self.soilloop_module.dynamic_soil()
  File "/mnt/c/users/chlorokostas/downloads/Flood_Risk/lisflood-code/src/lisflood/hydrological_modules/soilloop.py", line 665, in dynamic_soil
    self.var.UZOutflow.values, self.var.UZ.values, self.var.GwPercUZLZ.values)
SystemError: CPUDispatcher(<function soilColumnsWaterBalance at 0x79025af1a3b0>) returned a result with an error set

Googling the error the only suggestion I can find is that it might be a problem with numba installation, however, the installation and setup of the conda environment has been done according to the docs and the same environment seems to be working with a different dataset and for the lisflood built-in tests.

I also tried tracing the error and figure out of the ZeroDivisionError is related with no success. Keep in mind again that I didn't change any of the Lisflood internal code and that the same installation runs for a different use-case I've built from scratch for 1km resolution (same bounds)

** Edit: the system I'm using is WSL2, conda environment is running python version 3.7.2**

Literally any insight will be greately appreciated!

Kind regards,
Stavros

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions