Giter VIP home page Giter VIP logo

Comments (7)

chengzhuzhang avatar chengzhuzhang commented on August 12, 2024 1

@xylar I'm glad to report: your fix conda-forge/cdms2-feedstock#87 works, and thanks for adding a check for testing conda-forge/cdms2-feedstock#89.
With esmfy correctly imported by cdms, the regriding behavior gets back to normal.

from e3sm_diags.

chengzhuzhang avatar chengzhuzhang commented on August 12, 2024

After some troubleshooting, it ruled out change in cartopy as the cause. Looking at the intermediate files being saved, data already missing half after regridding. It suggests regriding with changes in cdms/esmf is the cause. I tried to roll back to older version/builds of cdms and esmf, but ran into numpy, alias deprecation problems. Pinning for old version is not ideal for coordinating with e3sm-unified. For a immediate solution, it might make sense to convert longitude from [-180, 180) to [0, 360) online or offline for input dateset being impacted to work around this problem.

from e3sm_diags.

chengzhuzhang avatar chengzhuzhang commented on August 12, 2024

Found an old cdms issue pointing out the same behavior.
CDAT/cdms#371
I'm following the approach suggested in this post to wrap the longitude with [0,360), since cdms somehow failed to do it upon open datasets.

from e3sm_diags.

chengzhuzhang avatar chengzhuzhang commented on August 12, 2024

The regriding step also produce warning as follows:

/global/cfs/cdirs/e3sm/zhang40/conda_envs/edv290_numpy/lib/python3.10/site-packages/cdms2/avariable.py:1289: Warning:
avariable.regrid: regridTool = 'esmf' but your version does not
seems to be built with esmf, will switch to regridTool = 'libcf'

  warnings.warn(message, Warning)

It seems cdms is not properly built with esmf. Not sure if this is relevant to the regriding issue here.

from e3sm_diags.

xylar avatar xylar commented on August 12, 2024

@chengzhuzhang, I'm going to see if conda-forge/cdms2-feedstock#87 fixes this. I patched the imports in cdms2 to hopefully bring in esmpy, since the package has been renamed since v8.4.0 from ESMF to esmpy.

from e3sm_diags.

xylar avatar xylar commented on August 12, 2024

@chengzhuzhang, could you add a test somewhere in E3SM diags where you test for ESMFRegrid? It could just be as simple as:

from regrid2 import ESMFRegrid

but you might want to have a try/except ImportError where you give an explanation about this meaning that an incompatible version of cdsm2 is installed that is not able to import ESMPy.

Such an error would tell us right away that there's a problem, rather than noticing it only when plots are half missing.

from e3sm_diags.

chengzhuzhang avatar chengzhuzhang commented on August 12, 2024

Great suggestion. I think it makes sense to add it as one of the CI/CD tests.

from e3sm_diags.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.