Skip to main content

A Python implementation of the COARE bulk air-sea flux algorithm.

Project description

Tests License Code coverage Docs PyPI version

pycoare

pycoare is a Python package for calculating various air-sea fluxes from bulk variables (e.g., wind speed, temperature, humidity), using the COARE algorithms developed through the TOGA-COARE project (Fairall et al., 1996a, Fairall et al., 1996b, Fairall et al., 1997).

Included in this package are implementations of the COARE v3.5 and v3.6 algorithms that builds on the original NOAA-PSL pycoare code. This package makes very minor updates to the algorithm itself, instead focusing on improved code structure, packaging, documentation, and distribution by implementing an object oriented approach and utilizing modern Python tooling. The goal of this new version is to improve usability and reproducibility, encourage collaboration, and ease maintenance.

See the changelog for all mathematically relevant changes made to the algorithm itself.

Find more details on the usage and api in the documentation.

Installation

The latest stable version (currently a beta) can be downloaded using pip:

pip install pycoare

The package can also be added to projects via uv:

uv add pycoare

You can install the most up-to-date version using:

pip install git+https://github.com/pycoare/coare

Versions

pycoare contains two versions of the COARE algorithm: COARE v3.5 and COARE v3.6.

Version 3.5 was released in 2013, which made adjustments to the wind speed dependence of the Charnock parameter based on a large database of direct covariance stress observations (principally from a buoy) (Edson et al., 2013). This led to an increase in stress for wind speeds greater than about 18 m/s. The roughness Reynolds number formulation of the scalar roughness length was tuned slightly to give the same values of Ch and Ce as Version 3.0. The diurnal warm layer model was structured as a separate routine instead of embedded in a driver program. COARE v3.5 was based on buoy data (Edson et al., 2013) and was compared to a large database (a total of 16,000 hours of observations) combining observations from NOAA, WHOI, and U. Miami (Fairall et al., 2011).

Version 3.6 is slightly restructured and built around improvements in the representation of the effects of waves on fluxes. This includes improved relationships of surface roughness and whitecap fraction on wave parameters (Fairall et al., 2022).

Contribution

I welcome any contributions - feel free to raise an issue or submit a pull request. Take a look at the contribution guide to get started!

Credits

This Python implementation of the COARE algorithm was initially translated from MATLAB by Byron Blomquist, Ludovic Bariteau, with support from the NOAA Physical Sciences Laboratory (Ludovic et al., 2021).

The development of the COARE algorithm builds upon decades of research, for which I am extremely appreciative. The history of the COARE algorithm and its development can be found here (Fairall et al., 2022).

Project details


Download files

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

Source Distribution

pycoare-0.3.0.tar.gz (25.7 kB view details)

Uploaded Source

Built Distribution

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

pycoare-0.3.0-py3-none-any.whl (22.2 kB view details)

Uploaded Python 3

File details

Details for the file pycoare-0.3.0.tar.gz.

File metadata

  • Download URL: pycoare-0.3.0.tar.gz
  • Upload date:
  • Size: 25.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pycoare-0.3.0.tar.gz
Algorithm Hash digest
SHA256 7976edbe98529103f58c0931c22b818e6207a3b385e9dc98bcb590e3a1d162e5
MD5 bf9bc504a72679fae45dafb0d1af777c
BLAKE2b-256 76dcd94e300e5b1447fc97f5edd05f40728c3c07f1eb775455cb2326eecb1326

See more details on using hashes here.

File details

Details for the file pycoare-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: pycoare-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 22.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pycoare-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 84c75f536bcad3f474ea34d16b2bfce0229d732fe660727d29ffdc9cbd58dce8
MD5 9be24300d268e4c133bab0495e710b38
BLAKE2b-256 d4ae38b83cb05de53b129b85b03e1fe13f7b5aee57a84d538ee47a794c6262ef

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