Skip to content

ocean-eddy-cpt/gcm-filters

Repository files navigation

GCM Filters

Tests codecov pre-commit Documentation Status Conda Version PyPI version Downloads DOI

GCM-Filters: Diffusion-based Spatial Filtering of Gridded Data

Description

GCM-Filters is a python package that performs spatial filtering analysis in a flexible and efficient way. The GCM-Filters algorithm applies a discrete Laplacian to smooth a field through an iterative process that resembles diffusion (Grooms et al., 2021). The package can be used for either gridded observational data or gridded data that is produced by General Circulation Models (GCMs) of ocean, weather, and climate. Such GCM data come on complex curvilinear grids, whose geometry is respected by the GCM-Filters Laplacians. Through integration with dask, GCM-Filters enables parallel, out-of-core filter analysis on both CPUs and GPUs.

Installation

GCM-Filters can be installed using conda:

conda install -c conda-forge gcm_filters

GCM-Filters can also be installed with pip:

pip install gcm_filters

Getting Started

To learn how to use GCM-Filters for your data, visit the GCM-Filters documentation.

Binder Demo

Click the button below to run an interactive demo of GCM-Filters in Binder:

badge

Get in touch

Report bugs, suggest features or view the source code on GitHub.

License and copyright

GCM-Filters is licensed under version 3 of the Gnu Lesser General Public License.

Development occurs on GitHub at https://github.com/ocean-eddy-cpt/gcm-filters.

How to cite GCM-Filters

If you are using GCM-Filters and would like to cite it in academic publications, we would certainly appreciate it. We recommend two citations.

  • Loose et al., (2022). GCM-Filters: A Python Package for Diffusion-based Spatial Filtering of Gridded Data. Journal of Open Source Software, 7(70), 3947, https://doi.org/10.21105/joss.03947

    Here’s an example of a BibTeX entry:

    @article{Loose2022,
       author = {Nora Loose and Ryan Abernathey and Ian Grooms and Julius Busecke and Arthur Guillaumin and Elizabeth Yankovsky and Gustavo Marques and Jacob Steinberg and Andrew Slavin Ross and Hemant Khatri and Scott Bachman and Laure Zanna and Paige Martin},
       title = {GCM-Filters: A Python Package for Diffusion-based Spatial Filtering of Gridded Data},
       journal = {Journal of Open Source Software},
       volume = {7},
       number = {70},
       pages = {3947},
       doi = {10.21105/joss.03947},
       url = {https://doi.org/10.21105/joss.03947},
       year = {2022},
       publisher = {The Open Journal},
    }
  • Grooms et al., (2021). Diffusion-Based Smoothers for Spatial Filtering of Gridded Geophysical Data. Journal of Advances in Modeling Earth Systems, 13, e2021MS002552, https://doi.org/10.1029/2021MS002552

    Here’s an example of a BibTeX entry:

    @article{Grooms2021,
       author = {Grooms, I. and Loose, N. and Abernathey, R. and Steinberg, J. M. and Bachman, S. D. and Marques, G. and Guillaumin, A. P. and Yankovsky, E.},
       title = {Diffusion-Based Smoothers for Spatial Filtering of Gridded Geophysical Data},
       journal = {Journal of Advances in Modeling Earth Systems},
       volume = {13},
       number = {9},
       pages = {e2021MS002552},
       keywords = {spatial filtering, coarse graining, data analysis},
       doi = {https://doi.org/10.1029/2021MS002552},
       url = {https://agupubs.onlinelibrary.wiley.com/doi/abs/10.1029/2021MS002552},
       year = {2021}
    }