Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problems to remap certain CORDEX, CMIP5/6 datasets provided to C3S #341

Open
sol1105 opened this issue Aug 14, 2024 · 0 comments
Open

Problems to remap certain CORDEX, CMIP5/6 datasets provided to C3S #341

sol1105 opened this issue Aug 14, 2024 · 0 comments

Comments

@sol1105
Copy link
Contributor

sol1105 commented Aug 14, 2024

  • clisops version: latest
  • Python version:
  • Operating System:

Description

There are issues when regridding certain datasets of the data collections

  • C3S-CMIP6
  • C3S-CMIP5
  • C3S-CORDEX

These encompass:

  • Some datasets include unmasked missing values in the latitude and longitude coordinate arrays
  • Some datasets include erroneous / CF uncompliant metadata (eg. standard_name longitude for the grid_longitudeand longitude variables - cf_xarray uses units, long_name and standard_name to identify lat/lon coordinate variables)
  • There is an issue with the detection of degenerated cells in the clisops.core.regrid.Grid class:
    • Not all cells collapsing to lines are detected
    • ESMF additionally considers "smashed" cells as degenerate, which are quadrilateral cells where the opposite bounds are close to each other
  • There is an issue with adjusting the longitude frame for datasets with NaNs in the longitude array
  • Some datasets have invalid bounds (eg. vertices with dimensionality of 2 instead of 4)

What I did

This is just a log of the problems.
Generally, I tried:

import xarray as xr
import clisops.core as clore

ds=xr.open_dataset("some_dataset")
g=clore.Grid(ds=ds)
  • c3s-cmip5/output1/BCC/bcc-csm1-1/rcp85/mon/ocean/Omon/r1i1p1/zos/v20120705
    -> failed because: rlat and lat identified as latitude
  • cmip5/output1/BCC/bcc-csm1-1/decadal1991/mon/ocean/Omon/r3i1p1/v20121026
    -> failed because: rlat and lat identified as latitude
  • cmip5/output1/LASG-CESS/FGOALS-g2/rcp85/mon/ocean/Omon/r1i1p1/v2/thetao
    -> failed because of time.calendar and time.units ("noleap" "days since 0001-01")
    • for this, the time.units have to be corrected in the metadata (xarraythrows a ValueError upon opening the file), so out of scope
  • CMIP6/HighResMIP/BCC/BCC-CSM2-HR/hist-1950/r1i1p1f1/Omon/tos/gn/v20200922
    -> failed because lat and latitude are identified as latitude
  • CMIP6/C4MIP/BCC/BCC-CSM2-MR/1pctCO2-rad/r1i1p1f1/Omon/pbo/gn/v20190514
    -> failed because lat and latitude are identified as latitude
  • CMIP6/AerChemMIP/BCC/BCC-ESM1/ssp370/r1i1p1f1/Omon/pbo/gn/v20190624
    -> failed because lat and latitude are identified as latitude
  • CMIP6/HighResMIP/NCAR/CESM1-CAM5-SE-HR/control-1950/r1i1p1f1/Omon/tos/gn/v20200724
    -> failed because extent ranges from [-1, 359.9] (legal is [-180,360] but max - min may not exceed 360 degree plus grace
    • will have to see if (x)ESMF accepts this with an extent >360 degrees
  • CMIP6/CMIP/NCAR/CESM2-FV2/1pctCO2/r1i1p1f1/Omon/intpn2/gn/v20200310
    -> failed because of unmasked missing values in the longitude and latitude arrays (no _FillValue / missing_value attribute)
  • CMIP6/OMIP/NOAA-GFDL/GFDL-OM4p5B/omip1/r1i1p1f1/Omon/volcello/gn/v20180701
    -> failed because extent -299.9143 to 1e+20 (unmasked missing values - no _FillValue / missing_value attribute)
  • c3s-cordex/output/ARC-44/BCCR/ECMWF-ERAINT/evaluation/r1i1p1/BCCR-WRF331/v1/day/tas/v20200915
    -> failed because vertices have only 2 vertices instead of 4: lat_bnds(rlat, rlon, bnds) with bnds=2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant