Skip to main content

Tide modelling tools for large-scale satellite earth observation analysis

Project description

eo-tides: Tide modelling tools for large-scale satellite earth observation analysis

eo-tides logo

Release Build status Python Version from PEP 621 TOML codecov License JOSS paper


eo-tides provides powerful parallelized tools for integrating satellite Earth observation data with tide modelling. 🛠️🌊🛰️

eo-tides combines advanced tide modelling functionality from the pyTMD package with pandas, xarray and odc-geo, providing a suite of flexible tools for efficient analysis of coastal and ocean Earth observation data – from regional, continental, to global scale.

These tools can be applied to petabytes of freely available satellite data (e.g. from Digital Earth Australia or Microsoft Planetary Computer) loaded via Open Data Cube's odc-stac or datacube packages, supporting coastal and ocean earth observation analysis for any time period or location globally.

eo-tides abstract showing satellite data, tide data array and tide animation

Highlights

  • 🌊 Model tide heights and phases (e.g. high, low, ebb, flow) from multiple global ocean tide models in parallel, and return a pandas.DataFrame for further analysis
  • 🛰️ "Tag" satellite data with tide heights based on the exact moment of image acquisition
  • 🌐 Model tides for every individual satellite pixel through time, producing three-dimensional "tide height" xarray-format datacubes that can be integrated with satellite data
  • 📈 Calculate statistics describing local tide dynamics, as well as biases caused by interactions between tidal processes and satellite orbits
  • 🛠️ Validate modelled tides using measured sea levels from coastal tide gauges (e.g. GESLA Global Extreme Sea Level Analysis)

Supported tide models

eo-tides supports all ocean tide models supported by pyTMD. These include:

For instructions on how to set up these models for use in eo-tides, refer to Setting up tide models.

Installing and setting up eo-tides

To get started with eo-tides, follow the Installation and Setting up tide models guides.

Jupyter Notebooks code examples

Interactive Jupyter Notebook usage examples and more complex coastal EO case studies can be found in the docs/notebooks/ directory, or rendered in the documentation here.

Citing eo-tides

To cite eo-tides in your work, please use the following Journal of Open Source Software citation:

Bishop-Taylor, R., Phillips, C., Sagar, S., Newey, V., & Sutterley, T., (2025). eo-tides: Tide modelling tools for large-scale satellite Earth observation analysis. Journal of Open Source Software, 10(109), 7786, https://doi.org/10.21105/joss.07786
BibTeX
@article{Bishop-Taylor2025,
  doi       = {10.21105/joss.07786},
  url       = {https://doi.org/10.21105/joss.07786},
  year      = {2025},
  publisher = {The Open Journal},
  volume    = {10},
  number    = {109},
  pages     = {7786},
  author    = {Robbi Bishop-Taylor and Claire Phillips and Stephen Sagar and Vanessa Newey and Tyler Sutterley},
  title     = {eo-tides: Tide modelling tools for large-scale satellite Earth observation analysis},
  journal   = {Journal of Open Source Software}
}

In addition, please consider also citing the underlying pyTMD Python package which powers the tide modelling functionality behind eo-tides:

Sutterley, T. C., Alley, K., Brunt, K., Howard, S., Padman, L., Siegfried, M. (2017) pyTMD: Python-based tidal prediction software. 10.5281/zenodo.5555395

Contributing

We welcome contributions to eo-tides, both through posting issues (e.g. bug reports or feature suggestions), or directly via pull requests (e.g. bug fixes and new features). Read the Contributing guide for details about how you can get involved.

Acknowledgements

For a full list of acknowledgements, refer to Citations and Credits. This repository was initialised using the cookiecutter-uv package.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

eo_tides-0.7.5.tar.gz (18.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

eo_tides-0.7.5-py3-none-any.whl (45.2 kB view details)

Uploaded Python 3

File details

Details for the file eo_tides-0.7.5.tar.gz.

File metadata

  • Download URL: eo_tides-0.7.5.tar.gz
  • Upload date:
  • Size: 18.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.5

File hashes

Hashes for eo_tides-0.7.5.tar.gz
Algorithm Hash digest
SHA256 d2ac3983c99550d35c06a282002a4142676b6e4d01fb9cb5b7a05c7b572e9104
MD5 7420753ea1db2d0764f6c54e4cacc2aa
BLAKE2b-256 a9aa6d3113c6afde1d3bd5d1f0d4b084607be4f1cc70f7406a6f441fb5069eab

See more details on using hashes here.

File details

Details for the file eo_tides-0.7.5-py3-none-any.whl.

File metadata

  • Download URL: eo_tides-0.7.5-py3-none-any.whl
  • Upload date:
  • Size: 45.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.5

File hashes

Hashes for eo_tides-0.7.5-py3-none-any.whl
Algorithm Hash digest
SHA256 254ff817dfc7756f23f1d0a51ecd7cf030cf1ee42623af9f0015e17d2cfb9248
MD5 441365d9725b8848b08951f3128bd1a9
BLAKE2b-256 09f39b26ff3a9d3896b2b6e9f90b097c58bfce8ebd982e786b120e395cad3c50

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page