Skip to content

Releases: xarray-contrib/xarray-regrid

v0.4.0

26 Sep 12:56
0bd64aa
Compare
Choose a tag to compare

With xarray-regrid it is possible to regrid between two rectilinear grids. The following methods are supported:

  • Linear
  • Nearest-neighbor
  • Conservative
  • Cubic
  • "Most common value", as well as other zonal statistics (e.g., variance or median).

All regridding methods can operate lazily on Dask arrays.


Release 0.4.0 comes with the following changes and additions:

Changed:

  • the "most common" routine has been overhauled, thanks to @dcherian. It is now much more efficient, and can operate fully lazily on dask arrays. Users do need to provide the expected groups (i.e., unique labels in the data), and the regridder is only available for xr.DataArray currently (#46).
  • you can now use None as input to the time_dim kwarg in the regridding methods to force regridding over the time dimension (as long as it's numeric) (#46).
  • Performance of the conservative method has been improved by simultaneously aggregating over all regridding dimensions. Conservative regridding now also produces outputs with the same grid chunks as the inputs, unless explicit chunksizes are passed via the output_chunks argument. (#51).

Added:

  • .regrid.stat for reducing datasets using statistical methods such as the variance or median (#46).
  • a "least common" routine (i.e. anti-mode), which is the inverse of the most common value (#46).
  • If latitude/longitude coordinates are detected and the domain is global, apply automatic padding at the boundaries, which gives behavior more consistent with common tools like ESMF and CDO (#45).
  • Conservative regridding weights are converted to sparse matrices if the optional sparse package is installed, which improves compute and memory performance in most cases (#49).

v0.3.0

05 Sep 06:30
8bdc636
Compare
Choose a tag to compare

New contributors:

Fixed:

  • conservative regridding now can be constructed fully lazily (#39).

Added:

  • documentation for the package, including readthedocs integration (#40).
  • better handling of NaNs to the conservative regridding routine, with a nan_threshold keyword argument. For more information see the notebooks on the documentation (#39 & #41).
  • create_regridding_dataset as a method of the xarray_regrid.Grid dataclass (#41).

v0.2.3

29 Feb 13:53
0605dbb
Compare
Choose a tag to compare

New contributors:

Fixed:

  • Ensure all attributes are kept upon regridding (dataset, variable and coordinate attrs) (#27).
  • The target grid can now have coordinates sorted in decending order, instead of the regridding failing (#29).
  • Regridding to larger grid now result in NaNs at locations outside of starting data grid (#33).

Changed:

  • Moved to the Ruff formatter, instead of black (#27).

v0.2.2

24 Nov 09:34
c7009b3
Compare
Choose a tag to compare

Added:

  • CITATION.cff file for Zenodo integration.

v0.2.1

05 Oct 10:54
Compare
Choose a tag to compare

Fixed:

  • Datasets containing NaN values can now be regridded using the conservative method. This previously produced only NaN values.

v0.2.0

02 Oct 07:38
Compare
Choose a tag to compare

Added:

  • xarray DataArrays are now supported
  • Conservative regridding method, along with a benchmark notebook.
  • A "most common value" regridding method, along with a demo notebook.

Changed:

  • The API has changed. Regridding is now done with xr.Dataset.regrid.method().
    • E.g. xr.Dataset.regrid.linear()

v0.1.0

17 Aug 11:36
Compare
Choose a tag to compare

First release of xarray-regrid, containing:

  • the implementation of linear, nearest-neighbor and cubic regridding.
  • benchmarks against CDO and xESMF for linear and nearest-neighbor.