Skip to content
/ pyxpcm Public

A Python implementation of Profile Classification Modelling (PCM) for xarray

License

Notifications You must be signed in to change notification settings

obidam/pyxpcm

Repository files navigation

pyXpcm: Ocean Profile Classification Model

DOI-Software DOI-Paper
Documentation Status CI tests codecov PyPI
contributions welcome

pyXpcm is a python package to create and work with ocean Profile Classification Model that consumes and produces Xarray objects. Xarray objects are N-D labeled arrays and datasets in Python.

A ocean Profile Classification Model allows to automatically assemble ocean profiles in clusters according to their vertical structure similarities.
The geospatial properties of these clusters can be used to address a large variety of oceanographic problems: front detection, water mass identification, natural region contouring (gyres, eddies), reference profile selection for QC validation, etc... The vertical structure of these clusters furthermore provides a highly synthetic representation of large ocean areas that can be used for dimensionality reduction and coherent intercomparisons of ocean data (re)-analysis or simulations.

Why pyXpcm?

The Ocean dynamics and its 3-dimensional structure and variability is so complex that it is very difficult to develop objective and efficient diagnostics of horizontally and vertically coherent oceanic patterns. However, identifying such patterns is crucial to the understanding of interior mechanisms as, for instance, the integrand giving rise to Global Ocean Indicators (e.g. heat content and sea level rise). We believe that, by using state-of-the-art machine learning algorithms and by building on the increasing availability of ever-larger in situ and numerical model datasets, we can address this challenge in a way that was simply not possible a few years ago. Following this approach, Profile Classification Modelling focuses on the smart identification of vertically coherent patterns and their space/time distribution and occurrence.

Documentation

https://pyxpcm.readthedocs.io

Install

Latest release:

pip install pyxpcm

Development version:

pip install git+https://github.com/obidam/pyxpcm.git

Dev roadmap

This library has shown to be quiet robust over a couple of years now: it kept working without active dev and was used in numerous research papers as well to create new tools in big projects like Blue-Cloud and Euro-Argo RISE (see here for Argo floats QC and here for boundary currents monitoring).

Our plan is a new release in 2024 that will:

About

A Python implementation of Profile Classification Modelling (PCM) for xarray

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages