Skip to main content

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

Project description

pyCOARE

Tests License Code coverage Docs PyPI version

COARE-algorithm

This is an beta version of the implementation of the COARE algorithm that was written with the goal of standardizing testing, packaging, and distribution of the algorithm. Currently only COARE v3.5 is implemented - hopefully v3.6 will come soon!

The functionality of the code is ideally the same as that for the scripts found in the NOAA PSL repository linked above. My only intended contributions are towards formatting, testing, and packaging. To that end, tests have been constructed based on the output of the original MATLAB code for COARE v3.5. View the results of the tests or download the data and run them yourself. All results from this script agree to at least five significant figures with the MATLAB scripts in the NOAA repository, provided the testing badge above stays green.

Installation

The latest stable version (currently still an alpha) can be downloaded using Pip

pip install pycoare

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

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

Contribution

I welcome any contributions - please feel free to raise an issue or submit a pull request.

Origins and Credits

The international TOGA-COARE field program which took place in the western Pacific warm pool over 4 months from November 1992 to February 1993 (Fairall et al. 1996a, 1996b and 1997) spurred the development of the COARE model. The algorithm is intended to provide estimates of momentum, sensible heat, and latent heat fluxes using inputs of bulk atmospheric variables (wind speed, SST, air temperature, air humidity). The algorithm contains subroutines/functions to handle near-surface gradients of temperature in the ocean.

This Python implementation of the COARE algorithm was initially translated from MATLAB by Byron Blomquist and Ludovic Bariteau. For more information on the people and publications that developed the COARE algorithm, see the references below.

Versions

  • Version 2.5 was published in 1996.
  • Version 3.0 was published in 2003; it was a major update from Version 2.5. This update was based on new observations at higher wind speeds (10 to 20 m/s). Available in MATLAB and FORTRAN only.
  • Version 3.5 was released in 2013 following the publication of Edson et al. 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). 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 3.5 was based on Edson’s 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). It is available in Python and MATLAB.
  • 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, $z_o$, and whitecap fraction, $W_f$, on wave parameters. More details can be found in coare3.6_readme_1.pdf. This version is available in Python, MATLAB and FORTRAN.

References:

  • Edson, J.B., J. V. S. Raju, R.A. Weller, S. Bigorre, A. Plueddemann, C.W. Fairall, S. Miller, L. Mahrt, Dean Vickers, and Hans Hersbach, 2013: On the Exchange of momentum over the open ocean. J. Phys. Oceanogr., 43, 1589–1610. doi: http://dx.doi.org/10.1175/JPO-D-12-0173.1

  • Fairall, C.W., E.F. Bradley, J.S. Godfrey, G.A. Wick, J.B. Edson, and G.S. Young, 1996a: The cool skin and the warm layer in bulk flux calculations. J. Geophys. Res. 101, 1295-1308. https://doi.org/10.1029/95JC03190

  • Fairall, C.W., E.F. Bradley, D.P. Rogers, J.B. Edson, G.S. Young, 1996b: Bulk parameterization of air-sea fluxes for TOGA COARE. J. Geophys. Res. 101, 3747-3764. https://doi.org/10.1029/95JC03205

  • Fairall, C. W., White, A. B., Edson, J. B., and Hare, J. E.: Integrated Shipboard Measurements of the Marine Boundary Layer, J. Atmos. Ocean. Tech., 14, 338–359, 1997. https://doi.org/10.1175/1520-0426(1997)014<0338:ISMOTM>2.0.CO;2

  • Fairall, C.W., E.F. Bradley, J.E. Hare, A.A. Grachev, and J.B. Edson, 2003: Bulk parameterization of air-sea fluxes: Updates and verification for the COARE algorithm. J. Climate 16, 571-591. https://doi.org/10.1175/1520-0442(2003)016<0571:BPOASF>2.0.CO;2

  • Fairall, C.W., Mingxi Yang, Ludovic Bariteau, J.B. Edson, D. Helmig, W. McGillis, S. Pezoa, J.E. Hare, B. Huebert, and B. Blomquist, 2011: Implementation of the COARE flux algorithm with CO2, DMS, and O3. J. Geophys. Res., 116, C00F09, https://doi.org/10.1029/2010JC006884

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-2023.10b1.tar.gz (15.9 kB view details)

Uploaded Source

Built Distribution

pycoare-2023.10b1-py3-none-any.whl (12.8 kB view details)

Uploaded Python 3

File details

Details for the file pycoare-2023.10b1.tar.gz.

File metadata

  • Download URL: pycoare-2023.10b1.tar.gz
  • Upload date:
  • Size: 15.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for pycoare-2023.10b1.tar.gz
Algorithm Hash digest
SHA256 1a83888c97a7b82f20e2c7842444198aa45336e3174f45f3dd4aac6f7fb3b8bf
MD5 e88be23fc466d5f9421ea567df4d7e10
BLAKE2b-256 2893e480118451e6f97a1a8f2f05d5395e194e8ae5ef124404d7c1b79ed0c63c

See more details on using hashes here.

File details

Details for the file pycoare-2023.10b1-py3-none-any.whl.

File metadata

  • Download URL: pycoare-2023.10b1-py3-none-any.whl
  • Upload date:
  • Size: 12.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for pycoare-2023.10b1-py3-none-any.whl
Algorithm Hash digest
SHA256 c71199de70e48595ddddacf9eb727c1908a988ad79d89c2ba80385328d91b253
MD5 0c860f93f4c9228c7093ab2ff7f025b7
BLAKE2b-256 c104920366934616621a36f52d8e8db9001622d46b7c2fa2c306cd3c8c690a8f

See more details on using hashes here.

Supported by

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