pycoxmunk

pycoxmunk: A python package for computing sea surface reflectance - Published in JOSS (2023)

https://github.com/simonrp84/pycoxmunk

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 4 DOI reference(s) in README and JOSS metadata
  • Academic publication links
    Links to: joss.theoj.org
  • Committers with academic emails
    1 of 2 committers (50.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Keywords

earth-observation oceanography reflectance remote-sensing satellite

Keywords from Contributors

mesh

Scientific Fields

Mathematics Computer Science - 84% confidence
Last synced: 6 months ago · JSON representation

Repository

Python package for estimating sea surface reflectance.

Basic Info
Statistics
  • Stars: 9
  • Watchers: 2
  • Forks: 2
  • Open Issues: 1
  • Releases: 2
Topics
earth-observation oceanography reflectance remote-sensing satellite
Created over 5 years ago · Last pushed 6 months ago
Metadata Files
Readme License

README.md

PyCoxMunk Tests codecov

PyCoxMunk

A python library for simulating satellite-viewed sea surface reflectances.

The pycoxmunk library computes the sea surface reflectance, using the Cox-Munk method, as expected to be seen from space based on the satellite and weather conditions at the sea surface. A description of the algorithm and this library are given in this paper, published in the Journal of Open Source Software.

The main purpose of this library is to enable an easy method for computing sea surface reflectance that is applicable to a wide variety of low-earth and geostationary orbit satellites and sensors. The library is closely linked to the satpy library that loads, calibrates and produces projection information for many satellites. Under the hood, pycoxmunk uses dask and xarray to store and process data. Results are made available via the same satpy scene used to provide the input satellite images.

As well as computing the sea surface reflectance, pycoxmunk can also compute the four BRDF terms, which can be useful in radiative transfer, cloud and aerosol properties retrieval codes, and other uses such as cloud or sea ice detection.

Installation

pycoxmunk can be installed from PyPI with pip:

bash pip install pycoxmunk

It is also available from conda-forge for conda installations:

bash conda install -c conda-forge pycoxmunk

Tests

pycoxmunk comes with a set of scripts for testing the functionality of the library. These are located in the ./Tests/ subdirectory and can be run using pytest:

```

cd Tests pytest .

```

This will run all tests. You can also run just a single test script with, for example, pytest test_CMCalcs.py. You may first need to install pytest via: conda install pytest.

Once testing is complete, a summary will be displayed. This should indicate that all tests have passed, as well as potentially listing some warnings depending on your environment and the current status of pycoxmunk's dependencies.

Credits

This code was written by Simon Proud and is based on a fortran implementation of the Cox-Munk algorithm written by Greg McGarragh as part of the ORAC algorithm.

Feedback and Contribution

Feedback, suggestions, bug reports or any other type of contribution is welcome.

If you encounter any problems with this code or the documentation then please file an issue. It may help in debugging any problems to enable satpy's debug mode:

python from satpy import debug_on debug_on()

This will print additional log and diagnostic information.

Suggestions for new features are welcome, but may not always be possible for me to code due to limited time. You can also submit your own pull requests that add features of fix bugs. This is the recommended way to change the library code, rather than emailing me your updates. By submitting a pull request please ensure that your code changes and additions are documented and, where appropriate, covered by tests.

Owner

  • Name: Simon Proud
  • Login: simonrp84
  • Kind: user
  • Location: ESTEC, Netherlands
  • Company: ESA

Earth Observation scientist at the European Space Agency

JOSS Publication

pycoxmunk: A python package for computing sea surface reflectance
Published
June 13, 2023
Volume 8, Issue 86, Page 5074
Authors
Simon R. Proud ORCID
National Centre for Earth Observation, RAL Space, STFC Rutherford Appleton Laboratory, Harwell, OX11
Editor
Pierre de Buyl ORCID
Tags
remote sensing earth observation oceanography satellite

GitHub Events

Total
  • Issues event: 1
  • Delete event: 2
  • Issue comment event: 1
  • Push event: 2
  • Pull request event: 3
  • Create event: 1
Last Year
  • Issues event: 1
  • Delete event: 2
  • Issue comment event: 1
  • Push event: 2
  • Pull request event: 3
  • Create event: 1

Committers

Last synced: 7 months ago

All Time
  • Total Commits: 150
  • Total Committers: 2
  • Avg Commits per committer: 75.0
  • Development Distribution Score (DDS): 0.02
Past Year
  • Commits: 2
  • Committers: 2
  • Avg Commits per committer: 1.0
  • Development Distribution Score (DDS): 0.5
Top Committers
Name Email Commits
simonrp84 s****d@p****k 147
dependabot[bot] 4****] 3
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 7
  • Total pull requests: 8
  • Average time to close issues: 4 months
  • Average time to close pull requests: 3 months
  • Total issue authors: 4
  • Total pull request authors: 3
  • Average comments per issue: 5.14
  • Average comments per pull request: 1.13
  • Merged pull requests: 6
  • Bot issues: 0
  • Bot pull requests: 4
Past Year
  • Issues: 0
  • Pull requests: 1
  • Average time to close issues: N/A
  • Average time to close pull requests: 4 months
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 1
Top Authors
Issue Authors
  • arthur-e (2)
  • pdebuyl (2)
  • Springder (1)
  • simonrp84 (1)
Pull Request Authors
  • dependabot[bot] (7)
  • simonrp84 (3)
  • arthur-e (1)
Top Labels
Issue Labels
Pull Request Labels
dependencies (7) github_actions (4) python (2)

Packages

  • Total packages: 2
  • Total downloads:
    • pypi 10 last-month
  • Total dependent packages: 0
    (may contain duplicates)
  • Total dependent repositories: 0
    (may contain duplicates)
  • Total versions: 3
  • Total maintainers: 1
pypi.org: pycoxmunk

An algorithm to compute sea surface reflectance using the Cox-Munk approach.

  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 10 Last month
Rankings
Dependent packages count: 6.6%
Forks count: 23.2%
Average: 30.3%
Dependent repos count: 30.6%
Stargazers count: 39.1%
Downloads: 51.8%
Maintainers (1)
Last synced: 6 months ago
conda-forge.org: pycoxmunk
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 34.0%
Dependent packages count: 51.2%
Average: 52.2%
Forks count: 61.1%
Stargazers count: 62.4%
Last synced: 6 months ago

Dependencies

requirements.txt pypi
  • click >=8.0.3
  • dask >=2021.10.0
  • numba >=0.55.0
  • numpy >=1.21.2
  • pandas >=1.3.4
  • pyorbital >=1.7.1
  • pyresample >=1.22.1
  • satpy >=0.30
  • scipy >=1.7.1
  • xarray >=0.20.2
.github/workflows/python-app.yaml actions
  • actions/checkout v3 composite
  • codecov/codecov-action v3 composite
  • mamba-org/provision-with-micromamba main composite
docs/requirements.txt pypi
  • readthedocs-sphinx-search ==0.1.1
  • sphinx >=4.2.0
  • sphinx_rtd_theme >=1.0.0
pyproject.toml pypi
  • click >=8.0.3
  • dask >=2021.10.0
  • numba >=0.55.0
  • numpy >=1.21.2
  • pandas >=1.3.4
  • pyorbital >=1.7.1
  • pyresample >=1.22.1
  • satpy >=0.30
  • scipy >=1.7.1
  • xarray >=0.20.2
.github/environment.yaml conda
  • appdirs
  • click
  • dask
  • gdal
  • netcdf4
  • numba
  • numpy
  • pandas
  • pyorbital
  • pyresample
  • requests
  • satpy
  • scipy