RADWave

RADWave: Python code for ocean surface wave analysis by satellite radar altimeter - Published in JOSS (2020)

https://github.com/pyreef-model/radwave

Science Score: 95.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 1 DOI reference(s) in JOSS metadata
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
    2 of 3 committers (66.7%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Scientific Fields

Mathematics Computer Science - 84% confidence
Earth and Environmental Sciences Physical Sciences - 44% confidence
Last synced: 4 months ago · JSON representation

Repository

A Python interface to perform wave analysis from satellite altimeter data

Basic Info
  • Host: GitHub
  • Owner: pyReef-model
  • License: gpl-3.0
  • Language: Jupyter Notebook
  • Default Branch: master
  • Homepage: https://radwave.readthedocs.io
  • Size: 29.8 MB
Statistics
  • Stars: 12
  • Watchers: 4
  • Forks: 8
  • Open Issues: 3
  • Releases: 2
Created almost 6 years ago · Last pushed 10 months ago
Metadata Files
Readme License

README.md

RADWave - Wave analysis from Altimeter data

Docker Cloud Automated build PyPI Documentation Status Code style: black

Build Status Coverage Status DOI

RADWave documentation is found at radwave.readthedocs.io

RADWave is a python package built to characterise wave conditions based on altimeter data.

Satellite radar altimeters can be used to determine significant wave height and wind speed [Young et al., 2011]. Since the first launch of the GEOSAT (GEOdetic SATellite) altimeter in 1985, there has been almost continuous data collection. From these measurements one can calculate wave conditions namely wave height, period and power [Young and Donelan, 2018]. Analysis of this long-term, high resolution spatio-temporal record brings new insights into inter-annual, seasonal and decadal variations of regional wave climates.

altimeter

RADWave is Python package that provides a mechanism to access altimeter datasets through web-enabled data services (THREDDS). The package capabilities are illustrated based on the the Australian Ocean Data Network (AODN database that spans from 1985-present and that has already been calibrated and validated by [Ribal and Young, 2019]. RADWave allows the user to query over a range of spatial and temporal scales altimeter parameters in specific geographical regions and subsequently calculates significant wave heights, periods, group velocities, average wave energy densities and wave energy fluxes.

RADWave can be used to easily calculate past wave conditions and infers long term wave climate variability, providing new insights on wave modal conditions, seasonal changes, long-term trends and associated modulation by climate oscillations.

Designed for researchers and industry partners focusing on offshore wave conditions globally, RADWave enhances the ease of access and analysis of altimeter data.

Installation

Dependencies

You will need Python 3.5+. Also, the following packages are required:

Installing using pip

You can install RADWave using the pip package manager with your version of Python:

bash python3 -m pip install radwave

Installing using conda

You can install RADWave using conda by downloading the repository from GitHub. Then you will use the environment.yml to create the environment. Open a terminal on Linux/Mac or Anaconda Prompt on Windows:

bash cd RADWave/Notebooks conda env create -f environment.yml conda env update --file environment.yml conda activate radwave jupyter notebook

Installing using Docker

A more straightforward installation which does not depend on specific compilers relies on the docker virtualisation system.

To install the docker image and test it is working:

bash docker pull pyreefmodel/radwave:latest docker run --rm pyreefmodel/radwave:latest help

To build the dockerfile locally, we provide a script. First ensure you have checked out the source code from github and then run the script in the Docker directory. If you modify the dockerfile and want to push the image to make it publicly available, it will need to be retagged to upload somewhere other than the GEodels repository.

bash git checkout https://github.com/pyReef-model/RADWave.git cd RADWave source Docker/build-dockerfile.sh

Usage

Binder & docker container

Launch the demonstration at mybinder.org

Binder

cyclone

Another option will be to use the Docker container available through Kitematic pyreefmodel/radwave.

Docker Cloud Automated build

Collaborations

How to contribute?

We welcome all kinds of contributions! Please get in touch if you would like to help out.

Everything from code to notebooks to examples and documentation are all equally valuable so please don't feel you can't contribute.

To contribute please fork the project make your changes and submit a pull request. We will do our best to work through any issues with you and get your code merged into the main branch.

If you found a bug, have questions, or are just having trouble with bioLEC, you can:

  • join the RADWave User Group on Slack by sending an email request to: tristan.salles@sydney.edu.au
  • open an issue in our issue-tracker and we'll try to help resolve the concern.

Where to find support?

Please feel free to submit new issues to the issue-log to request new features, document new bugs, or ask questions.

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program. If not, see http://www.gnu.org/licenses/lgpl-3.0.en.html.

References

  1. Ribal, A. and Young, I. R., 2019. 33 years of globally calibrated wave height and wind speed data based on altimeter observations. Scientific Data 6(77), p.100.

  2. Young, I. R., Zieger, S. and Babanin, A. V., 2011. Global trends in wind speed and wave height. Science 332(6028), p451–455.

  3. Young, I. R. and Donelan, M., 2018. On the determination of global ocean wind and wave climate from satellite observations. Remote Sensing of Environment 215, 228–241.

Owner

  • Name: pyReef-model
  • Login: pyReef-model
  • Kind: organization
  • Email: tristan.salles@sydney.edu.au
  • Location: School of Geosciences - The University of Sydney

Building models that link surface processes, geodynamics and environmental change.

JOSS Publication

RADWave: Python code for ocean surface wave analysis by satellite radar altimeter
Published
March 31, 2020
Volume 5, Issue 47, Page 2083
Authors
Courtney Smith ORCID
School of Geosciences, The University of Sydney, Australia
Tristan Salles ORCID
School of Geosciences, The University of Sydney, Australia
Ana Vila-Concejo ORCID
School of Geosciences, The University of Sydney, Australia
Editor
Stefan Pfenninger ORCID
Tags
satellite radar altimeter waves oceanography

GitHub Events

Total
  • Watch event: 1
  • Issue comment event: 1
  • Push event: 2
  • Pull request event: 4
  • Fork event: 1
Last Year
  • Watch event: 1
  • Issue comment event: 1
  • Push event: 2
  • Pull request event: 4
  • Fork event: 1

Committers

Last synced: 5 months ago

All Time
  • Total Commits: 133
  • Total Committers: 3
  • Avg Commits per committer: 44.333
  • Development Distribution Score (DDS): 0.023
Past Year
  • Commits: 2
  • Committers: 1
  • Avg Commits per committer: 2.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Tristan t****s@s****u 130
Jacob Melly j****y@u****t 2
Stefan Pfenninger s****n@p****g 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 7
  • Total pull requests: 3
  • Average time to close issues: 1 day
  • Average time to close pull requests: about 10 hours
  • Total issue authors: 5
  • Total pull request authors: 2
  • Average comments per issue: 1.86
  • Average comments per pull request: 0.33
  • Merged pull requests: 3
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 2
  • Average time to close issues: N/A
  • Average time to close pull requests: about 12 hours
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.5
  • Merged pull requests: 2
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • npucino (2)
  • Alerovere (2)
  • piau00 (1)
  • robbibt (1)
  • bradyrx (1)
Pull Request Authors
  • JTMelly (4)
  • sjpfenninger (1)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 11 last-month
  • Total docker downloads: 122
  • Total dependent packages: 0
  • Total dependent repositories: 2
  • Total versions: 21
  • Total maintainers: 1
pypi.org: radwave

A Python interface to perform wave analysis from satellite altimeter data.

  • Versions: 21
  • Dependent Packages: 0
  • Dependent Repositories: 2
  • Downloads: 11 Last month
  • Docker Downloads: 122
Rankings
Docker downloads count: 2.6%
Dependent packages count: 10.1%
Dependent repos count: 11.5%
Average: 12.4%
Forks count: 13.3%
Stargazers count: 16.1%
Downloads: 20.8%
Maintainers (1)
Last synced: 4 months ago

Dependencies

docs/requirements.txt pypi
  • mock *
  • numpy *
  • pandas *
  • scikit-image *
  • sphinx_rtd_theme *
  • sphinxcontrib-inlinesyntaxhighlight *
  • sphinxcontrib-napoleon *
  • sphinxemoji *
requirements.txt pypi
  • cartopy >=0.17
  • cftime >=1.0.3.4
  • geopy >=1.20
  • matplotlib >=3.0
  • netCDF4 >=1.5.1
  • numpy >=1.16.1
  • pandas ==0.25.0
  • pymannkendall >=0
  • pytest *
  • scikit-image >=0.15
  • scipy >=1.3
  • seaborn >=0.9
  • setuptools >=38.4.0
  • shapely >=1.6.4
  • six >=1.11.0
setup.py pypi
  • cartopy >=0.17
  • geopy >=1.20
  • matplotlib >=3.0
  • netCDF4 >=1.5.1
  • numpy >=1.15.0
  • pandas >=0.25
  • pymannkendall >=0
  • pytest *
  • scikit-image >=0.15
  • scipy >=1.3
  • seaborn >=0.9
  • setuptools >=38.4.0
  • shapely >=1.6.4
  • six >=1.11.0
Docker/Dockerfile docker
  • ${FROMIMG_ARG} latest build
environment.yml pypi
  • cmocean *
  • pymannkendall *
  • radwave *