JiaweiZhuang / xESMF

Universal Regridder for Geospatial Data
http://xesmf.readthedocs.io/
MIT License
269 stars 49 forks source link

xESMF error after 12+ hour script run in downscaling grid/upsampling data #126

Open jwynnsmith opened 2 years ago

jwynnsmith commented 2 years ago

I am working with xesmf downscale a grid and upsample high resolution GLM data (5424 x 5424) to a global climate model grid which is 1.25 degree lon x 1 degree lat.

After forming a netcdf file of an xarray data array I used the commands as instructed for curvilinear grids on this page: https://xesmf.readthedocs.io/en/latest/notebooks/Curvilinear_grid.html

Here are the commands:

ds_out = xe.util.grid_global(1, 1.25)

regridder = xe.Regridder(ds, ds_out, "bilinear", periodic=True) glm_ff_downscale = regridder(glm_ff) After a 12+ hour run of the python script, I obtained this error:

Traceback (most recent call last): File "lat_lon_xesmf2.py", line 60, in regridder = xe.Regridder(ds, ds_out, "bilinear") File "/app/spack/v0.15/linux-rhel7-x86_64/gcc-4.8.5/python/3.7.7-d6cyi6ophaei6arnmzya2kn6yumye2yl/lib/python3.7/site-packages/xesmf/frontend.py", line 772, in init super().init(grid_in, grid_out, method, input_dims=input_dims, kwargs) File "/app/spack/v0.15/linux-rhel7-x86_64/gcc-4.8.5/python/3.7.7-d6cyi6ophaei6arnmzya2kn6yumye2yl/lib/python3.7/site-packages/xesmf/frontend.py", line 315, in init weights = self._compute_weights() # Dictionary of weights File "/app/spack/v0.15/linux-rhel7-x86_64/gcc-4.8.5/python/3.7.7-d6cyi6ophaei6arnmzya2kn6yumye2yl/lib/python3.7/site-packages/xesmf/frontend.py", line 375, in _compute_weights ignore_degenerate=self.ignore_degenerate, File "/app/spack/v0.15/linux-rhel7-x86_64/gcc-4.8.5/python/3.7.7-d6cyi6ophaei6arnmzya2kn6yumye2yl/lib/python3.7/site-packages/xesmf/backend.py", line 481, in esmf_regrid_build regrid = ESMF.Regrid(sourcefield, destfield, kwargs) File "/app/spack/v0.15/linux-rhel7-x86_64/gcc-4.8.5/python/3.7.7-d6cyi6ophaei6arnmzya2kn6yumye2yl/lib/python3.7/site-packages/ESMF/util/decorators.py", line 64, in new_func return func(*args, *kwargs) File "/app/spack/v0.15/linux-rhel7-x86_64/gcc-4.8.5/python/3.7.7-d6cyi6ophaei6arnmzya2kn6yumye2yl/lib/python3.7/site-packages/ESMF/api/regrid.py", line 185, in init dstFracField=dst_frac_field File "/app/spack/v0.15/linux-rhel7-x86_64/gcc-4.8.5/python/3.7.7-d6cyi6ophaei6arnmzya2kn6yumye2yl/lib/python3.7/site-packages/ESMF/interface/cbindings.py", line 2068, in ESMP_FieldRegridStore handle_esmf_error(rc, 'ESMC_FieldRegridStore') File "/app/spack/v0.15/linux-rhel7-x86_64/gcc-4.8.5/python/3.7.7-d6cyi6ophaei6arnmzya2kn6yumye2yl/lib/python3.7/site-packages/ESMF/interface/cbindings.py", line 26, in handle_esmf_error raise ValueError(msg) ValueError: ESMC_FieldRegridStore failed with rc = 506. Please check the log files (named "ESMF_LogFile").


I looked in the error log file listed above and did not know what to do with the message listed below:20220208 021505.857 ERROR PET0 ESMF_Regrid.F90:366 ESMF_RegridStore Invalid argument - Internal subroutine call returned Error 20220208 021507.897 ERROR PET0 ESMF_FieldRegrid.F90:1415 ESMF_FieldRegridStoreNX Invalid argument - Internal subroutine call returned Error 20220208 021508.077 ERROR PET0 ESMF_Field_C.F90:1130 f_esmf_regridstore Invalid argument - Internal subroutine call returned Error 20220208 021543.915 INFO PET0 Finalizing ESMF

Any help in the interpretation or way forward of this error will be greatly appreciated. I have also tried other Python and unix regridding tools like xarray coarsen, pyresample, cdo, nctoolkit, block_reduce in skimage all either fail or do not give quite the result that I need.

Thanks Jonathan

nicrie commented 2 years ago

same error message here when running

regridder = xe.Regridder(ds, ds_out, "bilinear")

where ds is a dask Dataset

raphaeldussin commented 1 year ago

This version of the package is no longer maintained. Would you mind moving your issue to https://github.com/pangeo-data/xESMF?